main {
  container-type: inline-size;
  padding-bottom: 30rem;
}
main .text {
  margin-top: 4.8rem;
  margin-left: auto;
  width: 83.3333333333cqw;
}
main .text .title {
  width: 33.3333333333cqw;
}
main .text h2 {
  width: 33.3333333333cqw;
  font-size: 3.5rem;
  font-size: 3rem;
}
main .text .to_all {
  position: relative;
  margin-top: auto;
  padding: 0.2rem 0;
  padding-left: 1.6rem;
  width: 33.3333333333cqw;
  width: fit-content;
  font-size: 1.6rem;
  font-size: 1.8rem;
  line-height: 1.2;
}
main .text .to_all:after {
  content: "";
  position: absolute;
  top: 0.2rem;
  left: 0;
  display: block;
  margin: auto;
  width: 0.8rem;
  height: 0.8rem;
  transform: scale(-1, 1);
  transition: transform 0.1s ease;
  background-image: url("../images/arrow_b.svg");
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}
main .text .to_all:hover:after {
  transform: translate3d(-0.2rem, 0px, 0px) scale(-1, 1);
}
main .text .wrap {
  margin-left: auto;
  width: 50cqw;
}
main .text .wrap p {
  width: 50cqw;
}
@media only screen and (max-width: 860px) {
  main {
    padding-bottom: 16rem;
  }
  main .text {
    margin-top: 4.8rem;
    width: 100cqw;
    width: 100%;
  }
  main .text .title {
    width: 100cqw;
    width: 100%;
  }
  main .text h2 {
    width: 100cqw;
    width: 100%;
    font-size: 3rem;
  }
  main .text .to_all {
    margin-top: 4.8rem;
    font-size: 1.6rem;
  }
  main .text .wrap {
    margin-top: 4.8rem;
    width: 100cqw;
    width: 100%;
  }
  main .text .wrap p {
    width: 100cqw;
    width: 100%;
  }
}