@charset "UTF-8";
.detail .flex-box {
  padding-top: 0px;
  margin-top: 30px;
  align-items: center;
  margin-bottom: 30px;
}
.detail .flex-box:nth-child(odd) {
  flex-direction: row-reverse;
}
.detail .flex-box:nth-child(odd) .img {
  padding-right: 0%;
  padding-left: 5%;
}
.detail .flex-box:nth-child(even) {
  flex-direction: row;
}
.detail .flex-box:nth-child(even) .img {
  padding-right: 5%;
  padding-left: 0%;
}
.detail .flex-box:nth-child(4),
.detail .flex-box:nth-child(6) {
  flex-direction: row-reverse;
}
.detail .flex-box:nth-child(4) .img,
.detail .flex-box:nth-child(6) .img {
  padding-right: 0%;
  padding-left: 5%;
}
.detail .flex-box:nth-child(5) {
  flex-direction: row;
}
.detail .flex-box:nth-child(5) .img {
  padding-right: 5%;
  padding-left: 0%;
}
.detail .text-block {
  width: 1200px;
  max-width: 90%;
  margin: 30px auto;
  width: 1000px;
}
.detail h2 {
  font-size: 35px;
  font-weight: 400;
  font-family: "toppan-bunkyu-mincho-pr6n", serif;
  line-height: 150%;
  font-weight: 400;
  font-style: normal;
}

.circle-box {
  /* 均等に7つの円を配置 */
}
.circle-box .container {
  position: relative;
  width: 750px;
  height: 750px;
  margin: auto;
  margin-top: 150px;
  margin-bottom: 250px;
}
.circle-box .title {
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 30px;
  z-index: 1;
  color: #cf111b;
  text-align: center;
  font-family: "toppan-bunkyu-mincho-pr6n", serif;
  line-height: 150%;
  font-weight: 400;
  font-style: normal;
  line-height: 150%;
}
.circle-box .title span {
  font-size: 60px;
  padding-right: 10px;
  font-weight: 600;
}
.circle-box .circle {
  width: 250px;
  height: 250px;
  border-radius: 50%;
  padding: 40px;
  background-color: #f8f8f8;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: absolute;
}
.circle-box .circle h3 {
  margin: 0;
  font-size: 20px;
  margin-bottom: 10px;
  color: #cf111b;
  font-weight: 600;
}
.circle-box .circle p {
  font-size: 14px;
  margin: 5px 0 0;
  line-height: 200%;
}
.circle-box .circle:nth-child(2) {
  top: 10%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.circle-box .circle:nth-child(3) {
  top: 35%;
  left: 85%;
  transform: translate(-50%, -50%);
}
.circle-box .circle:nth-child(4) {
  top: 70%;
  left: 100%;
  transform: translate(-50%, -50%);
}
.circle-box .circle:nth-child(5) {
  top: 100%;
  left: 72.5%;
  transform: translate(-50%, -50%);
}
.circle-box .circle:nth-child(6) {
  top: 100%;
  left: 27.5%;
  transform: translate(-50%, -50%);
}
.circle-box .circle:nth-child(7) {
  top: 70%;
  left: 0%;
  transform: translate(-50%, -50%);
}
.circle-box .circle:nth-child(8) {
  top: 30%;
  left: 15%;
  transform: translate(-50%, -50%);
}

@media (max-width: 1100px) {
  .circle-box .container {
    width: 600px;
    height: 600px;
  }
  .circle-box .circle {
    width: 200px;
    height: 200px;
    padding: 20px;
  }
  .circle-box .circle h3 {
    font-size: 18px;
  }
  .circle-box .circle p {
    font-size: 14px;
  }
}
@media (max-width: 900px) {
  .circle-box .container {
    display: flex;
    flex-wrap: wrap;
    width: auto;
    height: auto;
    justify-content: center;
    gap: 20px 30px;
    margin: 0 auto;
    margin-top: 50px;
    margin-bottom: 50px;
    max-width: 90%;
  }
  .circle-box .container .title {
    position: static;
    width: 100%;
    transform: translate(0, 0) !important;
  }
  .circle-box .container .circle {
    width: 250px;
    height: 250px;
    position: static;
    transform: translate(0, 0) !important;
    padding: 40px;
  }
}
@media (max-width: 700px) {
  .detail {
    padding-top: 10px;
  }
  .detail .flex-box:nth-child(odd) {
    flex-direction: column-reverse;
  }
  .detail .flex-box:nth-child(odd) .img {
    padding-right: 0%;
    padding-left: 0%;
  }
  .detail .flex-box:nth-child(even) {
    flex-direction: column-reverse;
  }
  .detail .flex-box:nth-child(even) .img {
    padding-right: 0%;
    padding-left: 0%;
  }
  .detail .flex-box:nth-child(4),
  .detail .flex-box:nth-child(6) {
    flex-direction: column-reverse;
  }
  .detail .flex-box:nth-child(4) .img,
  .detail .flex-box:nth-child(6) .img {
    padding-right: 0%;
    padding-left: 0%;
  }
}/*# sourceMappingURL=vision.css.map */