@charset "UTF-8";
/* コンテンツ最大幅 */
/* color */
/* ============================================ */
/* font */
/* ============================================ */
.common-main__ttl {
  top: 40%;
  right: 25cqw;
}
@media (width < 1681px) {
  .common-main__ttl {
    right: 24.5cqw;
  }
}
@media (width < 1201px) {
  .common-main__ttl {
    right: 23.5cqw;
  }
}
@media screen and (max-width: 1024px) {
  .common-main__ttl {
    right: 24cqw;
  }
}
@media screen and (max-width: 767px) {
  .common-main__ttl {
    top: 35%;
    right: 22cqw;
  }
}
@media all and (max-width: 480px) {
  .common-main__ttl {
    top: 34%;
    right: 25.5cqw;
  }
}
.common-bggra .common-ttl {
  margin-top: 50px;
}
@media all and (max-width: 480px) {
  .common-bggra .common-ttl {
    margin-top: 0;
  }
}
.common-bggra.last .common-bggra__en {
  line-height: 1.1;
}

.training-benefits ul {
  display: flex;
  flex-wrap: wrap;
  gap: 15px 0;
  list-style: none;
  max-width: 900px;
  margin: 80px auto 0;
}
@media screen and (max-width: 767px) {
  .training-benefits ul {
    margin: 40px auto 0;
  }
}
.training-benefits ul li {
  width: 50%;
  font-size: 2.7rem;
  font-weight: 700;
}
@media screen and (max-width: 1367px) {
  .training-benefits ul li {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  .training-benefits ul li {
    width: 100%;
  }
}
@media all and (max-width: 480px) {
  .training-benefits ul li {
    font-size: min(5.5vw, 1.7rem);
  }
}
.training-benefits ul li::before {
  content: "・";
  display: inline-block;
  padding-right: 0.5em;
}
.training-benefits ul li span.small {
  display: block;
  font-size: 1.6rem;
  font-weight: 400;
  margin-top: 10px;
  padding-left: 2em;
}
@media all and (max-width: 480px) {
  .training-benefits ul li span.small {
    font-size: min(3.8vw, 1.4rem);
    padding-left: 1.5em;
  }
}
.training-normal {
  padding: 120px 0;
}
@media screen and (max-width: 1367px) {
  .training-normal {
    padding: 70px 0;
  }
}
.training-normal .common-col2 {
  margin-top: 70px;
}
@media screen and (max-width: 1367px) {
  .training-normal .common-col2 {
    margin-top: 40px;
  }
}
@media all and (max-width: 480px) {
  .training-normal .common-col2 {
    gap: 25px;
  }
}
.training-normal .common-col2 h3 {
  text-align: center;
  border: 1px solid #0073bc;
  color: #0073bc;
  font-weight: 500;
  font-size: 2.4rem;
  padding: 15px 10px;
}
@media screen and (max-width: 1367px) {
  .training-normal .common-col2 h3 {
    font-size: 2rem;
  }
}
@media all and (max-width: 480px) {
  .training-normal .common-col2 h3 {
    font-size: min(5vw, 1.8rem);
  }
}
.training-normal .common-col2 + p {
  text-align: center;
  margin-top: 30px;
  font-weight: 500;
  word-break: keep-all;
}
.training-ducation {
  text-align: center;
}
.training-flow__wrap {
  position: relative;
}
.training-flow__firsttxt {
  position: relative;
  padding: 60px 1em;
  display: inline-block;
  font-size: 2.5rem;
  word-break: keep-all;
}
@media screen and (max-width: 1367px) {
  .training-flow__firsttxt {
    font-size: 2.3rem;
  }
}
@media screen and (max-width: 767px) {
  .training-flow__firsttxt {
    padding: 40px 3em;
  }
}
@media all and (max-width: 480px) {
  .training-flow__firsttxt {
    padding: 30px 2em;
    font-size: min(4vw, 2rem);
  }
}
.training-flow__firsttxt::before, .training-flow__firsttxt::after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
@media all and (max-width: 480px) {
  .training-flow__firsttxt::before, .training-flow__firsttxt::after {
    font-size: 3rem;
  }
}
.training-flow__firsttxt::before {
  content: "【";
  left: 0;
}
.training-flow__firsttxt::after {
  content: "】";
  right: 0;
}
.training-flow .__arrow1 {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 3;
}
@media screen and (max-width: 1024px) {
  .training-flow .__arrow1 {
    right: auto;
    left: 50%;
    transform: translateX(-50%);
    width: 60%;
  }
}
@media screen and (max-width: 767px) {
  .training-flow .__arrow1 {
    width: 100%;
  }
}
.training-flow .__arrow1 .training-flow__txt {
  position: absolute;
  top: 9%;
  left: 10%;
}
@media screen and (max-width: 1024px) {
  .training-flow .__arrow1 .training-flow__txt {
    top: 20%;
    left: 50%;
    transform: translateX(-50%);
  }
}
.training-flow .__arrow2 {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
}
@media screen and (max-width: 1024px) {
  .training-flow .__arrow2 {
    right: auto;
    left: 50%;
    transform: translateX(-50%);
    width: 60%;
    padding-top: 7%;
  }
}
@media screen and (max-width: 767px) {
  .training-flow .__arrow2 {
    width: 100%;
  }
}
.training-flow .__arrow2 .training-flow__txt {
  position: absolute;
  top: 9%;
  left: 60%;
}
@media screen and (max-width: 1367px) {
  .training-flow .__arrow2 .training-flow__txt {
    left: 64%;
  }
}
@media screen and (max-width: 1024px) {
  .training-flow .__arrow2 .training-flow__txt {
    top: 60%;
    left: 50%;
    transform: translateX(-50%);
  }
}
.training-flow .__arrow3 {
  position: absolute;
  right: -20px;
  top: 0;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .training-flow .__arrow3 {
    right: auto;
    left: 50%;
    transform: translateX(-50%);
    width: 60%;
    padding-top: 50%;
  }
}
@media screen and (max-width: 767px) {
  .training-flow .__arrow3 {
    width: 100%;
    padding-top: 80%;
  }
}
@media all and (max-width: 480px) {
  .training-flow .__arrow3 {
    padding-top: 90%;
  }
}
.training-flow .__arrow3 .training-flow__txt {
  position: absolute;
  top: 9%;
  left: 33%;
  width: 50%;
}
@media screen and (max-width: 1367px) {
  .training-flow .__arrow3 .training-flow__txt {
    left: 42%;
  }
}
@media (width < 1101px) {
  .training-flow .__arrow3 .training-flow__txt {
    left: 45%;
  }
}
@media screen and (max-width: 1024px) {
  .training-flow .__arrow3 .training-flow__txt {
    top: 59%;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
  }
}
@media all and (max-width: 480px) {
  .training-flow .__arrow3 .training-flow__txt {
    top: 56%;
  }
}
.training-flow .__arrow3 .training-flow__txt p {
  margin-top: 10px;
}
.training-flow .__arrow3 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.1em 1em;
  margin: 15px auto 0;
}
@media (width < 1151px) {
  .training-flow .__arrow3 ul {
    display: block;
  }
}
@media (width < 1101px) {
  .training-flow .__arrow3 ul {
    margin: 15px 7em 0;
  }
}
@media screen and (max-width: 1024px) {
  .training-flow .__arrow3 ul {
    margin: 15px auto 0;
  }
}
.training-flow .__arrow3 ul li {
  font-size: 1.5rem;
  word-break: keep-all;
}
@media screen and (max-width: 1367px) {
  .training-flow .__arrow3 ul li {
    font-size: 1.3rem;
  }
}
@media all and (max-width: 480px) {
  .training-flow .__arrow3 ul li {
    font-size: min(3.8vw, 1.3rem);
  }
}
.training-flow .__arrow3 ul li::before {
  content: "・";
  display: inline-block;
  padding-right: 0.3em;
}
.training-flow .__arrow3 ul li:nth-child(6) {
  width: 100%;
}
.training-flow img {
  max-width: none;
}
@media screen and (max-width: 1024px) {
  .training-flow img {
    width: 90%;
  }
}
@media all and (max-width: 480px) {
  .training-flow img {
    width: 100%;
  }
}
.training-flow__txt {
  text-align: center;
}
.training-flow__nam {
  font-family: "Anton", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 7rem;
  line-height: 1;
}
@media screen and (max-width: 1367px) {
  .training-flow__nam {
    font-size: 6rem;
  }
}
@media (width < 1101px) {
  .training-flow__nam {
    font-size: 4rem;
  }
}
@media all and (max-width: 480px) {
  .training-flow__nam {
    font-size: min(11vw, 4rem);
  }
}
.training-flow p {
  font-size: 3rem;
  font-weight: 700;
  margin-top: 50px;
}
@media screen and (max-width: 1367px) {
  .training-flow p {
    font-size: 2.4rem;
  }
}
@media (width < 1101px) {
  .training-flow p {
    font-size: 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .training-flow p {
    margin-top: 15px;
  }
}
@media all and (max-width: 480px) {
  .training-flow p {
    font-size: min(5vw, 2rem);
  }
}
@media (width < 897px) {
  .training-flow p br.pconly {
    display: none;
  }
}
.training-voice {
  position: relative;
  container-type: inline-size;
  margin-inline: auto;
  width: 70%;
  padding: 23% 0 0 0;
  z-index: 4;
}
@media (width < 1151px) {
  .training-voice {
    width: 64%;
    padding: 30% 0 0 0;
    margin-left: 6%;
  }
}
@media screen and (max-width: 1024px) {
  .training-voice {
    width: 75%;
    padding: 120% 0 0 0;
    margin-left: auto;
  }
}
@media screen and (max-width: 767px) {
  .training-voice {
    width: 95%;
    padding: 185% 0 0 0;
  }
}
@media (width < 601px) {
  .training-voice {
    padding: 205% 0 0 0;
  }
}
@media all and (max-width: 480px) {
  .training-voice {
    width: 100%;
    padding: 230% 0 0 0;
  }
}
@media (width < 361px) {
  .training-voice {
    padding: 243% 0 0 0;
  }
}
.training-voice__balloon {
  position: absolute;
  top: 40cqw;
  right: 6cqw;
  width: 40cqw;
  color: #0073bc;
  background: #fff;
  border: 1px solid #0073bc;
  text-align: center;
  padding: 25px 10px;
  border-radius: 20px;
}
@media (width < 1151px) {
  .training-voice__balloon {
    top: 50cqw;
    right: 0;
  }
}
@media screen and (max-width: 1024px) {
  .training-voice__balloon {
    top: auto;
    right: 10cqw;
    bottom: 20cqw;
  }
}
@media (width < 897px) {
  .training-voice__balloon {
    width: 50cqw;
    right: -7cqw;
  }
}
@media all and (max-width: 480px) {
  .training-voice__balloon {
    width: 60cqw;
    right: -2cqw;
    padding: 15px 10px;
  }
}
.training-voice__balloon::after {
  position: absolute;
  content: "";
  right: 40%;
  bottom: -28px;
  transform: scale(-1, 1);
  width: 61px;
  height: 28px;
  background: url(../../assets/images/common/tail_a.svg) top right/contain no-repeat;
}
@media all and (max-width: 480px) {
  .training-voice__balloon::after {
    bottom: -27px;
    width: 42.7px;
  }
}
.training-voice__balloon h3 {
  font-size: 2.1rem;
  font-weight: 600;
  margin-bottom: 20px;
}
@media screen and (max-width: 1367px) {
  .training-voice__balloon h3 {
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
}
@media (width < 601px) {
  .training-voice__balloon h3 {
    font-size: min(4.6vw, 1.6rem);
    margin-bottom: 0;
  }
}
@media all and (max-width: 480px) {
  .training-voice__balloon h3 {
    margin-bottom: 5px;
  }
}
.training-voice__balloon p {
  font-size: 1.5rem;
  font-weight: 500;
  word-break: keep-all;
  margin-top: 20px;
}
@media screen and (max-width: 1367px) {
  .training-voice__balloon p {
    font-size: 1.3rem;
  }
}
@media (width < 601px) {
  .training-voice__balloon p {
    font-size: min(3.3vw, 1.25rem);
    margin-top: 5px;
  }
}
.training-voice img {
  display: block;
  width: 58cqw;
}
@media screen and (max-width: 1367px) {
  .training-voice img {
    width: 53cqw;
  }
}
@media (width < 1151px) {
  .training-voice img {
    width: 65cqw;
  }
}
@media screen and (max-width: 1024px) {
  .training-voice img {
    width: 55cqw;
  }
}
@media (width < 897px) {
  .training-voice img {
    width: 62cqw;
  }
}
@media all and (max-width: 480px) {
  .training-voice img {
    width: 60cqw;
    margin-left: -13cqw;
  }
}

.common-bggra.pb0 {
  padding-bottom: 0;
}
.common-bggra .width {
  container-type: inline-size;
}