@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600&display=swap");

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before,
.slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-loading .slick-list {
  background: #fff url("../image/ajax-loader.gif") center center no-repeat;
}
@font-face {
  font-family: "slick";
  src: url("../fonts/slick.eot");
  src: url("../fonts/slick.eot?#iefix") format("embedded-opentype"),
    url("../fonts/slick.woff") format("woff"),
    url("../fonts/slick.ttf") format("truetype"),
    url("../fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}

.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: #fff;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}

[dir="rtl"] .slick-prev {
  left: auto;
  right: -25px;
}

.slick-prev:before {
  content: "←";
}

[dir="rtl"] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}

[dir="rtl"] .slick-next {
  left: -25px;
  right: auto;
}

.slick-next:before {
  content: "→";
}

[dir="rtl"] .slick-next:before {
  content: "←";
}

.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: #000;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  color: #000;
  opacity: 0.75;
}

.l-recordList .p-mainVisual .p-mainVisual__inner {
  margin: 0 auto;
  text-align: center;
  width: 100%;
}

.l-recordList .p-clrhead {
  margin: 2.6666666667vw auto 6.1333333333vw;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-clrhead {
    margin: 1.0714285714vw auto 1.6428571429vw;
  }
}

.l-recordList .p-clrhead .p-clrhead__inner {
  padding: 0 4vw;
  display: block;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-clrhead .p-clrhead__inner {
    padding: 0;
    display: inline-flex;
    align-items: baseline;
    justify-content: flex-start;
  }
}

.l-recordList .p-clrhead .p-clrhead__name {
  color: #004b30;
  font-size: 8vw;
  font-weight: 600;
  line-height: 9.6vw;
  padding-right: 0;
  padding-bottom: 2.6666666667vw;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-clrhead .p-clrhead__name {
    font-size: 2.8571428571vw;
    line-height: 1;
    padding-right: 1.4285714286vw;
    padding-bottom: 0;
  }
}

.l-recordList .p-clrhead .p-clrhead__city {
  font-size: 3.7333333333vw;
  font-weight: 400;
  line-height: 4.2666666667vw;
  padding-right: 0;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-clrhead .p-clrhead__city {
    font-size: 1.1428571429vw;
    line-height: 3vw;
    padding-right: 1.7142857143vw;
  }
}

.l-recordList .p-clrhead .p-clrhead__course {
  display: inline-flex;
  align-items: flex-end;
  justify-content: flex-start;
}

.l-recordList .p-clrhead .p-clrhead__course .p-clrhead__courseItem {
  margin-right: 1.6vw;
  width: 13.8666666667vw;
  height: 5.8666666667vw;
  color: #fff;
  font-size: 3.2vw;
  font-weight: 600;
  line-height: 5.8666666667vw;
  text-align: center;
  border-radius: 0.8vw;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-clrhead .p-clrhead__course .p-clrhead__courseItem {
    margin-right: 0.7142857143vw;
    width: 4.8571428571vw;
    height: 2.1428571429vw;
    font-size: 1vw;
    line-height: 2.1428571429vw;
    border-radius: 0.3571428571vw;
  }
}

.l-recordList .p-clrhead .p-clrhead__course .p-clrhead__courseItem.jhs_ex {
  background-color: #01791d;
}

.l-recordList .p-clrhead .p-clrhead__course .p-clrhead__courseItem.es {
  background-color: #02a227;
}

.l-recordList .p-clrhead .p-clrhead__course .p-clrhead__courseItem.jhs {
  background-color: #ce0505;
}

.l-recordList .p-clrhead .p-clrhead__course .p-clrhead__courseItem.hs {
  background-color: #3451a2;
}

.l-recordList .p-clrhead .p-clrhead__course .p-clrhead__courseItem:last-child {
  margin-right: 0;
}

.l-recordList .p-recordList {
  padding: 17.3333333333vw 8vw 13.3333333333vw;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-recordList {
    padding: 8.8571428571vw 0 12.1428571429vw;
  }
}

.l-recordList .c-recordList {
  margin: 20vw 0 0;
}
@media screen and (min-width: 711px) {
  .l-recordList .c-recordList {
    margin: 6.4285714286vw 0 0;
  }
}

.l-recordList .c-recordList:first-child {
  margin-top: 0;
}

.l-recordList .c-recordList__title {
  text-align: center;
  color: #004b30;
  font-size: 4.8vw;
  font-weight: 600;
  line-height: 9.6vw;
  padding-bottom: 2.6666666667vw;
}
@media screen and (min-width: 711px) {
  .l-recordList .c-recordList__title {
    font-size: 1.7142857143vw;
    line-height: 1;
    padding-bottom: 1.4285714286vw;
  }
}

.l-recordList .c-recordList__list {
  border-top: #3c3830 solid 1px;
  border-bottom: #3c3830 solid 1px;
  display: grid;
  grid-template-columns: 1fr;
  padding: 2.6666666667vw 0;
}
@media screen and (min-width: 711px) {
  .l-recordList .c-recordList__list {
    grid-template-columns: repeat(2, 1fr);
    padding: 0;
  }
}

.l-recordList .c-recordList__item {
  display: grid;
  grid-template-columns: auto;
  align-items: center;
  padding: 2.6666666667vw 0;
  grid-template-columns: 12vw auto 13.3333333333vw;
  gap: 2.6666666667vw;
}
@media screen and (min-width: 711px) {
  .l-recordList .c-recordList__item {
    border-bottom: dashed #3c3830 1px;
    padding: 1.4285714286vw 0;
    grid-template-columns: 6vw auto 5.7142857143vw;
    gap: 1.0714285714vw;
  }
}
@media screen and (min-width: 711px) {
  .l-recordList .c-recordList__item:nth-child(2n) {
    padding-left: 1.4285714286vw;
  }
}
@media screen and (min-width: 711px) {
  .l-recordList .c-recordList__item:nth-child(1n) {
    padding-right: 1.4285714286vw;
  }
}

.l-recordList .c-recordList__item:last-child {
  border-bottom: none;
}

.l-recordList .c-recordList__item:nth-last-child(2):nth-child(odd) {
  border-bottom: none;
}

.l-recordList .c-recordList__passIcon {
  width: 100%;
}

.l-recordList .c-recordList__schoolName {
  font-size: 4.2666666667vw;
  font-weight: 600;
}
@media screen and (min-width: 711px) {
  .l-recordList .c-recordList__schoolName {
    font-size: 1.8571428571vw;
  }
}

.l-recordList .c-recordList__num {
  font-size: 4.2666666667vw;
  font-weight: 600;
  text-align: right;
}
@media screen and (min-width: 711px) {
  .l-recordList .c-recordList__num {
    font-size: 1.8571428571vw;
  }
}

.l-recordList .p-recordList__note {
  margin: 5.3333333333vw 0 0;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-recordList__note {
    margin: 1.4285714286vw 0 0;
  }
}

.l-recordList .p-recordList__note li {
  font-size: 3.2vw;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-recordList__note li {
    font-size: 1vw;
  }
}

.l-recordList .p-recordList__note li:last-child {
  margin-bottom: 0;
}

.l-recordList .p-record__other {
  margin: 16vw 0 0;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-record__other {
    margin: 7vw 0 0;
  }
}

.l-recordList .p-record__other--top {
  margin-top: 0;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-record__other--top {
    margin-top: 2.1428571429vw;
  }
}

.l-recordList .p-record__otherTitle {
  text-align: center;
  color: #004b30;
  font-size: 4.8vw;
  font-weight: 600;
  line-height: 9.6vw;
  padding-bottom: 2.6666666667vw;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-record__otherTitle {
    font-size: 2.1428571429vw;
    line-height: 1;
    padding-bottom: 1.4285714286vw;
  }
}

.l-recordList .p-record__otherTitle::after {
  content: "";
  display: block;
  width: 25.3333333333vw;
  height: 0.5333333333vw;
  background-color: #004b30;
  margin: 3.2vw auto 0;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-record__otherTitle::after {
    height: 3px;
    width: 12.1428571429vw;
    margin: 1.1428571429vw auto 0;
  }
}

.l-recordList .p-record__otherTitle--top {
  font-size: 6.4vw;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-record__otherTitle--top {
    font-size: 2.7142857143vw;
  }
}

.l-recordList .p-record__otherDesc {
  text-align: center;
  margin-top: 2.6666666667vw;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-record__otherDesc {
    margin-top: 0.3571428571vw;
  }
}

.l-recordList .p-record__otherList {
  display: grid;
  grid-template-columns: 64vw;
  justify-content: center;
  gap: 6.4vw;
  margin-top: 6.6666666667vw;
}
@media screen and (min-width: 711px) {
  .l-recordList .p-record__otherList {
    grid-template-columns: repeat(2, 26vw);
    gap: 2.5vw 4.5714285714vw;
    margin-top: 3.5714285714vw;
  }
}

.c-btn-record {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #004b30;
  font-size: 3.7333333333vw;
  font-weight: bold;
  padding: 3.2vw 6.4vw;
  border: 0.2666666667vw solid #004b30;
  letter-spacing: -0.03em;
  border-radius: 1.6vw;
  box-shadow: rgba(0, 0, 0, 0.25) 0px 3px 6px;
}
@media screen and (min-width: 711px) {
  .c-btn-record {
    font-size: 1.4285714286vw;
    padding: 1.2857142857vw 2.2857142857vw;
    border: 2px solid #004b30;
    border-radius: 0.4285714286vw;
  }

  .c-btn-record:hover {
    background-color: #004b30;
    color: #fff;
    opacity: 1;
  }

  .c-btn-record:hover path {
    fill: #004b30;
  }
}

.c-btn-record svg {
  position: absolute;
  right: 3.4666666667vw;
  width: 4.2666666667vw;
}
@media screen and (min-width: 711px) {
  .c-btn-record svg {
    right: 0.9285714286vw;
    width: 1.5714285714vw;
  }
}

.c-btn-record svg path {
  transition: 0.2s;
}
