@charset "UTF-8";

.Title {
  font: 500 var(--font-size-xl) / 1.2 var(--font-family-sans);
  margin: 2rem auto;
  width: fit-content;
}

@media screen and (min-width: 768px) {
  .Title {
    font-size: 2.5rem;
  }
}

.Concept {
  margin: 2rem auto 6rem auto;
  max-width: 1000px;
  padding: 0 10px;
}

.Concept_CatchPhrase {
  display: flex;
  flex-wrap: wrap;
  font: 400 3rem / 1.2 var(--font-family-serif);
  justify-content: center;
  margin: 0 auto 2rem auto;
  width: 100%;
}

.Concept_CatchPhraseBlue {
  color: #0b318e;
}

.Concept_CatchPhraseComma {
  letter-spacing: -1.5rem;
}

.Concept_CatchPhraseGreen {
  color: #a9ce05;
}

.Concept_Overview {
  color: var(--color-gray);
  font: 400 var(--font-size-m) / 1.5 var(--font-family-sans);
  font-feature-settings: "palt";
  letter-spacing: .08em;
  margin: 0 auto;
  text-align: left;
  width: fit-content;
}

.Concept_OverviewText {
  margin: 0 0 0 0;
}

.Concept_OverviewText br {
  display: none;
}

@media screen and (min-width: 576px) {
  .Concept_Overview {
    text-align: center;
  }

  .Concept_OverviewText br {
    display: inline-block;
  }
}

@media screen and (min-width: 768px) {
  .Concept {
    margin: 4rem auto 12rem auto;
  }

  .Concept_CatchPhrase {
    font-size: 4rem;
  }

  .Concept_CatchPhraseComma {
    letter-spacing: -2rem;
  }
}

.Effort {
  width: 100%;
}

.Effort_Concept {
  margin: 0 0 2.5rem 0;
  padding: 2.5rem 24px;
  width: 100%;
}

.Effort_Concept.Concept-Sustainable {
  background-color: #e2f0d9;
}

.Effort_Concept.Concept-CleanFactory {
  background-color: #fbe5d6;
}

.Effort_Concept.Concept-DX {
  background-color: #deebf7;
}

.Effort_Heading {
  color: var(--color-gray-dark);
  display: flex;
  flex-wrap: wrap;
  font: 500 var(--font-size-l) / 1.2 var(--font-family-sans);
  justify-content: center;
  letter-spacing: .2rem;
  margin: 0 auto 2rem auto;
  width: fit-content;
}

.Effort_Overview {
  color: var(--color-gray-dark);
  font: 400 var(--font-size-s) / 1.5 var(--font-family-sans);
  font-feature-settings: "palt";
  letter-spacing: .08em;
  margin: 0 auto;
  max-width: 750px;
  text-align: left;
}

.Effort_OverviewText {
  margin: 0 0 0 0;
}

.Effort_OverviewText br {
  display: none;
}

.Effort_Case {
  margin: 0 auto 8rem auto;
  max-width: 1000px;
  width: 95%;
}

.Effort_CaseTitle {
  display: flex;
  flex-wrap: wrap;
  font: 500 1.2rem / 1.2 var(--font-family-sans);
  justify-content: center;
  margin: 0 auto 1rem auto;
  width: fit-content;
}

.Effort_CaseTitle.CaseTitle-Sustainable {
  color: #548235;
}

.Effort_CaseTitle.CaseTitle-CleanFactory {
  color: #d57853;
}

.Effort_CaseTitle.CaseTitle-DX {
  color: #2e75b6;
}

.Effort_CaseDepartment {
  color: var(--color-gray-dark);
  font: 400 var(--font-size-m) / 1.5 var(--font-family-sans);
  margin: 0 auto 1rem auto;
  width: fit-content;
}

.Effort_CaseImages {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem 16px;
  justify-content: space-evenly;
  margin: 0 0 2.5rem 0;
  width: 100%;
}

.Effort_CaseImage {
  flex: 0 1 auto;
  margin: 0;
  max-height: 250px;
  max-width: 100%;
  width: auto;
}

.Effort_CaseDetail {
  font: 400 var(--font-size-s) / 1.5 var(--font-family-sans);
  font-feature-settings: "palt";
  letter-spacing: .08em;
  margin: 0 auto;
  max-width: 800px;
  text-align: left;
}

.Effort_CaseDetailText {
  margin: 0 0 0 0;
}

.Effort_CaseDetailText br {
  display: none;
}

.Effort_CaseCRP {
  font: 600 var(--font-size-l) / 1.5 var(--font-family-sans);
  margin: 0 auto;
  text-align: center;
  width: fit-content;
}

.Effort_CaseCRPStrong {
  color: #0b318e;
  font-size: 1.6em;
}

@media screen and (min-width: 576px) {
  .Effort_Overview {
    text-align: center;
    font-size: var(--font-size-m);
  }

  .Effort_OverviewText br {
    display: inline-block;
  }

  .Effort_CaseDetail {
    text-align: center;
    font-size: var(--font-size-m);
  }

  .Effort_CaseDetailText {
    margin: 0 0 0 0;
  }

  .Effort_CaseDetailText br {
    display: inline-block;
  }
}

@media screen and (min-width: 768px) {
  .Effort_Concept {
    margin: 0 0 4rem 0;
  }

  .Effort_Heading {
    font-size: var(--font-size-xl);
    letter-spacing: .5rem;
  }

  .Effort_CaseTitle {
    font-size: var(--font-size-l);
  }

  .Effort_CaseDepartment {
    font-size:  1.2rem;
  }

  .Effort_CaseImage {
    max-height: 400px;
    max-width: 600px;
  }

  .Effort_CaseCRP {
    font-size: var(--font-size-xl);
  }
}