/* ----------------------------
	LP Style Setting
	Create Date: 25.08.01
----------------------------*/
/**================================= Common Setting =================================**/
/******** Common ********/
/* Layout */
.blockContentsWrapper {
  font-family: "Noto Sans JP", serif;
}
.blockContentsWrapper .blockContentsInner.pt0 {
  padding-top: 0;
}

.footerTopTxtAtt {
  font-size: 0.875rem;
}
.footerTopTxtAtt:not(:first-of-type) {
  margin-top: 5px;
}
.footerTopTxtAtt:last-of-type {
  margin-bottom: 30px;
}

/* Headline */
/* text */
/* Figure */

/* Button */
a.modBtn03 {
  background-color: var(--blue);
}

/******** FV Block ******* */
.gigaFv {
  background: #7ac5ed;
  color: #fff;
}
.gigaFvInner {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
  padding: 30px 20px;
}
.gigaFvImage {
  flex: 1;
  text-align: center;
}
.gigaFvContent {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.gigaFvCatch {
  margin-bottom: .6em;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
}
.gigaFvText {
  margin-bottom: 1.5em;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.6;
}
.gigaFvBtn {
  text-align: center;
}
.gigaFvBtn .modBtn03 {
  height: 60px;
  font-size: 1rem;
  line-height: 60px;
}

/******** CONTENTS Block ********/
/* ABOUT
--------------- */
.gigaAbout {
  padding-bottom: 30px;
  background: #f1f9ec;
}
.gigaAboutTitle {
  margin-bottom: 1em;
  color: #0051af;
  font-size: 1.4375rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
.gigaAboutLead {
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.6;
}
.gigaAboutImage {
  margin-top: 30px;
  text-align: center;
}

/* INTRO
--------------- */
.gigaIntro {
  background: #f1f9ec;
}
.gigaIntroTitle {
  margin-bottom: 1em;
  color: #0051af;
  font-size: 1.4375rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
.gigaIntroLead {
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.6;
}
.gigaIntroItems {
  margin-top: 30px;
  padding: 30px 20px;
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 0 8px rgba(0,0,0,.16);
}
.gigaIntroItem:not(:last-child) {
  margin-bottom: 30px;
}
.gigaIntroItemTitle {
  display: flex;
  align-items: center;
  margin-bottom: .5em;
  color: #73bf4b;
  font-size: 1.125rem;
  font-weight: 700;
}
.gigaIntroItemNum {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.83em;
  height: 1.83em;
  margin-right: .3em;
  background: #73bf4b;
  border-radius: 50%;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1;
}
.gigaIntroItemCont figure {
  position: relative;
  margin-bottom: 20px;
}
.gigaIntroItemCont p {
  flex: 1;
  font-size: .9375rem;
  font-weight: 600;
}

/* FEATURE
--------------- */
.gigaFeature {
  position: relative;
  padding-top: 60px;
  background: #73bf4b;
}
.gigaFeature::before {
  position: absolute;
  top: -1px;
  left: 50%;
  width: 0;
  height: 0;
  border-color: #f2f9ec transparent transparent;
  border-style: solid;
  border-width: 30px 100px 0;
  content: "";
  transform: translateX(-50%);
}
.gigaFeatureSubtitle {
  color: #fff;
  font-size: .9375rem;
  font-weight: 700;
  text-align: center;
}
.gigaFeatureTitle {
  margin-bottom: 1em;
  color: #fff;
  font-size: 1.625rem;
  font-weight: 700;
  text-align: center;
}
.gigaFeatureLead {
  color: #fff;
  font-size: .9375rem;
  font-weight: 600;
  line-height: 1.6;
}
.gigaFeatureImage {
  margin-bottom: 30px;
  text-align: center;
}
.gigaCase {
  margin: 40px auto 30px;
  padding: 30px 20px;
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 0 6px rgba(0,0,0,.16);
}
.gigaCaseTitle {
  position: relative;
  margin-bottom: 20px;
  padding-bottom: 25px;
  font-size: 1.75rem;
  font-weight: 700;
  text-align: center;
}
.gigaCaseTitle::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 120px;
  height: 3px;
  background: #0051af;
  content: "";
  transform: translateX(-50%);
}
.gigaCaseSubtitle {
  margin-bottom: 1.2em;
  color: #0051af;
  font-size: 1.25rem;
  font-weight: 700;
  text-align: center;
}
.gigaCaseModel {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  gap: 40px 0;
  margin-bottom: 50px;
}
.gigaCaseModel dl {
  width: 300px;
  text-align: center;
}
.gigaCaseModel dt {
  position: relative;
  margin-bottom: 10px;
  padding-bottom: 10px;
  font-size: 1.375rem;
  font-weight: 700;
}
.gigaCaseModel dt::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 55px;
  height: 3px;
  background: #0051af;
  content: "";
  transform: translateX(-50%);
}
.gigaCaseModel dd {
  font-weight: 700;
}
.gigaCaseModelImage {
  margin: 20px auto 0;
  width: 120px;
}
.gigaCaseContent:not(:last-child) {
  margin-bottom: 60px;
}
.gigaCaseContentTitle {
  margin-bottom: 15px;
  color: #0051af;
  font-size: 1.375rem;
  font-weight: 700;
}
.gigaCaseContentTitle::before {
  display: inline-block;
  width: .66em;
  height: 1em;
  margin-right: .3em;
  border-color: transparent transparent transparent #0051af;
  border-style: solid;
  border-width: .5em 0 .5em .66em;
  content: "";
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.16));
  vertical-align: -.1em;
}
.gigaCaseContentLead {
  font-size: .9375rem;
  font-weight: 700;
  line-height: 1.6;
}
.gigaCaseScene {
  display: flex;
  flex-wrap: wrap;
  gap: 60px 0;
  margin-top: 50px;
}
.gigaCaseScene dl {
  width: 100%;
  text-align: center
}
.gigaCaseScene dt {
  color: #74bf4b;
  font-size: 1.25rem;
  font-weight: 700;
}
.gigaCaseScene dd {
  font-size: .875rem;
  font-weight: 500;
}
.gigaCaseSceneImage {
  max-width: 50%;
  margin: 20px auto 30px;
}
.gigaCaseSolution {
  margin-top: 30px;
}
.gigaCaseSolutionItem {
  border: 1px solid #ccc;
}
.gigaCaseSolutionItem:not(:last-child) {
  border-bottom: none;
}
.gigaCaseSolutionItem:nth-child(even) {
  background: #f7f8f9;
}
.gigaCaseSolutionItemImage {
  padding: 10px;
  text-align: center;
}
.gigaCaseSolutionItemContent {
  padding: 0 20px 20px;
}
.gigaCaseSolutionItemContent dt {
  margin-bottom: .5em;
  color: #73bf4b;
  font-size: 1.125rem;
  font-weight: 700;
}
.gigaCaseSolutionItemContent dd {
  font-size: .875rem;
  font-weight: 600;
}
.gigaCaseSolutionBtn {
  margin-top: 10px;
  text-align: center;
}
.gigaCaseSolutionBtn .modBtn03 {
  height: 36px;
  padding: 0 30px;
  font-size: 1.0625rem;
  line-height: 36px;
}
.gigaCaseBtmText {
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
}

/******** CTA ********/
.gigaCta {
  position: relative;
  padding-top: 60px;
  background: #e7f9fd;
}
.gigaCta::before {
  position: absolute;
  top: -1px;
  left: 50%;
  width: 0;
  height: 0;
  border-color: #73bf4b transparent transparent;
  border-style: solid;
  border-width: 30px 100px 0;
  content: "";
  transform: translateX(-50%);
}
.gigaCtaTitle {
  margin-bottom: 40px;
  color: #0051af;
  font-size: 1.1875rem;
  font-weight: 700;
  text-align: center;
}
.gigaCtaImage {
  margin-bottom: 30px;
  text-align: center;
}
.gigaCtaLead {
  max-width: 900px;
  margin: 0 auto;
  color: #0051af;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.6;
}
.gigaCtaBtnWrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  gap: 30px;
  max-width: 900px;
  margin: 40px auto 0;
}
.gigaCtaBtn.modBtn03 {
  width: 306px;
  height: 60px;
  font-size: 1rem;
  line-height: 60px;
}

@media screen and (min-width: 897px) {
  /**================================= Common Setting =================================**/
  /******** Common ********/
  .blockFooter.pt {
    padding-top: 100px;
  }
  .footerTopTxtAtt {
    font-size: 1.125rem;
  }
  .footerTopTxtAtt:last-of-type {
    margin-bottom: 50px;
  }
  .footerNavArea.borderTop {
    border-top: var(--black60) solid 1px;
  }
  /* Headline */
  /* text */

  /* Box */
  .innerShadowBox {
    padding: 50px 100px;
  }

  /******** FV Block ******* */
  .gigaFvInner {
    flex-direction: row;
    justify-content: space-between;
    padding: 50px 50px 40px 15px;
  }
  .gigaFvContent {
    align-items: flex-start;
    width: 400px;
  }
  .gigaFvCatch {
    margin-bottom: 1.4em;
    font-size: 3.1875rem;
    white-space: nowrap;
  }
  .gigaFvText {
    font-size: 1.5625rem;
  }
  .gigaFvBtn .modBtn03 {
    padding: 0 45px;
    font-size: 1.25rem;
  }

  /******** CONTENTS Block ********/
  /* ABOUT
  --------------- */
  .gigaAboutTitle {
    font-size: 3.1875rem;
  }
  .gigaAboutLead {
    font-size: 1.625rem;
  }
  .gigaAboutImage {
    margin-top: 50px;
  }

  /* INTRO
  --------------- */
  .gigaIntroTitle {
    font-size: 3.1875rem;
  }
  .gigaIntroLead {
    font-size: 1.625rem;
  }
  .gigaIntroItems {
    margin-top: 50px;
    padding: 40px;
  }
  .gigaIntroItemTitle {
    font-size: 1.75rem;
  }
  .gigaIntroItemCont {
    display: flex;
    gap: 45px;
  }
  .gigaIntroItemCont figure {
    width: 36.5%;
    margin-bottom: 0;
  }
  .gigaIntroItemCont p {
    font-size: 1.5rem;
  }

  /* FEATURE
  --------------- */
  .gigaFeature {
    padding-top: 110px;
    padding-bottom: 60px;
  }
  .gigaFeature::before {
    border-width: 40px 133px 0;
  }
  .gigaFeatureSubtitle {
    font-size: 1.625rem;
  }
  .gigaFeatureTitle {
    font-size: 3.75rem;
  }
  .gigaFeatureLead {
    font-size: 1.625rem;
  }
  .gigaFeatureImage {
    margin-bottom: 70px;
  }
  .gigaCase {
    margin: 70px auto 60px;
    padding: 70px 90px;
  }
  .gigaCaseSubtitle {
    font-size: 2.625rem;
  }
  .gigaCaseModelImage {
    width: auto;
  }
  .gigaCaseContentTitle {
    font-size: 1.875rem;
  }
  .gigaCaseContentLead {
    font-size: 1.375rem;
  }
  .gigaCaseScene dl {
    width: 50%;
  }
  .gigaCaseScene dt {
    font-size: 1.4375rem;
  }
  .gigaCaseScene dd {
    font-size: 1.0625rem;
  }
  .gigaCaseSolutionItem {
    display: flex;
  }
  .gigaCaseSolutionItemImage {
    display: flex;
    align-items: center;
    width: 30%;
    padding: 20px;
    border-right: 1px solid #ccc
  }
  .gigaCaseSolutionItemContent {
    width: 70%;
    padding: 20px 30px;
  }
  .gigaCaseSolutionItemContent dt {
    font-size: 1.375rem;
  }
  .gigaCaseSolutionItemContent dd {
    font-size: 1rem;
  }
  .gigaCaseSolutionBtn {
    margin-bottom: -10px;
    text-align: right;
  }
  .gigaCaseBtmText {
    font-size: 1.875rem;
  }

  /******** CTA ********/
  .gigaCta {
    padding-top: 100px;
    padding-bottom: 60px;
  }
  .gigaCta::before {
    border-width: 40px 133px 0;
  }
  .gigaCtaTitle {
    font-size: 2.25rem;
  }
  .gigaCtaLead {
    font-size: 1.5rem;
  }
  .gigaCtaImage {
    margin-bottom: 40px;
  }
  .gigaCtaBtn.modBtn03 {
    font-size: 1.25rem;
  }
}
