/* CSS Document */
@font-face {
  src: url("../fonts/NotoSansJP-Black.woff2") format("woff2");
  font-family: "Noto Sans JP";
  font-weight: 900;
  font-display: swap;
}
@font-face {
  src: url("../fonts/NotoSansJP-Bold.woff2") format("woff2");
  font-family: "Noto Sans JP";
  font-weight: 700;
  font-display: swap;
}
@font-face {
  src: url("../fonts/NotoSansJP-Medium.woff2") format("woff2");
  font-family: "Noto Sans JP";
  font-weight: 500;
  font-display: swap;
}
@font-face {
  src: url("../fonts/NotoSansJP-Regular.woff2") format("woff2");
  font-family: "Noto Sans JP";
  font-weight: 400;
  font-display: swap;
}
@font-face {
  src: url("../fonts/Afacad-Bold.woff2") format("woff2");
  font-family: "Afacad";
  font-weight: 700;
  font-display: swap;
}
@font-face {
  src: url("../fonts/ZenKakuGothicNew-Bold.woff2") format("woff2");
  font-family: "ZenKakuGothicNew";
  font-weight: 700;
  font-display: swap;
}
@media (min-width: 751px) {
  main.sitemap .sitemapwrap > .disc {
    display: -ms-flexbox;
    /* prefix -> -webkit-*/
    /* no prefix*/
    display: -webkit-box;
    display: flex;
  }
  main.sitemap .sitemapwrap > .disc > ul {
    width: 33.3333333333%;
  }
}
@media (max-width: 750px) {
  main.class section.bg-blue {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 2.14em 4%;
  }
}

@media (max-width: 750px) {
  .tablelist {
    overflow-x: scroll;
  }
}
.tablelist .table caption.bottom {
  caption-side: bottom;
}

.fz22 {
  font-size: 1.375em;
}

@media (min-width: 751px) {
  .w70 {
    width: 70%;
    margin-inline: auto;
  }
}

@media (min-width: 751px) {
  .company .tablelist {
    width: 100%;
  }
}
@media (max-width: 750px) {
  .company .table {
    table-layout: fixed;
    word-wrap: break-word;
  }
}
@media (max-width: 750px) {
  .company .table tr th {
    width: 30%;
  }
}
@media (min-width: 751px) {
  .company .table tr th {
    width: 20%;
  }
}

@media (max-width: 750px) {
  .taiken .school-items {
    grid-template-columns: repeat(1, 1fr);
  }
}
.taiken .school-item .school-item_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.taiken .school-item .school-item_link:hover img {
  opacity: 0.8;
}
.taiken .school-item .school-item_link:hover .linkbox {
  color: #00A8EF;
  background-color: white;
}
.taiken .school-item_img {
  overflow: hidden;
  width: 100%;
}
.taiken .school-item_img img {
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 1em;
}
.taiken .school-item_img img.waseda {
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 750px) {
  .taiken .school-item_img img.waseda {
    border-radius: 0.57em;
  }
}

.school {
  width: 100%;
}
.school .school-img {
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover;
}
.school .section-school .school-items {
  gap: 0;
}
@media (max-width: 750px) {
  .school .section-school .school-items {
    grid-template-columns: repeat(1, 1fr);
    gap: 10.6vw;
  }
}
.school .section-school .school-items .school-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.875rem;
}
@media (max-width: 750px) {
  .school .section-school .school-items .school-item {
    gap: 8vw;
  }
}

.school-detail .h1default {
  margin-bottom: 2rem;
  padding-left: 0;
}
.school-detail .h1default::before {
  display: none;
}
.school-detail .school-img img {
  aspect-ratio: 3/2;
  -o-object-fit: contain;
     object-fit: contain;
}
.school-detail .school-class-img {
  width: 80%;
  margin-inline: auto;
}
@media (max-width: 750px) {
  .school-detail .school-class-img {
    width: 100%;
  }
}
.school-detail .school-banner {
  width: 31.25vw;
  margin-inline: auto;
}
@media (max-width: 750px) {
  .school-detail .school-banner {
    width: 100%;
  }
}

.tuition-fee .accordionWrap .title {
  -webkit-transition: none;
  transition: none;
}
@media (min-width: 751px) {
  .tuition-fee .accordion-inner {
    width: 58%;
    margin-inline: auto;
  }
}
@media (min-width: 751px) {
  .tuition-fee .accordion-inner.w100 {
    width: 100%;
  }
}
.tuition-fee table thead th[aria-hidden=true] {
  visibility: hidden;
  border: none;
}

.faq .accordionWrap .title {
  -webkit-transition: none;
  transition: none;
}

@media (max-width: 750px) {
  .class .inner840, .class-archive .inner840 {
    width: 100%;
  }
}
.class .inner840 .icatch img, .class-archive .inner840 .icatch img {
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
}
.class .class-item-link, .class-archive .class-item-link {
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  color: #333;
}
.class .class-item-link:hover, .class .class-item-link:focus, .class-archive .class-item-link:hover, .class-archive .class-item-link:focus {
  opacity: 0.8;
  color: #333;
}
.class .class-item-link.link-grid, .class-archive .class-item-link.link-grid {
  display: grid;
  grid-template-rows: 1fr auto 1fr auto;
}
@media (min-width: 751px) {
  .class .class-item-link .title, .class-archive .class-item-link .title {
    padding-bottom: 2.375rem;
  }
}
.class .class-item-link .icatch, .class-archive .class-item-link .icatch {
  padding-bottom: 1.25rem;
}
.class .class-item-link .text, .class-archive .class-item-link .text {
  padding-bottom: 2rem;
}
.class .class-content .icatch, .class-archive .class-content .icatch {
  padding-bottom: 1.25rem;
}
.class .class-content .text, .class-archive .class-content .text {
  padding-bottom: 2rem;
}
@media (min-width: 751px) {
  .class .class-item, .class-archive .class-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.class .class-item.purple a.class-item-link:hover .linkbox, .class-archive .class-item.purple a.class-item-link:hover .linkbox {
  color: #A587E9;
  background-color: white;
}
.class .class-item.green a.class-item-link:hover .linkbox, .class-archive .class-item.green a.class-item-link:hover .linkbox {
  color: #009844;
  background-color: white;
}
.class .class-item.light-green a.class-item-link:hover .linkbox, .class-archive .class-item.light-green a.class-item-link:hover .linkbox {
  color: #81E154;
  background-color: white;
}
.class .class-item.color-red a.class-item-link:hover .linkbox, .class-archive .class-item.color-red a.class-item-link:hover .linkbox {
  color: #FB4840;
  background-color: white;
}
.class .class-item.pink a.class-item-link:hover .linkbox, .class-archive .class-item.pink a.class-item-link:hover .linkbox {
  color: #FF4E9C;
  background-color: white;
}
.class .class-item.yellow a.class-item-link:hover .linkbox, .class-archive .class-item.yellow a.class-item-link:hover .linkbox {
  color: #E6C035;
  background-color: white;
}
.class .class-item.blue a.class-item-link:hover .linkbox, .class-archive .class-item.blue a.class-item-link:hover .linkbox {
  color: #2130D8;
  background-color: white;
}
.class .class-item.brown a.class-item-link:hover .linkbox, .class-archive .class-item.brown a.class-item-link:hover .linkbox {
  color: #AB2222;
  background-color: white;
}
.class .class-item.black a.class-item-link:hover .linkbox, .class-archive .class-item.black a.class-item-link:hover .linkbox {
  color: #333;
  background-color: white;
}
.class.class-kobetsu .class-item, .class.online-class .class-item, .class-archive.class-kobetsu .class-item, .class-archive.online-class .class-item {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.class .icatch, .class .text, .class-archive .icatch, .class-archive .text {
  margin-top: 0;
}
.class .linkbox, .class-archive .linkbox {
  margin-top: auto;
}
@media (min-width: 751px) {
  .class .fee .tablelist, .class .curriculum .tablelist, .class-archive .fee .tablelist, .class-archive .curriculum .tablelist {
    width: 70%;
    margin-inline: auto;
  }
}
@media (min-width: 751px) {
  .class .curriculum .tablelist, .class-archive .curriculum .tablelist {
    width: 70%;
    margin-inline: auto;
  }
}
.class .w100, .class-archive .w100 {
  width: 100%;
}
.class .fz22, .class-archive .fz22 {
  font-size: 1.375em;
}
.class .space, .class-archive .space {
  display: inline-block;
  padding-left: 4.2rem;
}
.class .schedule-list, .class-archive .schedule-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.class .class-item.blue .title, .class .class-item.blue .text, .class-archive .class-item.blue .title, .class-archive .class-item.blue .text {
  color: #333;
}
.class .class-item.blue .title::before, .class-archive .class-item.blue .title::before {
  background-color: #2130D8;
}
.class .class-item.blue .linkbox, .class-archive .class-item.blue .linkbox {
  background: #2130D8;
  border: 1px solid #2130D8;
}
.class .class-item.blue .linkbox:hover, .class-archive .class-item.blue .linkbox:hover {
  color: #2130D8;
  background: #fff;
}
.class .compare .class-item, .class-archive .compare .class-item {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0;
}
@media (max-width: 750px) {
  .class .compare .class-item, .class-archive .compare .class-item {
    gap: 0;
  }
}
.class .compare .class-item .content-box, .class-archive .compare .class-item .content-box {
  padding: 1.5em 1.43em 2.14em;
}
@media (max-width: 750px) {
  .class .compare .class-item .content-box, .class-archive .compare .class-item .content-box {
    display: none;
  }
}
.class .compare .class-item.blue .title, .class .compare .class-item.blue .text, .class-archive .compare .class-item.blue .title, .class-archive .compare .class-item.blue .text {
  color: #333;
}
.class .compare .class-item.blue .title::before, .class-archive .compare .class-item.blue .title::before {
  background-color: #2130D8;
}
.class .compare .class-item.blue .linkbox, .class-archive .compare .class-item.blue .linkbox {
  background: #2130D8;
  border: 1px solid #2130D8;
}
.class .compare .class-item.blue .linkbox:hover, .class-archive .compare .class-item.blue .linkbox:hover {
  color: #2130D8;
  background: #fff;
}
@media (min-width: 751px) {
  .class .compare .class-item .title, .class-archive .compare .class-item .title {
    padding-bottom: clamp(1.5rem, 2vw, 2.375rem);
  }
}
.class .compare .class-item .icatch, .class-archive .compare .class-item .icatch {
  margin-top: auto;
  padding-bottom: 1.25rem;
}
@media (max-width: 750px) {
  .class .compare .class-item .icatch, .class-archive .compare .class-item .icatch {
    padding-bottom: 4.8vw;
  }
}
.class .compare .class-item .title.title-short ~ .icatch, .class-archive .compare .class-item .title.title-short ~ .icatch {
  margin-top: 0;
}
.class .compare .class-item .text, .class-archive .compare .class-item .text {
  padding-bottom: 2rem;
}
@media (max-width: 750px) {
  .class .compare .class-item .text, .class-archive .compare .class-item .text {
    padding-bottom: 8vw;
  }
}
@media (max-width: 750px) {
  .class .compare .tablelist, .class-archive .compare .tablelist {
    overflow-x: scroll;
  }
}
@media (max-width: 750px) {
  .class .compare .tablelist .table, .class-archive .compare .tablelist .table {
    width: 100%;
    min-width: 600px;
    border-collapse: collapse;
  }
}
.class .compare .tablelist .table caption.bottom, .class-archive .compare .tablelist .table caption.bottom {
  caption-side: bottom;
}

.results .h3default {
  margin-top: 5em;
}
@media (max-width: 750px) {
  .results .h3default {
    margin-top: 10.6vw;
  }
}

.teacher-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.teacher-item .teacher-item_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  padding-top: 1.875em;
  background-color: #F5F5F5;
  border-radius: 1em;
  text-decoration: none;
  cursor: pointer;
}
@media (max-width: 750px) {
  .teacher-item .teacher-item_link {
    padding-top: 2.14em;
  }
}
.teacher-item .teacher-item_link:hover {
  opacity: 0.5;
}
.teacher-item .teacher-item_link > *:not(.deco) {
  padding-inline: 1.125em;
  padding-inline: 1.64em;
}
.teacher-item .teacher-item_link .name {
  font-size: 1.375em;
  font-weight: bold;
  text-align: center;
}
@media (max-width: 750px) {
  .teacher-item .teacher-item_link .name {
    font-size: 1.29em;
  }
}
.teacher-item .teacher-item_link .place {
  font-weight: bold;
  color: #00A8EF;
  line-height: 1.5;
}
@media (min-width: 751px) {
  .teacher-item .teacher-item_link .place {
    text-align: center;
  }
}
.teacher-item .teacher-item_link .img, .teacher-item .teacher-item_link .class-title, .teacher-item .teacher-item_link .class-list {
  padding-top: 1.25em;
}
@media (max-width: 750px) {
  .teacher-item .teacher-item_link .img, .teacher-item .teacher-item_link .class-title, .teacher-item .teacher-item_link .class-list {
    padding-top: 1.07em;
  }
}
.teacher-item .teacher-item_link .img {
  border-radius: 50%;
  padding-top: 1.25em;
  display: block;
}
@media (max-width: 750px) {
  .teacher-item .teacher-item_link .img {
    padding-top: 1.07em;
    width: 92%;
    margin-right: auto;
    margin-left: auto;
  }
}
.teacher-item .teacher-item_link .class-title {
  font-weight: bold;
}
.teacher-item .teacher-item_link .class-list {
  padding-bottom: 1.25em;
}
.teacher-item .teacher-item_link .deco {
  width: 100%;
  position: relative;
  margin-top: auto;
  background-color: #00A8EF;
  border-radius: 0 0 1em 1em;
  font-size: 0.9375em;
  font-weight: bold;
  font-family: "ZenKakuGothicNew", serif-serif;
  color: white;
  text-align: center;
  padding-block: 0.9375rem;
}
@media (max-width: 750px) {
  .teacher-item .teacher-item_link .deco {
    font-size: 1.14em;
    padding: 0.79rem 0;
  }
}
.teacher-item .teacher-item_link .deco::before, .teacher-item .teacher-item_link .deco::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 2rem;
}
.teacher-item .teacher-item_link .deco::before {
  content: "";
  width: 0.8rem;
  height: 3px;
  border-top: 3px solid;
}
.teacher-item .teacher-item_link .deco::after {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  border-top: 3px solid;
  border-right: 3px solid;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}

section.teacher .swiper-slide {
  height: auto;
}

.profile-box .caption span {
  font-family: "Zen Kaku Gothic New", sans-serif;
}