@charset "UTF-8";
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1.6rem;
}

img {
  vertical-align: bottom;
}

.img-fluid {
  width: var(--width-pc) !important;
  height: auto;
  max-width: none;
}

.main {
  margin-top: 13.4rem;
}
.main__block {
  padding-top: 10rem;
  padding-bottom: 10rem;
}
.main .container {
  max-width: 1400px;
}

.w-md {
  max-width: 99rem;
  margin-right: auto;
  margin-left: auto;
}

.bg-01 {
  background-color: #f8f9fa;
}
.bg-02 {
  background-color: #e3f2fd;
}

.heading__01 {
  margin-bottom: 1em;
  font-weight: 700;
  font-size: 3.2rem;
}
.heading__01 .color01 {
  color: #2ea4a4;
}
.heading__01 .color02 {
  color: #008fd1;
}
.heading__01 .deco01 {
  margin-top: 0.5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.2rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.heading__01 .deco01 > span {
  width: 1rem;
  border-radius: 50%;
  background-color: #cbcbcb;
  aspect-ratio: 1;
}
.heading__01 .deco01 > span:nth-child(1) {
  background-color: #1b8ece;
}
.heading__01 .deco01 > span:nth-child(2) {
  background-color: #666;
}
.heading__01 .deco01 > span:nth-child(3) {
  background-color: #848485;
}
.heading__01 .deco01 > span:nth-child(4) {
  background-color: #a5a5a5;
}
.heading__01 .deco01 > span:nth-child(5) {
  background-color: #cbcbcb;
}
.heading__02 {
  margin-bottom: 0.5em;
  padding-left: 0.5em;
  border-left: 6px solid #008fd1;
  letter-spacing: 0.1em;
  font-size: 3.1rem;
  line-height: 1.5;
}
.heading__02 span {
  color: #008fd1;
}
.heading__02 .large {
  font-size: 5.2rem;
  line-height: 1;
}
.heading__03 {
  margin-bottom: 6rem;
  padding-left: 0.5em;
  border-left: 6px solid #008fd1;
  letter-spacing: 0.1em;
  font-size: 3.1rem;
  line-height: 1.5;
}
.heading__03 .heading-visual {
  width: 8.5rem;
}
.heading__03--text01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
}
.heading__03--text02 {
  display: inline-block;
  font-size: 1.8rem;
}

.highlight-yel {
  background: -webkit-gradient(linear, left bottom, left top, color-stop(50%, yellow), color-stop(40%, transparent));
  background: linear-gradient(to top, yellow 50%, transparent 40%);
}

.img-contain {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.img-cover {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.text-center {
  text-align: center;
}
.text-bold {
  font-weight: 700;
}
.text-medium {
  font-weight: 500;
}
.text-lead {
  font-weight: 500;
  font-size: 1.8rem;
}
.text-en {
  font-family: "din-2014", sans-serif;
}

.lh-2 {
  line-height: 2;
}

.mb-1 {
  margin-bottom: 1em;
}
.mb-2 {
  margin-bottom: 2em;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.tab-button {
  border: none;
  background-color: #e6e6e6;
  cursor: pointer;
}
.tab-button.tab--active {
  background-color: #fff;
}
.tab-panel {
  display: none;
  -webkit-animation: fadeIn 0.3s ease-in;
          animation: fadeIn 0.3s ease-in;
}
.tab-panel.tab-panel--active {
  display: block;
}

@media (max-width: 1024px) {
  .is-scroll {
    overflow-x: scroll;
  }
  .main {
    margin-top: 70px;
    overflow: hidden;
  }
  .pcOnly {
    display: none !important;
  }
  .container {
    padding: 0 3.2rem;
  }
  .footer01__grid {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .footer01__item {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .footer02__main {
    grid-template-columns: 1fr;
  }
  .footer02__logos {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .footer02__bottom-nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .footer02__nav-divider {
    width: 100%;
    height: 1px;
  }
}
@media (min-width: 1025px) {
  .spOnly {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .img-fluid {
    width: var(--width-sp) !important;
    max-width: none;
  }
  html {
    font-size: 1.3020833333vw;
  }
  body {
    font-size: 2.8rem;
  }
  .main__block {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
  .heading__01 .deco01 > span {
    width: 1.5rem;
  }
  .heading__02 {
    border-left-width: 0.6rem;
    letter-spacing: 0.08em;
    font-size: 4rem;
  }
  .heading__03 {
    font-size: 4.2rem;
  }
  .heading__03--text02 {
    margin-top: 0.25em;
    font-size: 2.4rem;
  }
  .heading__03 .heading-visual {
    width: 12rem;
    margin-top: -1rem;
  }
  .text-lead {
    font-size: 2.6rem;
  }
}
.map {
  padding: 0;
  background: none;
}
.map__hero {
  width: 100%;
  padding-top: 7rem;
  padding-bottom: 0;
  position: relative;
}
.map__hero--title {
  margin-bottom: 0.5em;
  padding: 0 1em;
  display: inline-block;
  background-color: #fff;
  font-size: 3.9rem;
}
.map__hero--title .text-primary {
  color: #008fd1;
}
.map__hero--sentence {
  font-weight: 500;
  font-size: 1.8rem;
}
.map__hero--sentence p {
  line-height: 2;
}
.map__hero--navi {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.map__hero--navi .navi-content {
  margin-left: -2.4rem;
  text-align: center;
  font-size: 1.8rem;
}
.map__hero--navi .navi-content dt {
  margin-bottom: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 700;
}
.map__hero--navi .navi-content dt::before, .map__hero--navi .navi-content dt::after {
  content: "";
  width: 1px;
  height: 3.2rem;
  display: inline-block;
  background-color: #000;
}
.map__hero--navi .navi-content dt::before {
  -webkit-transform: rotate(-25deg);
          transform: rotate(-25deg);
}
.map__hero--navi .navi-content dt::after {
  -webkit-transform: rotate(25deg);
          transform: rotate(25deg);
}
.map__hero--navi .navi-content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.4rem;
  list-style: none;
}
.map__hero--navi .navi-item {
  min-width: 19.8rem;
  height: 6.4rem;
  padding: 0 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 0.5rem;
  background-color: #ccc;
  -webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.15);
          box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.15);
  color: #fff;
  font-weight: 700;
}
.map__hero--navi .navi-item.item01 {
  background-color: #ff6b6a;
}
.map__hero--navi .navi-item.item02 {
  background-color: #ff8d3a;
}
.map__hero--navi .navi-item.item03 {
  background-color: #ff3645;
}
.map__hero--bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.map__hero--bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.map__course--list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4.4rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
}
.map__course--list > * {
  width: calc((100% - 8.8rem) / 3);
}
.map__course--item {
  padding: 2rem;
  border-top: 5px solid #008fd1;
  background-color: #fff;
  -webkit-box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.18);
          box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.18);
}
.map__course .item-title {
  margin-bottom: 0.5em;
  text-align: center;
  font-size: 2.1rem;
}
.map__course .item-title span {
  color: #ff8d3a;
}
.map__course .item-sentence {
  margin-bottom: 1em;
  font-size: 1.4rem;
}
.map__course .item-btn {
  width: 24.6rem;
  margin: 0 auto;
  padding: 0.5em 1em;
  display: block;
  border-radius: 2.3rem;
  background-color: #008fd1;
  color: #fff;
  text-align: center;
  font-weight: 500;
}
.map__course .item-separator {
  width: 100%;
  max-width: 24.5rem;
  height: 3px;
  margin: 1.4rem auto 2.8rem;
  display: block;
  background: -webkit-gradient(linear, left top, right top, from(#008fd1), color-stop(18%, #008fd1), color-stop(18%, #e6e6e6), to(#e6e6e6));
  background: linear-gradient(90deg, #008fd1 0%, #008fd1 18%, #e6e6e6 18%, #e6e6e6 100%);
}
.map__course .item-points {
  list-style: none;
  font-weight: 700;
}
.map__course .item-points li {
  padding-left: 1.25em;
  position: relative;
}
.map__course .item-points li::before {
  content: "";
  width: 1.125em;
  height: 1.125em;
  position: absolute;
  top: 0.25em;
  left: 0;
  display: inline-block;
  background: url(../image/map/icon_check.svg) no-repeat center center/contain;
}
.map__course .item-points li + li {
  margin-top: 1em;
}
.map__commute--types {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.8rem;
}
.map__commute--type {
  padding: 2rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  border-radius: 3rem 3rem 0 0;
  color: #fff;
  text-align: center;
}
.map__commute--type.type01 {
  background-color: #008fd1;
}
.map__commute--type.type02 {
  background-color: #97ada9;
}
.map__commute .type-icon {
  width: 6.4rem;
  height: 4.8rem;
  margin: 0 auto 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.map__commute .type-title {
  margin-bottom: 0.5em;
  font-size: 2.7rem;
}
.map__commute .type-title span {
  color: #ff0;
  font-size: 3.5rem;
}
.map__commute .type-sentence {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.map__commute .type-catch {
  font-weight: 700;
  font-size: 2.4rem;
}
.map__commute .type-catch span {
  font-size: 4rem;
}
.map__commute .type-btn {
  min-width: 24.6rem;
  height: 5.5rem;
  margin: 1em auto 0;
  padding: 0 2em;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 2px solid #fff;
  border-radius: 0.8rem;
  background-color: rgba(0, 0, 0, 0.1);
}
.map__commute--map {
  margin-top: 5.8rem;
}
.map__commute--map .map-inner {
  width: 100%;
  min-height: 51.5rem;
  padding: 2rem;
  position: relative;
  overflow: hidden;
  background-color: #bde1f4;
}
.map__commute--map .map-content {
  position: absolute;
  top: -24.8rem;
  left: -12rem;
}
.map__commute--map .map-content img {
  -webkit-filter: drop-shadow(2px 2px 8px rgba(0, 0, 0, 0.2));
          filter: drop-shadow(2px 2px 8px rgba(0, 0, 0, 0.2));
}
.map__commute--map .map-logo {
  position: absolute;
  bottom: 3.8rem;
  left: 5rem;
}
.map__commute--map .school-list {
  padding-top: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.map__commute--map .school-box {
  width: 23.2rem;
}
.map__commute--map .school-box-inner + .school-box-inner {
  margin-top: 1.25em;
}
.map__commute--map .school-title {
  margin-bottom: 1em;
  padding: 0.35em;
  position: relative;
  background-color: #fff;
  text-align: center;
  font-size: 2rem;
}
.map__commute--map .school-title::after {
  content: "";
  width: 2.6rem;
  height: 2.2rem;
  position: absolute;
  bottom: -1.5rem;
  left: calc(50% - 1.3rem);
  background-color: #fff;
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.map__commute--map .school-title span {
  font-size: 2.4rem;
}
.map__commute--map .school-info {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.map__commute--map .school-info dt {
  padding-left: 2rem;
  background: url(../image/map/icon_school.svg) no-repeat center left/1.6rem auto;
  font-size: 1.8rem;
}
.map__commute--map .school-info dt a {
  color: #008fd1;
  text-decoration: underline;
}
.map__commute--map .school-info dd {
  padding-left: 2rem;
  font-size: 1.8rem;
}
.map__commute--map .school-info dd + dt {
  margin-top: 1em;
}
.map__commute--map .school-info + .school-title {
  margin-top: 1.25em;
}
.map__commute--map.v2 .map {
  position: relative;
}
.map__commute--map.v2 .map-content {
  top: -20.8rem;
  left: 4rem;
}
.map__commute--map.v2 .map-logo {
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.map__commute--map.v2 .map-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.map__commute--map.v2 .map__commute--online {
  margin-top: auto;
  margin-left: 0;
  padding-bottom: 6rem;
}
.map__commute--map.v2 .school-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.map__commute--map.v2 .school-list {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.map__commute--map.v2 .school-box {
  width: 46rem;
}
.map__commute--map.v2 .school-title::after {
  content: none;
}
.map__commute--online {
  width: 59.6rem;
  margin-top: -10rem;
  margin-right: 9.4rem;
  margin-left: auto;
  position: relative;
}
.map__commute--online .online-fukidashi {
  position: relative;
  z-index: 2;
}
.map__commute--online .online-img {
  position: absolute;
  top: -3rem;
  right: 0;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  border: 1rem solid #fff;
  -webkit-filter: drop-shadow(2px 2px 8px rgba(0, 0, 0, 0.2));
          filter: drop-shadow(2px 2px 8px rgba(0, 0, 0, 0.2));
  -webkit-transform: rotate(-7deg);
          transform: rotate(-7deg);
}
.map__commute--online .school-info {
  margin: 2rem 0 0 2rem;
}
.map__commute--online .school-info dt {
  background-image: url(../image/map/icon_home.svg);
  background-size: 1.8rem auto;
}
.map__school {
  padding-bottom: 0;
}
.map__school--area01 {
  --info-color01: #b7dedd;
  --info-color02: #f3f8f9;
}
.map__school--area02 {
  --info-color01: #b1daf1;
  --info-color02: #eff6fc;
}
.map__school .tabs-nav {
  max-width: 106rem;
  margin: 0 auto 6.4rem;
  display: grid;
  gap: 1.2rem;
}
.map__school .tabs-nav.col3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.map__school .tabs-nav.col5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.map__school .tabs-nav.col6 {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
.map__school .tab-button {
  padding: 0.75em 1em;
  text-align: left;
  font-weight: 700;
  font-size: 2.8rem;
}
.map__school .tab-button.tab--active {
  background-color: #008fd1;
  color: #fff;
}
.map__school .tabs-container {
  padding-bottom: 5rem;
}
.map__school .school--title {
  padding: 0.5em 1em;
  background-color: #008fd1;
  color: #fff;
  text-align: center;
  font-size: 3rem;
}
.map__school .school-map {
  width: 100%;
  height: 49rem;
}
.map__school .school-map iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.map__school .school-info {
  padding: 2.4rem;
  display: grid;
  gap: 2.4rem;
  grid-template-columns: 1fr 1fr;
}
.map__school .school-info .col1 {
  grid-column: 1/3;
}
.map__school .school-info dl {
  background-color: #fff;
}
.map__school .school-info dt {
  padding: 0.5em;
  background-color: var(--info-color01);
  text-align: center;
  font-weight: 700;
  font-size: 2.1rem;
}
.map__school .school-info dd {
  padding: 1em;
}
.map__school .school-info dd p:not(:last-child) {
  margin-bottom: 1em;
}
.map__school .school-comment {
  padding: 1.5rem;
}
.map__school .school-comment dt {
  border: 1px solid #000;
  background-color: #fff;
}
.map__school .school-comment dd {
  margin-top: 1em;
  padding: 0;
}
.map__school .school-blog {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.map__school .school-blog a {
  width: 39.6rem;
  height: 6.2rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1.2;
  gap: 0.5em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 3px solid #008fd1;
  border-radius: 3.1rem;
  -webkit-box-shadow: 3px 3px 0 #008fd1;
          box-shadow: 3px 3px 0 #008fd1;
  font-weight: 700;
  font-size: 2.2rem;
}
.map__school .school-footer {
  margin-top: 1em;
  text-align: center;
}
.map__school .school-footer a {
  width: 51.2rem;
  min-width: -webkit-fit-content;
  min-width: -moz-fit-content;
  min-width: fit-content;
  height: 10rem;
  padding: 1em 3em;
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 1.6rem;
  background-color: #008fd1;
  color: #fff;
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 1.4;
}
.map__school .school-footer a::after {
  content: "";
  width: 3.8rem;
  height: 3.8rem;
  position: absolute;
  top: calc(50% - 1.9rem);
  right: 2rem;
  background: url(../image/map/icon_arrow01.svg) no-repeat center center/contain;
}
.map__school--cv {
  margin-top: 4.8rem;
  padding: 2rem;
  background: url(../image/map/cv_bg.jpg) no-repeat center center/cover;
}
.map__school--cv .cv-inner {
  padding: 2.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 6rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 2rem;
  background-color: #fff;
}
.map__school--cv .cv-item {
  text-align: center;
}
.map__school--cv .cv-item dt {
  margin-bottom: 1em;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.4;
}
.map__school--cv .cv-btn {
  width: 44.8rem;
  height: 10rem;
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 1.6rem;
  background: url(../image/map/icon_arrow02.svg) no-repeat right 2rem center/1.2rem auto;
  color: #fff;
  font-weight: 700;
  font-size: 2.4rem;
}
.map__school--cv .cv-btn.button01 {
  background-color: #ff3645;
  -webkit-box-shadow: 0 3px 0 #a20d18;
          box-shadow: 0 3px 0 #a20d18;
}
.map__school--cv .cv-btn.button01 .cv-btn-icon {
  position: absolute;
  top: -3.6rem;
  left: -7rem;
}
.map__school--cv .cv-btn.button02 {
  padding-left: 10rem;
  background-color: #ff8d3a;
  -webkit-box-shadow: 0 3px 0 #8c420c;
          box-shadow: 0 3px 0 #8c420c;
}
.map__school--cv .cv-btn.button02 .cv-btn-icon {
  position: absolute;
  top: -4.6rem;
  left: -4.5rem;
}

@media (max-width: 1024px) {
  .map .heading__01 {
    font-size: 5rem;
  }
  .map__hero {
    padding-bottom: 4.2rem;
  }
  .map__hero .container {
    padding: 0 6rem;
  }
  .map__hero--title {
    margin-bottom: 0.75em;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    background: none;
  }
  .map__hero--title span {
    padding: 0 0.2em;
    background-color: #fff;
  }
  .map__hero--sentence {
    color: #000;
    font-weight: 700;
    font-size: 3.2rem;
  }
  .map__hero--sentence p {
    line-height: 1.4;
  }
  .map__commute {
    padding-bottom: 0rem;
    background-color: white;
  }
  .map__commute--map {
    margin-right: -3.2rem;
    margin-left: -3.2rem;
  }
  .map__commute--map .map-inner {
    padding-top: 56.4rem;
  }
  .map__commute--map .map-content {
    width: 100%;
    top: 0;
    left: 0;
  }
  .map__commute--map .map-logo {
    display: none;
  }
  .map__commute--map .school-list {
    padding-top: 0;
    gap: 3rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .map__commute--map .school-box {
    width: calc((100% - 3rem) / 2);
  }
  .map__commute--map .school-box.sp-col1 {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 3rem;
  }
  .map__commute--map .school-box.sp-col1 .school-box-inner {
    width: calc((100% - 3rem) / 2);
  }
  .map__commute--map .school-box.sp-col1 .school-box-inner + .school-box-inner {
    margin-top: 0;
  }
  .map__commute--map .school-title {
    padding: 0.5em 0;
    font-size: 2.7rem;
  }
  .map__commute--map .school-title span {
    font-size: 3.2rem;
  }
  .map__commute--map .school-info {
    width: 80%;
  }
  .map__commute--map .school-info dt {
    padding-left: 2.4rem;
    background-size: 2rem auto;
    letter-spacing: 0;
    font-size: 2.4rem;
  }
  .map__commute--map .school-info dd {
    letter-spacing: 0.05em;
    font-size: 2.2rem;
  }
  .map__commute--map.v2 .map-content {
    top: 0;
    left: 0;
  }
  .map__commute--map.v2 .map-inner {
    padding-top: 56.4rem;
    display: block;
  }
  .map__commute--map.v2 .map__commute--online {
    width: auto;
    margin: 0 -3.2rem;
    padding: 4rem 5rem;
    position: relative;
    z-index: 2;
    background-color: #bde1f4;
  }
  .map__commute--map.v2 .map__commute--online::before {
    content: "";
    width: 100%;
    height: 80%;
    position: absolute;
    top: 12%;
    left: 0;
    z-index: -1;
    background-color: #fff;
    opacity: 0.9;
  }
  .map__commute--map.v2 .map__commute--online .online-fukidashi {
    width: 38rem;
  }
  .map__commute--map.v2 .map__commute--online .online-img {
    width: 32rem;
    top: 2rem;
    right: 6rem;
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
  }
  .map__commute--map.v2 .school-title {
    font-size: 3rem;
  }
  .map__commute--map.v2 .school-info {
    width: 80%;
  }
  .map__commute--map.v2 .school-info dt {
    padding-left: 3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    background: url(../image/map/icon_school.svg) no-repeat top left/1em auto;
    background-position-y: 0.7rem;
    color: #168ecd;
    font-size: 2.4rem;
  }
  .map__commute--map.v2 .school-info dt span {
    color: #333;
    font-size: 2.1rem;
  }
  .map__commute--map.v2 .school-info dd {
    display: none;
  }
  .map__commute--map.v2 .school-list {
    width: 100%;
    display: grid;
    gap: 3rem;
    grid-template-columns: 1fr 1fr;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .map__commute--map.v2 .school-box {
    width: 100%;
  }
  .map__commute--online {
    width: 100%;
    margin: 0;
    padding: 4rem 5rem;
    position: relative;
    z-index: 2;
    background-color: #bde1f4;
  }
  .map__commute--online::before {
    content: "";
    width: 100%;
    height: 80%;
    position: absolute;
    top: 12%;
    left: 0;
    z-index: -1;
    background-color: #fff;
    opacity: 0.9;
  }
  .map__commute--online .online-fukidashi {
    width: 38rem;
  }
  .map__commute--online .online-img {
    width: 32rem;
    top: 2rem;
    right: 6rem;
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
  }
  .map__school .tabs-nav {
    gap: 1.8rem;
  }
  .map__school .tabs-nav.col3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .map__school .school--title {
    font-size: 4.4rem;
  }
  .map__school .school-info {
    padding-right: 0;
    padding-left: 0;
    display: block;
  }
  .map__school .school-info dl + dl {
    margin-top: 2.5rem;
  }
  .map__school .school-info dt {
    font-size: 3.4rem;
  }
  .map__school .school-info dd {
    letter-spacing: 0;
    font-size: 2.8rem;
  }
  .map__school .school-blog {
    margin-top: 4rem;
  }
  .map__school .school-blog a {
    width: 62rem;
    height: 10rem;
    border-radius: 20rem;
    font-size: 3.4rem;
    line-height: 1.2;
  }
  .map__school .school-footer a {
    width: 100%;
    min-height: 13.4rem;
    font-size: 4rem;
    line-height: 1.2;
  }
  .map__school .school-footer a::after {
    width: 5.2rem;
    height: 5.2rem;
    top: calc(50% - 2.6rem);
  }
  .map__school--cv {
    background-image: url(../image/map/cv_bg_sp.jpg);
  }
  .map__school--cv .container {
    padding: 0;
  }
  .map__school--cv .cv-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    background: none;
  }
  .map__school--cv .cv-item dt {
    font-size: 3rem;
  }
  .map__school--cv .cv-btn {
    width: 53.8rem;
    height: 12rem;
    border-radius: 2rem;
    font-size: 3.2rem;
  }
  .map__school--cv .cv-btn.button02 {
    padding-left: 0;
  }
  .map__school--cv .cv-btn-icon {
    display: none;
  }
}
.material__hero {
  width: 100%;
  padding: 0;
}
.material__hero--inner {
  padding-top: 7rem;
  position: relative;
}
.material__hero--column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.material__hero--title {
  padding: 0 1em;
  display: inline-block;
  background-color: #fff;
  font-size: 3.6rem;
}
.material__hero--title span {
  color: #008fd1;
}
.material__hero--sentence {
  color: #fff;
  font-weight: 500;
  font-size: 2rem;
}
.material__hero--sentence p {
  line-height: 2;
}
.material__hero--navi {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.material__hero--navi .navi-content {
  margin-left: -2.4rem;
  text-align: center;
  font-size: 1.8rem;
}
.material__hero--navi .navi-content dt {
  margin-bottom: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 700;
}
.material__hero--navi .navi-content dt::before, .material__hero--navi .navi-content dt::after {
  content: "";
  width: 1px;
  height: 3.2rem;
  display: inline-block;
  background-color: #000;
}
.material__hero--navi .navi-content dt::before {
  -webkit-transform: rotate(-25deg);
          transform: rotate(-25deg);
}
.material__hero--navi .navi-content dt::after {
  -webkit-transform: rotate(25deg);
          transform: rotate(25deg);
}
.material__hero--navi .navi-content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.4rem;
  list-style: none;
}
.material__hero--navi .navi-item {
  min-width: 19.8rem;
  height: 6.4rem;
  padding: 0 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 0.5rem;
  background-color: #ccc;
  -webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.15);
          box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.15);
  color: #fff;
  font-weight: 700;
}
.material__hero--navi .navi-item.item01 {
  background-color: #ff6b6a;
}
.material__hero--navi .navi-item.item02 {
  background-color: #ff8d3a;
}
.material__hero--navi .navi-item.item03 {
  background-color: #ff3645;
}
.material__hero--bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.material__hero--bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.material__hero--pageNavi {
  padding: 2.8rem 0;
  background-color: #008fd1;
}
.material__hero--pageNavi .navi-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.8rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  list-style: none;
}
.material__hero--pageNavi .navi-btn {
  width: 28.4rem;
  height: 6rem;
  padding: 0 1.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 3rem;
  background-color: #fff;
  -webkit-box-shadow: 2px 3px 3px rgba(0, 0, 0, 0.15);
          box-shadow: 2px 3px 3px rgba(0, 0, 0, 0.15);
  letter-spacing: 0;
  font-weight: 700;
  font-size: 1.8rem;
}
.material__hero--pageNavi .navi-btn span {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: center;
}
.material__block {
  padding-bottom: 0;
}
.material__block.material01 {
  --theme-color: #df7e5d;
}
.material__block.material02 {
  --theme-color: #db6a76;
}
.material__block.material03 {
  --theme-color: #2772a2;
}
.material__content {
  background-color: #fff;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.material__content--headline {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 43rem 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
}
.material__content--headline::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background-color: var(--theme-color, #ccc);
  opacity: 0.74;
}
.material__content--headline .headline-visual img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.material__content--headline .headline-title {
  padding: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 3rem;
}
.material__content--list .inner {
  padding: 2rem 3.4rem;
  display: grid;
  gap: 3.2rem;
  grid-template-columns: 1fr 20.4rem 20.4rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.material__content--list .inner:nth-of-type(even) {
  background-color: #edf2f6;
}
.material__content--list dt {
  font-weight: 700;
  font-size: 1.8rem;
}
.material__content--list .material-btn {
  width: 100%;
  height: 4.4rem;
  padding: 0 1rem 0 1.4rem;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 2px solid var(--theme-color);
  border-radius: 2.2rem;
  letter-spacing: 0;
  font-weight: 700;
  font-size: 1.3rem;
}
.material__content--list .material-btn.btn01 {
  background-color: var(--theme-color);
  color: #fff;
}
.material__content--list .material-btn.btn02 {
  background-color: #fff;
  color: var(--theme-color);
}
.material__content--list .material-btn-arrow {
  width: 2.6rem;
  margin-left: auto;
}

.fancybox__slide.has-close-btn {
  padding-top: 5rem !important;
}
@media (max-width: 1024px) {
  .fancybox__slide.has-close-btn {
    padding-top: 8rem !important;
  }
}

.f-button.is-close-button {
  width: 5rem;
  height: 5rem;
  top: -5rem !important;
  border-radius: 0;
  background-color: #111 !important;
}
@media (max-width: 1024px) {
  .f-button.is-close-button {
    width: 8rem;
    height: 8rem;
    top: -8rem !important;
  }
}

@media (max-width: 1024px) {
  .material__hero--inner {
    padding: 4.8rem 3.4rem;
    background-color: #e3f2fd;
  }
  .material__hero--inner .container {
    padding: 0;
    position: relative;
    z-index: 2;
  }
  .material__hero--column {
    display: block;
  }
  .material__hero--title {
    padding: 0;
    background: none;
    font-size: 4.3rem;
  }
  .material__hero--sentence {
    margin-top: 0.75em;
    color: inherit;
    font-weight: 700;
    font-size: 3.2rem;
  }
  .material__hero--sentence p {
    line-height: 1.6;
  }
  .material__hero--navi {
    margin-top: 4.8rem;
    padding: 2.4rem;
    position: relative;
    z-index: 2;
    border-radius: 5rem;
    background-color: #fff;
  }
  .material__hero--navi .navi-content {
    width: 43.6rem;
    margin: 0 auto;
  }
  .material__hero--navi .navi-content dt {
    font-size: 2.6rem;
  }
  .material__hero--navi .navi-content dt::before, .material__hero--navi .navi-content dt::after {
    content: none;
  }
  .material__hero--navi .navi-content ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .material__hero--navi .navi-person {
    width: 17.4rem;
    position: absolute;
    top: 0;
    left: -4rem;
    z-index: -1;
  }
  .material__hero--navi .navi-item {
    width: 100%;
    min-width: 0;
    height: 11.6rem;
    gap: 1rem;
    border-radius: 1.2rem;
    -webkit-box-shadow: 0.15rem 0.15rem 0.3rem rgba(0, 0, 0, 0.15);
            box-shadow: 0.15rem 0.15rem 0.3rem rgba(0, 0, 0, 0.15);
    letter-spacing: 0;
    font-size: 3.6rem;
  }
  .material__hero--bg {
    height: 32.5rem;
    z-index: 0;
  }
  .material__hero--pageNavi {
    padding: 2.4rem 0;
  }
  .material__hero--pageNavi .navi-list {
    gap: 1rem;
  }
  .material__hero--pageNavi .navi-list > li {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .material__hero--pageNavi .navi-btn {
    width: 100%;
    height: 11.2rem;
    position: relative;
    border: 0.6rem solid #ccc;
    border-radius: 5.6rem;
  }
  .material__hero--pageNavi .navi-btn-icon {
    position: absolute;
    top: 50%;
    left: 1rem;
    opacity: 0.12;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .material__hero--pageNavi .navi-btn-text {
    letter-spacing: 0;
    font-size: 2.1rem;
  }
  .material__hero--pageNavi .navi-btn-text span {
    display: block;
    font-size: 3.1rem;
  }
  .material__hero--pageNavi .btn01 {
    border-color: #df7e5d;
  }
  .material__hero--pageNavi .btn01 .navi-btn-text span {
    color: #df7e5d;
  }
  .material__hero--pageNavi .btn02 {
    border-color: #db6a76;
  }
  .material__hero--pageNavi .btn02 .navi-btn-text span {
    color: #db6a76;
  }
  .material__hero--pageNavi .btn03 {
    border-color: #2772a2;
  }
  .material__hero--pageNavi .btn03 .navi-btn-text span {
    color: #2772a2;
  }
  .material__block {
    padding-top: 1.4rem;
  }
  .material__block .container {
    padding: 0;
  }
  .material__content--headline {
    height: 19rem;
    grid-template-columns: 21.4rem 1fr;
  }
  .material__content--headline .headline-visual {
    width: 100%;
    height: 100%;
  }
  .material__content--headline .headline-title {
    letter-spacing: 0;
    font-size: 4.2rem;
  }
  .material__content--headline .headline-title-icon {
    width: 5.4rem;
  }
  .material__content--list .inner {
    gap: 1.6rem 5rem;
    grid-template-columns: 1fr 1fr;
  }
  .material__content--list dt {
    padding-left: 1em;
    font-size: 3.2rem;
    grid-column: 1/3;
  }
  .material__content--list .material-btn {
    height: 7.2rem;
    padding: 0 1.6rem 0 2rem;
    border-radius: 3.6rem;
    font-size: 2.3rem;
  }
  .material__content--list .material-btn.btn01 .material-btn-icon {
    width: 3.2rem;
  }
  .material__content--list .material-btn.btn02 .material-btn-icon {
    width: 3.2rem;
  }
  .material__content--list .material-btn-arrow {
    width: 4rem;
  }
}
.feature__hero {
  width: 100%;
  min-height: 44rem;
  padding-top: 7rem;
  padding-bottom: 0;
  position: relative;
}
.feature__hero--title {
  margin-bottom: 0.5em;
  padding: 0 1em;
  display: inline-block;
  background-color: #fff;
  font-size: 3.9rem;
}
.feature__hero--title span {
  color: #008fd1;
}
.feature__hero--sentence {
  font-weight: 500;
  font-size: 1.8rem;
}
.feature__hero--sentence p {
  line-height: 2;
}
.feature__hero--navi {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.feature__hero--navi .navi-content {
  margin-left: -2.4rem;
  text-align: center;
  font-size: 1.8rem;
}
.feature__hero--navi .navi-content dt {
  margin-bottom: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 700;
}
.feature__hero--navi .navi-content dt::before, .feature__hero--navi .navi-content dt::after {
  content: "";
  width: 1px;
  height: 3.2rem;
  display: inline-block;
  background-color: #000;
}
.feature__hero--navi .navi-content dt::before {
  -webkit-transform: rotate(-25deg);
          transform: rotate(-25deg);
}
.feature__hero--navi .navi-content dt::after {
  -webkit-transform: rotate(25deg);
          transform: rotate(25deg);
}
.feature__hero--navi .navi-content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.4rem;
  list-style: none;
}
.feature__hero--navi .navi-item {
  min-width: 19.8rem;
  height: 6.4rem;
  padding: 0 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 0.5rem;
  background-color: #ccc;
  -webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.15);
          box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.15);
  color: #fff;
  font-weight: 700;
}
.feature__hero--navi .navi-item.item01 {
  background-color: #ff6b6a;
}
.feature__hero--navi .navi-item.item02 {
  background-color: #ff8d3a;
}
.feature__hero--navi .navi-item.item03 {
  background-color: #ff3645;
}
.feature__hero--bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.feature__hero--bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.feature__point--main .point-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.feature__point--main .point-item + .point-item {
  margin-top: 8rem;
}
.feature__point--main .point-item:nth-of-type(odd) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.feature__point--main .point-item:nth-of-type(odd) .point-text {
  margin-right: -15rem;
}
.feature__point--main .point-item:nth-of-type(even) .point-text {
  margin-left: -15rem;
}
.feature__point--main .point-visual {
  width: 58%;
}
.feature__point--main .point-text {
  padding: 3.6rem 2.4rem 2.4rem;
  position: relative;
  z-index: 2;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background-color: #fff;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.08);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.08);
}
.feature__point--main .point-text-label {
  padding: 0.25em 0.75em;
  position: absolute;
  bottom: 100%;
  left: -2rem;
  border-radius: 0.8rem;
  background-color: #008fd1;
  color: #fff;
  font-size: 2rem;
  -webkit-transform: rotate(-5deg);
          transform: rotate(-5deg);
}
.feature__point--main .point-text-label span {
  color: #ff0;
  font-size: 2.4rem;
}
.feature__point--main .point-text-label::after {
  content: "";
  width: 2rem;
  height: 2rem;
  position: absolute;
  top: calc(100% - 5px);
  left: calc(50% - 1rem);
  background-color: inherit;
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.feature__point--main .point-text-title {
  margin-bottom: 1em;
  font-weight: 700;
  font-size: 2.4rem;
}
.feature__point--main .point-text-title span {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ff0));
  background: linear-gradient(transparent 60%, #ff0 60%);
  color: #008fd1;
  font-size: 2.6rem;
}
.feature__point--main .point-text-sentence {
  font-size: 1.7rem;
}
.feature__point--main .point-text-sentence p {
  line-height: 2;
}
.feature__point--sub {
  margin-top: 6rem;
  display: grid;
  gap: 4.4rem;
  grid-template-columns: 1fr 1fr;
}
.feature__point--sub .heading__01 {
  margin-bottom: 0.75em;
  font-size: 2.2rem;
}
.feature__point--sub .heading__01 .deco01 {
  margin-top: 0;
  margin-bottom: 0.75em;
}
.feature__point--sub .point-visual {
  margin-bottom: 2rem;
}
.feature__point--sub .point-visual img {
  width: 100%;
  height: auto;
}
.feature__point--sub .point-title {
  margin-bottom: 0.5em;
  color: #008fd1;
  text-align: center;
  font-weight: 700;
  font-size: 1.9rem;
}
.feature__point--sub .point-title span {
  font-size: 2.4rem;
}
.feature__point--sub .point-sentence p {
  line-height: 1.9;
}
.feature__point--list {
  margin-top: 8rem;
}
.feature__point--list .text-lead p {
  letter-spacing: 0.1em;
  line-height: 1.8;
}
.feature__point--list .point-list {
  margin-top: 3.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 9rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
}
.feature__point--list .point-list > * {
  width: calc((100% - 18rem) / 3);
}
.feature__point--list .point-visual {
  width: 100%;
  margin-bottom: 1em;
  position: relative;
  z-index: 2;
  background: #f1f1f1;
  color: #fff;
  aspect-ratio: 32/21;
}
.feature__point--list .point-visual-inner {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
}
.feature__point--list .point-visual-title {
  font-size: 3rem;
  line-height: 1.3;
}
.feature__point--list .point-visual-bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.feature__point--list .point-visual-bg::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background-color: rgba(227, 118, 46, 0.71);
}
.feature__point--list .point-visual-bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.feature__point--list .point-sentence {
  letter-spacing: 0.12em;
}
.feature__point--list .point-btn {
  width: 28rem;
  height: 3.6rem;
  margin: 1.5em auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid #008fd1;
  border-radius: 1.8rem;
  background: #fff url(../image/feature/btn_arrow01.svg) no-repeat right 1rem center/0.6rem auto;
  -webkit-box-shadow: 2px 3px 0 #008fd1;
          box-shadow: 2px 3px 0 #008fd1;
  color: #008fd1;
  font-weight: 700;
}
.feature__data--box {
  overflow: hidden;
  border: 6px solid #008fd1;
  border-radius: 4rem;
  background-color: #fff;
}
.feature__data--box .data-title {
  padding: 1.6rem 0 2.4rem;
  background-color: #008fd1;
  color: #fff;
  text-align: center;
  letter-spacing: 0.1em;
  font-size: 3.1rem;
}
.feature__data--box .data-title span {
  font-size: 3.6rem;
}
.feature__data--box .data-content {
  padding: 4rem 6.8rem;
  list-style: none;
}
.feature__data--box .data-item {
  padding: 0 2rem 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #1e2b31;
}
.feature__data--box .data-item + .data-item {
  margin-top: 3rem;
}
.feature__data--box .data-icon {
  width: 7rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.feature__data--box .data-text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.feature__data--box .data-text dt {
  color: #008fd1;
  font-weight: 700;
  font-size: 2.8rem;
}
.feature__data--box .data-text dd {
  margin-top: 0.25em;
  font-size: 2.2rem;
}
.feature__data--box .data-result {
  margin-left: auto;
  position: relative;
  letter-spacing: 0.06em;
  font-weight: 700;
  font-size: 3.6rem;
}
.feature__data--box .data-result span {
  font-family: "din-2014", sans-serif;
  font-size: 6rem;
}
.feature__data--box .data-result.pickup {
  padding: 0 4rem;
}
.feature__data--box .data-result.pickup::before {
  content: "";
  width: 19.2rem;
  height: 11rem;
  position: absolute;
  bottom: 0;
  left: calc(50% - 9.6rem);
  z-index: 1;
  background: url(../image/feature/data_pickup.svg) no-repeat center center/contain;
}
.feature__system--list {
  margin-top: 3.2rem;
  list-style: none;
}
.feature__system--item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #fff;
}
.feature__system--item + .feature__system--item {
  margin-top: 5rem;
}
.feature__system--item:nth-of-type(odd) .item-title::before {
  content: "";
  width: 3.6rem;
  height: 1.7rem;
  margin-right: 1.2rem;
  display: inline-block;
  background: url(../image/feature/title_arrow.svg) no-repeat center center/contain;
}
.feature__system--item:nth-of-type(odd) .item-btn {
  margin-left: auto;
}
.feature__system--item:nth-of-type(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.feature__system--item:nth-of-type(even) .item-title::after {
  content: "";
  width: 3.6rem;
  height: 1.7rem;
  margin-left: 1.2rem;
  display: inline-block;
  background: url(../image/feature/title_arrow.svg) no-repeat center center/contain;
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
}
.feature__system--item .item-visual {
  width: 53.2rem;
}
.feature__system--item .item-visual img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.feature__system--item .item-text {
  padding: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.feature__system--item .item-title {
  margin-bottom: 0.25em;
  letter-spacing: 0.08em;
  font-size: 2.8rem;
}
.feature__system--item .item-title span {
  color: #a14b8e;
  font-size: 8rem;
  line-height: 1;
}
.feature__system--item .item-sentence {
  margin-bottom: 1em;
}
.feature__system--item .item-sentence p {
  letter-spacing: 0.08em;
  line-height: 2;
}
.feature__system--item .item-btn {
  width: 28rem;
  height: 6rem;
  margin-top: auto;
  padding: 0 1.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 3rem;
  background-color: #008fd1;
  color: #fff;
  font-weight: 700;
  font-size: 1.8rem;
}
.feature__system--item .item-btn > span {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: center;
}
.feature__support--list {
  max-width: 94rem;
  margin: 3.2rem auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  counter-reset: count;
}
.feature__support--list > * {
  width: calc((100% - 4rem) / 2);
}
.feature__support--item {
  padding: 2.4rem;
  position: relative;
  z-index: 2;
  overflow: hidden;
  border: 3px solid #008fd1;
  border-radius: 3rem;
}
.feature__support--item::before {
  content: "";
  width: 100%;
  height: 22rem;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background-color: #dce6f4;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 7.5rem, 0% 100%);
          clip-path: polygon(0 0, 100% 0, 100% 7.5rem, 0% 100%);
}
.feature__support--item .item-number {
  position: absolute;
  top: 2.4rem;
  left: 2rem;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  color: #3b3b8b;
  text-align: center;
  font-weight: 700;
}
.feature__support--item .item-number::before {
  content: "POINT";
  list-style: 1;
  font-family: "din-2014", sans-serif;
  font-size: 2.2rem;
}
.feature__support--item .item-number::after {
  content: counter(count, decimal-leading-zero);
  counter-increment: count;
  letter-spacing: 0;
  font-family: "din-2014", sans-serif;
  font-size: 7.2rem;
  line-height: 1;
}
.feature__support--item .item-visual {
  margin-bottom: 1em;
  padding-left: 9.6rem;
}
.feature__support--item .item-visual-label {
  margin-bottom: 1em;
  color: #3b3b8b;
  font-weight: 700;
  font-size: 1.8rem;
}
.feature__support--item .item-visual-image {
  width: 100%;
  aspect-ratio: 29/18;
}
.feature__support--item .item-visual-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.feature__support--item .item-sentence {
  letter-spacing: 0.12em;
}
.feature__support--item .item-btn {
  width: 28rem;
  min-width: -webkit-fit-content;
  min-width: -moz-fit-content;
  min-width: fit-content;
  height: 3.6rem;
  margin: 1.5em auto 0;
  padding: 0 1.5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid #008fd1;
  border-radius: 1.8rem;
  background: #fff url(../image/feature/btn_arrow01.svg) no-repeat right 1rem center/0.6rem auto;
  -webkit-box-shadow: 2px 3px 0 #008fd1;
          box-shadow: 2px 3px 0 #008fd1;
  color: #008fd1;
  font-weight: 700;
}

@media (max-width: 1024px) {
  .feature__hero {
    padding-top: 0;
  }
  .feature__hero--inner {
    padding: 5.8rem 3.4rem;
    background-color: #e3f2fd;
  }
  .feature__hero--inner .container {
    padding: 0;
    position: relative;
    z-index: 2;
  }
  .feature__hero--column {
    display: block;
  }
  .feature__hero--title {
    padding: 0 0.5em;
    font-size: 4.3rem;
  }
  .feature__hero--sentence {
    max-width: 47.2rem;
    color: inherit;
    letter-spacing: 0;
    font-weight: 700;
    font-size: 2rem;
  }
  .feature__hero--sentence p {
    line-height: 1.75;
  }
  .feature__hero--navi {
    margin-top: 7.2rem;
    padding: 2.4rem;
    position: relative;
    z-index: 2;
    border-radius: 5rem;
    background-color: #fff;
  }
  .feature__hero--navi .navi-content {
    width: 43.6rem;
    margin: 0 auto;
  }
  .feature__hero--navi .navi-content dt {
    font-size: 2.6rem;
  }
  .feature__hero--navi .navi-content dt::before, .feature__hero--navi .navi-content dt::after {
    content: none;
  }
  .feature__hero--navi .navi-content ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .feature__hero--navi .navi-person {
    width: 15.6rem;
    position: absolute;
    top: -1rem;
    left: -1rem;
    z-index: -1;
  }
  .feature__hero--navi .navi-item {
    width: 100%;
    min-width: 0;
    height: 11.6rem;
    gap: 1rem;
    border-radius: 1.2rem;
    -webkit-box-shadow: 0.15rem 0.15rem 0.3rem rgba(0, 0, 0, 0.15);
            box-shadow: 0.15rem 0.15rem 0.3rem rgba(0, 0, 0, 0.15);
    letter-spacing: 0;
    font-size: 3.6rem;
  }
  .feature__hero--bg {
    height: 39.8rem;
    z-index: 0;
  }
  .feature__hero--pageNavi {
    padding: 2.4rem 0;
  }
  .feature__hero--pageNavi .navi-list {
    gap: 1rem;
  }
  .feature__hero--pageNavi .navi-list > li {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .feature__hero--pageNavi .navi-btn {
    width: 100%;
    height: 11.2rem;
    position: relative;
    border: 0.6rem solid #ccc;
    border-radius: 5.6rem;
  }
  .feature__hero--pageNavi .navi-btn-icon {
    position: absolute;
    top: 50%;
    left: 1rem;
    opacity: 0.12;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .feature__hero--pageNavi .navi-btn-text {
    letter-spacing: 0;
    font-size: 2.1rem;
  }
  .feature__hero--pageNavi .navi-btn-text span {
    display: block;
    font-size: 3.1rem;
  }
  .feature__hero--pageNavi .btn01 {
    border-color: #df7e5d;
  }
  .feature__hero--pageNavi .btn01 .navi-btn-text span {
    color: #df7e5d;
  }
  .feature__hero--pageNavi .btn02 {
    border-color: #db6a76;
  }
  .feature__hero--pageNavi .btn02 .navi-btn-text span {
    color: #db6a76;
  }
  .feature__hero--pageNavi .btn03 {
    border-color: #2772a2;
  }
  .feature__hero--pageNavi .btn03 .navi-btn-text span {
    color: #2772a2;
  }
  .feature__point--main .point-item {
    display: block;
  }
  .feature__point--main .point-item:nth-of-type(odd) .point-visual {
    margin-left: auto;
  }
  .feature__point--main .point-item:nth-of-type(odd) .point-text {
    margin-right: 0;
  }
  .feature__point--main .point-item:nth-of-type(even) .point-text {
    margin-left: auto;
  }
  .feature__point--main .point-item:nth-of-type(even) .point-text-label {
    right: -2rem;
    left: auto;
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
  .feature__point--main .point-visual {
    width: 60rem;
  }
  .feature__point--main .point-text {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 68.6rem;
    margin-top: -8rem;
  }
  .feature__point--main .point-text-label {
    padding: 0.5em 0.75em;
    font-size: 2.6rem;
  }
  .feature__point--main .point-text-label span {
    font-size: 3rem;
  }
  .feature__point--main .point-text-label::after {
    width: 3.2rem;
    height: 3.2rem;
  }
  .feature__point--main .point-text-title {
    font-size: 3.2rem;
  }
  .feature__point--main .point-text-title span {
    font-size: 3.6rem;
  }
  .feature__point--main .point-text-sentence {
    font-size: 2.6rem;
  }
  .feature__point--main .point-text-sentence p {
    line-height: 1.75;
  }
  .feature__point--sub {
    grid-template-columns: 1fr;
  }
  .feature__point--sub .heading__01 {
    font-size: 3.6rem;
  }
  .feature__point--sub .heading__01 .deco01 {
    margin-bottom: 0.25em;
  }
  .feature__point--sub .point-visual {
    margin-bottom: 4rem;
  }
  .feature__point--sub .point-title {
    margin-bottom: 1em;
    font-size: 3.2rem;
  }
  .feature__point--sub .point-title span {
    font-size: 3.2rem;
  }
  .feature__point--list .point-list {
    gap: 6.4rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .feature__point--list .point-list > * {
    width: 100%;
  }
  .feature__point--list .point-visual {
    aspect-ratio: 688/226;
  }
  .feature__point--list .point-visual-inner {
    gap: 4.8rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .feature__point--list .point-visual-title {
    font-size: 5.2rem;
  }
  .feature__point--list .point-sentence {
    letter-spacing: 0.08em;
  }
  .feature__point--list .point-btn {
    width: 60rem;
    height: 7.6rem;
    border-radius: 3.8rem;
    background-position: right 3rem center;
    background-size: 1.2rem auto;
    letter-spacing: 0;
    font-size: 3.4rem;
  }
  .feature__data--box .data-title {
    font-size: 4rem;
  }
  .feature__data--box .data-title span {
    font-size: 4rem;
  }
  .feature__data--box .data-content {
    padding: 4rem 2rem;
  }
  .feature__data--box .data-item {
    padding-right: 0;
    padding-left: 0;
    position: relative;
  }
  .feature__data--box .data-item:last-of-type {
    padding-bottom: 0;
    border-bottom: none;
  }
  .feature__data--box .data-icon {
    width: 7.2rem;
    height: 7.2rem;
    position: absolute;
    top: -1rem;
    left: 0;
  }
  .feature__data--box .data-icon.sp-t2 {
    top: 2rem;
  }
  .feature__data--box .data-icon img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .feature__data--box .data-text dt {
    padding-left: 10rem;
    font-size: 4rem;
    line-height: 1.3;
  }
  .feature__data--box .data-text dd {
    margin-top: 0.5em;
    letter-spacing: 0.05em;
    font-size: 2.6rem;
  }
  .feature__data--box .data-result {
    width: 24rem;
    text-align: center;
    font-size: 4.6rem;
    line-height: 1;
  }
  .feature__data--box .data-result span {
    letter-spacing: 0;
  }
  .feature__data--box .data-result.pickup::before {
    width: 21.4rem;
    height: 13.8rem;
    bottom: -3rem;
    left: calc(50% - 10.7rem);
  }
  .feature__system--item {
    display: block;
  }
  .feature__system--item .item-visual {
    width: 100%;
  }
  .feature__system--item .item-text {
    padding: 4rem;
  }
  .feature__system--item .item-title {
    margin-bottom: 0.5em;
    letter-spacing: 0.025em;
    font-size: 3.6rem;
  }
  .feature__system--item .item-title::before, .feature__system--item .item-title::after {
    content: none !important;
  }
  .feature__system--item .item-sentence p {
    line-height: 1.75;
  }
  .feature__system--item .item-btn {
    width: 42rem;
    height: 9.2rem;
    margin-left: auto;
    padding: 0 2rem;
    border-radius: 4.6rem;
    letter-spacing: 0;
    font-size: 2.8rem;
  }
  .feature__system--item .item-btn-arrow {
    width: 5.2rem;
  }
  .feature__support--list > * {
    width: 100%;
  }
  .feature__support--item {
    padding-bottom: 4rem;
    border-radius: 5rem;
  }
  .feature__support--item::before {
    height: 34.2rem;
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 10.8rem, 0% 100%);
            clip-path: polygon(0 0, 100% 0, 100% 10.8rem, 0% 100%);
  }
  .feature__support--item .item-number {
    left: 4.8rem;
  }
  .feature__support--item .item-number::before {
    font-size: 3.2rem;
  }
  .feature__support--item .item-number::after {
    font-size: 8.8rem;
  }
  .feature__support--item .item-visual {
    padding-left: 17.5rem;
  }
  .feature__support--item .item-visual-label {
    margin-bottom: 0.5em;
    font-size: 3.6rem;
  }
  .feature__support--item .item-btn {
    width: 60rem;
    height: 7.6rem;
    margin-top: 1em;
    border-radius: 3.8rem;
    background-position: right 3rem center;
    background-size: 1.2rem auto;
    letter-spacing: 0;
    font-size: 3.4rem;
  }
  .feature__support--item .item-btn.sp-sm {
    padding-left: 0.5em;
    letter-spacing: -0.05em;
    font-size: 3.2rem;
  }
}
.commute .map__school--cv {
  margin-top: 0;
}
.commute .bg-map {
  position: relative;
}
.commute .bg-map::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background-image: url("../../assets/image/map/map-bg.jpg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 40%;
}
.commute .heading__02 {
  margin-bottom: 4rem;
}
.commute li {
  list-style: none;
}
.commute__hero {
  width: 100%;
  min-height: 44rem;
  padding-top: 7rem;
  padding-bottom: 0;
  position: relative;
}
.commute__hero--title {
  margin-bottom: 0.5em;
  font-size: 3.9rem;
}
.commute__hero--title > span {
  padding: 0 3rem;
  display: table;
  background-color: #fff;
}
.commute__hero--title > span + span {
  margin-top: 0.3em;
}
.commute__hero--title .primary {
  color: #008fd1;
}
.commute__hero--circles {
  padding-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
}
.commute__hero--circles .circle-item {
  width: 18rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 50%;
  background-color: #008fd1;
  color: #fff;
  text-align: center;
  font-weight: 700;
  aspect-ratio: 1;
}
.commute__hero--circles .circle-inner {
  letter-spacing: 0;
  line-height: 1;
  -webkit-filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.4));
          filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.4));
}
.commute__hero--circles .circle-inner span {
  display: inline-block;
}
.commute__hero--circles .circle-text1 {
  line-height: 1.2;
}
.commute__hero--circles .circle-text1-1 {
  font-size: 3rem;
}
.commute__hero--circles .circle-text1-2 {
  font-size: 2rem;
}
.commute__hero--circles .circle-text1-3 {
  font-size: 2.5rem;
}
.commute__hero--circles .circle-text2 {
  line-height: 1.1;
}
.commute__hero--circles .circle-text2-1 {
  font-size: 3rem;
}
.commute__hero--circles .circle-text2-2 {
  font-size: 4rem;
}
.commute__hero--circles .circle-text2-3 {
  font-size: 3rem;
}
.commute__hero--circles .circle-text3 {
  line-height: 1.1;
}
.commute__hero--circles .circle-text3-1 {
  font-size: 2.4rem;
}
.commute__hero--circles .circle-text3-2 {
  font-size: 4rem;
}
.commute__hero--circles .circle-text3-3 {
  font-size: 3rem;
}
.commute__hero--circles .circle-text3-4 {
  font-size: 3rem;
}
.commute__hero--sentence {
  font-weight: 500;
  font-size: 1.8rem;
}
.commute__hero--sentence p {
  line-height: 2;
}
.commute__hero--navi {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.commute__hero--navi .navi-content {
  margin-left: -2.4rem;
  text-align: center;
  font-size: 1.8rem;
}
.commute__hero--navi .navi-content dt {
  margin-bottom: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 700;
}
.commute__hero--navi .navi-content dt::before, .commute__hero--navi .navi-content dt::after {
  content: "";
  width: 1px;
  height: 3.2rem;
  display: inline-block;
  background-color: #000;
}
.commute__hero--navi .navi-content dt::before {
  -webkit-transform: rotate(-25deg);
          transform: rotate(-25deg);
}
.commute__hero--navi .navi-content dt::after {
  -webkit-transform: rotate(25deg);
          transform: rotate(25deg);
}
.commute__hero--navi .navi-content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.4rem;
  list-style: none;
}
.commute__hero--navi .navi-item {
  min-width: 19.8rem;
  height: 6.4rem;
  padding: 0 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 0.5rem;
  background-color: #ccc;
  -webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.15);
          box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.15);
  color: #fff;
  font-weight: 700;
}
.commute__hero--navi .navi-item.item01 {
  background-color: #ff6b6a;
}
.commute__hero--navi .navi-item.item02 {
  background-color: #ff8d3a;
}
.commute__hero--navi .navi-item.item03 {
  background-color: #ff3645;
}
.commute__hero--bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.commute__hero--bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.commute__point .bg-02 {
  padding: 3rem 0;
}
.commute__point--bg {
  margin-bottom: 4rem;
}
.commute__point--visual {
  width: 21rem;
  position: absolute;
  top: 50%;
  left: 100%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.commute__point--title {
  margin-bottom: 4rem;
}
.commute__point--title .text-lead {
  font-size: 2.1rem;
}
.commute__point--main {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  position: relative;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.commute__point--main .point-sentence {
  text-align: center;
  line-height: 1.5;
}
.commute__point--main .point-text {
  font-size: 2rem;
}
.commute__point--main .point-text-label {
  margin-bottom: 0.25em;
  font-size: 2.4rem;
}
.commute__point--main .point-text-label img {
  vertical-align: baseline;
}
.commute__point--main .point-text-thick {
  margin-top: 0.25em;
  padding-right: 0.25em;
  display: inline-block;
  background-color: white;
  font-weight: 700;
  font-size: 3.2rem;
}
.commute__point--feeling {
  margin-bottom: 10rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.commute__point--feeling .feeling-text-label {
  padding: 2rem 3rem;
  position: relative;
  background-color: #e3f2fd;
  font-size: 2rem;
}
.commute__point--feeling .feeling-text-label span {
  font-size: 2.6rem;
}
.commute__point--feeling .feeling-text-label.triangle::after {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  top: 50%;
  left: 100%;
  border-style: solid;
  border-top: 2rem solid transparent;
  border-right: 0;
  border-bottom: 2rem solid transparent;
  border-left: 3rem solid #e3f2fd;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.commute__point--features .features-visual {
  width: 18rem;
  height: 18rem;
  margin: 0 auto;
  margin-bottom: 3.5rem;
}
.commute__point--features .features-title {
  margin-bottom: 1.8rem;
  color: white;
  text-align: center;
  font-size: 2rem;
}
.commute__point--features .features-title span {
  display: block;
  background-color: #008fd1;
}
.commute__point--features .features-title span + span {
  margin-top: 0.5rem;
}
.commute__point--list {
  display: grid;
  gap: 7rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.commute__support--lead {
  width: 95rem;
  margin: 0 auto;
  margin-bottom: 6rem;
  padding: 2rem 3rem;
  padding-right: 5rem;
  position: relative;
  background-color: #e3f2fd;
}
.commute__support--lead .support-visual {
  width: 14rem;
  position: absolute;
  right: 0;
  bottom: 0;
}
.commute__support--lead .text-lead {
  font-size: 2.1rem;
}
.commute__support--list {
  width: 95rem;
  margin: 0 auto;
}
.commute__support--list li + li {
  margin-top: 2rem;
}
.commute__support--list .support-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.commute__support--list .support-visual {
  width: 25rem;
}
.commute__support--list .support-title {
  margin-bottom: 0.5em;
  letter-spacing: 0.1em;
  font-size: 2.2rem;
}
.commute__support--list .support-title .highlight {
  padding: 0 0.2em;
  background-color: #d6e8f3;
}
.commute__support--list .support-sentence {
  font-size: 1.8rem;
}
.commute__choice--list {
  margin-top: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10rem 2.6rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
}
.commute__choice--list > * {
  width: calc((100% - 7.8rem) / 4);
}
.commute__choice li {
  padding: 5rem 0 3rem;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 2px solid #008fd1;
  border-radius: 2rem;
  background-color: white;
  font-weight: 700;
}
.commute__choice li::before {
  content: "";
  width: 9.5rem;
  height: 1rem;
  position: absolute;
  top: -0.2rem;
  left: 50%;
  background-color: white;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.commute .choice-visual {
  width: 7.5rem;
  height: 6.5rem;
  position: absolute;
  bottom: calc(100% - 4rem);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.commute__course .text-lead {
  margin-bottom: 10rem;
}
.commute__course--content + .commute__course--content {
  margin-top: 10rem;
}
.commute__course--list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.5rem;
  color: white;
}
.commute__course .course-heading {
  margin-bottom: 6rem;
  font-size: 3rem;
}
.commute__course .ranking-title {
  margin-bottom: 2rem;
  padding-bottom: 2.4rem;
  border-bottom: 1px solid white;
  text-align: center;
  font-size: 2.1rem;
}
.commute__course .ranking-description {
  font-size: 1.4rem;
}
.commute__course .ranking-item {
  padding: 6rem 2rem 2rem 2rem;
  position: relative;
  background-color: #008fd1;
}
.commute__course .ranking-badge {
  width: 8rem;
  height: 8rem;
  padding: 1rem;
  position: absolute;
  top: -3.5rem;
  left: 50%;
  border-radius: 50%;
  background-color: #008fd1;
  text-align: center;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.commute__course .ranking-crown {
  width: 2.3rem;
  margin: 0 auto;
}
.commute__course .ranking-number {
  color: white;
  font-size: 4.2rem;
  line-height: 1;
}
.commute__course--list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.commute__cycle--list {
  width: 85rem;
  margin: 0 auto;
}
.commute__cycle--list li + li {
  margin-top: 6rem;
}
.commute__cycle--list li + li::after {
  content: "";
  width: 2rem;
  height: 2rem;
  position: absolute;
  bottom: calc(100% + 2rem);
  left: 50%;
  background-color: #984886;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.commute__cycle .cycle-title {
  font-size: 1.8rem;
}
.commute__cycle .cycle-title span {
  color: #984886;
  font-size: 2.8rem;
}
.commute__cycle .cycle-icon {
  width: 5rem;
}
.commute__cycle .cycle-item {
  position: relative;
}
.commute__cycle .cycle-content {
  padding: 2rem 1.5rem;
  padding-left: 20rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: rgba(224, 198, 220, 0.4);
}
.commute__cycle .cycle-number {
  height: 100%;
  padding: 0 1.7rem;
  position: absolute;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #984886;
  color: white;
  font-size: 2rem;
}
.commute__cycle .cycle-number span {
  color: #f7e58c;
  letter-spacing: 0;
  font-family: "din-2014", sans-serif;
  font-weight: bold;
  font-size: 5rem;
}
.commute__cycle .cycle-number::after {
  content: "";
  width: 3rem;
  height: 100%;
  position: absolute;
  top: 0;
  left: calc(100% - 0.16rem);
  background: #984886;
  -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
          clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.commute__schools .school-info {
  width: 100%;
}
.commute__schools .school-info dt {
  font-weight: 700;
  font-size: 1.3rem;
}
.commute__schools .school-info dd {
  font-size: 1.2rem;
}
.commute__schools .map__commute--online {
  width: 46rem;
}
.commute__schools .map__commute--online .online-fukidashi {
  width: 25.4rem;
}
.commute__schools .map__commute--online .online-img {
  width: 20.8rem;
  top: 0;
}
.commute__benefit .text-lead {
  margin-bottom: 6rem;
}
.commute__benefit--content + * {
  margin-top: 6rem;
}
.commute__benefit .is-visuals {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.commute__benefit .benefit-title {
  margin-bottom: 6rem;
  text-align: center;
}
.commute__benefit .benefit-visual {
  width: 35rem;
}
.commute__benefit .benefit-heading {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #008fd1;
  font-size: 3rem;
}
.commute__benefit .benefit-heading span {
  color: #008fd1;
}
.commute__benefit .benefit-subtitle {
  font-size: 2rem;
}
.commute__benefit .discounts-title {
  padding: 2.4rem 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  background-color: #008fd1;
  color: white;
  font-size: 2.4rem;
}
.commute__benefit .discounts-icon {
  width: 4.6rem;
}
.commute__benefit .discounts-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.commute__benefit .discounts-list > * {
  width: calc((100% - 4rem) / 3);
}
.commute__benefit .discounts-item {
  padding: 2rem 1.4rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: white;
}
.commute__benefit .discounts-sentence {
  padding: 1.4rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  font-weight: 700;
}
.commute__benefit .discounts-sentence .highlight-yel {
  font-size: 1.9rem;
}

@media (max-width: 1024px) {
  .commute .text-lead {
    font-size: 2.4rem;
  }
  .commute__hero {
    padding-top: 5rem;
    z-index: -1;
    background: #addaef;
  }
  .commute__hero--bg {
    height: 43rem;
  }
  .commute__hero--sentence {
    font-size: 2.2rem;
  }
  .commute__hero--sentence p {
    line-height: 1.6;
  }
  .commute__hero--circles {
    margin-top: 4rem;
    padding-bottom: 4rem;
  }
  .commute__hero--circles .circle-item {
    width: calc((100% - 4rem) / 3);
  }
  .commute__hero--circles .circle-text1-1 {
    font-size: 3.4rem;
  }
  .commute__hero--circles .circle-text1-2 {
    font-size: 2.4rem;
  }
  .commute__hero--circles .circle-text1-3 {
    font-size: 2.8rem;
  }
  .commute__hero--circles .circle-text2-1 {
    font-size: 3.4rem;
  }
  .commute__hero--circles .circle-text2-2 {
    font-size: 4.5rem;
  }
  .commute__hero--circles .circle-text2-3 {
    font-size: 3.4rem;
  }
  .commute__hero--circles .circle-text3-1 {
    font-size: 2.7rem;
  }
  .commute__hero--circles .circle-text3-2 {
    font-size: 4.5rem;
  }
  .commute__hero--circles .circle-text3-3 {
    font-size: 3.4rem;
  }
  .commute__hero--circles .circle-text3-4 {
    font-size: 3.4rem;
  }
  .commute__hero--circles .sp-md {
    font-size: 3.5rem;
  }
  .commute__hero--select {
    padding-top: 3rem;
    padding-bottom: 5rem;
  }
  .commute__hero--select .commute__hero--navi {
    position: relative;
    display: block;
  }
  .commute__hero--select .commute__hero--navi .navi-person {
    width: 16rem;
    position: absolute;
    top: -2rem;
    left: -2rem;
  }
  .commute__hero--select .commute__hero--navi .navi-content {
    width: 100%;
    margin-left: auto;
    padding: 3rem;
    border-radius: 5rem;
    background-color: white;
  }
  .commute__hero--select .commute__hero--navi .navi-content--inner {
    width: 43.5rem;
    margin: 0 auto;
  }
  .commute__hero--select .commute__hero--navi .navi-content ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .commute__hero--select .commute__hero--navi .navi-content dt {
    font-size: 2.6rem;
  }
  .commute__hero--select .commute__hero--navi .navi-content dt::before, .commute__hero--select .commute__hero--navi .navi-content dt::after {
    content: none;
  }
  .commute__hero--select .commute__hero--navi .navi-item {
    height: 11.5rem;
    padding: 0 0.5em;
    border-radius: 1rem;
    font-size: 3.6rem;
  }
  .commute__cycle--list {
    width: 100%;
  }
  .commute__cycle--list li + li::after {
    width: 4rem;
    height: 3rem;
    bottom: calc(100% + 1.5rem);
  }
  .commute__cycle .cycle-content {
    padding-left: 2rem;
    gap: 5rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .commute__cycle .cycle-title-sp {
    padding-top: 2rem;
    padding-left: 14rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 2.6rem;
  }
  .commute__cycle .cycle-title-sp span {
    font-size: 3.6rem;
  }
  .commute__cycle .cycle-title-sp .cycle-icon {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
  }
  .commute__cycle .cycle-title-sp .cycle-title {
    font-size: 2.6rem;
  }
  .commute__cycle .cycle-item {
    position: relative;
  }
  .commute__cycle .cycle-number {
    height: 12rem;
  }
  .commute__point--title .heading__01 {
    margin-bottom: 3rem;
    font-size: 4.4rem;
  }
  .commute__point--main .point-text-thick {
    font-size: 4rem;
  }
  .commute__point--main .point-text .spOnly {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
  }
  .commute__point--feeling {
    margin-bottom: 7rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .commute__point--feeling .highlight {
    font-size: 4.4rem !important;
  }
  .commute__point--feeling .feeling-text {
    font-size: 2.4rem;
  }
  .commute__point--feeling .feeling-text-label {
    font-size: 3.6rem;
  }
  .commute__point--feeling .feeling-text-label.triangle::after {
    top: calc(100% - 0.5rem);
    left: 50%;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  .commute__point--list {
    grid-template-columns: 1fr;
  }
  .commute__point--list .features-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1em;
  }
  .commute__point--list .features-title {
    font-size: 3rem;
  }
  .commute__point--list .features-visual {
    margin-bottom: 0;
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
  }
  .commute__point--list .features-sentence {
    font-size: 2.2rem;
  }
  .commute__point--bg {
    padding-bottom: 10rem !important;
  }
  .commute__point--visual {
    top: calc(100% + 1rem);
    right: -8rem;
    left: auto;
  }
  .commute__support--lead {
    width: 100%;
    padding: 2rem;
    text-align: center;
  }
  .commute__support--lead .support-visual {
    margin-right: -4rem;
    margin-bottom: -4rem;
  }
  .commute__support--list {
    width: 100%;
  }
  .commute__support .support-item {
    gap: 2rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .commute__support .support-title {
    font-size: 3rem;
  }
  .commute__support .support-visuals {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 3rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .commute__support .support-visual {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
  }
  .commute .choice-visual {
    width: 100%;
    height: 8rem;
  }
  .commute__choice li {
    width: 100%;
    font-size: 2rem;
  }
  .commute__choice--list {
    display: grid;
    gap: 8rem 2.6rem;
    grid-template-columns: 1fr 1fr;
  }
  .commute__course .text-lead {
    margin-bottom: 5rem !important;
  }
  .commute__course .course-heading {
    margin-bottom: 10rem !important;
  }
  .commute__course--list {
    display: grid;
    gap: 5rem 2.5rem;
    grid-template-columns: 1fr 1fr;
  }
  .commute__course .course-heading {
    margin-bottom: 3rem;
  }
  .commute__schools {
    background-color: white;
  }
  .commute__schools .heading__02 {
    padding-left: 0;
    border-left: 0;
    text-align: center;
  }
  .commute__schools .text-lead {
    text-align: center;
  }
  .commute__schools .sp-lg {
    font-size: 6.3rem;
  }
  .commute__benefit--content + * {
    margin-top: 17rem;
  }
  .commute__benefit .is-visuals {
    gap: 4rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .commute__benefit .discounts-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .commute__benefit .discounts-title {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .commute__benefit .discounts-item {
    width: 100%;
    padding: 2.2rem 2.5rem 0;
  }
  .commute__benefit .discounts-icon {
    width: 2em;
  }
  .commute__benefit .discounts-title {
    font-size: 4rem;
  }
  .commute__benefit .discounts-text {
    font-size: 3.2rem;
  }
  .commute__benefit .discounts-sentence {
    padding: 2.5rem 0;
  }
  .commute__benefit .discounts-sentence .highlight-yel {
    font-size: 3.4rem;
  }
  .commute__benefit .benefit-title {
    margin-bottom: 4rem;
  }
  .commute__benefit .benefit-heading {
    font-size: 3.6rem;
  }
  .commute__benefit .benefit-subtitle {
    font-size: 2.4rem;
  }
}
.training .map__school--cv {
  margin-top: 0;
}
.training .heading__02 {
  margin-bottom: 6.5rem;
}
.training li {
  list-style: none;
}
.training__hero {
  width: 100%;
  min-height: 44rem;
  padding-top: 6rem;
  padding-bottom: 6rem;
  position: relative;
}
.training__hero .primary {
  color: #008fd1;
}
.training__hero .pink {
  color: #ff3544;
}
.training__hero--title {
  margin-bottom: 0.5em;
  font-weight: 700;
  font-size: 3.4rem;
}
.training__hero--title > span {
  padding: 0 3rem;
  display: table;
  background-color: #fff;
}
.training__hero--title > span + span {
  margin-top: 0.3em;
}
.training__hero--title .num {
  font-weight: bold;
  font-size: 6.6rem;
  line-height: 1;
}
.training__hero--benefits {
  width: 64rem;
  margin-top: 12rem;
  padding: 2rem 2rem;
  position: relative;
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  text-align: center;
}
.training__hero--benefits .benefits-circle {
  width: 10rem;
  height: 10rem;
  position: absolute;
  right: calc(100% - 5.5rem);
  bottom: calc(100% - 0.5rem);
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 50%;
  background-color: #ff3544;
  color: white;
  font-size: 2rem;
}
.training__hero--benefits .benefits-circle::after {
  content: "";
  width: 2.5rem;
  height: 2.5rem;
  position: absolute;
  top: calc(100% - 1rem);
  left: 50%;
  background: #ff3544;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transform: rotate(70deg);
          transform: rotate(70deg);
  -webkit-clip-path: polygon(100% 50%, 0 0, 0 100%);
          clip-path: polygon(100% 50%, 0 0, 0 100%);
}
.training__hero--benefits .benefits-item {
  padding: 1rem;
  z-index: 1;
  border-radius: 1rem;
  background-color: #ffe100;
  -webkit-box-shadow: 0.1rem 0.1rem 0.3rem 0.1rem rgba(0, 0, 0, 0.2);
          box-shadow: 0.1rem 0.1rem 0.3rem 0.1rem rgba(0, 0, 0, 0.2);
}
.training__hero--benefits .benefits-label {
  padding: 0.5rem 1rem;
  border-radius: 20rem;
  background-color: #231815;
  color: white;
  letter-spacing: 0.06em;
  font-size: 1.4rem;
}
.training__hero--benefits .benefits-text {
  font-weight: 600;
  font-size: 3rem;
}
.training__hero--benefits .benefits-text .num {
  letter-spacing: 0;
  font-weight: bold;
  font-size: 4.4rem !important;
}
.training__hero--benefits::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  border-radius: 1rem;
  background-color: white;
  opacity: 60%;
}
.training__hero--bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.training__hero--bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.training-header {
  margin-bottom: 7rem;
}
.training-title {
  margin-bottom: 3rem;
  font-size: 3.6rem;
}
.training-description {
  font-weight: 600;
  font-size: 2rem;
}
.training__benefit--content {
  text-align: center;
}
.training__benefit .benefit-visual {
  width: 15rem;
  position: absolute;
  top: 50%;
  right: 2rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.training__benefit .benefit-subtitle {
  font-weight: 900;
  font-size: 2.3rem;
}
.training__benefit .benefit-text {
  letter-spacing: 0.15rem;
  font-weight: 600;
  line-height: 1.7;
}
.training__benefit .benefit-details {
  width: 110rem;
  max-width: 100%;
  margin: 0 auto;
  padding: 3rem 0;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid #231815;
  border-radius: 2rem;
}
.training__benefit .benefit-subtitle {
  margin-bottom: 3.5rem;
}
.training__benefit .benefit-icons {
  width: 16.5rem;
  position: absolute;
  bottom: calc(100% - 1.5rem);
  left: 50%;
  border-radius: 2rem;
  background-color: #ff3544;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.training__benefit .benefit-icon {
  width: 2.4rem;
  margin: 0 auto;
  padding: 0.5rem 0;
  display: block;
}
.training__flow--header {
  margin-bottom: 5rem;
}
.training__flow--steps {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 6rem;
}
.training__flow--steps .flow-step {
  padding: 6rem 4rem 3rem 4rem;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border: 1px solid #231815;
  border-radius: 2rem;
  background-color: white;
}
.training__flow--steps .flow-badge {
  position: absolute;
  bottom: calc(100% - 4rem);
  left: 50%;
  -webkit-transform: translate(-50%);
          transform: translate(-50%);
}
.training__flow--steps .flow-visual {
  width: 21rem;
  margin: 0 auto;
  margin-bottom: 4.5rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.training__flow--steps .flow-title {
  text-align: center;
  font-size: 2rem;
}
.training__flow--steps .flow-description {
  line-height: 1.7;
}
.training__flow .flow-title {
  margin-bottom: 3rem;
  font-size: 2rem;
}
.training__flow .flow-badge {
  width: 5rem;
}
.training__eligible--cards {
  width: 115rem;
  max-width: 100%;
  margin: 0 auto;
  display: grid;
  gap: 4.7rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.training__eligible .eligible-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border: 1px solid #231815;
}
.training__eligible .eligible-card__title {
  padding: 0.5em 0;
  background-color: #55597f;
  color: white;
  text-align: center;
  font-size: 2rem;
}
.training__eligible .eligible-card__lead {
  padding: 1.5rem 2rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background-color: #f5f5f5;
  font-weight: 600;
  font-size: 1.4rem;
}
.training__eligible .eligible-card__table {
  font-size: 1.7rem;
}
.training__eligible .eligible-card__table .eligible-row {
  padding: 1em 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3rem;
}
.training__eligible .eligible-card__table .eligible-th {
  font-weight: 900;
}
.training__eligible .eligible-card__table .eligible-td {
  font-weight: 600;
}
.training__eligible .eligible-card__table .eligible-row:nth-child(even) {
  background-color: #f5f5f5;
}
.training__courses .training-tabs {
  height: 7rem;
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  font-weight: bold;
}
.training__courses .training-tab {
  border: none;
  background-color: #f5f5f7;
  font-size: 2rem;
}
.training__courses .training-tab.is-active {
  background-color: var(--theme-color, #db6a76);
  /* 押下したときの色 */
  color: #fff;
  /* 文字色を白に */
}
.training__courses .training-table {
  width: 100%;
  border-collapse: collapse;
  background-color: white;
  line-height: 1.5;
}
.training__courses .training-table * {
  letter-spacing: 0;
}
.training__courses .training-table thead th {
  padding: 2rem 0;
  background-color: var(--theme-color, #db6a76);
  color: white;
}
.training__courses .training-table th, .training__courses .training-table td {
  padding: 0.5rem 1rem;
}
.training__courses .training-table th {
  border-top: 1px solid #231815;
  background-color: #f5f5f7;
  font-weight: 600;
}
.training__courses .training-table td {
  border: 1px solid #231815;
  border-right: none;
}
.training__courses .training-table tr:first-child th {
  border-top: none;
}
.training__courses .training-table tr:first-child td {
  border-top: none;
}
.training__courses .training-table tr:last-child td {
  border-bottom: none;
}
.training__courses .training-table tr:nth-child(odd) td {
  border-bottom: none;
}
.training__courses .training-table tr:nth-child(odd) td:nth-child(3), .training__courses .training-table tr:nth-child(odd) td:nth-child(4) {
  text-align: center;
}
.training__courses .training-table tr:nth-child(even) td {
  border-top: 1px dashed #999;
  text-align: center;
}
.training__courses .training-table .th-01 {
  padding: 0.5rem 1em;
  text-align: left;
}
.training__courses .training-table .td-02 {
  font-size: 1.4rem;
}
.training__courses .training-table .td-03 {
  font-size: 1.4rem;
}
.training__courses .training-table .td-04 {
  font-size: 1.2rem;
}
.training__courses .training-table .td-05 span {
  font-size: 1.2rem;
}
.training__faq .faq-list dt + dd {
  margin-top: 1.4rem;
}
.training__faq .faq-list dl + dl {
  margin-top: 2.8rem;
}
.training__faq .faq-q, .training__faq .faq-a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  letter-spacing: 0.02em;
}
.training__faq .faq-q::before, .training__faq .faq-a::before {
  content: "";
  display: block;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  background-size: contain;
  background-repeat: no-repeat;
}
.training__faq .faq-q {
  font-weight: 600;
  font-size: 1.8rem;
}
.training__faq .faq-q::before {
  width: 2rem;
  height: 2rem;
  margin-top: 0.2em;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16.9 19.35"><path fill="%23005bac" d="M16.25,12.95c-.31,1.01-.76,1.84-1.36,2.51l2.01,1.9-1.91,2-2.11-2c-.64.39-1.2.67-1.67.82-.79.26-1.73.39-2.82.39-2.29,0-4.18-.68-5.67-2.05-1.81-1.64-2.72-4.06-2.72-7.24S.93,3.65,2.79,2.01C4.3.67,6.19,0,8.44,0s4.17.71,5.71,2.13c1.78,1.64,2.67,3.94,2.67,6.89,0,1.56-.19,2.87-.57,3.93ZM9.6,15.31c.21-.6.49-.16.82-.3l-1.78-1.69,1.88-1.97,1.78,1.68c.28-.57.47-1.07.58-1.5.17-.64.26-1.39.26-2.25,0-1.97-.4-3.49-1.21-4.56s-1.98-1.61-3.53-1.61c-1.45,0-2.61.52-3.48,1.55-.87,1.03-1.3,2.58-1.3,4.63,0,2.4.62,4.13,1.86,5.17.8.67,1.76,1.01,2.88,1.01.42,0,.83-.5,1.21-.16Z"/></svg>');
}
.training__faq .faq-a {
  padding-left: 1em;
  font-weight: bold;
  font-size: 2rem;
}
.training__faq .faq-a::before {
  width: 3rem;
  height: 3rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30.81 30.82"><path fill="%23ffec3f" d="M29.04 28.94l-.73-2.51-.53-1.84c4.5-6.06 3.99-14.65-1.53-20.12-6.04-5.99-15.8-5.95-21.79.1-5.99 6.04-5.95 15.8.1 21.79 5.47 5.43 13.99 5.9 20 1.45l1.95.49z"/><path fill="%23231815" d="M10.48 21.68l4.23-12.35h1.97l4.34 12.3h-2.2l-.85-2.54-4.45.02-.83 2.56h-2.22Zm3.6-4.36h3.29l-1.67-4.99z"/></svg>');
}

@media (max-width: 1024px) {
  .training-title {
    font-size: 4rem;
  }
  .training-description {
    letter-spacing: 0;
    font-size: 2.4rem;
  }
  .training__hero--title {
    letter-spacing: 0;
    font-size: 4.2rem;
  }
  .training__hero--title .num {
    font-size: 7.8rem;
  }
  .training__hero--benefits {
    width: 65.8rem;
    margin: 4.5rem auto 0;
    padding: 3.2rem 2rem;
    grid-template-columns: 1fr;
  }
  .training__hero--benefits .benefits-item {
    width: 50.6rem;
    margin: 0 auto;
    padding: 2.5rem;
  }
  .training__hero--benefits .benefits-circle {
    width: 14.4rem;
    height: 14.4rem;
    top: -2rem;
    right: auto;
    bottom: auto;
    left: -4.5rem;
    z-index: 2;
    font-size: 3rem;
  }
  .training__hero--benefits .benefits-label {
    font-size: 2.5rem;
  }
  .training__hero--benefits .benefits-text {
    margin-top: 2rem;
    letter-spacing: 0;
    font-weight: 700;
    font-size: 5rem;
    line-height: 1;
  }
  .training__hero--benefits .benefits-text .num {
    font-size: 8rem !important;
  }
  .training__benefit .benefit-visual {
    top: 3rem;
    right: auto;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .training__benefit .benefit-info {
    padding: 20rem 2rem 0 2rem;
  }
  .training__benefit .benefit-details {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .training__benefit .benefit-subtitle {
    font-size: 3rem;
  }
  .training__benefit .benefit-text {
    letter-spacing: 0;
    font-size: 2.6rem;
  }
  .training__flow--steps {
    gap: 15rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .training__flow .training-header {
    margin-bottom: 12rem;
  }
  .training__flow .flow-badge {
    width: 11rem;
  }
  .training__flow .flow-title {
    font-size: 4rem;
  }
  .training__flow .flow-visual {
    width: 41rem;
  }
  .training__flow .flow-description {
    font-size: 3rem;
  }
  .training__eligible .training-header {
    margin-bottom: 3.8rem;
  }
  .training__eligible--cards {
    width: 100%;
    gap: 3rem;
    grid-template-columns: 1fr;
  }
  .training__eligible .eligible-card__title {
    font-size: 2.8rem;
  }
  .training__eligible .eligible-card__lead {
    font-size: 2.2rem;
  }
  .training__eligible .eligible-card__table {
    font-size: 2.6rem;
  }
  .training__courses .training-panels--frame {
    margin: 0 -3.2rem;
    padding: 0 3.2rem;
    overflow: scroll;
    overflow-y: hidden;
  }
  .training__courses .training-panels--frame .training-panels {
    width: 150rem;
  }
  .training__courses .training-panels--sentence {
    margin-top: 3rem;
    letter-spacing: 0;
    font-size: 3.2rem;
    line-height: 1.7;
  }
  .training__courses .training-panels--sentence a {
    color: #008fd1;
    text-decoration: underline;
  }
  .training__courses .training-tabs {
    height: auto;
    gap: 2rem;
    grid-template-columns: 1fr;
  }
  .training__courses .training-table tbody th {
    position: relative;
  }
  .training__courses .training-table tbody th + td {
    padding-left: 2rem;
  }
  .training__courses .training-table tbody .td-02 {
    font-size: 2.4rem;
  }
  .training__courses .training-table tbody .td-03 {
    font-size: 2.4rem;
  }
  .training__courses .training-table tbody .td-04 {
    font-size: 2.2rem;
  }
  .training__courses .training-table tbody .td-05 span {
    font-size: 2rem;
  }
  .training__courses .training-tab {
    padding: 2rem 0;
    font-size: 4.5rem;
  }
  .training__faq .faq-q {
    font-size: 2.6rem;
  }
  .training__faq .faq-q::before {
    width: 2.3rem;
  }
  .training__faq .faq-a {
    font-size: 2.4rem;
  }
  .training__faq .faq-a::before {
    width: 4.3rem;
    height: 4.3rem;
  }
}
.footer01__tel {
  font-size: 2rem;
}
.footer01__tel .phone-number {
  font-family: "din-2014", sans-serif;
  font-size: 2.9rem;
}/*# sourceMappingURL=custom.css.map */