@charset "UTF-8";
/* ************************************** _
タイトル：home.css
概要：home用css
更新：2024.10.30
_ ************************************** */
/* =========================================================================
   CSS変数の定義  _custom-property

   - サイトの基本的な色指定は、CSS変数の値として設定。
   - 横幅の基準値を設定。
============================================================================ */
:root {
  --color__White: #fff;
  --color__WhiteAlpha: 255,255,255;
  --color__Black: #333;
  --color__BlackAlpha: 51,51,51;
  --color__lightBlack: #636363;
  --color__lightBlackAlpha: 99,99,99;
  --color__Shadow: #999;
  --color__ShadowAlpha: 153,153,153;
  --color__Primary: #00a993;
  --color__PrimaryAlpha: 0,169,147;
  --color__PrimaryL: #c7ede7;
  --color__PrimaryLAlpha: 199,237,231;
  --color__Secondary: #ffab1a;
  --color__SecondaryAlpha: 255,171,26;
  --color__SecondaryL: #fff8ed;
  --color__SecondaryLAlpha: 255,248,237;
  --color__Link: #034899;
  --color__LinkHover: lighten(#034899, 0.7);
  --color__Bg: #ebebeb ;
  --color__BgL: #f7f7f7 ;
  --color__Line: #666;
}

:root {
  --width__Full: 100vw;
  --width__Over: 1360px;
  --width__OverP: 1400px;
  --width__Main: 1160px;
  --width__MainP: 1200px;
  --width__texts: 930px;
}

/* ヒーローエリア
---------------------------------------------------------------------------- */
.homeHeroWrapper {
  margin: 0 auto 0;
  position: relative;
}
.homeHeroWrapper::before {
  content: "";
  background-color: var(--color__PrimaryL);
  display: block;
  height: calc(100% - 25px);
  position: absolute;
  top: 0;
  width: 100vw;
}

.homeHero {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: auto;
  margin: 0 auto;
  padding: 15px 0 0 0;
  position: relative;
  text-align: center;
  width: 100%;
}
.homeHero .homeHeroPanel {
  border-radius: 50px;
  background-color: var(--color__White);
  -webkit-box-shadow: 0 4px 10px 4px rgba(var(--color__ShadowAlpha), 0.75);
  box-shadow: 0 4px 10px 4px rgba(var(--color__ShadowAlpha), 0.75);
  margin: 0 20px;
  max-width: 640px;
  width: 48.5%;
}

@media screen and (max-width: 1400px) {
  .homeHero {
    padding-left: 1vw;
    padding-right: 1vw;
  }
  .homeHero .homeHeroPanel {
    margin: 0 1vw;
    width: 48vw;
  }
}
@media screen and (max-width: 414px) {
  .homeHero {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .homeHero .homeHeroPanel {
    margin: 3vw 2vw;
    width: 86vw;
  }
}
/* 製品のご紹介
---------------------------------------------------------------------------- */
.homeService .withImgParagraph {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.homeService .withImgParagraph .textPart {
  margin-right: 40px;
  width: calc(100% - 280px);
}
.homeService .withImgParagraph .textPart .btn {
  margin-left: 0;
  margin-top: 30px;
}
.homeService .withImgParagraph .imagePart {
  width: 240px;
}
.homeService .withImgParagraph .imagePart .image {
  margin-bottom: 0;
}

@media screen and (max-width: 960px) {
  .homeService .withImgParagraph .textPart {
    margin-right: 28px;
    width: calc(100% - 28vw - 30px);
  }
  .homeService .withImgParagraph .imagePart {
    width: 28vw;
  }
}
@media screen and (max-width: 600px) {
  .homeService .withImgParagraph {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .homeService .withImgParagraph .textPart {
    margin-bottom: 30px;
    margin-right: 0;
    width: 100%;
  }
  .homeService .withImgParagraph .textPart .btn {
    margin-left: auto;
    margin-top: 30px;
  }
  .homeService .withImgParagraph .imagePart {
    max-width: 100%;
    text-align: center;
    width: 100%;
  }
  .homeService .withImgParagraph .imagePart > img {
    margin-left: auto;
    margin-right: auto;
  }
}
/* 社会貢献
---------------------------------------------------------------------------- */
.homeCsr .withImgParagraph {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 1.166em;
}
.homeCsr .withImgParagraph .textPart {
  margin-right: 40px;
  width: calc(100% - 280px);
}
.homeCsr .withImgParagraph .textPart .btn {
  margin-left: 0;
  margin-top: 30px;
}
.homeCsr .withImgParagraph .imagePart {
  width: 240px;
}
.homeCsr .withImgParagraph .imagePart .image {
  margin-bottom: 0;
}

@media screen and (max-width: 960px) {
  .homeCsr .withImgParagraph .textPart {
    margin-right: 28px;
    width: calc(100% - 28vw - 30px);
  }
  .homeCsr .withImgParagraph .imagePart {
    width: 28vw;
  }
}
@media screen and (max-width: 600px) {
  .homeCsr .withImgParagraph {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .homeCsr .withImgParagraph .textPart {
    margin-bottom: 30px;
    margin-right: 0;
    width: 100%;
  }
  .homeCsr .withImgParagraph .imagePart {
    max-width: 100%;
    text-align: center;
    width: 100%;
  }
  .homeCsr .withImgParagraph .imagePart > img {
    margin-left: auto;
    margin-right: auto;
  }
}
/*# sourceMappingURL=_maps/home.css.map */
