/*
$4ewsColor: 
    /*col01: #238561,
  col02: #67a2b7,
  col03: #d2843e,
  col04: #cf775b,
  col05: #cf9942,
  col06: #926c28,
  col07: #cc7175,
  col08: #608ea1,
  col09: #5b609a,
  col10: #487390,
  col11: #4e9386,
  col12: #79a153,
  col13: #817499
);
*/
/**/
.image_box {
  border-radius: 0.6rem;
  overflow: hidden;
}

.anchor_list {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .anchor_list {
    flex-direction: column;
  }
}
.anchor_list > li {
  position: relative;
}
@media screen and (min-width: 769px) {
  .anchor_list > li {
    width: 34rem;
    height: 34rem;
  }
}
@media screen and (max-width: 768px) {
  .anchor_list > li {
    width: 54rem;
    height: 54rem;
  }
}
.anchor_list > li::before {
  content: "";
  position: absolute;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  pointer-events: none;
}
@media screen and (min-width: 769px) {
  .anchor_list > li::before {
    inset: -1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .anchor_list > li::before {
    inset: -2.5rem;
  }
}

.anchor_link {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  position: relative;
  background: #fff;
  border-radius: 50%;
  width: 100%;
  height: 100%;
  transition: ease-out 0.6s all;
}
@media screen and (min-width: 769px) {
  .anchor_link {
    padding: 6.4rem 3rem 5rem;
  }
}
@media screen and (max-width: 768px) {
  .anchor_link {
    padding: 8rem 2.4rem 6rem;
  }
}
@media screen and (min-width: 769px) {
  .anchor_link i {
    height: 2.8rem;
  }
}
@media screen and (max-width: 768px) {
  .anchor_link i {
    height: 4.5rem;
  }
}
.anchor_link i img {
  width: auto;
  height: 100%;
}
.anchor_link p {
  font-weight: 500;
  text-align: center;
  color: #0068b2;
}
@media screen and (min-width: 769px) {
  .anchor_link p {
    line-height: 1.5em;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .anchor_link p {
    line-height: 1.5em;
    font-size: 3.6rem;
  }
}
.anchor_link::after {
  content: "";
  display: block;
  background-image: url(../img/strong/arrow.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (min-width: 769px) {
  .anchor_link::after {
    width: 2.4rem;
    height: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .anchor_link::after {
    width: 3.84rem;
    height: 2.4rem;
  }
}
.anchor_link:hover {
  opacity: 0.6;
}

.description_box {
  display: grid;
}
@media screen and (min-width: 769px) {
  .description_box {
    grid-template-columns: 1fr 50rem;
    grid-template-rows: auto 1fr;
    column-gap: 4rem;
    row-gap: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .description_box {
    row-gap: 5rem;
  }
}
.description_box > dt i {
  display: block;
}
@media screen and (min-width: 769px) {
  .description_box > dt i {
    height: 5.6rem;
    translate: 0.9rem 0;
  }
}
@media screen and (max-width: 768px) {
  .description_box > dt i {
    height: 7rem;
  }
}
.description_box > dt i img {
  width: auto;
  height: 100%;
}
.description_box > dt h2 {
  font-weight: 500;
  color: #0068b2;
  font-family: "Noto Serif", serif;
}
@media screen and (min-width: 769px) {
  .description_box > dt h2 {
    margin-top: 2rem;
    line-height: 1.3em;
    font-size: 2.8rem;
  }
}
@media screen and (max-width: 768px) {
  .description_box > dt h2 {
    margin-top: 3rem;
    line-height: 1.3em;
    font-size: 5rem;
  }
}
@media screen and (min-width: 769px) {
  .description_box > dd:last-of-type {
    grid-column: 2/3;
    grid-row: 1/3;
  }
}
@media screen and (max-width: 768px) {
  .description_box > dd:last-of-type {
    grid-row: 2/3;
  }
}

.description_list {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 769px) {
  .description_list {
    row-gap: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .description_list {
    row-gap: 4rem;
  }
}
.description_list > div {
  position: relative;
}
@media screen and (min-width: 769px) {
  .description_list > div {
    padding: 0 0 0 2.6rem;
  }
}
@media screen and (max-width: 768px) {
  .description_list > div {
    padding: 0 0 0 5rem;
  }
}
.description_list > div::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
}
@media screen and (min-width: 769px) {
  .description_list > div::before {
    width: 0.6rem;
  }
}
@media screen and (max-width: 768px) {
  .description_list > div::before {
    width: 1.2rem;
  }
}
.description_list > div:nth-of-type(1)::before {
  background: #0068b2;
}
.description_list > div:nth-of-type(2)::before {
  background: #a59158;
}
.description_list > div:nth-of-type(3)::before {
  background: #009fe8;
}
.description_list > div > dt {
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  .description_list > div > dt {
    line-height: 1.5em;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .description_list > div > dt {
    line-height: 1.5em;
    font-size: 3.6rem;
  }
}
.description_list > div > dd {
  margin-top: 1rem;
}

.card_list {
  display: grid;
}
@media screen and (min-width: 769px) {
  .card_list {
    grid-template-columns: repeat(3, 1fr);
    column-gap: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .card_list {
    row-gap: 8rem;
  }
}

.card_link .image_box {
  position: relative;
}
@media screen and (min-width: 769px) {
  .card_link .image_box {
    height: 28.5rem;
  }
}
@media screen and (max-width: 768px) {
  .card_link .image_box {
    height: 41.4rem;
  }
}
.card_link .image_box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  transition: ease-in-out 0.6s all;
}
.card_link h3 {
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  .card_link h3 {
    padding: 2rem 0 1rem;
    line-height: 1.5em;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .card_link h3 {
    padding: 3rem 0 1.5rem;
    line-height: 1.5em;
    font-size: 3.6rem;
  }
}
@media screen and (min-width: 769px) {
  .card_link:hover .image_box img {
    scale: 1.1;
  }
}

#strong_lead figure {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  #strong_lead figure {
    width: 18.2rem;
  }
}
@media screen and (max-width: 768px) {
  #strong_lead figure {
    width: 36.2rem;
  }
}

@media screen and (min-width: 769px) {
  #strong_lead .lead {
    margin-top: 3rem;
    line-height: 1.5em;
    font-size: 2.2rem;
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  #strong_lead .lead {
    margin-top: 5rem;
    line-height: 1.5em;
    font-size: 4rem;
  }
}

#strong_anchor {
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (min-width: 769px) {
  #strong_anchor {
    background-image: url(../img/strong/anchor_bg_pc.jpg);
    margin-top: 5rem;
    padding-top: 7.5rem;
    padding-bottom: 7.5rem;
  }
}
@media screen and (max-width: 768px) {
  #strong_anchor {
    background-image: url(../img/strong/anchor_bg_sp.jpg);
    margin-top: 8rem;
    padding-top: 11rem;
    padding-bottom: 11rem;
  }
}

#human_resources_development {
  background: #f7f7f7;
}
@media screen and (min-width: 769px) {
  #human_resources_development {
    padding-bottom: 5rem;
  }
}
@media screen and (max-width: 768px) {
  #human_resources_development {
    padding-bottom: 8rem;
  }
}

#human_resources_development .image {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  #human_resources_development .image {
    width: 98rem;
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  #human_resources_development .image {
    margin-top: 4rem;
  }
}

@media screen and (min-width: 769px) {
  #manufacturing_and_service {
    padding-bottom: 5rem;
  }
}
@media screen and (max-width: 768px) {
  #manufacturing_and_service {
    padding-bottom: 8rem;
  }
}

@media screen and (max-width: 768px) {
  #manufacturing_and_service .image {
    margin: 0 0 4rem;
  }
}

#manufacturing_and_service .box {
  display: grid;
}
@media screen and (min-width: 769px) {
  #manufacturing_and_service .box {
    grid-template-columns: 58.6rem 1fr;
    align-items: center;
    column-gap: 4rem;
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  #manufacturing_and_service .box {
    margin-top: 4rem;
  }
}

#high_added_value {
  background: #f7f7f7;
}
@media screen and (min-width: 769px) {
  #high_added_value {
    padding-bottom: 5rem;
  }
}
@media screen and (max-width: 768px) {
  #high_added_value {
    padding-bottom: 8rem;
  }
}

#high_added_value .image {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  #high_added_value .image {
    width: 98rem;
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  #high_added_value .image {
    margin-top: 4rem;
  }
}