@charset "UTF-8";
/* ------------------------------
	レスポンシブ
------------------------------ */
/* ------------------------------
	フォント
------------------------------ */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;700&display=swap");
/* ------------------------------
	カラー
------------------------------ */
/* ------------------------------
	.common
------------------------------ */
.content {
  overflow: visible;
}

/* ------------------------------
	.about
------------------------------ */
.about {
  position: relative;
  padding: 12rem 0;
}
@media screen and (max-width: 768px) {
  .about {
    padding: 6.4rem 0;
  }
}
.about .ttl_box {
  margin-bottom: 4.8rem;
}
.about .ttl_box .txt {
  margin-top: 1.6rem;
}
.about .about_wrap + .about_wrap {
  margin-top: 12rem;
}
@media screen and (max-width: 768px) {
  .about .about_wrap + .about_wrap {
    margin-top: 6.4rem;
  }
}
.about .sec_ttl {
  margin-bottom: 2.4rem;
}
.about .list .list_txt {
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.6;
}
.about .list .list_txt::before {
  content: "・";
  color: #3B9587;
}
.about .list .list_txt + .list_txt {
  margin-top: 0.2rem;
}
.about .txt_min {
  font-size: 1.4rem;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .about .txt_min {
    font-size: 1.3rem;
  }
}
.about {
  /* ------------------------------
  	.greeting
  ------------------------------ */
}
.about .greeting .ttl {
  margin-bottom: 3.2rem;
  font-weight: bold;
  line-height: 1.5;
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .about .greeting .ttl {
    font-size: 2rem;
  }
}
.about .greeting .flex {
  margin-top: 3.2rem;
  gap: 3.2rem;
}
@media screen and (max-width: 768px) {
  .about .greeting .flex {
    flex-direction: column;
    align-items: center;
  }
}
.about .greeting .flex .txt_box {
  width: 100%;
}
.about .greeting .flex .txt + .txt {
  margin-top: 3.2rem;
}
.about .greeting .flex .img {
  flex-shrink: 0;
  width: 28.2rem;
}
.about {
  /* ------------------------------
  	.company
  ------------------------------ */
}
@media screen and (max-width: 768px) {
  .about .company .sec_ttl {
    margin-bottom: 0;
  }
}
.about .company .company_wrap .company_box {
  display: flex;
  gap: 4rem;
  padding: 2.4rem 0;
  border-bottom: 1px solid #A8AFB2;
}
@media screen and (max-width: 768px) {
  .about .company .company_wrap .company_box {
    flex-direction: column;
    gap: 0.8rem;
  }
}
.about .company .company_wrap .company_box .company_ttl {
  flex-shrink: 0;
  width: 11.6rem;
  font-weight: bold;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .about .company .company_wrap .company_box .company_ttl {
    width: 100%;
    line-height: 1.6;
  }
}
.about .company .company_wrap .company_box .txt {
  width: 100%;
}
.about .company .company_wrap .company_box .list {
  margin-top: 1.6rem;
}
.about .company .company_wrap .company_box .map {
  position: relative;
  width: 100%;
  height: 35.6rem;
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .about .company .company_wrap .company_box .map {
    height: 40rem;
  }
}
.about .company .company_wrap .company_box .map iframe {
  width: 100%;
  height: 100%;
  border: 0;
}
.about .company .company_wrap .company_box .list.flex {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .about .company .company_wrap .company_box .list.flex {
    flex-direction: column;
  }
}
.about .company .company_wrap .company_box .list.flex .list_txt {
  flex: 50%;
}
@media screen and (max-width: 768px) {
  .about .company .company_wrap .company_box .list.flex .list_txt {
    width: 100%;
  }
}
@media screen and (min-width: 769px) {
  .about .company .company_wrap .company_box .list.flex .list_txt:nth-child(2) {
    margin-top: 0;
  }
}
.about {
  /* ------------------------------
  	.history
  ------------------------------ */
}
@media screen and (max-width: 768px) {
  .about .history .sec_ttl {
    margin-bottom: 0;
  }
}
.about .history .history_wrap .history_box {
  display: flex;
  gap: 4rem;
  padding: 2.4rem 0;
  border-bottom: 1px solid #A8AFB2;
}
@media screen and (max-width: 768px) {
  .about .history .history_wrap .history_box {
    flex-direction: column;
    gap: 0.8rem;
  }
}
.about .history .history_wrap .history_box .history_ttl {
  flex-shrink: 0;
  display: flex;
  justify-content: space-between;
  width: 11rem;
  font-weight: bold;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .about .history .history_wrap .history_box .history_ttl {
    width: 10rem;
  }
}
.about .history .box {
  margin-top: 2.4rem;
  padding: 2.4rem 3.2rem;
  background: #fff;
  box-shadow: 0 0 0.8rem rgba(215, 227, 226, 0.6);
  border-radius: 0.4rem;
}
@media screen and (max-width: 768px) {
  .about .history .box {
    padding: 2rem;
  }
}
.about .history .box .mid_ttl {
  margin-bottom: 2rem;
}
.about .history .box .flex {
  display: flex;
  justify-content: space-between;
  gap: 3.2rem;
}
@media screen and (max-width: 768px) {
  .about .history .box .flex {
    flex-direction: column;
  }
}
.about .history .box .flex .txt_box {
  flex: 1;
}
.about .history .box .flex .txt_box .txt {
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .about .history .box .flex .txt_box .txt {
    font-size: 1.3rem;
  }
}
.about .history .box .flex .txt_box .line_btn {
  margin-top: 2.8rem;
}
@media screen and (max-width: 768px) {
  .about .history .box .flex .txt_box .line_btn {
    margin-top: 1.2rem;
  }
}
.about .history .box .flex .img_box {
  flex: 1;
}
.about {
  /* ------------------------------
  	.recruit
  ------------------------------ */
}
.about .recruit {
  margin-top: 12rem;
}
@media screen and (max-width: 768px) {
  .about .recruit {
    margin-top: 6.4rem;
  }
}
.about .recruit .recruit_contant {
  position: relative;
}
.about .recruit .recruit_contant::before, .about .recruit .recruit_contant::after {
  position: absolute;
  content: "";
  display: block;
  width: 8rem;
  height: 8rem;
  background: #3B9587;
}
.about .recruit .recruit_contant::before {
  top: -0.5rem;
  left: -0.5rem;
  border-radius: 0.4rem 0 0 0;
}
.about .recruit .recruit_contant::after {
  bottom: -0.5rem;
  right: -0.5rem;
  border-radius: 0 0 0.4rem 0;
}
.about .recruit .recruit_wrap {
  position: relative;
  z-index: 2;
  padding: 3.2rem;
  background: #fff;
  box-shadow: 0 0 0.8rem rgba(215, 227, 226, 0.6);
  border-radius: 0.4rem;
}
@media screen and (max-width: 768px) {
  .about .recruit .recruit_wrap {
    padding: 6.4rem 2.4rem;
  }
}
@media screen and (min-width: 769px) {
  .about .recruit .txt_box {
    max-width: 33rem;
  }
}
@media screen and (min-width: 769px) {
  .about .recruit .str_ttl .ttl_txt {
    font-size: 3.2rem;
  }
}
.about .recruit .txt {
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .about .recruit .txt {
    margin-top: 2.4rem;
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 769px) {
  .about .recruit .img {
    position: absolute;
    right: 3.2rem;
    top: 0;
    bottom: 0;
    margin: auto;
    display: flex;
    align-items: center;
    max-width: 33rem;
  }
}
@media screen and (max-width: 768px) {
  .about .recruit .img {
    margin-top: 1.6rem;
  }
}
.about .recruit .center_btn {
  margin-top: 3.2rem;
}