.management_vision__subtitle {
  font-size: 46px;
  font-weight: 500;
  color: #00a9e0;
  line-height: 2;
  margin-bottom: 40px;
}
@media screen and (max-width: 960px) {
  .management_vision__subtitle {
    font-size: 36px;
    line-height: 1.75;
    margin-bottom: 80px;
  }
}
@media screen and (max-width: 600px) {
  .management_vision__subtitle {
    line-height: 1.5;
  }
}
@media screen and (max-width: 480px) {
  .management_vision__subtitle {
    font-size: 30px;
    line-height: 1.75;
    margin-bottom: 80px;
  }
}

.contents-inner:has(.management_vision__subtitle) .pageTitle {
  margin-bottom: 0;
}
.contents-inner:has(.management_vision__subtitle) .text-block {
  margin-top: 0;
}

.img img {
  max-width: 100%;
  height: auto;
  display: block;
}

.management-vision-block {
  padding: 76px 40px 0 84px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .management-vision-block {
    padding: 63px 0 0 0;
  }
}
.management-vision-block.bg {
  padding: 76px 40px 76px 84px;
  background: #F9F9F9;
}
@media screen and (max-width: 767px) {
  .management-vision-block.bg {
    padding: 40px 20px 20px 20px;
  }
}
.management-vision-block.bg .in-item {
  background: #FFF;
}
.management-vision-block + .management-vision-block.bg {
  margin-top: 76px;
}
.management-vision-block .vision-block-title {
  font-size: 22px;
  display: flex;
  align-items: center;
  position: relative;
  gap: 12px;
  translate: -84px 0;
  color: #00a9e0;
}
@media screen and (max-width: 767px) {
  .management-vision-block .vision-block-title {
    font-size: 18px;
    translate: 0 0;
  }
}
.management-vision-block .vision-block-title + * {
  margin-top: 32px;
}
@media screen and (max-width: 767px) {
  .management-vision-block .vision-block-title + * {
    margin-top: 12px;
  }
}
.management-vision-block .vision-block-title .num {
  background: #00a9e0;
  color: #FFF;
  font-size: 22px;
  padding: 0 10px 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 36px;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .management-vision-block .vision-block-title .num {
    width: 48px;
    height: 28px;
    font-size: 18px;
  }
}
.management-vision-block .shoulder {
  background: #00a9e0;
  color: #FFF;
  font-size: 22px;
  padding: 0 10px 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  height: 36px;
  position: absolute;
  top: 0;
  left: 0;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .management-vision-block .shoulder {
    font-size: 18px;
    height: 27px;
    padding: 0 6px 2px;
  }
}
.management-vision-block .vision-block + .vision-block {
  margin-top: 72px;
}
@media screen and (max-width: 767px) {
  .management-vision-block .vision-block + .vision-block {
    margin-top: 32px;
  }
}
.management-vision-block .management-ttl {
  font-size: 22px;
  color: #00a9e0;
}
@media screen and (max-width: 767px) {
  .management-vision-block .management-ttl {
    font-size: 18px;
  }
}
.management-vision-block .management-ttl + * {
  margin-top: 32px;
}
@media screen and (max-width: 767px) {
  .management-vision-block .management-ttl + * {
    margin-top: 12px;
  }
}
.management-vision-block .management-ttl + .management-list {
  margin-top: 24px;
}
@media screen and (max-width: 767px) {
  .management-vision-block .management-ttl + .management-list {
    margin-top: 12px;
  }
}
.management-vision-block .vision-block-ttl {
  font-size: 20px;
  color: #00a9e0;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .management-vision-block .vision-block-ttl {
    font-size: 16px;
  }
}
.management-vision-block .vision-block-ttl + * {
  margin-top: 32px;
}
@media screen and (max-width: 767px) {
  .management-vision-block .vision-block-ttl + * {
    margin-top: 12px;
  }
}
.management-vision-block .management-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.management-vision-block .management-list li {
  position: relative;
  padding-left: 20px;
  font-size: 16px;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .management-vision-block .management-list li {
    font-size: 14px;
    padding-left: 18px;
  }
}
.management-vision-block .management-list li:before {
  content: "";
  position: absolute;
  display: block;
  top: 10px;
  left: 0;
  width: 14px;
  height: 14px;
  background: #00a9e0;
  border-radius: 100%;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .management-vision-block .management-list li:before {
    width: 12px;
    height: 12px;
    top: 9px;
  }
}
.management-vision-block .img-area {
  margin-top: 32px;
}
.management-vision-block .in-item {
  padding: 18px 16px;
  margin-top: 32px;
  background: #F9F9F9;
}
.management-vision-block .in-item h4.in-management-ttl {
  font-size: 18px;
  text-align: center;
}

.card-grid-area .card-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px 17px;
}
.card-grid-area .card-grid .card {
  border: 1px solid #00a9e0;
  display: grid;
  grid-template-columns: 32px 1fr;
}
.card-grid-area .card-grid .card .card-in-list {
  list-style: outside;
  padding: 8px 15px 10px calc(1rem + 20px);
  list-style-type: disc;
}
.card-grid-area .card-grid .card:before {
  content: "";
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  color: #FFF;
  font-size: 20px;
  background: #00a9e0;
}
.card-grid-area .card-grid .card:nth-of-type(1):before {
  content: "1";
}
.card-grid-area .card-grid .card:nth-of-type(2):before {
  content: "2";
}
.card-grid-area .card-grid .card:nth-of-type(3):before {
  content: "3";
}
.card-grid-area .card-grid .card:nth-of-type(4):before {
  content: "4";
}
.card-grid-area .card-grid .card:nth-of-type(5):before {
  content: "5";
}
.card-grid-area .card-grid .card:nth-of-type(6):before {
  content: "6";
}
.card-grid-area .card-grid .card:nth-of-type(7):before {
  content: "7";
}
.card-grid-area .card-grid .card:nth-of-type(8):before {
  content: "8";
}

.ri-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  width: 100%;
  gap: 40px;
}
@media screen and (max-width: 767px) {
  .ri-list {
    display: flex;
    flex-direction: column;
    gap: 40px;
  }
}
.ri-list .list {
  width: 100%;
}
.ri-list .list.related-content .btn {
  width: 100%;
  height: auto;
  flex-direction: column;
  align-items: flex-start;
  padding: 0;
}
.ri-list .list.related-content .btn .cat-name {
  color: #00a9e0;
  font-weight: 700;
  line-height: 1.5;
}
.ri-list .list.related-content .btn .contents-name {
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  margin: 0;
}
.ri-list .list.related-content .btn .contents-name + * {
  margin-top: 12px;
}


