@charset "UTF-8";
/* ==========================================================================
リセット
========================================================================== */
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

/* HTML5 display definitions
----------------------------------------------------------------- */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

/* Links
----------------------------------------------------------------- */
a {
  background-color: transparent;
}

/* Text-level semantics
----------------------------------------------------------------- */
abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 1rem;
  line-height: 1;
  margin: 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
----------------------------------------------------------------- */
img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
----------------------------------------------------------------- */
figure {
  margin: 1em 40px;
}

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
----------------------------------------------------------------- */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
  border: none;
  padding: 0;
}

button,
select {
  text-transform: none;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type=checkbox],
input[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

/* Tables
----------------------------------------------------------------- */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/* Others
----------------------------------------------------------------- */
a, abbr, address, aside, article, body, button, caption, cite, code, div, del, dl, dt, dd, em, font, form, figure, footer, fieldset, header, h1, h2, h3, h4, h5, h6, html, img, iframe, input, legend, li, label, main, nav, object, ol, option, optgroup, p, pre, q, s, sub, sup, select, span, section, tt, textarea, table, tbody, tfoot, thead, tr, th, td, ul, var, ::before, ::after {
  margin: 0;
  padding: 0;
  border: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

ol, ul {
  list-style: none;
}

/* ==========================================================================
グローバル変数
=========================================================================*/
/*-==========================================================================
mixin
==========================================================================*/
/*-==========================================================================
ブレイクポイント
==========================================================================*/
/* less_than_xx */
/* more_than_xx */
/*-==========================================================================
背景画像
==========================================================================*/
/*-==========================================================================
余白設定(セクション等)
==========================================================================*/
/*-==========================================================================
hover
==========================================================================*/
/*-==========================================================================
破線の下線
==========================================================================*/
/******************************************************************
* unit　単位付きの値から単位を除いた数値を返す
* @param {number} $_value 単位付き or 単位無しの値
*******************************************************************/
/**
* rem変換 ※375以下ではvwとする
* @param {number} $_number 数値
* 例) 32pxをremに変換 (32);
*/
/******************************************************************
* unit　単位付きの値から単位を除いた数値を返す
* @param {number} $_value 単位付き or 単位無しの値
*******************************************************************/
/******************************************************************
* setVw　vw値を返す
* @param {number} $_size 計算したい値(単位無し)
* @param {number} $_base 基準となる値(単位無し)
* @param {number} $_min	最小値(単位有)　※値がマイナスでも、大小は絶対値で考える
* @param {number} $_min	最大値(単位有)　※値がマイナスでも、大小は絶対値で考える
*******************************************************************/
/******************************************************************
* vw(%)指定時、指定幅時点の固定値取得
* @param $number 数値
* @param $basis vw(%)を計算するための基準幅
* @param $width 求めたい時点の幅
* 例) 画面幅1280px時点で100pxとなるvw変化において、画面幅1400px時点での値を取得する。(100, 1280, 1400);
*******************************************************************/
/* ==========================================================================
汎用CSS
========================================================================== */
/* サイト全体のフォントサイズや色に関する設定
----------------------------------------------------------------- */
html {
  color: #1D1D1D;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 2;
  text-justify: inter-ideograph;
  vertical-align: baseline;
  scroll-behavior: smooth;
}
body {
  font-family: "Noto Sans JP", sans-serif;
  background-color: #fff;
}

.f-common-wrap {
  overflow: clip;
}

a {
  color: #1D1D1D;
  text-decoration: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
}
a:hover {
  text-decoration: none;
}

p {
  padding: 0;
  margin: 0;
  text-align: justify;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

img {
  max-width: 100%;
  height: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

hr {
  overflow: visible;
  border: 0;
  border-top: 1px solid #f2f2f2;
  text-align: inherit;
  margin: 0 0 0 0;
}

div {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

ul {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
ul li {
  list-style-type: none;
  text-align: justify;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

table {
  border-collapse: collapse;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  width: 100%;
  text-align: justify;
}

dt {
  font-weight: 700;
}

dd {
  margin: 0;
}

label {
  cursor: pointer;
}

.scroll-hint-shadow-wrap::before, .scroll-hint-shadow-wrap::after {
  display: none;
}

/* ==========================================================================
アニメーション
========================================================================== */
/* fadeIm fadeOut
----------------------------------------------------------------- */
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/*-==========================================================================
特定の画面幅で表示・非表示するクラス（CSSの順番の上書きの関係で、utilityフォルダには置かず、こちらに記載)
==========================================================================*/
@media screen and (min-width: 1401px) {
  .f-visible-1400 {
    display: block;
  }
}
@media screen and (max-width: 1400px) {
  .f-visible-1400 {
    display: none !important;
  }
}

@media screen and (min-width: 1201px) {
  .f-visible-1400pc {
    display: block;
  }
}
@media screen and (max-width: 1200px) {
  .f-visible-1400pc {
    display: none !important;
  }
}

@media screen and (min-width: 993px) {
  .f-visible-1400pclp {
    display: block;
  }
}
@media screen and (max-width: 992px) {
  .f-visible-1400pclp {
    display: none !important;
  }
}

@media screen and (min-width: 993px) {
  .f-visible-lp {
    display: none !important;
  }
}
@media screen and (min-width: 821px) and (max-width: 992px) {
  .f-visible-lp {
    display: block;
  }
}
@media screen and (max-width: 820px) {
  .f-visible-lp {
    display: none !important;
  }
}

@media screen and (min-width: 993px) {
  .f-visible-lptbsp {
    display: none !important;
  }
}
@media screen and (max-width: 992px) {
  .f-visible-lptbsp {
    display: block;
  }
}

@media screen and (min-width: 821px) {
  .f-visible-tb {
    display: none !important;
  }
}
@media screen and (min-width: 577px) and (max-width: 820px) {
  .f-visible-tb {
    display: block;
  }
}
@media screen and (max-width: 576px) {
  .f-visible-tb {
    display: none !important;
  }
}

@media screen and (min-width: 821px) {
  .f-visible-1400pclptb {
    display: block;
  }
}
@media screen and (max-width: 820px) {
  .f-visible-1400pclptb {
    display: none !important;
  }
}

@media screen and (min-width: 821px) {
  .f-visible-tbsp {
    display: none !important;
  }
}
@media screen and (max-width: 820px) {
  .f-visible-tbsp {
    display: block;
  }
}

@media screen and (min-width: 577px) {
  .f-visible-1400pclptbsp {
    display: block;
  }
}
@media screen and (max-width: 576px) {
  .f-visible-1400pclptbsp {
    display: none !important;
  }
}

@media screen and (min-width: 577px) {
  .f-visible-sp {
    display: none !important;
  }
}
@media screen and (max-width: 576px) {
  .f-visible-sp {
    display: block;
  }
}

/* ==========================================================================
ヘッダー
========================================================================== */
.l-header {
  position: fixed;
  top: min(1.5rem, 6.4vw);
  right: 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  z-index: 999;
}
@media screen and (max-width: 992px) {
  .l-header {
    top: min(1.125rem, 4.8vw);
  }
}
@media screen and (max-width: 576px) {
  .l-header {
    top: min(0.8125rem, 3.4666666667vw);
  }
}
.l-header.l-header--static {
  position: absolute;
  right: auto;
  left: min(3.75rem, 16vw);
}
@media screen and (max-width: 992px) {
  .l-header.l-header--static {
    left: min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .l-header.l-header--static {
    left: min(0.625rem, 2.6666666667vw);
  }
}

/* ==========================================================================
フッター
========================================================================== */
.l-footer {
  background-color: #fff;
  position: relative;
}

/* ==========================================================================
ページタイトル
=========================================================================*/
.l-page-title {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  margin-top: -80px;
  width: 100%;
  height: 345px;
  position: relative;
}
@media screen and (max-width: 992px) {
  .l-page-title {
    margin-top: 0;
    height: 270px;
  }
}
.l-page-title .l-page-title-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  margin-top: 40px;
}
@media screen and (max-width: 992px) {
  .l-page-title .l-page-title-inner {
    width: 100%;
    margin-top: 30px;
  }
}
.l-page-title .l-page-title-inner .l-page-title-jp {
  color: #fff;
  font-size: 36px;
  font-size: 2.25rem;
  text-align: center;
}
.l-page-title .l-page-title-inner .l-page-title-en {
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  text-align: center;
  line-height: 1;
}

/* ==========================================================================
セクション
=========================================================================*/
.l-sec-xxsmall {
  padding-block: 1rem;
}
@media screen and (max-width: 992px) {
  .l-sec-xxsmall {
    padding-block: 0.875rem;
  }
}
@media screen and (max-width: 576px) {
  .l-sec-xxsmall {
    padding-block: 0.5rem;
  }
}

.l-sec-xxsmall-mg {
  margin-block: 1rem;
}
@media screen and (max-width: 992px) {
  .l-sec-xxsmall-mg {
    margin-block: 0.875rem;
  }
}
@media screen and (max-width: 576px) {
  .l-sec-xxsmall-mg {
    margin-block: 0.5rem;
  }
}

.l-sec-xsmall {
  padding-block: 1.5rem;
}
@media screen and (max-width: 992px) {
  .l-sec-xsmall {
    padding-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .l-sec-xsmall {
    padding-block: 0.875rem;
  }
}

.l-sec-xsmall-mg {
  margin-block: 1.5rem;
}
@media screen and (max-width: 992px) {
  .l-sec-xsmall-mg {
    margin-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .l-sec-xsmall-mg {
    margin-block: 0.875rem;
  }
}

.l-sec-small {
  padding-block: 2.5rem;
}
@media screen and (max-width: 992px) {
  .l-sec-small {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .l-sec-small {
    padding-block: 1.25rem;
  }
}

.l-sec-small-mg {
  margin-block: 2.5rem;
}
@media screen and (max-width: 992px) {
  .l-sec-small-mg {
    margin-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .l-sec-small-mg {
    margin-block: 1.25rem;
  }
}

.l-sec-medium {
  padding-block: 4rem;
}
@media screen and (max-width: 992px) {
  .l-sec-medium {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .l-sec-medium {
    padding-block: 2rem;
  }
}

.l-sec-medium-mg {
  margin-block: 4rem;
}
@media screen and (max-width: 992px) {
  .l-sec-medium-mg {
    margin-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .l-sec-medium-mg {
    margin-block: 2rem;
  }
}

.l-sec-large {
  padding-block: 5rem;
}
@media screen and (max-width: 992px) {
  .l-sec-large {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .l-sec-large {
    padding-block: 2.875rem;
  }
}

.l-sec-large-mg {
  margin-block: 5rem;
}
@media screen and (max-width: 992px) {
  .l-sec-large-mg {
    margin-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .l-sec-large-mg {
    margin-block: 2.875rem;
  }
}

.l-sec-xlarge {
  padding-block: 6.25rem;
}
@media screen and (max-width: 992px) {
  .l-sec-xlarge {
    padding-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .l-sec-xlarge {
    padding-block: 3.625rem;
  }
}

.l-sec-xlarge-mg {
  margin-block: 6.25rem;
}
@media screen and (max-width: 992px) {
  .l-sec-xlarge-mg {
    margin-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .l-sec-xlarge-mg {
    margin-block: 3.625rem;
  }
}

.l-sec-xxlarge {
  padding-block: 10rem;
}
@media screen and (max-width: 992px) {
  .l-sec-xxlarge {
    padding-block: 6.125rem;
  }
}
@media screen and (max-width: 576px) {
  .l-sec-xxlarge {
    padding-block: 4.5rem;
  }
}

.l-sec-xxlarge-mg {
  margin-block: 10rem;
}
@media screen and (max-width: 992px) {
  .l-sec-xxlarge-mg {
    margin-block: 6.125rem;
  }
}
@media screen and (max-width: 576px) {
  .l-sec-xxlarge-mg {
    margin-block: 4.5rem;
  }
}

.l-sec-remove-top {
  padding-top: 0 !important;
}

.l-sec-remove-top-mg {
  margin-top: 0 !important;
}

.l-sec-remove-bottom {
  padding-bottom: 0 !important;
}

.l-sec-remove-bottom-mg {
  margin-bottom: 0 !important;
}

.l-sec-bk {
  background-color: #1D1D1D;
}

.l-sec-main {
  background-color: #E40064;
}

.l-sec-white {
  background-color: #fff;
}

.l-sec-gray {
  background-color: #E6E6E6;
}

.l-sec-radius {
  border-radius: min(2.5rem, 10.6666666667vw) min(2.5rem, 10.6666666667vw) 0 0;
  position: relative;
}
@media screen and (max-width: 576px) {
  .l-sec-radius {
    border-radius: min(1.5625rem, 6.6666666667vw) min(1.5625rem, 6.6666666667vw) 0 0;
  }
}
.l-sec-radius::before {
  content: "";
  display: block;
  width: 100%;
  height: min(2.5rem, 10.6666666667vw);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.l-sec-radius.l-sec-radius--bg-black::before {
  background-color: #1D1D1D;
}
.l-sec-radius.l-sec-radius--bg-white::before {
  background-color: #fff;
}

.l-sec-decoration-white,
.l-sec-decoration {
  position: relative;
}
.l-sec-decoration-white::after,
.l-sec-decoration::after {
  content: "";
  display: block;
  aspect-ratio: 300/126;
  background-image: url(../images/svg/decoration_bg_white.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: min(18.75rem, 80vw);
  height: auto;
  position: absolute;
  top: 0;
  left: min(1.625rem, 6.9333333333vw);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 992px) {
  .l-sec-decoration-white::after,
  .l-sec-decoration::after {
    left: min(1.25rem, 5.3333333333vw);
    width: min(12.5rem, 53.3333333333vw);
    -webkit-transform: translateY(-42%);
            transform: translateY(-42%);
  }
}
@media screen and (max-width: 576px) {
  .l-sec-decoration-white::after,
  .l-sec-decoration::after {
    left: min(0.625rem, 2.6666666667vw);
    width: min(7.5rem, 32vw);
  }
}

.l-sec-decoration::after {
  background-image: url(../images/svg/decoration_bg.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.l-sec-relative {
  position: relative;
  z-index: 1;
}

.l-sec-border {
  position: relative;
  padding-left: min(1.625rem, 6.9333333333vw);
}
@media screen and (max-width: 992px) {
  .l-sec-border {
    padding-left: min(1rem, 4.2666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .l-sec-border {
    padding-left: min(0.625rem, 2.6666666667vw);
  }
}
.l-sec-border::before {
  content: "";
  display: block;
  height: 100%;
  background-color: #E40064;
  width: min(1.625rem, 6.9333333333vw);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
@media screen and (max-width: 992px) {
  .l-sec-border::before {
    width: min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .l-sec-border::before {
    width: min(0.625rem, 2.6666666667vw);
  }
}
.l-sec-border.l-sec-border--zindex::before {
  z-index: -1;
}

.l-sec-gradient {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(0, 0, 0, 0.9)));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.9) 50%);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.9) 50%);
}

/* ==========================================================================
コンテナーボックス
=========================================================================*/
.l-container,
.l-container-small,
.l-container-large {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-left: auto;
  margin-right: auto;
  padding-left: 6%;
  padding-right: 6%;
}
@media screen and (max-width: 992px) {
  .l-container,
  .l-container-small,
  .l-container-large {
    padding-left: 4%;
    padding-right: 4%;
  }
}
@media screen and (max-width: 576px) {
  .l-container,
  .l-container-small,
  .l-container-large {
    padding-left: 8.25%;
    padding-right: 8.25%;
  }
}

.l-container {
  max-width: 980px;
}
@media screen and (max-width: 992px) {
  .l-container {
    max-width: min(43.75rem, 186.6666666667vw);
  }
}

.l-container-small {
  max-width: 750px;
}

.l-container-large {
  max-width: 1120px;
}
@media screen and (max-width: 992px) {
  .l-container-large {
    max-width: min(43.75rem, 186.6666666667vw);
  }
}

.c-head {
  overflow: hidden;
}
.c-head.c-head--white {
  color: #fff;
}
.c-head.c-head--center {
  text-align: center;
}
.c-head.is_active .c-head__heading {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.c-head__eyebrow {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: min(1.6875rem, 7.2vw);
  letter-spacing: 0em;
  line-height: 1;
  padding-block: 1.5rem;
  padding-top: 0 !important;
}
@media screen and (max-width: 992px) {
  .c-head__eyebrow {
    padding-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .c-head__eyebrow {
    padding-block: 0.875rem;
  }
}
@media screen and (max-width: 992px) {
  .c-head__eyebrow {
    font-size: min(1rem, 4.2666666667vw);
  }
}
.c-head__eyebrow::before {
  content: "・";
  display: inline-block;
  color: #E40064;
}

.c-head__heading {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(3.5rem, 14.9333333333vw);
  letter-spacing: 0em;
  line-height: 1.0714285714;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition: -webkit-transform 0.8s;
  transition: -webkit-transform 0.8s;
  transition: transform 0.8s;
  transition: transform 0.8s, -webkit-transform 0.8s;
}
@media screen and (max-width: 992px) {
  .c-head__heading {
    font-size: min(2.875rem, 12.2666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-head__heading {
    font-size: min(2rem, 8.5333333333vw);
    line-height: 1.3125;
  }
}

.c-button {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(1.25rem, 5.3333333333vw);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 992px) {
  .c-button {
    gap: min(1.0625rem, 4.5333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-button {
    gap: min(0.9375rem, 4vw);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-button:hover .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #E40064;
  }
  .c-button:hover .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_main.svg);
  }
}
@media (hover: hover), (hover: none) {
  .c-button:active .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #E40064;
  }
  .c-button:active .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_main.svg);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-button.c-button--bk:hover .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #1D1D1D;
  }
  .c-button.c-button--bk:hover .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_black.svg);
  }
}
@media (hover: hover), (hover: none) {
  .c-button.c-button--bk:active .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #1D1D1D;
  }
  .c-button.c-button--bk:active .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_black.svg);
  }
}

.c-button__text {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1;
}
@media screen and (max-width: 992px) {
  .c-button__text {
    font-size: min(1.125rem, 4.8vw);
  }
}
@media screen and (max-width: 576px) {
  .c-button__text {
    font-size: min(1rem, 4.2666666667vw);
  }
}
.c-button__text.c-button__text--white {
  color: #fff;
}

.c-section-head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(3.5rem, 14.9333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .c-section-head {
    font-size: min(2.875rem, 12.2666666667vw);
  }
}
@media screen and (max-width: 992px) {
  .c-section-head {
    font-size: min(2rem, 8.5333333333vw);
  }
}
.c-section-head.c-section-head--white {
  color: #fff;
}

.c-button-icon {
  display: block;
  min-width: min(2.5rem, 10.6666666667vw);
  width: min(2.5rem, 10.6666666667vw);
  height: min(1.125rem, 4.8vw);
  border-radius: min(0.28125rem, 1.2vw);
  background-color: #E40064;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
  position: relative;
}
.c-button-icon::before {
  content: "";
  background-image: url(../images/svg/icon_arrow_btn_white.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-size: min(0.625rem, 2.6666666667vw) min(0.3125rem, 1.3333333333vw);
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 576px) {
  .c-button-icon::before {
    background-size: min(0.5625rem, 2.4vw) min(0.3125rem, 1.3333333333vw);
  }
}
@media screen and (max-width: 992px) {
  .c-button-icon {
    min-width: min(2.25rem, 9.6vw);
    width: min(2.25rem, 9.6vw);
    height: min(1rem, 4.2666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-button-icon {
    border-radius: min(0.1875rem, 0.8vw);
    min-width: min(2rem, 8.5333333333vw);
    width: min(2rem, 8.5333333333vw);
    height: min(0.875rem, 3.7333333333vw);
  }
}
.c-button-icon.c-button-icon--bk {
  background-color: #1D1D1D;
}
.c-button-icon.c-button-icon--white {
  background-color: #fff;
}
.c-button-icon.c-button-icon--white::before {
  background-image: url(../images/svg/icon_arrow_btn_main.svg);
}
.c-button-icon.c-button-icon--bottom {
  min-width: min(2rem, 8.5333333333vw);
  width: min(2rem, 8.5333333333vw);
  height: min(0.875rem, 3.7333333333vw);
}
@media screen and (max-width: 992px) {
  .c-button-icon.c-button-icon--bottom {
    min-width: min(1.75rem, 7.4666666667vw);
    width: min(1.75rem, 7.4666666667vw);
    height: min(0.75rem, 3.2vw);
  }
}
.c-button-icon.c-button-icon--bottom::before {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  background-size: min(0.4375rem, 1.8666666667vw) min(0.3125rem, 1.3333333333vw);
}

/* ==========================================================================
ボタンタイプ2
========================================================================== */
.c-button-type2 {
  border-radius: min(0.625rem, 2.6666666667vw);
  background-color: #1D1D1D;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(1.1875rem, 5.0666666667vw);
  height: min(4.625rem, 19.7333333333vw);
  color: #fff;
  -webkit-transition: color 0.3s, background-color 0.3s;
  transition: color 0.3s, background-color 0.3s;
}
@media screen and (max-width: 992px) {
  .c-button-type2 {
    border-radius: min(0.5rem, 2.1333333333vw);
    height: min(3.25rem, 13.8666666667vw);
    gap: min(1.0625rem, 4.5333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-button-type2 {
    height: min(2.875rem, 12.2666666667vw);
    gap: min(1.125rem, 4.8vw);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-button-type2:hover {
    color: #1D1D1D;
    background-color: #fff;
  }
  .c-button-type2:hover .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #E40064;
  }
  .c-button-type2:hover .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_main.svg);
  }
}
@media (hover: hover), (hover: none) {
  .c-button-type2:active {
    color: #1D1D1D;
    background-color: #fff;
  }
  .c-button-type2:active .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #E40064;
  }
  .c-button-type2:active .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_main.svg);
  }
}
.c-button-type2.c-button-type2--re {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.c-button-type2.c-button-type2--re .c-button-icon::before {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.c-button-type2.c-button-type2--white {
  background-color: #fff;
  border: min(0.125rem, 0.5333333333vw) solid #1D1D1D;
  color: #1D1D1D;
}
@media (hover: hover) and (pointer: fine) {
  .c-button-type2.c-button-type2--hovcolor:hover {
    color: #fff;
    background-color: #E40064;
    border: none !important;
  }
  .c-button-type2.c-button-type2--hovcolor:hover .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: #E40064;
    border: min(0.125rem, 0.5333333333vw) solid #fff;
  }
  .c-button-type2.c-button-type2--hovcolor:hover .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_white.svg);
  }
}
@media (hover: hover), (hover: none) {
  .c-button-type2.c-button-type2--hovcolor:active {
    color: #fff;
    background-color: #E40064;
    border: none !important;
  }
  .c-button-type2.c-button-type2--hovcolor:active .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: #E40064;
    border: min(0.125rem, 0.5333333333vw) solid #fff;
  }
  .c-button-type2.c-button-type2--hovcolor:active .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_white.svg);
  }
}

.c-button-type2__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1;
}
@media screen and (max-width: 992px) {
  .c-button-type2__text {
    font-size: min(0.875rem, 3.7333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-button-type2__text {
    font-size: min(0.75rem, 3.2vw);
  }
}

.c-header-contents {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding-inline: min(2.875rem, 12.2666666667vw) min(1.875rem, 8vw);
}
@media screen and (max-width: 992px) {
  .c-header-contents {
    padding-inline: min(1.25rem, 5.3333333333vw) min(1.5625rem, 6.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-header-contents {
    padding-inline: min(0.625rem, 2.6666666667vw) min(0.75rem, 3.2vw);
  }
}

.c-header-contents__buttonWrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(0.5rem, 2.1333333333vw);
  position: relative;
  z-index: 3;
}
@media screen and (max-width: 992px) {
  .c-header-contents__buttonWrap {
    padding-top: min(0.75rem, 3.2vw);
  }
}
@media screen and (max-width: 576px) {
  .c-header-contents__buttonWrap {
    padding-top: 0;
  }
}

.c-header-contents__btn {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  color: #fff;
  border-radius: 100vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(0.41875rem, 1.7866666667vw);
  width: min(10.25rem, 43.7333333333vw);
  height: min(2.5rem, 10.6666666667vw);
  background-color: #1D1D1D;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .c-header-contents__btn:hover {
    opacity: 0.75;
  }
}
@media (hover: hover), (hover: none) {
  .c-header-contents__btn:active {
    opacity: 0.75;
  }
}
.c-header-contents__btn::after {
  content: "";
  display: block;
  width: min(0.625rem, 2.6666666667vw);
  height: min(0.625rem, 2.6666666667vw);
  background-image: url(../images/svg/icon_arrow.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 576px) {
  .c-header-contents__btn--header {
    display: none;
  }
}
.c-header-contents__btn--menu {
  display: none;
}
@media screen and (max-width: 576px) {
  .c-header-contents__btn--menu {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: min(1.5rem, 6.4vw);
    width: min(8.125rem, 34.6666666667vw);
    height: min(2rem, 8.5333333333vw);
    font-size: min(0.75rem, 3.2vw);
  }
}

.c-header-contents__menu-btn {
  width: min(5.25rem, 22.4vw);
  height: min(2.5rem, 10.6666666667vw);
  background-color: #E40064;
  border-radius: 100vh;
  position: relative;
  -webkit-transition: background-color 0.4s, opacity 0.3s;
  transition: background-color 0.4s, opacity 0.3s;
}
@media screen and (max-width: 576px) {
  .c-header-contents__menu-btn {
    width: min(4.125rem, 17.6vw);
    height: min(2rem, 8.5333333333vw);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-header-contents__menu-btn:hover {
    opacity: 0.75;
  }
}
@media (hover: hover), (hover: none) {
  .c-header-contents__menu-btn:active {
    opacity: 0.75;
  }
}
.c-header-contents__menu-btn.is-active {
  background-color: #fff;
}
.c-header-contents__menu-btn.is-active span {
  background-color: #E40064;
}
.c-header-contents__menu-btn.is-active span:nth-of-type(1) {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
.c-header-contents__menu-btn.is-active span:nth-of-type(2) {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
.c-header-contents__menu-btn span {
  height: min(0.125rem, 0.5333333333vw);
  width: min(1.25rem, 5.3333333333vw);
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transition: background-color 0.4s, -webkit-transform 0.4s;
  transition: background-color 0.4s, -webkit-transform 0.4s;
  transition: background-color 0.4s, transform 0.4s;
  transition: background-color 0.4s, transform 0.4s, -webkit-transform 0.4s;
}
@media screen and (max-width: 576px) {
  .c-header-contents__menu-btn span {
    width: min(1rem, 4.2666666667vw);
    height: min(0.09375rem, 0.4vw);
  }
}
.c-header-contents__menu-btn span:nth-of-type(1) {
  -webkit-transform: translate(-50%, calc(-50% - min(0.03125rem, 0.1333333333vw) - min(0.2125rem, 0.9066666667vw)));
          transform: translate(-50%, calc(-50% - min(0.03125rem, 0.1333333333vw) - min(0.2125rem, 0.9066666667vw)));
}
@media screen and (max-width: 576px) {
  .c-header-contents__menu-btn span:nth-of-type(1) {
    -webkit-transform: translate(-50%, calc(-50% - min(0.03125rem, 0.1333333333vw) - min(0.1875rem, 0.8vw)));
            transform: translate(-50%, calc(-50% - min(0.03125rem, 0.1333333333vw) - min(0.1875rem, 0.8vw)));
  }
}
.c-header-contents__menu-btn span:nth-of-type(2) {
  -webkit-transform: translate(-50%, calc(-50% + min(0.03125rem, 0.1333333333vw) + min(0.2125rem, 0.9066666667vw)));
          transform: translate(-50%, calc(-50% + min(0.03125rem, 0.1333333333vw) + min(0.2125rem, 0.9066666667vw)));
}
@media screen and (max-width: 576px) {
  .c-header-contents__menu-btn span:nth-of-type(2) {
    -webkit-transform: translate(-50%, calc(-50% + min(0.03125rem, 0.1333333333vw) + min(0.1875rem, 0.8vw)));
            transform: translate(-50%, calc(-50% + min(0.03125rem, 0.1333333333vw) + min(0.1875rem, 0.8vw)));
  }
}

.c-header-contents-logo {
  display: block;
  width: min(13.25rem, 56.5333333333vw);
  height: auto;
}
@media screen and (max-width: 576px) {
  .c-header-contents-logo {
    width: min(10.5625rem, 45.0666666667vw);
  }
}
.c-header-contents-logo img {
  width: 100%;
}

a.c-header-contents-logo {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  a.c-header-contents-logo:hover {
    opacity: 0.75;
  }
}
@media (hover: hover), (hover: none) {
  a.c-header-contents-logo:active {
    opacity: 0.75;
  }
}

.header-menu {
  position: fixed;
  height: 100lvh;
  width: 100%;
  max-width: min(25.625rem, 109.3333333333vw);
  background-color: #E40064;
  top: 0;
  right: 0;
  padding-top: min(8rem, 34.1333333333vw);
  z-index: 1;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  opacity: 0;
  -webkit-transition: opacity 0.6s, -webkit-transform 0.7s;
  transition: opacity 0.6s, -webkit-transform 0.7s;
  transition: transform 0.7s, opacity 0.6s;
  transition: transform 0.7s, opacity 0.6s, -webkit-transform 0.7s;
  overflow-y: auto;
}
@media screen and (max-width: 576px) {
  .header-menu {
    max-width: min(17.75rem, 75.7333333333vw);
    padding-top: min(4.8125rem, 20.5333333333vw);
  }
}
.header-menu.is-active {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}

.header-menu__inner {
  margin-inline: auto;
  width: min(18rem, 76.8vw);
  min-height: min(30rem, 128vw);
}
@media screen and (max-width: 576px) {
  .header-menu__inner {
    width: min(14.625rem, 62.4vw);
  }
}

.header-menu__item:nth-of-type(n + 2) .header-menu__link {
  padding-block: 2.5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .header-menu__item:nth-of-type(n + 2) .header-menu__link {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .header-menu__item:nth-of-type(n + 2) .header-menu__link {
    padding-block: 1.25rem;
  }
}

.header-menu__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .header-menu__link:hover .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: #E40064;
    border: min(0.125rem, 0.5333333333vw) solid #fff;
  }
  .header-menu__link:hover .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_white.svg);
  }
}
@media (hover: hover), (hover: none) {
  .header-menu__link:active .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: #E40064;
    border: min(0.125rem, 0.5333333333vw) solid #fff;
  }
  .header-menu__link:active .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_white.svg);
  }
}

.header-menu__text-wrap {
  line-height: 1;
}

.header-menu__sub {
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0em;
  line-height: 1;
}
@media screen and (max-width: 576px) {
  .header-menu__sub {
    font-size: min(0.75rem, 3.2vw);
  }
}

.header-menu__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  padding-block: 1rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .header-menu__head {
    padding-block: 0.875rem;
  }
}
@media screen and (max-width: 576px) {
  .header-menu__head {
    padding-block: 0.5rem;
  }
}
@media screen and (max-width: 992px) {
  .header-menu__head {
    font-size: min(1.125rem, 4.8vw);
  }
}
@media screen and (max-width: 576px) {
  .header-menu__head {
    font-size: min(1rem, 4.2666666667vw);
  }
}

.header-menu__bottom {
  padding-block: 4rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .header-menu__bottom {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .header-menu__bottom {
    padding-block: 2rem;
  }
}

.header-menu__bottom-item:nth-of-type(n + 2) .header-menu__bottom-link {
  padding-block: 1rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .header-menu__bottom-item:nth-of-type(n + 2) .header-menu__bottom-link {
    padding-block: 0.875rem;
  }
}
@media screen and (max-width: 576px) {
  .header-menu__bottom-item:nth-of-type(n + 2) .header-menu__bottom-link {
    padding-block: 0.5rem;
  }
}

.header-menu__bottom-link {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  color: #fff;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
@media (hover: hover) and (pointer: fine) {
  .header-menu__bottom-link:hover {
    opacity: 0.8;
  }
}
@media (hover: hover), (hover: none) {
  .header-menu__bottom-link:active {
    opacity: 0.8;
  }
}
@media screen and (max-width: 576px) {
  .header-menu__bottom-link {
    font-size: min(0.75rem, 3.2vw);
  }
}

.c-footer-contents {
  padding-block: 4rem;
  padding-top: 0 !important;
}
@media screen and (max-width: 992px) {
  .c-footer-contents {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .c-footer-contents {
    padding-block: 2rem;
  }
}

.c-footer-contents-inner {
  padding-block: 6.25rem;
  padding-bottom: 0 !important;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(min(5rem, 21.3333333333vw), 5.8565153734vw);
  padding-inline: min(1.875rem, 8vw);
}
@media screen and (max-width: 992px) {
  .c-footer-contents-inner {
    padding-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .c-footer-contents-inner {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 992px) {
  .c-footer-contents-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: min(3.625rem, 15.4666666667vw);
  }
}

@media screen and (max-width: 992px) {
  .c-foote-info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: min(2.125rem, 9.0666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-foote-info {
    gap: min(1.375rem, 5.8666666667vw);
  }
}

.c-footer-contents-info__logo {
  width: min(8.75rem, 37.3333333333vw);
  height: auto;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media screen and (max-width: 992px) {
  .c-footer-contents-info__logo {
    width: min(5.25rem, 22.4vw);
  }
}
@media screen and (max-width: 576px) {
  .c-footer-contents-info__logo {
    width: min(4.375rem, 18.6666666667vw);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-footer-contents-info__logo:hover {
    opacity: 0.75;
  }
}
@media (hover: hover), (hover: none) {
  .c-footer-contents-info__logo:active {
    opacity: 0.75;
  }
}

.c-footer-contents-info__address {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0em;
  line-height: 1.6428571429;
  font-style: normal;
  margin-top: min(2.5rem, 10.6666666667vw);
}
@media screen and (max-width: 992px) {
  .c-footer-contents-info__address {
    margin-top: 0;
  }
}
@media screen and (max-width: 576px) {
  .c-footer-contents-info__address {
    font-size: min(0.75rem, 3.2vw);
  }
}

.c-footer-contents-nav__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(min(3.375rem, 14.4vw), 3.953147877vw);
  margin-top: min(0.75rem, 3.2vw);
}
@media screen and (max-width: 992px) {
  .c-footer-contents-nav__list {
    gap: min(min(3rem, 12.8vw), 5.8536585366vw);
  }
}
@media screen and (max-width: 576px) {
  .c-footer-contents-nav__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: min(1.125rem, 4.8vw);
  }
}

.c-footer-contents-nav__block {
  line-height: 1;
}

.c-footer-contents-nav__category {
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0em;
  line-height: 1.7142857143;
  color: #E40064;
}
@media screen and (max-width: 576px) {
  .c-footer-contents-nav__category {
    text-align: center;
    font-size: min(0.75rem, 3.2vw);
  }
}

.c-footer-contents-nav__title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.15;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
  display: block;
}
@media (hover: hover) and (pointer: fine) {
  .c-footer-contents-nav__title:hover {
    color: #E40064;
  }
}
@media (hover: hover), (hover: none) {
  .c-footer-contents-nav__title:active {
    color: #E40064;
  }
}
@media screen and (max-width: 992px) {
  .c-footer-contents-nav__title {
    font-size: min(1.125rem, 4.8vw);
    line-height: 1.3888888889;
    min-height: min(3.1875rem, 13.6vw);
  }
}
@media screen and (max-width: 576px) {
  .c-footer-contents-nav__title {
    font-size: min(1rem, 4.2666666667vw);
    min-height: unset;
  }
}
@media screen and (max-width: 576px) {
  .c-footer-contents-nav__title br {
    display: none !important;
  }
}

.c-footer-contents-nav__links {
  margin-top: min(3.4375rem, 14.6666666667vw);
}
@media screen and (max-width: 992px) {
  .c-footer-contents-nav__links {
    margin-top: min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-footer-contents-nav__links {
    display: none;
  }
}
.c-footer-contents-nav__links li {
  line-height: 1;
}
.c-footer-contents-nav__links a {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0em;
  line-height: 2.0357142857;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
@media (hover: hover) and (pointer: fine) {
  .c-footer-contents-nav__links a:hover {
    color: #E40064;
  }
}
@media (hover: hover), (hover: none) {
  .c-footer-contents-nav__links a:active {
    color: #E40064;
  }
}

.c-footer-contents-bottom {
  padding-block: 5rem;
  padding-bottom: 0 !important;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(3.125rem, 13.3333333333vw);
}
@media screen and (max-width: 992px) {
  .c-footer-contents-bottom {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .c-footer-contents-bottom {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .c-footer-contents-bottom {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: min(0.875rem, 3.7333333333vw);
  }
}

.c-footer-contents-bottom__item {
  line-height: 1;
}
.c-footer-contents-bottom__item.c-footer-contents-bottom__item--tab .c-footer-contents-bottom__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(0.3125rem, 1.3333333333vw);
}
.c-footer-contents-bottom__item.c-footer-contents-bottom__item--tab .c-footer-contents-bottom__link::after {
  content: "";
  display: block;
  background-image: url(../images/svg/icon_link.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 1/1;
  width: min(0.9375rem, 4vw);
  height: auto;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
}
@media screen and (max-width: 576px) {
  .c-footer-contents-bottom__item.c-footer-contents-bottom__item--tab .c-footer-contents-bottom__link::after {
    width: min(0.875rem, 3.7333333333vw);
  }
}

.c-footer-contents-bottom__link {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
@media (hover: hover) and (pointer: fine) {
  .c-footer-contents-bottom__link:hover {
    color: #E40064;
  }
}
@media (hover: hover), (hover: none) {
  .c-footer-contents-bottom__link:active {
    color: #E40064;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-footer-contents-bottom__link:hover::after {
    background-image: url(../images/svg/icon_link_main.svg) !important;
  }
}
@media (hover: hover), (hover: none) {
  .c-footer-contents-bottom__link:active::after {
    background-image: url(../images/svg/icon_link_main.svg) !important;
  }
}

.c-footer-contents__copy {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  background-color: #1D1D1D;
  color: #fff;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: min(2.75rem, 11.7333333333vw);
}
@media screen and (max-width: 992px) {
  .c-footer-contents__copy {
    font-size: min(0.75rem, 3.2vw);
  }
}
@media screen and (max-width: 576px) {
  .c-footer-contents__copy {
    font-size: min(0.75rem, 3.2vw);
    height: min(1.75rem, 7.4666666667vw);
  }
}

.c-page-top {
  position: fixed;
  bottom: min(1.875rem, 8vw);
  right: min(1.875rem, 8vw);
  z-index: 100;
  background-color: transparent;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(0.5625rem, 2.4vw);
  aspect-ratio: 1/1;
  width: min(5.125rem, 21.8666666667vw);
  padding-top: min(0.9375rem, 4vw);
  height: auto;
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media screen and (max-width: 992px) {
  .c-page-top {
    width: min(3.75rem, 16vw);
    padding-top: 0;
    gap: min(0.375rem, 1.6vw);
    right: min(1rem, 4.2666666667vw);
    bottom: min(1rem, 4.2666666667vw);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-page-top:hover {
    opacity: 0.75 !important;
  }
}
@media (hover: hover), (hover: none) {
  .c-page-top:active {
    opacity: 0.75 !important;
  }
}
.c-page-top.is-absolute {
  position: absolute;
  bottom: min(2.6875rem, 11.4666666667vw);
}
@media screen and (max-width: 576px) {
  .c-page-top.is-absolute {
    bottom: min(1.75rem, 7.4666666667vw);
  }
}
.c-page-top::before {
  content: "";
  display: block;
  background-image: url(../images/svg/icon_angle_pagetop.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: min(0.625rem, 2.6666666667vw);
  left: calc(50% + min(0.25rem, 1.0666666667vw));
  -webkit-transform: translate(-50%, -100%);
          transform: translate(-50%, -100%);
  aspect-ratio: 31/10;
  width: min(1.9375rem, 8.2666666667vw);
  height: auto;
}
@media screen and (max-width: 992px) {
  .c-page-top::before {
    width: min(1.5rem, 6.4vw);
  }
}

.c-page-top__text {
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  font-size: min(0.8125rem, 3.4666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  text-align: center;
  position: relative;
  left: min(0.3125rem, 1.3333333333vw);
}
@media screen and (max-width: 992px) {
  .c-page-top__text {
    font-size: min(0.625rem, 2.6666666667vw);
  }
}

.c-page-top .c-page-top__text {
  color: #1D1D1D;
}
.c-page-top.is-invert .c-page-top__text {
  color: #fff;
}
.c-page-top.is-invert::before {
  background-image: url(../images/svg/icon_angle_pagetop_white.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.c-page-top__img {
  width: min(4.5rem, 19.2vw);
  height: auto;
}
@media screen and (max-width: 992px) {
  .c-page-top__img {
    width: min(3.5rem, 14.9333333333vw);
  }
}

.c-loop-text {
  position: relative;
  overflow: hidden;
  white-space: nowrap;
  width: 100%;
  z-index: -1;
}
.c-loop-text.c-loop-text--gray .c-loop-text__text {
  color: #f2f2f2;
  opacity: 1;
}
.c-loop-text.c-loop-text--50per .c-loop-text__text {
  opacity: 0.5;
}

.c-loop-text__inner {
  display: inline-block;
  white-space: nowrap;
  padding-left: 0;
  -webkit-animation: scroll-left 130s linear infinite;
          animation: scroll-left 130s linear infinite;
}
@media screen and (max-width: 576px) {
  .c-loop-text__inner {
    -webkit-animation: scroll-left 90s linear infinite;
            animation: scroll-left 90s linear infinite;
  }
}

.c-loop-text__text {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: min(14.375rem, 61.3333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  color: #fff;
  display: inline-block;
  padding-right: 100px;
  white-space: nowrap;
  opacity: 0.15;
}
@media screen and (max-width: 992px) {
  .c-loop-text__text {
    font-size: min(8.5rem, 36.2666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-loop-text__text {
    font-size: min(6.1875rem, 26.4vw);
  }
}

@-webkit-keyframes scroll-left {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

@keyframes scroll-left {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
/* ==========================================================================
パンくず
========================================================================== */
.c-breadcrumbs {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: min(1.25rem, 5.3333333333vw);
  height: min(1.625rem, 6.9333333333vw);
  margin-bottom: max(-1.625rem, -6.9333333333vw);
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 576px) {
  .c-breadcrumbs {
    height: min(1.0625rem, 4.5333333333vw);
    gap: min(1rem, 4.2666666667vw);
    margin-bottom: max(-1.0625rem, -4.5333333333vw);
  }
}

.c-breadcrumbs__list {
  position: relative;
  line-height: 1;
}
.c-breadcrumbs__list:not(:last-of-type)::after {
  content: ">";
  display: block;
  position: absolute;
  top: calc(50% + min(0.125rem, 0.5333333333vw));
  right: max(-0.375rem, -1.6vw);
  -webkit-transform: translate(100%, -50%);
          transform: translate(100%, -50%);
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(0.75rem, 3.2vw);
  letter-spacing: 0em;
  line-height: 1;
}
@media screen and (max-width: 576px) {
  .c-breadcrumbs__list:not(:last-of-type)::after {
    font-size: min(0.625rem, 2.6666666667vw);
    top: calc(50% + min(0.15625rem, 0.6666666667vw));
  }
}

.c-breadcrumbs__item {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(0.75rem, 3.2vw);
  letter-spacing: 0em;
  line-height: 1;
}
.c-breadcrumbs__item.c-breadcrumbs__item--home {
  background-image: url(../images/svg/icon_home.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  display: inline-block;
  aspect-ratio: 9/11;
  width: min(0.5625rem, 2.4vw);
  height: auto;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media screen and (max-width: 576px) {
  .c-breadcrumbs__item.c-breadcrumbs__item--home {
    width: min(0.46875rem, 2vw);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-breadcrumbs__item.c-breadcrumbs__item--home:hover {
    opacity: 0.75;
  }
}
@media (hover: hover), (hover: none) {
  .c-breadcrumbs__item.c-breadcrumbs__item--home:active {
    opacity: 0.75;
  }
}
@media screen and (max-width: 576px) {
  .c-breadcrumbs__item {
    font-size: min(0.625rem, 2.6666666667vw);
  }
}

/* ==========================================================================
サブページメインビジュアル
========================================================================== */
.c-sub-mv {
  height: min(32.5rem, 138.6666666667vw);
}
.c-sub-mv.c-sub-mv--business {
  background-image: url(../images/compression/img_submv_business_half.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@supports (background-image: url(../images/webp/img_submv_business.webp)) {
  .c-sub-mv.c-sub-mv--business {
    background-image: url(../images/webp/img_submv_business.webp);
  }
}
.c-sub-mv.c-sub-mv--company {
  background-image: url(../images/compression/img_submv_company_half.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@supports (background-image: url(../images/webp/img_submv_company.webp)) {
  .c-sub-mv.c-sub-mv--company {
    background-image: url(../images/webp/img_submv_company.webp);
  }
}
.c-sub-mv.c-sub-mv--in3min {
  background-image: url(../images/compression/img_submv_in3min_half.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@supports (background-image: url(../images/webp/img_submv_in3min.webp)) {
  .c-sub-mv.c-sub-mv--in3min {
    background-image: url(../images/webp/img_submv_in3min.webp);
  }
}
.c-sub-mv.c-sub-mv--contact {
  background-image: url(../images/compression/img_submv_contact_half.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@supports (background-image: url(../images/webp/img_submv_contact.webp)) {
  .c-sub-mv.c-sub-mv--contact {
    background-image: url(../images/webp/img_submv_contact.webp);
  }
}
.c-sub-mv.c-sub-mv--recruit {
  background-image: url(../images/compression/img_submv_recruit_half.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@supports (background-image: url(../images/webp/img_submv_recruit.webp)) {
  .c-sub-mv.c-sub-mv--recruit {
    background-image: url(../images/webp/img_submv_recruit.webp);
  }
}
.c-sub-mv.c-sub-mv--policy {
  background-image: url(../images/compression/img_submv_policy_half.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@supports (background-image: url(../images/webp/img_submv_policy.webp)) {
  .c-sub-mv.c-sub-mv--policy {
    background-image: url(../images/webp/img_submv_policy.webp);
  }
}
@media screen and (max-width: 992px) {
  .c-sub-mv {
    height: min(51.25rem, 218.6666666667vw);
  }
  .c-sub-mv.c-sub-mv--business {
    background-image: url(../images/compression/img_submv_business_tb_half.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  @supports (background-image: url(../images/webp/img_submv_business_tb.webp)) {
    .c-sub-mv.c-sub-mv--business {
      background-image: url(../images/webp/img_submv_business_tb.webp);
    }
  }
  .c-sub-mv.c-sub-mv--company {
    background-image: url(../images/compression/img_submv_company_tb_half.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  @supports (background-image: url(../images/webp/img_submv_company_tb.webp)) {
    .c-sub-mv.c-sub-mv--company {
      background-image: url(../images/webp/img_submv_company_tb.webp);
    }
  }
  .c-sub-mv.c-sub-mv--in3min {
    background-image: url(../images/compression/img_submv_in3min_tb_half.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  @supports (background-image: url(../images/webp/img_submv_in3min_tb.webp)) {
    .c-sub-mv.c-sub-mv--in3min {
      background-image: url(../images/webp/img_submv_in3min_tb.webp);
    }
  }
  .c-sub-mv.c-sub-mv--contact {
    background-image: url(../images/compression/img_submv_contact_tb_half.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  @supports (background-image: url(../images/webp/img_submv_contact_tb.webp)) {
    .c-sub-mv.c-sub-mv--contact {
      background-image: url(../images/webp/img_submv_contact_tb.webp);
    }
  }
  .c-sub-mv.c-sub-mv--recruit {
    background-image: url(../images/compression/img_submv_recruit_tb_half.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  @supports (background-image: url(../images/webp/img_submv_recruit_tb.webp)) {
    .c-sub-mv.c-sub-mv--recruit {
      background-image: url(../images/webp/img_submv_recruit_tb.webp);
    }
  }
  .c-sub-mv.c-sub-mv--policy {
    background-image: url(../images/compression/img_submv_policy_tb_half.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  @supports (background-image: url(../images/webp/img_submv_policy_tb.webp)) {
    .c-sub-mv.c-sub-mv--policy {
      background-image: url(../images/webp/img_submv_policy_tb.webp);
    }
  }
}
@media screen and (max-width: 576px) {
  .c-sub-mv {
    height: min(30rem, 128vw);
  }
  .c-sub-mv.c-sub-mv--business {
    background-image: url(../images/compression/img_submv_business_sp_half.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  @supports (background-image: url(../images/webp/img_submv_business_sp.webp)) {
    .c-sub-mv.c-sub-mv--business {
      background-image: url(../images/webp/img_submv_business_sp.webp);
    }
  }
  .c-sub-mv.c-sub-mv--company {
    background-image: url(../images/compression/img_submv_company_sp_half.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  @supports (background-image: url(../images/webp/img_submv_company_sp.webp)) {
    .c-sub-mv.c-sub-mv--company {
      background-image: url(../images/webp/img_submv_company_sp.webp);
    }
  }
  .c-sub-mv.c-sub-mv--in3min {
    background-image: url(../images/compression/img_submv_in3min_sp_half.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  @supports (background-image: url(../images/webp/img_submv_in3min_sp.webp)) {
    .c-sub-mv.c-sub-mv--in3min {
      background-image: url(../images/webp/img_submv_in3min_sp.webp);
    }
  }
  .c-sub-mv.c-sub-mv--contact {
    background-image: url(../images/compression/img_submv_contact_sp_half.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  @supports (background-image: url(../images/webp/img_submv_contact_sp.webp)) {
    .c-sub-mv.c-sub-mv--contact {
      background-image: url(../images/webp/img_submv_contact_sp.webp);
    }
  }
  .c-sub-mv.c-sub-mv--recruit {
    background-image: url(../images/compression/img_submv_recruit_sp_half.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  @supports (background-image: url(../images/webp/img_submv_recruit_sp.webp)) {
    .c-sub-mv.c-sub-mv--recruit {
      background-image: url(../images/webp/img_submv_recruit_sp.webp);
    }
  }
  .c-sub-mv.c-sub-mv--policy {
    background-image: url(../images/compression/img_submv_policy_sp_half.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  @supports (background-image: url(../images/webp/img_submv_policy_sp.webp)) {
    .c-sub-mv.c-sub-mv--policy {
      background-image: url(../images/webp/img_submv_policy_sp.webp);
    }
  }
}
.c-sub-mv.is_active .c-sub-mv__head span {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.c-sub-mv__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: min(2rem, 8.5333333333vw);
  position: absolute;
  top: min(9.6875rem, 41.3333333333vw);
  left: min(min(8.5rem, 36.2666666667vw), 9.9560761347vw);
}
@media screen and (max-width: 992px) {
  .c-sub-mv__inner {
    gap: min(1.625rem, 6.9333333333vw);
    top: min(17.4375rem, 74.4vw);
    left: min(7.5rem, 32vw);
  }
}
@media screen and (max-width: 820px) {
  .c-sub-mv__inner {
    left: min(min(4.375rem, 18.6666666667vw), 8.5365853659vw);
  }
}
@media screen and (max-width: 576px) {
  .c-sub-mv__inner {
    gap: min(1.1875rem, 5.0666666667vw);
    top: min(9.4375rem, 40.2666666667vw);
    left: min(min(3rem, 12.8vw), 5.8536585366vw);
  }
}

.c-sub-mv__img {
  width: min(18.75rem, 80vw);
  height: auto;
}
@media screen and (max-width: 992px) {
  .c-sub-mv__img {
    width: min(15.375rem, 65.6vw);
  }
}
@media screen and (max-width: 576px) {
  .c-sub-mv__img {
    width: min(10.75rem, 45.8666666667vw);
  }
}

.c-sub-mv__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(3.5rem, 14.9333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  color: #fff;
  overflow: hidden;
}
@media screen and (max-width: 992px) {
  .c-sub-mv__head {
    font-size: min(2.875rem, 12.2666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-sub-mv__head {
    font-size: min(2rem, 8.5333333333vw);
  }
}
.c-sub-mv__head span {
  display: inline-block;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition: -webkit-transform 0.8s;
  transition: -webkit-transform 0.8s;
  transition: transform 0.8s;
  transition: transform 0.8s, -webkit-transform 0.8s;
}

/* ==========================================================================
ページ内アンカーリンク
========================================================================== */
.c-anchor {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: min(5rem, 21.3333333333vw);
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 992px) {
  .c-anchor {
    gap: min(2.6875rem, 11.4666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-anchor {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: min(9.8125rem, 41.8666666667vw);
    margin-inline: auto;
    gap: min(0.8125rem, 3.4666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-anchor.c-anchor--lg {
    width: min(10.9375rem, 46.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-anchor.c-anchor--xlg {
    width: min(12.8125rem, 54.6666666667vw);
  }
}

@media screen and (max-width: 576px) {
  .c-anchor__item {
    width: 100%;
  }
}

.c-anchor__link {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.075em;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(1.125rem, 4.8vw);
}
@media (hover: hover) and (pointer: fine) {
  .c-anchor__link:hover .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #E40064;
  }
  .c-anchor__link:hover .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_main.svg);
  }
}
@media (hover: hover), (hover: none) {
  .c-anchor__link:active .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #E40064;
  }
  .c-anchor__link:active .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_main.svg);
  }
}
@media screen and (max-width: 992px) {
  .c-anchor__link {
    font-size: min(0.875rem, 3.7333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-anchor__link {
    gap: 0;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
  }
}

/* ==========================================================================
装飾付き見出し
========================================================================== */
.c-decoration-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-decoration-head.is_active span {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.c-decoration-head::before {
  content: "";
  display: block;
  aspect-ratio: 270/119;
  width: min(16.875rem, 72vw);
  height: auto;
}
@media screen and (max-width: 992px) {
  .c-decoration-head::before {
    width: min(11.75rem, 50.1333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-decoration-head::before {
    width: min(8.75rem, 37.3333333333vw);
  }
}
.c-decoration-head.c-decoration-head--gray::before {
  background-image: url(../images/svg/decoration_gray.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.c-decoration-head.c-decoration-head--white::before {
  background-image: url(../images/svg/decoration_white.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.c-decoration-head__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(2.875rem, 12.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  margin-block: 1.5rem;
  margin-bottom: 0 !important;
  overflow: hidden;
}
@media screen and (max-width: 992px) {
  .c-decoration-head__text {
    margin-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .c-decoration-head__text {
    margin-block: 0.875rem;
  }
}
@media screen and (max-width: 992px) {
  .c-decoration-head__text {
    font-size: min(2rem, 8.5333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-decoration-head__text {
    font-size: min(1.5rem, 6.4vw);
  }
}
.c-decoration-head__text span {
  display: inline-block;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition: -webkit-transform 0.8s;
  transition: -webkit-transform 0.8s;
  transition: transform 0.8s;
  transition: transform 0.8s, -webkit-transform 0.8s;
}

.c-contact {
  padding-block: 6.25rem;
  background-image: url(../images/compression/img_top_contact_half.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
@media screen and (max-width: 992px) {
  .c-contact {
    padding-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .c-contact {
    padding-block: 3.625rem;
  }
}
@supports (background-image: url(../images/webp/img_top_contact.webp)) {
  .c-contact {
    background-image: url(../images/webp/img_top_contact.webp);
  }
}

.c-contact__decoration {
  display: block;
  width: min(18.75rem, 80vw);
  height: auto;
  margin-inline: auto;
}
@media screen and (max-width: 992px) {
  .c-contact__decoration {
    width: min(12.5625rem, 53.6vw);
  }
}
@media screen and (max-width: 576px) {
  .c-contact__decoration {
    width: min(8.75rem, 37.3333333333vw);
  }
}

.c-contact__head-wrap {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  position: relative;
  top: max(-1.4375rem, -6.1333333333vw);
  margin-bottom: max(-1.4375rem, -6.1333333333vw);
}
@media screen and (max-width: 992px) {
  .c-contact__head-wrap {
    top: max(-0.8125rem, -3.4666666667vw);
    margin-bottom: max(-0.8125rem, -3.4666666667vw);
  }
}

.c-contact__en {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: min(1.6875rem, 7.2vw);
  letter-spacing: 0em;
  line-height: 1;
  color: #fff;
  margin-block: 2.5rem;
  margin-top: 0 !important;
  position: relative;
  left: min(0.625rem, 2.6666666667vw);
}
@media screen and (max-width: 992px) {
  .c-contact__en {
    margin-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .c-contact__en {
    margin-block: 1.25rem;
  }
}
@media screen and (max-width: 992px) {
  .c-contact__en {
    font-size: min(1rem, 4.2666666667vw);
    left: min(2.5rem, 10.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-contact__en {
    font-size: min(0.71875rem, 3.0666666667vw);
    left: min(1.5rem, 6.4vw);
  }
}

.c-contact-contents-wrap {
  margin-block: 2.5rem;
  margin-bottom: 0 !important;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(0.5rem, 2.1333333333vw);
}
@media screen and (max-width: 992px) {
  .c-contact-contents-wrap {
    margin-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .c-contact-contents-wrap {
    margin-block: 1.25rem;
  }
}
@media screen and (max-width: 576px) {
  .c-contact-contents-wrap {
    grid-template-columns: 1fr;
  }
}

.c-contact-contents {
  background-color: rgba(29, 29, 29, 0.8);
  color: #fff;
  padding-block: 2.5rem;
}
@media screen and (max-width: 992px) {
  .c-contact-contents {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .c-contact-contents {
    padding-block: 1.25rem;
  }
}

.c-contact-contents__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .c-contact-contents__head {
    font-size: min(0.893125rem, 3.8106666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-contact-contents__head {
    font-size: min(1rem, 4.2666666667vw);
  }
}

.c-contact-contents__tel {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: min(2.875rem, 12.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  margin-block: 1.5rem;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(0.5rem, 2.1333333333vw);
}
@media screen and (max-width: 992px) {
  .c-contact-contents__tel {
    margin-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .c-contact-contents__tel {
    margin-block: 0.875rem;
  }
}
@media screen and (max-width: 992px) {
  .c-contact-contents__tel {
    font-size: min(2.375rem, 10.1333333333vw);
    gap: min(0.125rem, 0.5333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-contact-contents__tel {
    font-size: min(1.75rem, 7.4666666667vw);
    gap: min(0.25rem, 1.0666666667vw);
  }
}
.c-contact-contents__tel::before {
  content: "";
  display: block;
  background-image: url(../images/svg/icon_tel.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 27/35;
  width: min(1.6875rem, 7.2vw);
  height: auto;
}
@media screen and (max-width: 992px) {
  .c-contact-contents__tel::before {
    width: min(1.3125rem, 5.6vw);
  }
}
@media screen and (max-width: 576px) {
  .c-contact-contents__tel::before {
    width: min(0.9375rem, 4vw);
  }
}

.c-contact-contents__info {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .c-contact-contents__info {
    font-size: min(0.625rem, 2.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-contact-contents__info {
    font-size: min(0.75rem, 3.2vw);
  }
}

.c-contact-contents__mail {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(1.3125rem, 5.6vw);
  height: min(4.625rem, 19.7333333333vw);
  max-width: min(21.875rem, 93.3333333333vw);
  width: 80%;
  border-radius: min(0.625rem, 2.6666666667vw);
  border: min(0.0625rem, 0.2666666667vw) solid #fff;
  margin-inline: auto;
  margin-block: 1.5rem;
  margin-bottom: 0 !important;
  -webkit-transition: background-color 0.4s;
  transition: background-color 0.4s;
}
@media screen and (max-width: 992px) {
  .c-contact-contents__mail {
    margin-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .c-contact-contents__mail {
    margin-block: 0.875rem;
  }
}
@media screen and (max-width: 992px) {
  .c-contact-contents__mail {
    height: min(3.25rem, 13.8666666667vw);
    max-width: min(15.625rem, 66.6666666667vw);
  }
}
@media screen and (max-width: 992px) {
  .c-contact-contents__mail {
    height: min(2.875rem, 12.2666666667vw);
    max-width: min(13.75rem, 58.6666666667vw);
    gap: min(1rem, 4.2666666667vw);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-contact-contents__mail:hover {
    background-color: #fff;
  }
  .c-contact-contents__mail:hover .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #E40064;
  }
  .c-contact-contents__mail:hover .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_main.svg);
  }
  .c-contact-contents__mail:hover .c-contact-contents__mailText {
    color: #1D1D1D;
  }
}
@media (hover: hover), (hover: none) {
  .c-contact-contents__mail:active {
    background-color: #fff;
  }
  .c-contact-contents__mail:active .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #E40064;
  }
  .c-contact-contents__mail:active .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_main.svg);
  }
  .c-contact-contents__mail:active .c-contact-contents__mailText {
    color: #1D1D1D;
  }
}
.c-contact-contents__mail .c-button-icon {
  position: relative;
  top: min(0.0625rem, 0.2666666667vw);
}

.c-contact-contents__mailText {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  color: #fff;
  -webkit-transition: color 0.4s;
  transition: color 0.4s;
}
@media screen and (max-width: 992px) {
  .c-contact-contents__mailText {
    font-size: min(0.875rem, 3.7333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-contact-contents__mailText {
    font-size: min(1rem, 4.2666666667vw);
  }
}

/* ==========================================================================
電話でのお問い合わせ
========================================================================== */
.c-tel-contents.c-tel-contents--hide-text .c-tel-contents__inner {
  padding-block: 2.5rem;
}
@media screen and (max-width: 992px) {
  .c-tel-contents.c-tel-contents--hide-text .c-tel-contents__inner {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .c-tel-contents.c-tel-contents--hide-text .c-tel-contents__inner {
    padding-block: 1.25rem;
  }
}
@media screen and (max-width: 992px) {
  .c-tel-contents.c-tel-contents--hide-text .c-tel-contents__inner {
    padding-block: 4rem;
  }
}
@media screen and (max-width: 992px) and (max-width: 992px) {
  .c-tel-contents.c-tel-contents--hide-text .c-tel-contents__inner {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) and (max-width: 576px) {
  .c-tel-contents.c-tel-contents--hide-text .c-tel-contents__inner {
    padding-block: 2rem;
  }
}
.c-tel-contents.c-tel-contents--hide-text .c-tel-contents__tel {
  padding-top: 0 !important;
}

.c-tel-contents__inner {
  padding-block: 4rem;
  display: block;
  background-color: #E40064;
}
@media screen and (max-width: 992px) {
  .c-tel-contents__inner {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .c-tel-contents__inner {
    padding-block: 2rem;
  }
}
@media screen and (max-width: 576px) {
  .c-tel-contents__inner {
    padding-inline: min(1.5rem, 6.4vw);
  }
}

.c-tel-contents__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1.5;
  color: #fff;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .c-tel-contents__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0em;
    line-height: 1.4285714286;
  }
}

.c-tel-contents__tel {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: min(2.875rem, 12.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  padding-block: 1.5rem;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(0.25rem, 1.0666666667vw);
  color: #fff;
}
@media screen and (max-width: 992px) {
  .c-tel-contents__tel {
    padding-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .c-tel-contents__tel {
    padding-block: 0.875rem;
  }
}
@media screen and (max-width: 992px) {
  .c-tel-contents__tel {
    font-size: min(2rem, 8.5333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-tel-contents__tel {
    font-size: min(1.5rem, 6.4vw);
  }
}
.c-tel-contents__tel img {
  width: min(2rem, 8.5333333333vw);
  height: auto;
  position: relative;
  top: max(-0.1875rem, -0.8vw);
}
@media screen and (max-width: 992px) {
  .c-tel-contents__tel img {
    width: min(1.375rem, 5.8666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-tel-contents__tel img {
    width: min(1.0625rem, 4.5333333333vw);
  }
}

.c-tel-contents__info {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  -webkit-font-feature-settings: "palt" !important;
          font-feature-settings: "palt" !important;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 992px) {
  .c-tel-contents__info {
    font-size: min(0.875rem, 3.7333333333vw);
  }
}

.c-recruit__img {
  display: block;
  margin-inline: auto;
  width: min(18.75rem, 80vw);
  height: auto;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
}
@media screen and (max-width: 992px) {
  .c-recruit__img {
    width: min(15.25rem, 65.0666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-recruit__img {
    width: min(8.5625rem, 36.5333333333vw);
  }
}
.c-recruit__img.is_active {
  -webkit-transform: rotate(10deg);
          transform: rotate(10deg);
}
@media screen and (max-width: 576px) {
  .c-recruit__img.is_active {
    -webkit-transform: rotate(0) !important;
            transform: rotate(0) !important;
  }
}

.c-recruit__head {
  padding-block: 2.5rem;
  padding-bottom: 0 !important;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(2.875rem, 12.2666666667vw);
  letter-spacing: 0em;
  line-height: 1.4347826087;
  color: #fff;
  text-align: center;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
@media screen and (max-width: 992px) {
  .c-recruit__head {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .c-recruit__head {
    padding-block: 1.25rem;
  }
}
@media screen and (max-width: 992px) {
  .c-recruit__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(2rem, 8.5333333333vw);
    letter-spacing: 0em;
    line-height: 1.65625;
  }
}
@media screen and (max-width: 820px) {
  .c-recruit__head {
    font-size: min(1.625rem, 6.9333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-recruit__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.5rem, 6.4vw);
    letter-spacing: 0em;
    line-height: 1.3333333333;
  }
}
.c-recruit__head::before, .c-recruit__head::after {
  content: "";
  display: block;
  background-color: #fff;
  height: min(0.375rem, 1.6vw);
  width: min(7.5625rem, 32.2666666667vw);
  position: absolute;
  bottom: min(0.3125rem, 1.3333333333vw);
}
@media screen and (max-width: 992px) {
  .c-recruit__head::before, .c-recruit__head::after {
    width: min(6.125rem, 26.1333333333vw);
  }
}
@media screen and (max-width: 820px) {
  .c-recruit__head::before, .c-recruit__head::after {
    width: min(4.6875rem, 20vw);
  }
}
@media screen and (max-width: 576px) {
  .c-recruit__head::before, .c-recruit__head::after {
    width: min(5.625rem, 24vw);
    bottom: 0;
  }
}
.c-recruit__head::before {
  left: max(-1.875rem, -8vw);
  -webkit-transform-origin: right;
          transform-origin: right;
  -webkit-transform: translateX(-100%) rotate(60deg);
          transform: translateX(-100%) rotate(60deg);
}
@media screen and (max-width: 992px) {
  .c-recruit__head::before {
    left: max(-3.75rem, -16vw);
  }
}
@media screen and (max-width: 820px) {
  .c-recruit__head::before {
    left: max(-1.875rem, -8vw);
  }
}
@media screen and (max-width: 576px) {
  .c-recruit__head::before {
    -webkit-transform: translateX(-100%) rotate(65deg);
            transform: translateX(-100%) rotate(65deg);
    left: max(-2.1875rem, -9.3333333333vw);
  }
}
.c-recruit__head::after {
  right: max(-1.25rem, -5.3333333333vw);
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transform: translateX(100%) rotate(-60deg);
          transform: translateX(100%) rotate(-60deg);
}
@media screen and (max-width: 992px) {
  .c-recruit__head::after {
    right: max(-3.125rem, -13.3333333333vw);
  }
}
@media screen and (max-width: 820px) {
  .c-recruit__head::after {
    right: max(-1.25rem, -5.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-recruit__head::after {
    -webkit-transform: translateX(100%) rotate(-65deg);
            transform: translateX(100%) rotate(-65deg);
    right: max(-1.875rem, -8vw);
  }
}

.c-recruit__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1.6875rem, 7.2vw);
  letter-spacing: 0em;
  line-height: 1.3333333333;
  padding-block: 5rem;
  padding-bottom: 0 !important;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 992px) {
  .c-recruit__text {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .c-recruit__text {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .c-recruit__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1.4375rem, 6.1333333333vw);
    letter-spacing: 0em;
    line-height: 1.4782608696;
  }
}
@media screen and (max-width: 820px) {
  .c-recruit__text {
    font-size: min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-recruit__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1.125rem, 4.8vw);
    letter-spacing: 0em;
    line-height: 1.4444444444;
  }
}

.c-recruit__btnWrap {
  padding-block: 4rem;
  padding-bottom: 0 !important;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(1.25rem, 5.3333333333vw);
}
@media screen and (max-width: 992px) {
  .c-recruit__btnWrap {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .c-recruit__btnWrap {
    padding-block: 2rem;
  }
}
@media screen and (max-width: 992px) {
  .c-recruit__btnWrap {
    gap: min(0.875rem, 3.7333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-recruit__btnWrap {
    gap: min(0.5rem, 2.1333333333vw);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.c-recruit__btnWrap .c-button-type2 {
  width: min(21.875rem, 93.3333333333vw);
}
@media screen and (max-width: 992px) {
  .c-recruit__btnWrap .c-button-type2 {
    width: min(15.625rem, 66.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-recruit__btnWrap .c-button-type2 {
    width: min(13.75rem, 58.6666666667vw);
  }
}

.c-privacy-policy__intro {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 2;
}
@media screen and (max-width: 992px) {
  .c-privacy-policy__intro {
    font-size: min(0.9375rem, 4vw);
  }
}
@media screen and (max-width: 576px) {
  .c-privacy-policy__intro {
    font-size: min(0.875rem, 3.7333333333vw);
  }
}

.c-privacy-policy__list {
  padding-block: 2.5rem;
  padding-bottom: 0 !important;
  counter-reset: list;
  max-width: min(59.875rem, 255.4666666667vw);
}
@media screen and (max-width: 992px) {
  .c-privacy-policy__list {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .c-privacy-policy__list {
    padding-block: 1.25rem;
  }
}

.c-privacy-policy__term {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.125rem, 4.8vw);
  letter-spacing: 0em;
  line-height: 1.3333333333;
  counter-increment: list;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 992px) {
  .c-privacy-policy__term {
    font-size: min(1.0625rem, 4.5333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-privacy-policy__term {
    font-size: min(1rem, 4.2666666667vw);
  }
}
.c-privacy-policy__term::before {
  content: counter(list) ".";
  color: #E40064;
  padding-right: min(0.25rem, 1.0666666667vw);
}
.c-privacy-policy__term:nth-of-type(n + 2) {
  padding-block: 2.5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .c-privacy-policy__term:nth-of-type(n + 2) {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .c-privacy-policy__term:nth-of-type(n + 2) {
    padding-block: 1.25rem;
  }
}

.c-privacy-policy__desc {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 2;
  margin-top: min(0.5rem, 2.1333333333vw);
  padding-left: min(1.25rem, 5.3333333333vw);
}
@media screen and (max-width: 992px) {
  .c-privacy-policy__desc {
    font-size: min(0.9375rem, 4vw);
    padding-left: min(1.1875rem, 5.0666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-privacy-policy__desc {
    font-size: min(0.875rem, 3.7333333333vw);
    padding-left: min(1.125rem, 4.8vw);
  }
}
.c-privacy-policy__desc.c-privacy-policy__desc--dot {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-left: 0 !important;
}
.c-privacy-policy__desc.c-privacy-policy__desc--dot::before {
  content: "・";
}
.c-privacy-policy__desc.c-privacy-policy__desc--dot:nth-of-type(n + 2) {
  margin-top: 0 !important;
}

.c-privacy-policy__contact-wrap .c-privacy-policy__desc {
  padding-left: 0;
}

.c-privacy-policy__contact {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.125rem, 4.8vw);
  letter-spacing: 0em;
  line-height: 1;
  padding-block: 2.5rem;
  padding-bottom: 0 !important;
  color: #E40064;
  padding-bottom: min(0.25rem, 1.0666666667vw) !important;
}
@media screen and (max-width: 992px) {
  .c-privacy-policy__contact {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .c-privacy-policy__contact {
    padding-block: 1.25rem;
  }
}
@media screen and (max-width: 992px) {
  .c-privacy-policy__contact {
    font-size: min(1.0625rem, 4.5333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-privacy-policy__contact {
    font-size: min(1rem, 4.2666666667vw);
  }
}

.c-privacy-policy__address {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 2;
  margin-top: min(0.5rem, 2.1333333333vw);
  font-style: normal;
}
@media screen and (max-width: 992px) {
  .c-privacy-policy__address {
    font-size: min(0.9375rem, 4vw);
  }
}
@media screen and (max-width: 576px) {
  .c-privacy-policy__address {
    font-size: min(0.875rem, 3.7333333333vw);
  }
}

/* ==========================================================================
メールフォーム
=========================================================================*/
/* 入力>確認>完了のnav
----------------------------------------------------------------- */
ul.p-contact-nav {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 1.875rem;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
ul.p-contact-nav::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: 0 auto;
  background-color: #E40064;
  background-color: #999999;
  aspect-ratio: 1/360;
  max-width: 1px;
  width: 100%;
  max-width: 300px;
  height: 1px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
ul.p-contact-nav li {
  display: block;
  border: 1px solid #999999;
  background-color: #fff;
  position: relative;
  max-width: 100px;
  height: 100px;
  width: 100%;
}
ul.p-contact-nav li.p-contact-nav__active {
  border-color: #E40064;
}
ul.p-contact-nav li.p-contact-nav__active span {
  color: #E40064;
}
ul.p-contact-nav li span {
  position: absolute;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  color: #999999;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 2;
  font-weight: 700;
}

/* フォーム
----------------------------------------------------------------- */
.c-form-wrap table {
  font-size: 16px;
  font-size: 1rem;
}
.c-form-wrap table tr {
  border-bottom: 1px solid #f2f2f2;
}
.c-form-wrap table tr:first-child {
  border-top: 1px solid #f2f2f2;
}
.c-form-wrap table tr th,
.c-form-wrap table tr td {
  padding: min(1.5625rem, 6.6666666667vw) 0;
}
@media screen and (max-width: 992px) {
  .c-form-wrap table tr th,
  .c-form-wrap table tr td {
    font-size: min(0.875rem, 3.7333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-form-wrap table tr th,
  .c-form-wrap table tr td {
    display: block;
  }
}
.c-form-wrap table tr th {
  font-weight: 700;
  text-align: left;
  vertical-align: top;
  position: relative;
  width: min(14.90625rem, 63.6vw);
}
@media screen and (max-width: 992px) {
  .c-form-wrap table tr th {
    font-size: min(0.875rem, 3.7333333333vw);
    width: min(13.1875rem, 56.2666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .c-form-wrap table tr th {
    padding: min(1.25rem, 5.3333333333vw) 0 0;
    width: 100%;
  }
}
@media screen and (max-width: 576px) {
  .c-form-wrap table tr th.c-form-required {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.c-form-wrap table tr th.c-form-required:after {
  content: "必須";
  display: block;
  background-color: #E40064;
  border-radius: 10px;
  color: #fff;
  font-weight: 700;
  font-size: 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1;
  height: 21px;
  width: 53px;
  text-align: center;
  margin-left: 14px;
  vertical-align: middle;
  padding-bottom: 1px;
  position: absolute;
  right: 0;
  top: min(1.9375rem, 8.2666666667vw);
}
@media screen and (max-width: 576px) {
  .c-form-wrap table tr th.c-form-required:after {
    position: static;
  }
}
.c-form-wrap table tr td {
  padding-left: min(1.96875rem, 8.4vw);
}
@media screen and (max-width: 992px) {
  .c-form-wrap table tr td {
    padding-left: min(1.875rem, 8vw);
  }
}
@media screen and (max-width: 576px) {
  .c-form-wrap table tr td {
    padding: 8px 0 1.25rem 0;
  }
}
.c-form-wrap div.c-form-required {
  position: relative;
}
@media screen and (max-width: 576px) {
  .c-form-wrap div.c-form-required {
    text-align: center;
  }
}
.c-form-wrap div.c-form-required::after {
  content: "必須";
  display: inline-block;
  background-color: #E40064;
  border-radius: 10px;
  color: #fff;
  font-weight: 700;
  font-size: 13px;
  line-height: 21px;
  width: 53px;
  text-align: center;
  margin-left: 14px;
}
@media screen and (max-width: 992px) {
  .c-form-wrap div.c-form-required::after {
    top: 0.35rem;
    margin-left: 1rem;
  }
}
@media screen and (max-width: 576px) {
  .c-form-wrap div.c-form-required::after {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    margin-left: 0;
    top: 14px;
  }
}

.c-form-radio,
.c-form-checkbox {
  display: inline-block;
  border: 3px solid #e7e7e7;
  margin: -4px 8px 0 0;
  height: 24px;
  width: 24px;
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.c-form-radio:not(:disabled),
.c-form-checkbox:not(:disabled) {
  cursor: pointer;
}

.c-form-radio {
  border-radius: 50%;
}
.c-form-radio:checked {
  border: 7px solid #E40064;
}

.c-form-checkbox {
  background-color: #fff;
  position: relative;
  border-width: min(0.25rem, 1.0666666667vw);
  border-color: #cbcbcb;
}
.c-form-checkbox:checked:before {
  content: "";
  background-image: url(../images/svg/icon_check.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 24px;
  height: 19px;
  display: block;
  position: absolute;
  left: 1px;
  top: -3px;
}
@media screen and (max-width: 820px) {
  .c-form-checkbox:checked:before {
    top: -5px;
  }
}

.c-form-radio-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0px 1.25rem;
}

.c-form-input,
.c-form-select,
.c-form-textarea {
  display: inline-block;
  background-color: #f2f2f2;
  border: 1px solid #e7e7e7;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 14px;
  vertical-align: middle;
  padding: 4px 8px;
  max-width: 480px;
  width: 100%;
}
@media screen and (max-width: 992px) {
  .c-form-input,
  .c-form-select,
  .c-form-textarea {
    max-width: 100%;
  }
}

.c-form-select,
.c-form-input {
  height: 40px;
}

.c-form-select-wrap {
  position: relative;
}
.c-form-select-wrap select.c-form-select {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}
.c-form-select-wrap:after {
  content: "";
  width: 6px;
  height: 6px;
  border: 0px;
  border-right: solid 1px #E40064;
  border-bottom: solid 1px #E40064;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  position: absolute;
  top: 40%;
  right: 1rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  z-index: 2;
}

.c-form-privacy {
  background-color: #E6E6E6;
  margin-top: 2.5rem;
  padding: 2.5rem 3.75rem;
}
@media screen and (max-width: 576px) {
  .c-form-privacy {
    padding: 1.875rem 5% 3.125rem;
  }
}
.c-form-privacy .c-form-privacy-panel {
  scrollbar-width: thin;
  scrollbar-color: #E40064 #fff;
  background-color: #fff;
  border: 1px solid #d2d2d2;
  font-size: 14px;
  height: 180px;
  margin-top: 1rem;
  padding: 2rem;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  resize: both;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 992px) {
  .c-form-privacy .c-form-privacy-panel {
    padding: min(1rem, 4.2666666667vw);
  }
}

.c-form-privacy__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .c-form-privacy__head {
    font-size: min(0.875rem, 3.7333333333vw);
  }
}

.c-form-privacy__check-wrap {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}

.c-form-privacy-checkbox {
  cursor: pointer;
}
@media screen and (max-width: 992px) {
  .c-form-privacy-checkbox {
    font-size: min(0.875rem, 3.7333333333vw);
  }
}

.c-form-sales {
  margin-block: 5rem;
  height: min(7.25rem, 30.9333333333vw);
  border: min(0.0625rem, 0.2666666667vw) solid #E40064;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: min(44.875rem, 191.4666666667vw);
  margin-inline: auto;
}
@media screen and (max-width: 992px) {
  .c-form-sales {
    margin-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .c-form-sales {
    margin-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .c-form-sales {
    height: min(5.625rem, 24vw);
    padding-top: min(1.375rem, 5.8666666667vw);
  }
}

.c-form-sales__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 2;
  color: #E40064;
}
@media screen and (max-width: 576px) {
  .c-form-sales__text {
    font-size: min(0.875rem, 3.7333333333vw);
  }
}

.c-form-policy-text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .c-form-policy-text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0em;
    line-height: 1.8571428571;
  }
}

.c-form-btn-wrap {
  padding-block: 4rem;
  padding-bottom: 0 !important;
  margin-inline: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  gap: min(2.5rem, 10.6666666667vw);
}
@media screen and (max-width: 992px) {
  .c-form-btn-wrap {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .c-form-btn-wrap {
    padding-block: 2rem;
  }
}
@media screen and (max-width: 992px) {
  .c-form-btn-wrap {
    gap: min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .c-form-btn-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.c-form-btn-wrap .c-button-type2 {
  width: min(21.875rem, 93.3333333333vw);
}
@media screen and (max-width: 992px) {
  .c-form-btn-wrap .c-button-type2 {
    width: min(15.5625rem, 66.4vw);
  }
}
@media screen and (max-width: 576px) {
  .c-form-btn-wrap .c-button-type2 {
    width: 100%;
    max-width: min(19rem, 81.0666666667vw);
  }
}

.c-confirm-text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1.5;
  text-align: center;
  padding-block: 5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .c-confirm-text {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .c-confirm-text {
    padding-block: 2.875rem;
  }
}

.p-top-video-parent {
  position: relative;
}

.p-top-video {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  height: 100dvh;
  width: 100%;
  z-index: -2;
  margin-bottom: -100dvh;
}
.p-top-video::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(29, 29, 29, 0.25);
  position: absolute;
  top: 0;
  left: 0;
}

.p-top-mv {
  height: 100dvh;
  width: 100%;
  position: relative;
}

.p-top-mv__bgItem {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-top-mv__cont {
  position: absolute;
  left: min(3.4375rem, 14.6666666667vw);
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 992px) {
  .p-top-mv__cont {
    left: min(2.625rem, 11.2vw);
  }
}
@media screen and (max-width: 820px) {
  .p-top-mv__cont {
    left: min(1.875rem, 8vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-mv__cont {
    left: min(1.375rem, 5.8666666667vw);
  }
}

.p-top-mv__logo {
  width: min(18.6875rem, 79.7333333333vw);
  position: relative;
  top: min(1.875rem, 8vw);
  height: auto;
}
@media screen and (max-width: 992px) {
  .p-top-mv__logo {
    width: min(16.6875rem, 71.2vw);
    top: min(2.5rem, 10.6666666667vw);
  }
}
@media screen and (max-width: 820px) {
  .p-top-mv__logo {
    width: min(14.8125rem, 63.2vw);
    top: min(1.5625rem, 6.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-mv__logo {
    width: max(min(7.625rem, 32.5333333333vw), 32.5333333333vw);
    top: max(min(0.9375rem, 4vw), 4vw);
    left: max(min(0.25rem, 1.0666666667vw), 1.0666666667vw);
  }
}

.p-top-mv__text {
  font-family: "Outfit", sans-serif;
  font-weight: 400;
  font-size: min(5.9375rem, 25.3333333333vw);
  letter-spacing: -0.06em;
  line-height: 0.8947368421;
  color: #fff;
  position: relative;
}
@media screen and (max-width: 992px) {
  .p-top-mv__text {
    font-family: "Outfit", sans-serif;
    font-weight: 400;
    font-size: min(5.30125rem, 22.6186666667vw);
    letter-spacing: -0.06em;
    line-height: 0.8960150908;
  }
}
@media screen and (max-width: 820px) {
  .p-top-mv__text {
    font-size: min(3.75rem, 16vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-mv__text {
    font-family: "Outfit", sans-serif;
    font-weight: 400;
    font-size: min(2.299375rem, 9.8106666667vw);
    letter-spacing: -0.06em;
    line-height: 0.8969828758;
    font-size: max(min(2.299375rem, 9.8106666667vw), 9.8106666667vw);
  }
}
.p-top-mv__text .p-top-mv__text--lg {
  font-size: min(9.375rem, 40vw);
  font-weight: 300;
  letter-spacing: -0.11em;
}
@media screen and (max-width: 992px) {
  .p-top-mv__text .p-top-mv__text--lg {
    font-size: min(8.3125rem, 35.4666666667vw);
  }
}
@media screen and (max-width: 820px) {
  .p-top-mv__text .p-top-mv__text--lg {
    font-size: min(6.25rem, 26.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-mv__text .p-top-mv__text--lg {
    font-size: max(min(3.8125rem, 16.2666666667vw), 16.2666666667vw);
  }
}
.p-top-mv__text .p-top-mv__text--pt {
  position: relative;
  top: min(2.375rem, 10.1333333333vw);
}
@media screen and (max-width: 992px) {
  .p-top-mv__text .p-top-mv__text--pt {
    top: min(1.75rem, 7.4666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-mv__text .p-top-mv__text--pt {
    top: max(min(1.5625rem, 6.6666666667vw), 6.6666666667vw);
  }
}

.p-top-mv__sub {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1.5625rem, 6.6666666667vw);
  letter-spacing: 0.54em;
  line-height: 1;
  color: #fff;
  position: relative;
  top: max(-4.375rem, -18.6666666667vw);
  left: 0;
}
@media screen and (max-width: 992px) {
  .p-top-mv__sub {
    font-size: min(1.375rem, 5.8666666667vw);
    top: max(-4.375rem, -18.6666666667vw);
  }
}
@media screen and (max-width: 820px) {
  .p-top-mv__sub {
    font-size: min(1.125rem, 4.8vw);
    top: max(-2.8125rem, -12vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-mv__sub {
    font-size: max(min(0.875rem, 3.7333333333vw), 3.7333333333vw);
    top: min(max(-1.5rem, -6.4vw), -6.4vw);
  }
}

.p-top-about {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  color: #fff;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(min(8.625rem, 36.8vw), 10.102489019vw);
  padding-right: min(1.625rem, 6.9333333333vw);
}
@media screen and (max-width: 992px) {
  .p-top-about {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0;
    padding-right: 0;
  }
}

.p-top-about__textWrap {
  margin-block: 5rem;
  margin-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-top-about__textWrap {
    margin-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-top-about__textWrap {
    margin-block: 2.875rem;
  }
}

.p-top-about__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(3.5rem, 14.9333333333vw);
  letter-spacing: 0em;
  line-height: 1;
}
@media screen and (max-width: 992px) {
  .p-top-about__head {
    font-size: min(2.875rem, 12.2666666667vw);
    text-align: center;
  }
}
@media screen and (max-width: 576px) {
  .p-top-about__head {
    font-size: min(2rem, 8.5333333333vw);
  }
}

.p-top-about__text {
  margin-block: 10rem;
  margin-bottom: 0 !important;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 3.2;
}
@media screen and (max-width: 992px) {
  .p-top-about__text {
    margin-block: 6.125rem;
  }
}
@media screen and (max-width: 576px) {
  .p-top-about__text {
    margin-block: 4.5rem;
  }
}
@media screen and (max-width: 992px) {
  .p-top-about__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1.125rem, 4.8vw);
    letter-spacing: 0em;
    line-height: 3.2222222222;
    text-align: center;
  }
}
@media screen and (max-width: 576px) {
  .p-top-about__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0em;
    line-height: 2.625;
  }
}

@media screen and (max-width: 992px) {
  .p-top-about__imgWrap {
    padding-block: 5rem;
    padding-bottom: 0 !important;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
@media screen and (max-width: 992px) and (max-width: 992px) {
  .p-top-about__imgWrap {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 992px) and (max-width: 576px) {
  .p-top-about__imgWrap {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .p-top-about__imgWrap {
    position: relative;
  }
}

.p-top-about__img {
  position: relative;
  display: block;
  height: auto !important;
}
@media screen and (max-width: 992px) {
  .p-top-about__img {
    margin-right: min(2.5rem, 10.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-about__img {
    margin-right: min(1.25rem, 5.3333333333vw);
  }
}
.p-top-about__img.p-top-about__img--1 {
  width: min(min(18.75rem, 80vw), 21.9619326501vw);
}
@media screen and (max-width: 992px) {
  .p-top-about__img.p-top-about__img--1 {
    width: min(18.75rem, 80vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-about__img.p-top-about__img--1 {
    width: min(9.5625rem, 40.8vw);
  }
}
.p-top-about__img.p-top-about__img--2 {
  width: min(min(15rem, 64vw), 17.5695461201vw);
  left: min(min(15.25rem, 65.0666666667vw), 17.8623718887vw);
}
@media screen and (max-width: 992px) {
  .p-top-about__img.p-top-about__img--2 {
    left: 0;
    margin-top: min(11.8125rem, 50.4vw) !important;
    width: min(15rem, 64vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-about__img.p-top-about__img--2 {
    width: min(7.625rem, 32.5333333333vw);
    margin-top: min(5.8125rem, 24.8vw) !important;
  }
}
.p-top-about__img.p-top-about__img--3 {
  width: min(min(15rem, 64vw), 17.5695461201vw);
}
@media screen and (max-width: 992px) {
  .p-top-about__img.p-top-about__img--3 {
    width: min(15rem, 64vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-about__img.p-top-about__img--3 {
    width: min(7.625rem, 32.5333333333vw);
  }
}
.p-top-about__img.p-top-about__img--4 {
  width: min(min(18.75rem, 80vw), 21.9619326501vw);
  left: min(min(9rem, 38.4vw), 10.541727672vw);
}
@media screen and (max-width: 992px) {
  .p-top-about__img.p-top-about__img--4 {
    left: 0;
    margin-top: min(9.1875rem, 39.2vw) !important;
    width: min(18.75rem, 80vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-about__img.p-top-about__img--4 {
    width: min(9.5625rem, 40.8vw);
    margin-top: min(4.5625rem, 19.4666666667vw) !important;
  }
}
.p-top-about__img:nth-of-type(n + 2) {
  margin-block: 4rem;
  margin-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-top-about__img:nth-of-type(n + 2) {
    margin-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .p-top-about__img:nth-of-type(n + 2) {
    margin-block: 2rem;
  }
}
@media screen and (max-width: 992px) {
  .p-top-about__img:nth-of-type(n + 2) {
    margin-top: 0;
  }
}
.p-top-about__img img {
  border-radius: min(1.25rem, 5.3333333333vw);
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 576px) {
  .p-top-about__img img {
    border-radius: min(0.625rem, 2.6666666667vw);
  }
}

.p-top-flex {
  padding-block: 5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: min(3.125rem, 13.3333333333vw);
}
@media screen and (max-width: 992px) {
  .p-top-flex {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-top-flex {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-top-flex {
    padding-block: 10rem;
    gap: min(1.875rem, 8vw);
  }
}
@media screen and (max-width: 992px) and (max-width: 992px) {
  .p-top-flex {
    padding-block: 6.125rem;
  }
}
@media screen and (max-width: 992px) and (max-width: 576px) {
  .p-top-flex {
    padding-block: 4.5rem;
  }
}
@media screen and (max-width: 576px) {
  .p-top-flex {
    padding-block: 5rem;
    padding-bottom: min(4.5rem, 19.2vw) !important;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
@media screen and (max-width: 576px) and (max-width: 992px) {
  .p-top-flex {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) and (max-width: 576px) {
  .p-top-flex {
    padding-block: 2.875rem;
  }
}

.p-top-flex__body {
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-top: min(3.75rem, 16vw);
  padding-bottom: min(1.875rem, 8vw);
}
@media screen and (max-width: 992px) {
  .p-top-flex__body {
    margin-top: min(0.625rem, 2.6666666667vw);
    padding-bottom: 0;
  }
}
@media screen and (max-width: 576px) {
  .p-top-flex__body {
    margin-top: 0;
  }
}

.p-top-flex__description {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0.075em;
  line-height: 2.25;
  margin-block: 5rem;
}
@media screen and (max-width: 992px) {
  .p-top-flex__description {
    margin-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-top-flex__description {
    margin-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-top-flex__description {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.125rem, 4.8vw);
    letter-spacing: 0.025em;
    line-height: 2.2222222222;
  }
}
@media screen and (max-width: 576px) {
  .p-top-flex__description {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0.025em;
    line-height: 2.1875;
  }
}

.p-top-flex__visual {
  width: min(min(41.25rem, 176vw), 51.8571428571vw);
}
@media screen and (max-width: 992px) {
  .p-top-flex__visual {
    width: min(min(24.375rem, 104vw), 47.5609756098vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-flex__visual {
    padding-block: 5rem;
    padding-bottom: 0 !important;
    width: 100%;
  }
}
@media screen and (max-width: 576px) and (max-width: 992px) {
  .p-top-flex__visual {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) and (max-width: 576px) {
  .p-top-flex__visual {
    padding-block: 2.875rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-top-flex__visual:hover img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
@media (hover: hover), (hover: none) {
  .p-top-flex__visual:active img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.p-top-flex__visual picture {
  display: block;
  border-radius: min(1.25rem, 5.3333333333vw);
  overflow: hidden;
  width: 100%;
}
.p-top-flex__visual img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
}

.p-top-flex__nav {
  margin-block: 5rem;
  max-width: min(22.75rem, 97.0666666667vw);
}
@media screen and (max-width: 992px) {
  .p-top-flex__nav {
    margin-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-top-flex__nav {
    margin-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-top-flex__nav {
    max-width: min(15.3125rem, 65.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-flex__nav {
    max-width: unset;
  }
}

.p-top-flex__navItem:nth-of-type(n + 2) .p-top-flex__navLink {
  padding-block: 1.5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-top-flex__navItem:nth-of-type(n + 2) .p-top-flex__navLink {
    padding-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .p-top-flex__navItem:nth-of-type(n + 2) .p-top-flex__navLink {
    padding-block: 0.875rem;
  }
}

.p-top-flex__navLink {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0.075em;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: min(1.25rem, 5.3333333333vw);
}
@media screen and (max-width: 992px) {
  .p-top-flex__navLink {
    font-size: min(1.125rem, 4.8vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-flex__navLink {
    font-size: min(1rem, 4.2666666667vw);
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-top-flex__navLink:hover .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #E40064;
  }
  .p-top-flex__navLink:hover .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_main.svg);
  }
}
@media (hover: hover), (hover: none) {
  .p-top-flex__navLink:active .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #E40064;
  }
  .p-top-flex__navLink:active .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_main.svg);
  }
}

.p-top-button-wrap {
  padding-block: 5rem;
}
@media screen and (max-width: 992px) {
  .p-top-button-wrap {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-top-button-wrap {
    padding-block: 2.875rem;
  }
}

.p-top-explain .c-button {
  margin-left: auto;
}
@media screen and (max-width: 576px) {
  .p-top-explain .c-button {
    margin-inline: auto;
  }
}

.p-top-explain__list {
  margin-block: 5rem;
  margin-bottom: 0 !important;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(1.5625rem, 6.6666666667vw);
}
@media screen and (max-width: 992px) {
  .p-top-explain__list {
    margin-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-top-explain__list {
    margin-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-top-explain__list {
    gap: min(0.9375rem, 4vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-explain__list {
    grid-template-columns: 1fr;
    gap: min(2.875rem, 12.2666666667vw);
  }
}

.p-top-explain__item img {
  display: block;
  aspect-ratio: 280/250;
  width: min(17.5rem, 74.6666666667vw);
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  margin-inline: auto;
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
}
@media screen and (max-width: 992px) {
  .p-top-explain__item img {
    width: 78.8288288288%;
  }
}

.p-top-explain__inner {
  display: block;
}
@media (hover: hover) and (pointer: fine) {
  .p-top-explain__inner:hover img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  .p-top-explain__inner:hover .p-top-explain__head .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #1D1D1D;
  }
  .p-top-explain__inner:hover .p-top-explain__head .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_black.svg);
  }
}
@media (hover: hover), (hover: none) {
  .p-top-explain__inner:active img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  .p-top-explain__inner:active .p-top-explain__head .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #1D1D1D;
  }
  .p-top-explain__inner:active .p-top-explain__head .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_black.svg);
  }
}

.p-top-explain__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(0.9375rem, 4vw);
  margin-block: 1.5rem;
  margin-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-top-explain__head {
    margin-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .p-top-explain__head {
    margin-block: 0.875rem;
  }
}
.p-top-explain__head .c-button-icon {
  position: relative;
  top: min(0.5rem, 2.1333333333vw);
}

.p-top-explain__head-text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1.6875rem, 7.2vw);
  letter-spacing: 0em;
  line-height: 1.1481481481;
  color: #fff;
}
@media screen and (max-width: 992px) {
  .p-top-explain__head-text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: min(1.4375rem, 6.1333333333vw);
    letter-spacing: 0em;
    line-height: 1.2130434783;
    min-height: min(3.5rem, 14.9333333333vw);
  }
}
@media screen and (max-width: 820px) {
  .p-top-explain__head-text {
    font-size: min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-explain__head-text {
    font-size: min(1.3125rem, 5.6vw);
    line-height: 1;
    min-height: unset;
  }
}
@media screen and (max-width: 820px) {
  .p-top-explain__head-text br {
    display: none !important;
  }
}

.p-top-explain__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.85;
  color: #fff;
  margin-block: 2.5rem;
  margin-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-top-explain__text {
    margin-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-top-explain__text {
    margin-block: 1.25rem;
  }
}
@media screen and (max-width: 992px) {
  .p-top-explain__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0em;
    line-height: 1.6875;
  }
}
@media screen and (max-width: 820px) {
  .p-top-explain__text {
    font-size: min(0.875rem, 3.7333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-explain__text br {
    display: none !important;
  }
}

.p-top-recruit .c-button {
  margin-left: auto;
}
@media screen and (max-width: 576px) {
  .p-top-recruit .c-button {
    margin-inline: auto;
  }
}

.p-top-recruit__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.85;
  margin-block: 5rem;
  margin-bottom: 0 !important;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 992px) {
  .p-top-recruit__text {
    margin-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-top-recruit__text {
    margin-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-top-recruit__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.125rem, 4.8vw);
    letter-spacing: 0em;
    line-height: 1.8333333333;
  }
}
@media screen and (max-width: 576px) {
  .p-top-recruit__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0em;
    line-height: 1.6875;
    text-align: left;
  }
}

.p-top-recruit__slider {
  margin-block: 5rem;
  margin-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-top-recruit__slider {
    margin-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-top-recruit__slider {
    margin-block: 2.875rem;
  }
}

.p-top-recruit__sliderItem {
  margin-inline: min(0.9375rem, 4vw);
}
@media screen and (max-width: 992px) {
  .p-top-recruit__sliderItem {
    margin-inline: min(0.625rem, 2.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-top-recruit__sliderItem {
    margin-inline: min(0.3125rem, 1.3333333333vw);
  }
}
.p-top-recruit__sliderItem img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

@media screen and (max-width: 576px) {
  .p-top-company-btn {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
}

.p-loop-text {
  position: relative;
  z-index: 1;
}
.p-loop-text .c-loop-text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: -1;
  -webkit-transform: translateY(max(-12.1875rem, -52vw));
          transform: translateY(max(-12.1875rem, -52vw));
}
@media screen and (max-width: 992px) {
  .p-loop-text .c-loop-text {
    -webkit-transform: translateY(max(-7.375rem, -31.4666666667vw));
            transform: translateY(max(-7.375rem, -31.4666666667vw));
  }
}
@media screen and (max-width: 576px) {
  .p-loop-text .c-loop-text {
    -webkit-transform: translateY(max(-5.3125rem, -22.6666666667vw));
            transform: translateY(max(-5.3125rem, -22.6666666667vw));
  }
}

.p-top-bg-logo {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-image: url(../images/svg/decoration_section.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 1482/543;
  width: calc(100vw + min(7.5rem, 32vw));
  min-width: min(92.625rem, 395.2vw);
  z-index: -1;
}
@media screen and (max-width: 992px) {
  .p-top-bg-logo {
    min-width: min(55.5625rem, 237.0666666667vw);
    width: calc(100vw + min(3.125rem, 13.3333333333vw));
  }
}
@media screen and (max-width: 992px) {
  .p-top-bg-logo {
    min-width: min(27.25rem, 116.2666666667vw);
    width: calc(100vw + min(1.875rem, 8vw));
  }
}

/* ==========================================================================
お知らせ
========================================================================== */
/* 記事
----------------------------------------------------------------- */
.p-news-article .p-news-article-data {
  color: #E40064;
  font-weight: 700;
}
.p-news-article .p-news-article-content {
  border-bottom: 1px solid #f2f2f2;
  margin-bottom: 5rem;
  padding: 2.5rem 0;
}
@media screen and (max-width: 820px) {
  .p-news-article .p-news-article-content {
    margin-bottom: 3.75rem;
  }
}
.p-news-article .p-news-article-content p:nth-child(n+2) {
  margin-top: 1.5rem;
}
.p-news-article .p-news-article-content a {
  text-decoration: underline;
}
.p-news-article .p-news-article-content a:hover {
  text-decoration: none;
}

/* ページネーション
----------------------------------------------------------------- */
.wp-pagenavi {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 3.75rem;
  position: relative;
}
.wp-pagenavi .pages {
  display: none;
}
.wp-pagenavi .current {
  color: #fff;
  background-color: #E40064;
}

.wp-pagenavi span,
.wp-pagenavi a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #E40064;
  background-color: #f2f2f2;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  text-align: center;
  width: 2rem;
  height: 2rem;
  margin: 0 0.25rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.wp-pagenavi a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.wp-pagenavi a:hover {
  color: #fff;
  background-color: #E40064;
}
.wp-pagenavi a.first, .wp-pagenavi a.last {
  width: auto;
  font-size: 14px;
  padding: 0.5rem;
}

/* ==========================================================================
よくある質問パターン
========================================================================== */
/* パターン１
----------------------------------------------------------------- */
.p-faq-pattern1 .p-faq-question {
  vertical-align: middle;
  position: relative;
  margin-top: 3.75rem;
  padding: 0.5rem 0.5rem 0.5rem 4.375rem;
  border-bottom: 1px solid #E40064;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
}
@media screen and (max-width: 992px) {
  .p-faq-pattern1 .p-faq-question {
    padding: 0.5357142rem 0.5rem 0.5357142rem 4.375rem;
  }
}
@media screen and (max-width: 576px) {
  .p-faq-pattern1 .p-faq-question {
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-faq-pattern1 .p-faq-question::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #E40064;
  width: 50px;
  height: 50px;
}
.p-faq-pattern1 .p-faq-question::after {
  content: "Q";
  display: block;
  position: absolute;
  left: 0;
  bottom: 9px;
  color: #fff;
  width: 50px;
  height: 50px;
  font-size: 2rem;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .p-faq-pattern1 .p-faq-question::after {
    bottom: 4px;
  }
}
.p-faq-pattern1 .p-faq-answer {
  position: relative;
  margin: 1.25rem 0 0 4.375rem;
  padding-left: 4.375rem;
}
.p-faq-pattern1 .p-faq-answer::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  background-color: rgba(228, 0, 100, 0.2);
  width: 50px;
  height: 50px;
}
.p-faq-pattern1 .p-faq-answer::after {
  content: "A";
  display: block;
  position: absolute;
  left: 0;
  top: -10px;
  color: #E40064;
  width: 50px;
  height: 50px;
  font-size: 2rem;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .p-faq-pattern1 .p-faq-answer::after {
    top: -3px;
  }
}
@media screen and (max-width: 576px) {
  .p-faq-pattern1 .p-faq-answer::after {
    top: -10px;
  }
}
@media screen and (max-width: 992px) {
  .p-faq-pattern1 .p-faq-answer {
    top: -4px;
  }
}
@media screen and (max-width: 576px) {
  .p-faq-pattern1 .p-faq-answer {
    margin: 1.25rem 0 0;
    padding-left: 4.375rem;
  }
  .p-faq-pattern1 .p-faq-answer::before {
    left: 0;
    top: 0;
  }
  .p-faq-pattern1 .p-faq-answer::after {
    left: 0;
    top: -4px;
  }
}

/* パターン２
----------------------------------------------------------------- */
/*アコーディオン全体*/
.p-faq-pattern2 .p-faq-pattern2-content {
  margin: 1rem 0;
}
.p-faq-pattern2 .p-faq-pattern2-content .p-faq-area2 {
  /*アコーディオンタイトル*/
  /*　closeというクラスがついたら形状変化　*/
  /*アコーディオンで現れるエリア*/
}
.p-faq-pattern2 .p-faq-pattern2-content .p-faq-area2 .p-faq-question2 {
  position: relative;
  /*+マークの位置基準とするためrelative指定*/
  cursor: pointer;
  font-size: 1.125rem;
  padding: 3% 3rem 3% 4rem;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  /*アイコンの＋と×*/
}
.p-faq-pattern2 .p-faq-pattern2-content .p-faq-area2 .p-faq-question2 span {
  font-size: 1.25rem;
  display: block;
  position: absolute;
  top: 20px;
  left: 1.75rem;
}
.p-faq-pattern2 .p-faq-pattern2-content .p-faq-area2 .p-faq-question2::before, .p-faq-pattern2 .p-faq-pattern2-content .p-faq-area2 .p-faq-question2::after {
  position: absolute;
  content: "";
  width: 15px;
  height: 2px;
  background-color: #1D1D1D;
}
.p-faq-pattern2 .p-faq-pattern2-content .p-faq-area2 .p-faq-question2::before {
  top: 48%;
  right: 1.125rem;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}
.p-faq-pattern2 .p-faq-pattern2-content .p-faq-area2 .p-faq-question2::after {
  top: 48%;
  right: 1.125rem;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.p-faq-pattern2 .p-faq-pattern2-content .p-faq-area2 .p-faq-question2.close::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.p-faq-pattern2 .p-faq-pattern2-content .p-faq-area2 .p-faq-question2.close::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.p-faq-pattern2 .p-faq-pattern2-content .p-faq-area2 .p-faq-answer2 {
  display: none;
  /*はじめは非表示*/
  margin: 0 3% 3% 3%;
  padding: 3%;
}

/* パターン３
----------------------------------------------------------------- */
/*アコーディオン全体*/
.p-faq-pattern3 .p-faq-pattern3-content {
  margin: 1rem 0;
}
.p-faq-pattern3 .p-faq-pattern3-content .p-faq-area3 {
  border: 1px solid #d2d2d2;
  /*アコーディオンタイトル*/
  /*　closeというクラスがついたら形状変化　*/
  /*アコーディオンで現れるエリア*/
}
.p-faq-pattern3 .p-faq-pattern3-content .p-faq-area3 .p-faq-question3 {
  position: relative;
  /*+マークの位置基準とするためrelative指定*/
  cursor: pointer;
  font-size: 1.125rem;
  padding: 3% 3% 3% 50px;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  /*アイコンの＋と×*/
}
.p-faq-pattern3 .p-faq-pattern3-content .p-faq-area3 .p-faq-question3::before, .p-faq-pattern3 .p-faq-pattern3-content .p-faq-area3 .p-faq-question3::after {
  position: absolute;
  content: "";
  width: 15px;
  height: 2px;
  background-color: #1D1D1D;
}
.p-faq-pattern3 .p-faq-pattern3-content .p-faq-area3 .p-faq-question3::before {
  top: 48%;
  left: 18px;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}
.p-faq-pattern3 .p-faq-pattern3-content .p-faq-area3 .p-faq-question3::after {
  top: 48%;
  left: 18px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.p-faq-pattern3 .p-faq-pattern3-content .p-faq-area3 .p-faq-question3.close::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.p-faq-pattern3 .p-faq-pattern3-content .p-faq-area3 .p-faq-question3.close::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.p-faq-pattern3 .p-faq-pattern3-content .p-faq-area3 .p-faq-answer3 {
  display: none;
  /*はじめは非表示*/
  margin: 0 3% 3% 3%;
  padding: 3%;
}

/* ==========================================================================
砕石事業
========================================================================== */
/* 事業紹介
----------------------------------------------------------------- */
.p-business-intro {
  padding-block: 6.25rem;
  background-image: url(../images/compression/img_business_intro_bg_half.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 992px) {
  .p-business-intro {
    padding-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .p-business-intro {
    padding-block: 3.625rem;
  }
}
@supports (background-image: url(../images/webp/img_business_intro_bg.webp)) {
  .p-business-intro {
    background-image: url(../images/webp/img_business_intro_bg.webp);
  }
}

.p-business-intro__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(2.875rem, 12.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  color: #fff;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .p-business-intro__head {
    font-size: min(2rem, 8.5333333333vw);
  }
}
@media screen and (max-width: 992px) {
  .p-business-intro__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.5rem, 6.4vw);
    letter-spacing: 0em;
    line-height: 1.3333333333;
  }
}

.p-business-intro__img {
  width: min(35.375rem, 150.9333333333vw);
  height: auto;
  margin-inline: auto;
  display: block;
  padding-block: 4rem;
  max-width: 100%;
}
@media screen and (max-width: 992px) {
  .p-business-intro__img {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .p-business-intro__img {
    padding-block: 2rem;
  }
}
@media screen and (max-width: 576px) {
  .p-business-intro__img {
    width: min(19.0625rem, 81.3333333333vw);
    min-width: 100%;
  }
}

.p-business-intro__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.9;
  color: #fff;
}
@media screen and (max-width: 992px) {
  .p-business-intro__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0em;
    line-height: 1.7857142857;
  }
}
.p-business-intro__text .palt {
  -webkit-font-feature-settings: unset !important;
          font-feature-settings: unset !important;
}
@media screen and (max-width: 992px) {
  .p-business-intro__text .palt {
    -webkit-font-feature-settings: "palt" !important;
            font-feature-settings: "palt" !important;
  }
}

/* 特徴・こだわり
----------------------------------------------------------------- */
.p-business-feature-wrap {
  padding-block: 5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-business-feature-wrap {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-business-feature-wrap {
    padding-block: 2.875rem;
  }
}

.p-business-feature {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(min(4.375rem, 18.6666666667vw), 5.5vw);
}
@media screen and (max-width: 992px) {
  .p-business-feature {
    gap: min(min(2.5rem, 10.6666666667vw), 4.8780487805vw);
  }
}
@media screen and (max-width: 576px) {
  .p-business-feature {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: min(2rem, 8.5333333333vw);
  }
}
.p-business-feature:nth-of-type(n + 2) {
  padding-block: 6.25rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-business-feature:nth-of-type(n + 2) {
    padding-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .p-business-feature:nth-of-type(n + 2) {
    padding-block: 3.625rem;
  }
}

.p-business-feature__textWrap {
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.p-business-feature__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(2.0625rem, 8.8vw);
  letter-spacing: 0em;
  line-height: 1.4545454545;
}
@media screen and (max-width: 992px) {
  .p-business-feature__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.5625rem, 6.6666666667vw);
    letter-spacing: 0em;
    line-height: 1.44;
  }
}
@media screen and (max-width: 576px) {
  .p-business-feature__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.25rem, 5.3333333333vw);
    letter-spacing: 0em;
    line-height: 1.5;
  }
}

.p-business-feature__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.75;
  padding-block: 2.5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-business-feature__text {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-business-feature__text {
    padding-block: 1.25rem;
  }
}
@media screen and (max-width: 992px) {
  .p-business-feature__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0em;
    line-height: 1.7857142857;
  }
}

.p-business-feature__imgWrap {
  width: min(min(37.5rem, 160vw), 47.1428571429vw);
}
@media screen and (max-width: 992px) {
  .p-business-feature__imgWrap {
    width: min(min(20.625rem, 88vw), 40.243902439vw);
  }
}
@media screen and (max-width: 576px) {
  .p-business-feature__imgWrap {
    width: 100%;
  }
}
.p-business-feature__imgWrap img {
  aspect-ratio: 600/400;
  border-radius: min(1.25rem, 5.3333333333vw);
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 576px) {
  .p-business-feature__imgWrap img {
    border-radius: min(1.125rem, 4.8vw);
  }
}

/* 製品紹介
----------------------------------------------------------------- */
.p-business-products {
  padding-block: 5rem;
  padding-bottom: 0 !important;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(2.5rem, 10.6666666667vw) min(1.25rem, 5.3333333333vw);
}
@media screen and (max-width: 992px) {
  .p-business-products {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-business-products {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-business-products {
    grid-template-columns: 1fr 1fr;
    gap: min(1.625rem, 6.9333333333vw) min(1.125rem, 4.8vw);
  }
}
@media screen and (max-width: 576px) {
  .p-business-products {
    grid-template-columns: 1fr;
    gap: min(1.25rem, 5.3333333333vw);
  }
}

.p-business-products__item img {
  aspect-ratio: 312, 192;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-business-products__name {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  padding-block: 1.5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-business-products__name {
    padding-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .p-business-products__name {
    padding-block: 0.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-business-products__name {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.125rem, 4.8vw);
    letter-spacing: 0em;
    line-height: 1;
  }
}
@media screen and (max-width: 576px) {
  .p-business-products__name {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0em;
    line-height: 1;
  }
}

.p-business-products__info {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1.5625;
  padding-block: 1rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-business-products__info {
    padding-block: 0.875rem;
  }
}
@media screen and (max-width: 576px) {
  .p-business-products__info {
    padding-block: 0.5rem;
  }
}
@media screen and (max-width: 992px) {
  .p-business-products__info {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0em;
    line-height: 1.7857142857;
  }
}

/* 砕石ができるまで
----------------------------------------------------------------- */
.p-business-process {
  padding-block: 5rem;
  padding-bottom: 0 !important;
  counter-reset: list;
}
@media screen and (max-width: 992px) {
  .p-business-process {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-business-process {
    padding-block: 2.875rem;
  }
}

.p-business-process__item {
  padding-block: 5rem;
  padding-bottom: 0 !important;
  counter-increment: list;
}
@media screen and (max-width: 992px) {
  .p-business-process__item {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-business-process__item {
    padding-block: 2.875rem;
  }
}
.p-business-process__item:first-of-type {
  padding-top: 0 !important;
}
.p-business-process__item:not(:last-of-type) {
  position: relative;
}
.p-business-process__item:not(:last-of-type)::after {
  margin-block: 5rem;
  margin-bottom: 0 !important;
  content: "";
  display: block;
  width: calc(100% + min(6.25rem, 26.6666666667vw));
  height: min(2.0625rem, 8.8vw);
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-image: url(../images/svg/img_business_process_line.svg);
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
}
@media screen and (max-width: 992px) {
  .p-business-process__item:not(:last-of-type)::after {
    margin-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-business-process__item:not(:last-of-type)::after {
    margin-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-business-process__item:not(:last-of-type)::after {
    background-image: url(../images/svg/img_business_process_line_tb.svg);
    background-size: contain;
    background-position: top;
    background-repeat: no-repeat;
    width: 100%;
  }
}
@media screen and (max-width: 576px) {
  .p-business-process__item:not(:last-of-type)::after {
    background-image: url(../images/svg/img_business_process_line_sp.svg);
    background-size: 100%;
    background-position: top;
    background-repeat: no-repeat;
    width: 100%;
  }
}

.p-business-process__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(3.75rem, 16vw);
}
@media screen and (max-width: 992px) {
  .p-business-process__inner {
    gap: min(2.5rem, 10.6666666667vw);
  }
}
@media screen and (max-width: 820px) {
  .p-business-process__inner {
    gap: min(1.875rem, 8vw);
  }
}
@media screen and (max-width: 576px) {
  .p-business-process__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: min(1.25rem, 5.3333333333vw);
  }
}

.p-business-process__textWrap {
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.p-business-process__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(2.0625rem, 8.8vw);
  letter-spacing: 0em;
  line-height: 1.2121212121;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(3rem, 12.8vw);
}
@media screen and (max-width: 992px) {
  .p-business-process__head {
    font-size: min(1.5625rem, 6.6666666667vw);
    gap: min(2.4375rem, 10.4vw);
  }
}
@media screen and (max-width: 820px) {
  .p-business-process__head {
    font-size: min(1.25rem, 5.3333333333vw);
    gap: min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (max-width: 820px) {
  .p-business-process__head {
    gap: min(1.0625rem, 4.5333333333vw);
  }
}
.p-business-process__head::before {
  content: counter(list);
  display: block;
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: min(1.875rem, 8vw);
  letter-spacing: 0em;
  line-height: 1;
  background-color: #E40064;
  color: #fff;
  min-width: min(5rem, 21.3333333333vw);
  height: min(5rem, 21.3333333333vw);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 992px) {
  .p-business-process__head::before {
    font-size: min(1.5625rem, 6.6666666667vw);
    min-width: min(4.0625rem, 17.3333333333vw);
    height: min(4.0625rem, 17.3333333333vw);
  }
}
@media screen and (max-width: 820px) {
  .p-business-process__head::before {
    font-size: min(1.25rem, 5.3333333333vw);
    min-width: min(3.125rem, 13.3333333333vw);
    height: min(3.125rem, 13.3333333333vw);
  }
}
@media screen and (max-width: 820px) {
  .p-business-process__head::before {
    font-size: min(1.1875rem, 5.0666666667vw);
    min-width: min(3.1875rem, 13.6vw);
    height: min(3.1875rem, 13.6vw);
  }
}

.p-business-process__text {
  padding-block: 2.5rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.75;
}
@media screen and (max-width: 992px) {
  .p-business-process__text {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-business-process__text {
    padding-block: 1.25rem;
  }
}
@media screen and (max-width: 992px) {
  .p-business-process__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0em;
    line-height: 1.7857142857;
  }
}

.p-business-process__btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(0.75rem, 3.2vw);
}
@media (hover: hover) and (pointer: fine) {
  .p-business-process__btn:hover .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #E40064;
  }
  .p-business-process__btn:hover .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_main.svg);
  }
}
@media (hover: hover), (hover: none) {
  .p-business-process__btn:active .c-button-icon {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    background-color: white;
    border: min(0.125rem, 0.5333333333vw) solid #E40064;
  }
  .p-business-process__btn:active .c-button-icon::before {
    background-image: url(../images/svg/icon_arrow_btn_main.svg);
  }
}

.p-business-process__btn-text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0.075em;
  line-height: 1;
}
@media screen and (max-width: 992px) {
  .p-business-process__btn-text {
    font-size: min(1.125rem, 4.8vw);
  }
}
@media screen and (max-width: 820px) {
  .p-business-process__btn-text {
    font-size: min(1rem, 4.2666666667vw);
  }
}

.p-business-process__imgWrap {
  width: min(min(28.625rem, 122.1333333333vw), 35.9857142857vw);
}
@media screen and (max-width: 992px) {
  .p-business-process__imgWrap {
    width: min(min(20.625rem, 88vw), 40.243902439vw);
  }
}
@media screen and (max-width: 576px) {
  .p-business-process__imgWrap {
    width: 100%;
  }
}
.p-business-process__imgWrap img {
  aspect-ratio: 458/304;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: min(1.25rem, 5.3333333333vw);
}
@media screen and (max-width: 576px) {
  .p-business-process__imgWrap img {
    border-radius: min(1.125rem, 4.8vw);
  }
}

/* ==========================================================================
会社案内
========================================================================== */
/* 会社概要
----------------------------------------------------------------- */
.p-company-overview {
  padding-block: 5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-company-overview {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-company-overview {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-company-overview {
    max-width: min(37.375rem, 159.4666666667vw);
    margin-inline: auto;
  }
}

.p-company-overview__content {
  display: grid;
  grid-template-columns: min(11.25rem, 48vw) 1fr;
}
@media screen and (max-width: 992px) {
  .p-company-overview__content {
    grid-template-columns: min(8.625rem, 36.8vw) 1fr;
  }
}
@media screen and (max-width: 576px) {
  .p-company-overview__content {
    display: block;
  }
}

.p-company-overview__label {
  padding-block: 1.5rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  background-color: #E40064;
  color: #fff;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 992px) {
  .p-company-overview__label {
    padding-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .p-company-overview__label {
    padding-block: 0.875rem;
  }
}
.p-company-overview__label:not(:last-of-type) {
  border-bottom: min(0.125rem, 0.5333333333vw) solid #E6E6E6;
}
@media screen and (max-width: 992px) {
  .p-company-overview__label {
    font-size: min(0.875rem, 3.7333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-overview__label {
    padding-bottom: 0 !important;
    display: block;
    color: #E40064;
    background-color: #fff;
    text-align: left;
    border-bottom: 0 !important;
    padding-inline: min(1.125rem, 4.8vw);
  }
}

.p-company-overview__value {
  padding-block: 1.5rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  background-color: #fff;
  padding-inline: min(5.625rem, 24vw) min(1.25rem, 5.3333333333vw);
}
@media screen and (max-width: 992px) {
  .p-company-overview__value {
    padding-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .p-company-overview__value {
    padding-block: 0.875rem;
  }
}
.p-company-overview__value:not(:last-of-type) {
  border-bottom: min(0.125rem, 0.5333333333vw) solid #E6E6E6;
}
@media screen and (max-width: 992px) {
  .p-company-overview__value {
    font-size: min(0.875rem, 3.7333333333vw);
    padding-inline: min(1.875rem, 8vw) min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-overview__value {
    padding-top: min(0.75rem, 3.2vw);
    padding-inline: min(1.125rem, 4.8vw);
    line-height: 1.3;
  }
}

.p-company-overview__img-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(1rem, 4.2666666667vw);
  margin-top: min(0.625rem, 2.6666666667vw);
}
@media screen and (max-width: 992px) {
  .p-company-overview__img-list {
    gap: min(0.5rem, 2.1333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-overview__img-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.p-company-overview__img-list img {
  height: min(13.375rem, 57.0666666667vw);
  width: auto;
}
@media screen and (max-width: 1200px) {
  .p-company-overview__img-list img {
    height: min(11.875rem, 50.6666666667vw);
  }
}
@media screen and (max-width: 992px) {
  .p-company-overview__img-list img {
    height: min(9.0625rem, 38.6666666667vw);
  }
}
@media screen and (max-width: 820px) {
  .p-company-overview__img-list img {
    height: min(7.5rem, 32vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-overview__img-list img {
    height: auto;
    width: min(13.125rem, 56vw);
  }
}

.p-company-overview__value-list {
  line-height: 1.875;
}
@media screen and (max-width: 992px) {
  .p-company-overview__value-list {
    line-height: 1.7857142857;
  }
}

.p-company-overview__value-list-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.p-company-overview__value-list-item::before {
  content: "・";
}

.p-company-overview__value-list-item-tab {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
@media (hover: hover) and (pointer: fine) {
  .p-company-overview__value-list-item-tab:hover {
    color: #E40064;
  }
}
@media (hover: hover), (hover: none) {
  .p-company-overview__value-list-item-tab:active {
    color: #E40064;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-company-overview__value-list-item-tab:hover::after {
    background-image: url(../images/svg/icon_link_main.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
  }
}
@media (hover: hover), (hover: none) {
  .p-company-overview__value-list-item-tab:active::after {
    background-image: url(../images/svg/icon_link_main.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
  }
}
.p-company-overview__value-list-item-tab::after {
  content: "";
  width: min(0.8125rem, 3.4666666667vw);
  height: min(0.8125rem, 3.4666666667vw);
  background-image: url(../images/svg/icon_link.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  left: min(0.5rem, 2.1333333333vw);
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
}
@media screen and (max-width: 992px) {
  .p-company-overview__value-list-item-tab::after {
    width: min(0.6875rem, 2.9333333333vw);
    height: min(0.6875rem, 2.9333333333vw);
  }
}

/* アクセス
----------------------------------------------------------------- */
.p-company-map {
  margin-block: 5rem;
  margin-bottom: 0 !important;
  height: min(22.25rem, 94.9333333333vw);
  width: 100%;
}
@media screen and (max-width: 992px) {
  .p-company-map {
    margin-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-company-map {
    margin-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-company-map {
    height: min(15.875rem, 67.7333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-map {
    height: min(12.5rem, 53.3333333333vw);
  }
}
.p-company-map iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-company-map-item {
  padding-block: 4rem;
  padding-bottom: 0 !important;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(1.875rem, 8vw);
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 992px) {
  .p-company-map-item {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .p-company-map-item {
    padding-block: 2rem;
  }
}
@media screen and (max-width: 992px) {
  .p-company-map-item {
    gap: min(1.5625rem, 6.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-map-item {
    gap: min(0.875rem, 3.7333333333vw);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.p-company-map__img-wrap {
  width: min(min(36.25rem, 154.6666666667vw), 52.0816326531vw);
}
@media screen and (max-width: 992px) {
  .p-company-map__img-wrap {
    width: min(min(23.125rem, 98.6666666667vw), 45.1219512195vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-map__img-wrap {
    width: 100%;
  }
}
.p-company-map__img-wrap img {
  aspect-ratio: 580/310;
  width: 100%;
  height: auto;
}

.p-company-map__text-wrap {
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.p-company-map__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.6875rem, 7.2vw);
  letter-spacing: 0em;
  line-height: 1.8148148148;
}
@media screen and (max-width: 992px) {
  .p-company-map__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.4375rem, 6.1333333333vw);
    letter-spacing: 0em;
    line-height: 1.6956521739;
  }
}
@media screen and (max-width: 576px) {
  .p-company-map__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.125rem, 4.8vw);
    letter-spacing: 0em;
    line-height: 1.8333333333;
  }
}

.p-company-map__address {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.03em;
  line-height: 1.5625;
  font-style: normal;
}
@media screen and (max-width: 992px) {
  .p-company-map__address {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0.03em;
    line-height: 1.5714285714;
  }
}
@media screen and (max-width: 576px) {
  .p-company-map__address {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0.03em;
    line-height: 1.7857142857;
  }
}

/* 沿革
----------------------------------------------------------------- */
.p-company-history {
  padding-block: 5rem;
  padding-bottom: 0 !important;
  scrollbar-width: thin;
  scrollbar-color: #E40064 #fff;
  overflow-x: auto;
}
@media screen and (max-width: 992px) {
  .p-company-history {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-company-history {
    padding-block: 2.875rem;
  }
}

.p-company-history__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  min-width: min(28.125rem, 120vw);
}
.p-company-history__item:nth-of-type(n + 2) {
  padding-block: 5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-company-history__item:nth-of-type(n + 2) {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-company-history__item:nth-of-type(n + 2) {
    padding-block: 2.875rem;
  }
}
.p-company-history__item::before {
  content: "";
  display: block;
  height: 100%;
  border-left: min(0.0625rem, 0.2666666667vw) solid #E40064;
  position: absolute;
  top: min(0.625rem, 2.6666666667vw);
  left: min(11.375rem, 48.5333333333vw);
}
@media screen and (max-width: 992px) {
  .p-company-history__item::before {
    top: min(0.25rem, 1.0666666667vw);
    left: min(7rem, 29.8666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-history__item::before {
    top: min(0.125rem, 0.5333333333vw);
    left: min(5.375rem, 22.9333333333vw);
  }
}
.p-company-history__item:first-of-type::before {
  top: min(1.25rem, 5.3333333333vw);
}
@media screen and (max-width: 992px) {
  .p-company-history__item:first-of-type::before {
    top: min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-history__item:first-of-type::before {
    top: min(0.9375rem, 4vw);
  }
}
.p-company-history__item:last-of-type::before {
  top: min(6.25rem, 26.6666666667vw);
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}
@media screen and (max-width: 992px) {
  .p-company-history__item:last-of-type::before {
    top: min(4.75rem, 20.2666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-history__item:last-of-type::before {
    top: min(3.9375rem, 16.8vw);
  }
}

.p-company-history__year {
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  font-size: min(2.875rem, 12.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  min-width: min(13.125rem, 56vw);
}
@media screen and (max-width: 992px) {
  .p-company-history__year {
    font-size: min(2rem, 8.5333333333vw);
    min-width: min(8.75rem, 37.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-history__year {
    font-size: min(1.5rem, 6.4vw);
    min-width: min(5.875rem, 25.0666666667vw);
  }
}

.p-company-history__info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(2.9375rem, 12.5333333333vw);
  margin-top: min(0.625rem, 2.6666666667vw);
}
@media screen and (max-width: 992px) {
  .p-company-history__info {
    margin-top: min(0.25rem, 1.0666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-history__info {
    gap: min(1.25rem, 5.3333333333vw);
    margin-top: min(0.125rem, 0.5333333333vw);
  }
}

.p-company-history__month {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.25;
  color: #E40064;
  white-space: nowrap;
  text-align: right;
  min-width: min(2.6875rem, 11.4666666667vw);
  position: relative;
}
@media screen and (max-width: 992px) {
  .p-company-history__month {
    font-size: min(1.125rem, 4.8vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-history__month {
    font-size: min(1rem, 4.2666666667vw);
  }
}
.p-company-history__month::before {
  content: "";
  display: block;
  background-color: #E40064;
  width: min(0.9375rem, 4vw);
  height: min(0.9375rem, 4vw);
  border-radius: 100vh;
  position: absolute;
  top: min(0.375rem, 1.6vw);
  left: max(-2.1875rem, -9.3333333333vw);
}
@media screen and (max-width: 576px) {
  .p-company-history__month::before {
    width: min(0.5625rem, 2.4vw);
    height: min(0.5625rem, 2.4vw);
    left: max(-0.75rem, -3.2vw);
  }
}

.p-company-history__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  line-height: 1.5625;
}
@media screen and (max-width: 992px) {
  .p-company-history__text {
    font-size: min(0.875rem, 3.7333333333vw);
    line-height: 1.7857142857;
  }
}

/* SDGsへの取り組み
----------------------------------------------------------------- */
.p-company-sdgs {
  padding-block: 5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-company-sdgs {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-company-sdgs {
    padding-block: 2.875rem;
  }
}

.p-company-sdgs__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(min(4.375rem, 18.6666666667vw), 5.5vw);
}
@media screen and (max-width: 992px) {
  .p-company-sdgs__item {
    gap: min(2.125rem, 9.0666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-sdgs__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: min(1.25rem, 5.3333333333vw);
  }
}
.p-company-sdgs__item:nth-of-type(n + 2) {
  padding-block: 6.25rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-company-sdgs__item:nth-of-type(n + 2) {
    padding-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .p-company-sdgs__item:nth-of-type(n + 2) {
    padding-block: 3.625rem;
  }
}

.p-company-sdgs__img-wrap {
  width: min(min(37.5rem, 160vw), 47.1428571429vw);
}
@media screen and (max-width: 992px) {
  .p-company-sdgs__img-wrap {
    width: min(20.625rem, 88vw);
  }
}
@media screen and (max-width: 820px) {
  .p-company-sdgs__img-wrap {
    width: min(15.625rem, 66.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-sdgs__img-wrap {
    width: 100%;
  }
}
.p-company-sdgs__img-wrap img {
  aspect-ratio: 3/2;
  border-radius: min(1.25rem, 5.3333333333vw);
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 992px) {
  .p-company-sdgs__img-wrap img {
    border-radius: min(0.6875rem, 2.9333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-sdgs__img-wrap img {
    border-radius: min(0.625rem, 2.6666666667vw);
  }
}

.p-company-sdgs__text-wrap {
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.p-company-sdgs__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(2.0625rem, 8.8vw);
  letter-spacing: 0em;
  line-height: 1.4545454545;
}
@media screen and (max-width: 992px) {
  .p-company-sdgs__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.5625rem, 6.6666666667vw);
    letter-spacing: 0em;
    line-height: 1.2;
  }
}
@media screen and (max-width: 820px) {
  .p-company-sdgs__head {
    font-size: min(1.4375rem, 6.1333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-company-sdgs__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.25rem, 5.3333333333vw);
    letter-spacing: 0em;
    line-height: 1.5;
  }
}

.p-company-sdgs__text {
  padding-block: 2.5rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1.875;
}
@media screen and (max-width: 992px) {
  .p-company-sdgs__text {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-company-sdgs__text {
    padding-block: 1.25rem;
  }
}
@media screen and (max-width: 992px) {
  .p-company-sdgs__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0em;
    line-height: 1.7857142857;
  }
}

.p-company-sdgs__symbol {
  width: min(6.25rem, 26.6666666667vw);
  display: block;
  margin-left: auto;
}
@media screen and (max-width: 992px) {
  .p-company-sdgs__symbol {
    width: min(3.90625rem, 16.6666666667vw);
  }
}

/* ==========================================================================
3分で分かるキンケン石産
========================================================================== */
/* ヘッドコンテンツ
----------------------------------------------------------------- */
.p-in3min-head-contents {
  position: relative;
}
.p-in3min-head-contents.p-in3min-head-contents--white .p-in3min-head-contents__head,
.p-in3min-head-contents.p-in3min-head-contents--white .p-in3min-head-contents__text {
  color: #fff;
}

.p-in3min-head-contents__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(2.875rem, 12.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
}
@media screen and (max-width: 992px) {
  .p-in3min-head-contents__head {
    font-size: min(2rem, 8.5333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-head-contents__head {
    font-size: min(1.5rem, 6.4vw);
    line-height: 1.25;
  }
}

.p-in3min-head-contents__text-wrap {
  position: relative;
  z-index: 2;
}

.p-in3min-head-contents__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.9;
  padding-block: 5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-in3min-head-contents__text {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-head-contents__text {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-in3min-head-contents__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.125rem, 4.8vw);
    letter-spacing: 0em;
    line-height: 1.8333333333;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-head-contents__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(0.9375rem, 4vw);
    letter-spacing: 0em;
    line-height: 2;
  }
}

.p-in3min-head-contents__img-wrap {
  position: absolute;
  right: 0;
  top: max(-10rem, -42.6666666667vw);
  z-index: 1;
  -webkit-transform: translateX(36%);
          transform: translateX(36%);
}
@media screen and (max-width: 992px) {
  .p-in3min-head-contents__img-wrap {
    top: max(-6.125rem, -26.1333333333vw);
    -webkit-transform: translateX(18%);
            transform: translateX(18%);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-head-contents__img-wrap {
    top: max(-4.5rem, -19.2vw);
    -webkit-transform: translateX(24%);
            transform: translateX(24%);
  }
}
.p-in3min-head-contents__img-wrap img {
  width: min(31.875rem, 136vw);
  height: auto;
}
@media screen and (max-width: 992px) {
  .p-in3min-head-contents__img-wrap img {
    width: min(19.375rem, 82.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-head-contents__img-wrap img {
    width: min(9.375rem, 40vw);
  }
}

/* アバウトリスト
----------------------------------------------------------------- */
.p-in3min-about-list {
  padding-block: 6.25rem;
  padding-bottom: 0 !important;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(5rem, 21.3333333333vw) min(4.5625rem, 19.4666666667vw);
}
@media screen and (max-width: 992px) {
  .p-in3min-about-list {
    padding-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-about-list {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 992px) {
  .p-in3min-about-list {
    gap: min(3.625rem, 15.4666666667vw) min(2.5rem, 10.6666666667vw);
  }
}
@media screen and (max-width: 820px) {
  .p-in3min-about-list {
    gap: min(2.5rem, 10.6666666667vw) min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-about-list {
    grid-template-columns: 1fr;
    gap: min(2.875rem, 12.2666666667vw);
  }
}

.p-in3min-about-list__item {
  padding-block: 4rem;
  padding-bottom: 0 !important;
  background-color: #fff;
  padding-inline: min(1.84375rem, 7.8666666667vw);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 992px) {
  .p-in3min-about-list__item {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-about-list__item {
    padding-block: 2rem;
  }
}
@media screen and (max-width: 992px) {
  .p-in3min-about-list__item {
    padding-inline: min(1.34375rem, 5.7333333333vw);
  }
}
.p-in3min-about-list__item img {
  margin-block: 2.5rem;
  margin-bottom: 0 !important;
  display: block;
  width: min(7.375rem, 31.4666666667vw);
  height: min(7.375rem, 31.4666666667vw);
  -o-object-fit: contain;
     object-fit: contain;
  margin-inline: auto;
}
@media screen and (max-width: 992px) {
  .p-in3min-about-list__item img {
    margin-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-in3min-about-list__item img {
    margin-block: 1.25rem;
  }
}
@media screen and (max-width: 992px) {
  .p-in3min-about-list__item img {
    width: min(5.375rem, 22.9333333333vw);
    height: min(5.375rem, 22.9333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-about-list__item img {
    width: min(5.1875rem, 22.1333333333vw);
    height: min(5.1875rem, 22.1333333333vw);
  }
}

.p-in3min-about-list__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.6875rem, 7.2vw);
  letter-spacing: 0em;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .p-in3min-about-list__head {
    font-size: min(1.4375rem, 6.1333333333vw);
  }
}
@media screen and (max-width: 820px) {
  .p-in3min-about-list__head {
    font-size: min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-about-list__head {
    font-size: min(1.39375rem, 5.9466666667vw);
  }
}

.p-in3min-about-list__point {
  padding-block: 1.5rem;
  color: #E40064;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .p-in3min-about-list__point {
    padding-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-about-list__point {
    padding-block: 0.875rem;
  }
}

.p-in3min-about-list__point--lg {
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  font-size: min(6.25rem, 26.6666666667vw);
  letter-spacing: 0em;
  line-height: 0.6;
}
@media screen and (max-width: 992px) {
  .p-in3min-about-list__point--lg {
    font-size: min(4.5rem, 19.2vw);
  }
}
@media screen and (max-width: 820px) {
  .p-in3min-about-list__point--lg {
    font-size: min(4.4375rem, 18.9333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-about-list__point--lg {
    font-size: min(4.375rem, 18.6666666667vw);
  }
}

.p-in3min-about-list__point--md {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  font-size: min(2.875rem, 12.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
}
@media screen and (max-width: 992px) {
  .p-in3min-about-list__point--md {
    font-size: min(2rem, 8.5333333333vw);
  }
}
@media screen and (max-width: 820px) {
  .p-in3min-about-list__point--md {
    font-size: min(1.5625rem, 6.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-about-list__point--md {
    font-size: min(1.5rem, 6.4vw);
  }
}

.p-in3min-about-list__point--sm {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  font-size: min(2.0625rem, 8.8vw);
  letter-spacing: 0em;
  line-height: 1.3636363636;
}
@media screen and (max-width: 992px) {
  .p-in3min-about-list__point--sm {
    font-size: min(1.5625rem, 6.6666666667vw);
  }
}
@media screen and (max-width: 820px) {
  .p-in3min-about-list__point--sm {
    font-size: min(1.3125rem, 5.6vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-about-list__point--sm {
    font-size: min(1.4375rem, 6.1333333333vw);
  }
}

.p-in3min-about-list__text {
  padding-block: 2.5rem;
  padding-top: 0 !important;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1.5625;
}
@media screen and (max-width: 992px) {
  .p-in3min-about-list__text {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-in3min-about-list__text {
    padding-block: 1.25rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-about-list__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0em;
    line-height: 1.5714285714;
  }
}

/* トピックス
----------------------------------------------------------------- */
.p-in3min-topics {
  margin-block: 6.25rem;
  margin-bottom: 0 !important;
  padding-block: 4rem;
  background-color: #fff;
  border-radius: min(1.875rem, 8vw);
  padding-inline: min(4.375rem, 18.6666666667vw);
  -webkit-box-shadow: 0 0 min(0.5625rem, 2.4vw) rgba(29, 29, 29, 0.3);
          box-shadow: 0 0 min(0.5625rem, 2.4vw) rgba(29, 29, 29, 0.3);
}
@media screen and (max-width: 992px) {
  .p-in3min-topics {
    margin-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-topics {
    margin-block: 3.625rem;
  }
}
@media screen and (max-width: 992px) {
  .p-in3min-topics {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-topics {
    padding-block: 2rem;
  }
}
@media screen and (max-width: 992px) {
  .p-in3min-topics {
    border-radius: min(1.25rem, 5.3333333333vw);
    padding-inline: min(1.875rem, 8vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-topics {
    border-radius: min(0.75rem, 3.2vw);
    padding-inline: min(1.25rem, 5.3333333333vw);
  }
}

.p-in3min-topics__text-img {
  display: block;
  width: min(9.5rem, 40.5333333333vw);
  margin-inline: auto;
}
@media screen and (max-width: 576px) {
  .p-in3min-topics__text-img {
    width: min(6.25rem, 26.6666666667vw);
  }
}

.p-in3min-topics__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(2.0625rem, 8.8vw);
  letter-spacing: 0em;
  line-height: 1;
  padding-block: 2.5rem;
  color: #E40064;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .p-in3min-topics__head {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-in3min-topics__head {
    padding-block: 1.25rem;
  }
}
@media screen and (max-width: 992px) {
  .p-in3min-topics__head {
    font-size: min(1.5625rem, 6.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-topics__head {
    font-size: min(1.25rem, 5.3333333333vw);
  }
}

.p-in3min-topics__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.9;
}
@media screen and (max-width: 992px) {
  .p-in3min-topics__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0em;
    line-height: 1.5714285714;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-topics__text {
    letter-spacing: -0.01em;
  }
}

.p-in3min-topics__img-wrap {
  padding-block: 2.5rem;
  padding-bottom: 0 !important;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 992px) {
  .p-in3min-topics__img-wrap {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-in3min-topics__img-wrap {
    padding-block: 1.25rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-topics__img-wrap {
    grid-template-columns: 1fr 1fr;
  }
}
.p-in3min-topics__img-wrap img {
  border: min(0.125rem, 0.5333333333vw) solid #fff;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 992px) {
  .p-in3min-topics__img-wrap img {
    border-width: min(0.09375rem, 0.4vw);
  }
}

/* ビジネスコンテンツ
----------------------------------------------------------------- */
.p-in3min-business-contents {
  padding-block: 6.25rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents {
    padding-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents {
    padding-block: 3.625rem;
  }
}
.p-in3min-business-contents:nth-of-type(n + 2) {
  padding-block: 10rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents:nth-of-type(n + 2) {
    padding-block: 6.125rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents:nth-of-type(n + 2) {
    padding-block: 4.5rem;
  }
}

.p-in3min-business-contents__top-img {
  position: relative;
  aspect-ratio: 1120/408;
  width: 100%;
  height: auto;
}
.p-in3min-business-contents__top-img::before {
  content: "";
  display: block;
  background-color: #fff;
  width: min(35.5rem, 151.4666666667vw);
  height: min(6.125rem, 26.1333333333vw);
  position: absolute;
  left: max(-0.03125rem, -0.1333333333vw);
  bottom: max(-1.375rem, -5.8666666667vw);
  -webkit-clip-path: polygon(0 0, 85% 0, 100% 100%, 0 100%);
          clip-path: polygon(0 0, 85% 0, 100% 100%, 0 100%);
  z-index: 1;
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents__top-img::before {
    width: min(22.1875rem, 94.6666666667vw);
    height: min(3.8125rem, 16.2666666667vw);
    bottom: max(-0.875rem, -3.7333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents__top-img::before {
    width: min(9.625rem, 41.0666666667vw);
    height: min(1.625rem, 6.9333333333vw);
    bottom: max(-0.5625rem, -2.4vw);
  }
}

.p-in3min-business-contents__top-img-inner {
  border-radius: min(1.25rem, 5.3333333333vw);
  overflow: hidden;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents__top-img-inner {
    border-radius: min(0.78125rem, 3.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents__top-img-inner {
    border-radius: min(0.5rem, 2.1333333333vw);
  }
}
.p-in3min-business-contents__top-img-inner img {
  width: 100%;
  height: 150%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: min(1.25rem, 5.3333333333vw);
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents__top-img-inner img {
    border-radius: min(0.78125rem, 3.3333333333vw);
    height: 170%;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents__top-img-inner img {
    border-radius: min(0.5rem, 2.1333333333vw);
    height: 200%;
  }
}

.p-in3min-business-contents:nth-of-type(1) .p-in3min-business-contents__top-img-inner img {
  -o-object-position: 40% 50%;
     object-position: 40% 50%;
}

.p-in3min-business-contents:nth-of-type(2) .p-in3min-business-contents__top-img-inner picture {
  display: block;
  -webkit-transform: scale(2);
          transform: scale(2);
  position: relative;
  top: max(-3.125rem, -13.3333333333vw);
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents:nth-of-type(2) .p-in3min-business-contents__top-img-inner picture {
    -webkit-transform: scale(1.9);
            transform: scale(1.9);
    top: min(0rem, 0vw);
  }
}
.p-in3min-business-contents:nth-of-type(2) .p-in3min-business-contents__top-img-inner img {
  -o-object-position: 70% 70%;
     object-position: 70% 70%;
}

.p-in3min-business-contents:nth-of-type(3) .p-in3min-business-contents__top-img-inner img {
  -o-object-position: 50% 55%;
     object-position: 50% 55%;
}

.p-in3min-business-contents:nth-of-type(4) .p-in3min-business-contents__top-img-inner img {
  -o-object-position: 10% 10%;
     object-position: 10% 10%;
}

.p-in3min-business-contents__inner {
  position: relative;
  z-index: 1;
  margin-top: min(0.3125rem, 1.3333333333vw);
  max-width: min(61.25rem, 261.3333333333vw);
  margin-inline: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(6.625rem, 28.2666666667vw);
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents__inner {
    max-width: min(38.25rem, 163.2vw);
    gap: min(1.875rem, 8vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents__inner {
    margin-top: min(1.625rem, 6.9333333333vw);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: min(0.625rem, 2.6666666667vw);
  }
}

.p-in3min-business-contents__img-wrap {
  padding-block: 4rem;
  padding-bottom: 0 !important;
  width: min(25.875rem, 110.4vw);
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents__img-wrap {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents__img-wrap {
    padding-block: 2rem;
  }
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents__img-wrap {
    width: min(16.125rem, 68.8vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents__img-wrap {
    padding-top: 0 !important;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: min(0.5rem, 2.1333333333vw);
    width: 100%;
  }
}

.p-in3min-business-contents__img {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-in3min-business-contents__img:first-of-type {
  margin-left: auto;
}
.p-in3min-business-contents__img:last-of-type {
  padding-block: 4rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents__img:last-of-type {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents__img:last-of-type {
    padding-block: 2rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents__img:last-of-type {
    padding-top: 0 !important;
  }
}
.p-in3min-business-contents__img img {
  border-radius: min(1.4375rem, 6.1333333333vw);
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents__img img {
    border-radius: min(0.875rem, 3.7333333333vw);
    width: min(13.25rem, 56.5333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents__img img {
    border-radius: min(0.625rem, 2.6666666667vw);
    width: 100%;
  }
}

.p-in3min-business-contents__text-wrap {
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.p-in3min-business-contents__label {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  padding-right: min(1rem, 4.2666666667vw);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff;
  width: min(7.0625rem, 30.1333333333vw);
  height: min(2.125rem, 9.0666666667vw);
  background-color: #E40064;
  -webkit-clip-path: polygon(0 0, 85% 0, 100% 100%, 0 100%);
          clip-path: polygon(0 0, 85% 0, 100% 100%, 0 100%);
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents__label {
    width: min(4.9375rem, 21.0666666667vw);
    height: min(1.5625rem, 6.6666666667vw);
    font-size: min(0.875rem, 3.7333333333vw);
  }
}

.p-in3min-business-contents__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(2.0625rem, 8.8vw);
  letter-spacing: 0em;
  line-height: 1.4545454545;
  padding-block: 1.5rem;
  padding-bottom: 0 !important;
  color: #E40064;
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents__head {
    padding-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents__head {
    padding-block: 0.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.5625rem, 6.6666666667vw);
    letter-spacing: 0em;
    line-height: 1.2;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.25rem, 5.3333333333vw);
    letter-spacing: 0em;
    line-height: 1.5;
  }
}

.p-in3min-business-contents__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.9;
  padding-block: 5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents__text {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents__text {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-in3min-business-contents__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0em;
    line-height: 1.7857142857;
    padding-right: min(1.625rem, 6.9333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-business-contents__text {
    padding-right: 0;
  }
}

/* ワークリスト
----------------------------------------------------------------- */
.p-in3min-work-list {
  padding-block: 6.25rem;
  padding-bottom: 0 !important;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(5rem, 21.3333333333vw) min(2.1875rem, 9.3333333333vw);
  counter-reset: list;
}
@media screen and (max-width: 992px) {
  .p-in3min-work-list {
    padding-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-work-list {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 992px) {
  .p-in3min-work-list {
    grid-template-columns: 1fr 1fr;
    gap: min(3.625rem, 15.4666666667vw) min(2rem, 8.5333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-work-list {
    grid-template-columns: 1fr;
    gap: min(2.875rem, 12.2666666667vw);
  }
}

.p-in3min-work-list__item {
  padding-block: 2.5rem;
  background-color: #fff;
  padding-inline: min(1.25rem, 5.3333333333vw);
  counter-increment: list;
  position: relative;
}
@media screen and (max-width: 992px) {
  .p-in3min-work-list__item {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-in3min-work-list__item {
    padding-block: 1.25rem;
  }
}
.p-in3min-work-list__item::before, .p-in3min-work-list__item::after {
  content: "";
  display: block;
  background-color: #E6E6E6;
  width: min(1.75rem, 7.4666666667vw);
  height: min(1.75rem, 7.4666666667vw);
  position: absolute;
  top: max(-0.00625rem, -0.0266666667vw);
  right: max(-0.00625rem, -0.0266666667vw);
}
@media screen and (max-width: 992px) {
  .p-in3min-work-list__item::before, .p-in3min-work-list__item::after {
    width: min(1.625rem, 6.9333333333vw);
    height: min(1.625rem, 6.9333333333vw);
  }
}
@media screen and (max-width: 992px) {
  .p-in3min-work-list__item::before, .p-in3min-work-list__item::after {
    width: min(1.5rem, 6.4vw);
    height: min(1.5rem, 6.4vw);
  }
}
.p-in3min-work-list__item::after {
  background-color: #E40064;
  -webkit-clip-path: polygon(0 0, 100% 100%, 0 100%);
          clip-path: polygon(0 0, 100% 100%, 0 100%);
}

.p-in3min-work-list__label {
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(0.25rem, 1.0666666667vw);
  color: #E40064;
}
@media screen and (max-width: 992px) {
  .p-in3min-work-list__label {
    font-size: min(1.125rem, 4.8vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-work-list__label {
    font-size: min(0.9375rem, 4vw);
  }
}
.p-in3min-work-list__label::after {
  content: "0" counter(list);
}

.p-in3min-work-list__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.6875rem, 7.2vw);
  letter-spacing: 0em;
  line-height: 1.2962962963;
  padding-block: 2.5rem;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .p-in3min-work-list__head {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-in3min-work-list__head {
    padding-block: 1.25rem;
  }
}
@media screen and (max-width: 992px) {
  .p-in3min-work-list__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.4375rem, 6.1333333333vw);
    letter-spacing: 0em;
    line-height: 1.4347826087;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-work-list__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: min(1.1875rem, 5.0666666667vw);
    letter-spacing: 0em;
    line-height: 1.4210526316;
  }
}

.p-in3min-work-list__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;
}
@media screen and (max-width: 992px) {
  .p-in3min-work-list__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0em;
    line-height: 1.5625;
  }
}

/* ワークスライダー
----------------------------------------------------------------- */
.p-in3min-work-slider {
  padding-block: 5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-in3min-work-slider {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-work-slider {
    padding-block: 2.875rem;
  }
}

.p-in3min-work-slider__item {
  margin-inline: min(0.9375rem, 4vw);
}
@media screen and (max-width: 992px) {
  .p-in3min-work-slider__item {
    margin-inline: min(0.5rem, 2.1333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-work-slider__item {
    margin-inline: min(0.28125rem, 1.2vw);
  }
}
.p-in3min-work-slider__item:nth-of-type(odd) {
  margin-top: min(3.75rem, 16vw);
}
@media screen and (max-width: 992px) {
  .p-in3min-work-slider__item:nth-of-type(odd) {
    margin-top: min(2.3125rem, 9.8666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-in3min-work-slider__item:nth-of-type(odd) {
    margin-top: min(1.25rem, 5.3333333333vw);
  }
}

.p-in3min-work-slider__img {
  border: min(0.3125rem, 1.3333333333vw) solid #fff;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 992px) {
  .p-in3min-work-slider__img {
    border-width: min(0.1875rem, 0.8vw);
  }
}
@media screen and (max-width: 992px) {
  .p-in3min-work-slider__img {
    border-width: min(0.1rem, 0.4266666667vw);
  }
}

/* ==========================================================================
採用情報
========================================================================== */
/* 採用メッセージ
----------------------------------------------------------------- */
.p-recruit-head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(2.875rem, 12.2666666667vw);
  letter-spacing: 0em;
  line-height: 1.4347826087;
  text-align: center;
}
.p-recruit-head--white {
  color: #fff;
}
@media screen and (max-width: 992px) {
  .p-recruit-head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(2rem, 8.5333333333vw);
    letter-spacing: 0em;
    line-height: 1.65625;
  }
}
@media screen and (max-width: 820px) {
  .p-recruit-head {
    font-size: min(1.625rem, 6.9333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.5rem, 6.4vw);
    letter-spacing: 0em;
    line-height: 1.25;
  }
}

.p-recruit-message__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.9;
  padding-block: 5rem;
  padding-bottom: 0 !important;
  color: #fff;
  text-align: center;
  max-width: min(61.25rem, 261.3333333333vw);
  margin-inline: auto;
}
@media screen and (max-width: 992px) {
  .p-recruit-message__text {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-message__text {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-recruit-message__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.125rem, 4.8vw);
    letter-spacing: 0em;
    line-height: 1.8333333333;
  }
}
@media screen and (max-width: 820px) {
  .p-recruit-message__text {
    font-size: min(1rem, 4.2666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-message__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0em;
    line-height: 1.875;
  }
}

.p-recruit-slider:first-of-type {
  padding-block: 6.25rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-recruit-slider:first-of-type {
    padding-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-slider:first-of-type {
    padding-block: 3.625rem;
  }
}

.p-recruit-slider:nth-of-type(n + 2) {
  margin-top: min(1.5625rem, 6.6666666667vw);
}
@media screen and (max-width: 992px) {
  .p-recruit-slider:nth-of-type(n + 2) {
    margin-top: min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-slider:nth-of-type(n + 2) {
    margin-top: min(0.625rem, 2.6666666667vw);
  }
}

.p-recruit-slider__Item {
  margin-inline: min(0.78125rem, 3.3333333333vw);
}
@media screen and (max-width: 992px) {
  .p-recruit-slider__Item {
    margin-inline: min(0.625rem, 2.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-slider__Item {
    margin-inline: min(0.3125rem, 1.3333333333vw);
  }
}
.p-recruit-slider__Item img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

/* 働く魅力
----------------------------------------------------------------- */
.p-recruit-appeal__inner {
  padding-block: 5rem;
  padding-bottom: 0 !important;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(4.625rem, 19.7333333333vw) min(min(2.1875rem, 9.3333333333vw), 2.75vw);
  margin-top: min(3.125rem, 13.3333333333vw);
}
@media screen and (max-width: 992px) {
  .p-recruit-appeal__inner {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-appeal__inner {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-recruit-appeal__inner {
    grid-template-columns: repeat(2, 1fr);
    gap: min(4.09375rem, 17.4666666667vw) min(2.1875rem, 9.3333333333vw);
    margin-top: min(2.96875rem, 12.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-appeal__inner {
    grid-template-columns: 1fr;
  }
}

.p-recruit-appeal__item {
  border-radius: min(1.25rem, 5.3333333333vw);
  border: min(0.125rem, 0.5333333333vw) solid #E40064;
}
@media screen and (max-width: 576px) {
  .p-recruit-appeal__item {
    border-radius: min(1.0625rem, 4.5333333333vw);
  }
}

.p-recruit-appeal__img {
  border-radius: 100vh;
  height: min(6.25rem, 26.6666666667vw);
  width: min(6.25rem, 26.6666666667vw);
  margin-inline: auto;
  position: relative;
  top: max(-3.125rem, -13.3333333333vw);
  margin-bottom: max(-3.125rem, -13.3333333333vw);
}
@media screen and (max-width: 992px) {
  .p-recruit-appeal__img {
    height: min(5.9375rem, 25.3333333333vw);
    width: min(5.9375rem, 25.3333333333vw);
    top: max(-2.96875rem, -12.6666666667vw);
    margin-bottom: max(-2.96875rem, -12.6666666667vw);
  }
}

.p-recruit-appeal__icon {
  width: 100%;
  height: 100%;
}

.p-recruit-appeal__content {
  padding-block: 2.5rem;
}
@media screen and (max-width: 992px) {
  .p-recruit-appeal__content {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-recruit-appeal__content {
    padding-block: 1.25rem;
  }
}

.p-recruit-appeal__title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.6875rem, 7.2vw);
  letter-spacing: 0em;
  line-height: 1.2962962963;
  text-align: center;
  padding-inline: min(0.625rem, 2.6666666667vw);
}
@media screen and (max-width: 1200px) {
  .p-recruit-appeal__title {
    font-size: min(1.4375rem, 6.1333333333vw);
  }
}
@media screen and (max-width: 992px) {
  .p-recruit-appeal__title {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.4375rem, 6.1333333333vw);
    letter-spacing: 0em;
    line-height: 1.4347826087;
  }
}
@media screen and (max-width: 820px) {
  .p-recruit-appeal__title {
    font-size: min(1.125rem, 4.8vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-appeal__title {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.1875rem, 5.0666666667vw);
    letter-spacing: 0em;
    line-height: 1.4210526316;
  }
}

.p-recruit-appeal__text {
  padding-block: 2.5rem;
  padding-bottom: 0 !important;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1.875;
  padding-inline: min(1.5625rem, 6.6666666667vw);
}
@media screen and (max-width: 992px) {
  .p-recruit-appeal__text {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-recruit-appeal__text {
    padding-block: 1.25rem;
  }
}
@media screen and (max-width: 992px) {
  .p-recruit-appeal__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0em;
    line-height: 1.5625;
    padding-inline: min(1.46875rem, 6.2666666667vw);
  }
}
@media screen and (max-width: 820px) {
  .p-recruit-appeal__text {
    font-size: min(0.9375rem, 4vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-appeal__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0em;
    line-height: 1.5625;
    padding-inline: min(1.125rem, 4.8vw);
  }
}
.p-recruit-appeal__text .palt {
  -webkit-font-feature-settings: unset !important;
          font-feature-settings: unset !important;
}
@media screen and (max-width: 992px) {
  .p-recruit-appeal__text .palt {
    -webkit-font-feature-settings: "palt" !important;
            font-feature-settings: "palt" !important;
  }
}

/* Topics
----------------------------------------------------------------- */
.p-recruit-topics {
  padding-block: 6.25rem;
}
@media screen and (max-width: 992px) {
  .p-recruit-topics {
    padding-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-topics {
    padding-block: 3.625rem;
  }
}

.p-recruit-topics__inner {
  padding-block: 4rem;
  -webkit-box-shadow: 0 0 min(0.625rem, 2.6666666667vw) rgba(29, 29, 29, 0.3);
          box-shadow: 0 0 min(0.625rem, 2.6666666667vw) rgba(29, 29, 29, 0.3);
  border-radius: min(1.875rem, 8vw);
  padding-inline: min(2.5rem, 10.6666666667vw);
}
@media screen and (max-width: 992px) {
  .p-recruit-topics__inner {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-topics__inner {
    padding-block: 2rem;
  }
}
@media screen and (max-width: 992px) {
  .p-recruit-topics__inner {
    padding-inline: min(1.125rem, 4.8vw);
    border-radius: min(1.5625rem, 6.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-topics__inner {
    border-radius: min(1rem, 4.2666666667vw);
  }
}

.p-recruit-topics__img {
  width: min(9.5rem, 40.5333333333vw);
  display: block;
  margin-inline: auto;
}
@media screen and (max-width: 576px) {
  .p-recruit-topics__img {
    width: min(6.25rem, 26.6666666667vw);
  }
}

.p-recruit-topics__head {
  padding-block: 2.5rem;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(2.0625rem, 8.8vw);
  letter-spacing: 0em;
  line-height: 1.2121212121;
  color: #E40064;
}
@media screen and (max-width: 992px) {
  .p-recruit-topics__head {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-recruit-topics__head {
    padding-block: 1.25rem;
  }
}
@media screen and (max-width: 992px) {
  .p-recruit-topics__head {
    font-size: min(1.5625rem, 6.6666666667vw);
  }
}
@media screen and (max-width: 820px) {
  .p-recruit-topics__head {
    font-size: min(1.375rem, 5.8666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-topics__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: min(1.25rem, 5.3333333333vw);
    letter-spacing: 0em;
    line-height: 1.3;
  }
}

.p-recruit-topics__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.9;
}
@media screen and (max-width: 992px) {
  .p-recruit-topics__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0em;
    line-height: 1.5714285714;
  }
}

/* 社員の声
----------------------------------------------------------------- */
.p-recruit-voice__head {
  padding-block: 1.5rem;
  padding-top: 0 !important;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(2.875rem, 12.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  color: #E40064;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__head {
    padding-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-voice__head {
    padding-block: 0.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__head {
    font-size: min(2rem, 8.5333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-voice__head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.5rem, 6.4vw);
    letter-spacing: 0em;
    line-height: 1.5833333333;
  }
}
.p-recruit-voice__head::before {
  content: "";
  display: block;
  width: 100%;
  position: absolute;
  bottom: max(-0.375rem, -1.6vw);
  left: 0;
  background-image: -webkit-repeating-linear-gradient(left, currentColor 0, currentColor min(0.375rem, 1.6vw), transparent min(0.375rem, 1.6vw), transparent calc(min(0.375rem, 1.6vw) + min(0.375rem, 1.6vw)));
  background-image: repeating-linear-gradient(to right, currentColor 0, currentColor min(0.375rem, 1.6vw), transparent min(0.375rem, 1.6vw), transparent calc(min(0.375rem, 1.6vw) + min(0.375rem, 1.6vw)));
  background-size: calc(min(0.375rem, 1.6vw) + min(0.375rem, 1.6vw)) min(0.375rem, 1.6vw);
  background-position: left bottom;
  background-repeat: repeat-x;
  padding-bottom: min(0.375rem, 1.6vw);
}

.p-recruit-voice__head-point {
  display: inline-block;
  background-color: #1D1D1D;
  color: #fff;
  padding-inline: min(0.5rem, 2.1333333333vw);
  padding-block: min(0.375rem, 1.6vw) min(0.5rem, 2.1333333333vw);
  -webkit-transform: rotate(-8deg);
          transform: rotate(-8deg);
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__head-point {
    padding-inline: min(0.375rem, 1.6vw);
    padding-block: min(0.25rem, 1.0666666667vw) min(0.375rem, 1.6vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-voice__head-point {
    padding-inline: min(0.375rem, 1.6vw);
    padding-block: min(0.3125rem, 1.3333333333vw);
    line-height: 1;
  }
}

.p-recruit-voice__slider-wrap {
  padding-block: 2.5rem;
  padding-bottom: 0 !important;
  position: relative;
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__slider-wrap {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-recruit-voice__slider-wrap {
    padding-block: 1.25rem;
  }
}

.p-recruit-voice__slider {
  margin: 0 !important;
  margin-top: min(0.375rem, 1.6vw) !important;
}

.slick-track {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.p-recruit-voice__slider-item {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(2.5rem, 10.6666666667vw);
  padding-inline: 8.4187408492vw;
  height: auto !important;
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__slider-item {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-voice__slider-item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: min(1.875rem, 8vw);
    padding-inline: min(0.90625rem, 3.8666666667vw);
  }
}

.p-recruit-voice__img-wrap {
  width: min(15rem, 64vw);
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__img-wrap {
    width: min(10.5rem, 44.8vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-voice__img-wrap {
    width: min(11.125rem, 47.4666666667vw);
  }
}
.p-recruit-voice__img-wrap img {
  aspect-ratio: 1/1;
  width: 100%;
  height: auto;
}

.p-recruit-voice__text-wrap {
  padding-block: 2.5rem;
  padding-inline: min(2.75rem, 11.7333333333vw);
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  border: min(0.1875rem, 0.8vw) solid #E40064;
  border-radius: min(1.875rem, 8vw);
  position: relative;
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__text-wrap {
    padding-block: 1.625rem;
  }
}
@media screen and (max-width: 820px) {
  .p-recruit-voice__text-wrap {
    padding-block: 1.25rem;
  }
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__text-wrap {
    max-width: min(18.9375rem, 80.8vw);
    border-radius: min(1.5625rem, 6.6666666667vw);
    padding-inline: min(1.875rem, 8vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-voice__text-wrap {
    padding-inline: min(1rem, 4.2666666667vw);
  }
}
.p-recruit-voice__text-wrap::before, .p-recruit-voice__text-wrap::after {
  content: "";
  display: block;
  width: min(1.5625rem, 6.6666666667vw);
  height: min(2.8125rem, 12vw);
  background-color: #E40064;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate(-100%, -50%);
          transform: translate(-100%, -50%);
  -webkit-clip-path: polygon(100% 0, 100% 100%, 0 50%);
          clip-path: polygon(100% 0, 100% 100%, 0 50%);
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__text-wrap::before, .p-recruit-voice__text-wrap::after {
    width: min(1.25rem, 5.3333333333vw);
    height: min(2.1875rem, 9.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-voice__text-wrap::before, .p-recruit-voice__text-wrap::after {
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -100%);
            transform: translate(-50%, -100%);
    -webkit-clip-path: polygon(50% 0, 100% 100%, 0 100%);
            clip-path: polygon(50% 0, 100% 100%, 0 100%);
    width: min(2.1875rem, 9.3333333333vw);
    height: min(1.25rem, 5.3333333333vw);
  }
}
.p-recruit-voice__text-wrap::after {
  background-color: #fff;
  width: min(1.3125rem, 5.6vw);
  height: min(2.375rem, 10.1333333333vw);
  left: min(0.0625rem, 0.2666666667vw);
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__text-wrap::after {
    width: min(1rem, 4.2666666667vw);
    height: min(1.75rem, 7.4666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-voice__text-wrap::after {
    width: min(1.75rem, 7.4666666667vw);
    height: min(1rem, 4.2666666667vw);
    left: 50%;
  }
}

.p-recruit-voice__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.75;
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0em;
    line-height: 1.7142857143;
  }
}

.p-recruit-voice__dots {
  position: static;
  padding-block: 6.25rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__dots {
    padding-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-voice__dots {
    padding-block: 3.625rem;
  }
}
.p-recruit-voice__dots .slick-dots {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(1.1875rem, 5.0666666667vw);
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__dots .slick-dots {
    gap: min(0.625rem, 2.6666666667vw);
  }
}
.p-recruit-voice__dots .slick-dots li {
  position: static;
  width: -webkit-fit-content !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
  margin: 0 !important;
}
.p-recruit-voice__dots .slick-dots li.slick-active button {
  background-color: #E40064;
  -webkit-transform: scale(1.4);
          transform: scale(1.4);
}
.p-recruit-voice__dots .slick-dots li button {
  background-color: #E6E6E6;
  border-radius: 100vh;
  width: min(0.9375rem, 4vw);
  height: min(0.9375rem, 4vw);
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__dots .slick-dots li button {
    width: min(0.6rem, 2.56vw);
    height: min(0.6rem, 2.56vw);
  }
}
.p-recruit-voice__dots .slick-dots li button::before {
  display: none;
}

.p-recruit-voice__arrow {
  display: block;
  position: absolute;
  top: 50%;
  width: min(3.625rem, 15.4666666667vw);
  height: min(3.625rem, 15.4666666667vw);
  background-color: #1D1D1D;
  border-radius: 100vh;
  background-image: url(../images/svg/icon_arrow_btn_white.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-size: min(1.1875rem, 5.0666666667vw) min(0.625rem, 2.6666666667vw);
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__arrow {
    width: min(2.5625rem, 10.9333333333vw);
    height: min(2.5625rem, 10.9333333333vw);
    background-size: min(0.8125rem, 3.4666666667vw) min(0.4375rem, 1.8666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-voice__arrow {
    width: min(1.875rem, 8vw);
    height: min(1.875rem, 8vw);
    background-size: min(0.625rem, 2.6666666667vw) min(0.3125rem, 1.3333333333vw);
    top: min(8.125rem, 34.6666666667vw);
  }
}
.p-recruit-voice__arrow.p-recruit-voice__arrow--prev {
  left: 12.8111273792vw;
  -webkit-transform: translateY(-100%) rotate(180deg);
          transform: translateY(-100%) rotate(180deg);
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__arrow.p-recruit-voice__arrow--prev {
    left: 4.8780487805vw;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-voice__arrow.p-recruit-voice__arrow--prev {
    left: 9.3333333333vw;
  }
}
.p-recruit-voice__arrow.p-recruit-voice__arrow--next {
  right: 12.8111273792vw;
}
@media screen and (max-width: 992px) {
  .p-recruit-voice__arrow.p-recruit-voice__arrow--next {
    right: 4.8780487805vw;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-voice__arrow.p-recruit-voice__arrow--next {
    right: 9.3333333333vw;
  }
}

/* 募集要項
----------------------------------------------------------------- */
.p-recruit-requirements {
  margin-block: 5rem;
  background-color: #fff;
}
@media screen and (max-width: 992px) {
  .p-recruit-requirements {
    margin-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-requirements {
    margin-block: 2.875rem;
  }
}

.p-recruit-requirements__list {
  display: grid;
  grid-template-columns: -webkit-max-content 1fr;
  grid-template-columns: max-content 1fr;
}
@media screen and (max-width: 576px) {
  .p-recruit-requirements__list {
    grid-template-columns: 1fr;
  }
}

.p-recruit-requirements__term {
  padding-block: 1.5rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  color: #E40064;
  padding-inline: min(4.375rem, 18.6666666667vw) min(5.625rem, 24vw);
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 992px) {
  .p-recruit-requirements__term {
    padding-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-requirements__term {
    padding-block: 0.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-recruit-requirements__term {
    padding-inline: min(2.8125rem, 12vw) min(2.5rem, 10.6666666667vw);
    font-size: min(0.875rem, 3.7333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-requirements__term {
    padding-inline: min(1.25rem, 5.3333333333vw);
    text-align: left;
    display: block;
    padding-bottom: 0;
  }
}
.p-recruit-requirements__term:not(:last-of-type) {
  border-bottom: min(0.0625rem, 0.2666666667vw) solid #d2d2d2;
}
@media screen and (max-width: 576px) {
  .p-recruit-requirements__term:not(:last-of-type) {
    border-bottom: 0;
  }
}

.p-recruit-requirements__desc {
  padding-block: 1.5rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1.875;
  padding-right: min(4.375rem, 18.6666666667vw);
}
@media screen and (max-width: 992px) {
  .p-recruit-requirements__desc {
    padding-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-requirements__desc {
    padding-block: 0.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-recruit-requirements__desc {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0em;
    line-height: 1.7857142857;
    padding-right: min(2.5rem, 10.6666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-requirements__desc {
    padding-inline: min(1.25rem, 5.3333333333vw);
  }
}
.p-recruit-requirements__desc li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.p-recruit-requirements__desc li::before {
  content: "・";
  display: inline;
}

.p-recruit-requirements__desc:not(:last-of-type) {
  border-bottom: min(0.0625rem, 0.2666666667vw) solid #d2d2d2;
}

/* エントリー
----------------------------------------------------------------- */
.p-recruit-entry {
  margin-block: 6.25rem;
  margin-bottom: 0 !important;
  padding-block: 5rem;
  background-color: #1D1D1D;
  border-radius: min(3.125rem, 13.3333333333vw);
  color: #fff;
}
@media screen and (max-width: 992px) {
  .p-recruit-entry {
    margin-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-entry {
    margin-block: 3.625rem;
  }
}
@media screen and (max-width: 992px) {
  .p-recruit-entry {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-entry {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 992px) {
  .p-recruit-entry {
    border-radius: min(2.625rem, 11.2vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-entry {
    border-radius: min(1.6875rem, 7.2vw);
  }
}

.p-recruit-entry__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(2.875rem, 12.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .p-recruit-entry__head {
    font-size: min(2rem, 8.5333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-entry__head {
    font-size: min(1.5rem, 6.4vw);
  }
}

.p-recruit-entry__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1.4;
  padding-block: 4rem;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .p-recruit-entry__text {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-entry__text {
    padding-block: 2rem;
  }
}
@media screen and (max-width: 992px) {
  .p-recruit-entry__text {
    font-size: min(1.125rem, 4.8vw);
    padding-inline: min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-entry__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0em;
    line-height: 1.5;
    padding-inline: min(0.625rem, 2.6666666667vw);
  }
}

.p-recruit-entry__btn {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0em;
  line-height: 1;
  display: block;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: min(0.625rem, 2.6666666667vw);
  background-color: #E40064;
  width: min(21.875rem, 93.3333333333vw);
  height: min(5rem, 21.3333333333vw);
  margin-inline: auto;
  position: relative;
  -webkit-transition: color 0.3s, background-color 0.3s;
  transition: color 0.3s, background-color 0.3s;
}
@media screen and (max-width: 992px) {
  .p-recruit-entry__btn {
    font-size: min(1.125rem, 4.8vw);
    width: min(19.75rem, 84.2666666667vw);
    height: min(4.5rem, 19.2vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-entry__btn {
    font-size: min(0.8125rem, 3.4666666667vw);
    width: min(14rem, 59.7333333333vw);
    height: min(3.1875rem, 13.6vw);
  }
}
.p-recruit-entry__btn::before {
  content: "";
  display: block;
  width: min(1.3125rem, 5.6vw);
  height: min(1.3125rem, 5.6vw);
  position: absolute;
  top: 50%;
  right: min(2.5rem, 10.6666666667vw);
  -webkit-transform: translateY(-42%);
          transform: translateY(-42%);
  background-image: url(../images/svg/icon_arrow.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
}
@media screen and (max-width: 992px) {
  .p-recruit-entry__btn::before {
    width: min(1.1875rem, 5.0666666667vw);
    height: min(1.1875rem, 5.0666666667vw);
  }
}
@media screen and (max-width: 576px) {
  .p-recruit-entry__btn::before {
    width: min(0.8125rem, 3.4666666667vw);
    height: min(0.8125rem, 3.4666666667vw);
    right: min(1.875rem, 8vw);
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-recruit-entry__btn:hover {
    background-color: #fff;
    color: #E40064;
  }
  .p-recruit-entry__btn:hover::before {
    background-image: url(../images/svg/icon_arrow_main.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
}
@media (hover: hover), (hover: none) {
  .p-recruit-entry__btn:active {
    background-color: #fff;
    color: #E40064;
  }
  .p-recruit-entry__btn:active::before {
    background-image: url(../images/svg/icon_arrow_main.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
}

/* ==========================================================================
個人情報保護方針
========================================================================== */
/* 個人情報保護方針
----------------------------------------------------------------- */
.p-policy {
  padding-block: 5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-policy {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-policy {
    padding-block: 2.875rem;
  }
}

/* ==========================================================================
お問い合わせ
========================================================================== */
/* メールフォーム
----------------------------------------------------------------- */
.p-contact-form {
  padding-block: 5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-contact-form {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-contact-form {
    padding-block: 2.875rem;
  }
}

.p-contact-notice {
  margin-block: 5rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  color: #E40064;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-bottom: min(0.25rem, 1.0666666667vw) solid #f180b1;
  margin-inline: auto;
  padding-bottom: min(0.5rem, 2.1333333333vw);
}
@media screen and (max-width: 992px) {
  .p-contact-notice {
    margin-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-contact-notice {
    margin-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .p-contact-notice {
    font-size: min(0.9375rem, 4vw);
  }
}

.p-contact-tel {
  padding-block: 6.25rem;
  padding-bottom: 0 !important;
  max-width: min(45rem, 192vw);
  margin-inline: auto;
}
@media screen and (max-width: 992px) {
  .p-contact-tel {
    padding-block: 4.75rem;
  }
}
@media screen and (max-width: 576px) {
  .p-contact-tel {
    padding-block: 3.625rem;
  }
}

/* ==========================================================================
お問い合わせ完了
========================================================================== */
.p-thanks-tel-contents {
  padding-block: 4rem;
  padding-bottom: 0 !important;
  max-width: min(31.25rem, 133.3333333333vw);
  margin-inline: auto;
}
@media screen and (max-width: 992px) {
  .p-thanks-tel-contents {
    padding-block: 2.875rem;
  }
}
@media screen and (max-width: 576px) {
  .p-thanks-tel-contents {
    padding-block: 2rem;
  }
}

.p-thanks-wrap {
  padding-block: 5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-thanks-wrap {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-thanks-wrap {
    padding-block: 2.875rem;
  }
}

.p-thanks-text {
  padding-block: 5rem;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 992px) {
  .p-thanks-text {
    padding-block: 3.625rem;
  }
}
@media screen and (max-width: 576px) {
  .p-thanks-text {
    padding-block: 2.875rem;
  }
}

.p-thanks-tel {
  padding-block: 1.5rem;
}
@media screen and (max-width: 992px) {
  .p-thanks-tel {
    padding-block: 1.125rem;
  }
}
@media screen and (max-width: 576px) {
  .p-thanks-tel {
    padding-block: 0.875rem;
  }
}
.p-thanks-tel img {
  width: min(1.5rem, 6.4vw);
  height: auto;
}

.p-thanks-tel__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(0.625rem, 2.6666666667vw);
}

.p-thanks-tel__link {
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  font-size: min(1.5rem, 6.4vw);
  letter-spacing: 0em;
  line-height: 1;
}

/* ==========================================================================
 スクロール
=========================================================================*/
.u-scroll-anchor {
  display: block;
}
@media screen and (max-width: 992px) {
  .u-scroll-anchor {
    padding-top: 3.75rem;
    margin-top: -3.75rem;
  }
}

/* ==========================================================================
マージン・パディング
=========================================================================*/
/* マージン
----------------------------------------------------------------- */
.u-margin-auto {
  margin: auto;
}

.u-margin-remove {
  margin: 0 !important;
}

.u-margin-remove-top {
  margin-top: 0 !important;
}

.u-margin-xxsmall-top {
  margin-top: 10px;
}

.u-margin-xsmall-top {
  margin-top: 1rem;
}
@media screen and (max-width: 820px) {
  .u-margin-xsmall-top {
    margin-top: 14px;
  }
}
@media screen and (max-width: 576px) {
  .u-margin-xsmall-top {
    margin-top: 10px;
  }
}

.u-margin-small-top {
  margin-top: 1.5rem;
}
@media screen and (max-width: 820px) {
  .u-margin-small-top {
    margin-top: 1.25rem;
  }
}

.u-margin-medium-small-top {
  margin-top: 1.875rem;
}
@media screen and (max-width: 820px) {
  .u-margin-medium-small-top {
    margin-top: 1.875rem;
  }
}
@media screen and (max-width: 576px) {
  .u-margin-medium-small-top {
    margin-top: 1.875rem;
  }
}

.u-margin-medium-top {
  margin-top: 2.5rem;
}
@media screen and (max-width: 820px) {
  .u-margin-medium-top {
    margin-top: 2.5rem;
  }
}
@media screen and (max-width: 576px) {
  .u-margin-medium-top {
    margin-top: 2.5rem;
  }
}

.u-margin-large-top {
  margin-top: 4rem;
}
@media screen and (max-width: 576px) {
  .u-margin-large-top {
    margin-top: 3.75rem;
  }
}
@media screen and (max-width: 576px) {
  .u-margin-large-top {
    margin-top: 2.5rem;
  }
}

.u-margin-xlarge-top {
  margin-top: 5rem;
}
@media screen and (max-width: 820px) {
  .u-margin-xlarge-top {
    margin-top: 3.75rem;
  }
}
@media screen and (max-width: 576px) {
  .u-margin-xlarge-top {
    margin-top: 3.75rem;
  }
}

.u-margin-xxlarge-top {
  margin-top: 6.5rem;
}
@media screen and (max-width: 820px) {
  .u-margin-xxlarge-top {
    margin-top: 5rem;
  }
}
@media screen and (max-width: 576px) {
  .u-margin-xxlarge-top {
    margin-top: 5rem;
  }
}

.u-margin-small-bottom {
  margin-bottom: 1.25rem;
}

/* パディング
----------------------------------------------------------------- */
.u-padding-remove {
  padding: 0 !important;
}

.u-padding-small {
  padding: 1.25rem;
}

.u-padding-medium {
  padding: 2.5rem;
}

.u-padding-large {
  padding: 3.75rem;
}
@media screen and (max-width: 576px) {
  .u-padding-large {
    padding: 2.5rem;
  }
}

.u-padding-top-xlarge {
  padding-top: 5rem;
}
@media screen and (max-width: 820px) {
  .u-padding-top-xlarge {
    padding-top: 5rem;
  }
}
@media screen and (max-width: 576px) {
  .u-padding-top-xlarge {
    padding-top: 3.75rem;
  }
}

.u-padding-xxlarge-top {
  padding-top: 6.25rem;
}
@media screen and (max-width: 820px) {
  .u-padding-xxlarge-top {
    padding-top: 5rem;
  }
}
@media screen and (max-width: 576px) {
  .u-padding-xxlarge-top {
    padding-top: 5rem;
  }
}

.u-padding-small-bottom {
  padding-bottom: 1.25rem;
}/*# sourceMappingURL=main.css.map */