@charset "UTF-8";
/* ============================================================
// index.scss (トップページ)
============================================================ */
/* ------------------------------------------------------------
// Fluid Design Function
// 最小値〜最大値の間で数値を可変させる共通関数
------------------------------------------------------------ */
/* ------------------------------------------------------------
// hero
------------------------------------------------------------ */
.hero {
  width: 100%;
  max-height: 100vh;
  padding-block: clamp(100px, 8.8105726872vw + 66.9603524229px, 200px) clamp(40px, 14.0969162996vw + -12.8634361233px, 200px);
  background: url(../images/index/bg-hero.png) no-repeat center center/cover;
}
.hero__inner {
  position: relative;
}
.hero__inner-img {
  padding-left: clamp(20px, 22.0264317181vw + -62.5991189427px, 270px);
}
.hero__inner-catch {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  padding-right: clamp(120px, 13.2158590308vw + 70.4405286344px, 270px);
}

/* ------------------------------------------------------------
// business
------------------------------------------------------------ */
.business {
  padding: clamp(60px, 12.3348017621vw + 13.7444933921px, 200px) 20px;
  background: linear-gradient(to right, #e5f2ff, #ffffff);
}
.business__inner {
  max-width: 1470px;
  margin-inline: auto;
}
.business__head {
  display: flex;
  gap: clamp(40px, 21.5633423181vw + -125.6064690027px, 200px);
  margin-bottom: clamp(40px, 4.4052863436vw + 23.4801762115px, 90px);
}
.business__head-en {
  font-family: "LINE Seed JP", sans-serif;
  font-size: clamp(32px, 2.8193832599vw + 21.4273127753px, 64px);
  font-weight: 700;
  color: #313131;
  line-height: 1;
  margin-bottom: 10px;
}
.business__head-jp {
  font-size: clamp(16px, 0.704845815vw + 13.3568281938px, 24px);
  font-weight: 700;
  color: #313131;
  line-height: 1;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 767px) {
  .business__head {
    flex-direction: column;
  }
}
.business__lead {
  flex: 1;
  font-size: clamp(16px, 0.3524229075vw + 14.6784140969px, 20px);
  line-height: 2;
  text-align: justify;
}
.business__body {
  display: flex;
  flex-direction: column;
  gap: clamp(20px, 1.7621145374vw + 13.3920704846px, 40px);
}
.business__item {
  position: relative;
  display: block;
  width: 100%;
  min-height: clamp(160px, 18.3259911894vw + 91.2775330396px, 368px);
  padding: clamp(20px, 4.4052863436vw + 3.4801762115px, 70px) clamp(20px, 6.6079295154vw + -4.7797356828px, 95px);
  background: #fff;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
  overflow: hidden;
  z-index: 1;
}
.business__item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  transition: transform 0.6s ease;
  transform: scale(1.1);
}
.business__item:hover::before {
  transform: scale(1.2);
}
.business__item:hover .c-link-arrow::after {
  transform: translateX(5px);
}
.business__item:hover .c-link-arrow::before {
  transform: translateX(5px) rotate(35deg);
}
.business__item-en {
  font-family: "LINE Seed JP", sans-serif;
  font-size: clamp(12px, 1.0572687225vw + 8.0352422907px, 24px);
  font-weight: 700;
  color: #3380cc;
  line-height: 1.2;
}
.business__item-jp {
  font-size: clamp(18px, 1.9383259912vw + 10.731277533px, 40px);
  font-weight: 700;
  color: #333;
}
.business__item--dayly::before {
  background: url(../images/index/bg-dayly-cleaning.png) no-repeat center right/cover;
}
.business__item--special::before {
  background: url(../images/index/bg-special-cleaning.png) no-repeat center right/cover;
}
.business__item--facility::before {
  background: url(../images/index/bg-facility-management.png) no-repeat center right/cover;
}
.business__body-link {
  position: absolute;
  right: clamp(20px, 6.6079295154vw + -4.7797356828px, 95px);
  bottom: clamp(10px, 5.2863436123vw + -9.8237885463px, 70px);
}

/* ------------------------------------------------------------
// company
------------------------------------------------------------ */
.company {
  padding: clamp(60px, 12.3348017621vw + 13.7444933921px, 200px) 20px;
  background: url(../images/index/bg-company.png) no-repeat center center/cover;
}
.company__wrap {
  max-width: 1470px;
  margin-inline: auto;
}
.company__inner {
  max-width: 1200px;
  padding: clamp(30px, 2.6431718062vw + 20.0881057269px, 60px) clamp(20px, 2.6431718062vw + 10.0881057269px, 50px);
  background: #fff;
}
.company__head {
  margin-bottom: 40px;
  padding-bottom: 30px;
  border-bottom: 1px solid #5c94cc;
}
.company__head-en {
  font-family: "LINE Seed JP", sans-serif;
  font-size: clamp(32px, 2.8193832599vw + 21.4273127753px, 64px);
  font-weight: 700;
  color: #313131;
  line-height: 1;
  margin-bottom: 10px;
  padding-inline: clamp(20px, 1.7621145374vw + 13.3920704846px, 40px);
}
.company__head-jp {
  font-size: clamp(16px, 0.704845815vw + 13.3568281938px, 24px);
  font-weight: 700;
  color: #313131;
  line-height: 1;
  letter-spacing: 0.2em;
  padding-inline: clamp(20px, 1.7621145374vw + 13.3920704846px, 40px);
}
.company__body {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  padding-inline: clamp(20px, 1.7621145374vw + 13.3920704846px, 40px);
}
.company__body-text {
  width: 100%;
  font-size: clamp(16px, 0.3524229075vw + 14.6784140969px, 20px);
  line-height: 2;
  margin-bottom: 30px;
  text-align: justify;
}