@charset "UTF-8";

/* ---------------------------------------------------------------------------
  ★共通
--------------------------------------------------------------------------- */
body {
  font-size: clamp(1rem, 3.8vw, 1.6rem);
  -webkit-text-size-adjust: 100%;
}

.sp {
  display: block !important;
}

.sp_left {
  text-align: left !important;
}

.sp_center {
  text-align: center !important;
}

.pc {
  display: none !important;
}

a {
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.inner,
.inner_700,
.inner_800,
.inner_900,
.inner_1000,
.inner_1100,
.inner_1200,
.inner_1300 {
  width: 90%;
}

.f10 {
  font-size: clamp(0.8rem, 3.2vw, 1rem) !important;
}

.f11 {
  font-size: clamp(0.8rem, 3.3vw, 1.1rem) !important;
}

.f12 {
  font-size: clamp(0.8rem, 3.4vw, 1.2rem) !important;
}

.f13 {
  font-size: clamp(0.8rem, 3.5vw, 1.3rem) !important;
}

.f14 {
  font-size: clamp(1rem, 3.6vw, 1.4rem) !important;
}

.f15 {
  font-size: clamp(1rem, 3.7vw, 1.5rem) !important;
}

.f16 {
  font-size: clamp(1rem, 3.8vw, 1.6rem) !important;
}

.f17 {
  font-size: clamp(1rem, 3.9vw, 1.7rem) !important;
}

.f18 {
  font-size: clamp(1rem, 4vw, 1.8rem) !important;
}

.f19 {
  font-size: clamp(1rem, 4.1vw, 1.9rem) !important;
}

.f20 {
  font-size: clamp(1.2rem, 4.2vw, 2rem) !important;
}

.f21 {
  font-size: clamp(1.2rem, 4.3vw, 2.1rem) !important;
}

.f22 {
  font-size: clamp(1.2rem, 4.4vw, 2.2rem) !important;
}

.f23 {
  font-size: clamp(1.2rem, 4.5vw, 2.3rem) !important;
}

.f24 {
  font-size: clamp(1.2rem, 4.6vw, 2.4rem) !important;
}

.f25 {
  font-size: clamp(1.2rem, 4.7vw, 2.5rem) !important;
}

.f26 {
  font-size: clamp(1.2rem, 4.8vw, 2.6rem) !important;
}

.f27 {
  font-size: clamp(1.2rem, 4.9vw, 2.7rem) !important;
}

.f28 {
  font-size: clamp(1.4rem, 5vw, 2.8rem) !important;
}

.f29 {
  font-size: clamp(1.4rem, 5.1vw, 2.9rem) !important;
}

.f30 {
  font-size: clamp(1.6rem, 5.2vw, 3rem) !important;
}

.f31 {
  font-size: clamp(1.6rem, 5.3vw, 3.1rem) !important;
}

.f32 {
  font-size: clamp(1.6rem, 5.4vw, 3.2rem) !important;
}

.f33 {
  font-size: clamp(1.6rem, 5.5vw, 3.3rem) !important;
}

.f34 {
  font-size: clamp(1.6rem, 5.6vw, 3.4rem) !important;
}

.f35 {
  font-size: clamp(1.6rem, 5.7vw, 3.5rem) !important;
}

.f36 {
  font-size: clamp(1.6rem, 5.8vw, 3.6rem) !important;
}

.f37 {
  font-size: clamp(1.6rem, 5.9vw, 3.7rem) !important;
}

.f38 {
  font-size: clamp(1.8rem, 6vw, 3.8rem) !important;
}

.f39 {
  font-size: clamp(1.8rem, 6.1vw, 3.9rem) !important;
}

.f40 {
  font-size: clamp(1.8rem, 6.2vw, 4rem) !important;
}

.mA5 {
  margin: 0.5% !important;
}

.mA10 {
  margin: 1% !important;
}

.mA15 {
  margin: 1.5% !important;
}

.mA20 {
  margin: 2% !important;
}

.mA25 {
  margin: 2.5% !important;
}

.mA30 {
  margin: 3% !important;
}

.mA35 {
  margin: 3.5% !important;
}

.mA40 {
  margin: 4% !important;
}

.mA45 {
  margin: 4.5% !important;
}

.mA50 {
  margin: 5% !important;
}

.mA55 {
  margin: 5.5% !important;
}

.mA60 {
  margin: 6% !important;
}

.mA65 {
  margin: 6.5% !important;
}

.mA70 {
  margin: 7% !important;
}

.mA75 {
  margin: 7.5% !important;
}

.mA80 {
  margin: 8% !important;
}

.mA85 {
  margin: 8.5% !important;
}

.mA90 {
  margin: 9% !important;
}

.mA95 {
  margin: 9.5% !important;
}

.mA100 {
  margin: 10% !important;
}

.mA105 {
  margin: 10.5% !important;
}

.mA110 {
  margin: 11% !important;
}

.mA115 {
  margin: 15% !important;
}

.mA120 {
  margin: 12% !important;
}

.mA125 {
  margin: 12.5% !important;
}

.mA130 {
  margin: 13% !important;
}

.mA135 {
  margin: 13.5% !important;
}

.mA140 {
  margin: 14% !important;
}

.mA145 {
  margin: 14.5% !important;
}

.mA150 {
  margin: 15% !important;
}

.mT0 {
  margin-top: 0% !important;
}

.mT5 {
  margin-top: 0.5% !important;
}

.mT10 {
  margin-top: 1% !important;
}

.mT15 {
  margin-top: 1.5% !important;
}

.mT20 {
  margin-top: 2% !important;
}

.mT25 {
  margin-top: 2.5% !important;
}

.mT30 {
  margin-top: 3% !important;
}

.mT35 {
  margin-top: 3.5% !important;
}

.mT40 {
  margin-top: 4% !important;
}

.mT45 {
  margin-top: 4.5% !important;
}

.mT50 {
  margin-top: 5% !important;
}

.mT55 {
  margin-top: 5.5% !important;
}

.mT60 {
  margin-top: 6% !important;
}

.mT65 {
  margin-top: 6.5% !important;
}

.mT70 {
  margin-top: 7% !important;
}

.mT75 {
  margin-top: 7.5% !important;
}

.mT80 {
  margin-top: 8% !important;
}

.mT85 {
  margin-top: 8.5% !important;
}

.mT90 {
  margin-top: 9% !important;
}

.mT95 {
  margin-top: 9.5% !important;
}

.mT100 {
  margin-top: 10% !important;
}

.mT105 {
  margin-top: 10.5% !important;
}

.mT110 {
  margin-top: 11% !important;
}

.mT115 {
  margin-top: 11.5% !important;
}

.mT120 {
  margin-top: 12% !important;
}

.mT125 {
  margin-top: 12.5% !important;
}

.mT130 {
  margin-top: 13% !important;
}

.mT135 {
  margin-top: 13.5% !important;
}

.mT140 {
  margin-top: 14% !important;
}

.mT145 {
  margin-top: 14.5% !important;
}

.mT150 {
  margin-top: 15% !important;
}

.mB0 {
  margin-bottom: 0% !important;
}

.mB5 {
  margin-bottom: 0.5% !important;
}

.mB10 {
  margin-bottom: 1% !important;
}

.mB15 {
  margin-bottom: 1.5% !important;
}

.mB20 {
  margin-bottom: 2% !important;
}

.mB25 {
  margin-bottom: 2.5% !important;
}

.mB30 {
  margin-bottom: 3% !important;
}

.mB35 {
  margin-bottom: 3.5% !important;
}

.mB40 {
  margin-bottom: 4% !important;
}

.mB45 {
  margin-bottom: 4.5% !important;
}

.mB50 {
  margin-bottom: 5% !important;
}

.mB55 {
  margin-bottom: 5.5% !important;
}

.mB60 {
  margin-bottom: 6% !important;
}

.mB65 {
  margin-bottom: 6.5% !important;
}

.mB70 {
  margin-bottom: 7% !important;
}

.mB75 {
  margin-bottom: 7.5% !important;
}

.mB80 {
  margin-bottom: 8% !important;
}

.mB85 {
  margin-bottom: 8.5% !important;
}

.mB90 {
  margin-bottom: 9% !important;
}

.mB95 {
  margin-bottom: 9.5% !important;
}

.mB100 {
  margin-bottom: 10% !important;
}

.mB105 {
  margin-bottom: 10.5% !important;
}

.mB110 {
  margin-bottom: 11% !important;
}

.mB115 {
  margin-bottom: 11.5% !important;
}

.mB120 {
  margin-bottom: 12% !important;
}

.mB125 {
  margin-bottom: 12.5% !important;
}

.mB130 {
  margin-bottom: 13% !important;
}

.mB135 {
  margin-bottom: 13.5% !important;
}

.mB140 {
  margin-bottom: 14% !important;
}

.mB145 {
  margin-bottom: 14.5% !important;
}

.mB150 {
  margin-bottom: 15% !important;
}

.mL0 {
  margin-left: 0% !important;
}

.mL5 {
  margin-left: 0.5% !important;
}

.mL10 {
  margin-left: 1% !important;
}

.mL15 {
  margin-left: 1.5% !important;
}

.mL20 {
  margin-left: 2% !important;
}

.mL25 {
  margin-left: 2.5% !important;
}

.mL30 {
  margin-left: 3% !important;
}

.mL35 {
  margin-left: 3.5% !important;
}

.mL40 {
  margin-left: 4% !important;
}

.mL45 {
  margin-left: 4.5% !important;
}

.mL50 {
  margin-left: 5% !important;
}

.mL55 {
  margin-left: 5.5% !important;
}

.mL60 {
  margin-left: 6% !important;
}

.mL65 {
  margin-left: 6.5% !important;
}

.mL70 {
  margin-left: 7% !important;
}

.mL75 {
  margin-left: 7.5% !important;
}

.mL80 {
  margin-left: 8% !important;
}

.mL85 {
  margin-left: 8.5% !important;
}

.mL90 {
  margin-left: 9% !important;
}

.mL95 {
  margin-left: 9.5% !important;
}

.mL100 {
  margin-left: 10% !important;
}

.mL105 {
  margin-left: 10.5% !important;
}

.mL110 {
  margin-left: 11% !important;
}

.mL115 {
  margin-left: 11.5% !important;
}

.mL120 {
  margin-left: 12% !important;
}

.mL125 {
  margin-left: 12.5% !important;
}

.mL130 {
  margin-left: 13% !important;
}

.mL135 {
  margin-left: 13.5% !important;
}

.mL140 {
  margin-left: 14% !important;
}

.mL145 {
  margin-left: 14.5% !important;
}

.mL150 {
  margin-left: 15% !important;
}

.mR0 {
  margin-right: 0% !important;
}

.mR5 {
  margin-right: 0.5% !important;
}

.mR10 {
  margin-right: 1% !important;
}

.mR15 {
  margin-right: 1.5% !important;
}

.mR20 {
  margin-right: 2% !important;
}

.mR25 {
  margin-right: 2.5% !important;
}

.mR30 {
  margin-right: 3% !important;
}

.mR35 {
  margin-right: 3.5% !important;
}

.mR40 {
  margin-right: 4% !important;
}

.mR45 {
  margin-right: 4.5% !important;
}

.mR50 {
  margin-right: 5% !important;
}

.mR55 {
  margin-right: 5.5% !important;
}

.mR60 {
  margin-right: 6% !important;
}

.mR65 {
  margin-right: 6.5% !important;
}

.mR70 {
  margin-right: 7% !important;
}

.mR75 {
  margin-right: 7.5% !important;
}

.mR80 {
  margin-right: 8% !important;
}

.mR85 {
  margin-right: 8.5% !important;
}

.mR90 {
  margin-right: 9% !important;
}

.mR95 {
  margin-right: 9.5% !important;
}

.mR100 {
  margin-right: 10% !important;
}

.mR105 {
  margin-right: 10.5% !important;
}

.mR110 {
  margin-right: 11% !important;
}

.mR115 {
  margin-right: 11.5% !important;
}

.mR120 {
  margin-right: 12% !important;
}

.mR125 {
  margin-right: 12.5% !important;
}

.mR130 {
  margin-right: 13% !important;
}

.mR135 {
  margin-right: 13.5% !important;
}

.mR140 {
  margin-right: 14% !important;
}

.mR145 {
  margin-right: 14.5% !important;
}

.mR150 {
  margin-right: 15% !important;
}

.pT0 {
  padding-top: 0% !important;
}

.pT5 {
  padding-top: 0.5% !important;
}

.pT10 {
  padding-top: 1% !important;
}

.pT15 {
  padding-top: 1.5% !important;
}

.pT20 {
  padding-top: 2% !important;
}

.pT25 {
  padding-top: 2.5% !important;
}

.pT30 {
  padding-top: 3% !important;
}

.pT35 {
  padding-top: 3.5% !important;
}

.pT40 {
  padding-top: 4% !important;
}

.pT45 {
  padding-top: 4.5% !important;
}

.pT50 {
  padding-top: 5% !important;
}

.pT55 {
  padding-top: 5.5% !important;
}

.pT60 {
  padding-top: 6% !important;
}

.pT65 {
  padding-top: 6.5% !important;
}

.pT70 {
  padding-top: 7% !important;
}

.pT75 {
  padding-top: 7.5% !important;
}

.pT80 {
  padding-top: 8% !important;
}

.pT85 {
  padding-top: 8.5% !important;
}

.pT90 {
  padding-top: 9% !important;
}

.pT95 {
  padding-top: 9.5% !important;
}

.pT100 {
  padding-top: 10% !important;
}

.pT105 {
  padding-top: 10.5% !important;
}

.pT110 {
  padding-top: 11% !important;
}

.pT115 {
  padding-top: 11.5% !important;
}

.pT120 {
  padding-top: 12% !important;
}

.pT125 {
  padding-top: 12.5% !important;
}

.pT130 {
  padding-top: 13% !important;
}

.pT135 {
  padding-top: 13.5% !important;
}

.pT140 {
  padding-top: 14% !important;
}

.pT145 {
  padding-top: 14.5% !important;
}

.pT150 {
  padding-top: 15% !important;
}

.pB0 {
  padding-bottom: 0% !important;
}

.pB5 {
  padding-bottom: 0.5% !important;
}

.pB10 {
  padding-bottom: 1% !important;
}

.pB15 {
  padding-bottom: 1.5% !important;
}

.pB20 {
  padding-bottom: 2% !important;
}

.pB25 {
  padding-bottom: 2.5% !important;
}

.pB30 {
  padding-bottom: 3% !important;
}

.pB35 {
  padding-bottom: 3.5% !important;
}

.pB40 {
  padding-bottom: 4% !important;
}

.pB45 {
  padding-bottom: 4.5% !important;
}

.pB50 {
  padding-bottom: 5% !important;
}

.pB55 {
  padding-bottom: 5.5% !important;
}

.pB60 {
  padding-bottom: 6% !important;
}

.pB65 {
  padding-bottom: 6.5% !important;
}

.pB70 {
  padding-bottom: 7% !important;
}

.pB75 {
  padding-bottom: 7.5% !important;
}

.pB80 {
  padding-bottom: 8% !important;
}

.pB85 {
  padding-bottom: 8.5% !important;
}

.pB90 {
  padding-bottom: 9% !important;
}

.pB95 {
  padding-bottom: 9.5% !important;
}

.pB100 {
  padding-bottom: 10% !important;
}

.pB105 {
  padding-bottom: 10.5% !important;
}

.pB110 {
  padding-bottom: 11% !important;
}

.pB115 {
  padding-bottom: 11.5% !important;
}

.pB120 {
  padding-bottom: 12% !important;
}

.pB125 {
  padding-bottom: 12.5% !important;
}

.pB130 {
  padding-bottom: 13% !important;
}

.pB135 {
  padding-bottom: 13.5% !important;
}

.pB140 {
  padding-bottom: 14% !important;
}

.pB145 {
  padding-bottom: 14.5% !important;
}

.pB150 {
  padding-bottom: 15% !important;
}

.pL0 {
  padding-left: 0% !important;
}

.pL5 {
  padding-left: 0.5% !important;
}

.pL10 {
  padding-left: 1% !important;
}

.pL15 {
  padding-left: 1.5% !important;
}

.pL20 {
  padding-left: 2% !important;
}

.pL25 {
  padding-left: 2.5% !important;
}

.pL30 {
  padding-left: 3% !important;
}

.pL35 {
  padding-left: 3.5% !important;
}

.pL40 {
  padding-left: 4% !important;
}

.pL45 {
  padding-left: 4.5% !important;
}

.pL50 {
  padding-left: 5% !important;
}

.pL55 {
  padding-left: 5.5% !important;
}

.pL60 {
  padding-left: 6% !important;
}

.pL65 {
  padding-left: 6.5% !important;
}

.pL70 {
  padding-left: 7% !important;
}

.pL75 {
  padding-left: 7.5% !important;
}

.pL80 {
  padding-left: 8% !important;
}

.pL85 {
  padding-left: 8.5% !important;
}

.pL90 {
  padding-left: 9% !important;
}

.pL95 {
  padding-left: 9.5% !important;
}

.pL100 {
  padding-left: 10% !important;
}

.pL105 {
  padding-left: 10.5% !important;
}

.pL110 {
  padding-left: 11% !important;
}

.pL115 {
  padding-left: 11.5% !important;
}

.pL120 {
  padding-left: 12% !important;
}

.pL125 {
  padding-left: 12.5% !important;
}

.pL130 {
  padding-left: 13% !important;
}

.pL135 {
  padding-left: 13.5% !important;
}

.pL140 {
  padding-left: 14% !important;
}

.pL145 {
  padding-left: 14.5% !important;
}

.pL150 {
  padding-left: 15% !important;
}

.pR0 {
  padding-right: 0% !important;
}

.pR5 {
  padding-right: 0.5% !important;
}

.pR10 {
  padding-right: 1% !important;
}

.pR15 {
  padding-right: 1.5% !important;
}

.pR20 {
  padding-right: 2% !important;
}

.pR25 {
  padding-right: 2.5% !important;
}

.pR30 {
  padding-right: 3% !important;
}

.pR35 {
  padding-right: 3.5% !important;
}

.pR40 {
  padding-right: 4% !important;
}

.pR45 {
  padding-right: 4.5% !important;
}

.pR50 {
  padding-right: 5% !important;
}

.pR55 {
  padding-right: 5.5% !important;
}

.pR60 {
  padding-right: 6% !important;
}

.pR65 {
  padding-right: 6.5% !important;
}

.pR70 {
  padding-right: 7% !important;
}

.pR75 {
  padding-right: 7.5% !important;
}

.pR80 {
  padding-right: 8% !important;
}

.pR85 {
  padding-right: 8.5% !important;
}

.pR90 {
  padding-right: 9% !important;
}

.pR95 {
  padding-right: 9.5% !important;
}

.pR100 {
  padding-right: 10% !important;
}

.pR105 {
  padding-right: 10.5% !important;
}

.pR110 {
  padding-right: 11% !important;
}

.pR115 {
  padding-right: 11.5% !important;
}

.pR120 {
  padding-right: 12% !important;
}

.pR125 {
  padding-right: 12.5% !important;
}

.pR130 {
  padding-right: 13% !important;
}

.pR135 {
  padding-right: 13.5% !important;
}

.pR140 {
  padding-right: 14% !important;
}

.pR145 {
  padding-right: 14.5% !important;
}

.pR150 {
  padding-right: 15% !important;
}

.pA0 {
  padding: 0% !important;
}

.pA5 {
  padding: 0.5% !important;
}

.pA10 {
  padding: 1% !important;
}

.pA15 {
  padding: 1.5% !important;
}

.pA20 {
  padding: 2% !important;
}

.pA25 {
  padding: 2.5% !important;
}

.pA30 {
  padding: 3% !important;
}

.pA35 {
  padding: 3.5% !important;
}

.pA40 {
  padding: 4% !important;
}

.pA45 {
  padding: 4.5% !important;
}

.pA50 {
  padding: 5% !important;
}

.pA55 {
  padding: 5.5% !important;
}

.pA60 {
  padding: 6% !important;
}

.pA65 {
  padding: 6.5% !important;
}

.pA70 {
  padding: 7% !important;
}

.pA75 {
  padding: 7.5% !important;
}

.pA80 {
  padding: 8% !important;
}

.pA85 {
  padding: 8.5% !important;
}

.pA90 {
  padding: 9% !important;
}

.pA95 {
  padding: 9.5% !important;
}

.pA100 {
  padding: 10% !important;
}

.pA105 {
  padding: 10.5% !important;
}

.pA110 {
  padding: 11% !important;
}

.pA115 {
  padding: 11.5% !important;
}

.pA120 {
  padding: 12% !important;
}

.pA125 {
  padding: 12.5% !important;
}

.pA130 {
  padding: 13% !important;
}

.pA135 {
  padding: 13.5% !important;
}

.pA140 {
  padding: 14% !important;
}

.pA145 {
  padding: 14.5% !important;
}

.pA150 {
  padding-left: 15% !important;
}
/* ---------------------------------------------------------------------------
  ★インスタグラム
--------------------------------------------------------------------------- */
.instagramcont li {
  width: calc(100% / 2);
}
/* ---------------------------------------------------------------------------
  ★TABLE
--------------------------------------------------------------------------- */
.c_table_01 table tbody tr td {
  /* border-bottom: 1px solid #f4f6f5;
  border-right: 1px solid #edf2f6;
  border-left: 1px solid #edf2f6; */
  vertical-align: top;
  padding: 12px 13px;
  word-break: break-all;
  width: 100%;
  display: block;
}

.c_table_01 table tbody tr th {
  /* border: 1px solid #edf2f6; */
  /* background: rgba(86, 159, 209, 0.2); */
  vertical-align: top;
  padding: 12px 13px;
  /* color: #2f57a2;
  font-weight: 600; */
  width: 100% !important;
  display: block;
  word-break: break-all;
}


/* 横スクロール */
.c_table_03 {
  overflow-x: scroll;
}

.c_table_03 table {
  width: 100%;
  min-width: 600px;
  border-collapse: collapse;
}

.c_table_03 table tr th,
.c_table_03 table tr td {
  padding: 10px !important;
  word-break: break-all !important;
}

/* 横スクロールアニメーション */
.scroll-hint {
  display: inline-flex;
  /* align-items: center; */
  gap: 6px;
}
.scroll-hint-icon {
  animation: swipe 1.6s ease-in-out infinite;
}
@keyframes swipe {
  0%   { transform: translateX(4px);  opacity: 0.7; }
  40%  { transform: translateX(-4px); opacity: 1;   }
  80%  { transform: translateX(4px);  opacity: 0.7; }
  100% { transform: translateX(4px);  opacity: 0.7; }
}
/* .scroll-hint-text { font-size: 12px; color: #333c59; } */
/* ---------------------------------------------------------------------------
  ★背景
--------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------
  ★LIST
--------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------
  ★BASE
--------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------
  ★タイトル
--------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------
  ★テキスト
--------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------
  ★メールフォームプロ
--------------------------------------------------------------------------- */
@media screen and (max-width: 800px) {
  form#mailformpro dl dt {
    float: none;
    width: auto;
    font-size: 12px;
    padding: 5px;
    text-align: left;
  }
  form#mailformpro dl dd {
    clear: both;
    border-top: none;
    padding: 5px 15px;
    font-size: 12px;
    line-height: 1.5em;
  }
  div.mfp_buttons button {
    font-size: 14px;
  }
  div#mfp_phase_confirm h4 {
    font-size: 18px;
  }
  ul#mfp_phase_stat {
    padding: 0px;
    text-align: left;
  }
  ul#mfp_phase_stat li {
    text-align: center;
    padding: 5px 0px;
    border-radius: 3px;
    margin: 5px;
    list-style: none;
    font-size: 14px;
    width: 28%;
  }
  ul#mfp_phase_stat li.mfp_phase_arrow {
    bos-shadow: none;
    display: none;
  }
  ul#mfp_phase_stat li.mfp_active_phase {
  }
  ul#mfp_phase_stat li.mfp_inactive_phase {
  }
  table#mfp_confirm_table tr th {
    white-space: wrap;
    width: auto;
  }
  div#mfp_thanks {
    text-align: center;
    font-size: 18px;
    padding: 20px 0px;
  }
  div#mfp_thanks strong {
    color: #c00;
    font-size: 24px;
    display: block;
  }
}
/* ---------------------------------------------------------------------------
  ★ハンバーガーメニュー
--------------------------------------------------------------------------- */
/* アコーディオンメニュー */
.accordion-list:not(:first-child) {
  margin-top: 10px;
}

.accordion-title {
  cursor: pointer;
  padding: 10px 20px;
  position: relative;
  color: #fefefe;
}

.accordion-title:after {
  position: relative;
  display: block;
  content: "";
  right: -12px;
  top: 2em;
  width: 1em;
  height: 1em;
  transition: all 0.4s ease-in-out;
  background: url(../img/plus.png) no-repeat center left/100%;
}

.accordion-title.open:after {
  background: url(../img/minus.png) no-repeat center left/100%;
  transform: rotate(180deg);
}

.global-nav .sp_btnArea {
  margin-right: auto;
  margin-left: auto;
  width: 90%;
}

.global-nav .btn01 {
  width: 100%;
  text-align: center;
}

.global-nav .btn01.line {
  background: url(../img/arrow02_w.svg) no-repeat center right 1em/1.2em,
    linear-gradient(90deg, #ff5500, #ea8b00);
  color: #fff;
}

.global-nav {
  position: fixed;
  right: -320px;
  /* これで隠れる */
  top: 0;
  height: 100vh;
  color: #fefefe;
  transition: all 0.6s;
  z-index: 999999;
  overflow-y: auto;
  background: #efebe8;
}

.global-nav .accordion-container {
  width: 300px;
  margin: 0 auto;
  background: #efebe8;
  padding: 6%;
}

.global-nav .accordion-container.con02 {
  display: flex;
  justify-content: center;
  flex-direction: column;
}

.global-nav .accordion-container .accordion-title02 {
  position: relative;
  margin: 0;
  border-bottom: 2px solid #fff;
  padding: 1.5em 0.8em 0.3em;
  font-weight: normal;
  color: #231815;
  cursor: pointer;
  display: block;
  font-weight: bold;
  background: #efebe8;
  display: block;
  background-size: 16px;
}

.accordion-title {
  padding: 0 !important;
  width: 3em;
  height: 3.5em;
  position: absolute;
  top: 0;
  right: 0;
}

.global-nav .accordion-container .accordion-content li {
  padding: 0.3em 0.3em 0.3em 4.25em;
  border-bottom: none;
}

.global-nav .accordion-container .accordion-content li a {
  color: #fefefe;
}

.global-nav .btn01 a {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

.global-nav .center a {
  color: #3c3c3c;
}

.accordion-content li {
  padding: 5px 20px;
  border-bottom: 1px solid #949292;
}

.hamburger {
  position: absolute;
  right: 0;
  top: 0;
  width: 58px;
  height: 56px;
  cursor: pointer;
  z-index: 100;
  background: linear-gradient(to right, rgba(225, 160, 172, 0.9) 0%, rgba(214, 152, 164, 0.9) 100%);
  /* border-radius: 0.5em; */
}

.hamburger__line {
  position: absolute;
  left: 18px;
  width: 24px;
  height: 2px;
  background-color: #fff;
  transition: all 0.6s;
  border-radius: 50em;
}

.hamburger__line--1 {
  top: 19px;
}

.hamburger__line--2 {
  top: 26px;
}

.hamburger__line--3 {
  top: 33px;
}

.black-bg01 {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  z-index: 100;
  background-color: #000;
  opacity: 0;
  visibility: hidden;
  transition: all 0.6s;
  cursor: pointer;
}

/* 表示された時用のCSS */
.nav-open .global-nav {
  right: 0;
}

.nav-open .black-bg01 {
  opacity: 0.8;
  visibility: visible;
}

.nav-open .hamburger__line--1 {
  transform: rotate(45deg);
  top: 20px;
}

.nav-open .hamburger__line--2 {
  width: 0;
  left: 50%;
}

.nav-open .hamburger__line--3 {
  transform: rotate(-45deg);
  top: 20px;
}

.accordion-box {
  position: relative;
}

.accordion-close {
  display: none;
  padding-left: 0.8em;
  padding-bottom: 0.8em;
  padding-top: 0.3em;
  border-bottom: 1px solid #fff;
}

.nav li:nth-child(1) a {
  border-left: none !important;
}

.accordion-close li a {
  padding: 6px 0 0px;
  font-weight: 500;
  color: #0a0a0a;
  font-weight: bold;
}

/* =======================================
	★TOP
========================================== */

/* =======================================
	★form
========================================== */
/* #contact .popup-inner {
  padding: 40px 20px;
} */

input.short {
  width: 50%;
}

.long.mL10 {
  margin-left: 0 !important;
}

form#mailformpro label {
  white-space: normal !important;
  text-align: left !important;
}

form#mailformpro label>span {
  margin-left: 5px;
}

#contact label.c_b {
  line-height: 140% !important;
}

/* =======================================
	★下層
========================================== */

/* アコーディオン */
dt.plus {
  padding: 10px 2.5em 8px 0.5em;
}

dt.plus:before {
  right: 10px;
}

.accordion dd {
  width: calc(100% - 1em);
  margin: 10px auto 10px;
}

/* =======================================
	★微調整
========================================== */
.header02 > div > div.flex1 {
  display: none;
}

.header02 {
  margin-right: 58px;
}

.header02 .logo {
  width: 10em;
  margin-top: 0 !important;
}

.hContact {
  width: 65px;
  height: 56px;
  padding: 5px;
}

.hContact .f14 {
  font-size: 9px !important;
  margin-top: 5.5% !important;
}

.hContact .w_2_5em {
  width: 1.5em;
}

.topNews h2 {
  width: fit-content;
  margin-right: 2.5%;
}

.topNews02 > div.flex {
  flex-direction: column;
}

.topNews02 h2 {
  margin-right: 0;
  margin-bottom: 5%;
}

.topNews02 .o_02 {
  border-left: none;
  padding-left: 0;
}

.topNews02 .o_02 li {
  margin-bottom: 3%;
}

.topNews .c_subTit {
  width: 85%;
}

.o_02 .head,
.footer02_nav {
  flex-wrap: wrap;
}

.c_subTit {
  width: 15em;
}

.footer02_nav > * {
  width: 50%;
  margin-top: 4% !important;
}

.cl4_6 {
  flex-direction: column;
}
.cl4_6 > * {
  width: 100% !important;
}

.btn03_c a {
  padding: 0.8em 3.3em;
}

.main {
  background: url(../img/mv_sp.jpg) no-repeat center / cover;
  /* aspect-ratio: 900 / 704; */
  aspect-ratio: 4 / 3;
  border-top: 0vw solid #fff;
  /* padding-top: 58px; */
  margin-top: 58px;
}


.mvTxt_sp {
  background: url(../img/mvTxt_sp.svg) no-repeat center / contain;
  position: absolute;
  bottom: -16%;
  left: 2.5%;
  width: 53vw;
  aspect-ratio: 142 / 150;
  height: auto;
}

.o_02 {
  padding-left: 5.5%;
  height: auto;
}

header {
  height: 56px;
  place-content: center;
}

.header02 .logo p {
  font-size: 11px !important;
}

.f45 {
  font-size: 3rem !important;
}

.home01 > div:nth-of-type(2) .cl3_7 p,
.home01 > div:nth-of-type(3) .cl3_7 p,
.home01 > div:nth-of-type(4) .cl3_7 p,
.home01 > div:nth-of-type(5) .cl3_7 p,
.home01 > div:nth-of-type(6) .cl3_7 > *:nth-child(even) {
  width: 100%;
}

.number01, .number02, .number03, .number04, .number05 {
  width: 50%;
}

.main02::before {
  top: -22%;
  right: 12.5%;
  width: calc(100vw * 205 / 900);
  height: calc(100vw * 195 / 900);
}

.home01 .bgB .flex.flex_right {
  flex-direction: column;
}

.home01 .bgB .btn01 {
  margin-top: 5% !important;
}

.brbg_w, .brbg_w::after {
  height: 4em;
}

.main03::before {
  top: -17vw;
  left: 1%;
  width: calc(100vw * 175 / 900);
  height: calc(100vw * 275 / 900);
}

.home02 .bgW {
  margin-top: 10% !important;
}

.home02 .cl33 > * {
  width: 100%;
  margin-bottom: 8%;
}

.dm::before,
.ryutu::before,
.buturyu::before,
.shien::before {
  top: -17px;
  left: -24px;
  width: calc(100vw * 210 / 900);
  height: calc(100vw * 220 / 900);
}

.ec::before {
  top: -17px;
  left: -24px;
  width: calc(100vw * 260 / 900);
  height: calc(100vw * 175 / 900);
}

.main04::after {
  top: -10%;
  right: 2%;
  width: calc(100vw * 200 / 900);
  height: calc(100vw * 220 / 900);
}

.home03 .fukidashi {
  transform: translateX(-3%);
  margin-top: -8%;
}

.home03 .pT125 {
  padding-top: 15.5% !important;
}

.bgP::before {
  height: 105%;
  width: 88.5%;
  top: -5%;
}

.home03 .cl4_6 > *:nth-child(odd) {
  margin-bottom: 2%;
}

.home03 .bboxP {
  margin-top: 6.5% !important;
}
.home03 .bboxP .flex {
  flex-direction: column;
}

.main05::after {
  bottom: -7.5%;
  left: 1.5%;
  width: calc(100vw * 240 / 900);
  height: calc(100vw * 190 / 900);
}

#totop {
  width: calc(100vw * 160 / 900);
  height: calc(100vw * 243 / 900);
}

.main06::after {
  top: -8.5%;
  left: -6.5%;
  width: calc(100vw * 245 / 900);
  height: calc(100vw * 232 / 900);
}

.bboxW {
  width: 88%;
}

.bboxW .pink {
  margin-top: 3%;
}

.home01 .w78_5 {
  width: 93%;
  padding: 4% !important;
}

.btn01 a,
.btn02 a {
  padding-bottom: 5px;
  font-size: inherit;
}

.btn03_l a,
.btn03_c a {
  font-size: inherit;
}

.home02 .btn02 {
  margin-top: 3% !important;
}

.home03 .btn03_l {
  text-align: center !important;
}

.home04 .bboxW {
  margin-top: 10% !important;
}

/* footer::after {
  aspect-ratio: 900 / 1540;
} */

.footer02_02 {
  flex-direction: column;
  gap: 5px;
  text-align: center;
  padding-top: 4% !important;
}

.footer02_02 .w23 {
  width: 50%;
  margin-inline: auto;
}

header .nav p::after {
  display: none;
}

.accordion-title02 ruby {
  font-size: 16px;
}

.global-nav rt {
  text-align: left;
}

.global-nav .hTel,
.global-nav .outsourcing,
.global-nav .takujob {
  width: 100%;
  margin-top: 5%;
}

.global-nav .hTel a {
  justify-content: center;
  align-items: center;
}

.global-nav .f30 {
  font-size: 24px !important;
}

.global-nav .fInsta a,
.global-nav .outsourcing,
.global-nav .takujob {
  border-radius: 5px;
  height: 4em;
}

.global-nav .takujob {
  border-top: 2px solid #e1a0ac;
  margin-top: 4%;
}

.totop_wrap {
  right: -5%;
}

.main_inpages {
  background-position: left 3% bottom -19%, right bottom -40%;
  background-size: 15%, 80%;
  padding: 0;
  height: auto;
  aspect-ratio: 320 / 210;
  padding-top: 0;
  width: 100%;
}

.main_inpages_txt {
  top: 50%;
}

ul.pankuzu {
  font-size: 12px;
}
ul.pankuzu li:nth-child(1) a {
  font-size: 12px;
}

.company02 li {
  padding-left: 1em;
  text-indent: -1em;
}

.company03 .bgP::before {
  top: -1.5%;
  height: 101%;
}

.history dl {
  border-left: solid 2px #e1a0ac;
}
.history dl dt {
  width: 100%;
  letter-spacing: 0.15em;
  left: 1em;
}
.history dl dd {
  width: 100%;
  padding: 0.5em 0 1.5em 1em;
  border-left: none;
}
.history dl dt::before {
  width: 0.9em;
  height: 0.9em;
  right: unset;
  top: 0.5em;
  left: -1.5em;
}

.home03 h2 {
  margin-top: 4% !important;
  margin-inline: auto !important;
  width: 45%;
}

.home03 .h3Tit {
  font-size: clamp(18px, 2vw, 28px);
}

.takujob04 .number01, .takujob04 .number02, .takujob04 .number03 {
  width: 50%;
}

.takujob04 .cl7_3 {
  flex-direction: column-reverse;
}

.takujob01 .inner_700,
.takujob07 .inner_1200 {
  width: 100%;
}

.takujob01 .h2Tit {
  font-size: clamp(18px, 2.29vw, 32px);
}

.takujob01 .f31 {
  font-size: clamp(1.8rem, 5.3vw, 3.1rem) !important;
}

.takujob02 .cl33 > * {
  width: 100%;
}

.takujob02 .cl33 {
  margin-bottom: 3%;
}

.takujob02 .bboxP {
  padding: 4%;
}

.triangle {
  width: 1.5em;
  height: 0.5em;
  margin-bottom: 0% !important;
  margin-top: 1% !important;
}

.takujob02 .cl7_3,
.takujob02 .flex {
  flex-direction: column-reverse;
  margin-bottom: 3%;
}

.takujob03 .bgW {
  padding: 4%;
  width: 100%;
}

.takujob03.main05::after {
  bottom: -8vw;
}

#dm .cl33 > * {
  width: 100%;
}

.nayami h4 {
  height: auto;
  margin-bottom: 2%;
}

.nayami .bboxP {
  padding: 4%;
}

.nayami .cl33 {
  margin-bottom: 3%;
}

.nayami .flex {
  flex-direction: column-reverse;
  margin-bottom: 3%;
}

.nayami .w23 {
  width: 40%;
  margin-inline: auto;
}

.nayami .cl33 > * {
  width: 100%;
}

.kaiketsu {
  width: 50%;
  margin-inline: auto;
}

.takujob04 .w78_5 {
  width: 93%;
}

.takujob04 .main02::before {
  top: -17.5vw;
  right: 0%;
}

.takujob04 .number01, .takujob04 .number02, .takujob04 .number03 {
  width: 35%;
  margin-top: 3%;
  margin-bottom: 2%;
}

.takujob05 {
  padding-top: 12% !important;
}

.takujob05.main03::before {
  top: -13vw;
  left: 0;
}

.takujob05 .cl50 > *:nth-of-type(2),
.takujob05 .cl7_3 > *:nth-of-type(2) {
  margin-top: 6%;
}

.takujob06 .bboxW {
  width: 100%;
}

.takujob06 .btn03_c a {
  width: 100%;
}

.takujob07 .bgP::before {
  top: -2%;
  height: 101%;
}

.takujob07 .cl6_4 {
  flex-direction: column-reverse;
}

.takujob07 .bgW {
  padding: 4% 4% 4% 0;
}

.takujob07 .btn03_l a {
  background: #e1a0ac url(../img/arrowW.png) no-repeat center right 1em / 1.7em;
  padding: 1.1em 2.3em 1.1em 0.5em;
  width: 100%;
}

.main_inpages p.f17 {
  font-size: clamp(10px, 2vw, 18px) !important;
}
#guide .cl33 > *,
#guide .cl25 > * {
  width: 100%;
}

.c_list li:before {
  top: 0.25em;
  left: -1.4em;
}

.guide02 .number01, .guide02 .number02, .guide02 .number03 {
  width: 20vw;
}

.flow li {
  padding: 4%;
  margin-bottom: 8%;
  width: 100%;
}

.flow li:nth-last-of-type(1) {
  margin-bottom: 0;
}

.flow li::after {
  margin-inline: auto;
  top: 103%;
  margin-inline: unset;
  transform: translateX(-50%);
  right: 0;
  left: 50%;
}

.mR5 {
  margin-right: 5px !important;
}

.flow li h4 {
  height: auto;
}

.guide05 .cl33 > div {
  margin-bottom: 5%;
}

.dm02 .w48 {
  width: 100%;
}

.dm02 .bboxP {
  margin-top: 7% !important;
}

.customer .bgP::before {
  top: -2%;
  height: 102%;
}

.customer .bgW02 {
  background: #fff;
  width: 95%;
}

.customer .inner_1000 {
  width: 100%;
}

#ryoumen .cl33 > *,
.ryoumen02 .flex > * {
  width: 100%;
}

.ryoumen05 .flex {
  flex-wrap: wrap;
}

#worldwide .cl33 > *,
.worldwide02 .flex li {
  width: 100%;
}

.worldwide02 .main04::after {
  top: -7%;
}

#worldwide .btn02 a,
#worldwide .btn01 a {
  font-size: inherit;
}

#worldwide .bboxW {
  width: 100%;
}

.worldwide04 .flow li {
  width: 100%;
}

.worldwide04 .flow li > div::after {
  top: 105%;
  transform: rotate(0deg) translateX(-50%);
  right: unset;
  left: 50%;
}

.worldwide04 .flow li:nth-of-type(4) > div::after {
  top: 140%;
}

.worldwide05 td {
  text-align: left;
}

.worldwide06 .w78_5 {
  width: 93%;
}

.customer .flex {
  display: block;
  margin-bottom: 1%;
}

.customer h4 {
  margin-bottom: 2%;
}

.worldwide08 .main06::after {
  top: -15.5%;
}

.worldwide08.main06::after {
  top: -14%;
  left: 0.5%;
}

.worldwide07 {
  padding-bottom: 15% !important;
}

.csrimage::after {
  top: -19vw;
  right: -3vw;
  width: calc(100vw * 220 / 900);
  height: calc(100vw * 245 / 900);
}

.csr_cont .flex,
.csr02 .cl3_7 {
  flex-direction: column;
}

.sdgsArea {
  margin-top: 3%;
}

.csr02 .cl3_7 > * {
  width: 100% !important;
  margin-bottom: 3%;
}

.csr02 .btn02:nth-last-of-type(1) {
  margin-top: 4%;
}

.single-news01 .w70 {
  width: 100%;
}

#faq .btn01 a {
  font-size: inherit;
}

.contact02 .c_table_01 table tbody tr td {
  padding: 3%;
}

#contact label.c_b {
  align-items: start;
}

.fTel a {
  gap: 2%;
}

.fMail img {
  width: 3em;
  margin-top: 0em;
}

.contact01 .hTel img {
  margin-top: 0.3em;
}

#butsuryu .cl33 > *,
#sales-support .cl25 > *,
.sales-support02 .flex > *,
.sales-support03 .bboxW {
  width: 100%;
}

.butsuryu03 .flow li h4 {
  display: flex;
  justify-content: center;
}

.sales-support03 .main06::after {
  display: none;
}

.guidelines .bgB {
  width: 100%;
  padding: 4%;
}

#faq .u_linkArea li,
#takujob .u_linkArea li {
  width: 100%;
}

.takujob05 li {
  border-right: none;
  border-bottom: 2px solid #efebe8;
  padding: 3% 0%;
}

.sales-support02.main04::after {
  top: -8vw;
  right: 8vw;
}

.sales-support03.main06::after {
  display: none;
}

footer {
  padding-top: 9%;
}

.single-news01 .w60 {
  width: 100%;
}

.archive-news01 .c_subTit {
  width: 100%;
}

.archive-news01 li {
  padding-bottom: 5%;
}

.price-table th, .price-table td {
  padding: 10px;
  line-height: 1.4;
}

#single-news01 p img {
  width: 100%;
}

.guide01 .inner_1100 > div:nth-of-type(2) .c_list li:before {
  top: 0.45em;
}

.dm02 .bboxP > * {
  text-align: left !important;
}

/* .takujob01.main05::after {
  bottom: -11vw;
} */

.takujob01 .main04::after,
.takujob01.main05::after {
  display: none;
}

.guide03 .c_table_02 .fukidashi {
  font-size: 16px;
  line-height: 140%;
}
.guide03 .c_table_02 table {
  min-width: 900px;
}
.guide03 .c_table_02 table tbody tr th,
.guide03 .c_table_02 table tbody tr td {
  padding: 0.5em 0.7em;
}
.guide03 .c_table_02 table tbody tr {
  display: flex;
}

.guide03 .c_table_02 table tbody tr th {
  width: 26%;
}
.guide03 .c_table_02 table tbody tr td {
  width: 37%;
}
.guide03 .c_table_02 table tbody tr:nth-of-type(1) th:nth-of-type(2),
.guide03 .c_table_02 table tbody tr:nth-of-type(1) th:nth-of-type(3) {
  width: 37%;
}

.contact02 .main02::before {
  top: -12vw;
  right: -2%;
  width: calc(100vw * 130 / 900);
  height: calc(100vw * 127 / 900);
}

.contact02 .main02::after {
  width: calc(100vw * 110 / 900);
  height: calc(100vw * 103 / 900);
  max-width: 100px;
}

.underline::after {
  height: 7px;
}

.archive-news01 .c_subTit p {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal;
  width: 100%;
}
