.tsukuru-group .about-tsukuru {
  margin-top: 13rem;
}

@media screen and (max-width: 767px) {
  .tsukuru-group .about-tsukuru {
    margin-top: 4rem;
  }
}

.tsukuru-group .about-tsukuru__idea {
  margin-top: 10rem;
  text-align: center;
  font-size: 4rem;
  font-weight: bold;
  line-height: 1.75;
}

@media screen and (max-width: 1535px) {
  .tsukuru-group .about-tsukuru__idea {
    font-size: 3rem;
  }
}

@media screen and (max-width: 767px) {
  .tsukuru-group .about-tsukuru__idea {
    margin-top: 4rem;
    font-size: 2.5rem;
  }
}

@media screen and (max-width: 359px) {
  .tsukuru-group .about-tsukuru__idea {
    font-size: 2.2rem;
  }
}

.tsukuru-group .about-tsukuru__policy {
  margin-top: 9rem;
}

.tsukuru-group .about-tsukuru__policy .policy__title {
  display: flex;
  justify-content: center;
  align-items: center;
}

.tsukuru-group .about-tsukuru__policy .policy__title .square {
  width: 32px;
  height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .tsukuru-group .about-tsukuru__policy .policy__title .square {
    width: 28px;
    height: 28px;
  }
}

@media screen and (max-width: 359px) {
  .tsukuru-group .about-tsukuru__policy .policy__title .square {
    width: 20px;
    height: 20px;
  }
}

.tsukuru-group .about-tsukuru__policy .policy__title .square__inner {
  width: 50%;
  height: 50%;
}

.tsukuru-group .about-tsukuru__policy .policy__title .title-text {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.25rem;
}

@media screen and (max-width: 767px) {
  .tsukuru-group .about-tsukuru__policy .policy__title .title-text {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 359px) {
  .tsukuru-group .about-tsukuru__policy .policy__title .title-text {
    font-size: 1.5rem;
  }
}

.tsukuru-group .about-tsukuru__policy .policy__blocks {
  margin-top: 6rem;
  display: flex;
  justify-content: center;
  gap: 20px;
}

@media screen and (max-width: 767px) {
  .tsukuru-group .about-tsukuru__policy .policy__blocks {
    flex-wrap: wrap;
    margin-top: 4rem;
  }
}

.tsukuru-group .about-tsukuru__policy .policy__blocks .block {
  width: calc((100% - 20px * 2) / 3);
  background-color: white;
  border-radius: 8px;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .tsukuru-group .about-tsukuru__policy .policy__blocks .block {
    width: 100%;
  }
}

.tsukuru-group .about-tsukuru__policy .policy__blocks .block span {
  font-size: 2.5rem;
  padding: 8rem 0;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .tsukuru-group .about-tsukuru__policy .policy__blocks .block span {
    font-size: 1.8rem;
    padding: 3rem 0;
  }
}

.tsukuru-group .network {
  background-color: white;
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.tsukuru-group .network .section-title .line-decoration {
  background-image: linear-gradient(#f8d61d 50%, rgba(255, 255, 255, 0) 51%);
}

.tsukuru-group .network__structure {
  margin-top: 14rem;
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure {
    margin-top: 4rem;
  }
}

.tsukuru-group .network__structure .relation_school {
  display: flex;
  justify-content: center;
}

.tsukuru-group .network__structure .relation_family {
  display: flex;
  justify-content: center;
  margin-top: 4rem;
}

@media screen and (max-width: 410px) {
  .tsukuru-group .network__structure .relation_family {
    margin-top: 2rem;
  }
}

.tsukuru-group .network__structure .relation_box {
  width: 202px;
  background-color: white;
  border: solid 6px lightgray;
  border-radius: 18px;
  padding: 2.5rem 0;
  font-size: 2.5rem;
  text-align: center;
}

@media screen and (max-width: 1535px) {
  .tsukuru-group .network__structure .relation_box {
    font-size: 2rem;
  }
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure .relation_box {
    width: 100px;
    padding: 1.5rem 0;
    font-size: 1rem;
    border: solid 3px lightgray;
  }
}

.tsukuru-group .network__structure .relation_box.family {
  width: 296px;
  margin-top: 4rem;
  margin-left: 4rem;
  margin-right: 4rem;
  font-size: 4rem;
}

@media screen and (max-width: 1535px) {
  .tsukuru-group .network__structure .relation_box.family {
    font-size: 3rem;
  }
}

@media screen and (max-width: 1023px) {
  .tsukuru-group .network__structure .relation_box.family {
    width: 252px;
  }
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure .relation_box.family {
    width: 132px;
    font-size: 1.5rem;
    margin-top: 2rem;
    margin-left: 2rem;
    margin-right: 2rem;
  }
}

@media screen and (max-width: 410px) {
  .tsukuru-group .network__structure .relation_box.family {
    margin-left: 1rem;
    margin-right: 1rem;
  }
}

@media screen and (max-width: 359px) {
  .tsukuru-group .network__structure .relation_box.family {
    width: 112px;
    margin-top: 7rem;
    margin-left: 0;
    margin-right: 0;
  }
}

.tsukuru-group .network__structure .tsukuru-role {
  width: 768px;
  margin-top: 8rem;
  margin-left: auto;
  margin-right: auto;
  padding: 4rem;
  background-color: #E9E7E8;
  border-radius: 18px;
  display: flex;
  flex-wrap: wrap;
  gap: 100px;
}

@media screen and (max-width: 1023px) {
  .tsukuru-group .network__structure .tsukuru-role {
    width: 100%;
    gap: 60px;
  }
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure .tsukuru-role {
    margin-top: 4rem;
    padding: 2rem;
    gap: 20px;
  }
}

@media screen and (max-width: 359px) {
  .tsukuru-group .network__structure .tsukuru-role {
    padding: 1rem;
  }
}

.tsukuru-group .network__structure .tsukuru-role .role-box {
  width: calc((100% - 100px) / 2);
  background-color: white;
  border: solid 4px lightgray;
  border-radius: 14px;
  padding: 1rem;
}

@media screen and (max-width: 1023px) {
  .tsukuru-group .network__structure .tsukuru-role .role-box {
    width: calc((100% - 60px) / 2);
  }
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure .tsukuru-role .role-box {
    width: calc((100% - 20px) / 2);
  }
}

.tsukuru-group .network__structure .tsukuru-role .role-box__title {
  height: 186px;
  border-radius: 14px;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure .tsukuru-role .role-box__title {
    height: 96px;
    border-radius: 8px;
  }
}

@media screen and (max-width: 410px) {
  .tsukuru-group .network__structure .tsukuru-role .role-box__title {
    height: 80px;
  }
}

.tsukuru-group .network__structure .tsukuru-role .role-box__title .text {
  color: white;
  font-size: 4rem;
  font-weight: bold;
  text-align: center;
  line-height: 1;
}

@media screen and (max-width: 1535px) {
  .tsukuru-group .network__structure .tsukuru-role .role-box__title .text {
    font-size: 3rem;
  }
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure .tsukuru-role .role-box__title .text {
    font-size: 1.8rem;
  }
}

.tsukuru-group .network__structure .tsukuru-role .role-box__title .text__sub {
  font-size: 3.5rem;
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure .tsukuru-role .role-box__title .text__sub {
    font-size: 1.8rem;
  }
}

.tsukuru-group .network__structure .tsukuru-role .role-box__title.tsukuru {
  background-color: #68C9DC;
}

.tsukuru-group .network__structure .tsukuru-role .role-box__title.tsukuru-farm {
  background-color: #F8DB1D;
}

.tsukuru-group .network__structure .tsukuru-role .role-box__title.tsukuru-online {
  background-color: #6782DB;
}

.tsukuru-group .network__structure .tsukuru-role .role-box__title.tsukuru-minara {
  background-color: #7BDD64;
}

.tsukuru-group .network__structure .tsukuru-role .role-box__role {
  text-align: center;
  padding: 1rem 0;
  font-size: 3.5rem;
}

@media screen and (max-width: 1535px) {
  .tsukuru-group .network__structure .tsukuru-role .role-box__role {
    font-size: 2.5rem;
  }
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure .tsukuru-role .role-box__role {
    font-size: 1.5rem;
  }
}

.tsukuru-group .network__structure .tsukuru-base,
.tsukuru-group .network__structure .tsukuru-labo {
  margin-top: 6rem;
}

.tsukuru-group .network__structure .tsukuru-base .box,
.tsukuru-group .network__structure .tsukuru-labo .box {
  width: 400px;
  margin: 0 auto;
  background-color: white;
  border: solid 4px lightgray;
  border-radius: 14px;
  padding: 2rem;
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure .tsukuru-base .box,
  .tsukuru-group .network__structure .tsukuru-labo .box {
    width: 100%;
  }
}

.tsukuru-group .network__structure .tsukuru-base .box__title,
.tsukuru-group .network__structure .tsukuru-labo .box__title {
  padding: 2.5rem 0;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.tsukuru-group .network__structure .tsukuru-base .box__title .text,
.tsukuru-group .network__structure .tsukuru-labo .box__title .text {
  color: white;
  font-size: 5rem;
  font-weight: bold;
  text-align: center;
  line-height: 1;
}

@media screen and (max-width: 1535px) {
  .tsukuru-group .network__structure .tsukuru-base .box__title .text,
  .tsukuru-group .network__structure .tsukuru-labo .box__title .text {
    font-size: 3rem;
  }
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure .tsukuru-base .box__title .text,
  .tsukuru-group .network__structure .tsukuru-labo .box__title .text {
    font-size: 1.8rem;
  }
}

.tsukuru-group .network__structure .tsukuru-base .box__title .text__sub,
.tsukuru-group .network__structure .tsukuru-labo .box__title .text__sub {
  font-size: 3.5rem;
}

.tsukuru-group .network__structure .tsukuru-base .box__role,
.tsukuru-group .network__structure .tsukuru-labo .box__role {
  text-align: center;
  padding-top: 0.5rem;
  font-size: 3.5rem;
}

@media screen and (max-width: 1535px) {
  .tsukuru-group .network__structure .tsukuru-base .box__role,
  .tsukuru-group .network__structure .tsukuru-labo .box__role {
    font-size: 2.5rem;
  }
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure .tsukuru-base .box__role,
  .tsukuru-group .network__structure .tsukuru-labo .box__role {
    font-size: 1.5rem;
  }
}

.tsukuru-group .network__structure .tsukuru-base .box__title {
  background-color: #F56473;
}

.tsukuru-group .network__structure .tsukuru-labo .box__title {
  background-color: #F29EC2;
}

.tsukuru-group .network__structure .association {
  margin-top: 20rem;
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure .association {
    margin-top: 6rem;
  }
}

.tsukuru-group .network__structure .association .box {
  width: 768px;
  margin: 0 auto;
  background-color: white;
  border: solid 16px lightgray;
  border-radius: 28px;
}

@media screen and (max-width: 1535px) {
  .tsukuru-group .network__structure .association .box {
    width: 568px;
  }
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure .association .box {
    width: 100%;
    border: solid 8px lightgray;
  }
}

.tsukuru-group .network__structure .association .box__title {
  display: flex;
  justify-content: center;
  align-items: center;
}

.tsukuru-group .network__structure .association .box__title .text {
  font-size: 4.25rem;
  text-align: center;
  padding: 2.5rem 0;
}

@media screen and (max-width: 1535px) {
  .tsukuru-group .network__structure .association .box__title .text {
    font-size: 3.25rem;
  }
}

@media screen and (max-width: 767px) {
  .tsukuru-group .network__structure .association .box__title .text {
    font-size: 1.8rem;
  }
}

.tsukuru-group .tsukuru-facilitys .section-title .square {
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.tsukuru-group .tsukuru-facilitys .section-title .square__inner {
  width: 50%;
  height: 50%;
}

.tsukuru-group .tsukuru-facilitys .section-title .title-value {
  margin-left: 2rem;
  font-size: 3rem;
}

@media screen and (max-width: 767px) {
  .tsukuru-group .tsukuru-facilitys .section-title .title-value {
    font-size: 2rem;
  }
}

.tsukuru-group .tsukuru-facilitys__hubs {
  margin-top: 10rem;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

@media screen and (max-width: 767px) {
  .tsukuru-group .tsukuru-facilitys__hubs {
    margin-top: 4rem;
  }
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box {
  width: calc((100% - 20px) / 2);
  background-color: white;
  border-radius: 8px;
  padding: 3rem;
}

@media screen and (max-width: 767px) {
  .tsukuru-group .tsukuru-facilitys__hubs .facility-box {
    width: 100%;
  }
}

@media screen and (max-width: 410px) {
  .tsukuru-group .tsukuru-facilitys__hubs .facility-box {
    padding: 2rem;
  }
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__logo {
  margin-top: 1rem;
  display: flex;
  justify-content: center;
  align-items: center;
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__logo img {
  width: 36%;
  min-width: 180px;
}

@media screen and (max-width: 1365px) {
  .tsukuru-group .tsukuru-facilitys__hubs .facility-box__logo img {
    min-width: 148px;
  }
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__name {
  margin-top: 3rem;
  display: flex;
}

@media screen and (max-width: 1023px) {
  .tsukuru-group .tsukuru-facilitys__hubs .facility-box__name {
    flex-direction: column;
  }
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__name .service-prefix {
  font-weight: bold;
  font-size: 2.6rem;
}

@media screen and (max-width: 1365px) {
  .tsukuru-group .tsukuru-facilitys__hubs .facility-box__name .service-prefix {
    font-size: 2.2rem;
  }
}

@media screen and (max-width: 1023px) {
  .tsukuru-group .tsukuru-facilitys__hubs .facility-box__name .service-prefix {
    font-size: 2rem;
    font-weight: normal;
  }
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__name .service-name {
  font-weight: bold;
  margin-left: 0.5rem;
  font-size: 2.6rem;
}

@media screen and (max-width: 1365px) {
  .tsukuru-group .tsukuru-facilitys__hubs .facility-box__name .service-name {
    font-size: 2.2rem;
  }
}

@media screen and (max-width: 1023px) {
  .tsukuru-group .tsukuru-facilitys__hubs .facility-box__name .service-name {
    margin-top: 0.5rem;
    font-size: 2.4rem;
  }
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__summary {
  height: 184px;
  margin-top: 2rem;
  font-size: 1.6rem;
  line-height: 2;
}

@media screen and (max-width: 1023px) {
  .tsukuru-group .tsukuru-facilitys__hubs .facility-box__summary {
    height: 252px;
  }
}

@media screen and (max-width: 767px) {
  .tsukuru-group .tsukuru-facilitys__hubs .facility-box__summary {
    height: auto;
    padding-bottom: 2rem;
  }
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__slider .slider li {
  padding: 0 0.5rem;
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__details {
  margin-top: 3rem;
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__details .btn-details {
  display: block;
  width: 464px;
  margin: 0 auto;
  text-align: center;
  padding: 1.5rem 0;
  font-size: 2.6rem;
  border-radius: 10px;
  color: #333;
  text-decoration: none;
}

@media screen and (max-width: 1365px) {
  .tsukuru-group .tsukuru-facilitys__hubs .facility-box__details .btn-details {
    width: auto;
    font-size: 2rem;
  }
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__details .btn-details:hover {
  -webkit-transform: scale(0.9);
  transform: scale(0.9);
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__details .btn-details__tsukuru {
  border: solid 10px #56C7DB;
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__details .btn-details__tsukuru-farm {
  border: solid 10px #EFCD1E;
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__details .btn-details__tsukuru-minara {
  border: solid 10px #7BDD66;
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__details .btn-details__tsukuru-online {
  border: solid 10px #9A5E9A;
}

.tsukuru-group .tsukuru-facilitys__hubs .facility-box__details .btn-details__tsukuru-lab {
  border: solid 10px #E9488E;
}
