@charset "UTF-8";
:root {
  --sub-font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  --main-txt-color: #231815;
  --main-orange: #ef8200;
  --course-bridal: #f8b62d;
  --course-bridal-sub: #f8b62d;
  --course-bridal-sub2: #f8b62d;
  --course-bridal-light: #feeccc;
  --course-bridal-light2: #eaf3e6;
  --course-bridal-light-light: #feeccc;
  --course-bridal-light-middle: #f8b62d;
  --course-foreignbusiness: #ed7969;
  --course-foreignbusiness-light: #fbdbd1;
  --course-foreignbusiness-light2: #f9f1d9;
  --course-foreignbusiness-light-light: #fdebe5;
  --course-foreignbusiness-light-middle: #ed7969;
  --course-airline: #1ba8ba;
  --course-airline-sub: #0fb7c9;
  --course-airline-light: #bbe5ea;
  --course-airline-light2: #ddf2f5;
  --course-airline-light-light: #e8f6f8;
  --course-airline-light-middle: #8dd3dc;
  --course-groundstaff: #4f88c8;
  --course-groundstaff-sub: #4f88c8;
  --course-groundstaff-light: #d1dbf0;
  --course-groundstaff-light2: #ddf2f5;
  --course-groundstaff-light-light: #cfd9ef;
  --course-groundstaff-light-middle: #bccbe9;
  --course-groundhandling: #6db576;
  --course-groundhandling-sub: #6db576;
  --course-groundhandling-light: #d2e5cf;
  --course-groundhandling-light2: #d2e5cf;
  --course-groundhandling-light-light: #eaf3e9;
  --course-groundhandling-light-middle: #a9cfa5;
  --page-orange: #f6bb80;
}
html {
  /* scroll-behavior: smooth;
  scroll-padding-top: 151px; */
}
html.open {
  overflow: hidden;
}
body {
  font-family: "メイリオ", "Meiryo", "MS ゴシック", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
  color: var(--main-txt-color);
}
.show-pc {
  display: block !important;
}
.show-sp {
  display: none !important;
}
/* 固定サイドナビ */
.p-side-fixed-nav {
  z-index: 100;
  position: fixed;
  top: 26%;
  right: 0;
  text-align: right;
}
.p-side-fixed-nav-sp {
    display: none;
}
main {
  margin-top: 151px;
}

main.oc {margin-top:0px;}

@media screen and (max-width: 960px){
  main {
    margin-top: 0;
  }
  .show-pc {
    display: none !important;
  }
  .show-sp {
    display: block !important;
  }
  .p-side-fixed-nav {
    display: none;
  }
  
  .p-side-fixed-nav-sp {
	display: block;
	z-index: 100;
	position: fixed;
	bottom: 10%;
	right: 0;
	text-align: right;
  }
  
  
}
/* header */
.l-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #fff;
  z-index: 100;
}
.l-header.oc {position: relative;}

.l-header__contents {
  max-width: 1160px;
  margin: 0 auto 23px;
  padding: 8px 20px 0;
}
.l-header__top {
  display: flex;
  justify-content: space-between;
  gap: 1em;
}
.p-header__disc {
  font-size: 12px;
}
.l-header__top--right {
  display: flex;
  align-items: flex-end;
  flex-shrink: 0;
}
.p-header__document {
  font-size: 13px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 32px;
  color: #fff;
  background-color: #362f00;
  border-radius: 3px;
}
.p-header__opencampus {
  font-size: 13px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 160px;
  height: 32px;
  color: #fff;
  background-color: #ffa600;
  border-radius: 3px;
  margin-left: 5px;
}
.p-header__tel {
  font-size: 12px;
  font-family: var(--sub-font-family);
  text-align: right;
  margin: 0 6px 0 13px;
  line-height: 1;
  position: relative;
  bottom: -3px;
}
.p-header__tel span {
  display: block;
  font-size: 23px;
  margin-top: 3px;
}
.p-header__tel span::before {
  content: "";
  display: inline-block;
  width: 28px;
  height: 18px;
  background: url(../img/common/freedial.png) no-repeat;
  background-size: cover;
  margin-right: 13px;
}
.l-header__middle {
  display: flex;
  justify-content: space-between;
}
.p-header__title {
  position: relative;
  top: -15px;
}
.l-header__middle--right {
  display: flex;
  align-items: center;
  line-height: 1;
}
.p-header__otherlink {
  display: flex;
  gap: 13px;
}
.p-header__otherlink a {
  display: flex;
  align-items: center;
  font-size: 13px;
  color: var(--main-txt-color);
}
.p-header__otherlink a::before {
  content: "";
  display: inline-block;
  background: url(../img/common/s-arrow-orange.png) no-repeat;
  background-size: cover;
  width: 12px;
  height: 12px;
  margin-right: 4px;
}
.p-header__otherlink li:nth-child(even) a::before {
  background-image: url(../img/common/s-arrow-yellow.png);
}
.p-header__snslink {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 4px 0 20px;
}
.p-header__snslink a {
  display: block;
  width: 30px;
}
.p-header__nav {
  position: relative;
}
.p-header-nav__list {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
}
.p-header-nav__list li:first-child .p-header-nav__link {
  border-left: 1px solid var(--main-orange);
}
.p-header-nav__link {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 20px;
  font-size: 15px;
  text-align: center;
  color: #000;
  border-right: 1px solid var(--main-orange);
}
.p-header-nav__link:hover {
  font-weight: bold;
  color: var(--main-orange);
}
.current .p-header-nav__link {
  font-weight: bold;
  color: var(--main-orange);
}
.p-header-nav__sub-menu {
  display: none;
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  padding-top: 23px;
  position: absolute;
  z-index: 1000;
  left: 0;
  top: 20px;
  background: #fff;
}
.p-header-nav__sub-menu__wrapper {
  padding: 35px 0 40px;
  background: #f2f2f2;
}
.p-header-nav__sub-menu.ac {
  display: block;
}
.p-header-nav__sub-menu__title {
  font-size: 20px;
  font-weight: bold;
  color: #000;
  text-align: center;
  margin-bottom: 20px;
}
.p-header-nav__sub-menu__list {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-bottom: 18px;
}
.p-header-nav__sub-menu__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 300px;
  height: 50px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  background-color: #ffa600;
  line-height: normal;
  position: relative;
}
.p-header-nav__sub-menu__link::after {
  content: "";
  display: block;
  background: url(../img/common/header-nav-arrow.png) no-repeat;
  background-size: cover;
  width: 11px;
  height: 11px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
}
.p-header-nav__sub-menu__link:hover {
  background-color: var(--main-orange);
  opacity: 1;
}
.p-nav-course__list {
  display: flex;
  gap: 10px;
  max-width: 962px;
  margin: 0 auto;
}
.p-nav-course__item:nth-child(2),.p-nav-course__item:nth-child(5){
  margin-left: 10px;
} 
.p-nav-course__list a {
  opacity: 1;
}
.p-nav-course__list a:hover .p-nav-course__thumnail {
  opacity: .7;
}
.p-nav-course__title {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  color: #000;
  margin-top: 14px;
  line-height: 1;
}
.p-nav-course__title span {
  font-size: 12px;
  display: block;
  margin-bottom: 3px;
}
.p-nav-course__title small {
  font-size: 14px;
}
.p-nav-course__list a:hover .p-nav-course__title {
  color: var(--main-orange);
}

@media screen and (min-width: 960px) and (max-width: 1160px) {
  .p-header__disc {
    font-size: 11px;
  }
  .p-header-nav__sub-menu__list {
    gap: 15px;
  }
  .p-header-nav__sub-menu__link {
    width: 220px;
    font-size: 16px;
  }
  .p-nav-course__list {
    max-width: 942px;
  }
}

@media screen and (max-width: 960px) {
  .l-header {
    position: static;
  }
  .l-header.oc {position: relative;}
  .l-header__contents {
    margin: 0;
    padding: 8px 4.3%;
  }
  .l-header__top {
    display: none;
  }
  .p-header__otherlink {
    display: none;
  }
  .l-header__bottom {
    display: none;
  }
  .p-header__title {
    top: 0;
    width: clamp(123px,50vw,330px);
  }
}

/* メインスライダー */
.p-slider__list .slick-slide{
  margin: 0 5px;
}
.p-slider__button--prev {
  z-index: 20;
  position: absolute;
  top: calc(50% - 18px);
  left: calc((100% - 1120px) / 2);
  width: 24px;
  height: 36px;
  background: url(../img/top/prev.png) left top no-repeat;
  cursor: pointer;
}
.p-slider__button--next {
  z-index: 20;
  position: absolute;
  top: calc(50% - 18px);
  right: calc((100% - 1120px) / 2);
  width: 24px;
  height: 36px;
  background: url(../img/top/next.png) left top no-repeat;
  cursor: pointer;
}
.p-slider .slide-dots {
  position: relative;
  margin: 0 auto;
  text-align: center;
  height: 24px;
}
.p-slider .slide-dots li {
  display: inline-block;
  margin: 16px 5px 0;
}
.p-slider .slide-dots button {
  padding: 0;
  color: transparent;
  outline: none;
  width: 7px;
  border: unset;
  height: 7px;
  display: block;
  background: #adadad;
  cursor: pointer;
}
.p-slider .slide-dots .slick-active button {
  background-color: var(--main-orange);
}

@media screen and (min-width: 960px) and (max-width: 1160px) {
  .p-slider .slick-initialized .slick-slide {
    max-width: 960px;
  }
  .p-slider__button--prev {
    left: calc((100% - 960px) / 2);
  }
  .p-slider__button--next {
    right: calc((100% - 960px) / 2);
  }
}
@media screen and (max-width: 960px) {
  .p-slider__list .slick-slide{
    margin: 0;
  }
  .p-slider__button--prev,.p-slider__button--next {
    display: none !important;
  }
  .p-slider .slide-dots {
    height: 14px;
  }
  .p-slider .slide-dots li {
    margin: 6px 5px 0;
  }    
}

/* toppage */
.p-head__title {
  font-size: 20px;
  font-weight: bold;
  color: #000000;
  text-align: center;
}
.p-head__title::after {
  content: "";
  display: block;
  width: 90px;
  height: 1px;
  background-color: var(--main-orange);
  margin: 8px auto 25px;
}
.p-head__subtitle {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 8px;
  font-size: 30px;
  font-weight: normal;
}

@media screen and (max-width: 960px) {
  .p-head__title {
    font-size: clamp(14px,3vw,20px);
  }
  .p-head__title::after {
    max-width: 90px;
    width: 5em;
    margin-bottom: 0.5em;
  }
  .p-head__subtitle {
    gap: 3px;
    font-size: clamp(17px,4vw,30px);
  }
  .p-head__subtitle img {
    width: clamp(41px,7vw,59px);
  }     
}
/* topお知らせ */
.p-top-article {
  margin-top: 30px;
}
.p-top-news {
  margin-top: 50px;
}

.p-top-sns__wrapper .p-top-news{text-align: left;}

.p-top-news__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: calc(80px / 3);
  max-width: 1260px;
  margin: 0 auto 70px;
  padding: 0 20px;
}
.p-top-news__item {
  display: flex;
  flex-direction: column;
}
.p-top-news__link {
  display: block;
  color: var(--main-txt-color);
  margin-bottom: 5px;
}
.p-top-news__image-box {
  max-width: 305px;
  height: auto;
  aspect-ratio: 305/285;
  border-radius: 5px;
  overflow: hidden;
}
.p-top-news__image-box img {
  min-height: 100%;
  transition: transform .5s ease;
  object-fit: cover;
}
.p-top-news__link:hover {
  opacity: 1;
}
.p-top-news__link:hover .p-top-news__image-box img {
  transform: scale(1.1);
}
.p-top-news__link:hover .p-top-news__lead {
  color: var(--main-orange);
}
.p-top-news__date {
  font-size: 13px;
  margin-top: 5px;
}
.p-top-news__lead {
  font-size: 14px;
}
.p-top-news__tag {
  min-height: 66px;
  background-color: #fdecd9;
  border-radius: 5px;
  line-height: 1;
  padding: 10px 13px;
  margin-top: auto;
}
.p-top-news__tag a {
  font-size: 11px;
  color: var(--main-txt-color);
}
.p-more-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 250px;
  height: 40px;
  margin: 0 auto;
  font-size: 16px;
  color: #fff;
  background-color: var(--main-orange);
  border-radius: 21px;
  position: relative;
  line-height: normal;
}
.p-more-btn::after {
  content: "";
  display: block;
  background: url(../img/top/more-link-orange.png) no-repeat;
  background-size: cover;
  width: 18px;
  height: 18px;
  position: absolute;
  right: 19px;
}
.p-more-btn:hover {
  background-color: #fbb03b;
  opacity: 1;
}
.p-more-btn:hover::after {
  content: url(../img/top/more-link-yellow.png);
}


#announcement{
	border:5px solid #c33;
	max-width: 1260px;
	padding: 3vw;
	text-align: center;
	margin: 20px auto;
}

@media screen and (max-width: 960px) {
  .p-top-news {
    margin-top: 30px;
  }
  .p-top-news__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5em 1em;
    margin: 0 auto 35px;
    padding: 0 4.3%;
  }
  .p-top-news__image-box {
    max-width: 100%;
  }
  .p-top-news__date {
    font-size: clamp(11px,2vw,13px);
  }
  .p-top-news__lead {
    font-size: clamp(12px,2vw,14px);
  } 
  .p-top-news__tag {
    min-height: 55px;
    padding: 8px 10px;
  }
  .p-top-news__tag a {
    font-size: clamp(10px,2vw,11px);
  }
  .p-more-btn {
    width: 230px;
    height: 35px;
    font-size: 14px;
  }
  .p-more-btn::after {
    right: 10px;
  }
}

/* topオープンキャンパス */
.p-top-opencampus {
  background-color: #ece7dd;
  margin-top: 90px;
  padding: 40px 20px 50px;
}
.p-top-opencampus__wrapper {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 20px 60px;
  background-color: #fff;
  border-radius: 10px;
  text-align: center;
}
.p-top-opencampus__wrapper img {
  margin-top: 40px;
  margin-bottom: 40px;
}

.p-top-opencampus .p-more-btn {
  width: 450px;
  height: 50px;
  border-radius: 25px;
}

@media screen and (max-width: 960px) {
  .p-top-opencampus {
    background-color: #ece7dd;
    margin-top: 42px;
    padding: 15px 4.3% 20px;
  }
  .p-top-opencampus__wrapper {
    padding: 0 5px 15px;
  }
  .p-top-opencampus__wrapper img {
    margin-top: -15px;
    margin-bottom: 20px;
  } 
  .p-top-opencampus .p-more-btn {
    width: 280px;
    height: 35px;
    font-size: 11px;
  }
}

/* topSNS */
.p-top-sns {
  padding: 100px 20px 80px;
  text-align: center;
}
.p-top-info {
  display: flex;
  gap: 40px;
  max-width: 850px;
  margin: 30px auto 0;
}
.p-top-info-insta {
  max-width: 320px;
  width: 100%;
}
.p-top-info-insta .insta-feed {
  margin-top: 15px;
}
.insta-feed #sb_instagram #sbi_images {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.insta-feed #sb_instagram.sbi_col_3 #sbi_images .sbi_item {
  width: 100px;
  height: auto;
  aspect-ratio: 1/1;
  border-radius: 4px;
}
.p-top-info-movie {
  max-width: 490px;
  width: 100%;
}
.p-top-info-news__title {
  display: flex;
  align-items: baseline;
  justify-content: center;
  flex-wrap: wrap;
  gap: 9px;
  font-size: 22px;
  font-weight: bold;
}
.p-top-info-news__subtitle {
  font-size: 14px;
  font-weight: bold;
  font-family: var(--sub-font-family);
  margin-bottom: 30px;
}
.p-top-info-line {
  max-width: 850px;
  margin: 30px auto 0;
  margin-bottom: 60px;
}

@media screen and (max-width: 960px) {
  .p-top-sns {
    padding: 45px 4.3% 30px;
  }
  .p-top-info {
    flex-direction: column;
    gap: 30px;
    margin: 30px auto 0;
  }
  .p-top-info-insta {
    max-width: 100%;
  }
  .insta-feed #sb_instagram #sbi_images {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
  .insta-feed #sb_instagram.sbi_col_3 #sbi_images .sbi_item {
    width: 100%;
  }
  .p-top-info-movie {
    max-width: 100%;
  }
  .p-top-info-movie a img {
    max-width: none;
    width: 100%;
  }
  .p-top-info-news__subtitle {
    margin-bottom: 15px;
  }
}

/* topコース紹介 */
.p-top-course {
  padding: 80px 20px 230px;
  background: url(../img/top/course-haikei.jpg) repeat-x;
  background-size: contain;
  background-position: top center;
}
.p-top-course__list--top {
  display: flex;
  gap: 14px;
  max-width: 793px;
  margin: 42px auto 0;
}
.p-top-course__list--bottom {
  display: flex;
  gap: 13px;
  max-width: 793px;
  margin: 65px auto 0;
}
.p-top-course__item {
  text-align: center;
}
.p-top-course__item a {
  color: var(--main-txt-color);
}
.p-top-course__item a:hover {
  opacity: 1;
}
.p-top-course__item figure {
  border: 1px solid var(--main-orange);
  border-radius: 5px;
  overflow: hidden;
}
.p-top-course__item figure img {
  transition: transform .5s ease;
}
.p-top-course__item a:hover figure img {
  transform: scale(1.1);
}
.p-top-course__item p {
  font-size: 12px;
  font-weight: bold;
}
.p-top-course__item__title {
  font-size: 17px;
  font-weight: normal;
  border-bottom: 1px solid #b4b4b5;
  margin: 12px 0 10px;
  padding-bottom: 8px;
}
.p-top-course__item a:hover .p-top-course__item__title {
  color: var(--main-orange);
}
.p-top-course__item__title span {
  display: block;
  font-size: 12px;
}
.p-top-course__item a:hover .p-top-course__item__title span {
  color: var(--main-txt-color);
}

@media screen and (max-width: 960px) {
  .p-top-course {
    padding: 30px 4.3% 65px;
    background-size: 250%;
  }
  .p-top-course__list--top {
    flex-direction: column;
    gap: 30px;
    max-width: 100%;
    margin: 42px auto 0;
  }
  .p-top-course__list--bottom {
    flex-direction: column;
    gap: 30px;
    max-width: 100%;
    margin: 30px auto 0;
  }
  .p-top-course__item img {
    max-width: none;
    width: 100%;
  }
  .p-top-course__item p {
    font-size: clamp(10px,2vw,12px);
    font-weight: normal;
  }
  .p-top-course__item__title {
    font-size: clamp(14px,2vw,17px);
    font-weight: bold;
    margin: 10px 0 5px;
    padding-bottom: 5px;
  }
}

/* footer */
/* footerオープンキャンパス */
.p-footer-opencampus {
  background-color: #fff;
  background: url(../img/common/bg_oc_footer.jpg) #fff repeat-x;
  background-size: contain;
  background-position-y: bottom;
  padding: 0px;
}
.p-footer-opencampus div.p-footer-opencampus_in{
	max-width: 960px;
	margin: 0 auto;
}




.p-footer-opencampus__image {
  text-align: center;
}
.p-footer-reserve__list {
  max-width: 960px;
  margin: 0 auto;
  display: flex;
  gap: 20px;
}

.p-footer-reserve__item__wrap {
	background-color: #fff; padding:20px 0;
	}


.p-footer-reserve__item--line {
  display: block;
  border: 2px solid #06c755;
  border-radius: 10px;
  padding: 15px 24px 13px 14px;
  background-color: #fff;
}
.p-footer-reserve__title {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  width: 340px;
  height: 32px;
  background-color: #06c755;
  border-radius: 16px;
  margin: 0 auto;
  line-height: normal;
}
.p-footer-reserve__details {
  display: flex;
  gap: 10px;
}
.p-footer-reserve__left {
  max-width: 310px;
}
.p-footer-reserve__box {
  display: flex;
  gap: 17px;
  margin-top: 10px;
}
.p-footer-reserve__box p {
  font-size: 15px;
  line-height: 1.4;
  margin-top: 4px;
  color: var(--main-txt-color);
}
.p-footer-reserve__box--icon {
  max-width: 70px;
  width: 100%;
}
.p-footer-reserve__box--qr {
  max-width: 120px;
  width: 100%;
  margin-top: 5px;
}
.p-footer-reserve__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 35px;
  font-size: 16px;
  font-weight: bold;
  color: #000;
  border: 2px solid #06c755;
  border-radius: 5px;
  position: relative;
  margin-top: 7px;
  line-height: normal;
}
.p-footer-reserve__btn:hover {
  color: #fff;
  background-color: #06c755;
  opacity: 1;
}
.p-footer-reserve__btn::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 10.4px;
  border-color: transparent transparent transparent #06c755;
  position: absolute;
  right: 12px;
}
.p-footer-reserve__btn:hover::after {
  content: "";
  border-color: transparent transparent transparent #fff;
}
.p-footer-reserve__item--tel {
  display: block;
  border: 2px solid #f08300;
  border-radius: 10px;
  padding: 15px 24px 13px 14px;
  background-color: #fff;
  line-height: 1;
  flex-shrink: 0;
}
.p-footer-reserve__item--tel a {
  color: var(--main-txt-color);
}
.p-footer-reserve__item--tel .p-footer-reserve__title {
  width: 300px;
  height: 32px;
  background-color: #f08300;
}
.p-footer-reserve__num {
  font-size: 42px;
  font-weight: bold;
  font-family: var(--sub-font-family);
  color: var(--main-txt-color);
  text-align: center;
  margin-top: 20px;
}
.p-footer-reserve__num::before {
  content: "";
  display: inline-block;
  width: 47px;
  height: 31px;
  background: url(../img/common/freedial.png) no-repeat;
  background-size: cover;
  margin-right: 10px;
}
.p-footer-reserve__text {
  font-size: 15px;
  text-align: center;
  margin-top: 15px;
}
.p-footer-reserve__text span {
  display: block;
  font-size: 20px;
  font-weight: bold;
  background: linear-gradient(transparent 60%, #fff000 60%);
  max-width: max-content;
  margin: 0 auto 12px;
}

@media screen and (max-width: 960px) {
  .p-footer-opencampus {
    /*display: none;*/
    /*padding: 32px 4.3% 60px;*/
    background-size: cover;
  }
  .p-footer-reserve__list {
    flex-direction: column;
    gap: 10px;
    padding: 0 10px;
    max-width: 500px;
  }
  .p-footer-reserve__item--line {
    border: 1px solid #06c755;
    border-radius: 6px;
    padding: 10px;
  }
  .p-footer-reserve__title {
    font-size: clamp(11px,3.1vw,18px);
    width: clamp(212px,60.5vw,340px);
    height: clamp(20px,5.7vw,32px);
    border-radius: 10px;
  }
  .p-footer-reserve__details {
    justify-content: center;
  }
  .p-footer-reserve__left {
    max-width: none;
  }
  .p-footer-reserve__box {
    display: flex;
    gap: 10px;
    margin-top: 7px;
  }
  .p-footer-reserve__box p {
    font-size: clamp(9px,2.5vw,15px);
  }
  .p-footer-reserve__box--icon {
    max-width: 23.5%;
  }
  .p-footer-reserve__box--qr {
    max-width: 27%;
    margin-top: 3px;
  }
  .p-footer-reserve__btn {
    height: clamp(22px,6.2vw,35px);
    font-size: clamp(10px,2.8vw,16px);
    border: 1px solid #06c755;
    border-radius: 3px;
    margin-top: 5px;
  }
  .p-footer-reserve__btn::after {
    border-width: clamp(4px,1.1vw,6px) 0 clamp(4px,1.1vw,6px) clamp(6.9px,1.9vw,10.4px);
    right: 8px;
  }
  .p-footer-reserve__item--tel {
    display: block;
    border: 1px solid #f08300;
    border-radius: 6px;
    padding: 10px;
    flex-shrink: inherit;
  }
  .p-footer-reserve__item--tel .p-footer-reserve__title {
    width: clamp(187px,53.4vw,300px);
    height: clamp(20px,5.7vw,32px);
    font-size: clamp(11px,3.1vw,16px);
  }
  .p-footer-reserve__num {
    font-size: clamp(26px,7.4vw,42px);
    margin-top: 10px;
  }
  .p-footer-reserve__num::before {
    width: clamp(29px,8.2vw,47px);
    height: auto;
    aspect-ratio: 47/31;
    margin-right: 6px;
  }
  .p-footer-reserve__text {
    font-size: clamp(9px,2.5vw,15px);
    margin-top: 10px;
  }
  .p-footer-reserve__text span {
    font-size: clamp(12px,3.4vw,20px);
    margin: 0 auto 10px;
  }
}

/* footerナビゲーション */
.p-footer-nav {
  background-color: #fef9f2;
  border-top: 1px solid #f7931e;
  padding: 42px 20px 12px;
}
.p-footer-nav__wrapper {
  display: flex;
  gap: 20px;
  max-width: 1120px;
  margin: 0 auto;
}
.p-footer-nav__title {
  font-size: 14px;
  font-weight: bold;
  position: relative;
  padding-left: 1em;
}
.p-footer-nav__title a {
  color: var(--main-txt-color);
}
.p-footer-nav__title::before {
    content: "";
    display: block;
    background: url(../img/common/footer-nav-arrow-orange.png) no-repeat;
    background-size: cover;
    width: 10px;
    height: 8px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}
.p-footer-nav__col {
    max-width: 203px;
    width: 100%;
}
.p-footer-nav__col ul {
    margin: 0 0 30px 1em;
}
.p-footer-nav__col ul li a {
    display: block;
    font-size: 13px;
    color: var(--main-txt-color);
    border-bottom: 1px dashed var(--main-orange);
    position: relative;
    padding: 10px 0 10px 1em;
    line-height: 1.4;
}
.p-footer-nav__col ul li a::before {
    content: "";
    display: block;
    background: url(../img/common/footer-nav-arrow-yellow.png) no-repeat;
    background-size: cover;
    width: 10px;
    height: 8px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}
.p-footer-nav__col--other {
    max-width: 190px;
}
.p-footer-nav__col--other ul {
    margin-left: 0;
}
.p-footer-nav__col--other ul li:first-child a {
    margin-top: -9px;
}
.p-footer-nav__col--other ul li a::before {
    background-image: url(../img/common/footer-nav-arrow-orange.png);
}

@media screen and (max-width: 960px) {
  .p-footer-nav {
    display: none;
  }    
}

/* footerインフォメーション */
.l-footer-info {
  padding: 50px 0 0;
}
.p-info-close__wrapper {
  padding: 0 20px;
}
.p-info-close {
  display: none;
  /* display: flex; */
  justify-content: space-between;
  gap: 25px;
  max-width: 934px;
  margin: 0 auto;
  padding: 19px 0 24px 19px;
  border: 2px solid var(--main-orange);
  border-radius: 8px;
}
.p-info-close__text {
  max-width: 231px;
  font-size: 11px;
  line-height: 1.7;
}
.p-info-close__title {
  font-size: 16px;
  font-weight: bold;
  color: var(--main-orange);
}
.p-info-close__list {
  display: flex;
  position: relative;
}
.p-info-close__list::before {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: var(--main-orange);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 1;
}
.p-info-close__list ul {
  display: flex;
  align-items: center;
  gap: 10px;
  position: relative;
  padding-right: 25px;
}
.p-info-close__item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 80px;
  height: 80px;
  text-align: center;
  border: 2px solid var(--main-orange);
  border-radius: 50%;
  line-height: 1.1;
  background-color: #fff;
  z-index: 2;
}
.p-info-close__year {
  font-size: 16px;
  font-weight: bold;
  font-family: var(--sub-font-family);
  color: #ff8c00;
}
.p-info-close__time {
  font-size: 24px;
  font-weight: bold;
  font-family: var(--sub-font-family);
}
.p-info-close__week {
  font-size: 14px;
  font-weight: bold;
  font-family: var(--sub-font-family);
}
.p-info-close__link {
  display: flex;
  align-items: center;
  width: 150px;
  height: 92px;
  margin-right: 25px;
  padding: 0 20px;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  background-color: var(--main-orange);
  border-radius: 8px;
  line-height: 1.4;
  position: relative;
  z-index: 2;
}
.p-info-close__link:hover {
  background-color: #fbb03b;
  opacity: 1;
}
.p-info-close__link::after {
  content: "";
  display: block;
  background: url(../img/common/calendar-arrow-orange.png) no-repeat;
  background-size: cover;
  width: 20px;
  height: 20px;
  position: absolute;
  right: 20px;
}
.p-info-close__link:hover::after {
  background-image: url(../img/common/calendar-arrow-yellow.png);
}
.p-footer-info__company {
  text-align: center;
}
.p-footer-info__logo {
  width: 35%;
  margin: 2em auto 1em auto;
  display: block;
}
@media screen and (max-width: 767px){
.p-footer-info__logo {
  width: 90%;
  margin: 1em auto 1em auto;
}
}

.p-footer-info__text {
  font-size: 18px;
  margin-top: 15px;
}
.p-footer-info__contact {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 40px;
}
.p-footer-info__contact--right {
  display: flex;
  border-left: 1px solid var(--main-orange);
  height: 65px;
}
.p-footer-info__contact--right p {
  height: 100%;
  border-right: 1px solid var(--main-orange);
}
.p-footer-info__contact-tel {
  display: block;
  font-size: 42px;
  font-weight: bold;
  font-family: var(--sub-font-family);
  color: var(--main-orange);
  margin-right: 60px;
}
.p-footer-info__contact-tel::before {
  content: "";
  display: inline-block;
  width: 49px;
  height: 32px;
  background: url(../img/common/freedial.png)no-repeat;
  background-size: cover;
  margin-right: 15px;
}
.p-footer-info__contact-document {
  display: block;
  padding: 0 18px;
}
.p-footer-info__contact-document span {
  display: block;
  font-size: 13px;
  color: var(--main-txt-color);
}
.p-footer-info__contact-access {
  display: block;
  padding: 0 18px;
}
.p-footer-info__contact-access span {
  display: block;
  font-size: 13px;
  color: var(--main-txt-color);
}
.p-footer-info__contact-sns {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 22px;
}
.p-footer-info__contact-sns a {
  display: block;
  width: 55px;
}
.p-footer-info__opencampus-link {
  text-align: center;
  position: relative;
  margin-top: 40px;
}
.p-footer-info__opencampus-link::before {
  content: "";
  display: block;
  width: 100%;
  height: 115px;
  background-color: #fffbc3;
  position: absolute;
  bottom: 0;
  z-index: -1;
}
.p-footer-group__list {
  max-width: 1160px;
  margin: 25px auto 0;
  padding: 0 20px;
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
.p-footer-group__list li {
  _width: 125px;
  width: 100px;
}
.p-footer-group__list li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
  border: 1px solid #f2f2f2;
  border-radius: 5px;
  box-shadow: 2px 2px 0px #f2f2f2;
}
.l-footer__copy {
  font-size: 12px;
  text-align: center;
  margin: 30px 0 25px;
}

.p-smartphone-fixed-nav__list.oc {
  display: grid;
  grid-template-columns: 20% 20% 22% 20% 18%;
  gap: 1px;
  height: 60px;
}

@media screen and (max-width: 960px) {
  .l-footer-info {
    padding: 0;
  }
  .l-footer-info__wrapper {
    display: flex;
    flex-direction: column-reverse;
  }
  .p-info-close__wrapper {
    padding: 0 4.3%;
    margin-top: 25px;
  }
  .p-info-close {
    flex-direction: column;
    gap: 10px;
    padding: 19px 10px 24px;
  }
  .p-info-close__text {
    max-width: none;
    font-size: 12px;
  }
  .p-info-close__title {
    text-align: center;
  }
  .p-info-close__list {
    flex-direction: column;
    gap: 10px;
  }
  .p-info-close__list::before {
    content: none;
  }
  .p-info-close__list ul {
    gap: 4px;
    padding-right: 0;
    max-width: max-content;
    margin: 0 auto;
  }
  .p-info-close__list ul::before {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background-color: var(--main-orange);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 1;
  }
  .p-info-close__item {
    width: clamp(55px,14vw,80px);
    height: auto;
    aspect-ratio: 80/80;
  }
  .p-info-close__year {
    font-size: clamp(11px,3vw,16px);
  }
  .p-info-close__time {
    font-size: clamp(16px,4vw,24px);
  }
  .p-info-close__week {
    font-size: clamp(10px,2vw,14px);
  }
  .p-info-close__link {
    width: 100%;
    height: 42px;
    margin-right: 0;
    padding: 0 10px;
    justify-content: center;
  }
  .p-info-close__link::after {
    right: 10px;
  } 
  .p-footer-info__company {
    padding: 8px 4.3% 0;
  }
  .p-footer-info__logo {
    margin-top: 0;
    padding:  0 15px;
  }
  .p-footer-info__text {
    font-size: clamp(10px,2vw,18px);
    margin-top: 7px;
  }
  .p-footer-info__contact {
    flex-direction: column;
    margin-top: 7px;
  }
  .p-footer-info__contact--right {
    height: clamp(50px,8vw,65px);
    margin-top: 20px;
  }
  .p-footer-info__contact-tel {
    font-size: clamp(26px,5vw,42px);
    margin-right: 0;
    padding: 11px 15px;
    border: 1px solid #c6c6c6;
    line-height: 1;
  }
  .p-footer-info__contact-tel::before {
    width: clamp(30px,5vw,49px);
    height: auto;
    aspect-ratio: 49/32;
    margin-right: 5px;
  }
  .p-footer-info__contact-document {
    padding: 0 15px;
  }
  .p-footer-info__contact-document img {
    width: clamp(25px,4vw,34px);
  }
  .p-footer-info__contact-document span {
    font-size: clamp(10px,2vw,13px);
  }
  .p-footer-info__contact-access {
    padding: 0 15px;
  }
  .p-footer-info__contact-access img {
    width: clamp(25px,4vw,34px);
  }
  .p-footer-info__contact-access span {
    font-size: clamp(10px,2vw,13px);
  }
  .p-footer-info__contact-sns {
    gap: 7px;
    padding: 0 15px;
  }
  .p-footer-info__contact-sns a {
    width: clamp(42px,6vw,55px);
  }
  .p-footer-info__opencampus-link {
    display: none;
  }
  .p-footer-group {
    display: none;
  }
  .l-footer__copy {
    font-size: clamp(8px,2vw,12px);
    margin: 35px 0 65px;
  }
}

/* spメニュー */
.p-sp-menu {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  background: #fef8f2;
  z-index: 2;
  overflow-x: hidden;
  overflow-y: auto;
  padding-top: 40px;
  z-index: 50;
}

.p-sp-menu.open {
  display: block;
}
.sp-menu-title {
  display: flex;
  align-items: center;
  height: clamp(38px,7vw,58px);
  padding: 0 15px;
  font-size: clamp(13px,3vw,20px);
  color: var(--main-txt-color);
  border-top: 1px dashed var(--main-orange);
  position: relative;
}
.sp-menu-title::before {
  content: "";
  display: block;
  width: 12px;
  height: 4px;
  background-color: var(--main-orange);
  position: absolute;
  right: 15px;
}
.sp-menu-title::after {
  content: "";
  display: block;
  width: 12px;
  height: 4px;
  background-color: var(--main-orange);
  transform: rotate(90deg);
  position: absolute;
  right: 15px;
}
.sp-menu-title.selected::after {
    content: none;
}
.p-sp-menu-child {
  display: none;
}
.p-sp-accordion-menu__list {
  background-color: #fefbde;
}
.p-sp-accordion-menu__link {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: clamp(48px,8vw,72px);
  padding: 0 23px;
  font-size: clamp(12px,3vw,18px);
  border-top: 1px solid #ababab;
  color: var(--main-txt-color);
  line-height: 1;
}
.p-sp-accordion-menu__link span {
  font-size: clamp(10px,2vw,16px);
  display: block;
  margin-bottom: 3px;
}
.p-sp-menu-column {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border-top: 1px dashed var(--main-orange);
}
.p-sp-menu-column li:nth-child(odd) {
  border-right: 1px dashed var(--main-orange);
}
.p-sp-menu-column__link {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(11px,2vw,17px);
  height: clamp(35px,6vw,54px);
  color: var(--main-txt-color);
  border-bottom: 1px dashed var(--main-orange);
}
.p-sp-menu-btn {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  margin: 15px 15px 0;
}
.p-sp-menu-btn-document {
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(30px,5vw,46px);
  font-size: clamp(13px,3vw,20px);
  font-weight: bold;
  color: #000;
  background-color: #f4e621;
  border-radius: 3px;
}
.p-sp-menu-btn-access {
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(30px,5vw,46px);
  font-size: clamp(13px,3vw,20px);
  font-weight: bold;
  color: #fff;
  background-color: #0fb7c9;
  border-radius: 3px;
}
.p-sp-menu-tel {
  text-align: center;
  height: clamp(50px,8vw,70px);
  background-color: #fff;
  border: 1px solid #dedede;
  margin: 15px 15px 0;
  padding-top: 5px;
}
.p-sp-menu-tel span {
  display: block;
  font-size: clamp(10px,2vw,16px);
  font-weight: bold;
  font-family: var(--sub-font-family);
}
.p-sp-menu-tel a {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 5px;
  font-size: clamp(24px,4vw,38px);
  font-weight: bold;
  color: var(--main-orange);
  font-family: var(--sub-font-family);
  line-height: 1;
}
.p-sp-menu-tel a::before {
  content: "";
  display: inline-block;
  background: url(../img/common/freedial.png) no-repeat;
  background-size: cover;
  width: auto;
  height: clamp(18px,3vw,28px);
  aspect-ratio: 100/65;
}
.p-sp-menu-opencampus {
  margin-top: 5px;
  padding: 0 15px;
  text-align: center;
}
.p-sp-menu-sns {
  display: grid;
  grid-template-columns: repeat(3,42px);
  justify-content: center;
  gap: 8px;
  margin: 15px 0 80px;
}
.l-footer__fixed-nav {
  display: none;
  z-index: 100;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
}
.l-footer__fixed-nav.oc {display: block;}

.p-smartphone-fixed-nav__list {
  display: grid;
  grid-template-columns: 18% 21% 24% 17% 20%;
  gap: 1px;
  height: 50px;
}
.p-smartphone-fixed-nav__link {
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  font-size: 10px;
  font-weight: bold;
  text-align: center;
  background-color: var(--main-orange);
  color: #fff;
  line-height: 1.3;
}


.oc .p-smartphone-fixed-nav__link {font-size: 13px;}

.oc .p-smartphone-fixed-nav__link {display: grid;}

.oc .p-smartphone-fixed-nav__link span{display: inline-block;}

.p-smartphone-fixed-nav__btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  height: 100%;
  background-color: #f3a83b;
}
.p-smartphone-fixed-nav__btn span {
  display: block;
  width: 35px;
  height: 3px;
  background-color: #fff;
}
.p-sp-menu-close-btn a {
  display: block;
  width: 23px;
  height: 23px;
  position: absolute;
  top: 10px;
  right: 10px;
}
.p-sp-menu-close-btn a::before {
  content: "";
  display: block;
  width: 30px;
  height: 2.5px;
  background-color: var(--main-orange);
  transform: rotate(45deg);
  position: absolute;
  top: 10px;
  right: -3px;
}
.p-sp-menu-close-btn a::after {
  content: "";
  display: block;
  width: 30px;
  height: 2.5px;
  background-color: var(--main-orange);
  transform: rotate(-45deg);
  position: absolute;
  top: 10px;
  right: -3px;
}

@media screen and (max-width: 960px) {
  .l-footer__fixed-nav {
    display: block;
  }
  .l-footer__fixed-nav.oc {display: block;}
}












/* 固定ページ */
.page-title__content {
  background: url(../img/common/page-title-bg-logo.png) no-repeat;
  background-position: right center;
  background-color: var(--page-orange);
}

.cabinattendant .page-title__content {
  background-color: var(--course-airline);
}
.groundstaff .page-title__content {
  background-color: var(--course-groundstaff);
}
.groundhandling .page-title__content {
  background-color: var(--course-groundhandling);
}
.foreignbusiness .page-title__content {
  background-color: var(--course-foreignbusiness);
}
.bridal .page-title__content {
  background-color: var(--course-bridal);
}
.page-title__wrapper {
  max-width: 1160px;
  height: 150px;
  margin: 0 auto;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-title {
  font-size: 26px;
  font-weight: bold;
}
.groundhandling .page-title,
.groundstaff .page-title,
.cabinattendant .page-title,
.foreignbusiness .page-title,
.bridal .page-title {
  color: #fff;
}
.page-contents__wrapper {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 20px;
}
.p-underline-headline {
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  margin-top: 60px
}
.p-underline-headline::after {
  content: "";
  display: block;
  width: 65px;
  height: 1px;
  background-color: var(--main-txt-color);
  margin: 18px auto 0;
}
.p-leftline-headline {
  font-size: 24px;
  font-weight: bold;
  display: flex;
  align-items: center;
  height: 50px;
  border-left: 10px solid #f38204;
  border-bottom: 1px solid #f38204;
  padding-left: 22px;
  line-height: 1;
  margin-bottom: 3vw;
}
@media screen and (max-width: 960px) {
  .page-title__content {
    background-image: url(../img/common/page-title-bg-logo.png);
    background-repeat: no-repeat;
    background-position: right center;
  }
  .page-title__wrapper {
    height: clamp(70px,20vw,150px);
    padding: 0 15px;
  }
  .page-title {
    font-size: clamp(16px,4.5vw,26px);
  }
  .page-contents__wrapper {
    /* padding: 0 15px; */
    padding: 0 4.28vw;
  }
  .p-underline-headline {
    font-size: 26px;
    margin-top: 35px
  }
  .p-underline-headline::after {
    margin: 11px auto 0;
  }
  .p-leftline-headline {
    font-size: clamp(20px,5.7vw,24px);
    border-left: 6px solid #f38204;
    height: clamp(32px,9.1vw,50px);
    padding-left: 12px;
  }
}

/* 資格・検定取得実績 */
.research {
  padding: 40px 0;
}
.research-headline {
  font-size: 25px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px;
}
.research-sub-headline {
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 27px;
}
.research-lead-text {
  font-size: 21px;
  line-height: 1.8;
  max-width: 926px;
  margin: 0 auto 60px;
}
.research__item {}
.research__item .item-title {
  font-size: 31px;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 930px;
  height: auto;
  aspect-ratio: 930/162;
  margin: 0 auto;
  /*background: url(../img/licence/licence-ttl-bg.png) no-repeat;*/
  background-size: cover;
  border: 1px solid #4583c5;
}
.research__item-wrapper.item-01 {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 80px;
  max-width: 1060px;
  margin: 50px auto 85px;
}
.research__item-wrapper.item-02 {
  display: grid;
  grid-template-columns: 440px 475px;
  justify-content: space-between;
  align-items: center;
  gap: 1em;
  max-width: 931px;
  margin: 50px auto 110px;
}
.research__item-wrapper.item-03 {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 60px;
  max-width: 1003px;
  margin: 70px auto 0;
}
.research__item .item-subtitle {
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  line-height: 2;
  background-color: #74ac59;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  max-width: 400px;
  margin: 20px auto 55px;
  border-radius: 14px;
}
.research__item .item-subtitle::before,.research__item .item-subtitle::after {
  content: "ー";
  display: inline-block;
}
.research__item .item-img {
  text-align: center;
}
.acquisition {
  padding: 160px 0;
}
.acquisition-headline {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px;
}
.acquisition-headline span {
  display: block;
  font-size: 50px;
}
.acquisition__item {
  display: flex;
  justify-content: space-between;
  gap: 1.5em;
  border-radius: 5px;
  margin-top: 33px;
  padding: 20px 40px 20px 10px;
}
.acquisition__item.item-01 {
  border: 2px solid #d8a500;
}
.acquisition__item.item-02 {
  border: 2px solid #0fb7c9;
}
.acquisition__item.item-03 {
  border: 2px solid #74ac59;
}
.acquisition__item .item-title {
  font-size: 29px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  max-width: 303px;
  width: 100%;
  border-radius: 5px;
}
.acquisition__item.item-01 .item-title {
  background-color: #d8a500;
}
.acquisition__item.item-02 .item-title {
  background-color: #0fb7c9;
}
.acquisition__item.item-03 .item-title {
  font-size: 27px;
  background-color: #74ac59;
}
.acquisition__item-wrapper {
  max-width: 690px;
  width: 100%;
}
.acquisition__item.item-01 .acquisition__item-wrapper {
  display: flex;
  padding: 27px 0;
}
.acquisition__item .item-child {
  display: flex;
  justify-content: space-between;
  gap: 1em;
  border-bottom: 1px dashed #595757;
  padding: 20px 0;
}
.acquisition__item .item-child:first-child {
  padding: 0 0 20px;
}
.acquisition__item .item-child:last-child {
  padding: 20px 0 0;
  border-bottom: none;
}
.acquisition__item .item-child-title {
  font-size: 21px;
  font-weight: normal;
  line-height: 1.4;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  width: 258px;
  flex-shrink: 0;
}
.acquisition__item.item-02 .item-child-title {
  background-color: #87dbe4;
}
.acquisition__item.item-03 .item-child-title {
  background-color: #b9d5ac;
}
.acquisition__item.item-02 .item-child:first-child .item-child-title{
  color: #0fb7c9;
  border: 1px solid #0fb7c9;
  background-color: #fff;
}
.acquisition__item.item-03 .item-child:first-child .item-child-title{
  color: #74ac59;
  border: 1px solid #74ac59;
  background-color: #fff;
}
.acquisition__list {
  max-width: 390px;
  width: 100%;
}
.acquisition__item.item-01 .acquisition__list {
  max-width: 312px;
}
.acquisition__list li {
  font-size: 22px;
  line-height: 1.4;
  text-indent: -1em;
  margin-left: 1em;
  margin-bottom: 6px;
}
.acquisition__list li::before {
  content: "・";
}

@media screen and (max-width: 960px) {
  .research {
    padding: 40px 0;
  }
  .research-headline {
    font-size: clamp(16px,4.5vw,25px);
    margin-bottom: 10px;
  }
  .research-sub-headline {
    font-size: clamp(22px,6.2vw,36px);
    margin-bottom: 15px;
    line-height: 1.4;
  }
  .research-lead-text {
    font-size: clamp(12px,3.4vw,21px);
    line-height: 1.6;
    margin: 0 auto 30px;
  }
  .research__item .item-title {
    font-size: clamp(15px,4.3vw,31px);
    line-height: 1.5;
    width: 100%;
    aspect-ratio: 960/228;
    /*background: url(../img/licence/licence-ttl-bg-sp.png) no-repeat;*/
    background-size: cover;
  }
  .research__item-wrapper.item-01 {
    grid-template-columns: 1fr;
    gap: 20px;
    margin: 20px auto 50px;
    padding: 0 15px;
  }
  .research__item-wrapper.item-02 {
    grid-template-columns: 1fr;
    gap: 20px;
    margin: 20px auto 50px;
    padding: 0 15px;
  }
  .research__item-wrapper.item-03 {
    grid-template-columns: 1fr;
    gap: 25px;
    margin: 20px auto 0;
    padding: 0 15px;
  }
  .research__item .item-subtitle {
    font-size: clamp(16px,4.5vw,22px);
    gap: 17px;
    max-width: clamp(280px,80vw,400px);
    margin: 20px auto;
    border-radius: 0.62em;
  }
  .research__item .item-img {
    max-width: 500px;
    margin: auto;
  }
  .acquisition {
    padding: 90px 0;
  }
  .acquisition-headline {
    font-size: clamp(16px,4.5vw,24px);
    margin-bottom: 0;
  }
  .acquisition-headline span {
    font-size: clamp(22px,6.3vw,50px);
  }
  .acquisition__item {
    display: block;
    margin-top: 15px;
    padding: 10px 10px 10px 10px;
  }
  .acquisition__item .item-title {
    font-size: clamp(20px,5.7vw,29px);
    max-width: none;
    width: 100%;
    height: 80px;
  }
  .acquisition__item.item-03 .item-title {
    font-size: clamp(20px,5.7vw,29px);
  }
  .acquisition__item-wrapper {
    max-width: none;
  }
  .acquisition__item.item-01 .acquisition__item-wrapper {
    display: block;
    padding: 15px 0;
  }
  .acquisition__item .item-child {
    display: block;
    padding: 0;
    border: none;
  }
  .acquisition__item .item-child:first-child {
    padding: 0;
    border: none;
  }
  .acquisition__item .item-child:last-child {
    padding: 0;
  }
  .acquisition__item .item-child-title {
    font-size: clamp(19px,5.4vw,21px);
    width: 100%;
    height: 60px;
    margin-top: 10px;
  }
  .acquisition__item .item-child-title br {
    display: none;
  }
  .acquisition__list {
    max-width: none;
    padding: 15px 0;
  }
  .acquisition__item.item-01 .acquisition__list {
    max-width: none;
    padding: 0;
  }
  .acquisition__list li {
    font-size: clamp(16px,4.5vw,22px);
    line-height: 1.8;
    margin-bottom: 0;
  }
}

/* 就職率・就職実績 */
.achievement {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding: 70px 0;
}
.achievement .main-img {
  grid-column: 1/2;
  grid-row: 1/4;
}
.achievement-title {
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
  grid-row: 2/3;
  padding-left: 70px;
}
.achievement-title span {
  display: block;
  font-size: 65px;
  color: var(--main-orange) ;
  margin: 24px 0 5px;
}
.achievement__wrapper {
  grid-row: 3/4;
}
.achievement .sub-text {
  font-size: 24px;
  padding-left: 70px;
}
.achievement .num-img {
  padding: 15px 0 10px;
}

@media screen and (max-width: 960px) {
  .achievement {
    align-items: center;
    gap: 5px 3.4vw;
    padding: 2px 0 5px;
  }
  .achievement .main-img {
    grid-column: 1/2;
    grid-row: 1/2;
    margin-left: -15px;
  }
  .achievement-title {
    font-size: clamp(22px,4.6vw,30px);
    line-height: 1.3;
    grid-row: 1/2;
    padding-left: 0;
  }
  .achievement-title span {
    font-size: clamp(37px,10.6vw,65px);
    margin: 4px 0 0;
  }
  .achievement__wrapper {
    grid-column: 1/3;
    grid-row: 2/3;
    text-align: center;
  }
  .achievement .sub-text {
    font-size: clamp(18px,5.1vw,24px);
    padding-left: 0;
    margin-bottom: 5px;
  }
  .achievement .num-img {
    padding: 0 20px;
  }
}

.career-support {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  padding: 0 calc(50vw - 50%);
  background-color: #fdf0f3;
  position: relative;
}
.career-support::before {
  content: "";
  display: block;
  max-width: 1500px;
  width: 100%;
  height: 455px;
  background: url(../img/employment/employment-catch-img.png) no-repeat;
  background-position: center;
  position: absolute;
  top: -18px;
  left: 0;
  right: 0;
  margin: auto;
}
.career-support__wrapper {
  position: relative;
  padding: 32px 0;
}
.career-support-title {
  font-size: 26px;
  font-weight: bold;
  color: #eb6b83;
  text-align: center;
  margin-bottom: 30px;
}
.career-support-text {
  font-size: 22px;
  text-align: center;
  line-height: 1.5;
}
.career-support-logo {
  ＿width: 36px;
  width: 400px;
  position: relative;
  top: -9px;
  left: -5px;
}
.career-support-text span {
  background: linear-gradient(transparent 60%, #fde200 60%);
}

@media screen and (max-width: 960px) {
  .career-support::before {
    content: "";
    display: block;
    max-width: none;
    width: clamp(99px,28vw,180px);
    height: auto;
    background: url(../img/employment/employment-image01.png) no-repeat;
    background-position: center;
    background-size: cover;
    aspect-ratio: 355/455;
    position: absolute;
    top: 5px;
    left: 0;
    right: auto;
    margin: inherit;
  }
  .career-support::after {
    content: "";
    display: block;
    width: clamp(133px,38vw,200px);
    height: auto;
    background: url(../img/employment/employment-image03.png) no-repeat;
    background-size: cover;
    aspect-ratio: 355/455;
    position: absolute;
    right: 0;
    bottom: 5px;
  }
  .career-support__wrapper {
    padding: 30px 0;
  }
  .career-support-title {
    font-size: clamp(16px,4.5vw,26px);
    margin-bottom: 20px;
  }
  .career-support-text {
    font-size: clamp(13px,3.7vw,22px);
    line-height: 1.7;
  }
  .career-support-logo {
    ＿width: clamp(22px,6.2vw,36px);
	width: clamp(300px,6.2vw,300px);
    margin-right: 0.1em;
    top: -0.4em;
    left: 0;
  }
}

.employment-support {
  padding: 160px 0;
}
.employment-support-headline {
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 30px;
}
.employment-support .headline-txt {
  font-size: 18px;
  text-align: center;
}
.employment-support__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 60px;
  margin: 55px 0 0;
}
.employment-support__item {
  display: flex;
  justify-content: space-between;
  gap: 1em;
  max-width: 530px;
}
.employment-support__item .item-img {
  max-width: 234px;
  width: 100%;
}
.employment-support__item__wrapper {
  max-width: 270px;
  width: 100%;
}
.employment-support__item .item-title {
  font-size: 22px;
  font-weight: bold;
  color: #f29600;
  line-height: 1.4;
  margin-bottom: 7px;
}
.employment-support__item .item-text {
  color: #000;
  line-height: 1.7;
}

@media screen and (max-width: 960px) {
  .employment-support {
    padding: 35px 0 110px;
  }
  .employment-support-headline {
    font-size: clamp(19px,5.4vw,26px);
    margin-bottom: 10px;
  }
  .employment-support .headline-txt {
    font-size: clamp(12px,3.4vw,18px);
  }
  .employment-support__list {
    gap: 10px;
    margin: 30px 0 0;
  }
  .employment-support__item {
    display: block;
    max-width: none;
  }
  .employment-support__item .item-img {
    max-width: none;
  }
  .employment-support__item__wrapper {
    max-width: none;
  }
  .employment-support__item .item-title {
    font-size: clamp(12px,3.4vw,22px);
    text-align: center;
    margin: 5px 0 7px;
  }
  .employment-support__item .item-text {
    font-size: clamp(10px,2.8vw,16px);
  }
}

/* ブライダル・ホテル科 */
.page-inner-link {
  display: flex;
  flex-wrap: wrap;
  gap: 23px;
  max-width: max-content;
  width: 100%;
  margin: 65px auto 0;
}
.page-inner-link a {
  display: block;
  font-size: 15px;
  font-weight: bold;
  text-align: center;
  color: #000;
  border: 1px solid #000;
  border-radius: 16px;
  line-height: 2;
  padding: 0 35px;
  position: relative;
}
.cabinattendant .page-inner-link a:hover,
.groundstaff .page-inner-link a:hover,
.groundhandling .page-inner-link a:hover {
  opacity: 1;
  color: var(--course-airline);
}
.foreignbusiness .page-inner-link a:hover {
  opacity: 1;
  color: var(--course-foreignbusiness);
}
.bridal .page-inner-link a:hover {
  opacity: 1;
  color: var(--course-bridal);
}
.page-inner-link a::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 9px;
  border-color: transparent transparent transparent #007bff;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
}
.cabinattendant .page-inner-link a::after,
.groundstaff .page-inner-link a::after,
.groundhandling .page-inner-link a::after {
  border-color: transparent transparent transparent var(--course-airline);
}
.foreignbusiness .page-inner-link a::after {
  border-color: transparent transparent transparent var(--course-foreignbusiness);
}
.bridal .page-inner-link a::after {
  border-color: transparent transparent transparent var(--course-bridal);
}
.course-headline {
  font-size: 42px;
  font-weight: normal;
  text-align: center;
  margin-top: 80px;
}
.course-headline span {
  display: block;
  font-size: 31px;
  text-align: center;
}
.course-sub-headline {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  color: #fff;
  border-radius: 5px;
  width: 217px;
  margin: 18px auto 100px;
  padding: 8px 0;
}
.cabinattendant .course-sub-headline,
 {
  background-color: var(--course-airline);
}


.groundstaff .course-sub-headline {
  background-color: var(--course-groundstaff);
}

.groundhandling .course-sub-headline {
  background-color: var(--course-groundhandling);
}
.foreignbusiness .course-sub-headline {
  background-color: var(--course-foreignbusiness);
}
.bridal .course-sub-headline {
  background-color: var(--course-bridal-sub);
}


/* エアライン科 2025 */

main.course{font-size: 1.8rem;line-height: 2;}


.opinfo{
	position: absolute;
	bottom: -5%;
	right: 15%;
	background-color: #fff;

}



/*矢印が右に移動する*/
.btnarrow{
    /*矢印と下線の基点とするためrelativeを指定*/
  position: relative;
    /*形状*/
    display: inline-block;
  padding: 0 20px;
    color: #333;
    text-decoration: none;
    outline: none;
}

a.btnarrow:hover{text-decoration: none;}

/*矢印と下線の形状*/
.btnarrow::before{
    content: '';
    /*絶対配置で下線の位置を決める*/
  position: absolute;
    bottom:-8px;
    right: 5%;
    /*下線の形状*/    
    width: 60%;
    height: 1px;
  background:#333;
    /*アニメーションの指定*/
    transition: all .3s;
}

.btnarrow::after{
    content: '';
    /*絶対配置で矢印の位置を決める*/
  position: absolute;
    bottom:-3px;
    right:5%;
    /*矢印の形状*/    
    width: 15px;
    height:1px;
  background:#333;
    transform: rotate(35deg);
    /*アニメーションの指定*/
    transition: all .3s;
}

/*hoverした際の移動*/
.btnarrow:hover::before{
    right: -5%;
}

.btnarrow:hover::after{
    right:-5%;
}

.opinfo a.btnarrow {padding: 40px;}

.opinfo a.btnarrow::before{bottom: 22px;}
.opinfo a.btnarrow:after{bottom:27px;}

#course__airline-ca__mv,
#course__airline__gs__mv,
#course__airline__gh__mv,
#course__bridal__mv,
#course__foreignbusiness__mv {
 position: relative;
 max-width: 1440px;
}

h1.course__title {
	position: absolute; top: 28%; right: 18.7%;
	font-size: 40px;
	font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-weight: normal;
	line-height: 1.2;
	}

h1.course__title span.coursename{font-size: 30px;}

.mv__catch {
	position: absolute; top: 58%; right: 20%;
	font-size: 24px;
	font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}
strong.course__subtitle {
  position: absolute;
  top: 40%;
  right: 18.7%;
  font-size: 22px;
  font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-weight: normal;
  line-height: 1.5;
}
	
.course__airline-ca__container,
.course__airline__gs__container,
.course__airline__gh__container,
.course__bridal__container,
.course__foreignbusiness__container{
	max-width: 1200px;
	margin: 0 auto;
	
}

.course__airline-ca__container p,
.course__airline__gs__container p,
.course__airline__gh__container p,
.course__bridal__container p,
.course__foreignbusiness__container p{
 	margin-bottom: 20px;
}

nav .course__nav {
	display: flex;
	border: 1px solid #ef8200;
	padding: 20px;
	margin-top: 40px;
}

nav .course__nav li{
	position: relative;
	flex-grow: 1;
	text-align: center;
	
}

nav .course__nav li a{color:#6E5C6C ;}

nav .course__nav li::before {
	    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    display: inline-block;
    width: 1px;
    height: 30px;
    background-color: #6E5C6C;
    opacity: 0.6;
    transform: translateY(-50%) rotate(34deg);
}

nav .course__nav li:first-child::before {width: 0;}

#course__feature, #course__point, #course__obog, #course__curriculum, #course__myfavorite, #course__message, #favoriteclass{padding: 80px 0;}

h2.course__title {
	font-size: 30px;
	font-family: "Noto Serif JP","ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	text-align: center;
	font-weight: normal;
	margin-bottom: 40px;
}

h2.course__title span.course__airline-ca__sub__title,
h2.course__title span.course__airline__gs__sub__title,
h2.course__title span.course__airline__gh__sub__title,
h2.course__title span.course__bridal__sub__title,
h2.course__title span.course__foreignbusiness__sub__title {
	display: block;
	font-size: 30px;
	font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	color: var(--course-airline);	
	text-align: center;
	font-weight: normal;
}

.course__airline-ca__container--l h2.course__title, .course__airline-ca__container--l h2.course__title span.course__airline-ca__sub__title,
.course__airline__gs__container--l h2.course__title, .course__airline__gs__container--l h2.course__title span.course__airline__gs__sub__title,
.course__airline__gh__container--l h2.course__title, .course__airline__gh__container--l h2.course__title span.course__airline__gh__sub__title {color: #fff;}

h3.course__copy {
	font-size: 24px;
	text-align: center;
	font-weight: normal;
	margin-bottom: 40px;
}

.point__container {
	display: flex;
	gap: 40px;
	padding: 80px 0;
}

.point__graph,.point__employment,.point__img{width: 50%;}

.point__graph {
  background-color: #ddeaf2;
  padding: 1em;
  font-size: 0.95em;
  line-height: 1.6em;
  border-radius: 10px;
}
.point__graph b{
  background-color: #85b7ce;
  color:#fff;
  font-size:1.5em;
  padding: 0.5em 0.8em;
  display: inline-block;
  border-radius: 10px 10px 0 0; 
}
.point__graph img{
  margin-bottom:1em;
}

.course__airline-ca__obog__voice,
.course__airline__gs__obog__voice,
.course__airline__gh__obog__voice,
.course__bridal__obog__voice,
.course__foreignbusiness__obog__voice{width: 65%;}

.course__airline-ca__obog__img,
.course__airline__gs__obog__img,
.course__airline__gh__obog__img,
.course__bridal__obog__img,
.course__foreignbusiness__obog__img{width: 35%;}

.course__airline-ca__point__title__container,
.course__airline__gs__point__title__container,
.course__airline__gh__point__title__container,
.course__bridal__point__title__container,
.course__foreignbusiness__point__title__container {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	justify-content: center;
	gap: 20px;
	margin-bottom: 40px;
}

h3.point__title{
	text-align: left;
	font-weight: normal;
	font-size: 30px;
	line-height: 1.5;
}

.course__airline-ca__obog__container,
.course__airline__gs__obog__container,
.course__airline__gh__obog__container,
.course__bridal__obog__container,
.course__foreignbusiness__obog__container {
	display: flex;
	gap: 40px;

}

.course__foreignbusiness__container.bg_grade{
  background-image: linear-gradient(90deg, #fafcf9 60%, #cfe1ed 60%);
  position:relative;
  height: 30vw;
}
.course__foreignbusiness__container.bg_grade .hu01,
.course__foreignbusiness__container.bg_grade .hu02,
.course__foreignbusiness__container.bg_grade .hu03{
  position:absolute;
  width:30%;
  bottom:0;
}
.course__foreignbusiness__container.bg_grade .hu01{
  left: 7%;
}
.course__foreignbusiness__container.bg_grade .hu02{
  left: 34%;
}
.course__foreignbusiness__container.bg_grade .hu03{
  left:60%;
}

.course__foreignbusiness__container.bg_grade .hu01_name,
.course__foreignbusiness__container.bg_grade .hu02_name,
.course__foreignbusiness__container.bg_grade .hu03_name{
  position:absolute;
  width:20%;
}
.course__foreignbusiness__container.bg_grade .hu01_name {
  left: 7%;
  bottom: 20%;
}
.course__foreignbusiness__container.bg_grade .hu02_name {
  left: 40%;
  bottom: 35%;
}
.course__foreignbusiness__container.bg_grade .hu03_name {
  left: 80%;
  bottom: 30%;
}


.speechBubble01 {
  position: relative;
  display: inline-block;
  margin-bottom: 20px;
  padding: 16px;
  border: 2px solid #7aabba;
  border-radius: 8px;
  background-color: #ffffff;
  text-align: left;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
  width: 18%;
  position: absolute;
  top: 5%;
  left: 2%;
  font-size: 0.8em;
}
.speechBubble01::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 68%;
  border-style: solid;
  border-width: 20px 0 0 20px;
  border-color: #7aabba transparent transparent;
  translate: -50% 100%;
  transform: skew(29deg);
  transform-origin: top;
}
.speechBubble01::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 68%;
  border-style: solid;
  border-width: 15.2px 0 0 15.2px;
  border-color: #ffffff transparent transparent;
  translate: calc(-50% + 0.4px) 100%;
  transform: skew(29deg);
  transform-origin: top;
}


.speechBubble02,.speechBubble03 {
  position: relative;
  display: inline-block;
  margin-bottom: 20px;
  padding: 16px;
  border: 2px solid #7aabba;
  border-radius: 8px;
  background-color: #ffffff;
  text-align: left;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
  position: absolute;
  font-size: 0.8em;
  width: 18%;
}
.speechBubble02 {
  top: 5%;
  left: 51%;
}
.speechBubble03 {
  top: 5%;
  left: 80%;
}
.speechBubble02::before,.speechBubble03::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 29%;
  border-style: solid;
  border-width: 20px 20px 0 0;
  border-color: #7aabba transparent transparent;
  translate: -50% 100%;
  transform: skew(-22deg);
  transform-origin: top;
}
.speechBubble02::after,.speechBubble03::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 29%;
  border-style: solid;
  border-width: 15.2px 15.2px 0 0;
  border-color: #ffffff transparent transparent;
  translate: calc(-50% - 0.4px) 100%;
  transform: skew(-22deg);
  transform-origin: top;
}
@media screen and (max-width: 1199px) {
.course__foreignbusiness__container.bg_grade {
  height: 40vw;
}
.speechBubble01,.speechBubble02,.speechBubble03 {
  padding: 1em;
  font-size: 0.6em;
  width: 20%;
}
.course__foreignbusiness__container.bg_grade .hu01_name, .course__foreignbusiness__container.bg_grade .hu02_name, .course__foreignbusiness__container.bg_grade .hu03_name {
    font-size: 0.8em;
}
}
@media screen and (max-width: 767px){
.course__foreignbusiness__container.bg_grade {
  position: static;
  height: auto;
}
div.no011,div.no022,div.no033 {
  position:relative;
  height: 70vw;
}
.course__foreignbusiness__container.bg_grade .hu01, .course__foreignbusiness__container.bg_grade .hu02, .course__foreignbusiness__container.bg_grade .hu03 {
  width: 60%;
}
.course__foreignbusiness__container.bg_grade .hu01, .course__foreignbusiness__container.bg_grade .hu03 {
  left: 40%;
}
.course__foreignbusiness__container.bg_grade .hu02 {
  left: 2%;
}
  .speechBubble01, .speechBubble02, .speechBubble03 {
    width: 50%;
  }
.course__foreignbusiness__container.bg_grade .hu01_name, .course__foreignbusiness__container.bg_grade .hu02_name, .course__foreignbusiness__container.bg_grade .hu03_name {
  width: 40%;
}
.course__foreignbusiness__container.bg_grade .hu02_name {
  left: 60%;
  bottom: 15%;
}
.course__foreignbusiness__container.bg_grade .hu03_name {
  left: 5%;
  bottom: 20%;
}
  .speechBubble01, .speechBubble02, .speechBubble03 {
    font-size: 3vw;
  }
.speechBubble02 {
  left: 45%;
}
.speechBubble03 {
  left: 5%;
}
.speechBubble03::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 68%;
  border-style: solid;
  border-width: 20px 0 0 20px;
  border-color: #7aabba transparent transparent;
  translate: -50% 100%;
  transform: skew(29deg);
  transform-origin: top;
}
.speechBubble03::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 68%;
  border-style: solid;
  border-width: 15.2px 0 0 15.2px;
  border-color: #ffffff transparent transparent;
  translate: calc(-50% + 0.4px) 100%;
  transform: skew(29deg);
  transform-origin: top;
}
}







.point__employment {
	padding: 40px;
	border: 1px solid #ef8200;
}

.point__employment h4.title__place {margin-bottom: 10px;}

.point__employment h4.title__place+ul,.point__employment h5+ul {
	margin-bottom: 20px;
	padding-left: 20px;
}

.course__airline-ca__obog__container,
.course__airline__gs__obog__container,
.course__airline__gh__obog__container,
.course__bridal__obog__container,
.course__foreignbusiness__obog__container {
	background: #ededed;
	padding: 40px;
	margin-bottom: 40px;
}

.course__airline-ca__obog__container__in,
.course__airline__gs__obog__container__in,
.course__airline__gh__obog__container__in,
.course__bridal__obog__container__in,
.course__foreignbusiness__obog__container__in {
	background: #fff;
	padding: 40px 40px 0 40px;
	display: flex;
	gap: 40px;
}

.course__airline-ca__voice__catch,
.course__airline__gs__voice__catch,
.course__airline__gh__voice__catch,
.course__bridal__voice__catch,
.course__foreignbusiness__voice__catch {
	font-size: 24px;
	color: var(--course-airline);
	margin-bottom: 20px;
}



.course__airline-ca__obog__voice dl dt,
.course__airline__gs__obog__voice dl dt,
.course__airline__gh__obog__voice dl dt,
.course__bridal__obog__voice dl dt,
.course__foreignbusiness__obog__voice dl dt{padding: 20px 0;}


.course__airline-ca__obog__img,
.course__airline__gs__obog__img,
.course__airline__gh__obog__img,
.course__bridal__obog__img,
.course__foreignbusiness__obog__img  {
	position: relative;
}

.course__airline-ca__obog__img img,
.course__airline__gs__obog__img img,
.course__airline__gh__obog__img img,
.course__bridal__obog__img img,
.course__foreignbusiness__obog__img img {
	margin-top:-60px;
}

.course__airline-ca__container--l,
.course__airline__gs__container--l,
.course__airline__gh__container--l,
.course__bridal__container--l,
.course__foreignbusiness__container--l{
	background: var(--course-airline);
	margin-bottom: ;
}

.course__airline-ca__curriculum__container,
.course__airline__gs__curriculum__container,
.course__airline__gh__curriculum__container,
.course__bridal__curriculum__container,
.course__foreignbusiness__curriculum__container {
	max-width: 1200px;
	height: auto;
	overflow-x: scroll;
	padding: 40px;

}

.course__airline-ca__curriculum__container--in,
.course__airline__gs__curriculum__container--in,
.course__airline__gh__curriculum__container--in,
.course__bridal__curriculum__container--in,
.course__foreignbusiness__curriculum__container--in {
	width: 1400px;
	background: #fff;
	padding-bottom: 20px;
}

.course__airline-ca__curriculum__container--in img,
.course__airline__gs__curriculum__container--in img,
.course__airline__gh__curriculum__container--in img,
.course__bridal__curriculum__container--in img,
.course__foreignbusiness__curriculum__container--in img {width: 100%;}

.course__airline-ca__myreason__container,
.course__airline__gs__myreason__container,
.course__airline__gh__myreason__container,
.course__bridal__myreason__container,
.course__foreignbusiness__myreason__container {
	display: flex;
	gap: 40px;
	padding: 80px 0;
}

.course__airline-ca__myreason__txt,
.course__airline__gs__myreason__txt,
.course__airline__gh__myreason__txt,
.course__bridal__myreason__txt,
.course__foreignbusiness__myreason__txt{width: 65%;}

.course__airline-ca__myreason__img,
.course__airline__gs__myreason__img,
.course__airline__gh__myreason__img,
.course__bridal__myreason__img,
.course__foreignbusiness__myreason__img{width: 35%;}

.course__airline-ca__myreason__txt dt,
.course__airline__gs__myreason__txt dt,
.course__airline__gh__myreason__txt dt,
.course__bridal__myreason__txt dt,
.course__foreignbusiness__myreason__txt dt {
	padding: 20px 0;
}


.course__airline-ca__myreason__txt dd,
.course__airline__gs__myreason__txt dd,
.course__airline__gh__myreason__txt dd,
.course__bridal__myreason__txt dd,
.course__foreignbusiness__myreason__txt dd {
	padding: 10px 0;
}

/* .myfavorite__1 {margin-left: -80px;}
 .myfavorite__2 {margin-left: -40px;}*/


.course__airline-ca__favoriteclass__container,
.course__airline__gs__favoriteclass__container,
.course__airline__gh__favoriteclass__container,
.course__bridal__favoriteclass__container,
.course__foreignbusiness__favoriteclass__container{
	display: flex;
	gap: 20px;
	padding:20px 0;
	}

.course__airline-ca__favoriteclass__img,
.course__airline__gs__favoriteclass__img,
.course__airline__gh__favoriteclass__img,
.course__bridal__favoriteclass__img,
.course__foreignbusiness__favoriteclass__img {width: 45%;}

.course__airline-ca__favoriteclass__txt,
.course__airline__gs__favoriteclass__txt,
.course__airline__gh__favoriteclass__txt,
.course__bridal__favoriteclass__txt,
.course__foreignbusiness__favoriteclass__txt {width: 55%;}

.course__airline-ca__favoriteclass__txt dt span.number,
.course__airline__gs__favoriteclass__txt dt span.number,
.course__airline__gh__favoriteclass__txt dt span.number,
.course__bridal__favoriteclass__txt dt span.number,
.course__foreignbusiness__favoriteclass__txt dt span.number{
	font-size: 60px;
	font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-style: italic;
}

.course__airline-ca__favoriteclass__txt dt,
.course__airline__gs__favoriteclass__txt dt,
.course__airline__gh__favoriteclass__txt dt{
	color:  var(--course-airline);
	padding: 10px 0;
}

.course__airline-ca__message__container,
.course__airline__gs__message__container,
.course__airline__gh__message__container,
.course__bridal__message__container,
.course__foreignbusiness__message__container{
	display: flex;
	gap: 40px;
	padding: 80px 0;
}

.course__airline-ca__message__img,
.course__airline__gs__message__img,
.course__airline__gh__message__img,
.course__bridal__message__img,
.course__foreignbusiness__message__img{ width: 35%;}

.course__airline-ca__message__txt,
.course__airline__gs__message__txt,
.course__airline__gh__message__txt,
.course__bridal__message__txt,
.course__foreignbusiness__message__txt{ width: 65%;}

.course__airline-ca__message__txt dt,
.course__airline__gs__message__txt dt,
.course__airline__gh__message__txt dt,
.course__bridal__message__txt dt,
.course__foreignbusiness__message__txt dt {
	padding: 20px 0;
}

.course__airline-ca__message__txt dd,
.course__airline__gs__message__txt dd,
.course__airline__gh__message__txt dd,
.course__bridal__message__txt dd,
.course__foreignbusiness__message__txt dd {
	padding: 10px 0;
}

.point__strong{
	display: block;
	font-size: 40px;
	color: #C33;
	font-weight: bold;
}
.point__number {
	font-size: 40px;
	color:var(--course-airline);
	font-weight: bold;
		
}
.txtblock{display: inline-block;}

.anno {font-size: 14px;}

.teach_photo {
  width: 80%;
  margin: 0 auto;
  display: block;
}
.up_comment dt{font-weight:bold; font-size:1.2em;}

img.point_img {
  display: block;
  margin-bottom:4em;
  height: auto;
  width: 100%;
}

@media screen and (max-width: 1199px) {
.teach_photo {
  width: 100%;
}
}


@media screen and (max-width: 480px) {
	
	.opinfo{
		position: relative;
		bottom: 0;
		right: 0;
		text-align: center;
		border: 1px solid var(--course-airline);
		margin: 5px;
	}
	
	.course__airline-ca__container,
	.course__airline__gs__container,
	.course__airline__gh__container,
	.course__bridal__container,
	.course__foreignbusiness__container{padding: 0 5px;}
	
	#course__feature, #course__point, #course__obog, #course__curriculum, #course__myfavorite, #course__message,#favoriteclass{padding: 40px 0;}
	
	h1.course__title {
		position: absolute; top: 16%; right: 2%;
		font-size: 28px;
		font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
		font-weight: normal;
		line-height: 1.2;
		text-align: right;
	}
	
	h1.course__title span.coursename {font-size: 21px;}
	
strong.course__subtitle {
  position: absolute; top: 28%; right: 2%;
  font-size: 18px;
}	
	.mv__catch {
		background: #fff;
		position: absolute; top: 46%; right: 0;
		font-size: 18px;
		font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
		text-align: right;
		padding:5px 10px;
		opacity: 0.8;
	}
	
	nav .course__nav{
		display: grid;
		grid-template-columns: 1fr 1fr;
		margin-top: 20px;
		padding: 10px;
		font-size: 15px;
		line-height: 2em;
	}
	
	nav .course__nav li:nth-child(odd)::before {width: 0;}
	
	.point__container {flex-direction: column;}
	
	h3.point__title {text-align: center;}
	
	.course__airline-ca__point__title__container,
	.course__airline__gs__point__title__container,
	.course__airline__gh__point__title__container,
	.course__bridal__point__title__container,
	.course__foreignbusiness__point__title__container {flex-direction: column-reverse;}
		
	.point__graph, .point__employment, .point__img {width: 100%;}
	
	.course__airline-ca__obog__container,
	.course__airline__gs__obog__container,
	.course__airline__gh__obog__container,
	.course__bridal__obog__container,
	.course__foreignbusiness__obog__container{padding: 10px;}
	
	.course__airline-ca__obog__container__in,
	.course__airline__gs__obog__container__in,
	.course__airline__gh__obog__container__in,
	.course__bridal__obog__container__in,
	.course__foreignbusiness__obog__container__in{flex-direction: column-reverse;padding: 10px;}

	.course__airline-ca__obog__voice, .course__airline-ca__obog__img,
	.course__airline__gs__obog__voice, .course__airline__gs__obog__img,
	.course__airline__gh__obog__voice, .course__airline__gh__obog__img,
	.course__bridal__obog__voice, .course__bridal__obog__img,
	.course__foreignbusiness__obog__voice, .course__foreignbusiness__obog__img {width: 100%;}
	
	.course__curriculum__container--in {width: 1200px;}
	
	.course__airline-ca__myreason__container,
	.course__airline__gs__myreason__container,
	.course__airline__gh__myreason__container,
	.course__bridal__myreason__container,
	.course__foreignbusiness__myreason__container {flex-direction: column; padding: 10px;}

	.course__airline-ca__myreason__img, .course__airline-ca__myreason__txt,
	.course__airline__gs__myreason__img, .course__airline__gs__myreason__txt,
	.course__airline__gh__myreason__img, .course__airline__gh__myreason__txt,
	.course__bridal__myreason__img, .course__bridal__myreason__txt,
	.course__foreignbusiness__myreason__img, .course__foreignbusiness__myreason__txt{width: 100%;}
	
	
	.course__airline-ca__message__container,
	.course__airline__gs__message__container,
	.course__airline__gh__message__container,
	.course__bridal__message__container,
	.course__foreignbusiness__message__container {flex-direction: column-reverse; padding: 10px;}

	.course__airline-ca__message__txt, .course__airline-ca__message__img,
	.course__airline__gs__message__txt, .course__airline__gs__message__img,
	.course__airline__gh__message__txt, .course__airline__gh__message__img,
	.course__bridal__message__txt, .course__bridal__message__img,
	.course__foreignbusiness__message__txt, .course__foreignbusiness__message__img {width: 100%;}
	
	.course__airline-ca__favoriteclass__container,
	.course__airline__gs__favoriteclass__container,
	.course__airline__gh__favoriteclass__container,
	.course__bridal__favoriteclass__container,
	.course__foreignbusiness__favoriteclass__container{ flex-direction: column-reverse;}
	
	.course__airline-ca__favoriteclass__img,.course__airline-ca__favoriteclass__txt,
	.course__airline__gs__favoriteclass__img,.course__airline__gs__favoriteclass__txt,
	.course__airline__gh__favoriteclass__img,.course__airline__gh__favoriteclass__txt,
	.course__bridal__favoriteclass__img,.course__bridal__favoriteclass__txt,
	.course__foreignbusiness__favoriteclass__img,.course__foreignbusiness__favoriteclass__txt {width: 100%;}
	
	
	.point__employment {
    padding: 20px;
	}


	
}



/* グランドスタッフ 2025*/
#course__airline__gh__mv {
 position: relative;
 max-width: 1440px;
}


h2.course__title span.course__airline__gs__sub__title {color: var(--course-groundstaff);	}

#course__airline__gs__mv .mv__catch {right: 16.5%;}

.course__airline__gs__container--l{background: var(--course-groundstaff);}

.course__airline__gs__voice__catch {color: var(--course-groundstaff);}

.course__airline__gs__favoriteclass__txt dt {
    color: var(--course-groundstaff);
    padding: 10px 0;
    display: flex;
    align-items: baseline;
    font-size: 26px;
}

.course__airline__gs__favoriteclass__txt dt span.number {
    font-size: 60px;
    padding-right: 10px;
}


.course__airline__gs__point__title__container span.point__number {
	color: var(--course-groundstaff);

}

@media screen and (max-width: 480px) {
	

	
	#course__airline__gs__mv .mv__catch {
		right: 0;
		top: 45%;
		font-size: 16px;
		line-height: 1.5;
		}
		
	#course__airline__gs__mv .opinfo {
        border: 1px solid var(--course-groundstaff);
    }
	
	#course__airline__gs__mv h1.course__title span{display: block;}

	
	.course__airline__gs__obog__container{padding: 10px;}
	
	.course__airline__gs__obog__container__in{flex-direction: column-reverse;padding: 10px;}

	.course__airline__gs__obog__voice, .course__airline__gs__obog__img {width: 100%;}
	
	.course__curriculum__container--in {width: 1200px;}
	
	.course__airline__gs__myreason__container {flex-direction: column; padding: 10px;}

	.course__airline__gs__myreason__img, .course__airline__gs__myreason__txt{width: 100%;}
	
	
	.course__airline__gs__message__container{flex-direction: column-reverse; padding: 10px;}

	.course__airline__gs__message__txt, .course__airline__gs__message__img {width: 100%;}
	
	.course__airline__gs__favoriteclass__container{ flex-direction: column-reverse;}
	
	.course__airline__gs__favoriteclass__img,.course__airline__gs__favoriteclass__txt{width: 100%;}
	





}



/* グランドハンドリング 2025*/
#course__airline__gh__mv {
 position: relative;
 max-width: 1440px;
}

#course__airline__gh__mv h1.course__title {left: 13%;}

h2.course__title span.course__airline__gh__sub__title {color: var(--course-groundhandling);	}

#course__airline__gh__mv .mv__catch {left: 13%;}

.course__airline__gh__container--l{background: var(--course-groundhandling);}

.course__airline__gh__voice__catch {color: var(--course-groundhandling);}

.course__airline__gh__favoriteclass__txt dt {
    color: var(--course-groundhandling);
    padding: 10px 0;
    display: flex;
    align-items: baseline;
    font-size: 26px;
}

.course__airline__gh__favoriteclass__txt dt span.number {
    font-size: 60px;
    padding-right: 10px;
}


.course__airline__gh__point__title__container span.point__number {
	color: var(--course-groundhandling);

}


@media screen and (max-width: 480px) {
	
	
	#course__airline__gh__mv h1.course__title {
		right: auto;
		left: 2%;
		text-align: left;
		}
	
	#course__airline__gh__mv .mv__catch {
		left: 13%;
		top: 45%;
		font-size: 16px;
		line-height: 1.5;
		}
	
	#course__airline__gh__mv h1.course__title span{display: block;}

	#course__airline__gh__mv .opinfo {
        border: 1px solid var(--course-groundhandling);
    }
    
	.course__airline__gh__obog__container{padding: 10px;}
	
	.course__airline__gh__obog__container__in{flex-direction: column-reverse;padding: 10px;}

	.course__airline__gh__obog__voice, .course__airline__gh__obog__img {width: 100%;}
	
	.course__curriculum__container--in {width: 1200px;}
	
	.course__airline__gh__myreason__container {flex-direction: column; padding: 10px;}

	.course__airline__gh__myreason__img, .course__airline__gh__myreason__txt{width: 100%;}
	
	
	.course__airline__gh__message__container{flex-direction: column-reverse; padding: 10px;}

	.course__airline__gh__message__txt, .course__airline__gh__message__img {width: 100%;}
	
	.course__airline__gh__favoriteclass__container{ flex-direction: column-reverse;}
	
	.course__airline__gh__favoriteclass__img,.course__airline__gh__favoriteclass__txt{width: 100%;}
	





}



/* ブライダル 2025*/

#course__bridal__mv {
 position: relative;
 max-width: 1440px;
}



h2.course__title span.course__bridal__sub__title {color: var(--course-bridal);	}

#course__bridal__mv h1.course__title {left: 13%;}


#course__bridal__mv .mv__catch {left: 13%;}


.course__bridal__container--l{background: var(--course-bridal);}

.course__bridal__voice__catch {color: var(--course-bridal);}


.course__bridal__container--l h2.course__title, .course__bridal__container--l h2.course__title span.course__bridal__sub__title {
    color: #fff;
}


.course__bridal__favoriteclass__container {
    display: flex;
    gap: 20px;
    padding: 20px 0;
}

.course__bridal__favoriteclass__img {
    width: 45%;
}

.course__bridal__favoriteclass__txt {
    width: 55%;
}

.course__bridal__favoriteclass__txt dt {
    color: var(--course-bridal);
    padding: 10px 0;
    display: flex;
    align-items: baseline;
    font-size: 26px;
}

.course__bridal__favoriteclass__txt dt span.number {
    font-size: 60px;
    padding-right: 10px;
}

.course__bridal__favoriteclass__txt dt span.txtblock{display: inline-block;}


.course__bridal__choice__container,.course__bridal__choice__container--rev {
	display: flex;
	gap: 40px;
}

.course__bridal__choice__container--rev{flex-direction: row-reverse;}

.course__bridal__choice__img__container {
	width: 35%;
	padding: 40px 0;
}

.course__bridal__choice__txt__container {
	width: 65%;
	padding: 40px 0;
}

h3.course__bridal__choice__weddingplanner__title,
h3.course__bridal__choice__hotelstaff__title,
h3.course__bridal__choice__hairmake__title,
h3.course__bridal__choice__hairdresser__title{
	background: #ed6c00;
	font-size: 23px;
    color: #fff;
    padding: 0 20px;
    display: inline-block;
    position: relative;
}

h3.course__bridal__choice__weddingplanner__title::after,
h3.course__bridal__choice__hotelstaff__title::after,
h3.course__bridal__choice__hairmake__title::after,
h3.course__bridal__choice__hairdresser__title::after {
	content:"";
	aspect-ratio: 1;
	clip-path: polygon(0 0,65% 0,0 100%);;
	position: absolute;
	right: -45.5px;
	background: #ed6c00;
	width: 46px;
}


h3.course__bridal__choice__hotelstaff__title,h3.course__bridal__choice__hotelstaff__title::after{background-color: #2eb6aa;}

h3.course__bridal__choice__hairmake__title,h3.course__bridal__choice__hairmake__title::after{background-color: #ec6d74;}

h3.course__bridal__choice__hairdresser__title,h3.course__bridal__choice__hairdresser__title::after{background-color: #333;}


.course__bridal__choice__weddingplanner__catch span.mark,
.course__bridal__choice__hotelstaff__catch span.mark,
.course__bridal__choice__hairmake__catch span.mark,
.course__bridal__choice__hairdresser__catch span.mark{
	color: #ed6c00;
	background: linear-gradient(transparent 70%, #fff100 30%);
	font-weight: bold;
	font-size: 24px;
}



.course__bridal__choice__hotelstaff__catch span.mark {
	color: #2eb6aa;
}

.course__bridal__choice__hairmake__catch span.mark {
	color: #ec6d74;
}


.course__bridal__choice__txt__container dl.choice__weddingplanner dt,
.course__bridal__choice__txt__container dl.choice__hotelstaff dt,
.course__bridal__choice__txt__container dl.choice__hairmake dt,
.course__bridal__choice__txt__container dl.choice__hairdresser dt {
	color: #ed6c00;
	font-weight: bold;
	padding-top: 20px;
}


.course__bridal__choice__txt__container dl.choice__hotelstaff dt {
	color: #2eb6aa;
}

.course__bridal__choice__txt__container dl.choice__hairmake dt {
	color: #ec6d74;
}

.course__bridal__choice__txt__container dl.choice__hairdresser dt {
	color: #221815;
}




@media screen and (max-width: 480px) {
	
	
	#course__bridal__mv h1.course__title {
		right: auto;
		left: 11%;
		text-align: left;
		}
	
	#course__bridal__mv h1.course__title span{display: block;}
	
	#course__bridal__mv .opinfo {
        border: 1px solid var(--course-bridal);
    }
    
    h3.course__bridal__choice__weddingplanner__title,
	h3.course__bridal__choice__hotelstaff__title,
	h3.course__bridal__choice__hairmake__title,
	h3.course__bridal__choice__hairdresser__title{
		font-size: 20px;
	}

	h3.course__bridal__choice__weddingplanner__title::after,
	h3.course__bridal__choice__hotelstaff__title::after,
	h3.course__bridal__choice__hairmake__title::after,
	h3.course__bridal__choice__hairdresser__title::after {
		right: -39.5px;
		width: 40px;
	}

	
	.course__bridal__obog__container{padding: 10px;}
	
	.course__bridal__obog__container__in{flex-direction: column-reverse;padding: 10px;}

	.course__bridal__obog__voice, .course__bridal__obog__img {width: 100%;}
	
	.course__curriculum__container--in {width: 1200px;}
	
	.course__bridal__myreason__container {flex-direction: column; padding: 10px;}

	.course__bridal__myreason__img, .course__bridal__myreason__txt{width: 100%;}
	
	
	.course__bridal__message__container{flex-direction: column-reverse; padding: 10px;}

	.course__bridal__message__txt, .course__bridal__message__img {width: 100%;}
	
	.course__bridal__favoriteclass__container{ flex-direction: column-reverse;}
	
	.course__bridal__favoriteclass__img,.course__bridal__favoriteclass__txt{width: 100%;}
	
	.course__bridal__choice__container,.course__bridal__choice__container--rev {
		display: flex;
		flex-direction: column-reverse;
		gap: 0;
		padding: 20px 0;
	}

	.course__bridal__choice__img__container, .course__bridal__choice__txt__container {
		width: 100%;
		padding: 0;
	}


}




/* 外語ビジネス 2025*/

#course__foreignbusiness__mv {
 position: relative;
 max-width: 1440px;
}

h2.course__title span.course__foreignbusiness__sub__title {color: var(--course-foreignbusiness);	}

.course__foreignbusiness__container--l{background: var(--course-foreignbusiness);}

.course__foreignbusiness__voice__catch {color: var(--course-foreignbusiness);}

h2.course__title span.course__foreignbusiness__sub__title {
	color: var(--course-foreignbusiness);	
}


.page__course__foreignbusiness__container--l{
	background: var(--course-foreignbusiness);
	margin-bottom: ;
}

.course__foreignbusiness__container--l h2.course__title, .course__foreignbusiness__container--l h2.course__title span.course__foreignbusiness__sub__title {
    color: #fff;
}

.course__foreignbusiness__favoriteclass__container {
    display: flex;
    gap: 20px;
    padding: 20px 0;
}

.course__foreignbusiness__favoriteclass__img {
    width: 45%;
}

.course__foreignbusiness__favoriteclass__txt {
    width: 55%;
}

.course__foreignbusiness__favoriteclass__txt dt {
    color: var(--course-foreignbusiness);
    padding: 10px 0;
    font-size: 26px;
}

.course__foreignbusiness__favoriteclass__txt dt span.number {
    font-size: 60px;
    padding-right: 10px;
}

.course__foreignbusiness__choice__container,.course__foreignbusiness__choice__container--rev {
	display: flex;
	gap: 40px;
}

.course__foreignbusiness__choice__container--rev{flex-direction: row-reverse;}

.course__foreignbusiness__choice__img__container {
	width: 35%;
	padding: 40px 0;
}

.course__foreignbusiness__choice__txt__container {
	width: 65%;
	padding: 40px 0;
}

h3.course__foreignbusiness__choice__englishbusiness__title,
h3.course__foreignbusiness__choice__hotelresort__title,
h3.course__foreignbusiness__choice__trade__title {
	background: #ed7969;
	font-size: 23px;
    color: #fff;
    padding: 0 20px;
    display: inline-block;
    position: relative;
}

h3.course__foreignbusiness__choice__englishbusiness__title::after,
h3.course__foreignbusiness__choice__hotelresort__title::after,
h3.course__foreignbusiness__choice__trade__title::after {
	content:"";
	aspect-ratio: 1;
	clip-path: polygon(0 0,65% 0,0 100%);;
	position: absolute;
	right: -45.5px;
	background: #ed7969;
	width: 46px;
}

.course__foreignbusiness__choice__englishbusiness__catch span.mark,
.course__foreignbusiness__choice__hotelresort__catch span.mark,
.course__foreignbusiness__choice__trade__catch span.mark,
.course__foreignbusiness__choice__txt__container dl.choice__englishbusiness span.mark {
	background: linear-gradient(transparent 70%, #fff100 30%);
	font-weight: bold;
	font-size: 22px;
}
.course__foreignbusiness__choice__txt__container dl.choice__englishbusiness span.sub {
	font-size: 0.9em;
	color: #555;
}

.course__foreignbusiness__choice__txt__container dl.choice__englishbusiness dt,
.course__foreignbusiness__choice__txt__container dl.choice__hotelresort dt,
.course__foreignbusiness__choice__txt__container dl.choice__trade dt {
	color: #ed7969;
	font-weight: bold;
	padding-top: 20px;
}


@media screen and (max-width: 480px) {
	
	#course__foreignbusiness__mv .opinfo {border: 1px solid var(--course-foreignbusiness);}
	
	.course__foreignbusiness__obog__container{padding: 10px;}
	
	.course__foreignbusiness__obog__container__in{flex-direction: column-reverse;padding: 10px;}

	.course__foreignbusiness__obog__voice, .course__foreignbusiness__obog__img {width: 100%;}
	
	.course__foreignbusiness__myreason__container {flex-direction: column; padding: 10px;}

	.course__foreignbusiness__myreason__img, .course__foreignbusiness__myreason__txt{width: 100%;}
	
	
	.course__foreignbusiness__message__container{flex-direction: column-reverse; padding: 10px;}

	.course__foreignbusiness__message__txt, .course__foreignbusiness__message__img {width: 100%;}
	
	.course__foreignbusiness__favoriteclass__container{ flex-direction: column-reverse;}
	
	.course__foreignbusiness__favoriteclass__img,.course__foreignbusiness__favoriteclass__txt{width: 100%;}
	
	.course__foreignbusiness__choice__container,.course__foreignbusiness__choice__container--rev {
		display: flex;
		flex-direction: column-reverse;
		gap: 0;
		padding: 20px 0;
	}

	.course__foreignbusiness__choice__img__container, .course__foreignbusiness__choice__txt__container {
		width: 100%;
		padding: 0;
	}
	
}


@media screen and (max-width: 960px) {
  .page-inner-link {
    display: grid;
    grid-template-columns: 62.5% 34.375%;
    justify-content: space-between;
    gap: 7px 10px;
    max-width: 600px;
    margin: 20px auto 0;
  }
  .page-inner-link a {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: clamp(10px,2.8vw,15px);
    font-weight: normal;
    line-height: 1.1;
    height: 3.5em;
    border-radius: 1.75em;
    padding: 0;
  }
  .course-headline {
    font-size: clamp(24px,6.8vw,42px);
    margin-top: 30px;
  }
  .course-headline span {
    font-size: clamp(14px,4vw,31px);
  }
  .course-sub-headline {
    margin: 15px auto 25px;
  }
}

.course__top {}
.course__content-title {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 45px;
  position: relative;
}
.course__content-title::after {
  content: "";
  width: 110px;
  height: 2px;
  background-color: #b4b4b5;
  position: absolute;
  right: 0;
  left: 0;
  bottom: -18px;
  margin: auto;
}
.course__content-subtitle {
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 50px;
}
.course-slide__wrapper {
  width: 848px;
  height: 454px;
  background-color: #eeeeef;
  margin: 0 auto;
}
.slide-show .slick-prev:before,
.slide-show .slick-next:before {
  color: #000;
}
@media screen and (max-width: 960px) {
  .course__content-title {
    font-size: clamp(16px,4.5vw,18px);
    margin-bottom: 30px;
  }
  .course__content-title::after {
    bottom: -16px;
  }
  .course__content-subtitle {
    font-size: clamp(19px,5.4vw,26px);
    margin-bottom: 15px;
  }
  .course-slide__wrapper {
    width: 100%;
    height: auto;
    aspect-ratio: 320/171;
  }
  .course-slide__wrapper .slick-prev {
    left: -15px;
    z-index: 1;
  }
  .course-slide__wrapper .slick-next {
    right: -15px;
  }

}

.course-feature {
  padding: 80px 0 65px;
}
.course-feature .lead-text {
  max-width: 924px;
  margin: 0 auto 60px;
  line-height: 2;
}
.course-point__list {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 20px;
}
.course-point__item {
  display: flex;
  flex-direction: column;
  padding: 0 22px 22px;
  border-radius: 7px;
}
.cabinattendant .course-point__item {
  background-color: var(--course-airline-light);
}

.groundstaff .course-point__item {
  background-color: var(--course-groundstaff-light);
}

.groundhandling .course-point__item {
  background-color: var(--course-groundhandling-light);
}
.foreignbusiness .course-point__item {
  background-color: var(--course-foreignbusiness-light);
}
.bridal .course-point__item {
  background-color: var(--course-bridal-light);
}
.course-point__item .point-num {
  width: 128px;
  margin-bottom: 20px;
  margin-top: -10px;
}
.course-point-title {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.4;
  min-height: 3.2em;
}
.foreignbusiness .course-point-title {
  min-height: auto;
  margin-bottom: 8px;
}
.course-point-text {
  font-size: 14px;
  line-height: 1.7;
  margin-bottom: 10px;
}
.cabinattendant .course-point-text,
.groundstaff .course-point-text,
.groundhandling .course-point-text {
  font-size: 15px;
  line-height: 1.6;
}
.course-point__item .point-img {
  margin-top: auto;
  border-radius: 5px;
  overflow: hidden;
  text-align: center;
}

@media screen and (max-width: 960px) {
  .course-feature {
    padding: 45px 0 25px;
  }
  .course-feature .lead-text {
    max-width: none;
    margin: 0 auto 20px;
    line-height: 1.6;
    font-size: clamp(12px,3.4vw,16px);
  }
  .course-point__list {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .course-point__item {
    padding: 0 20px 20px;
  }
  .course-point__item .point-num {
    width: 126px;
  }
  .course-point-title {
    font-size: clamp(14px,4vw,16px);
    min-height: auto;
    margin-bottom: 8px;
  }
  .course-point-text {
    font-size: clamp(12px,3.4vw,14px);
  }
  .cabinattendant .course-point-text,
  .groundstaff .course-point-text,
  .groundhandling .course-point-text {
    font-size: clamp(12px,3.4vw,14px);
    line-height: 1.7;
  }
}

.course-curriculum {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  padding: 53px calc(50vw - 50%) 40px;
}
.cabinattendant .course-curriculum
 {
  background-color: var(--course-airline-light-light);
}
.groundstaff .course-curriculum
 {
  background-color: var(--course-groundstaff-light-light);
}

.groundhandling .course-curriculum {
  background-color: var(--course-groundhandling-light-light);
}
.foreignbusiness .course-curriculum {
  background-color: var(--course-foreignbusiness-light-light);
}
.bridal .course-curriculum {
  background-color: var(--course-bridal-light-light);
}
.course-curriculum .lead-text {
  font-size: 22px;
  line-height: 1.5;
  text-align: center;
  margin-top: -30px;
  margin-bottom: 65px;
}
.curriculum-details {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2em;
  padding: 0 23px 0 40px;
}
.curriculum-details:nth-child(n + 2) {
  margin-top: 35px;
}
.curriculum-details:nth-of-type(2) .curriculum-img {
  grid-column: 1/2;
  grid-row: 1
}
.curriculum-details:nth-of-type(2) .curriculum-details__content {
  grid-column: 2/3;
  grid-row: 1
}
.curriculum-details .details-top {
  display: flex;
  gap: 20px;
  margin-bottom: 15px;
}
.curriculum-details .year {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 112px;
  height: 112px;
  font-size: 22px;
  font-weight: bold;
  line-height: 1;
  color: #42210b;
  border: 1px solid;
  border-radius: 7px;
}
.cabinattendant .curriculum-details .year {
  background-color: var(--course-airline-light-middle);
  border-color: var(--course-airline);
}

.groundstaff .curriculum-details .year {
  background-color: var(--course-groundstaff-light-middle);
  border-color: var(--course-groundstaff);
}

.groundhandling .curriculum-details .year {
  background-color: var(--course-groundhandling-light-middle);
  border-color: var(--course-groundhandling);
}
.foreignbusiness .curriculum-details .year {
  background-color: var(--course-foreignbusiness-light-middle);
  border-color: var(--course-foreignbusiness);
}
.bridal .curriculum-details .year {
  background-color: var(--course-bridal-light-middle);
  border-color: var(--course-bridal);
}
/* .details-top__wrapper {
  max-width: 368px;
  width: 100%;
} */
.details-title {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 208px;
  height: 36px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  border: 1.4px solid;
  border-radius: 17px;
  background-color: #fff;
  margin-bottom: 10px;
}
.cabinattendant .details-title {
  color: var(--course-airline);
  border-color: var(--course-airline);
}

.groundstaff .details-title {
  color: var(--course-groundstaff);
  border-color: var(--course-groundstaff);
}

.groundhandling .details-title {
  color: var(--course-groundhandling);
  border-color: var(--course-groundhandling);
}

.foreignbusiness .details-title {
  color: var(--course-foreignbusiness);
  border-color: var(--course-foreignbusiness);
}
.bridal .details-title {
  color: var(--course-bridal-sub2);
  border-color: var(--course-bridal-sub2);
}
.details-text {
  font-size: 17px;
  font-weight: bold;
  line-height: 1.7;
}
.foreignbusiness .details-text {
  font-size: 16px;
}
.details-lead-text {
  font-size: 16px;
  line-height: 1.9;
}
.curriculum-img {
  
}
.curriculum-img img {
  max-width: 495px;
  width: 100%;
  border-radius: 5px;
}

@media screen and (max-width: 960px) {
  .course-curriculum {
    padding: 20px calc(50vw - 50%);
  }
  .course-curriculum .lead-text {
    font-size: clamp(14px,4vw,22px);
    line-height: 1.7;
    margin-top: 0;
    margin-bottom: 30px;
  }
  .curriculum-details {
    display: block;
    padding: 0;
  }
  .curriculum-details .details-top {
    gap: 13px;
    align-items: flex-start;
    margin-bottom: 10px;
  }
  .curriculum-details .year {
    width: clamp(70px,20vw,112px);
    height: auto;
    aspect-ratio: 1/1;
    font-size: clamp(14px,4vw,22px);
    border-radius: 7px;
  }
  .details-title {
    width: clamp(130px,37vw,208px);
    height: auto;
    aspect-ratio: 208/36;
    font-size: clamp(11px,3.1vw,18px);
    margin-bottom: 7px;
  }
  .details-text {
    font-size: clamp(10.5px,3vw,17px);
    line-height: 1.8;
  }
  .foreignbusiness .details-text {
    font-size: clamp(10px,2.8vw,17px);
  }
  .details-lead-text {
    font-size: clamp(10px,2.8vw,16px);
    margin-bottom: 10px;
  }
  .curriculum-img img {
    max-width: 100%;
  }
}

.course-ob {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
  padding-top: 75px;
}
.course-ob.col-1 {
  display: block;
  padding-top: 75px;
}
.ob-voice {
  padding: 40px 20px 15px;
  border: 1px solid #717071;
  border-radius: 5px;
}
.col-1 .ob-voice {
  display: grid;
  grid-template-columns: 483px 1fr;
  gap: 50px;
}
.ob-top {
  display: flex;
  justify-content: space-between;
  margin-bottom: 25px;
  gap: 10px;
}
.ob-profile {
  max-width: 310px;
  width: 100%;
}
.ob-profile-title {
  max-width: 280px;
  margin: 0 auto 15px;
}
.ob-profile-name {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 5px;
  border-bottom: 1.5px solid #221714;
  padding-bottom: 2px;
}
.ob-profile-name .name {
  font-size: 12px;
  padding-left: 13px;
  flex-shrink: 0;
}
.ob-profile-name .name span {
  font-size: 17px;
  font-weight: bold;
}
.ob-profile-name .from {
  font-size: 12px;
  line-height: 1.2;
  display: flex;
  flex-direction: column;
  justify-content: end;
}
.ob-profile-name .from.mt1em {
  margin-top: 1em;
}
.ob-profile-name .from span {
  display: block;
  font-size: 11px;
  letter-spacing: -1px;
}
.course-ob .incumbent {
  font-size: 12px;
  margin: 7px 0;
  padding-left: 13px;
}
.course-ob .l-text {
  font-size: 15px;
  font-weight: bold;
  line-height: 1.5;
  padding-left: 13px;
}
.course-ob.col-1 .l-text {
  padding-left: 0;
  margin-bottom: 10px;
}
.cabinattendant .l-text,
.groundstaff .l-text,
.groundhandling .l-text {
  color: var(--course-airline);
}
.foreignbusiness .l-text {
  color: var(--course-foreignbusiness);
}
.bridal .ob-voice:nth-child(1) .l-text {
  color: var(--course-bridal-sub2);
}
.bridal .ob-voice:nth-child(2) .l-text {
  color: var(--course-bridal);
}
.course-ob .ob-img {
  max-width: 165px;
  width: 100%;
}
.course-ob .comment {
  font-size: 14px;
  line-height: 1.8;
}
.course-ob .comment .mark {
  font-weight: bold;
  text-decoration: underline;
  text-decoration-color: #fff000;
  text-decoration-thickness: 3px;
}

@media screen and (max-width: 960px) {
  .course-ob {
    grid-template-columns: 1fr;
    gap: 30px;
    padding-top: 20px;
  }
  .course-ob.col-1 {
    padding-top: 20px;
  }
  .ob-voice {
    max-width: 500px;
    margin: auto;
    padding: 25px 10px 30px;
  }
  .col-1 .ob-voice {
    display: block;
  }
  .ob-top {
    margin-bottom: 15px;
  }
  .ob-profile {
    min-width: 183px;
  }
  .ob-profile-title {
    margin: 0 auto 5px;
    padding: 0 9px;
  }
  .ob-profile-name .name {
    font-size: clamp(7px,2vw,12px);
    padding-left: 5px;
  }
  .ob-profile-name .name span {
    font-size: clamp(10px,2.8vw,17px);
  }
  .ob-profile-name .from {
    font-size: clamp(7px,2vw,12px);
  }
  .course-ob .incumbent {
    font-size: clamp(7px,2vw,12px);
    margin: 3px 0;
    padding-left: 5px;
  }
  .course-ob .l-text {
    font-size: clamp(9px,2.5vw,15px);
    padding-left: 5px;
  }
  .course-ob.col-1 .l-text {
    padding-left: 0;
    margin-bottom: 0;
  }
  .course-ob .ob-img {
    max-width: 165px;
    width: 100%;
  }
  .course-ob .comment {
    font-size: clamp(8px,2.2vw,14px);
  }
}

.course-occupation {
  padding: 95px 0 90px;
}
.occupation__list {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 11px 15px;
  max-width: 952px;
  margin: 0 auto 70px;
}
.occupation__list.col2 {
  grid-template-columns: repeat(2,1fr);
  max-width: 468px;
}
.occupation__list.col3 {
  grid-template-columns: repeat(3,1fr);
  max-width: 710px;
}
.occupation__item {
  border: 1px solid #6f7071;
  border-radius: 5px;
  text-align: center;
  padding: 14px 10px 16px;
}
.bridal .occupation__item:nth-child(1) .item-title {
  padding: 0 13px;
}
.bridal .occupation__item:nth-child(3) .item-title {
  padding: 0 4px;
}
.bridal .occupation__item:nth-child(4) .item-title {
  padding: 0 4px;
}
.groundhandling .occupation__item:nth-child(3) .item-title {
  padding: 0 4px;
}
.groundhandling .occupation__item:nth-child(4) .item-title {
  padding: 0 4px;
}
.occupation__item .item-title {
  font-size: 18px;
  font-weight: normal;
  line-height: 1.5;
  height: 3em;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 8px;
}
.occupation__item .item-img {
  max-width: 186px;
  width: 100%;
  margin: 0 auto;
}
.occupation__item.other-item {
  padding: 0;
  text-align: left;
  border: none;
  grid-column: 1/5;
}
.link-button-01 {
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  border-radius: 21px;
  width: 360px;
  height: 40px;
  margin: 0 auto;
  position: relative;
  line-height: 1;
  border: 1px solid;
}
.cabinattendant .link-button-01,
.groundstaff .link-button-01,
.groundhandling .link-button-01 {
  background-color: var(--course-airline);
}
.foreignbusiness .link-button-01 {
  background-color: var(--course-foreignbusiness);
}
.bridal .link-button-01 {
  background-color: var(--course-bridal);
}
.opencampus .link-button-01 {
  background-color: #f3a83b;
}
.link-button-01:hover {
  opacity: 1;
  background-color: #fff;
}
.cabinattendant .link-button-01:hover,
.groundstaff .link-button-01:hover,
.groundhandling .link-button-01:hover {
  color: var(--course-airline);
  border-color: var(--course-airline);
}
.foreignbusiness .link-button-01:hover {
  color: var(--course-foreignbusiness);
  border-color: var(--course-foreignbusiness);
}
.bridal .link-button-01:hover {
  color: var(--course-bridal);
  border-color: var(--course-bridal);
}
.opencampus .link-button-01:hover {
  color: #f3a83b;
  border-color: #f3a83b;
}
.link-button-01::before {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  background-color: #fff;
  border-radius: 50%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
}
.link-button-01::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 7px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 24px;
  margin: auto;
}
.cabinattendant .link-button-01::after,
.groundstaff .link-button-01::after,
.groundhandling .link-button-01::after {
  border-color: transparent transparent transparent var(--course-airline);
}
.foreignbusiness .link-button-01::after {
  border-color: transparent transparent transparent var(--course-foreignbusiness);
}
.bridal .link-button-01::after {
  border-color: transparent transparent transparent var(--course-bridal);
}
.opencampus .link-button-01::after {
  border-color: transparent transparent transparent #f3a83b;
}
.cabinattendant .link-button-01:hover::before,
.groundstaff .link-button-01:hover::before,
.groundhandling .link-button-01:hover::before {
  background-color: var(--course-airline);
}
.foreignbusiness .link-button-01:hover::before {
  background-color: var(--course-foreignbusiness);
}
.bridal .link-button-01:hover::before {
  background-color: var(--course-bridal);
}
.opencampus .link-button-01:hover::before {
  background-color: #f3a83b;
}
.link-button-01:hover::after {
  border-color: transparent transparent transparent #fff;
}

@media screen and (max-width: 960px) {
  .course-occupation {
    padding: 45px 0 35px;
  }
  .occupation__list {
    grid-template-columns: repeat(2,1fr);
    gap: 10px;
    margin: 0 auto 20px;
  }
  .occupation__list.col2 {
    grid-template-columns: repeat(2,1fr);
  }
  .occupation__list.col3 {
    grid-template-columns: repeat(2,1fr);
  }
  .occupation__item {
    padding: 15px 13px 11px;
  }
  .bridal .occupation__item:nth-child(1) .item-title {
    padding: 0;
  }
  .bridal .occupation__item:nth-child(3) .item-title {
    padding: 0;
  }
  .bridal .occupation__item:nth-child(4) .item-title {
    padding: 0;
  }
  .groundhandling .occupation__item:nth-child(3) .item-title {
    padding: 0;
  }
  .groundhandling .occupation__item:nth-child(4) .item-title {
    padding: 0;
  }
  .occupation__item .item-title {
    font-size: clamp(12px,3.4vw,18px);
    height: auto;
    display: block;
    text-align: center;
    margin-bottom: 15px;
  }
  .occupation__item.other-item {
    padding-top: 5px;
    grid-column: 1/3;
  }
  .occupation__item.other-item p {
    font-size: clamp(13px,3.7vw,16px);
  }
  .link-button-01 {
    font-size: clamp(12px,3.4vw,16px);
    border-radius: 21px;
    max-width: 360px;
    width: 100%;
    height: 2.5em;
    padding: 0 20px;
  }
  .link-button-01::before {
    width: 14px;
    height: 14px;
  }
  .link-button-01::after {
    border-width: 3px 0 3px 6px;
    right: 23px;
  }
  .course-occupation .button__wrap {
    padding: 0 20px;
  }
}

.course-schedule {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  padding: 45px calc(50vw - 50%) 15px;
  background-color: #fef9f2;
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 16px
}
.schedule-title {
  font-size: 25px;
  font-weight: bold;
  max-width: max-content;
  min-width: 270px;
  width: 100%;
  text-align: center;
  margin: 0 auto 20px;
  position: relative;
}
.schedule-title::before,.schedule-title::after,
.schedule-title span::before,.schedule-title span::after {
  content: "";
  display: block;
  width: 1px;
  height: 34px;
  background-color: #000;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.cabinattendant .schedule-title::before,.cabinattendant .schedule-title::after,
.cabinattendant .schedule-title span::before,.cabinattendant .schedule-title span::after,
.groundstaff .schedule-title::before,.groundstaff .schedule-title::after,
.groundstaff .schedule-title span::before,.groundstaff .schedule-title span::after,
.groundhandling .schedule-title::before,.groundhandling .schedule-title::after,
.groundhandling .schedule-title span::before,.groundhandling .schedule-title span::after {
  background-color: var(--course-airline);
}
.foreignbusiness .schedule-title::before,.foreignbusiness .schedule-title::after,
.foreignbusiness .schedule-title span::before,.foreignbusiness .schedule-title span::after {
  background-color: var(--course-foreignbusiness);
}
.bridal .schedule-title::before,.bridal .schedule-title::after,
.bridal .schedule-title span::before,.bridal .schedule-title span::after {
  background-color: var(--course-bridal);
}
.schedule-title::before {
  transform: rotate(-18deg);
  left: -32px;
}
.schedule-title span::before {
  transform: rotate(-18deg);
  left: -24px;
}
.schedule-title::after {
  transform: rotate(18deg);
  right: -32px;
}
.schedule-title span::after {
  transform: rotate(18deg);
  right: -24px;
}
.schedule-img {
  margin-bottom: 10px;
}
.schedule-text {
  font-size: 14px;
}
@media screen and (max-width: 960px) {
  .course-schedule {
    padding: 20px calc(50vw - 50%);
    grid-template-columns: 1fr;
    gap: 30px
  }
  .schedule-title {
    font-size: clamp(14px,4vw,25px);
    min-width: 180px;
    margin: 0 auto 15px;
  }
  .schedule-title::before,.schedule-title::after,
  .schedule-title span::before,.schedule-title span::after {
    height: clamp(20px,5.7vw,34px);
  }
  .schedule-title::before {
    left: -18px;
  }
  .schedule-title span::before {
    left: -10px;
  }
  .schedule-title::after {
    right: -18px;
  }
  .schedule-title span::after {
    right: -10px;
  }
  .schedule-img {
    margin-bottom: 5px;
    text-align: center;
  }
  .schedule-text {
    font-size: clamp(9px,2.5vw,14px);
  }
}

.specialist {
  display: flex;
  justify-content: center;
  gap: 70px;
  border: 5px solid;
  border-radius: 5px;
  margin-top: 35px;
  padding: 0 20px;
}
.cabinattendant .specialist {
  border-color: var(--course-airline);
}
.groundstaff .specialist {
  border-color: var(--course-groundstaff);
}
.groundhandling .specialist {
  border-color: var(--course-groundhandling);
}
.foreignbusiness .specialist {
  border-color: var(--course-foreignbusiness);
}
.bridal .specialist {
  border-color: var(--course-bridal);
}
.specialist__wrapper {
  max-width: 547px;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.specialist-title {
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 10px;
}
.cabinattendant .specialist-title {
  color: var(--course-airline);
}
.groundstaff .specialist-title {
  color: var(--course-groundstaff);
}
.groundhandling .specialist-title {
  color: var(--course-groundhandling);
}
.foreignbusiness .specialist-title {
  color: var(--course-foreignbusiness);
}
.bridal .specialist-title {
  color: var(--course-bridal);
}
.specialist-text {
  font-size: 18px;
  line-height: 1.8;
}
.specialist-img {
  max-width: 300px;
  width: 100%;
  padding-top: 4px;
}

@media screen and (max-width: 960px) {
  .specialist {
    display: block;
    margin-top: 15px;
    padding: 15px 10px 0;
  }
  .specialist__wrapper {
    max-width: none;
    display: block;
  }
  .specialist-title {
    font-size: clamp(20px,5.7vw,30px);
    margin-bottom: 5px;
  }
  .specialist-text {
    font-size: clamp(13px,3.7vw,18px);
    margin-bottom: 10px;
  }
  .specialist-img {
    max-width: 400px;
    padding: 0 30px;
    margin: auto;
  }
}

.course-record {
  padding: 100px 0 0;
}
.record-details {}
.record-details-title {
  font-size: 30px;
  font-weight: bold;
  color: #fff;
  line-height: 2;
  padding-left: 22px;
  margin-bottom: 40px;
}
.cabinattendant .record-details-title {
  background-color: var(--course-airline-sub);
}

.groundstaff .record-details-title {
  background-color: var(--course-groundstaff-sub);
}
.groundhandling .record-details-title {
  background-color: var(--course-groundhandling-sub);
}
.foreignbusiness .record-details-title {
  background-color: var(--course-foreignbusiness);
}
.bridal .record-details-title {
  background-color: var(--course-bridal);
}
.record-details-subtitle {
  font-size: 28px;
  font-weight: normal;
  max-width: 1063px;
  margin: 0 auto 25px;
  padding: 0 15px;
  display: grid;
  grid-template-columns: 1em max-content 1fr;
  align-items: center;
}
.record-details-subtitle::before {
  content: "●";
}
.record-details-subtitle::after {
  content: "";
  display: block;
  height: 1px;
  background-color: #717071;
  margin-left: 30px;
}
.record-data {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 950px;
  margin: 0 auto;
}
.bridal .record-data {
  max-width: 1000px;
}
.record-img {
  max-width: 534px;
  width: 100%;
}
.foreignbusiness .record-img {
  max-width: 485px;
}
.record-main {
  max-width: 350px;
  width: 100%;
  border: 1px solid;
  border-radius: 5px;
  line-height: 1.9;
  padding: 0 20px;
  margin-top: 10px;
}
.cabinattendant .record-main {
  border-color: var(--course-airline-sub);
}
.groundstaff .record-main {
  border-color: var(--course-groundstaff-sub);
}
.groundhandling .record-main {
  border-color: var(--course-groundhandling-sub);
}
.foreignbusiness .record-main {
  border-color: var(--course-foreignbusiness);
}
.bridal .record-main {
  border-color: var(--course-bridal);
}
.record-main-title {
  font-size: 24px;
  font-weight: bold;
  width: max-content;
  margin-top: -22px;
  margin-left: -10px;
  margin-bottom: 10px;
  padding: 0 10px;
  background-color: #fff;
}
.cabinattendant .record-main-title {
  color: var(--course-airline-sub);
}
.groundstaff .record-main-title {
  color: var(--course-groundstaff-sub);
}
.groundhandling .record-main-title {
  color: var(--course-groundhandling-sub);
}
.foreignbusiness .record-main-title {
  color: var(--course-foreignbusiness);
}
.bridal .record-main-title {
  color: var(--course-bridal);
}
.record-main-subtitle {
  font-size: 16px;
  font-weight: bold;
}
.record-main__list {
  font-size: 16px;
  margin-bottom: 50px;
}

@media screen and (max-width: 960px) {
  .course-record {
    padding: 45px 0 0;
  }
  .record-details-title {
    font-size: clamp(22px,6.2vw,30px);
    line-height: 2.3;
    padding-left: 13px;
    margin-bottom: 15px;
  }
  .record-details-subtitle {
    display: none;
  }
  .record-data {
    flex-direction: column;
    gap: 50px;
  }
  .record-img {
    max-width: 500px;
  }
  .record-main {
    max-width: 500px;
    margin-top: 0;
  }
  .record-main-title {
    font-size: clamp(20px,5.7vw,24px);
    margin-top: -0.9em;
    margin-left: -8px;
    padding: 0 8px;
  }
  .record-main-subtitle {
    font-size: clamp(13px,3.7vw,16px);
  }
  .record-main__list {
    font-size: clamp(13px,3.7vw,16px);
    margin-bottom: 25px;
  }
}

.course-news {
  padding: 110px 0 0;
}
.course-news-title {
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 40px;
}
.course-news ul {
  margin-bottom: 60px;
}
.slide-opencampus {
  max-width: 1200px;
  margin: auto;
}
.slide-course .slick-slide,
.slide-opencampus .slick-slide {
  margin: 0 5px;
}
.slide-top-news .slick-prev,
.slide-top-news .slick-next,
.slide-course .slick-prev,
.slide-course .slick-next,
.slide-opencampus .slick-prev,
.slide-opencampus .slick-next {
  width: 16px;
  height: 32px;
  top: 33%;
}
.slide-top-news .slick-prev,
.slide-top-news .slick-next {
  top: 50%;
}
.slide-course .slick-prev,
.slide-opencampus .slick-prev {
  left: -21px;
}
.slide-top-news .slick-prev {
  left: 0;
}
.slide-course .slick-next,
.slide-opencampus .slick-next {
  right: -21px;
}
.slide-top-news .slick-next {
  right: 0;
}
.slide-top-news .slick-prev:before,
.slide-top-news .slick-next:before,
.slide-course .slick-prev:before,
.slide-course .slick-next:before,
.slide-opencampus .slick-prev:before,
.slide-opencampus .slick-next:before {
  content: "";
  color: #000;
  font-size: inherit;
  font-family: inherit;
  opacity: 1;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 16.5px 16px 16.5px 0;
  border-color: transparent #000 transparent transparent;
}
.slide-course .slick-prev:before {
  
}
.slide-top-news .slick-next:before,
.slide-course .slick-next:before,
.slide-opencampus .slick-next:before {
  transform: rotate(180deg);
}
.slide-top-news .slick-prev:hover,
.slide-top-news .slick-next:hover,
.slide-course .slick-prev:hover,
.slide-course .slick-next:hover,
.slide-opencampus .slick-prev:hover,
.slide-opencampus .slick-next:hover {
  opacity: .75;
}

.section_content_heading {
	font-size: 40px;
	text-align: center;
	color: #333;
	margin-bottom: 5vw;
	position: relative;
}

.section_content_heading small {font-size: 20px; display: block; margin-top: 2vw;}

.section_content_heading small::after {
  content: "";
  width: 110px;
  height: 2px;
  background-color: #EF8200;
  position: absolute;
  right: 0;
  left: 0;
  bottom: -18px;
  margin: auto;
}


.section_subcontent_heading {
	font-size: 30px;
	text-align: center;
	color: #333;
	margin: 5vw 0;
}

.oc-pickup .oc-flex {justify-content: center;}

.oc-pickup-title:before, .oc-pickup-title:after {
	content: "";
    height: 2px;
    width: 46px;
    background-color: #666;
    transition: .3s;
    transform: rotate(55deg);
    margin-right: 10px;
    margin-top: 30px;
}

.oc-pickup-title:after {
    transform: rotate(-55deg);
    margin-left: 9px;
}


@media screen and (max-width: 960px) {
  .slide-opencampus {
    width: 85%;
  }
  .slide-course {
    width: 96%;
    margin: auto;
  }
  .course-news {
    padding: 40px 0 0;
  }
  .course-news-title {
    font-size: clamp(20px,5.7vw,26px);
    margin-bottom: 30px;
  }
  .course-news ul {
    /* display: none; */
    /* display: grid; */
    /* grid-template-columns: repeat(4, 1fr); */
    margin-bottom: 30px;
  }
  .course-news .button__wrap {
    padding: 0 20px;
  }
  .slide-course .slick-prev,
  .slide-opencampus .slick-prev {
    left: -20px;
  }
  .slide-top-news .slick-prev {
    left: 2.5px;
  }
  .slide-course .slick-next,
  .slide-opencampus .slick-next {
    right: -20px;
  }
  .slide-top-news .slick-next {
    right: 2.5px;
  }
}

.course-teacher {
  padding: 110px 0 0;
}
.course-teacher__list {
  display: flex;
  justify-content: center;
  gap: 22px;
  margin-bottom: 65px;
}
.course-teacher__item {
  max-width: 263px;
  width: 100%;
}
.teacher-name {
  text-align: center;
  font-size: 21px;
  margin-top: 10px;
}
.teacher-name span {
  display: block;
  font-size: 16px;
}

@media screen and (max-width: 960px) {
  .course-teacher {
    padding: 45px 0 0;
  }
  .course-teacher__list {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    justify-content: space-between;
    gap: 20px 13px;
    margin-bottom: 20px;
  }
  .course-teacher__item {
    max-width: none;
    width: 100%;
  }
  .teacher-name {
    font-size: clamp(12px,3.4vw,21px);
    margin-top: 5px;
  }
  .teacher-name span {
    font-size: clamp(9px,2.5vw,16px);
  }
  .course-teacher .button__wrap {
    padding: 0 20px;
  }
}

.course-link {
  margin: 115px auto 110px;
}
.course-link__list {
  max-width: 985px;
  margin: 0 auto;
}
.course-link__list.col3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.course-link__list.col3 a {
  border: 2px solid var(--course-airline);
  background-color: var(--course-airline-light2);
  padding: 12px;
}
.course-link__list.col3 a {
  border: 2px solid var(--course-airline);
  background-color: var(--course-airline-light2);
  padding: 12px;
}
.course-link__list.col3 a {
  border: 2px solid var(--course-airline);
  background-color: var(--course-airline-light2);
  padding: 12px;
}

.course-link__list.col3 li span {
  display: block;
  font-weight: bold;
}
.course-link__list.col2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
  margin-top: 25px;
}
.course-link__list.col2 a {
  font-size: 22px;
  padding: 15px 0;
}
.course-link__list.col2 li:nth-child(1) a {
  border: 2px solid var(--course-foreignbusiness);
  background-color: var(--course-foreignbusiness-light2);
  font-weight: bold;
}
.course-link__list.col2 li:nth-child(2) a {
  border: 2px solid var(--course-bridal);
  background-color: var(--course-bridal-light2);
  font-weight: bold;
}
.course-link__list a {
  display: block;
  color: #000;
  text-align: center;
  border-radius: 7px;
  position: relative;
}
.course-link__list a:hover {
  opacity: 1;
  color: #fff;
}
.course-link__list.col3 a:hover {
  background-color: var(--course-airline);
}
.course-link__list.col2 li:nth-child(1) a:hover {
  background-color: var(--course-foreignbusiness);
}
.course-link__list.col2 li:nth-child(2) a:hover {
  background-color: var(--course-bridal);
}
.course-link__list a::before {
  content: "";
  display: block;
  width: 22px;
  height: 22px;
  background-color: #fff;
  border-radius: 50%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 12px;
  margin: auto;
}
.course-link__list a::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 9px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 17px;
  margin: auto;
}
.course-link__list.col3 a::after {
  border-color: transparent transparent transparent var(--course-airline-sub);
}
.course-link__list.col2 li:nth-child(1) a::after {
  border-color: transparent transparent transparent var(--course-foreignbusiness);
}
.course-link__list.col2 li:nth-child(2) a::after {
  border-color: transparent transparent transparent var(--course-bridal);
}

@media screen and (max-width: 960px) {
  .course-link {
    width: 100vw;
    margin: 95px calc(50% - 50vw);
  }
  .course-link__list.col3 {
    display: block;
    border-top: 1px solid var(--course-airline-sub);
  }
  .course-link__list.col3 li:nth-of-type(1) {
    padding: 15px 15px 0;
    margin-bottom: -2px;
    background-color: var(--course-airline-light2);
  }
  .course-link__list.col3 li:nth-of-type(3) {
    position: relative;
  }
  .course-link__list.col3 li:nth-of-type(3)::before,
  .course-link__list.col3 li:nth-of-type(3)::after {
    content: "";
    display: block;
    width: calc(100% - 30px);
    height: 0;
    border-top: 1px dashed var(--course-airline-sub);
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    margin: auto;
    z-index: 1;
  }
  .course-link__list.col3 li:nth-of-type(3)::after {
    top: auto;
    bottom: 0;
  }
  .course-link__list.col3 a {
    border: none;
    padding: 7px 15px;
  }
  .course-link__list.col3 a span {
    display: none;
  }
  .course-link__list.col2 {
    display: block;
    margin-top: 0;
  }
  .course-link__list.col2 a {
    font-size: clamp(16px,4.5vw,22px);
    padding: 13px 15px;
  }
  .course-link__list.col2 li:nth-child(1) a {
    border: none;
    border-top: 1px solid var(--course-foreignbusiness);
  }
  .course-link__list.col2 li:nth-child(2) a {
    border: none;
    border-top: 1px solid var(--course-bridal);
    border-bottom: 1px solid var(--course-bridal);
  }
  .course-link__list a {
    text-align: left;
    border-radius: 0;
  }
  .course-link__list a::before {
    content: none;
  }
}

.course-info {
  max-width: 850px;
  margin: 0 auto;
  padding: 65px 0 190px;
}
.course-info__list {
  display: flex;
  justify-content: space-between;
  gap: 1em;
}
.course-info__list.col2 {
  margin-top: 70px;
}
.col3 .course-info__item {
  max-width: 255px;
  width: 100%;
}
.col2 .course-info__item {
  max-width: 390px;
  width: 100%;
}
.course-info__item a {
  display: block;
  color: var(--main-txt-color);
}
.course-info__item a:hover {
  opacity: 1;
}
.course-info__img {
  border: 1px solid var(--main-orange);
  border-radius: 5px;
  overflow: hidden;
  margin-bottom: 15px
}
.course-info__item a:hover .course-info__img {
  opacity: .7;
}
.course-info__title {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  border-bottom: 1px solid #b4b4b5;
  margin-bottom: 10px;
  padding-bottom: 5px;
}
.course-info__title::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 10.4px;
  border-color: transparent transparent transparent var(--main-orange);
  margin-left: 12px;
}
.course-info__item a:hover .course-info__title {
  color: var(--main-orange);
}
.course-info__title span {
  font-size: 14px;
  display: block;
}
.course-info__copy {
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 15px;
  padding: 0 1em;
}
.course-info__text {
  font-size: 16px;
}

@media screen and (max-width: 960px) {
  .course-info {
    padding: 30px 0 90px;
  }
  .course-info__list {
    flex-direction: column;
    gap: 30px;
  }
  .course-info__list.col2 {
    margin-top: 30px;
  }
  .col3 .course-info__item {
    max-width: none;
  }
  .col2 .course-info__item {
    max-width: none;
  }
  .course-info__img {
    margin-bottom: 10px
  }
  .course-info__title {
    font-size: clamp(14px,4vw,16px);
    margin-bottom: 5px;
  }
  .course-info__title::after {
    border-width: 5px 0 5px 10px;
    margin-left: 10px;
  }
  .course-info__title span {
    font-size: clamp(12px,3.4vw,14px);
  }
  .course-info__copy {
    font-size: clamp(11px,3.1vw,14px);
    font-weight: normal;
    margin-bottom: 10px;
    padding: 0;
  }
  .course-info__text {
    font-size: clamp(12px,3.4vw,16px);
  }
}

.record-info {
  max-width: 1010px;
  margin: 0 auto;
  padding: 80px 0 320px;
  display: flex;
  justify-content: space-between;
  gap: 1em;
}
.record-info__item {
  max-width: 490px;
  width: 100%;
  border: 2px solid #f29600;
  border-radius: 5px;
  padding: 6px;
}
.record-info__item-wrapper {
  background-image: linear-gradient(to right, #f29600 3px, transparent 3px),linear-gradient(to bottom, #f29600 3px, transparent 3px),linear-gradient(to left, #f29600 3px, transparent 3px),linear-gradient(to top, #f29600 3px, transparent 3px);
  background-size: 10px 3px,3px 10px,10px 3px,3px 10px;
  background-repeat: repeat-x,repeat-y,repeat-x,repeat-y;
  background-position: left top,right top,right bottom,left bottom;
  padding: 40px 10px;
  height: 100%;
}
.record-info__title {
  font-size: 27px;
  font-weight: normal;
  text-align: center;
}
.record-info__item:nth-of-type(2) .record-info__title {
  letter-spacing: 8px;
}
.record-info__item:nth-of-type(2) .record-info__title span {
  letter-spacing: 0;
}
.record-info__title span {
  display: block;
  font-size: 46px;
  font-weight: bold;
  color: var(--main-orange);
}
.record-info__item:nth-of-type(1) .record-info__title span {
  letter-spacing: 10px;
}
.record-info__sub-text {
  font-size: 26px;
  text-align: center;
  letter-spacing: 3px;
}
.record-info__item:nth-of-type(1) .record-info__img {
  max-width: 382px;
  margin: 10px auto 20px;
}
.record-info__item:nth-of-type(2) .record-info__img {
  max-width: 440px;
  margin: 10px auto 31px;
}
.record-info__img {}
.record-info .link-button-01 {
  max-width: 440px;
  width: 100%;
  height: 49px;
  font-size: 20px;
  border-radius: 25px;
  background-color: var(--main-orange);
}
.record-info .link-button-01::before {
  width: 22px;
  height: 22px;
}
.record-info .link-button-01::after {
  border-width: 5px 0 5px 9px;
  border-color: transparent transparent transparent var(--main-orange);
  right: 25px;
}
.record-info .link-button-01:hover {
  opacity: 1;
  background-color: #fff;
  color: var(--main-orange);
  border: 2px solid var(--main-orange);
}
.record-info .link-button-01:hover::before {
  background-color: var(--main-orange);
}
.record-info .link-button-01:hover::after {
  border-color: transparent transparent transparent #fff;
}

@media screen and (max-width: 960px) {
  .record-info {
    padding: 20px 0 45px;
    flex-direction: column;
    gap: 10px;
  }
  .record-info__item {
    max-width: none;
    padding: 4px;
  }
  .record-info__item-wrapper {
    padding: 25px 10px;
  }
  .record-info__title {
    font-size: clamp(17.6px,5vw,27px);
  }
  .record-info__item:nth-of-type(2) .record-info__title {
    letter-spacing: 5px;
  }
  .record-info__title span {
    font-size: clamp(30px,8.5vw,46px);
  }
  .record-info__item:nth-of-type(1) .record-info__title span {
    letter-spacing: 8px;
  }
  .record-info__sub-text {
    font-size: clamp(17px,4.8vw,26px);
    letter-spacing: 1px;
  }
  .record-info__item:nth-of-type(1) .record-info__img {
    max-width: 500px;
    margin: 10px auto 15px;
    padding: 0 27px;
  }
  .record-info__item:nth-of-type(2) .record-info__img {
    max-width: 500px;
    margin: 10px auto 25px;
    padding: 0 10px;
  }
  .record-info .link-button-01 {
    height: clamp(32px,9vw,49px);
    font-size: clamp(13px,3.7vw,20px);
  }
  .record-info .link-button-01::before {
    width: clamp(14px,4vw,22px);
    height: clamp(14px,4vw,22px);
  }
  .record-info .link-button-01::after {
    border-width: clamp(3.23px,0.9vw,5px) 0 clamp(3.23px,0.9vw,5px) clamp(5.66px,1.6vw,9px);
    right: clamp(23.5px,6.7vw,25px);
  }
}

.merit-headline {
  max-width: 660px;
  margin: 46px auto 95px;
}
.merit__list {
  margin-bottom: 175px;
}
.merit__item {}
.merit__item-title-wrap {
  display: grid;
  grid-template-columns: 96px 1fr;
  align-items: center;
  gap: 15px;
  border-bottom: 4px dashed #f1ed99;
  padding: 0 0 30px 20px; 
}
.merit__item-title {
  font-size: 35px;
  font-weight: bold;
}
.merit__item-title span {
  color: var(--main-orange);
}
.merit-01 .merit__item-title span {
  font-family: var(--sub-font-family);
  font-size: 60px;
  color: #ed1c24;
  position: relative;
  bottom: -5px;
  display: inline-block;
  margin-right: 5px;
  line-height: 1;
}
.merit-01__wrapper {
  display: flex;
  justify-content: space-between;
  gap: 2em;
  max-width: 995px;
  margin: auto;
  padding: 40px 0 115px;
}
.merit-01__wrapper figure {
  max-width: 425px;
}
.merit-01__text {
  max-width: 506px;
  line-height: 2;
  margin-top: 90px;
}
.merit-01__text .mark {
  font-weight: bold;
  background: linear-gradient(transparent 60%, #fff000 60%);
}
.merit-02__wrapper {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-top: 40px;
}
.merit-02__wrapper figure {
  max-width: 540px;
  width: 100%;
}
.merit-02__text {
  max-width: 434px;
}
.merit-02__text dt {
  font-size: 22px;
  font-weight: bold;
  color: var(--main-orange);
  margin-bottom: 5px;
}
.merit-02__text dd {
  line-height: 2;
}
.co-collaboration {
  padding-bottom: 100px;
}
.co-collaboration__title {
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  background-color: #f6a017;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 260px;
  height: 44px;
  border-radius: 1em;
  margin: 70px auto 15px;
}
.co-collaboration__text {
  line-height: 2;
  max-width: 1000px;
  margin: 0 auto 30px;
}
.co-collaboration__text span {
  font-size: 20px;
  font-weight: bold;
  color: var(--main-orange);
}
.co-collaboration figure {
  text-align: center;
}
.merit-03 {
  padding-bottom: 120px;
}
.merit-03 .merit__item-title {
  line-height: 1.4;
  margin-top: 15px;
}
.merit-03 .merit__item-title small {
  display: block;
  font-size: 26px;
}
.merit-03__wrapper {
  max-width: 946px;
  margin: 50px auto 75px;
  display: flex;
  justify-content: space-between;
  gap: 1em;
}
.merit-03__list {
  max-width: 300px;
  width: 100%;
  border: 1px solid;
}
.merit-03__list01 {
  border-color: #dd9a00;
}
.merit-03__list02 {
  border-color: #11b7c7;
}
.merit-03__list03 {
  border-color: #4cc276;
}
.merit-03__list dt {
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background-color: #ccc;
  padding: 6px 0;
}
.merit-03__list01 dt {
  background-color: #dd9a00;
}
.merit-03__list02 dt {
  background-color: #11b7c7;
}
.merit-03__list03 dt {
  background-color: #4cc276;
}
.merit-03__list dd {
  padding: 15px 30px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.merit-03__list dd p::before,.merit-03__list dd ul li::before {
  content: "●";
  font-size: 16px;
  margin-right: 5px;
}
.merit-03__list01 dd p::before,.merit-03__list01 dd ul li::before {
  color: #dd9a00;
}
.merit-03__list02 dd p::before,.merit-03__list02 dd ul li::before {
  color: #11b7c7;
}
.merit-03__list03 dd p::before,.merit-03__list03 dd ul li::before {
  color: #4cc276;
}
/*.merit-03__list03 dd p:nth-child(1) {
  font-size: 13px;
}
.merit-03__list03 dd p:nth-child(5) {
  font-size: 14px;
}*/
.merit__list .link-button-01 {
  width: 260px;
  height: 40px;
  background-color: #ed7700;
}
.merit__list .link-button-01::after {
  border-color: transparent transparent transparent #ed7700;
}
.merit__item__outer {
  display: flex;
  justify-content: space-between;
  gap: 2em;
}
.merit-04,
.merit-05 {
  max-width: 525px;
  width: 100%;
}
.merit-04 .merit__item-title {
  font-size: 38px;
  max-width: max-content;
  line-height: 1.2;
}
.merit-04 .merit__item-title span {
  font-size: 35px;
  display: block;
  text-align: center;
}
.merit-04 figure {
  max-width: 500px;
  margin: 40px auto 0;
}
.merit-05 .merit__item-title {
  font-size: 26px;
  max-width: max-content;
  line-height: 1.5;
  margin-top: -9px;
}
.merit-05 .merit__item-title span {
  font-size: 38px;
  display: block;
  text-align: center;
}
.merit-05 figure {
  max-width: 500px;
  margin: 40px auto 5px;
}
.merit-06__list {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 40px;
  padding-bottom: 135px;
}
.merit-06 {
  margin-top: 135px;
}
.merit-06__list li {
  max-width: 350px;
  width: 100%;
}
.merit-06__list figcaption {
  font-size: 14px;
  text-align: center;
  margin-top: 10px;
}
.merit-07__wrapper {
  display: flex;
  justify-content: space-between;
  gap: 1em;
  max-width: 880px;
  margin: 40px auto 135px;
}
.merit-07__wrapper > figure {
  max-width: 370px;
  width: 100%;
}
.merit-07__text-wrap {
  max-width: 473px;
}
.merit-07__text {
  line-height: 2.2;
  margin: 30px 0 50px;
}
.merit-07 .link-button-01 {
  margin: inherit;
}
.merit-08 {
  margin-bottom: 130px;
}
.merit-08 .merit__item-title-wrap {
  align-items: end;
}
.merit-08 .merit__item-title {
  line-height: 1;
}
.merit-08__text {
  max-width: 1040px;
  margin: 35px auto;
  line-height: 2.2;
}
.merit-08 figure {
  max-width: 895px;
  margin: 0 auto 55px;
}
.merit-09,
.merit-10 {
  max-width: 525px;
  width: 100%;
}
.merit-09 .merit__item-title {
  font-size: 26px;
  text-align: center;
  line-height: 1.5;
  max-width: max-content;
}
.merit-09 figure {
  max-width: 480px;
  width: 100%;
  margin: 40px auto 20px;
}
.merit-09__list {
  line-height: 2;
  padding-left: 15px;
  margin-bottom: 35px;
}
.merit-09__list li::before {
  content: "●";
}
.merit-10 .merit__item-title {
  font-size: 21px;
  max-width: max-content;
  text-align: center;
  margin: 4px 0;
}
.merit-10__text {
  max-width: 493px;
  margin: 35px auto 30px;
  line-height: 2;
}
.merit-10 figure {
  max-width: 385px;
  margin: 0 auto 30px;
}
.merit-10__wrapper {
  display: flex;
  line-height: 2;
  margin-bottom: 35px;
}
.merit-10__list li::before {
  content: "〇";
}
.merit-10__list:nth-of-type(1) {
  max-width: 224px;
  width: 100%;
}
.merit-10__list:nth-of-type(2) {
  max-width: 268px;
  width: 100%;
}
.merit-10__list-child {
  margin-left: 0.5em;
}
.merit-10__list-child li::before {
  content: "・"
}

@media screen and (max-width: 960px) {
  .merit-headline {
    max-width: 600px;
    margin: 10px auto 40px;
  }
  .merit__list {
    margin-bottom: 135px;
  }
  .merit__item-title-wrap {
    display: block;
    border-bottom: 2px dashed #f1ed99;
    padding: 0;
    text-align: center; 
  }
  .merit__item-title-wrap img {
    width: clamp(86px,24.6vw,96px);
    margin-bottom: 25px;
  }
  .merit__item-title {
    font-size: clamp(26px,7.4vw,35px);
    line-height: 1.3;
    padding-bottom: 10px;
  }
  .merit-01 .merit__item-title span {
    font-size: clamp(50px,12.5vw,60px);
    bottom: -3px;
  }
  .merit-01__wrapper {
    flex-direction: column;
    align-items: center;
    gap: 20px;
    padding: 20px 0 45px;
  }
  .merit-01__wrapper figure {
    max-width: 500px;
  }
  .merit-01__text {
    max-width: none;
    font-size: clamp(13px,3.7vw,16px);
    line-height: 1.6;
    margin-top: 0;
  }
  .merit-02__wrapper {
    flex-direction: column;
    gap: 10px;
    margin-top: 15px;
  }
  .merit-02__wrapper figure {
    max-width: none;
  }
  .merit-02__text {
    max-width: none;
  }
  .merit-02__text dt {
    font-size: 20px;
    margin-bottom: 0;
  }
  .merit-02__text dd {
    font-size: clamp(13px,3.7vw,16px);
    line-height: 1.6;
  }
  .co-collaboration {
    padding-bottom: 45px;
  }
  .co-collaboration__title {
    font-size: clamp(18px,5vw,22px);
    width: clamp(230px,65vw,260px);
    height: clamp(35px,10vw,44px);
    margin: 40px auto 10px;
  }
  .co-collaboration__text {
    font-size: clamp(13px,3.7vw,16px);
    line-height: 1.8;
    margin: 0 auto 15px;
  }
  .co-collaboration__text span {
    font-size: clamp(17px,4.8vw,20px);
  }
  .merit-03 {
    padding-bottom: 50px;
  }
  .merit-03 .merit__item-title {
    margin-top: 0;
  }
  .merit-03 .merit__item-title small {
    font-size: clamp(20.5px,5.8vw,26px);
  }
  .merit-03__wrapper {
    margin: 15px auto 30px;
    flex-direction: column;
    gap: 10px;
  }
  .merit-03__list {
    max-width: none;
  }
  .merit-03__list dt {
    font-size: 19px;
  }
  .merit-03__list dd {
    font-size: 17px;
    padding: 20px 30px;
  }
  .merit-03__list dd p::before {
    font-size: 17px;
    margin-right: 8px;
  }
  .merit-03__list03 dd p:nth-child(1) {
    font-size: 14px;
  }
  .merit-03__list03 dd p:nth-child(5) {
    font-size: 15px;
  }
  .merit__list .link-button-01 {
    width: 290px;
    font-size: 16px;
  }
  .merit__item__outer {
    flex-direction: column;
    gap: 60px;
  }
  .merit-04,
  .merit-05 {
    max-width: none;
  }
  .merit-04 .merit__item-title {
    font-size: clamp(26px,7.4vw,38px);
    max-width: none;
    line-height: 1.4;
  }
  .merit-04 .merit__item-title span {
    font-size: clamp(24px,6.8vw,35px);
  }
  .merit-04 figure {
    max-width: 500px;
    margin: 20px auto 0;
  }
  .merit-05 .merit__item-title {
    font-size: clamp(20px,5.7vw,26px);
    max-width: none;
    line-height: 1.4;
    margin-top: 0;
  }
  .merit-05 .merit__item-title span {
    font-size: clamp(28px,8vw,38px);
  }
  .merit-05 figure {
    max-width: 500px;
    margin: 15px auto 20px;
  }
  .merit-06__list {
    flex-direction: column;
    gap: 30px;
    margin-top: 20px;
    padding-bottom: 60px;
  }
  .merit-06 {
    margin-top: 70px;
  }
  .merit-06__list li {
    max-width: none;
  }
  .merit-07__wrapper {
    flex-direction: column;
    gap: 15px;
    max-width: none;
    margin: 20px auto 70px;
  }
  .merit-07__wrapper > figure {
    max-width: none;
  }
  .merit-07__text-wrap {
    max-width: none;
  }
  .merit-07__text {
    font-size: clamp(13px,3.7vw,16px);
    line-height: 1.7;
    margin: 0 0 30px;
  }
  .merit-07 .link-button-01 {
    margin: auto;
  }
  .merit-08 {
    margin-bottom: 70px;
  }
  .merit-08 .merit__item-title-wrap {
    align-items: center;
  }
  .merit-08 .merit__item-title {
    line-height: inherit;
  }
  .merit-08__text {
    font-size: clamp(13px,3.7vw,16px);
    margin: 20px auto;
    line-height: 1.7;
  }
  .merit-08 figure {
    max-width: none;
    margin: 0 auto 30px;
  }
  .merit-09,
  .merit-10 {
    max-width: none;
  }
  .merit-09 .merit__item-title {
    font-size: clamp(22px,6.2vw,26px);
    line-height: 1.5;
    max-width: none;
  }
  .merit-09 figure {
    max-width: none;
    margin: 20px auto 5px;
  }
  .merit-09__list {
    font-size: clamp(13px,3.7vw,16px);
    line-height: 1.7;
    padding-left: 0;
    margin-bottom: 30px;
  }
  .merit-10 .merit__item-title {
    font-size: 20px;
    max-width: none;
    margin: 0;
  }
  .merit-10__text {
    max-width: none;
    font-size: clamp(13px,3.7vw,16px);
    margin: 15px auto;
    line-height: 1.7;
  }
  .merit-10 figure {
    max-width: none;
    margin: 0 auto 15px;
  }
  .merit-10__wrapper {
    display: block;
    font-size: clamp(13px,3.7vw,16px);
    line-height: 1.7;
    margin-bottom: 25px;
  }
  .merit-10__list:nth-of-type(1) {
    max-width: none;
  }
  .merit-10__list:nth-of-type(2) {
    max-width: none;
  }
}

.about__wrapper {
  margin-top: 40px;
}
.about-menu__wrapper {
  margin: 120px 0 215px;
}
.guide-menu__wrapper {
  margin: 65px 0 180px;
}
.guide-menu__list {
  display: flex;
  justify-content: center;
  gap: 50px 13px;
  flex-wrap: wrap;
  margin-bottom: 13px;
}
.guide-menu__item {
  max-width: 270px;
  width: 100%;
  height: 140px;
}
.guide-menu__item a {
  display: block;
  height: 100%;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  color: #fff;
  background-color: #f29600;
  border-radius: 5px;
  padding: 8px;
  position: relative;
}
.guide-menu__item a span {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  background-image: linear-gradient(to right, #fff 2px, transparent 2px),linear-gradient(to bottom, #fff 2px, transparent 2px),linear-gradient(to left, #fff 2px, transparent 2px),linear-gradient(to top, #fff 2px, transparent 2px);
  background-size: 7px 2px,2px 7px,7px 2px,2px 7px;
  background-repeat: repeat-x,repeat-y,repeat-x,repeat-y;
  background-position: left top,right top,right bottom,left bottom;
}
.guide-menu__item a::before {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  background-color: #fff;
  border-radius: 50%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
}
.guide-menu__item a::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 7px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 24px;
  margin: auto;
  border-color: transparent transparent transparent #f29600;
} 

@media screen and (max-width: 960px) {
  .about__wrapper {
    margin-top: 10px;
  }
  .about-menu__wrapper {
    margin: 20px 0 115px;
  }
  .guide-menu__wrapper {
    margin: 28px 0 100px;
  }
  .guide-menu__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
  .guide-menu__item {
    max-width: none;
    height: clamp(80px,23vw,140px);
  }
  .guide-menu__item a {
    font-size: clamp(14px,4vw,20px);
    padding: 5px;
  }
  .guide-menu__item a::before {
    width: clamp(10.5px,3vw,18px);
    height: clamp(10.5px,3vw,18px);
    right: clamp(10.5px,3vw,20px);
  }
  .guide-menu__item a::after {
    border-width: clamp(2.75px,0.8vw,4px) 0 clamp(2.75px,0.8vw,4px) clamp(4px,1.2vw,7px);
    right: clamp(13px,3.7vw,24px);
  } 
}

.highschool .page-title__content {
  background-image: linear-gradient(to bottom, #f18d1e 33%, #f5aa3b 33%, #f5aa3b 66%, #f6e821 66%);
}
.highschool .page-title__wrapper {
  max-width: 1220px;
  height: auto;
}
.highschool .page-title__image {}
.highschool main {
  background-color: #fff8e3;
}
.highschool-job {}
.highschool-job-headline {
  font-size: 47px;
  font-weight: bold;
  display: flex;
  align-items: baseline;
  justify-content: center;
  margin: 55px 0;
}
.highschool-job-headline img {
  width: 100px;
  position: relative;
  top: 3px;
  margin-right: 10px;
}
.highschool-job__list {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 20px;
}
.highschool-job-image {
  display: flex;
  justify-content: center;
  margin-top: 40px;
}
.highschool-flow {
  padding-top: 100px;
}
.highschool-headline__01 {
  font-size: 40px;
  font-weight: bold;
  text-align: center;
  position: relative;
  padding: 0 29px;
}
.highschool-headline__01 img {
  width: 88px;
  position: relative;
  top: -17px;
  margin-right: 5px;
}
.highschool-headline__01::after {
  content: "";
  display: block;
  width: 100%;
  height: 12px;
  background: url(../img/highschool/highschool-pcline.png) no-repeat;
  background-size: cover;
  margin-top: 30px;
}
.highschool-flow__1-2 {
  margin: 50px 0 100px;
}
.highschool-flow__title {
  max-width: 260px;
  margin: 0 auto 25px;
}
.highschool-flow__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 65px;
}
.highschool-flow__item {
  position: relative;
}
.highschool-flow__item::after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-right: 5px solid;
  border-top: 5px solid;
  transform: rotate(45deg);
  position: absolute;
  right: -38px;
  top: clamp(74px,8vw,98px);
}
.highschool-flow__item:last-child:after {
  content: none;
}
.highschool-flow__item img {
  border-radius: 10px;
}
.highschool-flow__item-title {
  font-size: 20px;
  font-weight: bold;
  margin: 10px 0 2px;
}
.highschool-flow__item-text {
  font-size: 17px;
}
.highschool-qa01 {
  max-width: 705px;
  margin: 80px auto 0;
} 
.highschool-opencampus {
  position: relative;
  margin-top: 50px;
}
.highschool-opencampus .img-link {
  pointer-events: none;
}
.highschool-opencampus .text-link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 430px;
  height: 55px;
  color: #000;
  background-color: #f6e821;
  border-radius: 6px;
  position: absolute;
  left: clamp(420px,44vw,515px);
  bottom: clamp(50px,5.9vw,70px);
}
.highschool-opencampus .text-link:hover {
  color: #ff00ff;
  opacity: 1;
}
.opencampus-like {
  margin-top: 70px;
}
.opencampus-like__title {
  font-size: 36px;
  font-weight: bold;
  text-align: center;
}
.opencampus-like__text {
  font-size: 24px;
  margin-top: 10px;
  display: flex;
  align-items: baseline;
  justify-content: center;
}
.opencampus-like__text img {
  width: 55px;
  position: relative;
  top: 2px;
  margin-right: 5px;
}
.opencampus-like__image {
  max-width: 1000px;
  margin: 40px auto 0;
}
.highschool-movie {
  margin-top: 105px;
}
.highschool-movie__text {
  font-size: 20px;
  line-height: 1.8;
  text-align: center;
  margin-top: 35px;
}
.highschool-movie .p-top-info-movie__link {
  max-width: 800px;
  width: 100%;
  margin: 35px auto 0;
}
.whats-school {
  margin-top: 80px;
}
.whats-school__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 70px 40px;
  max-width: 940px;
  margin: 95px auto 0;
}
.whats-school__list a {
  display: block;
  font-size: 20px;
  color: #000;
}
.whats-school__list-text {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 10px;
}
.whats-school__list-text::after {
  content: "";
  display: block;
  width: 13px;
  height: 13px;
  background: url(../img/highschool/what-school-arrow.png) no-repeat;
  background-size: cover;
  margin-right: 10px;
  position: relative;
  top: -2px;
}
.highschool .line-banner a {
  display: flex;
  justify-content: center;
  margin-top: 65px;
}
.highschool-qa02 figure {
  max-width: 550px;
  margin: 110px auto 0;
}
.highschool-qa02__list {
  display: flex;
  justify-content: center;
  gap: 40px;
  margin-top: 80px;
}
.highschool-qa02__list li {
 max-width: 490px;
}
.course-link_title {
  font-size: 29px;
  font-weight: bold;
  text-align: center;
  margin: 105px 0 25px;
}
.course-link_title::before,
.course-link_title::after {
  content: "―";
  font-weight: normal;
}
.course-link_title::before {
  margin-right: 30px;
}
.course-link_title::after {
  margin-left: 30px;
}
.highschool .course-link {
  margin: 0;
  padding: 0 0 155px;
}
@media screen and (max-width: 960px) {
  .highschool .page-title__wrapper {
    max-width: none;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    padding: 15px 0 0;
    height: auto;
  }
  .highschool-job-headline {
    font-size: clamp(16px,4.5vw,47px);
    margin: 30px 0;
  }
  .highschool-job-headline img {
    width: clamp(40px,11.4vw,100px);
    top: 0;
    margin-right: 3px;
  }
  .highschool-job__list {
    grid-template-columns: repeat(2,1fr);
    gap: 10px;
  }
  .highschool-job-image {
    width: 100vw;
    margin: 20px calc(50% - 50vw) 0;
  }
  .highschool-flow {
    padding-top: 40px;
  }
  .highschool-headline__01 {
    font-size: clamp(20px,5.7vw,40px);
    width: 100vw;
    margin: 0 calc(50% - 50vw) ;
    padding: 0;
  }
  .highschool-headline__01 img {
    width: clamp(40px,11.4vw,88px);
    top: clamp(-17px,-2.5vw,-9px);
  }
  .highschool-headline__01::after {
    height: 8px;
    background: url(../img/highschool/highschool-spline.png) repeat-x;
    background-size: contain;
    margin-top: 15px;
  }
  .highschool-flow__1-2 {
    margin: 25px 0 60px;
  }
  .highschool-flow__title {
    max-width: clamp(200px,57.1vw,260px);
    margin: 0 auto 20px;
  }
  .highschool-flow__list {
    grid-template-columns: 1fr;
    gap: 43px;
  }
  .highschool-flow__item::after {
    transform: rotate(135deg);
    position: relative;
    right: auto;
    top: 14px;
    margin: auto;
  }
  .highschool-flow__item img {
    border-radius: 7px;
  }
  .highschool-flow__item-title {
    font-size: 18px;
  }
  .highschool-flow__item-text {
    font-size: 15px;
  }
  .highschool-qa01 {
    margin: 35px auto 0;
  } 
  .highschool-opencampus {
    margin-top: 25px;
  }
  .highschool-opencampus .img-link {
    pointer-events: all;
  }
  .highschool-opencampus .text-link {
    display: none;
  }
  .opencampus-like {
    margin-top: 45px;
  }
  .opencampus-like__title {
    font-size: clamp(20px,5.7vw,36px);
  }
  .opencampus-like__text {
    font-size: clamp(16px,4.5vw,24px);
  }
  .opencampus-like__text img {
    width: clamp(40px,11.4vw,55px);
    top: 1px;
    margin-right: 2px;
  }
  .opencampus-like__image {
    max-width: none;
    width: 100vw;
    margin: 5px calc(50% - 50vw) 0;
  }
  .highschool-movie {
    margin-top: 45px;
  }
  .highschool-movie__text {
    font-size: clamp(15px,4.2vw,20px);
    margin-top: 15px;
  }
  .highschool-movie .p-top-info-movie__link {
    margin: 15px auto 0;
  }
  .whats-school {
    margin-top: 50px;
  }
  .whats-school__list {
    gap: 20px 10px;
    max-width: none;
    margin: 25px auto 0;
  }
  .whats-school__list a {
    font-size: clamp(12px,3.4vw,20px);
    line-height: 1.2;
  }
  .whats-school__list-text {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-top: 10px;
  }
  .whats-school__list-text::after {
    width: 8px;
    height: 8px;
    flex-shrink: 0;
    margin-right: 0;
    margin-left: 1em;
    top: -1px;
  }
  .highschool .line-banner a {
    margin-top: 40px;
  }
  .highschool-qa02 figure {
    margin: 40px auto 0;
  }
  .highschool-qa02__list {
    flex-direction: column;
    gap: 10px;
    margin-top: 40px;
  }
  .highschool-qa02__list li {
    max-width: none;
  }
  .course-link_title {
    font-size: clamp(20px,5.7vw,29px);
    margin: 60px 0 10px;
  }
  .course-link_title::before {
    margin-right: 1em;
  }
  .course-link_title::after {
    margin-left: 1em;
  }
  .highschool .course-link {
    margin: 0 calc(50% - 50vw);
    padding: 0 0 60px;
  }
}
.teacher-introduction {
  margin-top: 60px;
    padding-bottom: 80px;

}
.teacher-introduction__headline {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
}
.teacher-introduction__subtitle {
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  margin-top: 14px;
}
.teacher-introduction__text {
  line-height: 2;
  max-width: 970px;
  margin: 40px auto 0;
}
.teacher-introduction__text span {
  font-weight: bold;
}
.greeting {
  padding-top: 90px;
  margin-top: -80px;
}
.greeting-title {
  font-size: 28px;
  font-weight: bold;
  text-align: center;
}
.greeting-title::after {
  content: "";
  display: block;
  width: 65px;
  height: 1px;
  background-color: var(--main-txt-color);
  margin: 18px auto 0;
}
.greeting__wrapper {
  max-width: 970px;
  margin: 50px auto 0;
  overflow: hidden;
}
.greeting-img {
  max-width: 380px;
  width: 100%;
  float: left;
  margin: 0 3em 1.5em 0;
}
.greeting-img figcaption {
  font-size: 14px;
  text-align: center;
  margin-top: 15px;
}
.greeting-img figcaption span {
  font-size: 18px;
  display: block;
}
.greeting-text {}
.greeting-text__title {
  font-size: 22px;
  font-weight: bold;
  margin-top: 30px;
}
.greeting-text__text {
  line-height: 2;
  margin-top: 1.5em;
}
.teachers {
  padding-top: 90px;
  margin-top: 30px;
}
.teachers-title {
  font-size: 28px;
  font-weight: bold;
  text-align: center;
}
.teachers-title::after {
  content: "";
  display: block;
  width: 65px;
  height: 1px;
  background-color: var(--main-txt-color);
  margin: 18px auto 0;
}
.teachers__list {
  display: grid;
  grid-template-columns: repeat(16, 1fr);
  gap: 70px 26px;
  margin: 90px 0 200px;
}
.teachers__item:nth-child(1) { grid-column: 5/ span 4;}
.teachers__item:nth-child(2) { grid-column: 9/ span 4;}
.teachers__item:nth-child(3) { grid-column: 1/ span 4;}
.teachers__item:nth-child(4) { grid-column: 5/ span 4;}
.teachers__item:nth-child(5) { grid-column: 9/ span 4;}
.teachers__item:nth-child(6) { grid-column: 13/ span 4;}
.teachers__item:nth-child(7) { grid-column: 5/ span 4;}
.teachers__item:nth-child(8) { grid-column: 9/ span 4;}
.teachers__item:nth-child(9) { grid-column: 1/ span 4;}
.teachers__item:nth-child(10) { grid-column: 5/ span 4;}
.teachers__item:nth-child(11) { grid-column: 9/ span 4;}
.teachers__item:nth-child(12) { grid-column: 13/ span 4;}
.teachers__item:nth-child(13) { grid-column: 3/ span 4;}
.teachers__item:nth-child(14) { grid-column: 7/ span 4;}
.teachers__item:nth-child(15) { grid-column: 11/ span 4;}
.teachers__item:nth-child(16) { grid-column: 3/ span 4;}
.teachers__item:nth-child(17) { grid-column: 7/ span 4;}
.teachers__item:nth-child(18) { grid-column: 11/ span 4;}
.teachers__item {
  text-align: center;
}
.teachers__item img {
  border-radius: 10px;
}
.teachers__item-name {
  font-size: 20px;
  margin-top: 8px;
}
.teacher-position span {
  display: block;
  font-size: 14px;
}

@media screen and (max-width: 960px) {
  .teacher-introduction {
    margin-top: 30px;
  }
  .teacher-introduction__headline {
    font-size: clamp(15px,4.2vw,20px);
  }
  .teacher-introduction__subtitle {
    font-size: clamp(17px,4.8vw,26px);
    margin-top: 2px;
  }
  .teacher-introduction__text {
    font-size: 14px;
    margin: 15px auto 0;
  }
  .greeting {
    padding-top: 0;
    margin-top: 40px;
  }
  .greeting-title {
    font-size: clamp(20px,5.7vw,28px);
  }
  .greeting-title::after {
    margin: 11px auto 0;
  }
  .greeting__wrapper {
    display: block;
    margin: 25px auto 0;
  }
  .greeting-img {
    max-width: none;
    text-align: center;
    float: none;
  }
  .greeting-img figcaption {
    font-size: 12px;
  }
  .greeting-img figcaption span {
    font-size: 16px;
  }
  .greeting-text {
    max-width: none;
  }
  .greeting-text__title {
    font-size: clamp(18px,5.1vw,22px);
    line-height: 1.5;
    margin-top: 15px;
  }
  .greeting-text__text {
    font-size: 14px;
    margin-top: 10px;
  }
  .teachers {
    padding-top: 0;
    margin-top: 90px;
  }
  .teachers-title {
    font-size: clamp(20px,5.7vw,28px);
  }
  .teachers-title::after {
    margin: 11px auto 0;
  }
  .teachers__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px 15px;
    margin: 50px 0 160px;
  }
  .teachers__item {
    grid-column: auto !important;
    text-align: center;
  }
  .teachers__item img {
    border-radius: 7px;
  }
  .teachers__item-name {
    font-size: clamp(16px,4.5vw,20px);
    margin-top: 5px;
  }
  .teacher-position {
    font-size: 14px;
  }
  .teacher-position span {
    font-size: 13px;
  }
}
.introduction-details {
  margin-top: 65px;
}
.introduction__title {
  font-size: 28px;
  font-weight: bold;
  text-align: center;
}
.introduction__title::after {
  content: "";
  display: block;
  width: 65px;
  height: 1px;
  background-color: var(--main-txt-color);
  margin: 18px auto 0;
}
.introduction-details__wrapper {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-top: 65px;
}
.introduction-details__image {
  max-width: 315px;
  width: 100%;
  border-radius: 10px;
  overflow: hidden;
}
.introduction-details__text {
  max-width: 542px;
  width: 100%;
}
.introduction-details__text dl {
  display: grid;
  grid-template-columns: 75px 1fr;
  border-bottom: 1px dashed #c8c9ca;
  padding: 15px 0;
  line-height: 1.4;
}
.introduction-details__text dl:first-child {
  padding-top: 4px;
}
.introduction-details__text dt {
  padding-left: 10px;
}
.access {
  padding-top: 90px;
  margin-top: -20px;
}
.googlemap {
  margin-top: 50px;
}
.googlemap iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 1120/698;
}
.free-dial-img {
  max-width: 590px;
  margin-top: 30px;
}
.free-dial-img + p {
  font-size: 18px;
  margin-top: 25px;
}
.campus-life {
  margin: 160px 0 120px;
}

@media screen and (max-width: 960px) {
  .introduction-details {
    margin-top: 40px;
  }
  .introduction__title {
    font-size: 26px;
  }
  .introduction__title::after {
    margin: 13px auto 0;
  }
  .introduction-details__wrapper {
    flex-direction: column;
    gap: 35px;
    margin-top: 25px;
  }
  .introduction-details__image {
    max-width: clamp(250px,71.4vw,315px);
    border-radius: 8px;
    margin: auto;
  }
  .introduction-details__text {
    max-width: none;
  }
  .introduction-details__text dl {
    grid-template-columns: 70px 1fr;
    align-items: center;
    padding: 13px 0;
  }
  .introduction-details__text dl:first-child {
    padding-top: 4px;
  }
  .introduction-details__text dt {
    font-size: 14px;
  }
  .introduction-details__text dd {
    font-size: 13px;
    padding-right: 2em;
  }
  .access {
    padding-top: 0;
    margin-top: 65px;
  }
  .googlemap {
    margin-top: 30px;
  }
  .googlemap iframe {
    aspect-ratio: 320/300;
  }
  .free-dial-img {
    margin-top: 20px;
  }
  .free-dial-img + p {
    font-size: clamp(14px,4vw,18px);
    margin-top: 15px;
  }
  .campus-life {
    margin: 40px 0 80px;
  }
}
.admission-method {
  margin-top: 60px;
}
.admission-headline {
  font-size: 28px;
  font-weight: bold;
  text-align: center;
}
.admission-headline::after {
  content: "";
  display: block;
  width: 65px;
  height: 1px;
  background-color: var(--main-txt-color);
  margin: 18px auto 0;
}
.admission-headline-text {
  line-height: 2;
  margin-top: 70px;
}
.admission-tel {
  font-size: 20px;
  font-weight: bold;
  margin: 10px 0 30px;
}

.admission-table {width: 100%;  margin-bottom: 3vw;}

.admission-table,
.admission-table th,
.admission-table td {
  border: 1px solid #666666;
  
}
.admission-table th {
  background-color: #f2f2f2;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  
}
.admission-table td {
  vertical-align: middle;
  padding: 25px 20px;
  line-height: 1.75;
  
}
.admission-table td p + p {
  margin-top: 1em;
}
.admission-table td small {
  font-size: 12px;
  display: block;
}
.admission-table tr:nth-of-type(1) th {
  height: 65px;
}
.admission-table tr:nth-of-type(1) th:first-child {
  width: 140px;
}
.admission-table tr th:first-child {
  height: 90px;
}
.admission-table .price {
  font-size: 20px;
}
.admission-table .price-num {
  font-size: 33px;
}
.admission-table .price-en {
  font-size: 19px;
}
.admission-table .price-text {
  font-size: 15px;
}
.admission-calendar {
  margin: 60px 0 20px;
}
.admission-flow {
  margin-top: 120px;
}
.admission-flow-title {
  font-size: 24px;
  font-weight: bold;
  border-left: 10px solid #f38204;
  border-bottom: 1px solid #f38204;
  padding: 8px 0 3px 20px;
}
.admission-flow-image {
  margin-top: 40px;
}
.request-bt {
  max-width: 600px;
  margin: auto;
}
.admission .request-bt {
  margin: 160px auto 180px;
}

.admission-table {border: none;
	border-top: 1px solid #DEDEDE;
}

.admission-table dl {
	border-bottom: 1px solid #DEDEDE;
    display: table;
    width: 100%;
    font-size: clamp(11px, 3.1vw, 16px);
}

.admission-table dl dt, .admission-table dl dd{
    padding: clamp(2vw, 3vw, 5vw);
}

.admission-table dl dt{
	background: #f2f2f2;
    text-align: center;
	display: table-cell;
    vertical-align: middle;
    width: 25%;
}

.admission-table dl dd{width: 100%;}

 


@media screen and (max-width: 960px) {
  .admission-method {
    margin-top: 40px;
  }
  .admission-headline {
    font-size: 26px;
  }
  .admission-headline::after {
    margin: 10px auto 0;
  }
  .admission-headline-text {
    font-size: 14px;
    margin-top: 30px;
  }
  .admission-tel {
    font-size: 18px;
    margin: 20px 0 30px;
  }
  .admission-table th {
    font-size: clamp(9px,2.5vw,16px);
    
  }
  .admission-table td {
    font-size: clamp(11px,3.1vw,16px);
    vertical-align: top;
    padding: 10px 5px;
    line-height: 1.3;
    
  }
  .admission-table td small {
    font-size: clamp(9px,2.5vw,12px);
  }
  .admission-table tr:nth-of-type(1) th {
    height: clamp(35px,10vw,65px);
  }
  .admission-table tr:nth-of-type(1) th:first-child {
    width: clamp(46px,13.1vw,140px);
  }
  .admission-table tr th:first-child {
    height: auto;
  }
  .admission-table .price {
    font-size: clamp(11px,3.1vw,20px);
  }
  .admission-table .price-num {
    font-size: clamp(14px,4vw,33px);
  }
  .admission-table .price-en {
    font-size: clamp(11px,3.1vw,19px);
  }
  .admission-table .price-text {
    font-size: clamp(9px,2.5vw,15px);
    display: block;
  }
  .admission-calendar {
    margin: 20px 0;
  }
  .admission-calendar-text {
    font-size: 14px;
  }
  .admission-flow {
    margin-top: 60px;
  }
  .admission-flow-title {
    font-size: clamp(20px,5.7vw,24px);
    border-left: 6px solid #f38204;
    padding: 0 0 0 13px;
  }
  .admission-flow-image {
    margin-top: 25px;
  }
  .admission .request-bt {
    margin: 40px auto 110px;
  }
}
.entrance-headline {
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  margin-top: 60px;
}
.entrance-headline::after {
  content: "";
  display: block;
  width: 65px;
  height: 1px;
  background-color: var(--main-txt-color);
  margin: 18px auto 0;
}
.entrance-capacity {
  margin-top: 75px;
}
.entrance-subheadline {
  font-size: 24px;
  font-weight: bold;
  border-left: 10px solid #f38204;
  border-bottom: 1px solid #f38204;
  padding: 8px 0 3px 20px;
}
.entrance-table {
  width: 100%;
  margin-top: 40px;
}
.entrance-table,
.entrance-table th,
.entrance-table td {
  border: 1px solid #666666;
  text-align: center;
  vertical-align: middle;
}
.entrance-table th {
  font-weight: normal;
  line-height: 1.5;
  background-color: #f2f2f2;
}
.entrance-table td {
  height: 58px;
}
.entrance-table tr:first-child th {
  height: 78px;
}
.entrance-table tr:first-child th:first-child {
  width: 110px;
}
.entrance-table tr.col3 th {
  height: 60px;
}
.entrance-tuition {
  margin-top: 100px;
}
.entrance-text {
  margin-top: 35px;
  line-height: 2;
}
.entrance-text p + p{
  margin-top: 10px;
}
.entrance .free-dial-img {
  max-width: 500px;
  margin-top: 70px;
}
.entrance .request-bt {
  margin: 85px auto 180px;
}

@media screen and (max-width: 960px) {
  .entrance-headline {
    font-size: 26px;
    margin-top: 40px;
  }
  .entrance-headline::after {
    margin: 10px auto 0;
  }
  .entrance-capacity {
    margin-top: 50px;
  }
  .entrance-subheadline {
    font-size: clamp(20px,5.7vw,24px);
    border-left: 6px solid #f38204;
    padding: 0 0 0 13px;
  }
  .entrance-table {
    margin-top: 15px;
  }
  .entrance-table th {
    line-height: 1.3;
    font-size: clamp(9px,2.5vw,16px);
  }
  .entrance-table td {
    height: clamp(33px,9.4vw,58px);
    font-size: clamp(12px,3.4vw,16px);
  }
  .entrance-table tr:first-child th {
    height: clamp(50px,14.2vw,78px);
  }
  .entrance-table tr:first-child th:first-child {
    width: clamp(40px,11.4vw,110px);
  }
  .entrance-table tr.col3 th {
    height: clamp(33px,9.4vw,60px);
  }
  .entrance-tuition {
    margin-top: 35px;
  }
  .entrance-text {
    margin-top: 25px;
    font-size: 14px;
  }
  .entrance .free-dial-img {
    margin-top: 50px;
  }
  .entrance .request-bt {
    margin: 35px auto 110px;
  }
}
.privacy-lead-title {
  font-size: 24px;
  font-weight: bold;
  color: #ef8300;
  margin: 70px 0 15px;
}
.privacy-lead-text {
  margin-bottom: 35px;
}
.privacy__item {
  padding-bottom: 80px;
}
.privacy__title {
  font-size: 20px;
  font-weight: bold;
  border: 1px solid #ec8200;
  background-color: #fffae4;
  display: flex;
  align-items: center;
  height: 50px;
  line-height: 1;
  margin-bottom: 23px;
  padding-left: 18px;
}
.privacy__text {
  line-height: 2;
  padding: 0 35px;
}
.privacy__text + .privacy__text {
  margin-top: 1em;
}
.privacy .request-bt {
  margin: 60px auto 106px;
}

@media screen and (max-width: 960px) {
  .privacy-lead-title {
    font-size: clamp(20px,5.7vw,24px);
    margin: 45px 0 15px;
  }
  .privacy-lead-text {
    font-size: 14px;
    line-height: 2;
    margin-bottom: 25px;
  }
  .privacy__item {
    padding-bottom: 30px;
  }
  .privacy__title {
    font-size: 18px;
    height: 40px;
    margin-bottom: 15px;
    padding-left: 12px;
  }
  .privacy__text {
    font-size: 14px;
    padding: 0;
  }
  .privacy .request-bt {
    margin: 25px auto 50px;
  }
}
.information__item {
  margin-top: 75px;
}
.information__item:first-of-type {
  margin-top: 60px;
}
.information__title {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 15px;
}
.information__item table,
.information__item th,
.information__item td {
  border: 1px solid #666;
  text-align: left;
  vertical-align: middle;
}
.information__item table {
  width: 100%;
}
.information__item th {
  background-color: #ffedd5;
  height: 60px;
  width: 50%;
  padding: 0 1em;
}
.information__item td {
  height: 60px;
  width: 50%;
  padding: 0 1em;
}
.information__item td a {
  color: #299ad8;
  text-decoration: underline;  
}
.information__item td a.pdf-link {
  display: flex;
  align-items: center;
}
.information__item td a.pdf-link::after {
  content: "";
  display: block;
  width: 32px;
  height: 32px;
  background: url(../img/common/pdf.png) no-repeat;
  background-size: cover;
  position: relative;
  top: -2px;
  left: 5px;
}
.information .request-bt {
  margin: 180px auto 140px;
}
@media screen and (max-width: 960px) {
  .information__item {
    margin-top: 40px;
  }
  .information__item:first-of-type {
    margin-top: 40px;
  }
  .information__title {
    font-size: clamp(18px,5.1vw,22px);
    margin-bottom: 10px;
  }
  .information__item table,
  .information__item th,
  .information__item td {
    font-size: clamp(12px,3.2vw,16px);
    line-height: 1.2;
  }
  .information__item th,
  .information__item td {
    height: clamp(44px,12.5vw,60px);
    padding: 0 0.5em;
  }
  .information__item td a {
    font-size: clamp(12px,3.2vw,16px);
  }
  .information__item td a.pdf-link {
    display: block;
  }
  .information__item td a.pdf-link::after {
    display: inline-block;
    width: clamp(16px,4.5vw,24px);
    min-width: 16px;
    height: auto;
    aspect-ratio: 1/1;
    top: 4px;
    left: 2px;
  }
  .information .request-bt {
    margin: 55px auto 60px;
  }
}
.tuition-support table,
.tuition-support th,
.tuition-support td {
  font-weight: normal;
  border: 1px solid #666;
  text-align: center;
  vertical-align: middle;
}
.tuition-support table {
  width: 100%;
}
.tuition-support th {
  background-color: #f2f2f2;
  height: 60px;
  padding: 14px;
}
.tuition-support td {
  height: 60px;
  padding: 14px;
}
.scholarship-table {
  margin-top: 75px;
}
.scholarship-table p + p {
  margin-top: 1em;
}
.scholarship-table tr:first-child th {
  height: 50px;
}
.scholarship-table tr:first-child th:first-child {
  width: 110px;
}
.scholarship-table tr:nth-of-type(2) td {
  text-align: center;
}
.scholarship-table tr:nth-of-type(2) td span {
  font-size: 20px;
  font-weight: bold;
}
.scholarship-table td {
  text-align: left;
}
.scholarship-table .meeting {
  vertical-align: bottom;
  padding-bottom: 50px;
}
.scholarship-table .scholarship-in-table,
.scholarship-table .scholarship-in-table th,
.scholarship-table .scholarship-in-table td {
  border: none;
}
.scholarship-table .scholarship-in-table {
  margin: 14px -14px -14px;
  width: calc(100% + 28px);
}
.scholarship-table .scholarship-in-table tr {
  border-top: 1px solid #666;
}
.scholarship-table .scholarship-in-table tr td:first-child {
  text-align: center;
  border-right: 1px solid #666;
}
.scholarship-table .scholarship-in-table tr td:last-child {
  text-align: left;
  border-left: 1px solid #666;
}
.scholarship-table .scholarship-in-table tr:first-child td {
  text-align: center;
}
.scholarship-table .scholarship-in-table tr:first-child td:last-child {
  width: 28.8%;
}
.scholarship-table .scholarship-in-table tr:nth-of-type(2) td:nth-of-type(2) {
  text-align: left;
}
.family {
  padding-top: 90px;
  margin-top: -15px;
}
.family .family-text {
  line-height: 2;
  margin-top: 70px;
}
.family-table {
  margin: 30px 0 10px;
}
.family-table th {
  width: 110px;
}
.family-table td {
  text-align: left;
}
.family-table td span {
  font-size: 21px;
  font-weight: bold;
}
.exemption {
  padding-top: 100px;
  margin-top: -10px;
}
.exemption-text {
  line-height: 2;
  margin-top: 70px;
}
.exemption-text2 {
  line-height: 2;
  margin-left: 1em;
  text-indent: -1em;
}
.exemption-subtitle {
  font-size: 20px;
  font-weight: normal;
  padding-top: 15px;
  margin-bottom: 10px;
}
.exemption-subtitle + p {
  margin-bottom: 5px;
}
.exemption-table {
  margin-bottom: 30px;
}
.exemption-table th:nth-child(1) {
  width: 511px;
}
.exemption-table th:nth-child(2) {
  width: 400px;
}
.exemption-table th:nth-child(3) {
  width: 205px;
}
.exemption-table th span {
  display: block;
  font-size: 14px;
}
.consultation-system {
  padding-top: 100px;
  margin-top: -10px;
}
.consultation-text {
  font-size: 20px;
  line-height: 2;
  text-align: center;
  margin: 70px 0 50px;
}
.japan-student-text {
  padding: 20px 30px;
  line-height: 2;
}
.japan-student-text span {
  display: block;
  text-indent: 1em;
}
.japan-student-table01 {
  margin: 5px 0 10px;
}
.japan-student-table01-text span {
  display: block;
  font-size: 14px;
  margin-bottom: 40px;
}
.japan-student-table01 tr:first-child th:first-child {
  width: 250px;
}
.japan-student-table01 tr:nth-of-type(3) th {
  width: 235px;
  padding: 0;
}
.japan-student-table01 td span {
  display: block;
  font-size: 14px;
}
.japan-student-table02-title {
  font-weight: bold;
  color: #f15a24;
  margin-bottom: 5px;
}
.japan-student-table02 th:nth-child(n+2) {
  width: 157px;
}
.japan-student-table02 td:first-child {
  text-align: left;
}
.japan-student-table02 td span {
  display: block;
  font-size: 13px;
}
.special-increase-title {
  font-size: 22px;
  font-weight: bold;
  border-bottom: 1px solid #f38204;
  padding-left: 10px;
  margin-top: 45px;
}
.special-increase-title + p {
  font-size: 18px;
  padding: 20px 30px 0;
  margin-bottom: 110px;
}
.kbc-loan-title small {
  font-size: 20px;
}
.kbc-loan-table th:nth-child(n+2) {
  width: 234px;
}
.kbc-loan-table td:first-child {
  text-align: left;
}
.kbc-loan-text {
  padding: 23px 0;
  text-align: center;
}
.kbc-loan-current {
  text-align: right;
  margin-top: 5px;
}
.tuition-support .free-dial-img {
  max-width: 500px;
  margin-top: 80px;
}
.tuition-support .request-bt {
  margin: 90px auto 180px;
}

@media screen and (max-width: 960px) {
  .scroll-table {
    white-space: nowrap;
    overflow: auto;
  }
  .tuition-support th,
  .tuition-support td {
    height: clamp(45px,12.8vw,60px);
    padding: 10px 8px;
  }
  .scholarship-table {
    margin-top: 48px;
  }
  .scholarship-table th {
    font-size: clamp(11px,3.1vw,16px);
  }
  .scholarship-table td {
    font-size: clamp(12px,3.1vw,16px);
  }
  .scholarship-table tr:first-child th {
    height: clamp(30px,8.5vw,50px);
    font-size: clamp(10px,2.8vw,16px);
  }
  .scholarship-table tr:first-child th:first-child {
    width: clamp(73px,20.8vw,110px);
  }
  .scholarship-table tr:nth-of-type(2) td span {
    font-size: clamp(13px,3.7vw,20px);
  }
  .scholarship-table .meeting {
    vertical-align: middle;
    padding-bottom: 0;
  }
  .scholarship-table .scholarship-in-table {
    margin: 10px -8px -8px;
    width: calc(100% + 16px);
  }
  .family {
    margin-top: 90px;
    padding: 0;
  }
  .family .family-text {
    font-size: 14px;
    margin-top: 40px;
  }
  .family-table {
    margin: 25px 0 10px;
  }
  .family-table th {
    width: clamp(85px,24.2vw,110px);
    font-size: clamp(11px,3.1vw,16px);
  }
  .family-table td {
    font-size: clamp(12px,3.1vw,16px);
  }
  .family-table td span {
    font-size: clamp(17px,4.8vw,21px);
  }
  .family-table + p {
    font-size: 14px;
  }
  .exemption {
    margin-top: 75px;
    padding: 0;
  }
  .exemption-text {
    font-size: 14px;
    margin-top: 45px;
  }
  .exemption-text2 {
    font-size: 14px;
    margin-left: 0;
    text-indent: 0;
  }
  .exemption-text2 span {
    display: block;
    text-indent: 1em;
  }
  .exemption-subtitle {
    font-size: clamp(17px,4.8vw,20px);
    padding-top: 10px;
    margin-bottom: 5px;
  }
  .exemption-subtitle + p {
    font-size: 14px;
  }
  .exemption-table {
    margin-bottom: 15px;
  }
  .exemption-table th {
    font-size: clamp(12px,3.1vw,16px);
  }
  .exemption-table td {
    font-size: clamp(12px,3.1vw,16px);
  }
  .exemption-table th:nth-child(1) {
    width: 40%;
  }
  .exemption-table th:nth-child(2) {
    width: 30%
  }
  .exemption-table th:nth-child(3) {
    width: 30%;
  }
  .exemption-table th span {
    font-size: clamp(9px,2.5vw,14px);
  }
  .exemption-table tr:nth-child(n+2) td:first-child {
    font-size: clamp(11px,3.1vw,16px);
  }
  .consultation-system {
    margin-top: 80px;
    padding: 0;
  }
  .consultation-text {
    font-size: clamp(15px,4.2vw,20px);
    margin: 40px 0 35px;
  }
  .japan-student-text {
    padding: 15px 0 25px;
    font-size: 14px;
  }
  .japan-student-text + p {
    font-size: 14px;
  }
  .japan-student-table01-text {
    font-size: 14px;
  }
  .japan-student-table01-text span {
    font-size: 12px;
    margin-bottom: 20px;
  }
  .japan-student-table01 tr:first-child th:first-child {
    width: 250px;
  }
  .japan-student-table01 tr:nth-of-type(3) th {
    width: auto;
    padding: 10px 8px;
  }
  .japan-student-table01 td span {
    font-size: clamp(10px,2.8vw,14px);
  }
  .japan-student-table01 th {
    font-size: clamp(12px,3.1vw,16px);
  }
  .japan-student-table01 td {
    font-size: clamp(12px,3.1vw,16px);
  }
  .japan-student-table02-title {
    font-size: 14px;
  }
  .japan-student-table02 th,
  .japan-student-table02 td {
    font-size: clamp(12px,3.1vw,16px);
  }
  .japan-student-table02 th:nth-child(n+2) {
    min-width: 110px;
  }
  .japan-student-table02 td span {
    font-size: clamp(9px,2.5vw,13px);
  }
  .special-increase-title {
    font-size: clamp(18px,5.1vw,22px);
  }
  .special-increase-title + p {
    font-size: 14px;
    padding: 15px 0 0;
    margin-bottom: 40px;
  }
  .kbc-loan-title {
    font-size: clamp(18px,5.1vw,24px);
  }
  .kbc-loan-title small {
    font-size: clamp(18px,5.1vw,24px);
    margin-right: 6px;
  }
  .kbc-loan-table th:nth-child(n+2) {
    min-width: 175px;
  }
  .kbc-loan-table th,
  .kbc-loan-table td {
    font-size: clamp(12px,3.1vw,16px);
  }
  .kbc-loan-text {
    font-size: 14px;
    padding: 15px 0 25px;
    text-align: left;
  }
  .kbc-loan-current {
    font-size: 12px;
  }
  .kbc-loan-current + p {
    font-size: 14px;
  }
  .tuition-support .free-dial-img {
    margin-top: 120px;
  }
  .tuition-support .request-bt {
    margin: 30px auto 110px;
  }
}
.document-form-lead {
  font-size: 22px;
  text-align: center;
  line-height: 1.8;
  margin: 55px 0 85px;
}
.document-form-lead span {
  color: #f15a24;
  font-weight: bold;
}
.document .form-caption span {
  color: #f00;
}
.document-form {
  display: grid;
  grid-template-columns: 300px 1fr;
  border: 1px solid #ccc;
  border-top: none;
}
.document-form dt {
  background-color: #f2f2f2;
  border-top: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 80px;
}
.document-form dt.req {
  background-color: #ffedd5;
}
.document-form dt.req span {
  display: block;
  font-size: 14px;
  color: #ff0000;
}
.document-form dd {
  border-top: 1px solid #cccccc;
  padding: 20px 25px;
}
.document-form input,
.document-form select,
.document-form textarea {
  font-size: 16px;
}
.document-form input[type="text"],
.document-form input[type="email"] {
  max-width: 650px;
  width: 100%;
  height: 40px;
}
.document-form .mwform-tel-field input[type="text"] {
  max-width: 100px;
}
.document-form .grade {
  max-width: 200px;
  width: 100%;
  height: 40px;
  padding-left: 20px;
}
.document-form .sex {
  margin: 0 0 5px;
}
.document-form .comment {
  max-width: 650px;
  width: 100%;
  height: 105px;
}
.document .submit {
  max-width: 300px;
  width: 100%;
  height: 80px;
  font-size: 20px;
  background-color: var(--main-orange);
  color: #fff;
  cursor: pointer;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
.document .submit:hover {
  background-color: #fcee21;
  color: #000;
}
.document-form .error {
  font-size: 15px;
  font-weight: bold;
  color: #f00;
  background-color: #ff0;
  width: max-content;
  line-height: 1;
  padding: 5px;
  margin-top: 5px;
}
.document .form_back {
  max-width: 300px;
  width: 100%;
  height: 80px;
  font-size: 20px;
  background-color: #999;
  color: #fff;
  cursor: pointer;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
.document .form_back:hover {
  background-color: #ccc;
  color: #000;
}
.document .form-button {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin: 100px auto 165px;
}

@media screen and (max-width: 960px) {
  .document-form-lead {
    font-size: clamp(17px,4.8vw,22px);
    line-height: 1.6;
    margin: 40px 0;
  }
  .document .form-caption {
    font-size: clamp(12px,3.4vw,16px);
    margin-bottom: 15px;
  }
  .document-form {
    display: block;
  }
  .document-form dt {
    min-height: clamp(55px,11.4vw,80px);
    font-size: clamp(12px,3.4vw,16px);
  }
  .document-form dt.req span {
    font-size: clamp(11px,3.1vw,14px);
  }
  .document-form dd {
    font-size: clamp(12px,3.4vw,16px);
    padding: 15px 13px;
  }
  .document-form input[type="text"],
  .document-form input[type="email"] {
    max-width: none;
    width: 100%;
    height: clamp(30px,8.5vw,40px);
  }
  .document-form .mwform-tel-field input[type="text"] {
    max-width: 25%;
  }
  .document-form .grade {
    max-width: none;
    height: clamp(30px,8.5vw,40px);
    padding-left: 1em;
  }
  .document-form .comment {
    height: clamp(80px,22.8vw,105px);
  }
  .document .submit {
    max-width: 320px;
    height: clamp(60px,17.1vw,80px);
    font-size: clamp(14px,4vw,20px);
  }
  .document-form .error {
    font-size: clamp(12px,3.4vw,15px);
  }
  .document .form_back {
    max-width: 320px;
    height: clamp(60px,17.1vw,80px);
    font-size: clamp(14px,4vw,20px);
  }
  .document .form-button {
    margin: 45px auto 75px;
  }  
}
.opencampus main {
  /*background-color: #ece7dd;*/
  padding-bottom: 180px;
}
.page-opencampus__wrapper {
  max-width: 1120px;
  background-color: #fff;
  margin-top: 55px;
  padding: 0 29px;
  border-radius: 15px;
}

.page-opencampus__wrapper.test {
  max-width: 1320px;
  padding: 0 40px;
  border-radius: 0px;
  margin:0 auto;
}

.page-opencampus__wrapper-in {padding-top:60px;}

.p-head__title.test {font-size: 30px; color: #555;}

.p-head__title.test span {display: inline-block;}

.opencampus-calendar::after {
  content: "";
  display: block;
  height: 12px;
  background: url(../img/opencampus/highschool-pcline.png) no-repeat;
  background-size: cover;
  margin-top: 80px;
}
.schedule-notice {
  background-color: #ffffe3;
  border: 4px solid #ed8000;
  border-radius: 8px;
  margin-bottom: -35px;
}

.schedule-notice.test {
  background-color: #fff;
  border: none;
  border-radius: 0px;
  margin-bottom: 40px;
}


.schedule-notice__title {
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  color: #fff;
  background-color: #ed8000;
  line-height: 2;
}

.schedule-notice__title.test {
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  color: #333;
  background-color: #fff;
  line-height: 2;
}

.schedule-notice__details {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding: 10px;
}
.schedule-details__text {}
.schedule-details__lead {
  font-size: clamp(18px,1.87vw,24px);
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
  margin: 10px 0;
}
.schedule-details__link {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 350px;
  width: 100%;
  height: clamp(42px,4.37vw,52px);
  font-size: clamp(14px,1.45vw,16px);
  font-weight: bold;
  background-color: #fff;
  color: #ef8b1e;
  border: 3px dotted;
  border-radius: 24px;
  margin: 0 auto 15px;
  padding: 3px 20px 0 0;
  position: relative;
}
.schedule-details__link::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background-color: #ef8b1e;
  border-radius: 50%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  margin: auto;
}
.schedule-details__link::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 7.5px;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
}
.schedule-details__link:hover {
  color: #29a3da;
  opacity: 1;
}
.schedule-details__link:hover::before {
  background-color: #29a3da;
}

.schedule-details__link.test {border-radius: 0;border: 1px solid;}

.oc-schedule-details__link {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 350px;
  width: 100%;
  height: clamp(42px,4.37vw,52px);
  font-size: clamp(14px,1.45vw,16px);
  font-weight: bold;
  background-color: #ef8b1e;
  color: #fff;
  border: 1px solid #ef8b1e;
  margin: 0 auto 15px;
  padding: 3px 20px 0 0;
  position: relative;
}
.oc-schedule-details__link::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background-color: #fff;
  border-radius: 50%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  margin: auto;
}
.oc-schedule-details__link::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 7.5px;
  border-color: transparent transparent transparent #ef8b1e;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
}
.oc-schedule-details__link:hover {
	background:#fff; 
  color: #ef8b1e;
  opacity: 1;
  border: 1px solid #ef8b1e;
}
.oc-schedule-details__link:hover::before {
  background-color: #ef8b1e;
  border-color: transparent transparent transparent #fff;

}

.oc-schedule-details__link:hover::after {  border-color: transparent transparent transparent #fff;}



.schedule-details__note {
  font-size: clamp(18px,1.87vw,21px);
  font-weight: bold;
  background-color: #11b7c7;
  border-radius: 4px;
  color: #fff;
  max-width: 470px;
  width: 100%;
  padding: clamp(10px,1vw,14px) 13px clamp(9px,0.9vw,14px) 16px;
  margin: auto;
}
.schedule-details__note span {
  background: url(../img/common/under-wave.png) no-repeat;
  background-position: bottom;
}
.schedule-details__note strong {
  color: #ff0;
}
.schedule-details__day {
  padding: 0 23px;
}
.schedule-details__list {
  display: flex;
  justify-content: center;
  gap: 10px;
  text-align: center;
  padding: 5px 0 13px;
}
.p-info-open__item {
  border: 4px solid;
  background-color: #fff;
  font-family: var(--sub-font-family);
  border-radius: 50%;
  max-width: 230px;
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 10px;
}

.p-info-open__item.test {
  border: 1px solid;
  background-color: #fff;
  font-family: var(--sub-font-family);
  border-radius: 0;
  max-width: 230px;
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 10px;
}

.p-info-open__item:first-child {
  color: #ef8b1e;
}
.p-info-open__item:last-child {
  color: #f3b33b;
}
.p-info-open__next {
  font-size: clamp(16px,1.66vw,22px);
  font-weight: bold;
  color: #fff;
  width: clamp(103px,10.7vw,138px);
  margin: 0 auto;
}
.next-time {
  display: block;
  background-color: #ef8b1e;
  border-radius: 15px;
  line-height: 1.4;
}
.p-info-open__item:last-child .next-time {
  display: none;
}
.next-next-time {
  display: block;
  background-color: #f3b33b;
  border-radius: 15px
}
.p-info-open__item:first-child .next-next-time {
  display: none;
}
.p-info-open__year {
  font-size: clamp(19px,1.97vw,26px);
  font-weight: bold;
  line-height: 1.8;
}
.p-info-open__time {
  font-size: clamp(52px,5.61vw,69px);
  font-weight: bold;
  color: var(--main-txt-color);
  line-height: 0.9;
}
.p-info-open__week {
  font-size: clamp(16px,1.66vw,22px);
  font-weight: bold;
}
.open-time__wrapper {
  display: flex;
  justify-content: flex-end;
}
.open-time {
  display: flex;
  align-items: center;
  width: max-content;
  background-color: #ef8b1e;
  border: 2px solid #ef8b1e;
  border-radius: 4px;
  margin-bottom: 10px;
}
.open-time__title {
  font-size: clamp(14px,1.45vw,16px);
  font-weight: bold;
  color: #fff;
  line-height: 1;
  padding: 0 10px;
  position: relative;
  top: 2px;
  margin: auto;
}
.open-time__zone {
  font-size: 22px;
  font-weight: bold;
  font-family: var(--sub-font-family);
  font-feature-settings: "palt";
  background-color: #fff;
  padding: 0 15px;
}
.open-time__note {
  font-size: 11px;
  line-height: 1.2;
  margin: 8px 0 0 8px;
}
.individual-consultation {
  display: flex;
  align-items: flex-start;
  padding: 0 20px;
  margin-left: -138px;
  margin-top: 110px;
}
.individual-image {
  max-width: 624px;
  position: relative;
  top: -45px;
  right: -140px;
}
.individual-details {
  max-width: 536px;
  width: 100%;
  background-color: #fffeb7;
  margin-top: 125px;
  padding: 60px 40px 50px 117px;
}
.individual-title {
  font-size: 29px;
  font-weight: bold;
  color: #000;
  position: relative;
}
.individual-title span {
  position: relative;
  z-index: 2;
}
.individual-title::after {
  content: "";
  display: block;
  aspect-ratio: 368/15;
  width: 100%;
  height: auto;
  background: url(../img/opencampus/individual-title.png) no-repeat;
  background-size: cover;
  position: absolute;
  z-index: 1;
  top: 25px;
}
.individual-text {
  font-size: 18px;
  line-height: 1.9;
}
.reservation-method {
  margin-top: 60px;
}
.reservation-title {
  font-size: 24px;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  background-color: #4d4d4d;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  margin-bottom: 40px;
}

.reservation-title.test {
  font-size: 24px;
  font-weight: bold;
  color: #333;
  line-height: 1;
  background-color: #FFF;
  margin-bottom: 40px;
}


.reservation-method-link {
  max-width: 980px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  font-weight: bold;
  line-height: 1;
  color: #0fb7c9;
  border: 2px solid #0fb7c9;
  border-radius: 10px;
  margin: 20px auto 70px;
  position: relative;
}
.reservation-method-link::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 11px 0 11px 19.1px;
  border-color: transparent transparent transparent #0fb7c9;
  position: absolute;
  right: 35px;
}
.reservation-method-link:hover {
  background-color: #0fb7c9;
  color: #fff;
}
.reservation-method-link:hover::after {
  border-color: transparent transparent transparent #fff;
}

.oc-reservation-btn {
  background-color: #0fb7c9;
  color: #fff;
  max-width: 980px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  font-weight: bold;
  line-height: 1;
  border: 2px solid #0fb7c9;
  margin: 20px auto 70px;
  position: relative;
}
.oc-reservation-btn::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 11px 0 11px 19.1px;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  right: 35px;
}
.oc-reservation-btn:hover {
  background-color: #fff;
  border: solid 2px #0fb7c9;
  color: #0fb7c9;
}
.oc-reservation-btn:hover::after {
  border-color: transparent transparent transparent #0fb7c9;
}


.opencampus-details figure + figure {
  margin-top: 55px;
}
.opencampus .request-bt {
  margin-top: 45px;
  padding-bottom: 75px;
}

.oc-flex {
	display: flex;

}
.center {align-items: center;}
.oc-flex-data {
	font-size: 18px;
	width: 50%;
	border: 5px solid #ededed;
	padding: 2vw;
	margin: 2vw;
	text-align: center;
	background-image: linear-gradient(0deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px)),
                    linear-gradient(90deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px));
  background-size: 16px 16px;
  background-repeat: repeat;
  background-position: center center;
}
.oc-flex-data strong span {display: inline-block;}

.oc-flex-data strong {font-size: 68px; color:#58b7ce;}

.oc-flex-side {width: 58%; padding: 5% 0;} 
.oc-flex-main {width: 45%; padding: 5%;} 
.minus{ margin-left: -6.5vw;}
.oc-flex-main h3 {
	font-size: 5.2rem;
	/*color: #58b7ce;*/
	margin: 20px 0;
	font-weight: normal;
	border-bottom: 1px solid #fff;
}
.oc-flex-main p strong {font-size: 2rem;}

/*.oc-flex-side img {
	
	
 clip-path: polygon(15% 0, 100% 0%, 100% 65%, 85% 100%, 0 100%, 0 35%);
  object-fit: cover;
}

.oc-flex-side img.nocut {	
 clip-path: none;
  object-fit: cover;
}*/

.oc-about-desc {
	background: #58b7ce;
	opacity: .8;
	padding: 2vw;
	color: #fff;
}

.reserve-line, .reserve-tel {width: 50%; padding: 40px;}

.oc__wrapper-l {
	width: 100%;
}

.oc-wrapper-m {
	max-width: 1000px;
	margin: 0 auto;
}

.oc-subtitle {
	writing-mode: vertical-rl;
	font-size: 80px;
	font-weight: bold;
	color: #ccc;
	line-height: 1em;
	padding: 0 30px;
}

.flex-end {justify-content: flex-end;}
.reverse{flex-direction:row-reverse;}


.reservation-step li p{padding: 1.5vw; width: 70%;}
.reservation-step li img {vertical-align: middle;}

.reservation-step li span {
	background: #88c9a1;
	padding: 20px;
	margin-bottom: 40px;
	border-radius: 2px;
	width: 30%;
	display: block;
	text-align: center;
	position: relative;
}

.reservation-step li span:before {
	content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border-top: 15px solid #88c9a1;  /* 好みで色を変えてください */ 
    border-right: 15px solid transparent;
    border-left: 15px solid transparent;
}

.reservation-step li:last-child span:before {border:none;}


.oc-reservation-btn {max-width: 800px;}

.oc-reservation-btn.line {
	background-color: #06c755;
	border: 2px solid #06c755;
	color :#fff;
}

.oc-reservation-btn.line img {margin-right: 10px;}

.oc-reservation-btn.line:after {
	border-color: transparent transparent transparent #fff;
	
}

.oc-reservation-btn.line:hover {
	background: #fff;
	color: #06c755;
}

.oc-reservation-btn.line:hover:after {
	border-color: transparent transparent transparent #06c755;
}




.oc-flex.w50 p {
	width: 50%;
	justify-content: space-between;
	margin-bottom: 5vw;
}


.oc-schedule-details__link {
	max-width: 450px;
	height: clamp(42px, 5.5vw, 80px);
}

.subsidy {margin: 20px 0;}

.subsidy ul.oc-flex {
	width: 50%;
}

.subsidy ul.oc-flex li{
	width: 25%;
	padding: 0 1%;
	text-align: center;
}

.subsidy ul.oc-flex li p.subsidy-details {
	background: #58b7ce;
	color: #fff;
}


.oc-pickup, .oc-about, .oc-data, .oc-reason, .oc-consul, .oc-wrapper-m{
	padding: 5vw 0px;
	margin-top: 0px;
}

.oc-pickup {padding-bottom:0;}

.oc-merit {background: #fef9f2;}

.oc-merit .spimg {
		background: linear-gradient(180deg, #fff 0%, #fff 67%, #69a4ca 67%, #69a4ca 100%);
		
}


.oc-fv img{
	width:100%;
	max-width: 1600px;
	margin: 0 auto;
}


.restart-fv img, .outside-fv img{
	width:100%;
	max-width: 1600px;
	margin: 0 auto;
}

.restart-fv#slideshow {
  position: relative;
  width: 100%;
  height: 800px;
}

.restart-fv#slideshow picture {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

.restart-fv#slideshow picture.active {
  opacity: 1;
}



@media screen and (max-width: 960px) {
  .opencampus main {
    padding-bottom: 40px;
  }
  .page-opencampus__wrapper {
    margin: 20px 0 0;
    padding: 0;
    border-radius: 5px;
  }
  .schedule-notice__wrapper {
    padding: 0 10px;
  }
  .schedule-notice {
    border: 2px solid #ed8000;
    border-radius: 10px;
    margin-bottom: 0;
  }
  .schedule-notice__title {
    font-size: clamp(15px,4.2vw,28px);
    line-height: 2.5;
  }
  .schedule-notice__details {
    display: block;
    padding: 10px;
  }
  .schedule-details__lead {
    font-size: clamp(14px,4vw,24px);
    margin: 1em 0;
    line-height: 1.8;
  }
  .schedule-details__link {
    height: clamp(42px,12vw,52px);
    font-size: clamp(12px,3.4vw,16px);
    border: 3px dotted;
    border-radius: 24px;
    margin: 0 auto 15px;
    padding: 3px 20px 0 0;
    width: 90%;
  }
  .schedule-details__link::before {
    width: 15px;
    height: 15px;
    right: 15px;
  }
  .schedule-details__link::after {
    border-width: 3px 0 3px 6px;
    right: 19px;
  }
  
  .oc-schedule-details__link {
    height: clamp(42px,12vw,52px);
    font-size: clamp(12px,3.4vw,16px);
    border: 3px dotted;
    border-radius: 24px;
    margin: 0 auto 15px;
    padding: 3px 20px 0 0;
    width: 90%;
  }
  
  
  
  .oc-schedule-details__link::before {
    width: 15px;
    height: 15px;
    right: 15px;
  }
  .oc-schedule-details__link::after {
    border-width: 3px 0 3px 6px;
    right: 19px;
  }
  
  .schedule-details__note {
    font-size: clamp(12.5px,3.57vw,21px);
    padding: 10px;
    margin: 0 auto 2em;
  }
  .schedule-details__note span {
    display: inline-block;
    background: none;
  }
  .schedule-details__note span::after {
    content: "";
    background: url(../img/common/under-wave.png) no-repeat;
    display: block;
    height: 6px;
    position: relative;
    top: -5px;
  }
  .schedule-details__day {
    padding: 0 5px;
  }
  .schedule-details__list {
    gap: 6px;
    padding: 5px 0 13px;
  }
  .p-info-open__item {
    border: 2px solid;
    padding-top: 10px;
  }
  .p-info-open__next {
    font-size: clamp(14px,4vw,22px);
    width: clamp(80px,22.8vw,138px);
  }
  .next-time {
    border-radius: 15px;
  }
  .next-next-time {
    border-radius: 15px
  }
  .p-info-open__year {
    font-size: clamp(16px,4.5vw,26px);
  }
  .p-info-open__time {
    font-size: clamp(42px,12vw,69px);
  }
  .p-info-open__time.test {
    font-size: clamp(30px,8vw,50px);
  }
  .p-info-open__week {
    font-size: clamp(14px,4vw,22px);
  }
  .open-time__wrapper {
    display: block;
  }
  .open-time {
    border: 2px solid #ef8b1e;
    border-radius: 4px;
    margin: 0 auto 10px;
  }
  .open-time__title {
    font-size: 15px;
    padding: 0 10px;
    position: inherit;
  }
  .open-time__zone {
    font-size: 21px;
    padding: 0 15px;
  }
  .open-time__note {
    font-size: 10px;
    text-align: center;
    margin: 0 0 2em;
  }
  .individual-consultation {
    display: block;
    padding: 0 10px;
    margin-left: 0;
    margin-top: 45px;
  }
  .individual-image {
    max-width: none;
    position: relative;
    top: 0;
    right: 0;
  }
  .individual-details {
    max-width: none;
    margin-top: 10px;
    padding: 20px;
  }
  .individual-title {
    font-size: clamp(20px,5.7vw,29px);
    max-width: max-content;
    padding-right: 5px;
  }
  .individual-title::after {
    top: clamp(18px,5.1vw,25px);
  }
  .individual-text {
    font-size: clamp(14px,4vw,18px);
  }
  .reservation-method {
    margin-top: 40px;
  }
  .reservation-title {
    font-size: clamp(18px,5.1vw,24px);
    line-height: 1.3;
    display: block;
    text-align: center;
    height: auto;
    margin-bottom: 25px;
    padding: 10px 15px;
  }
  .reservation-method-link {
    height: clamp(50px,14.2vw,100px);
    font-size: clamp(15px,4.2vw,26px);
    border: 1px solid #0fb7c9;
    border-radius: 4px;
    margin: 10px 10px 30px;
  }
  .reservation-method-link::after {
    border-width: clamp(6px,1.7vw,11px) 0 clamp(6px,1.7vw,11px) clamp(10.4px,2.9vw,19.1px);
    right: 10px;
  }
  .reservation-method-link:hover {
    background-color: #0fb7c9;
    color: #fff;
  }
  .reservation-method-link:hover::after {
    border-color: transparent transparent transparent #fff;
  }
  
  .oc-reservation-btn {
	height: clamp(50px,14.2vw,100px);
    font-size: clamp(15px,4.2vw,26px);
    border: 1px solid #0fb7c9;
    margin: 30px auto;
    border: 2px solid #0fb7c9;
    width: 100%;
   }
  .oc-reservation-btn::after {
    border-width: clamp(6px,1.7vw,11px) 0 clamp(6px,1.7vw,11px) clamp(10.4px,2.9vw,19.1px);
    right: 10px;
  }
  .oc-reservation-btn:hover {
    background-color: #fff;
    color: #0fb7c9;
  }
   .oc-reservation-btn:hover::after {
    border-color: transparent transparent transparent #0fb7c9;
  }
  
  .opencampus-details figure + figure {
    margin-top: 25px;
  }
  .opencampus .request-bt {
    margin-top: 15px;
    padding: 0 10px 30px;
  }
  
  .oc-flex-main.oc-flex {display: block;}
  .oc-subtitle {
	writing-mode: horizontal-tb;
	font-size: 30px;
	font-weight: bold;
	color: #ccc;
	padding: 30px 0;
	}
	
	.oc-flex-main h3, .oc-flex-data strong { font-size: 30px;}
  
	.oc-flex-data {width: 50%;}
	
	.oc-flex.w50 .oc-schedule-details__link {
		border: none;
		border-radius: 0px;
		margin: 0 auto;
	}
	.oc-flex.w50 .oc-schedule-details__link:hover {border: 1px solid #ef8b1e;}
	.oc-pickup, .oc-about, .oc-data, .oc-reason, .oc-consul, .oc-wrapper-m{
	padding: 5vw 2vw;
	}
	
	.oc-pickup {padding-bottom: 0;}
}

@media screen and (max-width: 480px) {
	.oc-flex {display: block;}
	.oc-pickup .oc-flex {display: flex;}
	.oc-flex-data,.oc-flex-main,.oc-flex-side {width: 100%; padding: 5% 0;}
	.oc-flex-data {margin: 2vw 0; padding: 7vw;}
	.page-opencampus__wrapper.test {width: 100%; padding: 0;}
	.page-opencampus__wrapper-in { padding: 5vw;}
	
	.schedule-details__list.test {flex-wrap: wrap;}
	.p-info-open__item.test {width: 23%;}
	
	.oc-flex-data strong{font-size: 54px;}
	
	.oc-merit .spimg2 {
		padding: 0 5%;
		margin-top: 20px;
	}
	
	
	
	.oc-flex-side {margin: 20px 0;}
	
	.oc-subtitle {
	writing-mode: horizontal-tb;
	font-size: 40px;
	font-weight: bold;
	color: #ccc;
	padding: 30px 0;
	}
	
	.oc-flex-main h3 {
	font-size: 37px;
	margin: 10px 0;
	}
	
	.schedule-notice .oc-flex p {
	width: 100%;
	
	}

	.reservation-step .oc-flex {display: flex;}
	
	.subsidy ul.oc-flex {
	width: 100%;
	display: flex;
	}

	.subsidy ul.oc-flex li{
	
	}
	
	.oc-flex.w50 p {width: 100%; padding: 0;}
	
	.minus{ margin-left: 0;}
	.oc-about-desc {margin-top:5vw;}
}	



.study-abroad-details {
  margin: 40px 0 80px;
}
.en-title-img {
  border-top: 3px solid var(--main-txt-color);
  border-bottom: 1px solid var(--main-txt-color);
  display: flex;
  justify-content: center;
  padding: 25px 0;
}
.study-abroad-title {
  font-size: 42px;
  font-weight: bold;
  text-align: center;
  border-bottom: 3px solid var(--main-txt-color);
  padding: 15px 0;
  margin-bottom: 5px;
}
.study-abroad-catch {
  position: relative;
}
.study-abroad-catch-text {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.75;
  max-width: 530px;
  position: absolute;
  top: 56%;
  left: 16px;
}
.study-abroad-kanada {
  background-color: #fef9f2;
  border: 1px solid #fad9b2;
  border-radius: 20px;
  padding: 20px 10px;
  position: relative;
}
.study-abroad-kanada-text {
  line-height: 1.75;
  max-width: clamp(270px,27vw,290px);
  position: absolute;
  top: 42%;
  left: 7%;
}
.study-abroad-cebu {
  background-color: #fef9f2;
  border: 1px solid #fad9b2;
  border-radius: 20px;
  margin-top: 40px;
  padding: 20px 10px 50px;
  position: relative;
}
.study-abroad-cebu-text {
  line-height: 1.75;
  max-width: 350px;
  position: absolute;
  top: 25.5%;
  left: 66%;
}
.study-abroad-cebu-other-text {
  line-height: 1.75;
  max-width: clamp(391px,40vw,414px);
  position: absolute;
  top: 83%;
  left: 2%;
}
.study-abroad-korea {
  background-color: #fef9f2;
  border: 1px solid #fad9b2;
  border-radius: 20px;
  margin-top: 40px;
  padding: 20px 10px;
  position: relative;
}
.study-abroad-korea-text {
  line-height: 1.75;
  max-width: 312px;
  position: absolute;
  top: 46.5%;
  left: 64.5%;
}
.study-abroad-korea-text span {
  display: block;
  font-size: 13px;
  text-align: right;
}
.study-abroad-kumejima {
  background-color: #fef9f2;
  border: 1px solid #fad9b2;
  border-radius: 20px;
  margin-top: 40px;
  padding: 0 10px 25px;
  position: relative;
}
.study-abroad-kumejima-text {
  line-height: 1.75;
  max-width: clamp(290px,30vw,347px);
  position: absolute;
  top: 52%;
  left: 2%;
}

@media screen and (max-width: 960px) {
  .study-abroad-details {
    margin: 23px 0 0;
  }
  .en-title-img {
    padding: 20px 10px;
  }
  .study-abroad-title {
    font-size: clamp(29px,8.2vw,42px);
    margin-bottom: 10px;
    padding: 10px 0;
  }
  .study-abroad-catch {
    position: relative;
  }
  .study-abroad-catch-text {
    font-size: clamp(16px,4.5vw,24px);
    line-height: 1.6;
    max-width: none;
    position: static;
    padding: 0 15px;
  }
  .study-abroad-catch-text::before,
  .study-abroad-catch-text::after {
    content: "";
    display: block;
    height: 7px;
    background: url(../img/studyabroad/highschool-spline.png) no-repeat;
    background-size: cover;
    margin: 0 -15px 15px;
  }
  .study-abroad-catch-text::after {
    margin-top: 15px;
  }
  .study-abroad-kanada {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    border-radius: 0;
    padding: 25px 0 0;
    border-bottom: none;
  }
  .study-abroad-kanada-text {
    line-height: 1.6;
    max-width: none;
    position: static;
    font-size: clamp(13px,3.7vw,16px);
    margin: 15px 0;
    padding: 0 4.28vw;
  }
  .study-abroad-cebu {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    border-radius: 0;
    padding: 35px 0 0;
    border-top: none;
    border-bottom: none;
  }
  .study-abroad-cebu-text {
    line-height: 1.6;
    max-width: none;
    position: static;
    font-size: clamp(13px,3.7vw,16px);
    margin: 15px 0;
    padding: 0 4.28vw;
  }
  .study-abroad-cebu-other-text {
    line-height: 1.6;
    max-width: none;
    position: static;
    font-size: clamp(13px,3.7vw,16px);
    margin: 15px 0;
    padding: 0 4.28vw;
  }
  .study-abroad-korea {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    border-radius: 0;
    padding: 5px 0 0;
    border-top: none;
    border-bottom: none;
  }
  .study-abroad-korea-text {
    line-height: 1.6;
    max-width: none;
    position: static;
    font-size: clamp(13px,3.7vw,16px);
    margin: 15px 0;
    padding: 0 4.28vw;
  }
  .study-abroad-korea-text span {
    font-size: 12px;
  }
  .study-abroad-kumejima {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    border-radius: 0;
    padding: 10px 0 60px;
    border-top: none;
  }
  .study-abroad-kumejima-text {
    line-height: 1.6;
    max-width: none;
    position: static;
    font-size: clamp(13px,3.7vw,16px);
    margin: 15px 0;
    padding: 0 4.28vw;
  }
}

.certificate-details {
  margin-top: 80px;
  padding-bottom: 170px;
}
.certificate-details p {
  line-height: 2;
}
.certificate-details .cl-red {
  color: #f00;
  display: block;
}
.certificate-title {
  font-size: 20px;
  font-weight: bold;
  color: #000;
  line-height: 2.5;
  text-align: center;
  background-color: #ffedd5;
  border-bottom: 1px solid #f38204;
  margin-bottom: 1em;
}
.certificate-content__wrapper {
  padding: 0 20px;
}
.certificate-kinds-table {
  text-align: center;
  border: 1px solid #666;
  border-left: none;
  width: 100%;
  margin-top: 20px;
}
.certificate-kinds-table th {
  font-weight: bold;
  background-color: #f2f2f2;
  border-left: 1px solid #666;
  padding: 1em 0;
  vertical-align: middle;
}
.certificate-kinds-table td {
  border-top: 1px solid #666;
  border-left: 1px solid #666;
  padding: 1em 0;
  vertical-align: middle;
}
.certificate-kinds-list li {
  line-height: 2;
  margin-top: 24px;
}
.certificate-kinds-list .cl-red {
  font-size: 14px;
}
.certificate-application {
  margin-top: 120px;
}
.certificate-application-list {
  line-height: 2;
}
.certificate-application-list dt {
  font-size: 18px;
  font-weight: bold;
  color: #ef7e00;
  line-height: 1.8;
  border-bottom: 1px solid #ccc;
  margin: 50px 0 1em;
}
.certificate-application-list:nth-of-type(1) dt {
  margin-top: 30px;
}
.certificate-application-list dd ul {
  margin-top: 1em;
}
.certificate-download {
  margin-top: 120px;
}
.certificate-download p {
  text-align: center;
}
.certificate-download-link {
  max-width: 500px;
  width: 100%;
  height: 70px;
  font-size: 18px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  color: #fff;
  background-color: #ef7e00;
  line-height: 1;
  margin: 10px auto 35px;
}
.certificate-download-link:hover {
  opacity: 1;
  color: #ff0;
}
.certificate-download-link span {
  display: block;
  font-size: 14px;
  font-weight: normal;
  margin-top: 0.5em;
}
.certificate-download-list {
  line-height: 2;
  padding-top: 10px;
}
.certificate-download-list p {
  text-align: left;
}
.certificate-important {
  margin-top: 120px;
}
.certificate-contact {
  margin-top: 130px;
}
@media screen and (max-width: 960px) {
  .certificate-details {
    margin-top: 30px;
    padding-bottom: 70px;
  }
  .certificate-details p {
    font-size: 14px;
  }
  .certificate-title {
    font-size: 18px;
    line-height: 2.2;
  }
  .certificate-content__wrapper {
    padding: 0;
  }
  .certificate-kinds-table {
    font-size: clamp(12px,3.4vw,16px);
    margin-top: 15px;
  }
  .certificate-kinds-table th {
    padding: 0.5em;
  }
  .certificate-kinds-table td {
    padding: 0.5em;
  }
  .certificate-kinds-list {}
  .certificate-kinds-list li {
    font-size: 14px;
    margin-top: 15px;
  }
  .certificate-kinds-list .cl-red {
    font-size: 12px;
  }
  .certificate-application {
    margin-top: 50px;
  }
  .certificate-application-list dt {
    font-size: 16px;
    line-height: 1.5;
    margin: 30px 0 1em;
    padding-bottom: 0.5em;
  }
  .certificate-application-list:nth-of-type(1) dt {
    margin-top: 20px;
  }
  .certificate-application-list dd ul {
    font-size: 14px;
  }
  .certificate-application-list dd ul li {
    text-indent: -1em;
    margin-left: 1em;
  }
  .certificate-download {
    margin-top: 50px;
  }
  .certificate-download-link {
    margin: 5px auto 30px;
  }
  .certificate-download-link:hover {
    opacity: 1;
    color: #ff0;
  }
  .certificate-download-link span {
    display: block;
    font-size: 14px;
    font-weight: normal;
    margin-top: 0.5em;
  }
  .certificate-download-list {
    padding-top: 0;
  }
  .certificate-download-list ul li {
    font-size: 14px;
  }
  .certificate-important {
    margin-top: 60px;
  }
  .certificate-contact {
    margin-top: 60px;
  }
}

.single-post {
  border: 1px solid #f7931e;
  border-radius: 10px;
  margin: 65px 0 165px;
  padding: 50px 50px 125px;
}
.single-category-title {
  font-size: 16px;
  font-weight: bold;
  color: var(--main-orange);
  width: 300px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid var(--main-orange);
  border-radius: 4.5px;
  line-height: 1;
}
.single-category-title.cabinattendant,
.single-category-title.groundstaff,
.single-category-title.groundhandling {
  color: var(--course-airline);
  border-color: var(--course-airline);
}
.single-category-title.foreignbusiness {
  color: var(--course-foreignbusiness);
  border-color: var(--course-foreignbusiness);
}
.single-category-title.bridal {
  color: var(--course-bridal);
  border-color: var(--course-bridal);
}
.single-post-date {
  font-size: 16px;
  color: #808080;
  background-color: #fef4e8;
  text-align: right;
  line-height: 1.9;
  margin: 10px 0 15px;
  padding-right: 10px;
}
.single-post-title {
  font-size: 26px;
  font-weight: bold;
  color: #000;
  line-height: 1.75;
  border-bottom: 2px dashed #f7931e;
  padding-bottom: 20px;
  margin-bottom: 22px;
}
.single-post-contents {
  padding: 0 10px;
}
.category-news__nav-list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 25px 12px;
  max-width: 750px;
  margin: 60px auto 75px;
}
.category-news__nav-item {
  background-color: var(--main-orange);
  color: var(--main-orange);
  border-radius: 4.6px;
}
.category-news__nav-item:nth-child(7),
.category-news__nav-item:nth-child(8),
.category-news__nav-item:nth-child(9) {
  background-color: var(--course-airline);
  color: var(--course-airline);
}
.category-news__nav-item:nth-child(10) {
  background-color: var(--course-bridal);
  color: var(--course-bridal);
}
.category-news__nav-item:nth-child(11) {
  background-color: var(--course-foreignbusiness);
  color: var(--course-foreignbusiness);
}
.category-news__nav-item a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 115px;
  height: 42px;
  border: 1px solid;
  border-radius: 4.6px;
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  line-height: 1.25;
  color: inherit;
  background-color: #fff;
}
.post-type-archive-news .category-news__nav-item:nth-child(1) a,
.category-news .category-news__nav-item:nth-child(2) a,
.category-open_campus .category-news__nav-item:nth-child(3) a,
.category-event .category-news__nav-item:nth-child(4) a,
.category-employment .category-news__nav-item:nth-child(5) a,
.category-licence .category-news__nav-item:nth-child(6) a,
.category-cabinattendant .category-news__nav-item:nth-child(7) a,
.category-groundstaff .category-news__nav-item:nth-child(8) a,
.category-groundhandling .category-news__nav-item:nth-child(9) a,
.category-bridal .category-news__nav-item:nth-child(10) a,
.category-foreignbusiness .category-news__nav-item:nth-child(11) a {
  background-color: inherit;
  color: #fff;
  pointer-events: none;
}
.category-news__nav-item a:hover {
  opacity: 1;
  color: #fff;
  background-color: inherit;
}
.archive .p-top-news__list {
  gap: 75px calc(80px / 3);
  padding: 0;
}
.pager {
  display: flex;
  justify-content: center;
  gap: 15px;
  margin: 100px 0 60px;
}
.pager .page-numbers {
  font-size: 15px;
  font-weight: bold;
  color: #ee8302;
  border: 1px solid #ee8302;
  width: 29px;
  height: 29px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
.pager .page-numbers:hover {
  opacity: 1;
  color: #fff;
  background-color: #ee8302;
}
.pager .page-numbers.current {
  color: #fff;
  background-color: #ee8302;
}
.pager .page-numbers.next,
.pager .page-numbers.prev {
  border: none;
}
.pager .page-numbers.next:hover,
.pager .page-numbers.prev:hover {
  color: #ee8302;
  background-color: #fff;
}

@media screen and (max-width: 960px) {
  .single-post {
    margin: 40px 0 80px;
    padding: 25px 15px 35px;
  }
  .single-category-title {
    font-size: clamp(11px,3.1vw,16px);
    width: clamp(211px,60.2vw,300px);
    height: clamp(29px,8.2vw,42px);
  }
  .single-post-date {
    font-size: clamp(13px,3.7vw,16px);
    line-height: 2.3;
    margin: 7px 0 10px;
    padding-right: 8px;
  }
  .single-post-title {
    font-size: clamp(18px,5.1vw,26px);
    line-height: 1.5;
    padding-bottom: 10px;
    margin-bottom: 15px;
  }
  .single-post-contents {
    padding: 0;
  }
  .category-news__nav-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(99px, 1fr));
    justify-content: flex-start;
    gap: 10px 6px;
    max-width: 737px;
    margin: 30px auto 40px;
    padding: 0 4.5px
  }
  .category-news__nav-item {}
  .category-news__nav-item a {
    width: 100%;
    height: auto;
    aspect-ratio: 115/42;
    font-size: 10px;
  }
  .archive .p-top-news__list {
    gap: 23px 15px;
    padding: 0;
  }
  .pager {
    margin: 60px 0 30px;
  }
  .pager .page-numbers {
    font-size: 15px;
    font-weight: bold;
    color: #ee8302;
    border: 1px solid #ee8302;
    width: 29px;
    height: 29px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
  }
  .pager .page-numbers:hover {
    opacity: 1;
    color: #fff;
    background-color: #ee8302;
  }
  .pager .page-numbers.current {
    color: #fff;
    background-color: #ee8302;
  }
  .pager .page-numbers.next,
  .pager .page-numbers.prev {
    border: none;
  }
  .pager .page-numbers.next:hover,
  .pager .page-numbers.prev:hover {
    color: #ee8302;
    background-color: #fff;
  }
}

.breadcrumbs {
  display: flex;
  align-items: center;
  gap: 1em;
  font-size: 12px;
  color: #000;
  line-height: 1;
  margin-top: 10px;
}
.breadcrumbs a {
  font-size: 12px;
  color: #000;
}
.breadcrumb-post-category {
  flex-shrink: 0;
}
.breadcrumb-post-title {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
@media screen and (max-width: 960px) {
  .breadcrumbs {
    display: none;
  }
}

.thanks-text {
  margin-top: 60px;
}
.thanks-address {
  margin: 20px 0 60px;
}
.preparation {
  font-size: 56px;
  font-weight: bold;
  color: #919191;
  text-align: center;
  margin: 200px 0 250px;
}
@media screen and (max-width: 960px) {
  .preparation {
    font-size: 40px;
    margin: 70px 0 110px;
  }
}

.slide-top-news .slick-list {
  display: flex;
}
.slide-top-news .slick-track {
  display: flex;
  gap: 20px;
}
.slide-top-news.slick-initialized .slick-slide {
  display: flex;
}
.slide-top-news .slick-slide {
  float: none;
}
@media screen and (max-width: 960px) {
  .slide-top-news .slick-track {
    gap: 10px;
  }
}

/* ブライダル・ホテル科 */
  .comprehensive {background: #fdeddb;}
  
  .comprehensive-merit {
	background: #fff url(../img/comprehensive/bg_comprehensive_merit01.png) no-repeat;
	background-position: right 3vw bottom 3vw;
	background-size: 8%;
    padding: 3vw;
    border-radius: 20px;
    margin-bottom: 3vw;
  }
  .comprehensive-merit li {
	  border-bottom: 1px solid #fadbda;
	  font-size: 30px;
	  font-weight: bold;
	  padding: 2vw 0;
	  display: flex;
  }
  .comprehensive-merit li div.meritnum {
  	width: 10%;
  }
  
   .comprehensive-merit li div.meritcon {
  	width: 90%;
  }
  
  .comprehensive-merit li span{ 
  color:#e73656;
}
  .comprehensive-merit li span.small{ 
  color:#231815;
  font-size: 18px;
}

.comprehensive-merit li img { 
  vertical-align: middle;
  margin-right: 2.5vw;
}

.comprehensive-schedule {
	background: #fff; 
    padding: 3vw;
    border-radius: 20px;
    display: flex;
    margin-bottom: 3vw;
}

.comprehensive-schedule div{width: 100%; padding: 0 1vw;}

.comprehensive-schedule ol {
	background: #fff url(../img/comprehensive/bg_comprehensive_schedule.png) no-repeat;	
	background-position: right 3vw bottom;
	background-size: 10%;
	list-style-type: decimal;
	list-style-position:inside;
	line-height: 2em;
}


@media screen and (max-width: 960px) {

 .comprehensive-merit li div.meritnum {
  	width: 15%;
  }
  
   .comprehensive-merit li div.meritcon {
  	width: 85%;
  }
  .comprehensive-schedule {
   display: block;
	}
	
}

@media screen and (max-width: 480px) {

.comprehensive-merit li {
	  font-size: 24px;
	  padding: 3vw 0;
	}

	
 .comprehensive-merit li div.meritnum {
  	width: 25%;
  }
  
   .comprehensive-merit li div.meritcon {
  	width: 75%;
  }
	
	
.comprehensive-schedule {
   display: block;
}

.comprehensive-schedule div{
   padding: 1vw;
}


}

.restart-fv, .outside-fv {text-align: center;}

.restart-wrapper-l{
	max-width: 1600px;
	padding: 5vw;
	line-height: 2em;
	font-size: 1.8rem;
	margin: 0 auto;
}

.restart-wrapper-l h3 {text-align: center;}
.restart-wrapper-l .voice-restart-left h3,.restart-wrapper-l .qa-restart h3 {text-align: left;}

.restart-wrapper-l .merit-01__wrapper {max-width: 1296px;}

.restart-wrapper-l .merit-01__wrapper figure, .restart-wrapper-l .merit-01__wrapper div, .restart-wrapper-l .merit-02__wrapper figure,.restart-wrapper-l .merit-02__wrapper .co-collaboration {width: 50%;}
.restart-wrapper-l .merit-01__wrapper figure, .restart-wrapper-l .merit-02__wrapper figure {max-width: 100%;}

.voice-restart, .outside_aboutokinawa {
	display: flex;
	margin-bottom: 5vw;
	gap: 2vw;
}



.voice-restart-left,.voice-restart-right, .outside_aboutokinawa-left, .outside_aboutokinawa-right {width: 50%;}

.outside_aboutokinawa-left img {width: 100%;}

.voice-restart .voice-restart-left h3, .voice-restart .voice-restart-left h4, .voice-restart .voice-restart-left p,.voice-restart .voice-restart-right p{margin-bottom: 20px;}

.voice-restart .voice-restart-right p.voice-q{font-weight:bold;}
.voice-restart .voice-restart-right p.voice-q span.voice__q-label{background-color:#EF8200; color: #fff; padding: 3px 5px;}

.voice-restart .voice-restart-right p.voice-a{margin-left:2vw;}



.qa-restart li {
	position: relative;
    border-top: 1px solid rgba(0, 0, 0, 0.12);
    margin-bottom: 10px;
    padding: 3vw 0;
}

.qa-restart li div  {padding:1vw; margin-top:1vw;}

.qa-restart li div.outside_aboutokinawa {padding: 3vw 0;}
.qa-restart li div.outside_aboutokinawa div{padding: 0;}

.qa-restart-btn {display: flex; justify-content: center;}


.restart .merit__item-title span {
  color: var(--main-txt-color);
  display: inline-block;
}

.qa-restart h3.outside_aboutokinawa_qa-title {
	text-align: center;
	font-size: 30px;
	color: #4bc2ff;
}




@media screen and (max-width: 480px) {
	.restart-fv#slideshow {
		height: 400px;
	}
	.restart-fv#slideshow img {
		top: 0;
	}
  
  .p-header__title {
	  width: clamp(123px,55vw,220px);
  }

  .p-header__title img {
	  display: inline;
	  /*max-width:67%; */
  }
  img.kbclogo {
	  max-width:70%;
	  display: none;}
  
  .admission-table dl dt, .admission-table dl dd {
	  display: block;
	  width: 100%;
  }
  
  .restart-wrapper-l .merit-01__wrapper figure, .restart-wrapper-l .merit-01__wrapper div, .restart-wrapper-l .merit-02__wrapper figure,.restart-wrapper-l .merit-02__wrapper .co-collaboration {width: 100%; padding: 2vw;}

  
  .voice-restart, .qa-restart-btn {display: flex; flex-direction: column;}
  .voice-restart-left,.voice-restart-right {width: 100%; padding: 2vw;}
  
  .restart .section_content_heading {margin-bottom: 15vw;}
  
  .qa-restart-btn div {margin : auto;}
  
  .outside_aboutokinawa {flex-direction: column;}
  .outside_aboutokinawa-left,.outside_aboutokinawa-right {width: 100%;}
  
  
}





