@charset "UTF-8";
/*----------------------------------
  カラー
------------------------------------*/
/*----------------------------------
  mv
------------------------------------*/
/*----------------------------------
  greeting
------------------------------------*/
.greeting {
  width: 920px;
  margin: 140px auto 0;
}

.greeting_pic {
  width: 920px;
  margin: 0 auto;
}

.greeting_copy {
  margin: 40px 0;
}

.greeting_copy p {
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
  font-size: 26px;
  letter-spacing: 1.8px;
  line-height: 46px;
}

.greeting_name {
  margin: 0 0 0 auto;
  text-align: right;
}

.greeting_name .name_text1 {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 14px;
  letter-spacing: 1.8px;
  margin-top: 40px;
}

.greeting_name .name_text2 {
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
  font-size: 20px;
  letter-spacing: 1.8px;
  margin-top: 16px;
}

@media (max-width: 768px) {
  .greeting {
    width: 100%;
    margin: 80px auto 0;
  }
  .greeting_pic {
    width: 100%;
  }
  .greeting_copy {
    width: 90%;
    margin: 24px auto;
  }
  .greeting_copy p {
    font-size: 22px;
    letter-spacing: 1.8px;
    line-height: 36px;
  }
  .greeting_text {
    width: 90%;
    margin: 0 auto;
  }
  .greeting_name {
    width: 90%;
    margin: 0 5% 0 auto;
    text-align: right;
  }
  .greeting_name .name_text1 {
    font-family: 'Noto Serif JP', serif;
    font-weight: 300;
    font-size: 14px;
    letter-spacing: 1.8px;
    margin-top: 40px;
  }
  .greeting_name .name_text2 {
    font-family: 'Noto Serif JP', serif;
    font-weight: 500;
    font-size: 20px;
    letter-spacing: 1.8px;
    margin-top: 16px;
  }
}

/*----------------------------------
  philosophy
------------------------------------*/
.philosophy {
  width: 100%;
  background-color: #f5f5f5;
  padding: 64px 0;
  margin-top: 80px;
}

.philosophy_flexcontainer {
  display: flex;
  justify-content: space-between;
  width: 920px;
  margin: 0 auto;
}

.philosophy01, .philosophy02, .philosophy03 {
  width: 300px;
  text-align: center;
}

.philosophy_round {
  width: 166px;
  height: 166px;
  margin: 48px auto 24px;
  text-align: center;
  background-color: #fff;
  border-radius: 200px;
  box-shadow: 0px 3px 20px rgba(3, 44, 25, 0.08);
}

.philosophy_round p {
  font-family: 'Noto Serif JP', serif;
  font-weight: 700;
  font-size: 40px;
  letter-spacing: 1.8px;
  line-height: 166px;
  color: #12693F;
}

@media (max-width: 768px) {
  .philosophy {
    width: 100%;
  }
  .philosophy_flexcontainer {
    display: block;
    width: 100%;
    margin: 0 auto;
  }
  .philosophy01, .philosophy02, .philosophy03 {
    width: 300px;
    text-align: center;
    margin: 0 auto;
  }
}

/*----------------------------------
  history
------------------------------------*/
.history {
  width: 920px;
  margin: 0 auto;
}

.history h2 {
  margin-top: 80px;
}

.history_list {
  margin-top: 64px;
  margin-left: 64px;
}

.history_list dl {
  display: flex;
  margin-top: 40px;
}

.history_list dt {
  font-family: 'Noto Serif JP', serif;
  font-weight: 100;
  font-size: 16px;
  letter-spacing: 1.8px;
  padding-right: 80px;
  margin-right: 80px;
}

.history_list dd {
  position: relative;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: 1.8px;
  width: 570px;
}

.history_list dd:before, .history_list dd:after {
  display: block;
  content: "";
  position: absolute;
}

.history_list dd:before {
  top: 14px;
  left: -81px;
  width: 1px;
  height: calc(100% + 32px);
  background-color: #ddd;
}

.history_list dd:after {
  top: 6px;
  left: -85px;
  width: 9px;
  height: 9px;
  border-radius: 9px;
  background-color: #12693F;
}

@media (max-width: 768px) {
  .history {
    width: 90%;
    margin: 0 auto;
  }
  .history h2 {
    margin-top: 80px;
  }
  .history_list {
    margin: 40px auto 0;
  }
  .history_list dl {
    display: flex;
    margin: 0 auto;
    justify-content: center;
    margin-top: 24px;
  }
  .history_list dt {
    width: 80px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 100;
    font-size: 14px;
    line-height: 1.6;
    letter-spacing: 1.8px;
    padding-right: 16px;
    margin-right: 16px;
  }
  .history_list dd {
    line-height: 1.6;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 1.8px;
    width: calc(100% - 160px);
  }
  .history_list dd:before {
    left: -21px;
  }
  .history_list dd:after {
    left: -26px;
  }
}

/*----------------------------------
  company
------------------------------------*/
.company {
  width: 920px;
  margin: 0 auto;
  margin-top: 140px;
}

.company_pic {
  width: 816px;
  margin: 0 auto;
  margin-top: 80px;
  margin-bottom: 24px;
}

.company_list {
  width: 816px;
  margin: 0 auto;
}

.company_list dl {
  display: flex;
  align-items: center;
  padding: 32px 0;
  border-bottom: 1px solid #ddd;
}

.company_list dt {
  width: 100px;
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
  color: #12693F;
  font-size: 18px;
  letter-spacing: 1.8px;
  margin-right: 140px;
}

.company_list dd {
  font-weight: normal;
  font-size: 16px;
  letter-spacing: 1.8px;
  width: 570px;
  line-height: 26px;
}

@media (max-width: 768px) {
  .company {
    width: 90%;
    margin: 0 auto;
    margin-top: 100px;
  }
  .company_pic {
    width: 100%;
    margin: 0 auto;
    margin-top: 48px;
    margin-bottom: 0px;
  }
  .company_list {
    width: 100%;
    margin: 0 auto;
  }
  .company_list dl {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px 0;
    border-bottom: 1px solid #ddd;
  }
  .company_list dt {
    width: 100px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 500;
    color: #12693F;
    font-size: 14px;
    letter-spacing: 1.8px;
    margin-right: 0px;
  }
  .company_list dd {
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 1.8px;
    width: calc(100% - 160px);
    line-height: 26px;
  }
}

/*----------------------------------
  client
------------------------------------*/
.client {
  width: 1120px;
  margin: 0 auto;
  margin-top: 140px;
  padding-top: 48px;
  padding-bottom: 40px;
  background-color: #f5f5f5;
}

.client_list {
  display: flex;
  width: 920px;
  margin: 40px auto 0;
  background-color: #fff;
}

.client_listitem01, .client_listitem02, .client_listitem03 {
  width: 300px;
  text-align: center;
  padding-top: 26px;
  margin-bottom: 40px;
}

.client_listitem01 p, .client_listitem02 p, .client_listitem03 p {
  text-align: center;
  margin-top: 20px;
  font-size: 14px;
  line-height: calc(27 / 16);
  letter-spacing: 1.8px;
}

@media (max-width: 768px) {
  .client {
    width: 100%;
    margin: 0 auto;
    margin-top: 80px;
    padding-top: 48px;
    padding-bottom: 40px;
    background-color: #f5f5f5;
  }
  .client_list {
    display: block;
    width: 90%;
    margin: 40px auto 0;
    padding: 24px 0;
    background-color: #fff;
  }
  .client_listitem01, .client_listitem02, .client_listitem03 {
    width: 300px;
    text-align: center;
    padding-top: 0;
    margin: 0 auto;
  }
}

/*----------------------------------
  acccess
------------------------------------*/
.access {
  width: 1120px;
  margin: 0 auto;
  margin-top: 140px;
}

.access_flexcontainer {
  display: flex;
  justify-content: space-between;
  margin-top: 64px;
}

.access_item01, .access_item02, .access_item03 {
  width: 355px;
  text-align: center;
}

.access_item01 h3, .access_item02 h3, .access_item03 h3 {
  margin-top: 32px;
  font-size: 16px;
  line-height: calc(27 / 16);
  font-weight: bold;
  letter-spacing: 1.8px;
}

.access_item01 p, .access_item02 p, .access_item03 p {
  margin-top: 24px;
  font-size: 14px;
  line-height: calc(27 / 16);
  font-weight: normal;
  letter-spacing: 1.8px;
}

.access_item01_gmap, .access_item02_gmap, .access_item03_gmap {
  margin-top: 24px;
}

@media (max-width: 768px) {
  .access {
    width: 90%;
    margin: 0 auto;
    margin-top: 80px;
  }
  .access_flexcontainer {
    display: block;
    margin: 0 auto;
    margin-top: 48px;
  }
  .access_item01, .access_item02, .access_item03 {
    width: 90%;
    margin: 0 auto;
    text-align: center;
  }
  .access_item01 h3, .access_item02 h3, .access_item03 h3 {
    margin-top: 24px;
  }
  .access_item01 p, .access_item02 p, .access_item03 p {
    margin-top: 16px;
  }
  .access_item01_gmap, .access_item02_gmap, .access_item03_gmap {
    margin-top: 24px;
    margin-bottom: 80px;
  }
}

/*----------------------------------
  recruit
------------------------------------*/
.recruit {
  width: 920px;
  margin: 0 auto;
  margin-top: -100px;
  padding-top: 100px;
  margin-top: 140px;
}

.recruit_container {
  width: 816px;
  margin: 0 auto;
  margin-top: 26px;
}

.recruit_container dl {
  display: flex;
  align-items: center;
  padding: 32px 0;
  border-bottom: 1px solid #ddd;
}

.recruit_container dt {
  width: 100px;
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
  color: #12693F;
  font-size: 18px;
  letter-spacing: 1.8px;
  margin-right: 140px;
}

.recruit_container dd {
  font-weight: normal;
  font-size: 16px;
  letter-spacing: 1.8px;
  width: 570px;
  line-height: 26px;
}

@media (max-width: 768px) {
  .recruit {
    width: 90%;
    margin: 0 auto;
    margin-top: -100px;
    padding-top: 100px;
  }
  .recruit_container {
    width: 100%;
    margin: 0 auto;
    margin-top: 20px;
  }
  .recruit_container dl {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px 0;
    border-bottom: 1px solid #ddd;
  }
  .recruit_container dt {
    width: 100px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 500;
    color: #12693F;
    font-size: 14px;
    letter-spacing: 1.8px;
    margin-right: 0px;
  }
  .recruit_container dd {
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 1.8px;
    width: calc(100% - 100px);
    line-height: 26px;
  }
}
/*# sourceMappingURL=style.css.map */
