@charset "UTF-8";

/* ---------------------------------------------------------------------------
  ★共通
--------------------------------------------------------------------------- */
:root {
  scroll-padding-top: 60px;
}
html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}
body {
  font-size: 1.3rem;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 1.5;
  font-weight: normal;
  max-width: 100%;
}
object {
  pointer-events: none;
}
.pc {
  display: none !important;
}
a {
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

section {
  padding: 60px 0;
}
section p:not(:last-child) {
  margin-bottom: 15px;
}
p,
li,
dt,
dd,
th,
td,
input {
  font-size: 1.5rem;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 1.5rem;
}

main section {
  padding: 45px 0 48px;
}
.inner900,
.inner1000,
.inner1100,
.inner1200,
.inner1300,
.inner1400 {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
}
.txtImgBox .txts + figure,
.txtImgBox figure + .txts {
  margin-top: 30px;
}

/* =======================================
	margin / padding
========================================== */
.mA0 {
  margin: 0% !important;
}
.mA5 {
  margin: 2.5% !important;
}
.mA10 {
  margin: 2.5% !important;
}
.mA15 {
  margin: 2.5% !important;
}
.mA20 {
  margin: 5% !important;
}
.mA25 {
  margin: 5% !important;
}
.mA30 {
  margin: 5% !important;
}
.mA35 {
  margin: 7.5% !important;
}
.mA40 {
  margin: 7.5% !important;
}
.mA45 {
  margin: 7.5% !important;
}
.mA50 {
  margin: 10% !important;
}
.mA55 {
  margin: 10% !important;
}
.mA60 {
  margin: 10% !important;
}
.mA65 {
  margin: 12.5% !important;
}
.mA70 {
  margin: 12.5% !important;
}
.mA75 {
  margin: 12.5% !important;
}
.mA80 {
  margin: 15% !important;
}
.mA85 {
  margin: 15% !important;
}
.mA90 {
  margin: 15% !important;
}
.mA95 {
  margin: 17.5% !important;
}
.mA100 {
  margin: 17.5% !important;
}
.mA105 {
  margin: 17.5% !important;
}
.mA110 {
  margin: 20% !important;
}
.mA115 {
  margin: 20% !important;
}
.mA120 {
  margin: 20% !important;
}
.mA125 {
  margin: 22.5% !important;
}
.mA130 {
  margin: 22.5% !important;
}
.mA135 {
  margin: 22.5% !important;
}
.mA140 {
  margin: 25% !important;
}
.mA145 {
  margin: 25% !important;
}
.mA150 {
  margin: 25% !important;
}
.mT10 {
  margin-top: 2.5% !important;
}
.mT15 {
  margin-top: 2.5% !important;
}
.mT20 {
  margin-top: 5% !important;
}
.mT25 {
  margin-top: 5% !important;
}
.mT30 {
  margin-top: 5% !important;
}
.mT35 {
  margin-top: 7.5% !important;
}
.mT40 {
  margin-top: 7.5% !important;
}
.mT45 {
  margin-top: 7.5% !important;
}
.mT50 {
  margin-top: 12% !important;
}
.mT55 {
  margin-top: 10% !important;
}
.mT60 {
  margin-top: 10% !important;
}
.mT65 {
  margin-top: 12.5% !important;
}
.mT70 {
  margin-top: 12.5% !important;
}
.mT75 {
  margin-top: 12.5% !important;
}
.mT80 {
  margin-top: 15% !important;
}
.mT85 {
  margin-top: 15% !important;
}
.mT90 {
  margin-top: 15% !important;
}
.mT95 {
  margin-top: 17.5% !important;
}
.mT100 {
  margin-top: 17.5% !important;
}
.mT105 {
  margin-top: 17.5% !important;
}
.mT110 {
  margin-top: 20% !important;
}
.mT115 {
  margin-top: 20% !important;
}
.mT120 {
  margin-top: 20% !important;
}
.mT125 {
  margin-top: 22.5% !important;
}
.mT130 {
  margin-top: 22.5% !important;
}
.mT135 {
  margin-top: 22.5% !important;
}
.mT140 {
  margin-top: 25% !important;
}
.mT145 {
  margin-top: 25% !important;
}
.mT150 {
  margin-top: 25% !important;
}
.mB0 {
  margin-bottom: 0% !important;
}
.mB5 {
  margin-bottom: 2.5% !important;
}
.mB10 {
  margin-bottom: 2.5% !important;
}
.mB15 {
  margin-bottom: 2.5% !important;
}
.mB20 {
  margin-bottom: 5% !important;
}
.mB25 {
  margin-bottom: 5% !important;
}
.mB30 {
  margin-bottom: 5% !important;
}
.mB35 {
  margin-bottom: 7.5% !important;
}
.mB40 {
  margin-bottom: 7.5% !important;
}
.mB45 {
  margin-bottom: 7.5% !important;
}
.mB50 {
  margin-bottom: 10% !important;
}
.mB55 {
  margin-bottom: 10% !important;
}
.mB60 {
  margin-bottom: 10% !important;
}
.mB65 {
  margin-bottom: 12.5% !important;
}
.mB70 {
  margin-bottom: 12.5% !important;
}
.mB75 {
  margin-bottom: 12.5% !important;
}
.mB80 {
  margin-bottom: 15% !important;
}
.mB85 {
  margin-bottom: 15% !important;
}
.mB90 {
  margin-bottom: 15% !important;
}
.mB95 {
  margin-bottom: 17.5% !important;
}
.mB100 {
  margin-bottom: 17.5% !important;
}
.mB105 {
  margin-bottom: 17.5% !important;
}
.mB110 {
  margin-bottom: 20% !important;
}
.mB115 {
  margin-bottom: 20% !important;
}
.mB120 {
  margin-bottom: 20% !important;
}
.mB125 {
  margin-bottom: 22.5% !important;
}
.mB130 {
  margin-bottom: 22.5% !important;
}
.mB135 {
  margin-bottom: 22.5% !important;
}
.mB140 {
  margin-bottom: 25% !important;
}
.mB145 {
  margin-bottom: 25% !important;
}
.mB150 {
  margin-bottom: 15% !important;
}
.mL0 {
  margin-left: 0% !important;
}
.mL5 {
  margin-left: 2.5% !important;
}
.mL10 {
  margin-left: 2.5% !important;
}
.mL15 {
  margin-left: 2.5% !important;
}
.mL20 {
  margin-left: 5% !important;
}
.mL25 {
  margin-left: 5% !important;
}
.mL30 {
  margin-left: 5% !important;
}
.mL35 {
  margin-left: 7.5% !important;
}
.mL40 {
  margin-left: 7.5% !important;
}
.mL45 {
  margin-left: 7.5% !important;
}
.mL50 {
  margin-left: 10% !important;
}
.mL55 {
  margin-left: 10% !important;
}
.mL60 {
  margin-left: 10% !important;
}
.mL65 {
  margin-left: 12.5% !important;
}
.mL70 {
  margin-left: 12.5% !important;
}
.mL75 {
  margin-left: 12.5% !important;
}
.mL80 {
  margin-left: 15% !important;
}
.mL85 {
  margin-left: 15% !important;
}
.mL90 {
  margin-left: 15% !important;
}
.mL95 {
  margin-left: 17.5% !important;
}
.mL100 {
  margin-left: 17.5% !important;
}
.mL105 {
  margin-left: 17.5% !important;
}
.mL110 {
  margin-left: 20% !important;
}
.mL115 {
  margin-left: 20% !important;
}
.mL120 {
  margin-left: 20% !important;
}
.mL125 {
  margin-left: 22.5% !important;
}
.mL130 {
  margin-left: 22.5% !important;
}
.mL135 {
  margin-left: 22.5% !important;
}
.mL140 {
  margin-left: 25% !important;
}
.mL145 {
  margin-left: 25% !important;
}
.mL150 {
  margin-left: 25% !important;
}
.mR0 {
  margin-right: 0% !important;
}
.mR5 {
  margin-right: 2.5% !important;
}
.mR10 {
  margin-right: 2.5% !important;
}
.mR15 {
  margin-right: 2.5% !important;
}
.mR20 {
  margin-right: 5% !important;
}
.mR25 {
  margin-right: 5% !important;
}
.mR30 {
  margin-right: 5% !important;
}
.mR35 {
  margin-right: 7.5% !important;
}
.mR40 {
  margin-right: 7.5% !important;
}
.mR45 {
  margin-right: 7.5% !important;
}
.mR50 {
  margin-right: 10% !important;
}
.mR55 {
  margin-right: 10% !important;
}
.mR60 {
  margin-right: 10% !important;
}
.mR65 {
  margin-right: 12.5% !important;
}
.mR70 {
  margin-right: 12.5% !important;
}
.mR75 {
  margin-right: 12.5% !important;
}
.mR80 {
  margin-right: 15% !important;
}
.mR85 {
  margin-right: 15% !important;
}
.mR90 {
  margin-right: 15% !important;
}
.mR95 {
  margin-right: 17.5% !important;
}
.mR100 {
  margin-right: 17.5% !important;
}
.mR105 {
  margin-right: 17.5% !important;
}
.mR110 {
  margin-right: 20% !important;
}
.mR115 {
  margin-right: 20% !important;
}
.mR120 {
  margin-right: 20% !important;
}
.mR125 {
  margin-right: 22.5% !important;
}
.mR130 {
  margin-right: 22.5% !important;
}
.mR135 {
  margin-right: 22.5% !important;
}
.mR140 {
  margin-right: 25% !important;
}
.mR145 {
  margin-right: 25% !important;
}
.mR150 {
  margin-right: 25% !important;
}
.pT0 {
  padding-top: 0% !important;
}
.pT5 {
  padding-top: 2.5% !important;
}
.pT10 {
  padding-top: 2.5% !important;
}
.pT15 {
  padding-top: 2.5% !important;
}
.pT20 {
  padding-top: 5% !important;
}
.pT25 {
  padding-top: 5% !important;
}
.pT30 {
  padding-top: 5% !important;
}
.pT35 {
  padding-top: 7.5% !important;
}
.pT40 {
  padding-top: 7.5% !important;
}
.pT45 {
  padding-top: 7.5% !important;
}
.pT50 {
  padding-top: 10% !important;
}
.pT55 {
  padding-top: 10% !important;
}
.pT60 {
  padding-top: 10% !important;
}
.pT65 {
  padding-top: 12.5% !important;
}
.pT70 {
  padding-top: 12.5% !important;
}
.pT75 {
  padding-top: 12.5% !important;
}
.pT80 {
  padding-top: 15% !important;
}
.pT85 {
  padding-top: 15% !important;
}
.pT90 {
  padding-top: 15% !important;
}
.pT95 {
  padding-top: 17.5% !important;
}
.pT100 {
  padding-top: 17.5% !important;
}
.pT105 {
  padding-top: 17.5% !important;
}
.pT110 {
  padding-top: 20% !important;
}
.pT115 {
  padding-top: 20% !important;
}
.pT120 {
  padding-top: 20% !important;
}
.pT125 {
  padding-top: 22.5% !important;
}
.pT130 {
  padding-top: 22.5% !important;
}
.pT135 {
  padding-top: 22.5% !important;
}
.pT140 {
  padding-top: 25% !important;
}
.pT145 {
  padding-top: 25% !important;
}
.pT150 {
  padding-top: 25% !important;
}
.pB0 {
  padding-bottom: 0% !important;
}
.pB5 {
  padding-bottom: 2.5% !important;
}
.pB10 {
  padding-bottom: 2.5% !important;
}
.pB15 {
  padding-bottom: 2.5% !important;
}
.pB20 {
  padding-bottom: 5% !important;
}
.pB25 {
  padding-bottom: 5% !important;
}
.pB30 {
  padding-bottom: 5% !important;
}
.pB35 {
  padding-bottom: 7.5% !important;
}
.pB40 {
  padding-bottom: 7.5% !important;
}
.pB45 {
  padding-bottom: 7.5% !important;
}
.pB50 {
  padding-bottom: 10% !important;
}
.pB55 {
  padding-bottom: 10% !important;
}
.pB60 {
  padding-bottom: 10% !important;
}
.pB65 {
  padding-bottom: 12.5% !important;
}
.pB70 {
  padding-bottom: 12.5% !important;
}
.pB75 {
  padding-bottom: 12.5% !important;
}
.pB80 {
  padding-bottom: 15% !important;
}
.pB85 {
  padding-bottom: 15% !important;
}
.pB90 {
  padding-bottom: 15% !important;
}
.pB95 {
  padding-bottom: 17.5% !important;
}
.pB100 {
  padding-bottom: 17.5% !important;
}
.pB105 {
  padding-bottom: 17.5% !important;
}
.pB110 {
  padding-bottom: 20% !important;
}
.pB115 {
  padding-bottom: 20% !important;
}
.pB120 {
  padding-bottom: 20% !important;
}
.pB125 {
  padding-bottom: 22.5% !important;
}
.pB130 {
  padding-bottom: 22.5% !important;
}
.pB135 {
  padding-bottom: 22.5% !important;
}
.pB140 {
  padding-bottom: 25% !important;
}
.pB145 {
  padding-bottom: 25% !important;
}
.pB150 {
  padding-bottom: 25% !important;
}
.pL0 {
  padding-left: 0% !important;
}
.pL5 {
  padding-left: 2.5% !important;
}
.pL10 {
  padding-left: 2.5% !important;
}
.pL15 {
  padding-left: 2.5% !important;
}
.pL20 {
  padding-left: 5% !important;
}
.pL25 {
  padding-left: 5% !important;
}
.pL30 {
  padding-left: 5% !important;
}
.pL35 {
  padding-left: 7.5% !important;
}
.pL40 {
  padding-left: 7.5% !important;
}
.pL45 {
  padding-left: 7.5% !important;
}
.pL50 {
  padding-left: 10% !important;
}
.pL55 {
  padding-left: 10% !important;
}
.pL60 {
  padding-left: 10% !important;
}
.pL65 {
  padding-left: 12.5% !important;
}
.pL70 {
  padding-left: 12.5% !important;
}
.pL75 {
  padding-left: 12.5% !important;
}
.pL80 {
  padding-left: 15% !important;
}
.pL85 {
  padding-left: 15% !important;
}
.pL90 {
  padding-left: 15% !important;
}
.pL95 {
  padding-left: 17.5% !important;
}
.pL100 {
  padding-left: 17.5% !important;
}
.pL105 {
  padding-left: 17.5% !important;
}
.pL110 {
  padding-left: 20% !important;
}
.pL115 {
  padding-left: 20% !important;
}
.pL120 {
  padding-left: 20% !important;
}
.pL125 {
  padding-left: 22.5% !important;
}
.pL130 {
  padding-left: 22.5% !important;
}
.pL135 {
  padding-left: 22.5% !important;
}
.pL140 {
  padding-left: 25% !important;
}
.pL145 {
  padding-left: 25% !important;
}
.pL150 {
  padding-left: 25% !important;
}
.pR0 {
  padding-right: 0% !important;
}
.pR5 {
  padding-right: 2.5% !important;
}
.pR10 {
  padding-right: 2.5% !important;
}
.pR15 {
  padding-right: 2.5% !important;
}
.pR20 {
  padding-right: 5% !important;
}
.pR25 {
  padding-right: 5% !important;
}
.pR30 {
  padding-right: 5% !important;
}
.pR35 {
  padding-right: 7.5% !important;
}
.pR40 {
  padding-right: 7.5% !important;
}
.pR45 {
  padding-right: 7.5% !important;
}
.pR50 {
  padding-right: 10% !important;
}
.pR55 {
  padding-right: 10% !important;
}
.pR60 {
  padding-right: 10% !important;
}
.pR65 {
  padding-right: 12.5% !important;
}
.pR70 {
  padding-right: 12.5% !important;
}
.pR75 {
  padding-right: 12.5% !important;
}
.pR80 {
  padding-right: 15% !important;
}
.pR85 {
  padding-right: 15% !important;
}
.pR90 {
  padding-right: 15% !important;
}
.pR95 {
  padding-right: 17.5% !important;
}
.pR100 {
  padding-right: 17.5% !important;
}
.pR105 {
  padding-right: 17.5% !important;
}
.pR110 {
  padding-right: 20% !important;
}
.pR115 {
  padding-right: 20% !important;
}
.pR120 {
  padding-right: 20% !important;
}
.pR125 {
  padding-right: 22.5% !important;
}
.pR130 {
  padding-right: 22.5% !important;
}
.pR135 {
  padding-right: 22.5% !important;
}
.pR140 {
  padding-right: 25% !important;
}
.pR145 {
  padding-right: 25% !important;
}
.pR150 {
  padding-right: 25% !important;
}
.pA0 {
  padding: 0% !important;
}
.pA5 {
  padding: 2.5% !important;
}
.pA10 {
  padding: 2.5% !important;
}
.pA15 {
  padding: 2.5% !important;
}
.pA20 {
  padding: 5% !important;
}
.pA25 {
  padding: 5% !important;
}
.pA30 {
  padding: 5% !important;
}
.pA35 {
  padding: 7.5% !important;
}
.pA40 {
  padding: 7.5% !important;
}
.pA45 {
  padding: 7.5% !important;
}
.pA50 {
  padding: 10% !important;
}
.pA55 {
  padding: 10% !important;
}
.pA60 {
  padding: 10% !important;
}
.pA65 {
  padding: 12.5% !important;
}
.pA70 {
  padding: 12.5% !important;
}
.pA75 {
  padding: 12.5% !important;
}
.pA80 {
  padding: 15% !important;
}
.pA85 {
  padding: 15% !important;
}
.pA90 {
  padding: 15% !important;
}
.pA95 {
  padding: 17.5% !important;
}
.pA100 {
  padding: 17.5% !important;
}
.pA105 {
  padding: 17.5% !important;
}
.pA110 {
  padding: 20% !important;
}
.pA115 {
  padding: 20% !important;
}
.pA120 {
  padding: 20% !important;
}
.pA125 {
  padding: 22.5% !important;
}
.pA130 {
  padding: 22.5% !important;
}
.pA135 {
  padding: 22.5% !important;
}
.pA140 {
  padding: 25% !important;
}
.pA145 {
  padding: 25% !important;
}
.pA150 {
  padding: 25% !important;
}

/*タイトル
========================================== */
.h2Tit {
  font-size: 2.8rem;
  letter-spacing: 0.03em;
}
.h2Tit .en {
  margin-bottom: 0.3em;
  font-size: 0.6em;
}
.h2Tit .en::before {
  margin-right: 7px;
  width: 10px;
  height: 10px;
}
.h2Tit .titCatch {
  font-size: 0.5em;
}

.h3Tit {
  font-size: 2.2rem;
  letter-spacing: 0.03em;
}

/*装飾
========================================== */

/*ボタン
========================================== */
.btn.btnLarge {
  justify-content: space-between;
  width: 240px;
  height: 80px;
  padding: 10px 26px 10px 20px;
  text-align: left;
  font-size: min(4.2vw, 2.4rem);
}

/*テキスト
========================================== */
.leadTxt {
  font-size: 1.6rem;
  line-height: 1.8em;
}
.bgGrdLead {
  font-size: 2.4rem;
}
.bgGrdLead + .bgGrdLead,
.bgGrdLeadWrap + .bgGrdLeadWrap {
  margin-top: 6px;
}

/*-- table --*/
.basicTable {
  border-bottom: none;
}
.basicTable dt {
  border-bottom: none;
  padding: 13px 0 4px;
  width: 100%;
}
.basicTable dd {
  padding: 0 0 13px 0;
  width: 100%;
}

/* =======================================
	header
========================================== */
header {
  width: 100%;
  height: 60px;
  padding: 8px 0;
}
header .inner1200 {
  width: 100%;
  padding: 0 65px 0 4%;
}
header #logo {
  height: 48px;
  margin-bottom: 0;
  align-items: center;
}
header #logo a {
}
header #logo img {
  width: 180px;
}
header #logo span {
  font-size: 14px;
}

/* =======================================
	.menu
========================================== */
.menu {
  right: 2px;
  top: -5px;
}

/* =======================================
	footer
========================================== */
footer {
  position: relative;
}
#companyLink {
  padding: 40px 0 45px;
  margin-bottom: 45px;
}
#companyLink a {
  height: 65px;
  margin: 0 auto;
}

#footerLogo {
  width: 210px;
  margin: 0 0 25px;
}

footer .address {
  margin-top: 10px;
  font-size: 1.3rem;
}
.footerRight {
  margin-top: 30px;
}
footer .btn.btnLarge {
  width: min(100%, 396px);
}

/* =======================================
	modal
========================================== */
.modal-content {
  padding: 54px 5%;
}
.modal-profile figcaption {
  margin-top: 1em;
  font-size: 2rem;
  text-align: right;
}

/* =======================================
	top
========================================== */
/*		main
-----------------------------*/
main {
  margin-top: 65px;
}

/*		#mv
-----------------------------*/
#mvSlider figure {
  padding: 0 13px;
  height: 50vh;
}
#mvSlider figure img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
#mvTxts {
  left: 0;
  right: 0;
  bottom: 10px;
  width: 100%;
  align-items: end;
}
#mvTxts .mvCatch {
  margin-bottom: 30px;
  width: 40rem;
}

/*		#topMessage
-----------------------------*/
#topMessage .imgs {
  margin-top: 60px;
  grid-template-columns: calc(330 / 636 * 100%) 1fr;
}
#topMessage .imgs div.bgGrd {
  padding: 3.375em 0 3.375em 1em;
}
#topMessage .imgs div.bgGrd#topMessageImgs01 {
  font-size: 1.6rem;
}

/*		#topHistory
-----------------------------*/
#timelineScroll {
  overflow-x: scroll;
  padding-bottom: 65px; /* #timelineHeiseiのtransformY分 */
}
#timeline {
  width: 1200px;
}
#timeline::before {
  width: 1210px;
  margin-left: -5px;
  transform: translateY(105px) rotate(-6deg);
}
#timelineHeisei .timelineBoxInner {
  margin-left: auto;
  margin-right: 100px;
}

/*		#topChallenge
-----------------------------*/
#topChallenge {
  padding: 120px 0 84px;
  background-size: auto min(133vw, 430px);
}
#topChallenge .leadTxt {
  margin-bottom: 41px;
}
.topChallengeList li + li {
  margin-top: 40px;
}
.topChallengeList li:has(.topChallengeData) {
  padding: 41px 28px 28px;
}
.topChallengeData .year {
  font-size: 2rem;
}
.topChallengeData .sales {
  font-size: 2.4rem;
}
.topChallengeData .sales span {
  font-size: 6rem;
}
.topChallengeList li .topChallengeData {
  margin-bottom: 23px;
}
.topChallengeList li .topChallengeData figure {
  width: min(20%, 60px);
}

/*		#topCatch
-----------------------------*/
#topCatch {
  padding-bottom: 60px;
}
#topCatch figure img {
  min-height: 300px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#topCatch .bgGrdLead {
  font-size: 2rem;
}

/*		#topWork
-----------------------------*/
#topCatch + #topWork {
  margin-top: -10px;
}
.topWorkBox .txts .subLead {
  font-size: 1.8rem;
} /*
.topWorkBox .txts {
  position: relative;
  padding: 30px 3% 100px;
  background: linear-gradient(180deg, var(--blue) 0%, rgba(64, 64, 64, 0) 96%, rgba(64, 64, 64, 0) 100%);
  z-index: 2;
}
.topWorkBox:nth-of-type(even) .txts {
  padding: 30px 3% 100px;
  background: linear-gradient(180deg, var(--blue) 0%, rgba(64, 64, 64, 0) 96%, rgba(64, 64, 64, 0) 100%);
}*/
.topWorkBox .txts p:not(.subLead) {
  margin-top: 10px;
  font-size: 1.5rem;
} /*
.topWorkBox .imgs {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
}
.topWorkBox .imgs img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}*/

.topWorkBox .imgs {
  height: min(100vw, 380px);
}
.topWorkBox .imgs img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.topWorkBox:nth-of-type(2) .imgs img {
  object-position: left center;
}
.topWorkBox:nth-of-type(3) .imgs img {
  object-position: right center;
}
.topWorkBox .txts,
.topWorkBox:nth-of-type(even) .txts {
  padding: 100px 3% 30px;
}

.topWorkBox .imgs::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(42, 76, 146, 1) 0%, rgba(42, 76, 146, 1) 40%, rgba(64, 64, 64, 0) 85.2%, rgba(64, 64, 64, 0) 88%);
  mix-blend-mode: multiply;
  pointer-events: none;
}
.topWorkBox:nth-of-type(even) .imgs::after {
  background: linear-gradient(0deg, rgba(42, 76, 146, 1) 0%, rgba(42, 76, 146, 1) 40%, rgba(64, 64, 64, 0) 85.2%, rgba(64, 64, 64, 0) 88%);
}

/*		#topInterview
-----------------------------*/
.topInterviewList.flex {
  gap: 10px;
}
.topInterviewList li {
  flex: 0 0 100%;
}

/* topInterviewControler */
.topInterviewControler {
  gap: 0 min(3.8%, 53px);
}
.topInterviewControler .scrollBtn {
  width: 76px;
  gap: 8px;
}

/* スクロールボタン */
.scroll-btn {
  width: 34px;
  height: 34px;
}

/* スクロールバー */
.scrollBar {
  height: 5px;
}
.scroll-thumb {
  height: 5px;
}

/*		#topStyle
-----------------------------*/
.topStyleBox {
  padding: 42px 20px 35px;
  width: 100%;
}
.topStyleList li {
  width: min(100%, 296px);
  margin: 0 auto;
  padding: 0;
}
.topStyleList li + li {
  margin-top: 30px;
}
.topStyleBox .checkList {
  padding: 0;
}
.checkList li {
  font-size: 1.6rem;
}

#topStyleSlider figure {
  margin-left: 8px;
  margin-right: 8px;
}
#topStyleSlider figure:nth-of-type(odd) {
  /* padding: 0 8px; */
  margin-top: 30px;
}
#topStyleNo.topStyleBox {
  margin-top: 30px;
}
#topStyleSlider figure:nth-of-type(even) {
  /* padding: 0 8px; */
  margin-bottom: 26px;
}

/*		#topData
-----------------------------*/
#topDataList {
  margin-top: 35px;
}
.topDataBox + .topDataBox {
  margin-top: 30px;
}
.topDataBox h3 span {
  font-size: 2rem;
}
.topDataBox .bgW figure img {
  margin: 0 auto;
}

#topDataBox04 .bgW {
  padding: 29px 5% 17px 5%;
}
#topDataBox04 .bgW .txts li {
  font-size: 2rem;
}
#topDataBox04 .bgW .txts li:nth-of-type(1) {
  font-size: 2.75rem;
}
#topDataBox04 .bgW .txts li > figure {
  width: 4rem;
  margin-right: 1rem;
}
#topDataBox04 .bgW .txts li:not(:nth-of-type(1)) > figure {
  padding: 0 6px;
}
#topDataBox04 .bgW .txts p {
  font-size: 1.64rem;
}
#topDataBox06 {
  margin-bottom: 140px;
}
#topDataBox06::after {
  position: absolute;
  top: calc(100% - 40px);
  left: calc(100% - 188px);
  content: "";
  display: inline-block;
  width: 188px;
  height: 155px;
  background: url(../images/top_data_img00.png) no-repeat center center / 100%;
  z-index: 10;
}
#topDataBox07 .bgW {
  padding: 30px 16px 20px 24px;
}
#topDataBox07 .bgW li {
  font-size: 1.8rem;
}
#topDataBox07 .bgW li,
#topDataBox07 .bgW li#topDataBox07_1,
#topDataBox07 .bgW li#topDataBox07_2,
#topDataBox07 .bgW li#topDataBox07_4 {
  margin: 0 0 10px 0;
}
#topDataBox07 .bgW li#topDataBox07_5 {
  margin: 0 0 10px 0;
  font-size: 4rem;
}
#topDataBox07 .bgW li#topDataBox07_6 {
  margin: 0 0 10px 10px;
  font-size: 4rem;
}
#topDataBox07 .bgW li#topDataBox07_7 {
  font-size: 4rem;
}

/*		#topTraining
-----------------------------*/
#topTraining .bgW {
  margin-top: 40px;
  padding: 40px 5% 50px;
}
#topTraining .bgW h3 {
  margin-right: -3%;
  margin-left: -3%;
  font-size: 2.8rem;
}
#topTraining .stepList > li h4 {
  font-size: 1.8rem;
}
#topTraining .stepList .stepTxts h5 {
  font-size: 1.6rem;
}
#topTraining .stepList .stepTxts figure {
  margin-top: 10px;
}

/*		#topAllowance
-----------------------------*/
#topAllowance h2 {
  font-size: 3rem;
}
#topAllowanceHead dt {
  margin-bottom: 0.5em;
  font-size: 2rem;
}
.topAllowanceList {
  margin-top: 40px;
  gap: 12px;
}
.topAllowanceList li {
  padding: 40px 0 0 0;
  width: calc((100% - 12px) / 2);
}
.topAllowanceList li p {
  font-size: 1.5rem;
}
#topAllowanceBottom {
  margin-top: 43px;
}
#topAllowanceBottom h3 {
  font-size: 2.2rem;
}

/*		#topEsg
-----------------------------*/
#topEsg .bgGrdLeadWrap {
  width: 22em;
}
#topEsg .bgGrdLead {
  font-size: 3rem;
}
#topEsgBoxs {
  margin-top: 40px;
}
.bdBox + .bdBox {
  margin-top: 30px;
}

/*		#topEsgSlider
-----------------------------*/
#topEsgSlider {
  padding: 0 0 52px;
}
#topEsgSlider figure {
  margin: 0 8px;
}

/*		#topRecruitment
-----------------------------*/
#topRecruitment {
  padding-bottom: 66px;
}
#recruitTabArea .tabBtn li {
  width: calc(100% / 3);
}
#recruitTabArea .tabBtn li a {
  font-size: 1.6rem;
}

/*		#topContact
-----------------------------*/
#topContact {
}
#topContact h2:has(.bgGrdLead) {
  transform: translateY(calc(-1.9rem - 12px));
  padding-left: 5%;
  padding-right: 5%;
}
#topContact h2 .bgGrdLead {
  font-size: 2.58rem;
}
#topContact .formArea {
  padding: 40px 5% 40px;
}

/* =======================================
	form
========================================== */
form#mailformpro dl dd {
  padding: 15px 0;
}
form#mailformpro dl dd input[type="text"].short {
  width: 8rem;
}
form#mailformpro dl dt .hissu {
  right: 0%;
}
.confirm {
  margin-top: 20px;
}

.footForm {
  padding-left: 10px;
  padding-right: 10px;
}

/* =======================================
	thanks
========================================== */

#thanks {
  margin-top: 50px;
}

#thanks p {
  font-size: 1.8rem;
}
#topCatch {
  padding-bottom: 130px;
}
