@charset "UTF-8";
.form_contents .form_checkbox .form_checkbox_item label::before, .form_contents .form_checkbox .form_checkbox_item label::after, .form_contents .form_radio .form_radio_item label::before, .form_contents .form_radio .form_radio_item label::after, .form_contents .form_select::after, .blockparts h3.wp-block-heading::before, .blockparts h3.wp-block-heading::after, .admission .horizontal_flowlist .num::after, .course .to_admission a picture::after, .course .to_admission a::before, .course .to_admission a::after, .course .ribitz a picture::after, .course .ribitz a::before, .course .ribitz a::after, .course.course__profession .employment .employment_list ul li::before, .course.course__profession .employment .employment__title h2::after, .course.course__profession .employment .employment__title::after, .about.about__campuslife .schedule__list .schedule__event dd p::after, .about.about__campuslife .schedule__list li::before, .about.about__campuslife .schedule__list li::after, .about.about__greeting .history_list .year::before, .about.about__greeting .history_list .year::after, .disc_list li::before, .dots_list li::before, .related_navi .bg::after, .underlayer__cornerBox::after, .breadcrumb li:not(:last-child)::after, .underlayer__head::after {
  display: block;
  content: "";
  position: absolute;
}

.underlayer__head {
  padding: 68px 0 40px 0;
  background-color: #E7404E;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .underlayer__head {
    padding: 97px 0 55px 0;
  }
}
@media print, screen and (min-width: 920px) {
  .underlayer__head {
    padding: 117px 0 70px 0;
  }
}
@media print, screen and (min-width: 1280px) {
  .underlayer__head {
    padding: 137px 0 80px 0;
  }
}
.underlayer__head::after {
  width: 100%;
  height: 100px;
  background-color: #E7404E;
  top: 100%;
  left: 0;
  z-index: -1;
}
@media print, screen and (min-width: 768px) {
  .underlayer__head::after {
    height: 150px;
  }
}
@media print, screen and (min-width: 920px) {
  .underlayer__head::after {
    height: 200px;
  }
}
@media print, screen and (min-width: 1280px) {
  .underlayer__head::after {
    height: 250px;
  }
}

.breadcrumb {
  margin-bottom: 35px;
}
@media print, screen and (min-width: 768px) {
  .breadcrumb {
    margin-bottom: 40px;
  }
}
@media print, screen and (min-width: 920px) {
  .breadcrumb {
    margin-bottom: 45px;
  }
}
@media print, screen and (min-width: 1280px) {
  .breadcrumb {
    margin-bottom: 50px;
  }
}
.breadcrumb ol {
  display: flex;
  align-items: center;
  overflow: auto;
  gap: 5px;
}
.breadcrumb li {
  min-width: auto;
  padding-right: 9px;
  white-space: nowrap;
}
@media print, screen and (min-width: 768px) {
  .breadcrumb li {
    white-space: normal;
  }
}
.breadcrumb li:not(:last-child) {
  position: relative;
}
.breadcrumb li:not(:last-child)::after {
  width: 5px;
  height: 5px;
  border-right: 1px solid #FFF;
  border-bottom: 1px solid #FFF;
  top: 6px;
  right: 0;
  transform: rotate(-45deg);
}
.breadcrumb li a,
.breadcrumb li span {
  font-size: 1.2rem;
  font-weight: normal;
  color: #FFF;
  line-height: 1.4;
  display: block;
  white-space: nowrap;
}
@media print, screen and (min-width: 768px) {
  .breadcrumb li a,
  .breadcrumb li span {
    white-space: normal;
  }
}
@media (hover: hover) {
  .breadcrumb li a:where(:any-link, :enabled, summary, span, dt, div):hover {
    text-decoration: underline;
  }
}

.underlayer__title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
@media print, screen and (min-width: 768px) {
  .underlayer__title {
    gap: 15px;
  }
}
@media print, screen and (min-width: 920px) {
  .underlayer__title {
    gap: 65px;
  }
}
@media print, screen and (min-width: 1280px) {
  .underlayer__title {
    gap: 80px;
  }
}
.underlayer__title .title_ja,
.underlayer__title .title_eng {
  color: #FFF;
}
.underlayer__title .title_ja {
  font-size: 3rem;
  font-weight: 500;
  line-height: 1;
  width: 100%;
}
@media print, screen and (min-width: 321px) {
  .underlayer__title .title_ja {
    font-size: 3.2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .underlayer__title .title_ja {
    font-size: 4.4rem;
  }
}
@media print, screen and (min-width: 920px) {
  .underlayer__title .title_ja {
    font-size: 5.4rem;
    width: auto;
  }
}
@media print, screen and (min-width: 1280px) {
  .underlayer__title .title_ja {
    font-size: 6.4rem;
  }
}
.underlayer__title .title_eng {
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.4;
  letter-spacing: 0.2em;
}

.underlayer__wrap {
  margin-bottom: 50px;
}
@media print, screen and (min-width: 768px) {
  .underlayer__wrap {
    margin-bottom: 70px;
  }
}
@media print, screen and (min-width: 920px) {
  .underlayer__wrap {
    margin-bottom: 85px;
  }
}
@media print, screen and (min-width: 1280px) {
  .underlayer__wrap {
    margin-bottom: 100px;
  }
}
.underlayer__wrap.no_margin {
  margin-bottom: 0;
}
.underlayer__wrap .page_inner_l,
.underlayer__wrap .page_inner_m,
.underlayer__wrap .page_inner_s {
  /*@include sp-min {
      padding-inline: 7px;
  }
  @include sp {
      padding-inline: 0;
  }*/
}

.pagehead_img {
  width: calc(100% - 10px);
  height: 200px;
  margin-left: auto;
  margin-bottom: 45px;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  position: relative;
  overflow: hidden;
}
@media print, screen and (min-width: 768px) {
  .pagehead_img {
    width: calc(100% - 15px);
    height: 300px;
    margin-bottom: 60px;
    border-top-left-radius: 16px;
    border-bottom-left-radius: 16px;
  }
}
@media print, screen and (min-width: 920px) {
  .pagehead_img {
    width: calc(100% - 20px);
    height: 400px;
    margin-bottom: 75px;
    border-top-left-radius: 24px;
    border-bottom-left-radius: 24px;
  }
}
@media print, screen and (min-width: 1280px) {
  .pagehead_img {
    width: calc(100% - 50px);
    height: 500px;
    margin-bottom: 85px;
    border-top-left-radius: 32px;
    border-bottom-left-radius: 32px;
  }
}
.pagehead_img picture {
  width: 100%;
  height: 100%;
  display: block;
}
.pagehead_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.underlayer__cornerBox {
  padding-block: 25px 0;
  margin-left: auto;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .underlayer__cornerBox {
    padding-block: 45px 0;
  }
}
@media print, screen and (min-width: 920px) {
  .underlayer__cornerBox {
    padding-block: 65px 0;
  }
}
@media print, screen and (min-width: 1280px) {
  .underlayer__cornerBox {
    padding-block: 80px 0;
  }
}
.underlayer__cornerBox::after {
  width: calc(100% - 10px);
  height: 100px;
  border-top-left-radius: 8px;
  background-color: #FFF;
  top: 0;
  right: 0;
  z-index: -1;
}
@media print, screen and (min-width: 768px) {
  .underlayer__cornerBox::after {
    width: calc(100% - 15px);
    height: 150px;
    border-top-left-radius: 16px;
  }
}
@media print, screen and (min-width: 920px) {
  .underlayer__cornerBox::after {
    width: calc(100% - 20px);
    height: 200px;
    border-top-left-radius: 24px;
  }
}
@media print, screen and (min-width: 1280px) {
  .underlayer__cornerBox::after {
    width: calc(100% - 50px);
    height: 250px;
    border-top-left-radius: 32px;
  }
}

.underlayer__block:not(:last-child) {
  margin-bottom: 45px;
}

.related_navi {
  margin-bottom: 35px;
}
@media print, screen and (min-width: 768px) {
  .related_navi {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 920px) {
  .related_navi {
    margin-bottom: 80px;
  }
}
@media print, screen and (min-width: 1280px) {
  .related_navi {
    margin-bottom: 100px;
  }
}
.related_navi ul {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3px;
}
@media print, screen and (min-width: 768px) {
  .related_navi ul {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 2px;
  }
}
.related_navi a {
  height: 137px;
  display: block;
  position: relative;
  transition: opacity 0.3s;
}
@media print, screen and (min-width: 768px) {
  .related_navi a {
    height: 175px;
  }
}
@media print, screen and (min-width: 920px) {
  .related_navi a {
    height: 215px;
  }
}
@media print, screen and (min-width: 1280px) {
  .related_navi a {
    height: 250px;
  }
}
.related_navi a::before, .related_navi a::after {
  width: 26px;
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  bottom: 5px;
  right: 5px;
  transition: transform 0.3s;
}
@media print, screen and (min-width: 768px) {
  .related_navi a::before, .related_navi a::after {
    width: 30px;
    height: 30px;
    bottom: 10px;
    right: 10px;
  }
}
@media print, screen and (min-width: 920px) {
  .related_navi a::before, .related_navi a::after {
    width: 35px;
    height: 35px;
    bottom: 20px;
    right: 20px;
  }
}
@media print, screen and (min-width: 1280px) {
  .related_navi a::before, .related_navi a::after {
    width: 40px;
    height: 40px;
    bottom: 30px;
    right: 30px;
  }
}
.related_navi a::before {
  content: "";
  border-radius: 50%;
  background-color: #E7404E;
  z-index: 3;
}
.related_navi a::after {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e900";
  font-size: 1.1rem;
  color: #FFF;
  z-index: 4;
}
@media print, screen and (min-width: 920px) {
  .related_navi a::after {
    font-size: 1.2rem;
  }
}
.related_navi .text {
  text-align: center;
  width: 100%;
  padding: 20px;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 2;
  transform: translateY(-50%);
}
.related_navi .text p {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  color: #FFF;
}
@media print, screen and (min-width: 321px) {
  .related_navi .text p {
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .related_navi .text p {
    font-size: 2.2rem;
  }
}
@media print, screen and (min-width: 920px) {
  .related_navi .text p {
    font-size: 2.3rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .related_navi .text p {
    font-size: 2.4rem;
  }
}
.related_navi .bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.related_navi .bg picture {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.related_navi .bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s;
}
.related_navi .bg::after {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  top: 0;
  left: 0;
  z-index: 2;
}
@media (hover: hover) {
  .related_navi a:where(:any-link, :enabled, summary, span, dt, div):hover {
    opacity: 0.8;
  }
  .related_navi a:where(:any-link, :enabled, summary, span, dt, div):hover::before, .related_navi a:where(:any-link, :enabled, summary, span, dt, div):hover::after {
    transform: translateX(3px);
  }
  .related_navi a:where(:any-link, :enabled, summary, span, dt, div):hover img {
    transform: scale(1.05);
  }
}

.youtube {
  padding-top: 56.25%;
  border-radius: 10px;
  position: relative;
  overflow: hidden;
}
.youtube iframe {
  width: 100%;
  height: 100%;
  display: block;
  border: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.googlemap {
  width: 100%;
  padding-top: 54.09%;
  position: relative;
  overflow: hidden;
}
.googlemap iframe {
  width: 100%;
  height: 100%;
  display: block;
  border: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.heading__red {
  font-size: 2.2rem;
  font-weight: normal;
  line-height: 1.4;
  color: #E7404E;
  display: flex;
  align-items: start;
  gap: 15px;
}
@media print, screen and (min-width: 768px) {
  .heading__red {
    line-height: 1.5;
    gap: 18px;
  }
}
.heading__red:not(:first-child) {
  margin-top: 40px;
}
@media print, screen and (min-width: 768px) {
  .heading__red:not(:first-child) {
    margin-top: 50px;
  }
}
.heading__red:not(:last-child) {
  margin-bottom: 25px;
}
@media print, screen and (min-width: 768px) {
  .heading__red:not(:last-child) {
    margin-bottom: 28px;
  }
}
.heading__red .label {
  font-size: 1.6rem;
  line-height: 1.4;
  width: 50px;
  padding: 0 4px 2px 8px;
  border: 1px solid #E7404E;
  border-radius: 2px;
  transform: translateY(5px);
}
@media print, screen and (min-width: 768px) {
  .heading__red .label {
    transform: translateY(6px);
  }
}
.heading__red .label.label__any {
  color: #E7404E;
}
.heading__red .label.label__important {
  color: #FFF;
  background-color: #E7404E;
}

.heading__middleText {
  font-size: 2.4rem;
  line-height: 1.57;
  font-weight: 500;
  margin-bottom: 15px;
}
@media print, screen and (min-width: 321px) {
  .heading__middleText {
    font-size: 2.6rem;
  }
}
@media print, screen and (min-width: 768px) {
  .heading__middleText {
    font-size: 2.7rem;
    line-height: 1.4;
    margin-bottom: 25px;
  }
}
@media print, screen and (min-width: 920px) {
  .heading__middleText {
    font-size: 2.8rem;
    margin-bottom: 30px;
  }
}
@media print, screen and (min-width: 1280px) {
  .heading__middleText {
    font-size: 2.9rem;
    margin-bottom: 35px;
  }
}

.heading_index {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 8px;
  margin-bottom: 25px;
}
@media print, screen and (min-width: 768px) {
  .heading_index {
    gap: 15px 20px;
    margin-bottom: 35px;
  }
}
@media print, screen and (min-width: 920px) {
  .heading_index {
    gap: 15px 25px;
    margin-bottom: 45px;
  }
}
@media print, screen and (min-width: 1280px) {
  .heading_index {
    gap: 15px 30px;
    margin-bottom: 55px;
  }
}
.heading_index span {
  color: #E7404E;
  letter-spacing: 0;
}
.heading_index .eng {
  font-size: 3.8rem;
  font-weight: 300;
  line-height: 1;
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .heading_index .eng {
    width: auto;
  }
}
.heading_index .ja {
  font-size: 1.8rem;
  font-weight: normal;
  line-height: 1.2;
}
.heading_index.noflex span {
  width: 100%;
}

.page_lead:not(:last-child) {
  margin-bottom: 50px;
}
@media print, screen and (min-width: 768px) {
  .page_lead:not(:last-child) {
    margin-bottom: 55px;
  }
}
@media print, screen and (min-width: 920px) {
  .page_lead:not(:last-child) {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 1280px) {
  .page_lead:not(:last-child) {
    margin-bottom: 65px;
  }
}
.page_lead .page_lead__text {
  font-size: 1.5rem;
  line-height: 1.75;
}
@media print, screen and (min-width: 768px) {
  .page_lead .page_lead__text {
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 920px) {
  .page_lead .page_lead__text {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .page_lead .page_lead__text {
    font-size: 1.8rem;
    line-height: 1.77;
  }
}
.page_lead .page_lead__text:not(:last-child) {
  margin-bottom: 20px;
}

@media print, screen and (min-width: 768px) {
  .indentBox {
    padding-left: 1.2em;
  }
}

.bgBox {
  padding: 20px 20px 25px 20px;
  border-radius: 10px;
}
@media print, screen and (min-width: 768px) {
  .bgBox {
    padding: 24px 20px 25px 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .bgBox {
    padding: 27px 20px 27px 20px;
  }
}
@media print, screen and (min-width: 1280px) {
  .bgBox {
    padding: 30px 20px 30px 20px;
  }
}
.bgBox:not(:first-child) {
  margin-top: 30px;
}
.bgBox:not(:last-child) {
  margin-bottom: 20px;
}

.imgBox {
  padding-top: 66.47%;
  border-radius: 10px;
  position: relative;
  overflow: hidden;
}
.imgBox picture {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.imgBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

.indexList {
  padding-bottom: 30px;
}
@media print, screen and (min-width: 768px) {
  .indexList {
    padding-bottom: 40px;
  }
}
@media print, screen and (min-width: 920px) {
  .indexList {
    padding-bottom: 50px;
  }
}
@media print, screen and (min-width: 1280px) {
  .indexList {
    padding-bottom: 60px;
  }
}
.indexList .page_inner_l {
  padding-inline: 0;
}
.indexList .index__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 50px;
}
@media print, screen and (min-width: 768px) {
  .indexList .index__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
  }
}
@media print, screen and (min-width: 920px) {
  .indexList .index__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 35px;
  }
}
@media print, screen and (min-width: 1280px) {
  .indexList .index__grid {
    gap: 40px;
  }
}
.indexList a {
  transition: opacity 0.3s;
}
.indexList .imgBox {
  padding-top: 70%;
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .indexList .imgBox {
    padding-top: 66.47%;
    margin-bottom: 22px;
  }
}
@media print, screen and (min-width: 920px) {
  .indexList .imgBox {
    margin-bottom: 24px;
  }
}
@media print, screen and (min-width: 1280px) {
  .indexList .imgBox {
    margin-bottom: 25px;
  }
}
.indexList .imgBox img {
  transition: transform 0.3s;
}
@media print, screen and (min-width: 1280px) {
  .indexList .index__inner {
    padding-inline: 10px;
  }
}
.indexList .index__name {
  font-size: 2.6rem;
  font-weight: 500;
  line-height: 1.4;
  margin-bottom: 20px;
  transition: color 0.3s;
}
@media print, screen and (min-width: 768px) {
  .indexList .index__name {
    margin-bottom: 25px;
  }
}
@media print, screen and (min-width: 920px) {
  .indexList .index__name {
    margin-bottom: 30px;
  }
}
@media print, screen and (min-width: 1280px) {
  .indexList .index__name {
    margin-bottom: 35px;
  }
}
.indexList .heading_index.sp {
  margin-top: 70px;
}
@media print, screen and (min-width: 768px) {
  .indexList .heading_index.sp {
    margin-top: 0;
  }
}
.indexList .index__clm1 {
  margin-top: 0;
}
@media print, screen and (min-width: 768px) {
  .indexList .index__clm1 {
    margin-top: 80px;
  }
}
@media print, screen and (min-width: 920px) {
  .indexList .index__clm1 {
    margin-top: 105px;
  }
}
@media print, screen and (min-width: 1280px) {
  .indexList .index__clm1 {
    margin-top: 125px;
  }
}
.indexList .index__clm1 a {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px 30px;
}
@media print, screen and (min-width: 768px) {
  .indexList .index__clm1 a {
    grid-template-columns: 1fr 48.81%;
  }
}
.indexList .index__clm1 .imgBox {
  padding-top: 70%;
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .indexList .index__clm1 .imgBox {
    padding-top: 226px;
    margin-bottom: 0;
  }
}
.indexList .index__clm1 .heading_index {
  margin-bottom: 45px;
}
.indexList .index__clm1 .index__text {
  order: 1;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .indexList .index__clm1 .index__text {
    order: 0;
  }
}
@media print, screen and (min-width: 768px) {
  .indexList .index__clm1 .link_button {
    position: absolute;
    bottom: 10px;
    right: 0;
  }
}
@media (hover: hover) {
  .indexList a:where(:any-link, :enabled, summary, span, dt, div):hover {
    opacity: 0.8;
  }
  .indexList a:where(:any-link, :enabled, summary, span, dt, div):hover .imgBox img {
    transform: scale(1.05);
  }
  .indexList a:where(:any-link, :enabled, summary, span, dt, div):hover .index__name {
    color: #E7404E;
  }
  .indexList a:where(:any-link, :enabled, summary, span, dt, div):hover .link_button__item {
    color: #E7404E;
  }
  .indexList a:where(:any-link, :enabled, summary, span, dt, div):hover .link_button__item::before, .indexList a:where(:any-link, :enabled, summary, span, dt, div):hover .link_button__item::after {
    transform: translateY(-50%) translateX(3px);
  }
}

.tabList .tabList__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
  gap: 10px;
}
.tabList .tabList__grid.sp_clm1 {
  grid-template-columns: 1fr;
}
@media print, screen and (min-width: 768px) {
  .tabList .tabList__grid.sp_clm1 {
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
  }
}
.tabList .tabList__grid.sp_clm1 button:not(:last-child) {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}
@media print, screen and (min-width: 768px) {
  .tabList .tabList__grid.sp_clm1 button:not(:last-child) {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
}
.tabList button {
  font-size: 1.5rem;
  font-weight: 500;
  color: #FFF;
  text-align: center;
  line-height: 1.5;
  padding: 18px 50px 18px 10px;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  background-color: #DFDFDF;
  position: relative;
  transition: color 0.3s, background-color 0.3s;
}
@media print, screen and (min-width: 321px) {
  .tabList button {
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 768px) {
  .tabList button {
    font-size: 1.8rem;
    text-align: left;
    padding: 20px 50px 20px 15px;
    border-top-left-radius: 9px;
    border-top-right-radius: 9px;
  }
}
@media print, screen and (min-width: 920px) {
  .tabList button {
    font-size: 2rem;
    padding: 23px 60px 23px 25px;
  }
}
@media print, screen and (min-width: 1280px) {
  .tabList button {
    font-size: 2.2rem;
    padding: 25px 70px 25px 30px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
  }
}
.tabList button::before, .tabList button::after {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  right: 10px;
}
@media print, screen and (min-width: 321px) {
  .tabList button::before, .tabList button::after {
    width: 34px;
    height: 34px;
  }
}
@media print, screen and (min-width: 768px) {
  .tabList button::before, .tabList button::after {
    width: 36px;
    height: 36px;
    right: 14px;
  }
}
@media print, screen and (min-width: 920px) {
  .tabList button::before, .tabList button::after {
    width: 38px;
    height: 38px;
    right: 17px;
  }
}
@media print, screen and (min-width: 1280px) {
  .tabList button::before, .tabList button::after {
    width: 40px;
    height: 40px;
    right: 20px;
  }
}
.tabList button::before {
  content: "";
  border-radius: 50%;
  background-color: #FFF;
  z-index: 1;
  transform: translateY(-50%);
  transition: background-color 0.3s;
}
.tabList button::after {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e900";
  font-size: 1.1rem;
  color: #DFDFDF;
  z-index: 2;
  transform: translateY(-50%) rotate(90deg);
  transition: color 0.3s;
}
@media print, screen and (min-width: 920px) {
  .tabList button::after {
    ont-size: 1.2rem;
  }
}
.tabList button.is-active {
  color: #222;
  background-color: #FCF7EE;
}
.tabList button.is-active::before {
  background-color: #E7404E;
}
.tabList button.is-active::after {
  color: #FFF;
}
@media (hover: hover) {
  .tabList button:where(:any-link, :enabled, summary, span, dt, div):hover {
    color: #222;
    background-color: #FCF7EE;
  }
  .tabList button:where(:any-link, :enabled, summary, span, dt, div):hover::before {
    background-color: #E7404E;
  }
  .tabList button:where(:any-link, :enabled, summary, span, dt, div):hover::after {
    color: #FFF;
  }
}

.tabcontents {
  padding-block: 25px;
}
@media print, screen and (min-width: 768px) {
  .tabcontents {
    padding-block: 50px;
  }
}
@media print, screen and (min-width: 920px) {
  .tabcontents {
    padding-block: 70px;
  }
}
@media print, screen and (min-width: 1280px) {
  .tabcontents {
    padding-block: 90px;
  }
}
.tabcontents .tabcontents__section:not(:first-child) {
  display: none;
}
.tabcontents .tabcontents__inner {
  padding: 30px 20px;
  border-radius: 10px;
}
@media print, screen and (min-width: 768px) {
  .tabcontents .tabcontents__inner {
    padding: 30px 30px;
  }
}
@media print, screen and (min-width: 920px) {
  .tabcontents .tabcontents__inner {
    padding: 40px 40px;
  }
}
@media print, screen and (min-width: 1280px) {
  .tabcontents .tabcontents__inner {
    padding: 50px 60px;
  }
}
.tabcontents .tabcontents__block:not(:last-child) {
  margin-bottom: 50px;
}
@media print, screen and (min-width: 768px) {
  .tabcontents .tabcontents__block:not(:last-child) {
    margin-bottom: 56px;
  }
}
@media print, screen and (min-width: 920px) {
  .tabcontents .tabcontents__block:not(:last-child) {
    margin-bottom: 62px;
  }
}
@media print, screen and (min-width: 1280px) {
  .tabcontents .tabcontents__block:not(:last-child) {
    margin-bottom: 70px;
  }
}
.tabcontents .block__child:not(:last-child) {
  margin-bottom: 50px;
}
@media print, screen and (min-width: 768px) {
  .tabcontents .block__child:not(:last-child) {
    margin-bottom: 56px;
  }
}
@media print, screen and (min-width: 920px) {
  .tabcontents .block__child:not(:last-child) {
    margin-bottom: 62px;
  }
}
@media print, screen and (min-width: 1280px) {
  .tabcontents .block__child:not(:last-child) {
    margin-bottom: 70px;
  }
}
.tabcontents .block__grand:not(:last-child) {
  margin-bottom: 65px;
}
.notes_list {
  font-size: 1.2rem;
  line-height: 1.5;
  text-indent: -1em;
  padding-left: 1em;
}
.notes_list:not(:first-child) {
  margin-top: 15px;
}
.notes_list:not(:last-child) {
  margin-bottom: 20px;
}
.notes_list li:not(:last-child) {
  margin-bottom: 4px;
}

.notes_text:not(:first-child) {
  margin-top: 15px;
}
.notes_text:not(:last-child) {
  margin-bottom: 20px;
}
.notes_text p {
  font-size: 1.2rem;
  line-height: 1.5;
  text-indent: -1em;
  padding-left: 1em;
}
.notes_text p:not(:last-child) {
  margin-bottom: 4px;
}

.notes {
  font-size: 1.4rem;
  text-indent: -1em;
  display: block;
  padding-left: 1em;
  margin-top: 3px;
}

.indent_text {
  text-indent: -1em;
  padding-left: 1em;
}

.dots_list li {
  font-size: 1.5rem;
  padding-left: 20px;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .dots_list li {
    font-size: 1.6rem;
  }
}
.dots_list li:not(:last-child) {
  margin-bottom: 15px;
}
.dots_list li::before {
  content: "・";
  font-size: 1.5rem;
  text-align: center;
  width: 20px;
  top: 0;
  left: 0;
}
@media print, screen and (min-width: 768px) {
  .dots_list li::before {
    font-size: 1.6rem;
  }
}

.disc_list li {
  padding-left: 18px;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .disc_list li {
    padding-left: 20px;
  }
}
@media print, screen and (min-width: 1280px) {
  .disc_list li {
    padding-left: 22px;
  }
}
.disc_list li::before {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #222;
  top: 7px;
  left: 0;
}
@media print, screen and (min-width: 768px) {
  .disc_list li::before {
    width: 13px;
    height: 13px;
  }
}
@media print, screen and (min-width: 1280px) {
  .disc_list li::before {
    width: 14px;
    height: 14px;
    top: 8px;
  }
}
.disc_list .link__list li {
  padding-left: 0;
}
.disc_list .link__list li::before {
  content: none;
}

.link__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 30px;
}
@media print, screen and (min-width: 768px) {
  .link__list {
    gap: 5px 30px;
  }
}
@media print, screen and (min-width: 920px) {
  .link__list {
    gap: 5px 40px;
  }
}
@media print, screen and (min-width: 1280px) {
  .link__list {
    gap: 5px 50px;
  }
}
.link__list:not(:first-child) {
  margin-top: 20px;
}
@media print, screen and (min-width: 768px) {
  .link__list:not(:first-child) {
    margin-top: 25px;
  }
}
.link__list:not(:last-child) {
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .link__list.end {
    justify-content: end;
  }
}
.link__list.start {
  justify-content: start;
}
@media print, screen and (min-width: 768px) {
  .link__list.center {
    justify-content: center;
  }
}
.link__list a {
  color: #E7404E;
  text-decoration: underline;
  display: inline-block;
  padding-right: 23px;
  position: relative;
  transition: opacity 0.3s;
}
.link__list a[target=_blank]::after, .link__list a[href$=".pdf"]::after {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #E7404E;
  letter-spacing: 0;
  display: block;
  position: absolute;
  top: 7px;
  right: 0;
}
.link__list a[target=_blank]::after {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e901";
  font-size: 1.3rem;
}
.link__list a[href$=".pdf"]::after {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e902";
  font-size: 1.6rem;
}
@media (hover: hover) {
  .link__list a:where(:any-link, :enabled, summary, span, dt, div):hover {
    opacity: 0.7;
  }
}
.link__list a span {
  font-size: 1.4rem;
  letter-spacing: 0;
}

.tb_wrap {
  width: 100%;
  padding-bottom: 12px;
  overflow: auto;
}
@media print, screen and (min-width: 768px) {
  .tb_wrap {
    padding-bottom: 0;
    overflow: hidden;
  }
}
.tb_wrap::-webkit-scrollbar {
  height: 5px;
}
.tb_wrap::-webkit-scrollbar-thumb {
  background-color: #E7404E;
}
.tb_wrap::-webkit-scrollbar-track {
  background-color: #FFF;
}

.cmn_table {
  width: 100%;
}
.cmn_table th {
  font-size: 1.6rem;
  background-color: #FCF7EE;
}
@media print, screen and (min-width: 768px) {
  .cmn_table th {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .cmn_table th {
    font-size: 1.8rem;
  }
}
.cmn_table td {
  font-size: 1.4rem;
}
@media print, screen and (min-width: 768px) {
  .cmn_table td {
    font-size: 1.4rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .cmn_table td {
    font-size: 1.6rem;
  }
}
.cmn_table .tb_notes_text {
  font-size: 1.2rem;
  line-height: 1.5;
  text-indent: -1em;
  display: block;
  padding-left: 1em;
  margin-top: 5px;
  margin-bottom: 4px;
}
.cmn_table .ta_left {
  text-align: left;
}
.cmn_table .ta_center {
  text-align: center;
}
.cmn_table .ta_right {
  text-align: right;
}

.normal_table th,
.normal_table td {
  text-align: center;
  line-height: 1.5;
  vertical-align: middle;
}
@media print, screen and (min-width: 768px) {
  .normal_table th,
  .normal_table td {
    height: 74px;
  }
}
@media print, screen and (min-width: 920px) {
  .normal_table th,
  .normal_table td {
    height: 78px;
  }
}
@media print, screen and (min-width: 1280px) {
  .normal_table th,
  .normal_table td {
    height: 82px;
  }
}
.normal_table th {
  font-size: 1.5rem;
  font-weight: 500;
  padding: 13px 15px;
}
@media print, screen and (min-width: 768px) {
  .normal_table th {
    font-size: 1.6rem;
    padding: 12px;
  }
}
@media print, screen and (min-width: 920px) {
  .normal_table th {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .normal_table th {
    font-size: 1.8rem;
  }
}
.normal_table td {
  font-size: 1.4rem;
  padding: 15px 15px;
}
@media print, screen and (min-width: 768px) {
  .normal_table td {
    font-size: 1.5rem;
    padding: 12px 15px;
  }
}
@media print, screen and (min-width: 920px) {
  .normal_table td {
    padding: 12px 17px;
  }
}
@media print, screen and (min-width: 1280px) {
  .normal_table td {
    font-size: 1.6rem;
    padding: 12px 20px;
  }
}
.normal_table thead th {
  background-color: #FCF7EE;
}
.normal_table thead th:not(:last-child) {
  border-right: 1px solid #222;
}
.normal_table tbody th {
  background-color: #F2F2F2;
}
.normal_table tbody tr:not(:first-child) th,
.normal_table tbody tr:not(:first-child) td {
  border-top: 1px solid #222;
}
.normal_table tbody th:not(:last-child),
.normal_table tbody td:not(:last-child) {
  border-right: 1px solid #222;
}
.normal_table.padding_s td,
.normal_table.padding_s th {
  padding: 13px 15px;
}
@media print, screen and (min-width: 768px) {
  .normal_table.padding_s td,
  .normal_table.padding_s th {
    height: 60px;
    padding: 10px 15px;
  }
}
.normal_table.sp_clm1 tr:not(:last-child) td {
  margin-bottom: 15px;
}
@media print, screen and (min-width: 768px) {
  .normal_table.sp_clm1 tr:not(:last-child) td {
    margin-bottom: 0;
  }
}
.normal_table.sp_clm1 th,
.normal_table.sp_clm1 td {
  display: block;
}
@media print, screen and (min-width: 768px) {
  .normal_table.sp_clm1 th,
  .normal_table.sp_clm1 td {
    display: table-cell;
  }
}
.normal_table.sp_clm1 th {
  border-bottom: 1px solid #222;
}
@media print, screen and (min-width: 768px) {
  .normal_table.sp_clm1 th {
    border-bottom: 0px;
  }
}

.line_table {
  border-collapse: separate;
}
@media print, screen and (min-width: 768px) {
  .line_table {
    margin: -15px 0;
    border-spacing: 0 15px;
  }
}
.line_table tr:not(:last-child) td {
  margin-bottom: 15px;
}
@media print, screen and (min-width: 768px) {
  .line_table tr:not(:last-child) td {
    margin-bottom: 0;
  }
}
.line_table th,
.line_table td {
  display: block;
}
@media print, screen and (min-width: 768px) {
  .line_table th,
  .line_table td {
    height: 82px;
    display: table-cell;
    vertical-align: middle;
  }
}
@media print, screen and (min-width: 920px) {
  .line_table th,
  .line_table td {
    height: 82px;
  }
}
@media print, screen and (min-width: 1280px) {
  .line_table th,
  .line_table td {
    height: 82px;
  }
}
.line_table th {
  font-weight: 500;
  text-align: center;
  line-height: 1.55;
  padding: 13px 15px;
  border-bottom: 1px solid #222;
}
@media print, screen and (min-width: 768px) {
  .line_table th {
    width: 200px;
    padding: 12px;
    border-bottom: 0px;
  }
}
@media print, screen and (min-width: 920px) {
  .line_table th {
    width: 240px;
  }
}
@media print, screen and (min-width: 1280px) {
  .line_table th {
    width: 280px;
  }
}
.line_table td {
  padding: 15px 20px;
  background-color: #F2F2F2;
}
@media print, screen and (min-width: 768px) {
  .line_table td {
    padding: 12px 24px;
  }
}
@media print, screen and (min-width: 920px) {
  .line_table td {
    padding: 12px 27px;
  }
}
@media print, screen and (min-width: 1280px) {
  .line_table td {
    padding: 12px 30px;
  }
}

.border_table .blankcell {
  background-color: transparent;
}
.border_table th,
.border_table td {
  text-align: center;
  height: 50px;
  vertical-align: middle;
  padding: 10px;
  border: 2px solid #FFF;
}
@media print, screen and (min-width: 768px) {
  .border_table th,
  .border_table td {
    height: 53px;
  }
}
@media print, screen and (min-width: 920px) {
  .border_table th,
  .border_table td {
    height: 55px;
  }
}
@media print, screen and (min-width: 1280px) {
  .border_table th,
  .border_table td {
    height: 57px;
  }
}
.border_table th {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.55;
}
@media print, screen and (min-width: 768px) {
  .border_table th {
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 920px) {
  .border_table th {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .border_table th {
    font-size: 1.8rem;
  }
}
.border_table td {
  font-size: 1.4rem;
  line-height: 1.25;
}
@media print, screen and (min-width: 768px) {
  .border_table td {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .border_table td {
    font-size: 1.6rem;
  }
}
.border_table thead tr:first-child th {
  border-top: none;
}
.border_table thead tr:first-child th:first-child {
  border-left: none;
}
.border_table thead tr:first-child th:last-child {
  border-right: none;
}
.border_table tbody td {
  background-color: #F2F2F2;
}
.border_table tbody td:last-child {
  border-right: 0;
}
.border_table tbody tr:last-child th {
  border-left: none;
}
.border_table tbody tr:last-child td {
  border-bottom: none;
}

.cmn_lower_banner {
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .cmn_lower_banner {
    margin-bottom: 35px;
  }
}
@media print, screen and (min-width: 920px) {
  .cmn_lower_banner {
    margin-bottom: 45px;
  }
}
@media print, screen and (min-width: 1280px) {
  .cmn_lower_banner {
    margin-bottom: 55px;
  }
}
.cmn_lower_banner .bnr_grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 15px;
}
@media print, screen and (min-width: 768px) {
  .cmn_lower_banner .bnr_grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}
@media print, screen and (min-width: 920px) {
  .cmn_lower_banner .bnr_grid {
    gap: 32px;
  }
}
@media print, screen and (min-width: 1280px) {
  .cmn_lower_banner .bnr_grid {
    gap: 40px;
  }
}
.cmn_lower_banner a {
  position: relative;
  transition: opacity 0.3s;
}
.cmn_lower_banner a::before, .cmn_lower_banner a::after {
  width: 26px;
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  bottom: 5px;
  right: 5px;
  transition: transform 0.3s;
}
@media print, screen and (min-width: 768px) {
  .cmn_lower_banner a::before, .cmn_lower_banner a::after {
    width: 30px;
    height: 30px;
    bottom: 10px;
    right: 10px;
  }
}
@media print, screen and (min-width: 920px) {
  .cmn_lower_banner a::before, .cmn_lower_banner a::after {
    width: 35px;
    height: 35px;
    bottom: 20px;
    right: 20px;
  }
}
@media print, screen and (min-width: 1280px) {
  .cmn_lower_banner a::before, .cmn_lower_banner a::after {
    width: 40px;
    height: 40px;
    bottom: 30px;
    right: 30px;
  }
}
.cmn_lower_banner a::before {
  content: "";
  border: 1px solid #FFF;
  border-radius: 50%;
  background-color: #E7404E;
  z-index: 1;
}
.cmn_lower_banner a::after {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e900";
  font-size: 1.1rem;
  color: #FFF;
  z-index: 2;
}
@media print, screen and (min-width: 920px) {
  .cmn_lower_banner a::after {
    font-size: 1.2rem;
  }
}
.cmn_lower_banner picture {
  overflow: hidden;
}
.cmn_lower_banner img {
  width: 100%;
  transition: transform 0.3s;
}
@media (hover: hover) {
  .cmn_lower_banner a:where(:any-link, :enabled, summary, span, dt, div):hover {
    opacity: 0.8;
  }
  .cmn_lower_banner a:where(:any-link, :enabled, summary, span, dt, div):hover::before, .cmn_lower_banner a:where(:any-link, :enabled, summary, span, dt, div):hover::after {
    transform: translateX(3px);
  }
  .cmn_lower_banner a:where(:any-link, :enabled, summary, span, dt, div):hover img {
    transform: scale(1.05);
  }
}

.about.about__greeting .underlayer__wrap .page_inner_l {
  padding-inline: 0;
}
.about.about__greeting .heading__red {
  font-size: 2.6rem;
  font-weight: 500;
  margin-bottom: 12px;
}
@media print, screen and (min-width: 768px) {
  .about.about__greeting .heading__red {
    margin-bottom: 18px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__greeting .heading__red {
    margin-bottom: 23px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__greeting .heading__red {
    margin-bottom: 28px;
  }
}
.about.about__greeting .greeting {
  margin-bottom: 35px;
}
@media print, screen and (min-width: 768px) {
  .about.about__greeting .greeting {
    margin-bottom: 50px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__greeting .greeting {
    margin-bottom: 65px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__greeting .greeting {
    margin-bottom: 80px;
  }
}
.about.about__greeting .greeting__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 38px;
}
@media print, screen and (min-width: 768px) {
  .about.about__greeting .greeting__grid {
    grid-template-columns: 1fr 34.09%;
    gap: 5.9%;
  }
}
.about.about__greeting .greetng__text {
  order: 1;
}
@media print, screen and (min-width: 768px) {
  .about.about__greeting .greetng__text {
    order: initial;
  }
}
.about.about__greeting .greetng__text h3 {
  margin-bottom: 27px;
}
.about.about__greeting .greetng__text h3 img {
  width: 100%;
  max-width: 634px;
}
.about.about__greeting .greetng__text p {
  font-size: 1.6rem;
  line-height: 2.05;
  margin-bottom: 30px;
}
@media print, screen and (min-width: 768px) {
  .about.about__greeting .greetng__text p {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__greeting .greetng__text p {
    font-size: 1.8rem;
  }
}
.about.about__greeting .greetng__text dl {
  text-align: right;
}
.about.about__greeting .greetng__text dl dt,
.about.about__greeting .greetng__text dl dd {
  font-size: 1.6rem;
  line-height: 1.61;
}
@media print, screen and (min-width: 768px) {
  .about.about__greeting .greetng__text dl dt,
  .about.about__greeting .greetng__text dl dd {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__greeting .greetng__text dl dt,
  .about.about__greeting .greetng__text dl dd {
    font-size: 1.8rem;
  }
}
.about.about__greeting .greetng__text dl dt {
  margin-bottom: 15px;
}
.about.about__greeting .greetng__img img {
  width: 100%;
}
.about.about__greeting .history_list li {
  display: grid;
  grid-template-columns: 75px 1fr;
  padding-block: 15px;
  overflow: hidden;
}
@media print, screen and (min-width: 321px) {
  .about.about__greeting .history_list li {
    grid-template-columns: 92px 1fr;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__greeting .history_list li {
    grid-template-columns: 115px 1fr;
    padding-block: 19px;
  }
}
.about.about__greeting .history_list li:not(:last-child) {
  border-bottom: 1px dotted #251E1C;
}
.about.about__greeting .history_list p {
  line-height: 1.56;
}
.about.about__greeting .history_list .year {
  font-size: 2.1rem;
  color: #E7404E;
  line-height: 1;
  padding-left: 10px;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .about.about__greeting .history_list .year {
    font-size: 2.2rem;
    padding-left: 15px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__greeting .history_list .year {
    font-size: 2.3rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__greeting .history_list .year {
    font-size: 2.4rem;
  }
}
.about.about__greeting .history_list .year::before {
  width: 3px;
  height: calc(100% + 38px);
  background-color: #E7404E;
  top: -15px;
  right: 5px;
}
@media print, screen and (min-width: 321px) {
  .about.about__greeting .history_list .year::before {
    top: -15px;
    right: 15px;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__greeting .history_list .year::before {
    top: -19px;
    right: 28px;
  }
}
.about.about__greeting .history_list .year::after {
  width: 12px;
  height: 12px;
  border: 1px solid #E7404E;
  border-radius: 50%;
  background-color: #FFF;
  top: 5px;
  right: 0;
  z-index: 1;
}
@media print, screen and (min-width: 321px) {
  .about.about__greeting .history_list .year::after {
    width: 12px;
    height: 12px;
    top: 5px;
    right: 10px;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__greeting .history_list .year::after {
    width: 15px;
    height: 15px;
    top: 6px;
    right: 22px;
  }
}
.about.about__greeting .history_list .text__line {
  display: grid;
  grid-template-columns: 32px 1fr;
  gap: 12px;
}
.about.about__greeting .history_list .month {
  font-size: 1.4rem;
  text-align: right;
}
@media print, screen and (min-width: 768px) {
  .about.about__greeting .history_list .month {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__greeting .history_list .month {
    font-size: 1.6rem;
  }
}
.about.about__greeting .history_list .text {
  font-size: 1.4rem;
}
@media print, screen and (min-width: 768px) {
  .about.about__greeting .history_list .text {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__greeting .history_list .text {
    font-size: 1.6rem;
  }
}
.about.about__greeting .history_list li:first-child .year::before {
  top: 8px;
}
.about.about__greeting .history_list li:last-child {
  padding-bottom: 5px;
}
.about.about__room .facility h2 {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4;
  margin-bottom: 7px;
}
@media print, screen and (min-width: 768px) {
  .about.about__room .facility h2 {
    font-size: 2.4rem;
    font-weight: normal;
    margin-bottom: 25px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__room .facility h2 {
    font-size: 2.8rem;
    margin-bottom: 30px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__room .facility h2 {
    font-size: 3.2rem;
    margin-bottom: 35px;
  }
}
.about.about__room .facility img {
  width: 100%;
  display: block;
  border-radius: 4px;
}
@media print, screen and (min-width: 768px) {
  .about.about__room .facility img {
    border-radius: 6px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__room .facility img {
    border-radius: 8px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__room .facility img {
    border-radius: 10px;
  }
}
.about.about__room .facility__mainimg {
  margin-bottom: 55px;
}
@media print, screen and (min-width: 768px) {
  .about.about__room .facility__mainimg {
    margin-bottom: 50px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__room .facility__mainimg {
    margin-bottom: 55px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__room .facility__mainimg {
    margin-bottom: 60px;
  }
}
.about.about__room .facility__block {
  display: grid;
  grid-template-columns: 1fr;
  gap: 15px;
}
@media print, screen and (min-width: 768px) {
  .about.about__room .facility__block {
    grid-template-columns: 1fr 58.26%;
    gap: 30px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__room .facility__block {
    gap: 40px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__room .facility__block {
    gap: 50px;
  }
}
.about.about__room .facility__block:not(:last-child) {
  margin-bottom: 38px;
}
@media print, screen and (min-width: 768px) {
  .about.about__room .facility__block:not(:last-child) {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__room .facility__block:not(:last-child) {
    margin-bottom: 80px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__room .facility__block:not(:last-child) {
    margin-bottom: 100px;
  }
}
.about.about__room .facility__block.reverse {
  grid-template-columns: 1fr;
}
@media print, screen and (min-width: 768px) {
  .about.about__room .facility__block.reverse {
    grid-template-columns: 58.26% 1fr;
  }
}
.about.about__room .facility__block.reverse .facility__text {
  order: 1;
}
.about.about__room .facility__block .facility__text {
  order: 1;
}
@media print, screen and (min-width: 768px) {
  .about.about__room .facility__block .facility__text {
    order: 0;
  }
}
.about.about__room .facility__block .facility__text h3 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 13px;
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .about.about__room .facility__block .facility__text h3 {
    gap: 8px 15px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__room .facility__block .facility__text h3 {
    gap: 8px 18px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__room .facility__block .facility__text h3 {
    gap: 8px 20px;
  }
}
.about.about__room .facility__block .facility__text h3 .floor_name {
  font-size: 2rem;
  line-height: 1.56;
  letter-spacing: 0.15em;
}
@media print, screen and (min-width: 321px) {
  .about.about__room .facility__block .facility__text h3 .floor_name {
    font-size: 2.2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__room .facility__block .facility__text h3 .floor_name {
    font-size: 2.5rem;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__room .facility__block .facility__text h3 .floor_name {
    font-size: 2.8rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__room .facility__block .facility__text h3 .floor_name {
    font-size: 3rem;
  }
}
.about.about__room .facility__block .facility__text h3 .floor {
  font-size: 1.4rem;
  color: #E7404E;
  line-height: 1;
  letter-spacing: 0.1em;
  padding: 4px 4px 4px 7px;
  border: 1px solid #E7404E;
  border-radius: 4px;
  transform: translateY(2px);
}
@media print, screen and (min-width: 321px) {
  .about.about__room .facility__block .facility__text h3 .floor {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__room .facility__block .facility__text h3 .floor {
    font-size: 1.7rem;
    padding: 5px 6px 5px 9px;
    border-radius: 6px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__room .facility__block .facility__text h3 .floor {
    font-size: 1.9rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__room .facility__block .facility__text h3 .floor {
    font-size: 2.1rem;
    border-radius: 8px;
  }
}
.about.about__room .facility__block .facility__text h3.sp_clm1 .floor_name {
  width: 100%;
}
.about.about__room .facility__block .facility__text p {
  letter-spacing: 0;
}
.about.about__room .splide__pagination {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: end;
  gap: 18px;
  padding: 0 25px 0 0;
  position: absolute;
  bottom: 18px;
  right: 0;
}
.about.about__room .splide__pagination li {
  padding: 0;
  margin: 0;
}
.about.about__room .splide__pagination li button {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #FFF;
  transition: background-color 0.3s;
}
.about.about__room .splide__pagination li button.is-active {
  background-color: #E7404E;
}
.about.about__campuslife .tab01__item .bg_lattice {
  padding: 30px 15px 0 15px;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .tab01__item .bg_lattice {
    padding: 40px 20px 10px 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .tab01__item .bg_lattice {
    padding: 50px 30px 10px 30px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .tab01__item .bg_lattice {
    padding: 60px 40px 10px 40px;
  }
}
.about.about__campuslife .tab02__item .bg_lattice {
  padding: 30px 15px 30px 15px;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .tab02__item .bg_lattice {
    padding: 40px 20px 45px 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .tab02__item .bg_lattice {
    padding: 50px 40px 60px 40px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .tab02__item .bg_lattice {
    padding: 60px 55px 70px 55px;
  }
}
.about.about__campuslife .schedule__head {
  margin-bottom: 20px;
  position: relative;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__head {
    padding-inline: 15%;
    margin-bottom: 40px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__head {
    margin-bottom: 50px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__head {
    margin-bottom: 60px;
  }
}
.about.about__campuslife .schedule__head h2 {
  max-width: 665px;
  padding-inline: 15.14%;
  margin: 0 auto 25px auto;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__head h2 {
    padding-inline: 0;
    margin: 0 auto 20px auto;
  }
}
.about.about__campuslife .schedule__head h2 img {
  width: 100%;
}
.about.about__campuslife .schedule__head p {
  font-size: 1.4rem;
  line-height: 1.75;
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .schedule__head p {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__head p {
    font-size: 1.6rem;
    line-height: 1.66;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__head p {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__head p {
    font-size: 1.8rem;
  }
}
.about.about__campuslife .schedule__head .person {
  position: absolute;
  transform: translateY(-50%);
}
.about.about__campuslife .schedule__head .person1 {
  width: 13.41%;
  top: 15%;
  left: 0%;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__head .person1 {
    width: 14.41%;
    top: 41%;
  }
}
.about.about__campuslife .schedule__head .person2 {
  width: 16.58%;
  top: 14%;
  right: -2%;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__head .person2 {
    width: 15.58%;
    top: 32%;
  }
}
.about.about__campuslife .schedule__list li {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: 0;
  padding-block: 30px;
  position: relative;
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .schedule__list li {
    grid-template-columns: 74px 1fr;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list li {
    grid-template-columns: 109px 1fr;
    padding-block: 40px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__list li {
    grid-template-columns: 119px 1fr;
    padding-block: 50px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__list li {
    grid-template-columns: 132px 1fr;
    padding-block: 55px;
  }
}
.about.about__campuslife .schedule__list li::before, .about.about__campuslife .schedule__list li::after {
  background-color: #21110D;
}
.about.about__campuslife .schedule__list li::before {
  width: 1px;
  height: 100%;
  top: 0;
  left: 25px;
  z-index: 0;
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .schedule__list li::before {
    left: 30px;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list li::before {
    left: 40px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__list li::before {
    left: 46px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__list li::before {
    left: 54px;
  }
}
.about.about__campuslife .schedule__list li::after {
  width: calc(100% - 64px);
  height: 1px;
  bottom: 0;
  right: 0;
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .schedule__list li::after {
    width: calc(100% - 74px);
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list li::after {
    width: calc(100% - 109px);
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__list li::after {
    width: calc(100% - 119px);
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__list li::after {
    width: calc(100% - 132px);
  }
}
.about.about__campuslife .schedule__list li:first-child::before {
  top: 30px;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list li:first-child::before {
    top: 40px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__list li:first-child::before {
    top: 50px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__list li:first-child::before {
    top: 55px;
  }
}
.about.about__campuslife .schedule__list li:last-child::before {
  height: 30px;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list li:last-child::before {
    height: 40px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__list li:last-child::before {
    height: 50px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__list li:last-child::before {
    height: 55px;
  }
}
.about.about__campuslife .schedule__list li:last-child::after {
  content: none;
}
.about.about__campuslife .schedule__list .schedule__month {
  position: relative;
  z-index: 1;
}
.about.about__campuslife .schedule__list .schedule__month p {
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #21110D;
  border-radius: 50%;
  background-color: #FFF;
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .schedule__list .schedule__month p {
    width: 60px;
    height: 60px;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list .schedule__month p {
    width: 80px;
    height: 80px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__list .schedule__month p {
    width: 95px;
    height: 95px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__list .schedule__month p {
    width: 108px;
    height: 108px;
  }
}
.about.about__campuslife .schedule__list .schedule__month span {
  color: #E7404E;
  line-height: 1;
  letter-spacing: 0;
}
.about.about__campuslife .schedule__list .schedule__month .month__num {
  font-size: 2.9rem;
  font-weight: normal;
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .schedule__list .schedule__month .month__num {
    font-size: 3.1rem;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list .schedule__month .month__num {
    font-size: 4rem;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__list .schedule__month .month__num {
    font-size: 4.8rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__list .schedule__month .month__num {
    font-size: 5.6rem;
  }
}
.about.about__campuslife .schedule__list .schedule__month .month__text {
  font-size: 1.4rem;
  font-weight: 500;
  transform: translateY(2px);
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .schedule__list .schedule__month .month__text {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list .schedule__month .month__text {
    font-size: 1.9rem;
    transform: translateY(4px);
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__list .schedule__month .month__text {
    font-size: 2.3rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__list .schedule__month .month__text {
    font-size: 2.7rem;
  }
}
.about.about__campuslife .schedule__list .schedule__event_img {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list .schedule__event_img {
    grid-template-columns: 255px 1fr;
    gap: 0;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__list .schedule__event_img {
    grid-template-columns: 260px 1fr;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__list .schedule__event_img {
    grid-template-columns: 275px 1fr;
  }
}
.about.about__campuslife .schedule__list .schedule__event dl {
  display: grid;
  grid-template-columns: 1fr;
  align-items: start;
  gap: 8px;
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .schedule__list .schedule__event dl {
    grid-template-columns: 60px 1fr;
    gap: 10px;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list .schedule__event dl {
    grid-template-columns: 70px 1fr;
    gap: 12px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__list .schedule__event dl {
    grid-template-columns: 75px 1fr;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__list .schedule__event dl {
    grid-template-columns: 80px 1fr;
  }
}
.about.about__campuslife .schedule__list .schedule__event dl:not(:last-child) {
  margin-bottom: 12px;
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .schedule__list .schedule__event dl:not(:last-child) {
    margin-bottom: 8px;
  }
}
.about.about__campuslife .schedule__list .schedule__event dt {
  font-size: 1.4rem;
  font-weight: 500;
  text-align: center;
  line-height: 1;
  letter-spacing: 0.05em;
  padding: 4px 3px 5px 5px;
  border: 1px solid #1C1C1C;
  border-radius: 50px;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list .schedule__event dt {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__list .schedule__event dt {
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__list .schedule__event dt {
    font-size: 1.7rem;
  }
}
.about.about__campuslife .schedule__list .schedule__event dd {
  padding-top: 3px;
  padding-right: 10px;
}
.about.about__campuslife .schedule__list .schedule__event dd p {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.23;
  padding-left: 15px;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list .schedule__event dd p {
    font-size: 1.5rem;
    padding-left: 16px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__list .schedule__event dd p {
    font-size: 1.6rem;
    padding-left: 17px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__list .schedule__event dd p {
    font-size: 1.7rem;
    padding-left: 18px;
  }
}
.about.about__campuslife .schedule__list .schedule__event dd p::after {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  top: 3px;
  left: 0;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list .schedule__event dd p::after {
    width: 13px;
    height: 13px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__list .schedule__event dd p::after {
    width: 14px;
    height: 14px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__list .schedule__event dd p::after {
    width: 15px;
    height: 15px;
  }
}
.about.about__campuslife .schedule__list .schedule__event dd p:not(:last-child) {
  margin-bottom: 7px;
}
.about.about__campuslife .schedule__list .schedule__event dd span {
  font-size: 1.2rem;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list .schedule__event dd span {
    font-size: 1.3rem;
  }
}
.about.about__campuslife .schedule__list .schedule__event dd br {
  display: none;
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .schedule__list .schedule__event dd br {
    display: block;
  }
}
.about.about__campuslife .schedule__list .schedule__event .grade1 dt {
  color: #FF0082;
}
.about.about__campuslife .schedule__list .schedule__event .grade1 dd p::after {
  background-color: #FF0082;
}
.about.about__campuslife .schedule__list .schedule__event .grade2 dt {
  color: #009FEA;
}
.about.about__campuslife .schedule__list .schedule__event .grade2 dd p::after {
  background-color: #009FEA;
}
.about.about__campuslife .schedule__list .schedule__img {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__list .schedule__img {
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
  }
}
.about.about__campuslife .schedule__list .schedule__img img {
  width: 100%;
}
.about.about__campuslife .schedule__pickup {
  padding-block: 40px;
  margin-top: 40px;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__pickup {
    padding-block: 47px;
    margin-top: 70px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__pickup {
    padding-block: 54px;
    margin-top: 90px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__pickup {
    padding-block: 60px;
    margin-top: 110px;
  }
}
.about.about__campuslife .schedule__pickup .pickup__title {
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__pickup .pickup__title {
    margin-bottom: 25px;
  }
}
.about.about__campuslife .schedule__pickup .pickup__title p {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-bottom: 12px;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__pickup .pickup__title p {
    margin-bottom: 10px;
  }
}
.about.about__campuslife .schedule__pickup .pickup__title p span {
  font-size: 1.5rem;
  color: #000;
  line-height: 1;
  letter-spacing: 0.32em;
  padding-left: 6px;
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__pickup .pickup__title p span {
    font-size: 1.6rem;
  }
}
.about.about__campuslife .schedule__pickup .pickup__title p::before, .about.about__campuslife .schedule__pickup .pickup__title p::after {
  content: "";
  width: 1px;
  height: 14px;
  background-color: #000;
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__pickup .pickup__title p::before, .about.about__campuslife .schedule__pickup .pickup__title p::after {
    height: 15px;
  }
}
.about.about__campuslife .schedule__pickup .pickup__title p::before {
  transform: rotate(-30deg);
}
.about.about__campuslife .schedule__pickup .pickup__title p::after {
  transform: rotate(30deg);
}
.about.about__campuslife .schedule__pickup .pickup__title h3 {
  font-size: 2.6rem;
  font-weight: bold;
  color: #E7404E;
  line-height: 1.2;
  letter-spacing: -0.05em;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__pickup .pickup__title h3 {
    font-size: 3.1rem;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__pickup .pickup__title h3 {
    font-size: 3.6rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__pickup .pickup__title h3 {
    font-size: 4rem;
  }
}
.about.about__campuslife .schedule__pickup .pickup__title h3 span {
  display: inline-block;
  background: linear-gradient(transparent 75%, #FFFF00 25%);
}
.about.about__campuslife .schedule__pickup .pickup__lead_bold {
  font-size: 1.7rem;
  font-weight: bold;
  text-align: center;
  color: #000;
  line-height: 1.55;
  margin-bottom: 13px;
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .schedule__pickup .pickup__lead_bold {
    font-size: 1.8rem;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__pickup .pickup__lead_bold {
    font-size: 1.9rem;
    line-height: 1.75;
    margin-bottom: 8px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__pickup .pickup__lead_bold {
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__pickup .pickup__lead_bold {
    font-size: 2.1rem;
  }
}
.about.about__campuslife .schedule__pickup .pickup__lead {
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.75;
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .schedule__pickup .pickup__lead {
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__pickup .pickup__lead {
    font-size: 1.7rem;
    line-height: 1.83;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__pickup .pickup__lead {
    font-size: 1.8rem;
  }
}
.about.about__campuslife .schedule__pickup .pickup__splide {
  margin-top: 25px;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .schedule__pickup .pickup__splide {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .schedule__pickup .pickup__splide {
    margin-top: 50px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .schedule__pickup .pickup__splide {
    margin-top: 60px;
  }
}
.about.about__campuslife .schedule__pickup .pickup__splide img {
  width: 100%;
}
.about.about__campuslife .life__head {
  margin-bottom: 30px;
  position: relative;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .life__head {
    padding-inline: 28%;
    margin-bottom: 37px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .life__head {
    margin-bottom: 42px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .life__head {
    margin-bottom: 47px;
  }
}
.about.about__campuslife .life__head h2 {
  max-width: 360px;
  padding-inline: 15.14%;
  margin: 0 auto 25px auto;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .life__head h2 {
    padding-inline: 0;
    margin: 0 auto 20px auto;
  }
}
.about.about__campuslife .life__head h2 img {
  width: 100%;
}
.about.about__campuslife .life__head p {
  font-size: 1.4rem;
  line-height: 1.75;
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .life__head p {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .life__head p {
    font-size: 1.6rem;
    line-height: 1.66;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .life__head p {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .life__head p {
    font-size: 1.8rem;
  }
}
.about.about__campuslife .life__head .person {
  position: absolute;
}
.about.about__campuslife .life__head .person1 {
  width: 17.14%;
  top: -3%;
  left: -4%;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .life__head .person1 {
    width: 24.14%;
    top: -25%;
    left: 1%;
  }
}
.about.about__campuslife .life__head .person2 {
  width: 28.29%;
  top: 10%;
  right: -14%;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .life__head .person2 {
    width: 39.29%;
    top: -5%;
    right: -12%;
  }
}
.about.about__campuslife .dayschedule__splide {
  margin-top: -1%;
  margin-bottom: 40px;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .dayschedule__splide {
    margin-bottom: 55px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .dayschedule__splide {
    margin-bottom: 65px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .dayschedule__splide {
    margin-bottom: 75px;
  }
}
.about.about__campuslife .dayschedule__splide .splide__slide img {
  width: 100%;
  max-width: initial;
}
.about.about__campuslife .dayschedule__splide .splide__pagination {
  display: flex;
  align-items: center;
  gap: 10px;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .dayschedule__splide .splide__pagination {
    margin-top: 25px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .dayschedule__splide .splide__pagination {
    margin-top: 35px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .dayschedule__splide .splide__pagination {
    margin-top: 45px;
  }
}
.about.about__campuslife .dayschedule__splide .splide__pagination li {
  flex: 1;
}
.about.about__campuslife .dayschedule__splide .splide__pagination button {
  width: 100%;
  display: block;
  background-color: #DCDCDC;
  transition: background-color 0.3s;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .dayschedule__splide .splide__pagination button {
    height: 4px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .dayschedule__splide .splide__pagination button {
    height: 5px;
  }
}
.about.about__campuslife .dayschedule__splide .splide__pagination button.is-active {
  background-color: #FF3E4D;
}
.about.about__campuslife .dayschedule__splide .splide__arrows {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 1;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .dayschedule__splide .splide__arrows {
    width: auto;
    gap: 30px;
    margin-top: 25px;
    position: static;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .dayschedule__splide .splide__arrows {
    gap: 40px;
    margin-top: 32px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .dayschedule__splide .splide__arrows {
    gap: 50px;
    margin-top: 37px;
  }
}
.about.about__campuslife .dayschedule__splide .splide__arrows button {
  width: 35px;
  height: 35px;
  display: block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 0;
  transform: translateY(-50%);
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .dayschedule__splide .splide__arrows button {
    width: 40px;
    height: 40px;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .dayschedule__splide .splide__arrows button {
    position: static;
    transform: translateY(0);
  }
}
.about.about__campuslife .dayschedule__splide .splide__arrows button.splide__arrow--prev {
  left: -25px;
  background-image: url(../img/common/splide_prev.svg);
}
.about.about__campuslife .dayschedule__splide .splide__arrows button.splide__arrow--next {
  right: -25px;
  background-image: url(../img/common/splide_next.svg);
}
.about.about__campuslife .dayschedule__splide .splide__arrows button svg {
  display: none;
}
.about.about__campuslife .questionnaire__block {
  border-radius: 16px;
}
.about.about__campuslife .questionnaire__block:not(:last-child) {
  margin-bottom: 15px;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .questionnaire__block:not(:last-child) {
    margin-bottom: 35px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .questionnaire__block:not(:last-child) {
    margin-bottom: 50px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .questionnaire__block:not(:last-child) {
    margin-bottom: 65px;
  }
}
.about.about__campuslife .questionnaire__block.green {
  background-color: #F6F9EC;
  border: 5px solid #D6E59C;
}
.about.about__campuslife .questionnaire__block.pink {
  background-color: #FDF7F9;
  border: 5px solid #F9DAE0;
}
.about.about__campuslife .questionnaire__block.yellow {
  background-color: #FDF9F2;
  border: 5px solid #FBE6BB;
}
.about.about__campuslife .questionnaire__block.perple {
  background-color: #F9F5F8;
  border: 5px solid #E6CCE1;
}
.about.about__campuslife .questionnaire__block .dashed_line {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  padding: 20px 20px 25px 20px;
  border: 2px dashed #222;
  border-radius: 14px;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .questionnaire__block .dashed_line {
    grid-template-columns: 38.65% 1fr;
    gap: 25px;
    padding: 30px;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .questionnaire__block .dashed_line {
    gap: 30px;
    padding: 40px;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .questionnaire__block .dashed_line {
    gap: 35px;
    padding: 50px;
  }
}
.about.about__campuslife .questionnaire__block .questionnair__textBox h3 {
  margin-bottom: 20px;
}
.about.about__campuslife .questionnaire__block .questionnair__textBox h3 img {
  width: 100%;
}
.about.about__campuslife .questionnaire__block .questionnair__textBox .questionnair__text {
  font-size: 1.4rem;
  color: #231815;
  line-height: 1.75;
  letter-spacing: 0;
}
@media print, screen and (min-width: 321px) {
  .about.about__campuslife .questionnaire__block .questionnair__textBox .questionnair__text {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .questionnaire__block .questionnair__textBox .questionnair__text {
    font-size: 1.6rem;
    line-height: 1.66;
  }
}
@media print, screen and (min-width: 920px) {
  .about.about__campuslife .questionnaire__block .questionnair__textBox .questionnair__text {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .about.about__campuslife .questionnaire__block .questionnair__textBox .questionnair__text {
    font-size: 1.8rem;
  }
}
.about.about__campuslife .questionnaire__block .questionnair__textBox .circle_graph {
  width: 74.92%;
  margin: 20px auto 0 auto;
}
.about.about__campuslife .questionnaire__block .questionnair__textBox .circle_graph img {
  width: 100%;
}
.about.about__campuslife .questionnaire__block .questionnair__results p:not(:last-child) {
  margin-bottom: 9%;
}
.about.about__campuslife .questionnaire__block .questionnair__results p img {
  width: 100%;
}
.about.about__campuslife .questionnaire__block .questionnair__results p .wide {
  width: 100%;
  max-width: initial;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .questionnaire__block .questionnair__results p .wide {
    width: 105%;
    margin-right: -5%;
  }
}
.about.about__campuslife .questionnaire__block .person {
  position: absolute;
  z-index: 1;
}
.about.about__campuslife .questionnaire__block .person1 {
  width: 18.91%;
  bottom: -5%;
  right: -2%;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .questionnaire__block .person1 {
    width: 10.91%;
    bottom: -15%;
    right: 1%;
  }
}
.about.about__campuslife .questionnaire__block .person2 {
  width: 23.16%;
  bottom: 0%;
  right: -5.7%;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .questionnaire__block .person2 {
    width: 13.16%;
    bottom: 0%;
    right: -1.7%;
  }
}
.about.about__campuslife .questionnaire__block .person3 {
  width: 23.16%;
  bottom: 0%;
  right: 4%;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .questionnaire__block .person3 {
    width: 23.16%;
    bottom: 0%;
    left: 13%;
    right: auto;
  }
}
.about.about__campuslife .questionnaire__block .person4 {
  width: 23.75%;
  bottom: 0%;
  right: 2%;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .questionnaire__block .person4 {
    width: 12.75%;
    bottom: 0%;
    right: 1.5%;
  }
}
.about.about__campuslife .questionnaire__block .person5 {
  width: 9.57%;
  bottom: -2.5%;
  right: -5%;
}
@media print, screen and (min-width: 768px) {
  .about.about__campuslife .questionnaire__block .person5 {
    width: 8.57%;
    bottom: -4.5%;
    right: -4.5%;
  }
}

.course.course__temp .underlayer__wrap {
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .course.course__temp .underlayer__wrap {
    margin-bottom: 50px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__temp .underlayer__wrap {
    margin-bottom: 75px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__temp .underlayer__wrap {
    margin-bottom: 100px;
  }
}
.course.course__temp .breadcrumb li a,
.course.course__temp .breadcrumb li span {
  color: #222;
}
.course.course__temp .breadcrumb li:not(:last-child)::after {
  border-right: 1px solid #222;
  border-bottom: 1px solid #222;
}
.course.course__temp .underlayer__title .title_ja,
.course.course__temp .underlayer__title .title_eng {
  color: #222;
}
.course.course__temp .pagehead_img {
  margin-bottom: 0;
}
.course .temp__coursehead {
  margin-bottom: 5px;
  position: relative;
  z-index: 1;
  top: -25px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__coursehead {
    margin-bottom: 35px;
    top: -15px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__coursehead {
    margin-bottom: 45px;
    top: -20px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__coursehead {
    margin-bottom: 55px;
    top: -25px;
  }
}
.course .temp__coursehead .coursehead__title {
  width: 100%;
  margin-bottom: 25px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__coursehead .coursehead__title {
    width: 51.54%;
    margin-bottom: 28px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__coursehead .coursehead__title {
    margin-bottom: 32px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__coursehead .coursehead__title {
    margin-left: -15px;
    margin-bottom: 35px;
  }
}
.course .temp__coursehead .coursehead__title img {
  width: 100%;
}
.course .temp__coursehead .coursehead__text {
  font-size: 1.5rem;
  line-height: 1.77;
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__coursehead .coursehead__text {
    font-size: 1.6rem;
    margin-bottom: 23px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__coursehead .coursehead__text {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__coursehead .coursehead__text {
    font-size: 1.8rem;
    margin-bottom: 25px;
  }
}
.course .temp__coursehead .coursehead__overview {
  display: flex;
}
.course .temp__coursehead .coursehead__overview span {
  font-size: 1.3rem;
  line-height: 1.35;
  flex: 1;
  padding-block: 7px;
  border-top: 1px solid #222;
  border-bottom: 1px solid #222;
}
@media print, screen and (min-width: 768px) {
  .course .temp__coursehead .coursehead__overview span {
    font-size: 1.4rem;
    flex: none;
  }
}
.course .temp__course_study {
  margin-bottom: 50px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_study {
    margin-bottom: 100px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_study {
    margin-bottom: 150px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_study {
    margin-bottom: 200px;
  }
}
.course .temp__course_study .study_list {
  display: flex;
  flex-wrap: wrap;
  align-items: start;
  padding-top: 60px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_study .study_list {
    padding-top: 64px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_study .study_list {
    padding-top: 67px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_study .study_list {
    padding-top: 70px;
  }
}
.course .temp__course_study .study_list li {
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_study .study_list li {
    width: 45.45%;
  }
}
.course .temp__course_study .study_list li:nth-child(even) {
  margin-left: auto;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_study .study_list li:nth-child(2) {
    margin-top: 9%;
  }
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_study .study_list li:nth-child(3) {
    margin-top: 9%;
  }
}
.course .temp__course_study .study_list li:not(:last-child) {
  margin-bottom: 25%;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_study .study_list li:not(:last-child) {
    margin-bottom: 0;
  }
}
.course .temp__course_study .study_list .study_list__img {
  margin-bottom: 15px;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_study .study_list .study_list__img {
    margin-bottom: 17px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_study .study_list .study_list__img {
    margin-bottom: 18px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_study .study_list .study_list__img {
    margin-bottom: 20px;
  }
}
.course .temp__course_study .study_list .study_list__img .study__img {
  width: 100%;
  border-radius: 6px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_study .study_list .study_list__img .study__img {
    border-radius: 8px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_study .study_list .study_list__img .study__img {
    border-radius: 10px;
  }
}
.course .temp__course_study .study_list .study_list__img .point {
  position: absolute;
  top: 0;
  left: -3px;
  z-index: 1;
  transform: translateY(-64%);
}
.course .temp__course_study .study_list .study_list__img .point01 {
  width: 17.8%;
}
.course .temp__course_study .study_list .study_list__img .point02 {
  width: 25.6%;
}
.course .temp__course_study .study_list .study_list__img .point03 {
  width: 21.6%;
}
.course .temp__course_study .study_list p {
  font-size: 1.5rem;
  line-height: 1.77;
  letter-spacing: 0;
}
@media print, screen and (min-width: 321px) {
  .course .temp__course_study .study_list p {
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_study .study_list p {
    font-size: 1.8rem;
    line-height: 1.72;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_study .study_list p {
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_study .study_list p {
    font-size: 2.2rem;
  }
}
.course .temp__course_curriculum {
  padding-block: 30px;
  margin-bottom: 0;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_curriculum {
    padding-block: 50px;
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_curriculum {
    padding-block: 70px;
    margin-bottom: 80px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_curriculum {
    padding-block: 90px;
    margin-bottom: 100px;
  }
}
.course .temp__course_curriculum .curriculum__block {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  padding: 20px;
  border-radius: 19px;
  background-color: #FFF;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_curriculum .curriculum__block {
    grid-template-columns: 1fr 41.98%;
    gap: 30px;
    padding: 30px 24px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_curriculum .curriculum__block {
    gap: 35px;
    padding: 40px 28px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_curriculum .curriculum__block {
    gap: 45px;
    padding: 45px 32px;
  }
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_curriculum .curriculum__contents {
    margin-top: -13px;
  }
}
.course .temp__course_curriculum .curriculum__contents dl:not(:last-child) {
  margin-bottom: 25px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_curriculum .curriculum__contents dl:not(:last-child) {
    margin-bottom: 27px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_curriculum .curriculum__contents dl:not(:last-child) {
    margin-bottom: 28px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_curriculum .curriculum__contents dl:not(:last-child) {
    margin-bottom: 30px;
  }
}
.course .temp__course_curriculum .curriculum__contents dt {
  font-size: 2rem;
  line-height: 1.4;
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 13px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_curriculum .curriculum__contents dt {
    font-size: 2.1rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_curriculum .curriculum__contents dt {
    font-size: 2.2rem;
  }
}
.course .temp__course_curriculum .curriculum__contents dt::after {
  content: "";
  width: 100%;
  height: 1px;
  flex: 1;
}
.course .temp__course_curriculum .curriculum__contents ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_curriculum .curriculum__contents ul {
    gap: 6px 8px;
  }
}
.course .temp__course_curriculum .curriculum__contents ul li {
  font-size: 1.5rem;
  line-height: 1.4;
  display: flex;
  align-items: center;
  gap: 2px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_curriculum .curriculum__contents ul li {
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_curriculum .curriculum__contents ul li {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_curriculum .curriculum__contents ul li {
    font-size: 1.8rem;
  }
}
.course .temp__course_curriculum .curriculum__contents ul li::before {
  content: "";
  width: 12px;
  height: 12px;
  border-radius: 50%;
  transform: translateY(1px);
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_curriculum .curriculum__contents ul li::before {
    width: 13px;
    height: 13px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_curriculum .curriculum__contents ul li::before {
    width: 14px;
    height: 14px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_curriculum .curriculum__contents ul li::before {
    width: 15px;
    height: 15px;
  }
}
.course .temp__course_curriculum .curriculum__img img {
  width: 100%;
}
.course .temp__course_cornerbg {
  width: 100%;
  padding: 30px 0 35px 0;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_cornerbg {
    width: calc(100% - 15px);
    padding: 50px 0 50px 0;
    margin-left: auto;
    border-top-left-radius: 16px;
    border-bottom-left-radius: 16px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_cornerbg {
    width: calc(100% - 20px);
    padding: 60px 0 70px 0;
    border-top-left-radius: 24px;
    border-bottom-left-radius: 24px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_cornerbg {
    width: calc(100% - 50px);
    padding: 70px 100px 90px 50px;
    border-top-left-radius: 32px;
    border-bottom-left-radius: 32px;
  }
}
.course .temp__course_class {
  margin-bottom: 40px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_class {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_class {
    margin-bottom: 75px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_class {
    margin-bottom: 90px;
  }
}
.course .temp__course_class .class_list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 45px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_class .class_list {
    grid-template-columns: repeat(2, 1fr);
    gap: 50px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_class .class_list {
    gap: 55px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_class .class_list {
    gap: 60px;
  }
}
.course .temp__course_class .class_list li {
  display: grid;
  grid-template-columns: 1fr;
  align-items: start;
  gap: 23px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_class .class_list li {
    grid-template-columns: 45.57% 1fr;
    gap: 26px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_class .class_list li {
    gap: 28px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_class .class_list li {
    gap: 30px;
  }
}
.course .temp__course_class .class_list .class__img {
  border-radius: 13px;
  overflow: hidden;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_class .class_list .class__img {
    border-radius: 10px;
  }
}
.course .temp__course_class .class_list .class__img img {
  width: 100%;
}
.course .temp__course_class .class_list .class__engname {
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0.32em;
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_class .class_list .class__engname {
    margin-bottom: 8px;
  }
}
.course .temp__course_class .class_list .class__name {
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.4;
  margin-bottom: 13px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_class .class_list .class__name {
    margin-bottom: 7px;
  }
}
.course .temp__course_class .class_list .class__text {
  color: #666;
  line-height: 1.5;
  letter-spacing: 0;
}
.course .temp__course_data {
  margin-bottom: 50px;
}
.course .temp__course_data p img {
  width: 100%;
}
.course .temp__course_qualidication {
  margin-bottom: 60px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_qualidication {
    margin-bottom: 130px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_qualidication {
    margin-bottom: 170px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_qualidication {
    margin-bottom: 210px;
  }
}
.course .temp__course_qualidication table {
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_qualidication tr:not(:last-child) th,
  .course .temp__course_qualidication tr:not(:last-child) td {
    border-bottom: 1px solid #222;
  }
}
.course .temp__course_qualidication tr:not(:last-child) td {
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_qualidication tr:not(:last-child) td {
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_qualidication tr:first-child th {
    border-top-left-radius: 14px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_qualidication tr:first-child th {
    border-top-left-radius: 17px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_qualidication tr:first-child th {
    border-top-left-radius: 20px;
  }
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_qualidication tr:last-child th {
    border-bottom-left-radius: 14px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_qualidication tr:last-child th {
    border-bottom-left-radius: 17px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_qualidication tr:last-child th {
    border-bottom-left-radius: 20px;
  }
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_qualidication tr:first-child td {
    border-top-right-radius: 14px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_qualidication tr:first-child td {
    border-top-right-radius: 17px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_qualidication tr:first-child td {
    border-top-right-radius: 20px;
  }
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_qualidication tr:last-child td {
    border-bottom-right-radius: 14px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_qualidication tr:last-child td {
    border-bottom-right-radius: 17px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_qualidication tr:last-child td {
    border-bottom-right-radius: 20px;
  }
}
.course .temp__course_qualidication th,
.course .temp__course_qualidication td {
  display: block;
  overflow: hidden;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_qualidication th,
  .course .temp__course_qualidication td {
    height: 80px;
    display: table-cell;
    vertical-align: middle;
    padding: 10px 15px;
  }
}
.course .temp__course_qualidication th {
  font-size: 2.2rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.4;
  white-space: nowrap;
  padding: 12px 10px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_qualidication th {
    padding: 10px 15px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }
}
.course .temp__course_qualidication td {
  line-height: 1.5;
  padding: 15px 10px;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  background-color: #FCF7EE;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_qualidication td {
    padding: 10px 15px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
}
.course .temp__course_voice {
  padding-bottom: 49%;
  margin-bottom: 0;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_voice {
    padding-bottom: 0;
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_voice {
    margin-bottom: 90px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_voice {
    margin-bottom: 120px;
  }
}
.course .temp__course_voice .heading_eng_ja {
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_voice .page_inner_l {
    position: relative;
  }
}
.course .temp__course_voice .voice__bglogo {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_voice .voice__bglogo {
    width: 56.18%;
    top: 0;
    bottom: auto;
    right: -13%;
    left: auto;
    transform: translateY(-50%);
  }
}
.course .temp__course_voice .voice_list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_voice .voice_list {
    grid-template-columns: repeat(2, 1fr);
    gap: 9.09%;
  }
}
.course .temp__course_voice .voice__img {
  margin-bottom: 12px;
  border-radius: 6px;
  overflow: hidden;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_voice .voice__img {
    margin-bottom: 30px;
    border-radius: 8px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_voice .voice__img {
    margin-bottom: 45px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_voice .voice__img {
    margin-bottom: 60px;
    border-radius: 10px;
  }
}
.course .temp__course_voice .voice__img img {
  width: 100%;
}
.course .temp__course_voice .voice__name {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_voice .voice__name {
    gap: 20px;
    margin-bottom: 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_voice .voice__name {
    margin-bottom: 24px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_voice .voice__name {
    margin-bottom: 28px;
  }
}
.course .temp__course_voice .voice__name h4 {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4;
}
.course .temp__course_voice .voice__name p {
  font-size: 1.2rem;
  line-height: 1.4;
}
.course .temp__course_voice .voice__text {
  color: #666;
}
.course .temp__course_lecture .lecture_list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_lecture .lecture_list {
    grid-template-columns: repeat(2, 1fr);
    gap: 9.09%;
  }
}
.course .temp__course_lecture .lecture__img {
  margin-bottom: 12px;
  border-radius: 6px;
  overflow: hidden;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_lecture .lecture__img {
    margin-bottom: 20px;
    border-radius: 8px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_lecture .lecture__img {
    margin-bottom: 25px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_lecture .lecture__img {
    margin-bottom: 30px;
    border-radius: 10px;
  }
}
.course .temp__course_lecture .lecture__img img {
  width: 100%;
}
.course .temp__course_lecture .lecture__name {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4;
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .course .temp__course_lecture .lecture__name {
    margin-bottom: 14px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .temp__course_lecture .lecture__name {
    margin-bottom: 17px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .temp__course_lecture .lecture__name {
    margin-bottom: 20px;
  }
}
.course.course__beauty .underlayer__head {
  background-color: #FFF8B2;
}
.course.course__beauty .underlayer__head::after {
  background-color: #FFF8B2;
}
.course.course__beauty .heading_eng_ja .eng {
  color: #DC952E;
}
.course.course__beauty .temp__course_curriculum {
  background-color: #FFF8B2;
}
.course.course__beauty .temp__course_curriculum .curriculum__contents dt::after {
  background-color: #F2971B;
}
.course.course__beauty .temp__course_curriculum .curriculum__contents ul li::before {
  background-color: #F2971B;
}
.course.course__beauty .temp__course_cornerbg {
  background-color: #FCF7EE;
}
.course.course__beauty .temp__course_qualidication th {
  background-color: #EDC893;
}
.course.course__beauty-hairmake .underlayer__head {
  background-color: #E6BBBD;
}
.course.course__beauty-hairmake .underlayer__head::after {
  background-color: #E6BBBD;
}
.course.course__beauty-hairmake .heading_eng_ja .eng {
  color: #CA5476;
}
.course.course__beauty-hairmake .temp__course_curriculum {
  background-color: #E6BBBD;
}
.course.course__beauty-hairmake .temp__course_curriculum .curriculum__contents dt::after {
  background-color: #E85377;
}
.course.course__beauty-hairmake .temp__course_curriculum .curriculum__contents ul li::before {
  background-color: #E85377;
}
.course.course__beauty-hairmake .temp__course_cornerbg {
  background-color: #F8ECF3;
}
.course.course__beauty-hairmake .temp__course_qualidication th {
  background-color: #E6BBBD;
}
.course.course__barber .underlayer__head {
  background-color: #D2E6E6;
}
.course.course__barber .underlayer__head::after {
  background-color: #D2E6E6;
}
.course.course__barber .heading_eng_ja .eng {
  color: #5A80A1;
}
.course.course__barber .temp__course_curriculum {
  background-color: #D2E6E6;
}
.course.course__barber .temp__course_curriculum .curriculum__contents dt::after {
  background-color: #4081A3;
}
.course.course__barber .temp__course_curriculum .curriculum__contents ul li::before {
  background-color: #4081A3;
}
.course.course__barber .temp__course_cornerbg {
  background-color: #EFF7FD;
}
.course.course__barber .temp__course_qualidication th {
  background-color: #D2E6E6;
}
.course.course__correspondence .underlayer__head {
  background-color: #D1E3C3;
}
.course.course__correspondence .underlayer__head::after {
  background-color: #D1E3C3;
}
.course.course__correspondence .temp__coursehead {
  margin-bottom: 40px;
  top: 0;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .temp__coursehead {
    margin-bottom: 50px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__correspondence .temp__coursehead {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__correspondence .temp__coursehead {
    margin-bottom: 70px;
  }
}
.course.course__correspondence .temp__coursehead .coursehead__title {
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .temp__coursehead .coursehead__title {
    width: 59.81%;
  }
}
.course.course__correspondence .heading__middleText {
  color: #56A454;
}
.course.course__correspondence .correspondence__block {
  margin-bottom: 65px;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__block {
    margin-bottom: 50px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__correspondence .correspondence__block {
    margin-bottom: 55px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__correspondence .correspondence__block {
    margin-bottom: 60px;
  }
}
.course.course__correspondence .correspondence__flow p {
  margin-bottom: 35px;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__flow p {
    margin-bottom: 25px;
  }
}
.course.course__correspondence .correspondence__flow img {
  width: 100%;
}
.course.course__correspondence .correspondence__curriculum {
  margin-bottom: 70px;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__curriculum {
    margin-bottom: 90px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__correspondence .correspondence__curriculum {
    margin-bottom: 110px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__correspondence .correspondence__curriculum {
    margin-bottom: 125px;
  }
}
.course.course__correspondence .correspondence__curriculum table {
  width: 100%;
  border-bottom: 1px solid #222;
}
.course.course__correspondence .correspondence__curriculum th,
.course.course__correspondence .correspondence__curriculum td {
  font-size: 1.4rem;
  line-height: 1.5;
  letter-spacing: 0;
  display: block;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__curriculum th,
  .course.course__correspondence .correspondence__curriculum td {
    display: table-cell;
  }
}
.course.course__correspondence .correspondence__curriculum th {
  font-weight: 500;
  white-space: nowrap;
  padding: 20px 0 0 0;
  margin-bottom: 5px;
  border-top: 1px solid #222;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__curriculum th {
    width: 10px;
    padding: 20px 20px 20px 0;
    margin-bottom: 0;
  }
}
.course.course__correspondence .correspondence__curriculum td {
  padding-block: 0 20px;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__curriculum td {
    padding-block: 20px;
    border-top: 1px solid #222;
  }
}
.course.course__correspondence .correspondence__curriculum ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 12px;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__curriculum ul {
    gap: 10px 15px;
  }
}
.course.course__correspondence .correspondence__curriculum ul li {
  font-size: 1.4rem;
  line-height: 1.5;
  letter-spacing: 0;
  display: flex;
  align-items: center;
  gap: 2px;
}
.course.course__correspondence .correspondence__curriculum ul li::before {
  content: "";
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #222;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__curriculum ul li::before {
    transform: translateY(1px);
  }
}
.course.course__correspondence .correspondence__curriculum .junior_high_school p {
  font-size: 1.2rem;
  line-height: 1.5;
  margin-block: 5px 2px;
}
.course.course__correspondence .correspondence__curriculum .junior_high_school ul {
  gap: 8px 10px;
}
.course.course__correspondence .correspondence__curriculum .junior_high_school ul li {
  font-size: 1.2rem;
}
.course.course__correspondence .correspondence__curriculum .junior_high_school ul li::before {
  width: 10px;
  height: 10px;
}
.course.course__correspondence .bg_lightyellow {
  padding-block: 45px 30px;
  background-color: #F7F3BF;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .bg_lightyellow {
    padding-block: 60px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__correspondence .bg_lightyellow {
    padding-block: 80px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__correspondence .bg_lightyellow {
    padding-block: 100px;
  }
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .line_table {
    margin: -17px 0;
    border-spacing: 0 17px;
  }
}
.course.course__correspondence .line_table th,
.course.course__correspondence .line_table td {
  line-height: 1.5;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .line_table th,
  .course.course__correspondence .line_table td {
    height: 80px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__correspondence .line_table th,
  .course.course__correspondence .line_table td {
    height: 87px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__correspondence .line_table th,
  .course.course__correspondence .line_table td {
    height: 93px;
  }
}
.course.course__correspondence .line_table th {
  font-size: 1.7rem;
  padding: 13px 15px;
  background-color: #D1E3C3;
}
@media print, screen and (min-width: 321px) {
  .course.course__correspondence .line_table th {
    font-size: 1.8rem;
  }
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .line_table th {
    font-size: 1.8rem;
    width: 235px;
    padding: 14px 17px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__correspondence .line_table th {
    font-size: 1.9rem;
    width: 275px;
    padding: 17px 18px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__correspondence .line_table th {
    font-size: 2rem;
    width: 315px;
    padding: 20px;
  }
}
.course.course__correspondence .line_table td {
  font-size: 1.5rem;
  padding: 15px 20px;
  background-color: #FFF;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .line_table td {
    font-size: 1.6rem;
    padding: 15px 25px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__correspondence .line_table td {
    font-size: 1.7rem;
    padding: 17px 30px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__correspondence .line_table td {
    font-size: 1.8rem;
    padding: 20px 35px;
  }
}
.course.course__correspondence .line_table .sp_ta_center {
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .line_table .sp_ta_center {
    text-align: left;
  }
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .normal_table th,
  .course.course__correspondence .normal_table td {
    height: 83px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__correspondence .normal_table th,
  .course.course__correspondence .normal_table td {
    height: 88px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__correspondence .normal_table th,
  .course.course__correspondence .normal_table td {
    height: 93px;
  }
}
.course.course__correspondence .normal_table th {
  font-size: 1.6rem;
  padding: 13px 15px;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .normal_table th {
    font-size: 1.7rem;
    padding: 15px 15px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__correspondence .normal_table th {
    font-size: 1.9rem;
    padding: 15px 17px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__correspondence .normal_table th {
    font-size: 2rem;
    padding: 15px 20px;
  }
}
.course.course__correspondence .normal_table td {
  font-size: 1.5rem;
  padding: 15px 15px;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .normal_table td {
    font-size: 1.6rem;
    padding: 15px 17px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__correspondence .normal_table td {
    font-size: 1.7rem;
    padding: 15px 18px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__correspondence .normal_table td {
    font-size: 1.8rem;
    padding: 15px 20px;
  }
}
.course.course__correspondence .normal_table td .font_s {
  font-size: 1.4rem;
}
.course.course__correspondence .normal_table thead th {
  background-color: #D1E3C3;
}
.course.course__correspondence .normal_table tbody th,
.course.course__correspondence .normal_table tbody td {
  background-color: #FFF;
}
.course.course__correspondence .normal_table.padding_s td,
.course.course__correspondence .normal_table.padding_s th {
  padding: 13px 15px;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .normal_table.padding_s td,
  .course.course__correspondence .normal_table.padding_s th {
    height: 64px;
    padding: 15px 15px;
  }
}
.course.course__correspondence .correspondence__date .date__table1 {
  width: 140%;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__date .date__table1 {
    width: 100%;
  }
}
.course.course__correspondence .correspondence__date .date__table1 th:nth-child(1) {
  width: 28.63%;
}
.course.course__correspondence .correspondence__date .date__table1 th:nth-child(2) {
  width: 35.68%;
}
.course.course__correspondence .correspondence__date .date__table1 th:nth-child(3) {
  width: 35.68%;
}
.course.course__correspondence .correspondence__date p {
  font-size: 1.5rem;
  margin-top: 20px;
  margin-bottom: 30px;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__date p {
    margin-bottom: 37px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__correspondence .correspondence__date p {
    margin-bottom: 44px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__correspondence .correspondence__date p {
    margin-bottom: 50px;
  }
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__date .date__table2 th,
  .course.course__correspondence .correspondence__date .date__table2 td {
    width: 50%;
  }
}
.course.course__correspondence .correspondence__date .date__table2.sp_clm1 th {
  background-color: #D1E3C3;
  border-top: 0px !important;
  border-right: 0px !important;
}
.course.course__correspondence .correspondence__date .date__table2.sp_clm1 td {
  border-top: 0px;
}
.course.course__correspondence .correspondence__document ul {
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__document ul {
    margin-bottom: 0;
  }
}
.course.course__correspondence .correspondence__document li {
  font-size: 1.5rem;
  line-height: 1.5;
  padding: 6px 0;
  border-bottom: 1px solid #222;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__document li {
    font-size: 1.6rem;
    padding: 8px 0;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__correspondence .correspondence__document li {
    font-size: 1.7rem;
    padding: 10px 0;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__correspondence .correspondence__document li {
    font-size: 1.8rem;
    padding: 11px 0;
  }
}
.course.course__correspondence .correspondence__document li:first-child {
  padding-top: 0;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__document li:last-child {
    padding-bottom: 0;
    border-bottom: 0px;
  }
}
.course.course__correspondence .correspondence__document p {
  line-height: 1.5;
}
.course.course__correspondence .correspondence__tuition .tb_wrap {
  margin-bottom: 20px;
}
.course.course__correspondence .correspondence__tuition table {
  width: 200%;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__tuition table {
    width: 100%;
  }
}
.course.course__correspondence .correspondence__tuition table th,
.course.course__correspondence .correspondence__tuition table td {
  width: 25%;
}
.course.course__correspondence .correspondence__tuition p:not(:last-child) {
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .course.course__correspondence .correspondence__tuition p:not(:last-child) {
    margin-bottom: 15px;
  }
}
.course.course__global .underlayer__head {
  padding-bottom: 240px;
  background: url(../img/course/global/bg.jpg) no-repeat center center;
  background-size: cover;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .underlayer__head {
    padding-bottom: 150px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .underlayer__head {
    padding-bottom: 180px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .underlayer__head {
    padding-bottom: 215px;
  }
}
.course.course__global .underlayer__head::after {
  content: none;
}
.course.course__global .pagehead_img {
  margin-top: 40px;
  margin-bottom: 0;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .pagehead_img {
    margin-top: 55px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .pagehead_img {
    margin-top: 70px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .pagehead_img {
    margin-top: 80px;
  }
}
.course.course__global .global__head {
  margin-bottom: 50px;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .global__head {
    margin-bottom: 57px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .global__head {
    margin-bottom: 64px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .global__head {
    margin-bottom: 70px;
  }
}
.course.course__global .global__head h2 {
  font-size: 2.8rem;
  line-height: 1.4;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .global__head h2 {
    font-size: 2.9rem;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .global__head h2 {
    font-size: 3rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .global__head h2 {
    font-size: 3.2rem;
  }
}
.course.course__global .global__head .head__info {
  font-size: 1.4rem;
  line-height: 1.57;
  margin-top: 5px;
}
.course.course__global .global__head .head__lead {
  line-height: 1.87;
  margin-top: 20px;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .global__head .head__lead {
    argin-top: 24px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .global__head .head__lead {
    argin-top: 27px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .global__head .head__lead {
    argin-top: 30px;
  }
}
.course.course__global .underlayer__wrap {
  margin-top: -195px;
}
@media print, screen and (min-width: 321px) {
  .course.course__global .underlayer__wrap {
    margin-top: -200px;
  }
}
@media print, screen and (min-width: 768px) {
  .course.course__global .underlayer__wrap {
    margin-top: -67px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .underlayer__wrap {
    margin-top: -76px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .underlayer__wrap {
    margin-top: -83px;
  }
}
.course.course__global .block__title {
  font-size: 2.6rem;
  font-weight: 500;
  color: #E7404E;
  line-height: 1.61;
  margin-bottom: 10px;
}
.course.course__global .about .global__head .head__lead {
  font-size: 1.6rem;
  line-height: 1.77;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .about .global__head .head__lead {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .about .global__head .head__lead {
    font-size: 1.8rem;
  }
}
.course.course__global .about .global__block:not(:last-child) {
  margin-bottom: 50px;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .about .global__block:not(:last-child) {
    margin-bottom: 55px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .about .global__block:not(:last-child) {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .about .global__block:not(:last-child) {
    margin-bottom: 65px;
  }
}
.course.course__global .about .block__title {
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .about .block__title {
    margin-bottom: 24px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .about .block__title {
    margin-bottom: 28px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .about .block__title {
    margin-bottom: 32px;
  }
}
.course.course__global .about .tbwrap {
  padding-bottom: 20px;
  overflow: auto;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .about .tbwrap {
    padding-bottom: 0;
    overflow: hidden;
  }
}
.course.course__global .about .tbwrap::-webkit-scrollbar {
  width: 100%;
  height: 5px;
}
.course.course__global .about .tbwrap::-webkit-scrollbar-track {
  background-color: #FFF;
  border-radius: 0;
}
.course.course__global .about .tbwrap::-webkit-scrollbar-thumb {
  background-color: #E7404E;
  border-radius: 2px;
}
.course.course__global .about table {
  width: 200%;
  border: 1px solid #B4B4B5;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .about table {
    width: 100%;
  }
}
.course.course__global .about table th,
.course.course__global .about table td {
  text-align: center;
  vertical-align: middle;
  border: 1px solid #B4B4B5;
}
.course.course__global .about table thead th {
  font-size: 1.3rem;
  padding: 5px 15px;
  background-color: #E5E5E6;
}
.course.course__global .about table tbody th,
.course.course__global .about table tbody td {
  font-size: 1.4rem;
  padding: 15px;
}
.course.course__global .about table .blue th,
.course.course__global .about table .blue td {
  background-color: #DFF0F2;
}
.course.course__global .about table .blue .color {
  color: #0080CA;
}
.course.course__global .about table .pink th,
.course.course__global .about table .pink td {
  background-color: #FAE5EE;
}
.course.course__global .about table .pink .color {
  color: #E50038;
}
.course.course__global .about table .ta_left {
  text-align: left;
}
.course.course__global .about .tb_caption {
  font-size: 1.2rem;
  margin-top: 5px;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .about .tb_caption {
    text-align: right;
  }
}
.course.course__global .about .program h4 {
  font-size: 1.6rem;
  margin-bottom: 5px;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .about .program h4 {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .about .program h4 {
    font-size: 1.8rem;
  }
}
.course.course__global .about .program .block1 {
  margin-bottom: 25px;
}
.course.course__global .about .program .block2 {
  margin-bottom: 50px;
}
.course.course__global .about .program .block2 tbody th:not(:last-child),
.course.course__global .about .program .block2 tbody td:not(:last-child) {
  white-space: nowrap;
  padding-left: 20px;
  padding-right: 20px;
}
.course.course__global .about .program .block3 .notes_text {
  margin-top: 8px;
}
.course.course__global .about .scholarship td:nth-child(1) {
  width: 25%;
}
.course.course__global .about .scholarship td:nth-child(2) {
  width: 50%;
}
.course.course__global .about .scholarship td:nth-child(3) {
  font-size: 2.2rem;
  line-height: 1;
  width: 25%;
}
@media print, screen and (min-width: 321px) {
  .course.course__global .about .scholarship td:nth-child(3) {
    font-size: 2.4rem;
  }
}
@media print, screen and (min-width: 768px) {
  .course.course__global .about .scholarship td:nth-child(3) {
    font-size: 2.7rem;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .about .scholarship td:nth-child(3) {
    font-size: 3rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .about .scholarship td:nth-child(3) {
    font-size: 3.3rem;
  }
}
.course.course__global .course:not(:last-child) {
  margin-bottom: 50px;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .course:not(:last-child) {
    margin-bottom: 65px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .course:not(:last-child) {
    margin-bottom: 80px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .course:not(:last-child) {
    margin-bottom: 95px;
  }
}
.course.course__global .course .course__info h2 {
  font-size: 2.8rem;
  line-height: 1.4;
  margin-bottom: 5px;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .course .course__info h2 {
    font-size: 2.9rem;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .course .course__info h2 {
    font-size: 3rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .course .course__info h2 {
    font-size: 3.2rem;
  }
}
.course.course__global .course .course__info ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1px 15px;
}
.course.course__global .course .course__info li {
  font-size: 1.3rem;
  line-height: 1.5;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .course .course__info li {
    font-size: 1.4rem;
  }
}
.course.course__global .course .course__grid {
  display: grid;
  grid-template-columns: 1fr;
  align-items: end;
  gap: 30px;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .course .course__grid {
    grid-template-columns: 1fr 55.71%;
    gap: 30px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .course .course__grid {
    gap: 40px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .course .course__grid {
    gap: 50px;
  }
}
.course.course__global .course .course__detail h3 {
  font-size: 2rem;
  font-weight: 500;
  color: #E7404E;
  line-height: 1.61;
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .course .course__detail h3 {
    font-size: 2.2rem;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .course .course__detail h3 {
    font-size: 2.4rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .course .course__detail h3 {
    font-size: 2.6rem;
  }
}
.course.course__global .course .course__detail dl dt {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  padding: 2px 0;
  margin-bottom: 15px;
  border-top: 1px solid #222;
  border-bottom: 1px solid #222;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .course .course__detail dl dt {
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .course .course__detail dl dt {
    font-size: 2.1rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .course .course__detail dl dt {
    font-size: 2.2rem;
  }
}
.course.course__global .course .course__img img {
  width: 100%;
  max-width: initial;
}
.course.course__global .us_program .course__info {
  margin-bottom: 30px;
}
.course.course__global .k_program .course__info {
  margin-bottom: 30px;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .k_program .course__info {
    margin-bottom: 45px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__global .k_program .course__info {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__global .k_program .course__info {
    margin-bottom: 75px;
  }
}
.course.course__global .k_program .course__info p {
  margin-top: 15px;
}
@media print, screen and (min-width: 768px) {
  .course.course__global .k_program .course__info p {
    margin-top: 20px;
  }
}
.course.course__profession .profession__bg {
  padding-block: 25px 0;
  background-color: #EBEEEF;
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .profession__bg {
    padding-block: 60px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__profession .profession__bg {
    padding-block: 80px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__profession .profession__bg {
    padding-block: 100px;
  }
}
.course.course__profession .interview {
  margin-bottom: 30px;
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .interview {
    margin-bottom: 65px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__profession .interview {
    margin-bottom: 90px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__profession .interview {
    margin-bottom: 115px;
  }
}
.course.course__profession .interview__inner {
  padding: 25px 20px 30px 20px;
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .interview__inner {
    padding: 7.72%;
    border-radius: 10px;
  }
}
.course.course__profession .interview__head {
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
  gap: 35px;
  margin-bottom: 45px;
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .interview__head {
    grid-template-columns: 50.7% 42.8%;
    gap: 6.5%;
    margin-bottom: 50px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__profession .interview__head {
    margin-bottom: 55px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__profession .interview__head {
    margin-bottom: 60px;
  }
}
.course.course__profession .interview__head h2 img {
  width: 100%;
}
.course.course__profession .interview__head .head__lead h3 {
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
  padding-bottom: 20px;
  margin-bottom: 10px;
  background: url(../img/course/profession/interview_head_line.png) no-repeat center bottom;
  background-size: 397px auto;
}
@media print, screen and (min-width: 321px) {
  .course.course__profession .interview__head .head__lead h3 {
    font-size: 2.6rem;
  }
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .interview__head .head__lead h3 {
    font-size: 2.7rem;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__profession .interview__head .head__lead h3 {
    font-size: 2.8rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__profession .interview__head .head__lead h3 {
    font-size: 2.9rem;
  }
}
.course.course__profession .interview__head .head__lead p {
  font-size: 1.5rem;
  line-height: 2;
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .interview__head .head__lead p {
    font-size: 1.6rem;
    line-height: 1.66;
  }
}
.course.course__profession .interview__head .head__lead p br {
  display: none;
}
@media print, screen and (min-width: 1280px) {
  .course.course__profession .interview__head .head__lead p br {
    display: block;
  }
}
.course.course__profession .interview_list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 55px;
  align-items: end;
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .interview_list {
    grid-template-columns: repeat(2, 1fr);
    gap: 0 6.6%;
  }
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .interview_list li:nth-child(3), .course.course__profession .interview_list li:nth-child(4) {
    margin-bottom: 14.78%;
  }
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .interview_list li:nth-child(5), .course.course__profession .interview_list li:nth-child(6) {
    margin-bottom: 9.46%;
  }
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .interview_list li:nth-child(7), .course.course__profession .interview_list li:nth-child(8) {
    margin-bottom: 8.08%;
  }
}
.course.course__profession .interview_list img {
  width: 100%;
}
.course.course__profession .employment {
  padding-bottom: 53%;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .employment {
    padding-bottom: 0;
  }
}
.course.course__profession .employment .employment__title {
  margin-bottom: 25px;
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .employment .employment__title {
    margin-bottom: 30px;
    position: relative;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__profession .employment .employment__title {
    margin-bottom: 40px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__profession .employment .employment__title {
    margin-bottom: 50px;
  }
}
.course.course__profession .employment .employment__title::after {
  content: none;
  height: 1px;
  background-color: #222;
  top: 50%;
  left: 380px;
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .employment .employment__title::after {
    content: "";
    width: calc((100% - 300px) * 0.4);
    left: 340px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__profession .employment .employment__title::after {
    width: calc((100% - 340px) * 0.52);
    left: 360px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__profession .employment .employment__title::after {
    width: calc((100% - 389px) * 0.58);
    left: 380px;
  }
}
.course.course__profession .employment .employment__title h2 {
  font-size: 2.4rem;
  font-weight: bold;
  color: #FFF;
  line-height: 1.5;
  width: 90%;
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 7px 0;
  border-top-right-radius: 50px;
  border-bottom-right-radius: 50px;
  background-color: #E7404E;
  position: relative;
}
@media print, screen and (min-width: 321px) {
  .course.course__profession .employment .employment__title h2 {
    font-size: 2.6rem;
  }
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .employment .employment__title h2 {
    width: 300px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__profession .employment .employment__title h2 {
    width: 340px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__profession .employment .employment__title h2 {
    transform: translateX(-1.5em);
  }
}
.course.course__profession .employment .employment__title h2 span {
  font-size: 1.8rem;
}
@media print, screen and (min-width: 321px) {
  .course.course__profession .employment .employment__title h2 span {
    font-size: 2rem;
  }
}
.course.course__profession .employment .employment__title h2::after {
  width: 1000px;
  height: 100%;
  background-color: #E7404E;
  top: 0;
  left: -1000px;
}
.course.course__profession .employment .employment__title img {
  width: 80.74%;
  margin: 0 auto;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .employment .employment__title img {
    width: 27.54%;
    margin: 0;
    top: 0;
    bottom: auto;
    left: auto;
    transform: translateY(-20%);
  }
}
.course.course__profession .employment .employment_list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 25px;
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .employment .employment_list {
    grid-template-columns: repeat(2, 1fr);
    gap: 5.9%;
  }
}
.course.course__profession .employment .employment_list h3 {
  width: 100%;
  margin-bottom: 10px;
  transform: translateX(-10px);
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .employment .employment_list h3 {
    width: 85.24%;
    margin-bottom: 15px;
  }
}
.course.course__profession .employment .employment_list h3 img {
  width: 100%;
}
.course.course__profession .employment .employment_list ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 18px;
}
.course.course__profession .employment .employment_list ul li {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  padding-left: 15px;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .employment .employment_list ul li {
    font-size: 1.7rem;
    padding-left: 16px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__profession .employment .employment_list ul li {
    font-size: 1.8rem;
    padding-left: 17px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__profession .employment .employment_list ul li {
    font-size: 1.9rem;
    padding-left: 18px;
  }
}
.course.course__profession .employment .employment_list ul li::before {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  top: calc(50% + 1px);
  left: 0;
  transform: translateY(-50%);
}
@media print, screen and (min-width: 768px) {
  .course.course__profession .employment .employment_list ul li::before {
    width: 11px;
    height: 11px;
  }
}
@media print, screen and (min-width: 920px) {
  .course.course__profession .employment .employment_list ul li::before {
    width: 12px;
    height: 12px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course.course__profession .employment .employment_list ul li::before {
    width: 13px;
    height: 13px;
  }
}
.course.course__profession .employment .beauty li::before {
  background-color: #EC7780;
}
.course.course__profession .employment .barber li::before {
  background-color: #B1D585;
}
.course .ribitz {
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .course .ribitz {
    margin-bottom: 50px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .ribitz {
    margin-bottom: 75px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .ribitz {
    margin-bottom: 100px;
  }
}
.course .ribitz a {
  height: 120vw;
  display: block;
  border-radius: 10px;
  position: relative;
  overflow: hidden;
  transition: opacity 0.3s;
}
@media print, screen and (min-width: 321px) {
  .course .ribitz a {
    height: 95vw;
  }
}
@media print, screen and (min-width: 768px) {
  .course .ribitz a {
    height: 317px;
  }
}
.course .ribitz a::before, .course .ribitz a::after {
  width: 26px;
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  bottom: 5px;
  right: 5px;
  transition: transform 0.3s;
}
@media print, screen and (min-width: 768px) {
  .course .ribitz a::before, .course .ribitz a::after {
    width: 30px;
    height: 30px;
    bottom: 10px;
    right: 10px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .ribitz a::before, .course .ribitz a::after {
    width: 35px;
    height: 35px;
    bottom: 20px;
    right: 20px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .ribitz a::before, .course .ribitz a::after {
    width: 40px;
    height: 40px;
    bottom: 30px;
    right: 30px;
  }
}
.course .ribitz a::before {
  border-radius: 50%;
  background-color: #E7404E;
  z-index: 1;
}
.course .ribitz a::after {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e900";
  font-size: 1.1rem;
  color: #FFF;
  letter-spacing: 0;
  z-index: 2;
}
@media print, screen and (min-width: 920px) {
  .course .ribitz a::after {
    font-size: 1.2rem;
  }
}
.course .ribitz a .ribitz__textBox {
  width: 100%;
  padding-inline: 15px;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 2;
  transform: translateY(-50%);
}
@media print, screen and (min-width: 768px) {
  .course .ribitz a .ribitz__textBox {
    padding-inline: 30px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .ribitz a .ribitz__textBox {
    padding-inline: 40px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .ribitz a .ribitz__textBox {
    padding-inline: 58px;
  }
}
.course .ribitz a .ribitz__textBox p {
  font-weight: 500;
  color: #FFF;
  text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.35);
}
.course .ribitz a .ribitz__lead {
  font-size: 1.7rem;
  line-height: 1.71;
  margin-bottom: 17px;
}
@media print, screen and (min-width: 321px) {
  .course .ribitz a .ribitz__lead {
    font-size: 1.9rem;
  }
}
@media print, screen and (min-width: 768px) {
  .course .ribitz a .ribitz__lead {
    font-size: 2rem;
    margin-bottom: 7px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .ribitz a .ribitz__lead {
    font-size: 2.1rem;
  }
}
.course .ribitz a .ribitz__name {
  font-size: 2.8rem;
  line-height: 1;
  letter-spacing: -0.15em;
  margin-bottom: 23px;
  transform: translateX(-0.15em);
}
@media print, screen and (min-width: 321px) {
  .course .ribitz a .ribitz__name {
    font-size: 3.5rem;
  }
}
@media print, screen and (min-width: 768px) {
  .course .ribitz a .ribitz__name {
    font-size: 4.3rem;
    margin-bottom: 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .ribitz a .ribitz__name {
    font-size: 5.3rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .ribitz a .ribitz__name {
    font-size: 6.3rem;
  }
}
.course .ribitz a .ribitz__text {
  font-size: 1.5rem;
  line-height: 1.43;
}
@media print, screen and (min-width: 768px) {
  .course .ribitz a .ribitz__text {
    font-size: 1.6rem;
    line-height: 2;
  }
}
.course .ribitz a picture {
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
}
.course .ribitz a picture::after {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  top: 0;
  left: 0;
}
.course .ribitz a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s;
}
@media (hover: hover) {
  .course .ribitz a:where(:any-link, :enabled, summary, span, dt, div):hover {
    opacity: 0.8;
  }
  .course .ribitz a:where(:any-link, :enabled, summary, span, dt, div):hover::before, .course .ribitz a:where(:any-link, :enabled, summary, span, dt, div):hover::after {
    transform: translateX(3px);
  }
  .course .ribitz a:where(:any-link, :enabled, summary, span, dt, div):hover img {
    transform: scale(1.05);
  }
}
.course .to_admission {
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .course .to_admission {
    margin-bottom: 50px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .to_admission {
    margin-bottom: 75px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .to_admission {
    margin-bottom: 100px;
  }
}
.course .to_admission a {
  height: 100px;
  display: block;
  border-radius: 10px;
  position: relative;
  overflow: hidden;
  transition: opacity 0.3s;
}
@media print, screen and (min-width: 768px) {
  .course .to_admission a {
    height: 170px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .to_admission a {
    height: 220px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .to_admission a {
    height: 270px;
  }
}
.course .to_admission a::before, .course .to_admission a::after {
  width: 26px;
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  bottom: 5px;
  right: 5px;
  transition: transform 0.3s;
}
@media print, screen and (min-width: 768px) {
  .course .to_admission a::before, .course .to_admission a::after {
    width: 30px;
    height: 30px;
    bottom: 10px;
    right: 10px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .to_admission a::before, .course .to_admission a::after {
    width: 35px;
    height: 35px;
    bottom: 20px;
    right: 20px;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .to_admission a::before, .course .to_admission a::after {
    width: 40px;
    height: 40px;
    bottom: 30px;
    right: 30px;
  }
}
.course .to_admission a::before {
  border-radius: 50%;
  background-color: #E7404E;
  z-index: 1;
}
.course .to_admission a::after {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e900";
  font-size: 1.1rem;
  color: #FFF;
  letter-spacing: 0;
  z-index: 2;
}
@media print, screen and (min-width: 920px) {
  .course .to_admission a::after {
    font-size: 1.2rem;
  }
}
.course .to_admission a p {
  text-align: center;
  margin: 0 auto;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  z-index: 2;
  transform: translateY(-50%);
}
.course .to_admission a p span {
  color: #FFF;
  line-height: 1.2;
  letter-spacing: 0;
  display: block;
}
.course .to_admission a p .eng {
  font-size: 2.2rem;
  font-weight: 300;
  margin-bottom: 3px;
}
@media print, screen and (min-width: 768px) {
  .course .to_admission a p .eng {
    font-size: 2.8rem;
    margin-bottom: 5px;
  }
}
@media print, screen and (min-width: 920px) {
  .course .to_admission a p .eng {
    font-size: 3.3rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .to_admission a p .eng {
    font-size: 3.8rem;
  }
}
.course .to_admission a p .ja {
  font-size: 1.6rem;
}
@media print, screen and (min-width: 768px) {
  .course .to_admission a p .ja {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .course .to_admission a p .ja {
    font-size: 1.8rem;
  }
}
.course .to_admission a picture {
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
}
.course .to_admission a picture::after {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  top: 0;
  left: 0;
}
.course .to_admission a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s;
}
@media (hover: hover) {
  .course .to_admission a:where(:any-link, :enabled, summary, span, dt, div):hover {
    opacity: 0.8;
  }
  .course .to_admission a:where(:any-link, :enabled, summary, span, dt, div):hover::before, .course .to_admission a:where(:any-link, :enabled, summary, span, dt, div):hover::after {
    transform: translateX(3px);
  }
  .course .to_admission a:where(:any-link, :enabled, summary, span, dt, div):hover img {
    transform: scale(1.05);
  }
}

.admission .adm__block_title {
  font-size: 3.2rem;
  line-height: 1.4;
  margin-bottom: 15px;
}
@media print, screen and (min-width: 768px) {
  .admission .adm__block_title {
    margin-bottom: 18px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission .adm__block_title {
    margin-bottom: 22px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission .adm__block_title {
    margin-bottom: 25px;
  }
}
.admission .adm__block_subtitle {
  font-size: 2.6rem;
  font-weight: 500;
  color: #E7404E;
  line-height: 1.61;
  margin-bottom: 25px;
}
@media print, screen and (min-width: 768px) {
  .admission .adm__block_subtitle {
    margin-bottom: 35px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission .adm__block_subtitle {
    margin-bottom: 45px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission .adm__block_subtitle {
    margin-bottom: 55px;
  }
}
.admission .adm__block_subtitle .font_s {
  font-size: 1.8rem;
}
.admission .adm__block_subtitle_s {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: 7px;
}
.admission .adm__merit {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  margin-bottom: 45px;
}
@media print, screen and (min-width: 768px) {
  .admission .adm__merit {
    grid-template-columns: 1fr;
    margin-bottom: 50px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission .adm__merit {
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-bottom: 55px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission .adm__merit {
    margin-bottom: 60px;
  }
}
.admission .adm__merit li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 20px 10px 30px 10px;
  border-radius: 8px;
  background-color: #FCF7EE;
}
@media print, screen and (min-width: 768px) {
  .admission .adm__merit li {
    padding: 22px 10px 24px 10px;
    border-radius: 9px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission .adm__merit li {
    padding: 24px 10px 27px 10px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission .adm__merit li {
    padding: 25px 10px 30px 10px;
    border-radius: 10px;
  }
}
.admission .adm__merit .line {
  text-align: center;
  letter-spacing: 0;
}
.admission .adm__merit .line__upper {
  font-size: 1.6rem;
  line-height: 1.35;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 5px;
}
@media print, screen and (min-width: 321px) {
  .admission .adm__merit .line__upper {
    font-size: 1.7rem;
    height: 55px;
  }
}
@media print, screen and (min-width: 768px) {
  .admission .adm__merit .line__upper {
    font-size: 1.9rem;
    line-height: 1.3;
    height: 60px;
    margin-bottom: 10px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission .adm__merit .line__upper {
    font-size: 2.1rem;
    margin-bottom: 13px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission .adm__merit .line__upper {
    font-size: 2.3rem;
    margin-bottom: 15px;
  }
}
.admission .adm__merit .line__lower {
  font-size: 1.2rem;
  line-height: 1.2;
  letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {
  .admission .adm__merit .line__lower {
    font-size: 1.4rem;
  }
}
@media print, screen and (min-width: 920px) {
  .admission .adm__merit .line__lower {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission .adm__merit .line__lower {
    font-size: 1.6rem;
  }
}
.admission .adm__merit .line__lower .color_keycolor {
  font-size: 1.6rem;
  font-weight: 500;
}
@media print, screen and (min-width: 321px) {
  .admission .adm__merit .line__lower .color_keycolor {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 768px) {
  .admission .adm__merit .line__lower .color_keycolor {
    ont-size: 1.9rem;
  }
}
@media print, screen and (min-width: 920px) {
  .admission .adm__merit .line__lower .color_keycolor {
    ont-size: 2.1rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission .adm__merit .line__lower .color_keycolor {
    ont-size: 2.2rem;
  }
}
.admission .adm__merit .line__lower .num {
  font-size: 3.6rem;
  font-weight: 600;
  line-height: 1;
}
@media print, screen and (min-width: 321px) {
  .admission .adm__merit .line__lower .num {
    font-size: 3.8rem;
  }
}
@media print, screen and (min-width: 768px) {
  .admission .adm__merit .line__lower .num {
    font-size: 4.2rem;
  }
}
@media print, screen and (min-width: 920px) {
  .admission .adm__merit .line__lower .num {
    font-size: 4.6rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission .adm__merit .line__lower .num {
    font-size: 5rem;
  }
}
.admission .adm__merit .line__lower .font_l {
  font-size: 3.2rem;
  line-height: 1;
  letter-spacing: -0.15em;
}
@media print, screen and (min-width: 321px) {
  .admission .adm__merit .line__lower .font_l {
    font-size: 3.4rem;
  }
}
@media print, screen and (min-width: 768px) {
  .admission .adm__merit .line__lower .font_l {
    font-size: 3.8rem;
  }
}
@media print, screen and (min-width: 920px) {
  .admission .adm__merit .line__lower .font_l {
    font-size: 4.2rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission .adm__merit .line__lower .font_l {
    font-size: 4.5rem;
  }
}
.admission .line_table th {
  border-bottom: none;
}
.admission .horizontal_flowlist {
  padding: 35px 15px 40px 15px;
  border-radius: 10px;
}
@media print, screen and (min-width: 768px) {
  .admission .horizontal_flowlist {
    padding: 37px 24px 42px 24px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission .horizontal_flowlist {
    padding: 38px 33px 43px 33px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission .horizontal_flowlist {
    padding: 40px 40px 45px 40px;
  }
}
.admission .horizontal_flowlist .flowlist__inner {
  width: 100%;
  padding-bottom: 15px;
  overflow: auto;
}
@media print, screen and (min-width: 768px) {
  .admission .horizontal_flowlist .flowlist__inner {
    padding-bottom: 17px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission .horizontal_flowlist .flowlist__inner {
    padding-bottom: 18px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission .horizontal_flowlist .flowlist__inner {
    padding-bottom: 20px;
  }
}
.admission .horizontal_flowlist .flowlist__inner {
  /*scrollbar-width: thin;
  scrollbar-color: $key-color $color_white;*/
}
.admission .horizontal_flowlist .flowlist__inner::-webkit-scrollbar {
  width: 100%;
  height: 4px;
}
@media print, screen and (min-width: 1280px) {
  .admission .horizontal_flowlist .flowlist__inner::-webkit-scrollbar {
    height: 5px;
  }
}
.admission .horizontal_flowlist .flowlist__inner::-webkit-scrollbar-track {
  background-color: #FFF;
  border-radius: 0;
}
.admission .horizontal_flowlist .flowlist__inner::-webkit-scrollbar-thumb {
  background-color: #E7404E;
  border-radius: 2px;
}
.admission .horizontal_flowlist .flow__contents {
  width: 150%;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
  align-items: start;
  gap: 10px;
}
.admission .horizontal_flowlist .flow__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
}
.admission .horizontal_flowlist .num {
  margin-bottom: 20px;
  position: relative;
}
.admission .horizontal_flowlist .num::after {
  width: calc(100% + 10px);
  height: 2px;
  background-color: #222;
  top: 50%;
  left: 0;
  z-index: 0;
  transform: translateY(-50%);
}
.admission .horizontal_flowlist .num span {
  font-size: 1.8rem;
  font-weight: 500;
  color: #FFF;
  line-height: 1;
  letter-spacing: 0;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2px 0 0 1px;
  border-radius: 50%;
  background-color: #222;
  position: relative;
  z-index: 1;
}
.admission .horizontal_flowlist .text {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 1;
  gap: 0;
  padding: 15px 20px;
  border-radius: 5px;
  background-color: #FFF;
}
.admission .horizontal_flowlist .text .text__inner {
  min-height: 178px;
}
.admission .horizontal_flowlist .text .flow__item_title {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: 10px;
}
.admission .horizontal_flowlist .text p {
  font-size: 1.4rem;
  line-height: 1.71;
}
.admission .horizontal_flowlist .text .notes_text p {
  font-size: 1.2rem !important;
}
.admission .horizontal_flowlist .flow__item:last-child .num::after {
  content: none;
}
.admission.admission__application .line_table td.sp_ta_center {
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__application .line_table td.sp_ta_center {
    text-align: left;
  }
}
.admission.admission__application .tab01__item .block2 .flow__contents {
  width: 500%;
  grid-template-columns: 1fr 1fr 1.5fr 1fr 1fr 1fr 1fr;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__application .tab01__item .block2 .flow__contents {
    width: 210%;
  }
}
.admission.admission__application .tab01__item .block2 .flow__contents a {
  color: #E7404E;
}
@media (hover: hover) {
  .admission.admission__application .tab01__item .block2 .flow__contents a:where(:any-link, :enabled, summary, span, dt, div):hover {
    text-decoration: underline;
  }
}
.admission.admission__application .tab01__item .block3 .adm__block_subtitle {
  line-height: 1.4;
  letter-spacing: 0em;
  margin-bottom: 18px;
}
.admission.admission__application .tab01__item .block3 .adm__block_subtitle .font_s {
  letter-spacing: -0.1em;
  display: block;
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__application .tab01__item .block3 .adm__block_subtitle .font_s {
    display: none;
  }
}
.admission.admission__application .tab01__item .blokc3__grid {
  display: grid;
  grid-template-columns: 1fr;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__application .tab01__item .blokc3__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
.admission.admission__application .tab01__item .blokc3__grid > :last-child {
  grid-column: 1/-1;
}
.admission.admission__application .tab01__item .blokc3__grid_item {
  padding: 30px 0 30px 0;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__application .tab01__item .blokc3__grid_item {
    padding: 32px 0 34px 0;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__application .tab01__item .blokc3__grid_item {
    padding: 33px 0 37px 0;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__application .tab01__item .blokc3__grid_item {
    padding: 35px 0 40px 0;
  }
}
.admission.admission__application .tab01__item .blokc3__grid_item:not(:last-child) {
  border-bottom: 1px solid #E6E6E6;
}
.admission.admission__application .tab01__item .blokc3__grid_item:first-child {
  padding-top: 0;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__application .tab01__item .blokc3__grid_item:first-child {
    padding: 32px 0 34px 0;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__application .tab01__item .blokc3__grid_item:first-child {
    padding: 33px 0 37px 0;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__application .tab01__item .blokc3__grid_item:first-child {
    padding: 35px 0 40px 0;
  }
}
@media print, screen and (min-width: 768px) {
  .admission.admission__application .tab01__item .blokc3__grid_item:nth-child(odd) {
    border-right: 1px solid #E6E6E6;
    padding-right: 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__application .tab01__item .blokc3__grid_item:nth-child(odd) {
    padding-right: 30px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__application .tab01__item .blokc3__grid_item:nth-child(odd) {
    padding-right: 40px;
  }
}
@media print, screen and (min-width: 768px) {
  .admission.admission__application .tab01__item .blokc3__grid_item:nth-child(even) {
    padding-left: 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__application .tab01__item .blokc3__grid_item:nth-child(even) {
    padding-left: 30px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__application .tab01__item .blokc3__grid_item:nth-child(even) {
    padding-left: 40px;
  }
}
@media print, screen and (min-width: 768px) {
  .admission.admission__application .tab01__item .blokc3__grid_item:nth-child(-n+2) {
    padding-top: 0;
  }
}
.admission.admission__application .tab01__item .blokc3__grid_item:last-child {
  padding-bottom: 0;
  padding-right: 0;
  border-right: none;
}
.admission.admission__scholarship .scholarship_exemption {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__scholarship .scholarship_exemption {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }
}
.admission.admission__scholarship .scholarship_exemption li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 30px 15px 30px 15px;
  border-radius: 10px;
  background-color: #FCF7EE;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__scholarship .scholarship_exemption li {
    padding: 30px 20px 30px 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__scholarship .scholarship_exemption li {
    padding: 30px 25px 30px 25px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__scholarship .scholarship_exemption li {
    padding: 30px 28px 30px 28px;
  }
}
.admission.admission__scholarship .scholarship_exemption dl {
  width: 100%;
}
.admission.admission__scholarship .scholarship_exemption dt {
  font-size: 2.2rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.5;
  padding: 2px 10px 3px 10px;
  margin: 0 auto 15px auto;
  border-radius: 5px;
  background-color: #FFF;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__scholarship .scholarship_exemption dt {
    max-width: 260px;
    font-size: 2.3rem;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__scholarship .scholarship_exemption dt {
    font-size: 2.5rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__scholarship .scholarship_exemption dt {
    font-size: 2.6rem;
  }
}
.admission.admission__scholarship .scholarship_exemption dd {
  text-align: center;
  letter-spacing: 0;
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__scholarship .scholarship_exemption dd {
    text-align: left;
  }
}
.admission.admission__scholarship .scholarship_exemption dd .color_keycolor {
  font-size: 1.7rem;
  font-weight: 500;
  display: block;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__scholarship .scholarship_exemption dd .color_keycolor {
    font-size: 1.9rem;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__scholarship .scholarship_exemption dd .color_keycolor {
    font-size: 2.1rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__scholarship .scholarship_exemption dd .color_keycolor {
    font-size: 2.2rem;
    display: inline;
  }
}
.admission.admission__scholarship .scholarship_exemption dd .num {
  font-size: 3.8rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.05em;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__scholarship .scholarship_exemption dd .num {
    font-size: 4.2rem;
    display: block;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__scholarship .scholarship_exemption dd .num {
    font-size: 4.6rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__scholarship .scholarship_exemption dd .num {
    font-size: 5rem;
    display: inline;
  }
}
.admission.admission__scholarship .cmn_table {
  margin-top: 30px;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__scholarship .cmn_table {
    margin-top: 10px;
  }
}
.admission.admission__tuition .adm__block_title {
  margin-bottom: 15px;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .adm__block_title {
    margin-bottom: 35px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__tuition .adm__block_title {
    margin-bottom: 40px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__tuition .adm__block_title {
    margin-bottom: 45px;
  }
}
.admission.admission__tuition .adm__block_subtitle {
  margin-bottom: 25px;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .adm__block_subtitle {
    margin-bottom: 20px;
  }
}
.admission.admission__tuition .block1 .adm__block_subtitle {
  margin-bottom: 25px;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block1 .adm__block_subtitle {
    margin-bottom: 28px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__tuition .block1 .adm__block_subtitle {
    margin-bottom: 32px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__tuition .block1 .adm__block_subtitle {
    margin-bottom: 35px;
  }
}
.admission.admission__tuition .block1 .tb_wrap {
  margin-bottom: 30px;
}
.admission.admission__tuition .block1 .cmn_table {
  width: 250%;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block1 .cmn_table {
    width: 100%;
  }
}
.admission.admission__tuition .block1 .disc_list li:not(:last-child) {
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block1 .disc_list li:not(:last-child) {
    margin-bottom: 24px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__tuition .block1 .disc_list li:not(:last-child) {
    margin-bottom: 27px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__tuition .block1 .disc_list li:not(:last-child) {
    margin-bottom: 30px;
  }
}
.admission.admission__tuition .block1 .disc_list dl {
  display: grid;
  grid-template-columns: 1fr;
  gap: 15px 20px;
  margin: 12px 0 20px 0;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block1 .disc_list dl {
    grid-template-columns: 155px 1fr;
    gap: 15px 20px;
  }
}
.admission.admission__tuition .block1 .disc_list dt {
  line-height: 1.1;
  min-height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FCF7EE;
}
.admission.admission__tuition .block1 .disc_list dd {
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block1 .disc_list dd {
    margin-bottom: 0;
  }
}
.admission.admission__tuition .block1 .disc_list p:last-child {
  margin-top: 10px;
}
.admission.admission__tuition .block2 .incentive_money {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  margin-top: 18px;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block2 .incentive_money {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
}
.admission.admission__tuition .block2 .incentive_money dl {
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
  gap: 15px;
  padding: 30px 15px;
  border-radius: 10px;
  background-color: #FCF7EE;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block2 .incentive_money dl {
    padding: 30px 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__tuition .block2 .incentive_money dl {
    padding: 30px 25px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__tuition .block2 .incentive_money dl {
    grid-template-columns: 160px 1fr;
    padding: 30px;
  }
}
.admission.admission__tuition .block2 .incentive_money dt {
  font-size: 2rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.5;
  padding: 10px 10px 10px 10px;
  border-radius: 5px;
  background-color: #FFF;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block2 .incentive_money dt {
    font-size: 2.2rem;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__tuition .block2 .incentive_money dt {
    font-size: 2.4rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__tuition .block2 .incentive_money dt {
    font-size: 2.6rem;
    max-width: 160px;
    padding: 13px 10px 14px 10px;
  }
}
.admission.admission__tuition .block2 .incentive_money dd {
  text-align: center;
  letter-spacing: 0;
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__tuition .block2 .incentive_money dd {
    text-align: left;
  }
}
.admission.admission__tuition .block2 .incentive_money dd .color_keycolor {
  font-size: 1.7rem;
  font-weight: 500;
  display: block;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block2 .incentive_money dd .color_keycolor {
    font-size: 1.9rem;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__tuition .block2 .incentive_money dd .color_keycolor {
    font-size: 2.1rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__tuition .block2 .incentive_money dd .color_keycolor {
    font-size: 2.2rem;
  }
}
.admission.admission__tuition .block2 .incentive_money dd .num {
  font-size: 3.8rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.05em;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block2 .incentive_money dd .num {
    font-size: 4.2rem;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__tuition .block2 .incentive_money dd .num {
    font-size: 4.6rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__tuition .block2 .incentive_money dd .num {
    font-size: 5rem;
  }
}
.admission.admission__tuition .block2 .horizontal_flowlist {
  margin-top: 30px;
}
.admission.admission__tuition .block2 .flow__contents {
  width: 500%;
  grid-template-columns: 1fr 1fr 1.5fr 1fr 2fr 1fr;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block2 .flow__contents {
    width: 210%;
  }
}
.admission.admission__tuition .block2 .tb_wrap {
  margin-bottom: 30px;
}
.admission.admission__tuition .block2 .border_table {
  width: 225%;
  margin-top: 20px;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block2 .border_table {
    width: 100%;
  }
}
.admission.admission__tuition .block2 .border_table td {
  line-height: 1.75;
  padding: 12px 15px;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block2 .border_table td {
    padding: 12px 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .admission.admission__tuition .block2 .border_table td {
    padding: 12px 25px;
  }
}
@media print, screen and (min-width: 1280px) {
  .admission.admission__tuition .block2 .border_table td {
    padding: 12px 30px;
  }
}
.admission.admission__tuition .block2 .border_table tbody th:nth-child(1) {
  width: 155px;
}
.admission.admission__tuition .block2 .border_table tbody td:nth-child(2) {
  white-space: nowrap;
}
.admission.admission__tuition .block2 .disc_list li:not(:last-child) {
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block2 .disc_list li:not(:last-child) {
    margin-bottom: 0;
  }
}
.admission.admission__tuition .block2 .disc_list .link__list {
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .admission.admission__tuition .block2 .disc_list .link__list {
    margin-bottom: 30px;
  }
}

.opencampus.opencampus__web_form .underlayer__head, .opencampus.opencampus__application .underlayer__head {
  padding-bottom: 140px;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
@media print, screen and (min-width: 768px) {
  .opencampus.opencampus__web_form .underlayer__head, .opencampus.opencampus__application .underlayer__head {
    padding-bottom: 205px;
  }
}
@media print, screen and (min-width: 920px) {
  .opencampus.opencampus__web_form .underlayer__head, .opencampus.opencampus__application .underlayer__head {
    padding-bottom: 270px;
  }
}
@media print, screen and (min-width: 1280px) {
  .opencampus.opencampus__web_form .underlayer__head, .opencampus.opencampus__application .underlayer__head {
    padding-bottom: 330px;
  }
}
.opencampus.opencampus__web_form .underlayer__head::after, .opencampus.opencampus__application .underlayer__head::after {
  content: none;
}
.opencampus.opencampus__web_form .underlayer__title, .opencampus.opencampus__application .underlayer__title {
  gap: 8px;
}
@media print, screen and (min-width: 768px) {
  .opencampus.opencampus__web_form .underlayer__title, .opencampus.opencampus__application .underlayer__title {
    gap: 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .opencampus.opencampus__web_form .underlayer__title, .opencampus.opencampus__application .underlayer__title {
    gap: 25px;
  }
}
@media print, screen and (min-width: 1280px) {
  .opencampus.opencampus__web_form .underlayer__title, .opencampus.opencampus__application .underlayer__title {
    gap: 35px;
  }
}
.opencampus.opencampus__web_form .underlayer__cornerBox, .opencampus.opencampus__application .underlayer__cornerBox {
  margin-top: -100px;
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 768px) {
  .opencampus.opencampus__web_form .underlayer__cornerBox, .opencampus.opencampus__application .underlayer__cornerBox {
    margin-top: -150px;
  }
}
@media print, screen and (min-width: 920px) {
  .opencampus.opencampus__web_form .underlayer__cornerBox, .opencampus.opencampus__application .underlayer__cornerBox {
    margin-top: -200px;
  }
}
@media print, screen and (min-width: 1280px) {
  .opencampus.opencampus__web_form .underlayer__cornerBox, .opencampus.opencampus__application .underlayer__cornerBox {
    margin-top: -250px;
  }
}
.opencampus.opencampus__web_form .underlayer__head {
  background-image: url(../img/opencampus/common/underlayer_head_bg_yellow.jpg);
}
.opencampus.opencampus__application .underlayer__head {
  background-image: url(../img/opencampus/common/underlayer_head_bg_yellow.jpg);
}

.sitepolicy .freedial dt {
  margin-bottom: 10px;
}
.sitepolicy .freedial a {
  font-size: 2.8rem;
  color: #E7404E;
  line-height: 1;
  display: flex;
  align-items: center;
  gap: 8px;
}
@media print, screen and (min-width: 768px) {
  .sitepolicy .freedial a {
    font-size: 3rem;
    gap: 10px;
  }
}
@media print, screen and (min-width: 920px) {
  .sitepolicy .freedial a {
    font-size: 3.1rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .sitepolicy .freedial a {
    font-size: 3.2rem;
  }
}
.sitepolicy .freedial img {
  width: 25px;
}
@media print, screen and (min-width: 768px) {
  .sitepolicy .freedial img {
    width: 27px;
  }
}
@media print, screen and (min-width: 920px) {
  .sitepolicy .freedial img {
    width: 28px;
  }
}
@media print, screen and (min-width: 1280px) {
  .sitepolicy .freedial img {
    width: 30px;
  }
}

.for-company .for-company__block3 .notes_text {
  margin-top: 10px;
}
.for-company .for-company__block3 .link__list {
  margin-bottom: 50px;
}

.donations .donations__block1 dl {
  display: grid;
  grid-template-columns: 1fr;
  align-items: start;
  gap: 5px 20px;
}
@media print, screen and (min-width: 768px) {
  .donations .donations__block1 dl {
    grid-template-columns: 117px 1fr;
  }
}
.donations .donations__block1 dt {
  color: #FFF;
  text-align: center;
  line-height: 1.4;
  width: 117px;
  padding: 1px 5px 3px 5px;
  margin-top: 3px;
  border-radius: 2px;
  background-color: #222;
}
.donations .donations__block1 dd:not(:last-child) {
  margin-bottom: 5px;
}
@media print, screen and (min-width: 768px) {
  .donations .donations__block1 dd:not(:last-child) {
    margin-bottom: 0;
  }
}
.donations .donations__block2 h3 {
  margin-top: 15px;
}
.donations .donations__block2 .bgBox {
  padding: 20px 20px;
  margin-top: 13px;
}
@media print, screen and (min-width: 768px) {
  .donations .donations__block2 .bgBox {
    padding: 24px 27px;
  }
}
@media print, screen and (min-width: 920px) {
  .donations .donations__block2 .bgBox {
    padding: 27px 34px;
  }
}
@media print, screen and (min-width: 1280px) {
  .donations .donations__block2 .bgBox {
    padding: 30px 40px;
  }
}
.donations .donations__block3 .bgBox {
  padding: 20px 20px;
}
@media print, screen and (min-width: 768px) {
  .donations .donations__block3 .bgBox {
    padding: 24px 27px;
  }
}
@media print, screen and (min-width: 920px) {
  .donations .donations__block3 .bgBox {
    padding: 27px 34px;
  }
}
@media print, screen and (min-width: 1280px) {
  .donations .donations__block3 .bgBox {
    padding: 30px 40px;
  }
}
.donations .donations__block3 .donations__contact {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}
@media print, screen and (min-width: 768px) {
  .donations .donations__block3 .donations__contact {
    gap: 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .donations .donations__block3 .donations__contact {
    gap: 25px;
  }
}
@media print, screen and (min-width: 1280px) {
  .donations .donations__block3 .donations__contact {
    gap: 30px;
  }
}
.donations .donations__block3 .donations__contact dt {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px 10px;
  background-color: #FFF;
}
@media print, screen and (min-width: 768px) {
  .donations .donations__block3 .donations__contact dt {
    width: 190px;
  }
}
.donations .donations__block3 .donations__contact dd {
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .donations .donations__block3 .donations__contact dd {
    flex: 1;
  }
}
.donations .donations__block4 .bgBox {
  padding: 20px 20px;
}
@media print, screen and (min-width: 768px) {
  .donations .donations__block4 .bgBox {
    padding: 22px 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .donations .donations__block4 .bgBox {
    padding: 24px 20px;
  }
}
@media print, screen and (min-width: 1280px) {
  .donations .donations__block4 .bgBox {
    padding: 25px 20px;
  }
}
.donations .donations__block4 p img {
  width: 100%;
}

.access .access__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 50px;
  padding-top: 10px;
}
@media print, screen and (min-width: 768px) {
  .access .access__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 11.28%;
  }
}
.access .access__block h2 {
  margin-bottom: 30px;
}
@media print, screen and (min-width: 768px) {
  .access .access__block h2 {
    margin-bottom: 35px;
  }
}
@media print, screen and (min-width: 920px) {
  .access .access__block h2 {
    margin-bottom: 40px;
  }
}
@media print, screen and (min-width: 1280px) {
  .access .access__block h2 {
    margin-bottom: 45px;
  }
}
.access .access__block h2 img {
  width: auto;
  height: 35px;
  display: block;
  margin-bottom: 18px;
}
@media print, screen and (min-width: 768px) {
  .access .access__block h2 img {
    height: 38px;
  }
}
.access .access__block h2 span {
  font-size: 1.8rem;
  line-height: 1.5;
  display: block;
}
@media print, screen and (min-width: 321px) {
  .access .access__block h2 span {
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .access .access__block h2 span {
    font-size: 2.1rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .access .access__block h2 span {
    font-size: 2.2rem;
  }
}
.access .access__block dl {
  display: grid;
  grid-template-columns: 60px 1fr;
  gap: 15px;
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .access .access__block dl {
    grid-template-columns: 78px 1fr;
    gap: 18px;
  }
}
.access .access__block dt {
  color: #FFF;
  line-height: 1.4;
  display: grid;
  align-items: center;
  justify-content: center;
  padding: 0 2px 3px 2px;
  border-radius: 2px;
  background-color: #222;
}
.access .access__block dd {
  line-height: 1.56;
}
.access .access__block .googlemap {
  margin-bottom: 12px;
}
.access .access__block p {
  line-height: 1.56;
}

.news .news__list {
  margin-bottom: 40px;
}
@media print, screen and (min-width: 768px) {
  .news .news__list {
    margin-bottom: 45px;
  }
}
@media print, screen and (min-width: 1280px) {
  .news .news__list {
    margin-bottom: 50px;
  }
}
.news .news__list li {
  border-bottom: 1px solid #E6E6E6;
}
.news .news__list a {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 20px;
  padding: 20px 40px 20px 0;
  position: relative;
  transition: color 0.3s;
}
@media print, screen and (min-width: 768px) {
  .news .news__list a {
    gap: 30px;
    padding: 22px 40px 22px 0;
  }
}
@media print, screen and (min-width: 920px) {
  .news .news__list a {
    gap: 35px;
    padding: 24px 40px 24px 0;
  }
}
@media print, screen and (min-width: 1280px) {
  .news .news__list a {
    gap: 40px;
    padding: 25px 40px 25px 0;
  }
}
.news .news__list a::before, .news .news__list a::after {
  width: 26px;
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  transition: transform 0.3s;
}
.news .news__list a::before {
  content: "";
  border-radius: 50%;
  background-color: #E7404E;
  z-index: 1;
}
.news .news__list a::after {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e900";
  font-size: 1.1rem;
  color: #FFF;
  z-index: 2;
}
@media (hover: hover) {
  .news .news__list a:where(:any-link, :enabled, summary, span, dt, div):hover {
    color: #E7404E;
  }
  .news .news__list a:where(:any-link, :enabled, summary, span, dt, div):hover::before, .news .news__list a:where(:any-link, :enabled, summary, span, dt, div):hover::after {
    transform: translateY(-50%) translateX(3px);
  }
}
.news .news__list .news__date {
  font-size: 1.3rem;
  line-height: 1.5;
}
@media print, screen and (min-width: 768px) {
  .news .news__list .news__date {
    font-size: 1.4rem;
  }
}
.news .news__list .news__title {
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .news .news__list .news__title {
    flex: 1;
  }
}
.news .pagination .nav-links {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
@media print, screen and (min-width: 768px) {
  .news .pagination .nav-links {
    gap: 10px;
  }
}
.news .pagination a:not(.dots):not(.prev):not(.next),
.news .pagination span:not(.dots):not(.prev):not(.next) {
  font-size: 1.3rem;
  line-height: 1;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 2px;
  border-radius: 50%;
  background-color: #E6E6E6;
  transition: color 0.3s, background 0.3s;
}
@media print, screen and (min-width: 321px) {
  .news .pagination a:not(.dots):not(.prev):not(.next),
  .news .pagination span:not(.dots):not(.prev):not(.next) {
    font-size: 1.4rem;
    width: 30px;
    height: 30px;
  }
}
@media (hover: hover) {
  .news .pagination a:not(.dots):not(.prev):not(.next):where(:any-link, :enabled, summary, span, dt, div):hover,
  .news .pagination span:not(.dots):not(.prev):not(.next):where(:any-link, :enabled, summary, span, dt, div):hover {
    color: #FFF;
    background-color: #E7404E;
  }
}
.news .pagination a:not(.dots):not(.prev):not(.next).current,
.news .pagination span:not(.dots):not(.prev):not(.next).current {
  color: #FFF;
  background-color: #E7404E;
}
.news .pagination .dots {
  transform: translateY(-5px);
}
.news .pagination .prev,
.news .pagination .next {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  position: relative;
}
@media print, screen and (min-width: 321px) {
  .news .pagination .prev,
  .news .pagination .next {
    width: 30px;
    height: 30px;
  }
}
.news .pagination .prev::after,
.news .pagination .next::after {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e900";
  font-size: 1.1rem;
  color: #E7404E;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
  transform: translateY(-50%);
  transition: transform 0.3s;
}
@media print, screen and (min-width: 321px) {
  .news .pagination .prev::after,
  .news .pagination .next::after {
    font-size: 1.2rem;
  }
}
@media (hover: hover) {
  .news .pagination .next:where(:any-link, :enabled, summary, span, dt, div):hover::after {
    transform: translateY(-50%) translateX(3px);
  }
}
.news .pagination .prev::after {
  transform: translateY(-50%) rotate(180deg);
}
@media (hover: hover) {
  .news .pagination .prev:where(:any-link, :enabled, summary, span, dt, div):hover::after {
    transform: translateY(-50%) rotate(180deg) translateX(-3px);
  }
}
.news .news__post .post__head {
  margin-bottom: 40px;
}
@media print, screen and (min-width: 768px) {
  .news .news__post .post__head {
    margin-bottom: 45px;
  }
}
@media print, screen and (min-width: 1280px) {
  .news .news__post .post__head {
    margin-bottom: 50px;
  }
}
.news .news__post h1 {
  font-size: 2.6rem;
  line-height: 1.4;
  margin-bottom: 35px;
}
@media print, screen and (min-width: 768px) {
  .news .news__post h1 {
    font-size: 2.8rem;
    margin-bottom: 38px;
  }
}
@media print, screen and (min-width: 920px) {
  .news .news__post h1 {
    font-size: 3rem;
    margin-bottom: 42px;
  }
}
@media print, screen and (min-width: 1280px) {
  .news .news__post h1 {
    font-size: 3.2rem;
    margin-bottom: 45px;
  }
}
.news .news__post .post__date {
  font-size: 1.4rem;
  text-align: right;
}
.news .news__post .post__contents {
  margin-bottom: 50px;
}
@media print, screen and (min-width: 768px) {
  .news .news__post .post__contents {
    margin-bottom: 70px;
  }
}
@media print, screen and (min-width: 920px) {
  .news .news__post .post__contents {
    margin-bottom: 85px;
  }
}
@media print, screen and (min-width: 1280px) {
  .news .news__post .post__contents {
    margin-bottom: 100px;
  }
}
.news .news__post .prev_next__link {
  display: flex;
  align-items: center;
}
.news .news__post .prev_next__link a {
  font-size: 1.4rem;
  font-weight: 500;
  display: block;
  position: relative;
  transition: color 0.3s;
}
.news .news__post .prev_next__link a::before, .news .news__post .prev_next__link a::after {
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  transition: transform 0.3s;
}
@media print, screen and (min-width: 768px) {
  .news .news__post .prev_next__link a::before, .news .news__post .prev_next__link a::after {
    width: 36px;
    height: 36px;
  }
}
@media print, screen and (min-width: 920px) {
  .news .news__post .prev_next__link a::before, .news .news__post .prev_next__link a::after {
    width: 38px;
    height: 38px;
  }
}
@media print, screen and (min-width: 1280px) {
  .news .news__post .prev_next__link a::before, .news .news__post .prev_next__link a::after {
    width: 40px;
    height: 40px;
  }
}
.news .news__post .prev_next__link a::before {
  content: "";
  border-radius: 50%;
  background-color: #E7404E;
  z-index: 1;
}
.news .news__post .prev_next__link a::after {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e900";
  font-size: 1.1rem;
  color: #FFF;
  z-index: 2;
}
@media print, screen and (min-width: 920px) {
  .news .news__post .prev_next__link a::after {
    font-size: 1.2rem;
  }
}
@media (hover: hover) {
  .news .news__post .prev_next__link a:where(:any-link, :enabled, summary, span, dt, div):hover {
    color: #E7404E;
  }
}
.news .news__post .prev_next__link .prev a {
  padding-left: 50px;
}
@media print, screen and (min-width: 768px) {
  .news .news__post .prev_next__link .prev a {
    padding-left: 60px;
  }
}
@media print, screen and (min-width: 920px) {
  .news .news__post .prev_next__link .prev a {
    padding-left: 70px;
  }
}
@media print, screen and (min-width: 1280px) {
  .news .news__post .prev_next__link .prev a {
    padding-left: 80px;
  }
}
.news .news__post .prev_next__link .prev a::before, .news .news__post .prev_next__link .prev a::after {
  left: 0;
  transform: translateY(-50%);
}
.news .news__post .prev_next__link .prev a::after {
  transform: translateY(-50%) rotate(180deg);
}
@media (hover: hover) {
  .news .news__post .prev_next__link .prev a:where(:any-link, :enabled, summary, span, dt, div):hover::after {
    transform: translateY(-50%) rotate(180deg) translateX(-3px);
  }
}
.news .news__post .prev_next__link .next {
  margin-left: auto;
}
.news .news__post .prev_next__link .next a {
  padding-right: 50px;
}
@media print, screen and (min-width: 768px) {
  .news .news__post .prev_next__link .next a {
    padding-right: 60px;
  }
}
@media print, screen and (min-width: 920px) {
  .news .news__post .prev_next__link .next a {
    padding-right: 70px;
  }
}
@media print, screen and (min-width: 1280px) {
  .news .news__post .prev_next__link .next a {
    padding-right: 80px;
  }
}
.news .news__post .prev_next__link .next a::before, .news .news__post .prev_next__link .next a::after {
  right: 0;
  transform: translateY(-50%);
}
@media (hover: hover) {
  .news .news__post .prev_next__link .next a:where(:any-link, :enabled, summary, span, dt, div):hover::after {
    transform: translateY(-50%) translateX(3px);
  }
}

.blockparts h2.wp-block-heading {
  font-size: 2.2rem;
  color: #FFF;
  line-height: 1.4;
  padding: 10px 15px;
  margin-bottom: 20px;
  background-color: #E7404E;
}
@media print, screen and (min-width: 768px) {
  .blockparts h2.wp-block-heading {
    font-size: 2.4rem;
    padding: 10px 18px;
  }
}
@media print, screen and (min-width: 920px) {
  .blockparts h2.wp-block-heading {
    font-size: 2.6rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .blockparts h2.wp-block-heading {
    font-size: 2.8rem;
    padding: 10px 20px;
  }
}
.blockparts h3.wp-block-heading {
  font-size: 2rem;
  color: #E7404E;
  line-height: 1.4;
  padding: 12px 10px;
  margin-bottom: 20px;
  border-top: 1px solid #E7404E;
  border-bottom: 1px solid #E7404E;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .blockparts h3.wp-block-heading {
    font-size: 2.2rem;
    padding: 12px 15px;
  }
}
@media print, screen and (min-width: 920px) {
  .blockparts h3.wp-block-heading {
    font-size: 2.3rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .blockparts h3.wp-block-heading {
    font-size: 2.4rem;
  }
}
.blockparts h3.wp-block-heading::before, .blockparts h3.wp-block-heading::after {
  width: 100%;
  height: 1px;
  background-color: #E7404E;
  left: 0;
  z-index: 1;
}
.blockparts h3.wp-block-heading::before {
  top: 3px;
}
.blockparts h3.wp-block-heading::after {
  bottom: 3px;
}
.blockparts h4.wp-block-heading {
  font-size: 1.8rem;
  color: #E7404E;
  line-height: 1.6;
  margin-bottom: 15px;
}
@media print, screen and (min-width: 768px) {
  .blockparts h4.wp-block-heading {
    font-size: 1.9rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .blockparts h4.wp-block-heading {
    font-size: 2rem;
  }
}
.blockparts h5.wp-block-heading {
  font-size: 1.6rem;
  line-height: 1.6;
  margin-bottom: 15px;
}
@media print, screen and (min-width: 768px) {
  .blockparts h5.wp-block-heading {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .blockparts h5.wp-block-heading {
    font-size: 1.8rem;
  }
}
.blockparts h2.wp-block-heading,
.blockparts h3.wp-block-heading,
.blockparts h4.wp-block-heading,
.blockparts h5.wp-block-heading {
  font-weight: 500;
  margin-top: 50px;
}
@media print, screen and (min-width: 768px) {
  .blockparts h2.wp-block-heading,
  .blockparts h3.wp-block-heading,
  .blockparts h4.wp-block-heading,
  .blockparts h5.wp-block-heading {
    margin-top: 57px;
  }
}
@media print, screen and (min-width: 920px) {
  .blockparts h2.wp-block-heading,
  .blockparts h3.wp-block-heading,
  .blockparts h4.wp-block-heading,
  .blockparts h5.wp-block-heading {
    margin-top: 64px;
  }
}
@media print, screen and (min-width: 1280px) {
  .blockparts h2.wp-block-heading,
  .blockparts h3.wp-block-heading,
  .blockparts h4.wp-block-heading,
  .blockparts h5.wp-block-heading {
    margin-top: 70px;
  }
}
.blockparts h2.wp-block-heading:first-child,
.blockparts h3.wp-block-heading:first-child,
.blockparts h4.wp-block-heading:first-child,
.blockparts h5.wp-block-heading:first-child {
  margin-top: 0;
}
.blockparts h2.wp-block-heading + h2.wp-block-heading,
.blockparts h2.wp-block-heading + h3.wp-block-heading,
.blockparts h2.wp-block-heading + h4.wp-block-heading,
.blockparts h2.wp-block-heading + h5.wp-block-heading,
.blockparts h3.wp-block-heading + h2.wp-block-heading,
.blockparts h3.wp-block-heading + h3.wp-block-heading,
.blockparts h3.wp-block-heading + h4.wp-block-heading,
.blockparts h3.wp-block-heading + h5.wp-block-heading,
.blockparts h4.wp-block-heading + h2.wp-block-heading,
.blockparts h4.wp-block-heading + h3.wp-block-heading,
.blockparts h4.wp-block-heading + h4.wp-block-heading,
.blockparts h4.wp-block-heading + h5.wp-block-heading,
.blockparts h5.wp-block-heading + h2.wp-block-heading,
.blockparts h5.wp-block-heading + h3.wp-block-heading,
.blockparts h5.wp-block-heading + h4.wp-block-heading,
.blockparts h5.wp-block-heading + h5.wp-block-heading {
  margin-top: 0;
}
.blockparts p {
  margin-block: 20px;
}
.blockparts p:first-child {
  margin-top: 0;
}
.blockparts p:last-child {
  margin-bottom: 0;
}
.blockparts p,
.blockparts .has-medium-font-size {
  font-size: 1.4rem !important;
}
@media print, screen and (min-width: 768px) {
  .blockparts p,
  .blockparts .has-medium-font-size {
    font-size: 1.5rem !important;
  }
}
@media print, screen and (min-width: 1280px) {
  .blockparts p,
  .blockparts .has-medium-font-size {
    font-size: 1.6rem !important;
  }
}
.blockparts .has-small-font-size {
  font-size: 1.3rem !important;
}
@media print, screen and (min-width: 920px) {
  .blockparts .has-small-font-size {
    font-size: 1.4rem !important;
  }
}
.blockparts .has-large-font-size {
  font-size: 1.6rem !important;
  line-height: 1.6;
}
@media print, screen and (min-width: 768px) {
  .blockparts .has-large-font-size {
    font-size: 1.7rem !important;
  }
}
@media print, screen and (min-width: 1280px) {
  .blockparts .has-large-font-size {
    font-size: 1.8rem !important;
  }
}
.blockparts .has-x-large-font-size {
  font-size: 1.8rem !important;
  line-height: 1.6;
}
@media print, screen and (min-width: 768px) {
  .blockparts .has-x-large-font-size {
    font-size: 1.9rem !important;
  }
}
@media print, screen and (min-width: 1280px) {
  .blockparts .has-x-large-font-size {
    font-size: 2rem !important;
  }
}
.blockparts a {
  color: #E7404E;
  text-decoration: underline;
  transition: opacity 0.3s;
}
@media (hover: hover) {
  .blockparts a:where(:any-link, :enabled, summary, span, dt, div):hover {
    opacity: 0.7;
  }
}
.blockparts a[target=_blank]::after, .blockparts a[href$=".pdf"]::after {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: 0;
  display: inline-block;
  margin: 0 5px;
}
.blockparts a[target=_blank]::after {
  content: "\e901";
  font-size: 0.8em;
}
.blockparts a[href$=".pdf"]::after {
  content: "\e902";
  font-size: 1em;
}
.blockparts .wp-block-image {
  margin-block: 30px;
}
.blockparts .wp-block-image:first-child {
  margin-top: 0;
}
.blockparts .wp-block-image:last-child {
  margin-bottom: 0;
}
.blockparts .wp-block-image img {
  display: block;
}
.blockparts .wp-block-image img:not(:last-child) {
  margin-bottom: 10px;
}
.blockparts .wp-block-image figcaption {
  font-size: 1.3rem;
}
@media print, screen and (min-width: 920px) {
  .blockparts .wp-block-image figcaption {
    font-size: 1.4rem;
  }
}
.blockparts .wp-block-flexible-table-block-table {
  width: 100%;
  padding-bottom: 12px;
  overflow: auto;
}
@media print, screen and (min-width: 768px) {
  .blockparts .wp-block-flexible-table-block-table {
    padding-bottom: 0;
    overflow: hidden;
  }
}
.blockparts .wp-block-flexible-table-block-table::-webkit-scrollbar {
  height: 5px;
}
.blockparts .wp-block-flexible-table-block-table::-webkit-scrollbar-thumb {
  background-color: #E7404E;
}
.blockparts .wp-block-flexible-table-block-table::-webkit-scrollbar-track {
  background-color: #FFF;
}
.blockparts .wp-block-flexible-table-block-table table {
  width: 200%;
  border-collapse: separate;
  border-spacing: 3px 6px;
}
@media print, screen and (min-width: 768px) {
  .blockparts .wp-block-flexible-table-block-table table {
    width: 100%;
  }
}
.blockparts .wp-block-flexible-table-block-table th,
.blockparts .wp-block-flexible-table-block-table td {
  vertical-align: middle;
}
.blockparts .wp-block-flexible-table-block-table th {
  font-size: 1.5rem;
  font-weight: 500;
  padding: 12px 12px;
  background-color: #FCF7EE;
}
@media print, screen and (min-width: 768px) {
  .blockparts .wp-block-flexible-table-block-table th {
    font-size: 1.6rem;
    padding: 15px 15px;
  }
}
@media print, screen and (min-width: 920px) {
  .blockparts .wp-block-flexible-table-block-table th {
    font-size: 1.7rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .blockparts .wp-block-flexible-table-block-table th {
    font-size: 1.8rem;
  }
}
.blockparts .wp-block-flexible-table-block-table td {
  padding: 12px 12px;
  background-color: #F2F2F2;
}
@media print, screen and (min-width: 768px) {
  .blockparts .wp-block-flexible-table-block-table td {
    padding: 15px 15px;
  }
}
.blockparts .wp-block-flexible-table-block-table figcaption {
  font-size: 1.2rem;
  color: #666;
  line-height: 1.5;
  margin-bottom: 10px;
}
.blockparts .wp-block-flexible-table-block-table table + figcaption {
  margin: 10px 0 0 0;
}
.blockparts .public-parts {
  display: grid;
  grid-template-columns: 1fr;
  gap: 50px;
}
@media print, screen and (min-width: 768px) {
  .blockparts .public-parts {
    grid-template-columns: repeat(2, 1fr);
    gap: 13.33%;
  }
}
.blockparts .public-parts .public__block h2 {
  font-size: 2.2rem;
  line-height: 1.5;
  margin-bottom: 15px;
}
@media print, screen and (min-width: 768px) {
  .blockparts .public-parts .public__block h2 {
    margin-bottom: 20px;
  }
}
.blockparts .public-parts .public__block ul li {
  border-bottom: 1px solid #E6E6E6;
}
.blockparts .public-parts .public__block ul a {
  color: #E7404E;
  text-decoration: underline;
  display: inline-block;
  padding-block: 14px;
}
.blockparts .parts_title {
  font-size: 1.6rem;
  font-weight: bold;
  color: #FF0100;
  line-height: 1.4;
  margin-top: 50px;
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .blockparts .parts_title {
    font-size: 1.8rem;
    margin-top: 58px;
  }
}
@media print, screen and (min-width: 920px) {
  .blockparts .parts_title {
    font-size: 1.9rem;
    margin-top: 64px;
  }
}
@media print, screen and (min-width: 1280px) {
  .blockparts .parts_title {
    font-size: 2rem;
    margin-top: 70px;
  }
}
.blockparts .parts_title:first-child {
  margin-top: 0;
}
.blockparts .parts_title + * {
  margin-top: 0 !important;
}

.form__wrap {
  max-width: 727px;
  margin-inline: auto;
}
.form__wrap .bg_lightbeige {
  border-radius: 10px;
  overflow: hidden;
}

.form_contents {
  padding: 20px 15px;
}
@media print, screen and (min-width: 768px) {
  .form_contents {
    padding: 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .form_contents {
    padding: 30px;
  }
}
@media print, screen and (min-width: 1280px) {
  .form_contents {
    padding: 40px;
  }
}
.form_contents .form_contents_item:not(:last-child) {
  margin-bottom: 25px;
}
@media print, screen and (min-width: 768px) {
  .form_contents .form_contents_item:not(:last-child) {
    margin-bottom: 27px;
  }
}
@media print, screen and (min-width: 920px) {
  .form_contents .form_contents_item:not(:last-child) {
    margin-bottom: 28px;
  }
}
@media print, screen and (min-width: 1280px) {
  .form_contents .form_contents_item:not(:last-child) {
    margin-bottom: 35px;
  }
}
.form_contents .form_title {
  display: flex;
  align-items: center;
  gap: 2px;
  margin-bottom: 10px;
}
.form_contents .require {
  color: #E7404E;
}
.form_contents .form_box {
  width: 100%;
}
.form_contents .form_box.hulf {
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .form_contents .form_box.hulf {
    width: calc((100% - 30px) / 2);
  }
}
.form_contents .name_grid {
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
  gap: 15px;
}
@media print, screen and (min-width: 768px) {
  .form_contents .name_grid {
    gap: 20px;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media print, screen and (min-width: 920px) {
  .form_contents .name_grid {
    gap: 25px;
  }
}
@media print, screen and (min-width: 1280px) {
  .form_contents .name_grid {
    gap: 30px;
  }
}
.form_contents .name_grid__item {
  display: grid;
  grid-template-columns: 40px 1fr;
  align-items: center;
}
.form_contents .highschool_flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.form_contents .highschool_flex .form_input {
  width: 100%;
  flex: 1;
}
@media print, screen and (min-width: 768px) {
  .form_contents .highschool_flex .form_input {
    width: calc((100% - 30px) / 2);
    flex: none;
  }
}
.form_contents .mail_flex {
  display: flex;
  align-items: center;
}
.form_contents .mail_flex .form_input {
  width: calc((100% - 35px) / 2);
}
.form_contents .mail_flex .input_label {
  text-align: center;
  width: 35px;
}
.form_contents .notes_text p {
  text-indent: 0;
  padding-left: 0;
}
.form_contents input,
.form_contents select {
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.form_contents input[readonly],
.form_contents select[readonly] {
  background: #E6E6E6;
}
.form_contents .form_input,
.form_contents .form_textarea {
  font-size: 1.4rem;
  line-height: 1.4;
  width: 100%;
  padding: 15px 18px;
  border-radius: 5px;
  background-color: #FFF;
}
@media print, screen and (min-width: 768px) {
  .form_contents .form_input,
  .form_contents .form_textarea {
    padding: 16px 20px;
  }
}
.form_contents .form_input::placeholder,
.form_contents .form_textarea::placeholder {
  color: #999;
}
.form_contents .form_input::-ms-input-placeholder,
.form_contents .form_textarea::-ms-input-placeholder {
  color: #999;
}
.form_contents .form_input:-ms-input-placeholder,
.form_contents .form_textarea:-ms-input-placeholder {
  color: #999;
}
.form_contents .form_textarea {
  height: 200px;
  resize: vertical;
}
.form_contents .form_select {
  border-radius: 5px;
  background-color: #FFF;
  position: relative;
}
.form_contents .form_select::after {
  width: 8px;
  height: 8px;
  border-right: 2px solid #E7404E;
  border-bottom: 2px solid #E7404E;
  top: 50%;
  right: 18px;
  z-index: 1;
  transform: translateY(-50%) rotate(45deg);
}
@media print, screen and (min-width: 768px) {
  .form_contents .form_select::after {
    right: 20px;
  }
}
.form_contents .form_select select {
  font-size: 1.4rem;
  line-height: 1.4;
  width: 100%;
  padding: 15px 55px 15px 18px;
}
@media print, screen and (min-width: 768px) {
  .form_contents .form_select select {
    padding: 16px 60px 16px 20px;
  }
}
.form_contents .form_radio {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px 20px;
  padding-top: 7px;
}
@media print, screen and (min-width: 768px) {
  .form_contents .form_radio {
    gap: 20px 30px;
  }
}
@media print, screen and (min-width: 920px) {
  .form_contents .form_radio {
    gap: 20px 35px;
  }
}
@media print, screen and (min-width: 1280px) {
  .form_contents .form_radio {
    gap: 20px 40px;
  }
}
.form_contents .form_radio .form_radio_item {
  width: calc((100% - 20px) / 2);
}
@media print, screen and (min-width: 768px) {
  .form_contents .form_radio .form_radio_item {
    width: auto;
  }
}
.form_contents .form_radio .form_radio_item label {
  line-height: 1.4;
  display: block;
  padding: 0 0 0 30px;
  position: relative;
}
.form_contents .form_radio .form_radio_item label::before, .form_contents .form_radio .form_radio_item label::after {
  border-radius: 50%;
  top: 50%;
  transform: translateY(-50%);
}
.form_contents .form_radio .form_radio_item label::before {
  width: 24px;
  height: 24px;
  background-color: #FFF;
  left: 0;
}
.form_contents .form_radio .form_radio_item label::after {
  width: 14px;
  height: 14px;
  background-color: #E7404E;
  left: 5px;
  opacity: 0;
  transition: opacity 0.3s;
}
.form_contents .form_radio .form_radio_item input[type=radio] {
  display: none;
}
.form_contents .form_radio .form_radio_item input[type=radio]:checked + label::after {
  opacity: 1;
}
.form_contents .form_checkbox {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px 20px;
  padding-top: 7px;
}
@media print, screen and (min-width: 768px) {
  .form_contents .form_checkbox {
    gap: 20px 24px;
  }
}
@media print, screen and (min-width: 920px) {
  .form_contents .form_checkbox {
    gap: 20px 27px;
  }
}
@media print, screen and (min-width: 1280px) {
  .form_contents .form_checkbox {
    gap: 20px 30px;
  }
}
.form_contents .form_checkbox .form_checkbox_item label {
  line-height: 1.4;
  display: block;
  padding: 0 0 0 30px;
  position: relative;
}
.form_contents .form_checkbox .form_checkbox_item label::before {
  width: 24px;
  height: 24px;
  background-color: #FFF;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.form_contents .form_checkbox .form_checkbox_item label::after {
  width: 20px;
  height: 8px;
  border-left: 2px solid #E7404E;
  border-bottom: 2px solid #E7404E;
  top: calc(50% - 1px);
  left: 3px;
  transform: translateY(-50%) rotate(-45deg);
  opacity: 0;
  transition: opacity 0.3s;
}
.form_contents .form_checkbox .form_checkbox_item input[type=checkbox] {
  display: none;
}
.form_contents .form_checkbox .form_checkbox_item input[type=checkbox]:checked + label::after {
  opacity: 1;
}
.form_contents .form_error_box,
.form_contents .form_note_box {
  font-weight: bold;
  text-align: center;
  padding: 30px;
  margin-bottom: 50px;
  border: 3px solid #222;
}
.form_contents .form_error_box {
  color: #E7404E;
}
.form_contents .form_error {
  font-size: 1.4rem;
  font-weight: bold;
  color: #E7404E;
  line-height: 1.5;
  margin-top: 10px;
}
.form_contents.confirm .form_contents_item {
  display: grid;
  grid-template-columns: 1fr;
  align-items: start;
  gap: 5px;
  border-bottom: 1px solid #E6E6E6;
}
@media print, screen and (min-width: 768px) {
  .form_contents.confirm .form_contents_item {
    grid-template-columns: 160px 1fr;
    gap: 20px;
  }
}
@media print, screen and (min-width: 920px) {
  .form_contents.confirm .form_contents_item {
    grid-template-columns: 170px 1fr;
  }
}
@media print, screen and (min-width: 1280px) {
  .form_contents.confirm .form_contents_item {
    grid-template-columns: 180px 1fr;
  }
}
.form_contents.confirm .form_contents_item:not(:last-child) {
  margin-bottom: 0;
}
.form_contents.confirm .form_title {
  padding: 15px 0 0 0;
  margin-bottom: 0;
}
@media print, screen and (min-width: 768px) {
  .form_contents.confirm .form_title {
    padding: 18px 0 18px 0;
  }
}
@media print, screen and (min-width: 920px) {
  .form_contents.confirm .form_title {
    padding: 22px 0 22px 0;
  }
}
@media print, screen and (min-width: 1280px) {
  .form_contents.confirm .form_title {
    padding: 25px 0 25px 0;
  }
}
.form_contents.confirm .form_box {
  padding: 0 0 15px 0;
}
@media print, screen and (min-width: 768px) {
  .form_contents.confirm .form_box {
    padding: 18px 0 18px 0;
  }
}
@media print, screen and (min-width: 920px) {
  .form_contents.confirm .form_box {
    padding: 22px 0 22px 0;
  }
}
@media print, screen and (min-width: 1280px) {
  .form_contents.confirm .form_box {
    padding: 25px 0 25px 0;
  }
}
.form_contents.thanks .form_thanks h2 {
  font-size: 1.8rem;
  line-height: 1.4;
  margin-bottom: 35px;
}
@media print, screen and (min-width: 321px) {
  .form_contents.thanks .form_thanks h2 {
    font-size: 2rem;
    margin-bottom: 40px;
  }
}
@media print, screen and (min-width: 768px) {
  .form_contents.thanks .form_thanks h2 {
    font-size: 2.4rem;
    margin-bottom: 47px;
  }
}
@media print, screen and (min-width: 920px) {
  .form_contents.thanks .form_thanks h2 {
    font-size: 2.8rem;
    margin-bottom: 54px;
  }
}
@media print, screen and (min-width: 1280px) {
  .form_contents.thanks .form_thanks h2 {
    font-size: 3.2rem;
    margin-bottom: 60px;
  }
}
.form_contents.thanks .form_thanks p:not(:last-child) {
  margin-bottom: 20px;
}

.confirm_form_note_box {
  font-size: 1.8rem;
  line-height: 1.4;
  margin-bottom: 35px;
}
@media print, screen and (min-width: 321px) {
  .confirm_form_note_box {
    font-size: 2rem;
    margin-bottom: 40px;
  }
}
@media print, screen and (min-width: 768px) {
  .confirm_form_note_box {
    font-size: 2.4rem;
    margin-bottom: 47px;
  }
}
@media print, screen and (min-width: 920px) {
  .confirm_form_note_box {
    font-size: 2.8rem;
    margin-bottom: 54px;
  }
}
@media print, screen and (min-width: 1280px) {
  .confirm_form_note_box {
    font-size: 3.2rem;
    margin-bottom: 60px;
  }
}

.submit_area {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 15px;
  margin-top: 20px;
}
@media print, screen and (min-width: 768px) {
  .submit_area {
    gap: 30px;
    margin-top: 35px;
  }
}
@media print, screen and (min-width: 920px) {
  .submit_area {
    gap: 40px;
    margin-top: 45px;
  }
}
@media print, screen and (min-width: 1280px) {
  .submit_area {
    gap: 50px;
    margin-top: 55px;
  }
}
.submit_area.end {
  justify-content: end;
}
.submit_area.center {
  justify-content: center;
}
.submit_area.between {
  justify-content: start;
}
@media print, screen and (min-width: 768px) {
  .submit_area.between {
    justify-content: space-between;
  }
}
.submit_area.between .submit_btn {
  margin-left: auto;
}
.submit_area button {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.5;
  width: 100%;
  position: relative;
  transition: color 0.3s;
}
@media print, screen and (min-width: 768px) {
  .submit_area button {
    width: auto;
  }
}
.submit_area button::before, .submit_area button::after {
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.3s;
}
@media print, screen and (min-width: 768px) {
  .submit_area button::before, .submit_area button::after {
    width: 36px;
    height: 36px;
  }
}
@media print, screen and (min-width: 920px) {
  .submit_area button::before, .submit_area button::after {
    width: 38px;
    height: 38px;
  }
}
@media print, screen and (min-width: 1280px) {
  .submit_area button::before, .submit_area button::after {
    width: 40px;
    height: 40px;
  }
}
.submit_area button::before {
  content: "";
  border: 1px solid #E7404E;
  border-radius: 50%;
  background-color: #E7404E;
  z-index: 1;
}
.submit_area button::after {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e900";
  font-size: 1.1rem;
  color: #FFF;
  z-index: 2;
}
@media print, screen and (min-width: 920px) {
  .submit_area button::after {
    font-size: 1.2rem;
  }
}
@media (hover: hover) {
  .submit_area button:where(:any-link, :enabled, summary, span, dt, div):hover {
    color: #E7404E;
  }
}
.submit_area .submit_btn button {
  padding-right: 40px;
}
@media print, screen and (min-width: 768px) {
  .submit_area .submit_btn button {
    padding-right: 47px;
  }
}
@media print, screen and (min-width: 920px) {
  .submit_area .submit_btn button {
    padding-right: 54px;
  }
}
@media print, screen and (min-width: 1280px) {
  .submit_area .submit_btn button {
    padding-right: 60px;
  }
}
.submit_area .submit_btn button::before, .submit_area .submit_btn button::after {
  right: 0;
}
@media (hover: hover) {
  .submit_area .submit_btn button:where(:any-link, :enabled, summary, span, dt, div):hover::before, .submit_area .submit_btn button:where(:any-link, :enabled, summary, span, dt, div):hover::after {
    transform: translateY(-50%) translateX(3px);
  }
}
.submit_area .back_btn button {
  padding-left: 40px;
}
@media print, screen and (min-width: 768px) {
  .submit_area .back_btn button {
    padding-left: 47px;
  }
}
@media print, screen and (min-width: 920px) {
  .submit_area .back_btn button {
    padding-left: 54px;
  }
}
@media print, screen and (min-width: 1280px) {
  .submit_area .back_btn button {
    padding-left: 60px;
  }
}
.submit_area .back_btn button::before, .submit_area .back_btn button::after {
  left: 0;
}
.submit_area .back_btn button::before {
  background-color: #FFF;
}
.submit_area .back_btn button::after {
  color: #E7404E;
  transform: translateY(-50%) rotate(180deg);
}
@media (hover: hover) {
  .submit_area .back_btn button:where(:any-link, :enabled, summary, span, dt, div):hover::before, .submit_area .back_btn button:where(:any-link, :enabled, summary, span, dt, div):hover::after {
    transform: translateY(-50%) translateX(-3px) rotate(180deg);
  }
}
.submit_area .link_button {
  margin-left: 0;
}

.grecaptcha-badge {
  bottom: 20px !important;
  z-index: 5 !important;
}