@charset "UTF-8";
/* ------------------------------
	レスポンシブ
------------------------------ */
/* ------------------------------
	フォント
------------------------------ */
@import url("https://fonts.googleapis.com/css2?family=Wix+Madefor+Text:ital,wght@0,400..800;1,400..800&display=swap");
/* ------------------------------
	カラー
------------------------------ */
/* ------------------------------
	.strength
------------------------------ */
@media screen and (max-width: 768px) {
  .strength .strength_lead {
    margin-top: -80px;
  }
}
.strength .strength_lead .ttl {
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .strength .strength_lead .ttl {
    height: 80px;
  }
}
.strength .strength_lead .flex {
  padding: 35px 50px 28px;
}
@media screen and (max-width: 768px) {
  .strength .strength_lead .flex {
    padding: 15px 8% 15px;
  }
}
@media screen and (max-width: 768px) {
  .strength .strength_ttl_box .strength_en_ttl {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .strength .strength_flow .strength_ttl_box .strength_en_ttl {
    margin: 0;
  }
}
.strength .strength_flow .flow_list {
  flex-direction: column;
}
.strength .strength_flow .flow_list::before {
  display: none;
}
.strength .strength_flow .flow_list .flow_item {
  width: 100%;
  max-width: 100%;
  padding-left: 100px;
  padding-bottom: 60px;
}
@media screen and (max-width: 768px) {
  .strength .strength_flow .flow_list .flow_item {
    padding-left: 50px;
    padding-bottom: 30px;
  }
}
.strength .strength_flow .flow_list .flow_item::before {
  position: absolute;
  top: 0;
  left: 32px;
  margin: auto;
  content: "";
  display: block;
  width: 6px;
  height: 100%;
  background: #15B9D4;
}
@media screen and (max-width: 768px) {
  .strength .strength_flow .flow_list .flow_item::before {
    top: 0;
    width: 2px;
    left: 18px;
  }
}
.strength .strength_flow .flow_list .flow_item:last-child {
  display: block;
}
.strength .strength_flow .flow_list .flow_item .num {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
}
@media screen and (max-width: 768px) {
  .strength .strength_flow .flow_list .flow_item .num {
    width: 35px;
    height: 35px;
    font-size: 2rem;
  }
}
.strength .strength_flow .flow_list .flow_item .ttl {
  display: flex;
  align-items: center;
  min-height: 70px;
  margin-bottom: 10px;
  text-align: left;
  font-size: 2.4rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .strength .strength_flow .flow_list .flow_item .ttl {
    display: block;
    min-height: 0;
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 769px) {
  .strength .strength_flow .flow_list .flow_item .txt {
    padding: 0 30px;
  }
}
.strength .strength_flow .flow_list .flow_item .note {
  text-indent: 0;
  padding: 0;
}
@media screen and (min-width: 769px) {
  .strength .strength_flow .flow_list .flow_item .note {
    padding: 0 30px;
  }
}
.strength .service .strength_ttl_box {
  margin-bottom: 10px;
}
.strength .service .strength_ttl_box .strength_en_ttl {
  position: relative;
  bottom: 0;
}
.strength .service .service_ttl_box .service_ttl {
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  .strength .service .service_ttl_box .service_ttl {
    font-size: 2.6rem;
  }
}
.strength .service .service_box .service_list .service_list_item .txt {
  padding: 0 7px;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .strength .service .service_box .service_list .service_list_item .txt {
    font-size: 1.2rem;
  }
}
.strength .strength_list .strength_item .ttl_box .ttl {
  font-weight: 500;
}
.strength .strength_list .strength_item .ttl_box .txt {
  line-height: 1.2;
}