@charset "utf-8";

.fc-y01 {
  color: #E3CA43;
}

/* 経営理念 */

#philosophy{
  padding-top: 10rem;
  padding-bottom: 6rem;
}

#philosophy hgroup span{
  color: #13269C;
  font-size: 1.25rem;
  font-family: Roboto;
}

#philosophy hgroup h2{
  font-size: clamp(2rem, 1.71rem + 1.19vw, 2.75rem);
  margin-bottom: 3rem;
  line-height: 1.5;
  letter-spacing: clamp(0.2rem, 0.171rem + 0.12vw, 0.275rem);
}

#philosophy hgroup h2 + p{
  font-size: 1.25rem;
  letter-spacing: 0.125rem;
}

.philosophy-shape{
  text-align: center;
}

.philosophy-shape p{
  background-image: url(../images/company/shape.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: right;
  color: #f5f5f5;
  font-size: 1.5rem;
  /* padding:2rem 0; */
  margin-bottom: 0;
  height: 131px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.philosophy-shape + p{
  font-size: 1.125rem;
  margin-top: 2rem;
  margin-bottom: 2rem;
  letter-spacing: 0.1125rem;
}

@media screen and (min-width:992px) {

  #philosophy{
    padding-top: 5rem;
    padding-bottom: 15rem;
  }

  /* #philosophy hgroup h2{
    font-size: 2.75rem;
  } */

  .philosophy-contents{
    margin-top: 10rem;
  }

  .philosophy-shape{
    margin-bottom: 2rem;
  }

  .philosophy-shape p{
    font-size: 1.75rem;
    /* padding:1rem; */
  }

  .philosophy-shape + p{
    margin-top: 0;
    margin-bottom: 2rem;
  }

}


/* ごあいさつ */

#greeting{
  background-color: #fff;
  padding-top: 6rem;
  padding-bottom: 10rem;
  position: relative;
}

#greeting::before{
  content: '';
  display: block;
  width: 60%;
  height: 40px;
  background-image: url(../images/shape/rectangle2.svg);
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  right: 0;
  bottom: -1px;
}

#greeting hgroup span{
  color: #13269C;
  font-size: 1.25rem;
  font-family: Roboto;
}

#greeting hgroup h2{
  font-size: clamp(2rem, 1.71rem + 1.19vw, 2.75rem);
  line-height: 1.5;
  letter-spacing:clamp(0.2rem, 0.171rem + 0.12vw, 0.275rem);
}

#greeting hgroup h2 span{
  font-size: clamp(2rem, 1.71rem + 1.19vw, 2.75rem);
  letter-spacing: clamp(0.2rem, 0.171rem + 0.12vw, 0.275rem);
  color: #4558D1;
}

.greeting-sign{
  text-align: right;
  font-size: 1.25rem;
  margin-top: 64px;
}

.greeting-sign small{
  font-size: 1rem;
}

@media screen and (min-width:992px) {

  #greeting{
    padding-top: 15rem;
    padding-bottom: 10rem;
  }

  #greeting::before{
    height: 60px;
    width: 40%;
  }


  #greeting hgroup{
    position: relative;
  }

  #greeting hgroup p{
    font-size: clamp(24px,2.419vw,32px);
    min-height: 0vw;
    position: absolute;
    bottom: 0;
    right: 0;
    margin-bottom: 0;
  }
  #greeting hgroup p small{
    font-size: 1rem;
  }

}

/* 会社概要 */

#profile{
  padding-top: 10rem;
  /* padding-bottom: 6rem; */
  background-color: #13269C;
  color: #fff;
}

#profile hgroup{
  margin-bottom: 80px;
}

#profile hgroup span{
  /* color: #E3CA43; */
  font-size: 1.25rem;
}

#profile hgroup h2{
  font-size: clamp(2rem, 1.71rem + 1.19vw, 2.75rem);
  letter-spacing: clamp(0.2rem, 0.171rem + 0.12vw, 0.275rem);
}

#profile hgroup h2 span{
  font-size: clamp(2rem, 1.71rem + 1.19vw, 2.75rem);
  letter-spacing: clamp(0.2rem, 0.171rem + 0.12vw, 0.275rem);
}
#profile dl{
  border-bottom: 1px solid #fff;
}
#profile dt{
  padding: 1rem 0 12px;
  border-top: 1px solid #fff;
}

#profile dd{
  font-weight: 400;
  margin-bottom: 1rem;
  padding: 0;
}

#profile dl + div{
  height: clamp(25rem, 23.793rem + 4.95vw, 28.125rem);
  margin-top: 3rem;
}

/* 会社沿革 */

#history{
  background-color: #13269C;
  color: #fff;
  padding-top: 10rem;
}

#history hgroup{
  margin-bottom: 3rem;
  text-align: center;
}

#history hgroup span{
  font-size: 1.25rem;
}

#history hgroup h2{
  font-size: clamp(2rem, 1.71rem + 1.19vw, 2.75rem);
  letter-spacing: clamp(0.2rem, 0.171rem + 0.12vw, 0.275rem);
}

#history hgroup h2 span{
  font-size: clamp(2rem, 1.71rem + 1.19vw, 2.75rem);
  letter-spacing: clamp(0.2rem, 0.171rem + 0.12vw, 0.275rem);
}

#history dl{
  border-bottom: 1px solid #fff;
}
#history dt{
  padding: 1rem 0 24px;
  border-top: 1px solid #fff;
}

#history dd{
  font-weight: normal;
  margin-bottom: 1rem;
  padding: 0;
}

#history dl +div{
  margin: 10rem 0;
  text-align: center;
}

.history-pic{
  height: 50vh;
}

.contact_link {
  font-size: 1.25rem;
}

@media screen and (min-width:992px) {

  /* #profile h2,
  #history h2{
    font-size: 2.75rem;
  } */

  #profile dl dt,
  #history dl dt{
    padding-bottom: 1rem;
  }

  #profile dl dd,
  #history dl dd{
    margin-bottom: 0;
    border-top: 1px solid #fff;
    padding: 1rem 0;
  }

  #history dl + div{
    margin: 15rem 0;
  }

  .history-pic{
    height: auto;
  }

}