@charset "UTF-8";
@keyframes mv-movie {
  0% {
    mask-size: 10px auto;
    -webkit-mask-size: 10px auto;
  }
  25% {
    mask-size: 20% auto;
    -webkit-mask-size: 20% auto;
  }
  75% {
    mask-size: 20% auto;
    -webkit-mask-size: 20% auto;
  }
  100% {
    mask-size: 500% auto;
    -webkit-mask-size: 500% auto;
  }
}
@keyframes mv-copy {
  0% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/*
---
---------------------------------------------------------------------------*/
.customheader__cat {
  background-color: #FFE700;
}

.customheader__cat__en span {
  background-color: #fff;
}

.mainvisual__cat {
  background-color: #FFE700;
}
.mainvisual__cat__en {
  color: inherit;
}

h2:before {
  background-color: #FFE700;
}

body.single-hoshigraph .customheader__cat__jp {
  display: flex;
  flex-wrap: wrap;
  line-height: 1.3;
}
body.single-hoshigraph .customheader__cat__jp span:after {
  content: '｜';
  color: #585757;
}
body.single-hoshigraph .customheader__cat__jp h1 {
  font-size: 2.8rem;
}
@media screen and (max-width: 767px) {
  body.single-hoshigraph .customheader__cat__jp h1 {
    font-size: 2rem;
  }
}

.simplebar-track {
  background-color: #FFFCC1;
}

.simplebar-scrollbar:before {
  background-color: #FFE700;
}

.shakaijin_interview__other__thumb.new:after {
  background-color: #FFE700;
	color: inherit;
}

/*
---
---------------------------------------------------------------------------*/
.ichibanboshi__tab {
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 75px;
  display: flex;
  border-style: solid;
  border-color: #FFE700;
  border-width: 4px 2px;
}
@media screen and (max-width: 500px) {
  .ichibanboshi__tab {
    margin-left: -15px;
    margin-right: -15px;
    margin-bottom: 45px;
    border-width: 3px 1px;
  }
}
.ichibanboshi__tab__col {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: inherit;
  font-size: 1.4rem;
  font-weight: bold;
  border-style: solid;
  border-color: #FFE700;
  border-width: 0px 2px;
  min-height: 36px;
  padding: 2px;
}
.ichibanboshi__tab__col:after {
  content: '';
  display: block;
  width: 8px;
  height: 8px;
  background-image: url("../images/arrow-border-8x8-black-next.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  margin-left: 5px;
  flex-shrink: 0;
}
.ichibanboshi__tab__col:hover {
  background-color: rgba(255, 231, 0, 0.5);
}
.ichibanboshi__tab__col.active {
  background-color: #FFE700;
}

.ichibanboshi__list__item {
  color: inherit;
  display: block;
  position: relative;
  max-width: 224px;
  margin-left: auto;
  margin-right: auto;
}
.ichibanboshi__list__thumb {
  background-size: cover;
  background-position: center;
  flex-shrink: 0;
  position: relative;
  overflow: hidden;
  transition: all .5s;
  border-radius: 0 65px 0 0;
}
@media screen and (max-width: 767px) {
  .ichibanboshi__list__thumb {
    border-top-right-radius: 45px;
  }
}
.ichibanboshi__list__thumb:before {
  content: '';
  display: block;
  padding-bottom: 116%;
}
.ichibanboshi__list__thumb.new:after {
  content: 'NEW';
  font-size: 1.3rem;
  width: 70px;
  height: 70px;
  bottom: 0;
  right: 0;
  position: absolute;
  background-color: #FFE700;
  display: flex;
  justify-content: center;
  line-height: 1;
  transform: translate(50%, 50%) rotate(-45deg);
  padding-top: 4px;
}
a:hover .ichibanboshi__list__thumb {
  opacity: 0.5;
}

/*
---
---------------------------------------------------------------------------*/
body.single-ichibanboshi h2 {
  font-size: 2.3rem;
  position: relative;
  font-weight: bold;
  box-shadow: none;
  background-color: transparent;
  padding: 0;
  text-align: center;
  z-index: 1;
}
body.single-ichibanboshi h2:before {
  content: none;
}

.ichibanboshi__h2__cat {
  text-align: center;
  margin-bottom: 10px;
}
.ichibanboshi__h2__cat img {
  margin-bottom: 5px;
  width: 81px;
}

.shakaijin_interview__other {
  max-width: 400px;
}
@media screen and (max-width: 767px) {
  .shakaijin_interview__other {
    max-width: 360px;
  }
}
.shakaijin_interview__other__slick:after {
  content: none;
}
.shakaijin_interview__other__slick .slick-arrow {
  height: 320px;
}
@media screen and (max-width: 767px) {
  .shakaijin_interview__other__slick .slick-arrow {
    height: 69.5vw;
    max-height: 320px;
  }
}
.shakaijin_interview__other__thumb {
  border-top-right-radius: 75px;
}
.shakaijin_interview__other__thumb:before {
  padding-bottom: 320px;
}
@media screen and (max-width: 767px) {
  .shakaijin_interview__other__thumb:before {
    padding-bottom: 114%;
  }
}

/*
---
---------------------------------------------------------------------------*/
.hoshigraph__list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 40px;
}
.hoshigraph__list__col {
  display: flex;
  color: inherit;
  width: calc( (100% - 40px) / 2 );
}
@media screen and (max-width: 767px) {
  .hoshigraph__list__col {
    width: 100%;
  }
}
.hoshigraph__list__left {
  width: 130px;
  flex-shrink: 0;
  margin-right: 20px;
}
.hoshigraph__list__left img {
  object-fit: cover;
  aspect-ratio: 1;
  transition: all .5s;
}
a:hover .hoshigraph__list__left img {
  opacity: .5;
}
@media screen and (max-width: 767px) {
  .hoshigraph__list__left {
    width: 120px;
  }
}
.hoshigraph__list__right {
  align-self: center;
}
@media screen and (max-width: 767px) {
  .hoshigraph__list__date {
    font-size: 1.3rem;
  }
}
.hoshigraph__list__title {
  font-weight: bold;
  font-size: 1.8rem;
  margin-top: 5px;
}
@media screen and (max-width: 767px) {
  .hoshigraph__list__title {
    font-size: 1.5rem;
  }
}

/*
---
---------------------------------------------------------------------------*/
.hoshigraph__pagetitle {
  text-align: center;
  font-size: 2.3rem;
  line-height: 1.75;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .hoshigraph__pagetitle {
    font-size: 1.6rem;
  }
}

.hoshigraph__gallery {
  display: flex;
  flex-wrap: wrap;
  gap: 90px 60px;
}
@media screen and (max-width: 767px) {
  .hoshigraph__gallery {
    gap: 50px;
    margin-left: -15px;
    margin-right: -15px;
  }
}
.hoshigraph__gallery__col {
  width: calc( (100% - 60px) / 2 );
}
@media screen and (max-width: 767px) {
  .hoshigraph__gallery__col {
    width: 100%;
  }
}
@media screen and (min-width: 768px), print {
  .hoshigraph__gallery__col.col1 {
    width: 100%;
  }
}
.hoshigraph__gallery__comment {
  max-width: 300px;
  margin: 0 auto 40px;
  position: relative;
  z-index: 1;
  padding: 1px;
}
.hoshigraph__gallery__comment:before {
  content: '';
  position: absolute;
  border: 1px solid;
  border-radius: 20px;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}
.hoshigraph__gallery__comment:after {
  content: '';
  position: absolute;
  background-color: #fff;
  border-style: solid;
  width: 24px;
  height: 24px;
  bottom: -9px;
  z-index: -1;
}
.hoshigraph__gallery__comment.left:after {
  left: 40px;
  transform: skewY(45deg) rotate(-7deg);
  border-width: 0 1px 1px 0;
}
.hoshigraph__gallery__comment.right:after {
  right: 40px;
  transform: skewY(-45deg) rotate(7deg);
  border-width: 0 0 1px 1px;
}
.hoshigraph__gallery__col.col1 .hoshigraph__gallery__comment {
  max-width: none;
}
.hoshigraph__gallery__col.col1 .hoshigraph__gallery__comment.left:after {
  left: 40%;
}
.hoshigraph__gallery__col.col1 .hoshigraph__gallery__comment.right:after {
  right: 40%;
}
.hoshigraph__gallery__commentinner {
  padding: 20px 10px;
  background-color: #fff;
  border-radius: 20px;
  font-size: 1.3rem;
}
.hoshigraph__gallery__media {
  max-width: 570px;
  margin-left: auto;
  margin-right: auto;
}
.hoshigraph__gallery__media iframe {
  aspect-ratio: 16/9;
  width: 100%;
}

/*
---
---------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .h2__threemin {
    font-size: 2.6rem;
  }
  .h2__threemin span {
    font-size: 3rem;
  }
  .h2__threemin span:before {
    font-size: 8rem;
  }
}

.threemin__imgRight {
  display: flex;
  gap: 30px;
}
@media screen and (min-width: 768px), print {
  .threemin__imgRight {
    flex-direction: row-reverse;
  }
}
@media screen and (max-width: 767px) {
  .threemin__imgRight {
    flex-direction: column;
  }
}
@media screen and (min-width: 768px), print {
  .threemin__imgRight__thumb {
    width: 260px;
    max-width: 30%;
    flex-shrink: 0;
  }
}
@media screen and (max-width: 767px) {
  .threemin__imgRight__thumb {
    margin-left: -15px;
    margin-right: -15px;
    text-align: center;
  }
}

.threemin__3step__flex {
  display: flex;
  gap: 15px 36px;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px), print {
  .threemin__3step__flex.row-gap-35 {
    row-gap: 35px;
  }
}
@media screen and (max-width: 767px) {
  .threemin__3step__flex {
    flex-direction: column;
    row-gap: 25px;
  }
}
@media screen and (min-width: 768px), print {
  .threemin__3step__col {
    width: calc( (100% - 36px) / 2 );
  }
  .threemin__3step__col .btn-a {
    max-width: none;
  }
}
@media screen and (max-width: 767px) {
  .threemin__3step__col.wide {
    margin-left: -15px;
    margin-right: -15px;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .threemin__3step__yakugaku {
    order: 1;
  }
}
@media screen and (max-width: 767px) {
  .threemin__3step__soyaku {
    order: 2;
  }
}

.threemin__gokaku__title {
  background-color: #009FE8;
  padding: 10px;
  color: #fff;
}
@media screen and (min-width: 768px), print {
  .threemin__gokaku__title {
    font-size: 2.1rem;
  }
}
@media screen and (max-width: 767px) {
  .threemin__gokaku__title {
    margin-left: -15px;
    margin-right: -15px;
  }
}
.threemin__gokaku__flex {
  display: flex;
  gap: 36px;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .threemin__gokaku__flex {
    flex-direction: column;
    row-gap: 15px;
  }
}
@media screen and (min-width: 768px), print {
  .threemin__gokaku__col {
    width: calc( (100% - 36px) / 2 );
  }
  .threemin__gokaku__col .btn-a {
    max-width: none;
  }
}

.threemin__shushoku__wrapper {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media screen and (max-width: 767px) {
  .threemin__shushoku__wrapper {
    flex-direction: column-reverse;
  }
}
.threemin__shushoku__flex {
  display: flex;
  /*gap: 65px;
  flex-wrap: wrap;*/
}
@media screen and (max-width: 767px) {
  .threemin__shushoku__flex {
    flex-direction: column;
    gap: 45px;
  }
}
.threemin__shushoku__col {
  text-align: center;
}
@media screen and (min-width: 768px), print {
  /*.threemin__shushoku__col {
    width: calc( (100% - 65px) / 2 );
  }*/
}

.threemin__mirai__title {
  text-align: center;
  padding: 1px;
  position: relative;
  z-index: 1;
}
.threemin__mirai__title:before {
  content: '';
  position: absolute;
  border: 1px solid;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}
.threemin__mirai__title:after {
  content: '';
  width: 24px;
  height: 24px;
  border-style: solid;
  border-width: 0 1px 1px 0;
  position: absolute;
  background-color: #ffffff;
  transform: translate(-50%, 50%) rotate(45deg) skew(15deg, 15deg);
  z-index: -1;
  left: 50%;
  bottom: 4px;
}
.threemin__mirai__title span {
  display: block;
  background-color: #fff;
  position: relative;
  padding: 10px;
}
.threemin__mirai__title.oc__hukidashi:before,
.threemin__mirai__title.oc__hukidashi:after {
    border: 1px solid #FFE600;
}

.oc__hukidashi__chousei_2 {
	padding: 0 0 0 25px;
}
@media screen and (max-width: 767px) {
	.oc__hukidashi__chousei_2 {
		padding: 0 0 0 0;
	}
}

@media screen and (min-width: 768px), print {
  .threemin__mirai__title {
    font-size: 1.9rem;
  }
}
.threemin__mirai__flex {
  display: flex;
  flex-wrap: wrap;
  gap: 45px 35px;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .threemin__mirai__flex {
    gap: 30px 20px;
  }
}
.threemin__mirai__col {
  width: calc( (100% - 105px) / 4 );
  display: flex;
  flex-direction: column;
  row-gap: 10px;
}
.threemin__mirai__col.wide {
  width: calc( (100% - 35px) / 2 );
}
.threemin__mirai__col.wide img {
  max-width: 50%;
}
@media screen and (max-width: 767px) {
  .threemin__mirai__col {
    width: calc( (100% - 20px) / 2 );
  }
  .threemin__mirai__col.wide {
    width: 100%;
  }
}
.threemin__mirai__img {
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.threemin__mirai__job {
  padding: 5px;
  background-color: #FFE700;
}
@media screen and (max-width: 767px) {
  .threemin__mirai__job {
    font-size: 1.3rem;
  }
}

/*
---
---------------------------------------------------------------------------*/
.campustour__copy__title {
  line-height: 1.2;
}

@media screen and (max-width: 767px) {
  .campustour__movie {
    margin-left: -15px;
    margin-right: -15px;
  }
}
.campustour__movie__tag {
  display: flex;
}
.campustour__movie__tag span {
  display: block;
  background-color: #FFE700;
  font-weight: bold;
  font-size: 1.8rem;
  border-top-right-radius: 20px;
  padding: 8px 25px;
}
@media screen and (max-width: 767px) {
  .campustour__movie__tag span {
    font-size: 1.5rem;
    border-top-right-radius: 15px;
  }
}
.campustour__movie__frame iframe {
  aspect-ratio: 16/9;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.campustour__facility__map {
  position: relative;
}
@media screen and (max-width: 767px) {
  .campustour__facility__map {
    margin-left: -15px;
    margin-right: -15px;
  }
}
.campustour__facility__anchor {
  position: absolute;
}
.campustour__facility__anchor:hover {
  background-color: rgba(255, 255, 255, 0.5);
}
@media screen and (max-width: 767px) {
  .campustour__facility__row {
    margin-left: -15px;
    margin-right: -15px;
  }
  .campustour__facility__row p {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.campustour__facility__title {
  background-color: #FFE700;
  padding: 5px 25px;
}
.campustour__facility__flex {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 25px;
}
.campustour__facility__flex.mini {
  grid-gap: 20px 15px;
}
@media screen and (max-width: 767px) {
  .campustour__facility__flex {
    grid-template-columns: 1fr;
    grid-row-gap: 15px;
  }
  .campustour__facility__flex.mini {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 10px;
  }
}
@media screen and (max-width: 767px) {
  .campustour__facility__caption {
    padding-left: 15px;
  }
}

/*
---
---------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .oc__editor__img {
    margin-left: -15px;
    margin-right: -15px;
  }
}
.oc__editor p {
  margin-top: 40px;
}

.oc__gallery {
  margin-left: -15px;
  margin-right: -15px;
}

/*
---
---------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .shingakusodan__movie__iframe {
    margin-left: -15px;
    margin-right: -15px;
  }
}
@media screen and (max-width: 767px) {
  .shingakusodan__movie__title {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.shingakusodan__gaiyo {
  display: flex;
  gap: 35px;
}
@media screen and (min-width: 768px), print {
  .shingakusodan__gaiyo {
    flex-direction: row-reverse;
  }
}
@media screen and (max-width: 767px) {
  .shingakusodan__gaiyo {
    flex-direction: column;
  }
}
@media screen and (min-width: 768px), print {
  .shingakusodan__gaiyo__col {
    width: calc( (100% - 35px) / 2 );
  }
}
@media screen and (max-width: 767px) {
  .shingakusodan__gaiyo__img {
    margin-left: -15px;
    margin-right: -15px;
    text-align: center;
  }
}

.shingakusodan__sodankaitable table {
  font-size: 1.3rem;
  table-layout: fixed;
}
@media screen and (min-width: 768px), print {
  .shingakusodan__sodankaitable table {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .shingakusodan__sodankaitable table {
    width: 860px;
  }
}
@media screen and (max-width: 767px) {
  .shingakusodan__sodankaitable tr > :first-child {
    position: sticky;
    left: 0;
    border-right-width: 0;
  }
  .shingakusodan__sodankaitable tr > :first-child:after {
    content: '';
    position: absolute;
    height: 100%;
    border-right: 1px solid #d7d7d7;
    top: 0;
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  .shingakusodan__sodankaitable tr > :nth-child(2) {
    border-left-width: 0;
  }
}
.shingakusodan__sodankaitable th, .shingakusodan__sodankaitable td {
  vertical-align: middle;
}
.shingakusodan__sodankaitable th {
  background-color: #FFFCC1;
  text-align: center;
}
.shingakusodan__sodankaitable th:nth-of-type(2), .shingakusodan__sodankaitable th:nth-of-type(3) {
  width: 80px;
}
.shingakusodan__sodankaitable th:nth-last-of-type(1) {
  width: 190px;
}
.shingakusodan__sodankaitable td {
  background-color: #fff;
}
.shingakusodan__sodankaitable a {
  display: inline-block;
  position: relative;
  padding-left: 12px;
}
.shingakusodan__sodankaitable a:before {
  content: '';
  position: absolute;
  left: 0;
  top: 3px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 10px;
  border-color: transparent transparent transparent #FFE700;
}

/*
---
---------------------------------------------------------------------------*/
.miryoku__h2 {
  text-align: center;
  font-size: 2rem;
  position: relative;
  z-index: 1;
  padding: 0;
  box-shadow: none;
}
.miryoku__h2:before {
  content: none;
}
.miryoku__h2:after {
  content: '\02605';
  font-size: 10.5rem;
  color: #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -58%);
  z-index: -1;
  -webkit-text-stroke: 1px #E7B000;
}
@media screen and (max-width: 767px) {
  .miryoku__h2 {
    font-size: 1.7rem;
  }
  .miryoku__h2:after {
    font-size: 9rem;
  }
}

.miryoku__copy {
  position: relative;
  padding-top: 40px;
}
.miryoku__copy__en {
  margin: 0 auto;
  position: absolute;
  text-align: center;
  width: 170px;
  aspect-ratio: 1;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
}
.miryoku__copy__en span {
  position: absolute;
  height: 100%;
  width: 20px;
  transform-origin: center bottom;
  left: 50%;
  top: 0;
  line-height: 0;
}
.miryoku__copy__main {
  font-size: 2.9rem;
  text-align: center;
  font-weight: bold;
  position: relative;
}
.miryoku__copy__main:before {
  content: '\02605\02605\02605';
  text-align: center;
  display: block;
  margin-bottom: 10px;
  color: #FFE700;
  font-size: 2rem;
}
@media screen and (max-width: 767px) {
  .miryoku__copy__main {
    font-size: 2.4rem;
  }
  .miryoku__copy__main:before {
    font-size: 1.8rem;
  }
}

.miryoku__qa {
  /* &__himg */
}
.miryoku__qa__q {
  padding: 0 15px 5px;
  border-bottom: 1px solid #a5a3a3;
  position: relative;
  z-index: 1;
}
.miryoku__qa__q:before {
  content: '';
  width: 20px;
  height: 20px;
  position: absolute;
  border-style: solid;
  border-width: 0 0 1px 1px;
  border-color: #a5a3a3;
  left: 25px;
  bottom: 2px;
  z-index: -1;
  transform: translateY(100%) skewY(-45deg);
  transform-origin: left top;
  background-color: #fff;
}
.miryoku__qa__q:after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #fff;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .miryoku__qa__q {
    padding-left: 0;
    padding-right: 0;
  }
}
.miryoku__qa__h3 {
  font-size: 2.3rem;
  display: flex;
}
.miryoku__qa__h3:before {
  content: 'Q';
  width: 48px;
  height: 48px;
  background-color: #FFE700;
  font-size: 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  margin-right: 15px;
  flex-shrink: 0;
}
@media screen and (min-width: 768px), print {
  .miryoku__qa__h3 {
    padding: 10px 0 0 0;
  }
  .miryoku__qa__h3:before {
    transform: translateY(-10px);
  }
}
@media screen and (max-width: 767px) {
  .miryoku__qa__h3 {
    font-size: 1.7rem;
    align-items: center;
    padding-bottom: 10px;
  }
  .miryoku__qa__h3:before {
    align-self: flex-start;
  }
}
@media screen and (min-width: 768px), print {
  .miryoku__qa__3col {
    overflow: hidden;
  }
}
.miryoku__qa__a {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px), print {
  .miryoku__qa__a:before {
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: -60px;
    left: 0;
    right: 0;
    background-color: #FFE700;
  }
}
@media screen and (max-width: 767px) {
  .miryoku__qa__a {
    margin-left: -15px;
    margin-right: -15px;
    display: flex;
    justify-content: space-between;
    overflow: hidden;
    align-items: flex-end;
  }
  .miryoku__qa__a.limg {
    flex-direction: row;
  }
  .miryoku__qa__a.rimg {
    flex-direction: row-reverse;
  }
}
@media screen and (max-width: 767px) {
  .miryoku__qa__aimg {
    flex-shrink: 0;
  }
}
.miryoku__qa__ainner {
  padding: 20px 25px;
  font-size: 1.9rem;
  font-weight: bold;
  position: relative;
  display: flex;
  align-items: center;
  letter-spacing: -1px;
  justify-content: center;
}
@media screen and (min-width: 768px), print {
  .miryoku__qa__ainner {
    min-height: 135px;
  }
  .miryoku__qa__ainner:before, .miryoku__qa__ainner:after {
    content: '';
    position: absolute;
    top: 100%;
    z-index: -1;
    background-color: #fff;
    height: 100%;
    width: 100%;
  }
  .miryoku__qa__ainner:before {
    left: 50%;
    transform-origin: left top;
    transform: translateY(60px) rotate(-25deg);
  }
  .miryoku__qa__ainner:after {
    right: 50%;
    transform-origin: right top;
    transform: translateY(60px) rotate(25deg);
  }
}
@media screen and (max-width: 767px) {
  .miryoku__qa__ainner {
    padding: 20px 10px;
    font-size: 1.6rem;
    font-weight: bold;
    position: relative;
    border-bottom: 10px solid transparent;
    flex-grow: 1;
  }
  .miryoku__qa__ainner:before {
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    width: calc(100vw - 50px);
    background-image: url("../images/miryoku-a-bg.png");
    background-size: 900px 100%;
    background-repeat: no-repeat;
  }
  .limg .miryoku__qa__ainner:before {
    background-position: 20px 0;
    right: 0;
  }
  .rimg .miryoku__qa__ainner:before {
    background-position: right 20px bottom 0px;
    left: 0;
  }
}
.miryoku__qa__img {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.miryoku__qa__text {
  padding-top: 15px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .miryoku__qa__text + .miryoku__qa__a {
    margin-top: 20px;
  }
}
.miryoku__qa__himg {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  overflow: hidden;
}
.miryoku__qa__himg.limg {
  flex-direction: row;
}
.miryoku__qa__himg.rimg {
  flex-direction: row-reverse;
}
@media screen and (min-width: 768px), print {
  .miryoku__qa__himg:before {
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    background-image: url("../images/miryoku-a-bg.png");
    background-size: 900px 100%;
    background-repeat: no-repeat;
  }
  .miryoku__qa__himg.limg:before {
    left: 60px;
    right: 0;
    background-position: left 0px bottom 10px;
  }
  .miryoku__qa__himg.rimg:before {
    left: 0px;
    right: 60px;
    background-position: right 0px bottom 10px;
  }
}
@media screen and (max-width: 767px) {
  .miryoku__qa__himg {
    margin-left: -15px;
    margin-right: -15px;
    align-items: flex-end;
  }
}
@media screen and (max-width: 767px) {
  .miryoku__qa__himg__img {
    flex-shrink: 0;
  }
}
.miryoku__qa__himg__a {
  padding: 25px 20px;
  font-size: 1.9rem;
  font-weight: bold;
  position: relative;
  border-bottom: 10px solid transparent;
  letter-spacing: -1px;
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px), print {
  .miryoku__qa__himg__a {
    flex-shrink: 0;
    width: 210px;
  }
  .miryoku__qa__himg__a:before, .miryoku__qa__himg__a:after {
    content: '';
    position: absolute;
    background-color: #fff;
    width: 100vw;
    height: 100vh;
    z-index: -1;
  }
  .miryoku__qa__himg__a:before {
    top: 0;
    transform: translateY(-100%);
  }
  .miryoku__qa__himg__a:after {
    bottom: 0;
    transform: translateY(100%);
  }
  .limg .miryoku__qa__himg__a:before, .limg .miryoku__qa__himg__a:after {
    right: 0;
  }
  .rimg .miryoku__qa__himg__a:before, .rimg .miryoku__qa__himg__a:after {
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  .miryoku__qa__himg__a {
    padding: 20px 10px;
    flex-grow: 1;
    font-size: 1.6rem;
  }
  .miryoku__qa__himg__a:before {
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    width: calc(100vw - 50px);
    background-image: url("../images/miryoku-a-bg.png");
    background-size: 900px 100%;
    background-repeat: no-repeat;
  }
  .limg .miryoku__qa__himg__a:before {
    background-position: 20px 0;
    right: 0;
  }
  .rimg .miryoku__qa__himg__a:before {
    background-position: right 20px bottom 0px;
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  .miryoku__qa__text + .miryoku__qa__himg {
    margin-top: 20px;
  }
}

/*
---
---------------------------------------------------------------------------*/
.tokushoku__copy {
  text-align: center;
}
.tokushoku__copy h2 {
  font-size: 2.8rem;
  box-shadow: none;
  line-height: 1.75;
  margin-bottom: 0;
  padding: 0;
}
.tokushoku__copy h2:before {
  content: none;
}
@media screen and (max-width: 767px) {
  .tokushoku__copy h2 {
    font-size: 2.4rem;
  }
}
.tokushoku__copy h2 strong {
  display: inline-block;
  position: relative;
}
.tokushoku__copy h2 strong:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 4px;
  left: 0;
  bottom: 4px;
}
.tokushoku__copy h2 strong:nth-of-type(1):before {
  background-color: #00AFEC;
}
.tokushoku__copy h2 strong:nth-of-type(2):before {
  background-color: #39B54A;
}
.tokushoku__copy h2 + p {
  margin-top: 20px !important;
}
.tokushoku__copy p {
  margin-top: 35px;
}
.tokushoku__copy__kosei {
  display: flex;
  justify-content: center;
}
.tokushoku__copy__img {
  width: 394px;
  max-width: 100%;
  position: relative;
}
.tokushoku__copy__img a {
  position: absolute;
  height: calc( 220 / 350 * 100% );
  width: calc( 186 / 392 * 100% );
  bottom: 0;
  overflow: hidden;
}
.tokushoku__copy__img a img {
  position: absolute;
  bottom: 0;
  opacity: 0;
  transition: all .5s;
  max-width: none;
}
.tokushoku__copy__img a:hover img {
  opacity: 1;
}
.tokushoku__copy__img a:nth-of-type(1) {
  left: 0;
}
.tokushoku__copy__img a:nth-of-type(1) img {
  left: 0;
}
.tokushoku__copy__img a:nth-of-type(2) {
  right: 0;
}
.tokushoku__copy__img a:nth-of-type(2) img {
  right: 0;
}

@media screen and (max-width: 767px) {
  .tokushoku__gaiyo {
    margin-left: -15px;
    margin-right: -15px;
  }
}
.tokushoku__gaiyo__col {
  padding: 20px 20px 30px;
  position: relative;
}
.tokushoku__gaiyo__col:before {
  content: '';
  position: absolute;
  border-style: solid;
  border-width: 20px 15px 0;
  border-color: transparent;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 100%);
}
@media screen and (max-width: 767px) {
  .tokushoku__gaiyo__col {
    padding: 10px 10px 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
	.v2023 .tokushoku__gaiyo__col {
		justify-content: flex-start;
	}
}
.tokushoku__gaiyo__col:nth-of-type(1) {
  background-color: #E4F9FF;
}
.tokushoku__gaiyo__col:nth-of-type(1):before {
  border-top-color: #E4F9FF;
}
.tokushoku__gaiyo__col:nth-of-type(2) {
  background-color: #DDF2E0;
}
.tokushoku__gaiyo__col:nth-of-type(2):before {
  border-top-color: #DDF2E0;
}
.tokushoku__gaiyo__title {
  font-weight: bold;
  text-align: center;
  padding: 12px 0;
  border-style: solid;
  border-width: 1px 0;
}
@media screen and (max-width: 767px) {
  .tokushoku__gaiyo__title {
    font-size: 1.4rem;
	  letter-spacing: -0.5px;
  }
	.v2023 .tokushoku__gaiyo__title {
		letter-spacing: 0px;
	}
}
.tokushoku__gaiyo__col:nth-of-type(1) .tokushoku__gaiyo__title {
  color: #00AFEC;
}
.tokushoku__gaiyo__col:nth-of-type(2) .tokushoku__gaiyo__title {
  color: #39B54A;
}
@media screen and (min-width: 768px), print {
  .tokushoku__gaiyo__text {
    display: flex;
    align-items: center;
  }
}
@media screen and (min-width: 768px), print {
  .tokushoku__gaiyo__text p {
    flex-grow: 1;
  }
}
@media screen and (max-width: 767px) {
  .tokushoku__gaiyo__text p {
    font-size: 1.4rem;
  }
}
.tokushoku__gaiyo__num {
  display: flex;
  align-items: flex-end;
  font-size: 1.8rem;
  justify-content: center;
  line-height: 1;
}
@media screen and (min-width: 768px), print {
  .tokushoku__gaiyo__num {
    width: 120px;
    flex-shrink: 0;
    margin-left: 20px;
  }
}
@media screen and (max-width: 767px) {
  .tokushoku__gaiyo__num {
    font-size: 1.4rem;
    margin-top: 20px;
  }
}
.tokushoku__gaiyo__col:nth-of-type(1) .tokushoku__gaiyo__num {
  color: #00AFEC;
}
.tokushoku__gaiyo__col:nth-of-type(2) .tokushoku__gaiyo__num {
  color: #39B54A;
}
.tokushoku__gaiyo .btn-a {
  justify-content: flex-start;
  padding-left: 15px;
  font-size: 1.4rem;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .tokushoku__gaiyo .btn-a {
    font-size: 1.2rem;
    padding-left: 10px;
  }
}
.tokushoku__gaiyo .btn-a + .btn-a {
  margin-top: 10px;
}
.tokushoku__gaiyo__col:nth-of-type(1) .btn-a {
  color: #00AFEC;
  border-color: #00AFEC;
}
.tokushoku__gaiyo__col:nth-of-type(1) .btn-a:after {
  border-left-color: #00AFEC;
}
.tokushoku__gaiyo__col:nth-of-type(2) .btn-a {
  color: #39B54A;
  border-color: #39B54A;
}
.tokushoku__gaiyo__col:nth-of-type(2) .btn-a:after {
  border-left-color: #39B54A;
}

.tokushoku__power {
  position: relative;
}
@media screen and (max-width: 767px) {
  .tokushoku__power {
    margin-left: -15px;
    margin-right: -15px;
  }
}
.tokushoku__power:before {
  content: '';
  position: absolute;
  border-style: solid;
  border-width: 25px 20px 0;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 100%);
  border-color: #FFFAC4 transparent transparent;
}
.tokushoku__power__title {
  background-color: #FFE700;
  padding: 10px;
}
.tokushoku__power__body {
  background-color: #FFFAC4;
  padding: 30px;
}
@media screen and (max-width: 767px) {
  .tokushoku__power__body {
    padding: 20px 0;
  }
}
.tokushoku__power__col {
  background-color: #fff;
  padding: 20px;
  position: relative;
}
.tokushoku__power__col:before {
  content: '+';
  font-family: "Noto Sans JP";
  position: absolute;
  color: #E7B000;
  font-weight: 500;
  font-size: 4rem;
  text-align: center;
}
@media screen and (min-width: 768px), print {
  .tokushoku__power__col:before {
    width: 55px;
    top: 50%;
    right: 0;
    transform: translate(100%, -50%);
  }
}
@media screen and (max-width: 767px) {
  .tokushoku__power__col:before {
    height: 30px;
    display: flex;
    align-items: center;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 100%);
    font-size: 3.6rem;
    line-height: 1;
  }
}
.tokushoku__power__col:nth-of-type(3n):before {
  content: none;
}
.tokushoku__power__subtitle {
  font-weight: bold;
  line-height: 1.5;
}
.tokushoku__power__subtitle span {
  background: linear-gradient(transparent 50%, #E7B000 50%);
  background-size: 100% 4px;
  background-position: left bottom;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  .tokushoku__power__subtitle {
    text-align: center;
  }
}
.tokushoku__power__col ul > li {
  padding-left: 14px;
}
.tokushoku__power__col ul > li:before {
  content: '';
  width: 10px;
  height: 10px;
  border-radius: 100%;
  background-image: none;
  background-color: #E7B000;
  top: 5px;
}
.tokushoku__power__col ul > li + li {
  margin-top: 3px;
}

.tokushoku__mirai__hanrei {
  display: flex;
  column-gap: 30px;
  justify-content: center;
}
.tokushoku__mirai__hanrei p {
  margin: 0;
}
@media screen and (max-width: 767px) {
  .tokushoku__mirai__hanrei p {
    font-size: 1.3rem;
  }
}
.tokushoku__mirai__col {
  display: flex;
  flex-direction: column;
}
.tokushoku__mirai__img {
  display: flex;
  justify-content: center;
  align-items: center;
}
.tokushoku__mirai__star {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 35px;
}
.tokushoku__mirai__star[data-yakugaku]:before {
  color: #00AFEC;
}
.tokushoku__mirai__star[data-yakugaku="small"]:before {
  content: '\02605';
}
.tokushoku__mirai__star[data-yakugaku="large"]:before {
  content: '\02605';
  font-size: 2.4rem;
}
.tokushoku__mirai__star[data-soyaku]:after {
  color: #39B54A;
}
.tokushoku__mirai__star[data-soyaku="small"]:after {
  content: '\02605';
}
.tokushoku__mirai__star[data-soyaku="large"]:after {
  content: '\02605';
  font-size: 2.4rem;
}
.tokushoku__mirai__remodal .tokushoku__mirai__star:before, .tokushoku__mirai__remodal .tokushoku__mirai__star:after {
  font-size: 1.7rem;
}
.tokushoku__mirai__remodal .tokushoku__mirai__star[data-yakugaku="large"]:before {
  font-size: 2.9rem;
}
.tokushoku__mirai__remodal .tokushoku__mirai__star[data-soyaku="large"]:after {
  font-size: 2.9rem;
}
.tokushoku__mirai__job {
  flex-grow: 1;
  border: 1px solid #d7d7d7;
  min-height: 125px;
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
}
.tokushoku__mirai__job:before {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  border-style: solid;
  border-width: 0 0 15px 15px;
  border-color: transparent transparent #FFE700 transparent;
}

.tokushoku__mirai__remodal {
  max-width: 560px;
  padding: 50px 50px 35px;
  border-radius: 0;
}
@media screen and (max-width: 767px) {
  .tokushoku__mirai__remodal {
    max-width: 250px;
    padding: 30px;
  }
}
.tokushoku__mirai__remodal__close {
  position: absolute;
  width: 26px;
  height: 26px;
  top: 15px;
  right: 15px;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  border: none;
}
.tokushoku__mirai__remodal__close:before, .tokushoku__mirai__remodal__close:after {
  content: '';
  position: absolute;
  width: 100%;
  border-top: 1px solid #a5a3a3;
  top: 50%;
  left: 0;
}
.tokushoku__mirai__remodal__close:before {
  transform: translate(0, -50%) rotate(45deg);
}
.tokushoku__mirai__remodal__close:after {
  transform: translate(0, -50%) rotate(-45deg);
}
@media screen and (max-width: 767px) {
  .tokushoku__mirai__remodal__close {
    top: 10px;
    right: 10px;
  }
}
.tokushoku__mirai__remodal__contents {
  display: flex;
  column-gap: 20px;
}
@media screen and (max-width: 767px) {
  .tokushoku__mirai__remodal__contents {
    flex-direction: column;
    align-items: center;
  }
}
.tokushoku__mirai__remodal__left {
  width: 145px;
  flex-shrink: 0;
}
.tokushoku__mirai__remodal__right {
  align-self: center;
}
@media screen and (max-width: 767px) {
  .tokushoku__mirai__remodal__right {
    padding-top: 20px;
    border-top: 1px solid #a5a3a3;
  }
}

.gakka .block + .block {
  margin-top: 105px;
}
@media screen and (max-width: 767px) {
  .gakka .block + .block {
    margin-top: 90px;
  }
}

.tokushoku__gakka__h2 {
  padding: 25px 15px;
  color: #fff;
  font-size: 3.2rem;
  box-shadow: none;
  text-align: center;
  margin-bottom: 75px;
  letter-spacing: 8px;
}
.tokushoku__gakka__h2:before {
  content: none;
}
.tokushoku__gakka__h2 span {
  font-size: 1.8rem;
  font-weight: 400;
  display: block;
  letter-spacing: 0px;
}
section.yakugaku .tokushoku__gakka__h2 {
  background-color: #00AFEC;
}
section.soyaku .tokushoku__gakka__h2 {
  background-color: #39B54A;
}
@media screen and (max-width: 767px) {
  .tokushoku__gakka__h2 {
    font-size: 2.7rem;
    margin-bottom: 45px;
  }
  .tokushoku__gakka__h2 span {
    font-size: 1.4rem;
  }
}

.tokushoku__gakka__h3 {
  font-size: 2.2rem;
  text-align: center;
  position: relative;
  z-index: 1;
  line-height: 1.8;
}
.tokushoku__gakka__h3:before {
  content: '\02605';
  color: #FFE700;
  font-size: 8.5rem;
  z-index: -1;
  top: 0;
  left: 50%;
  transform: translate(-50%, -45%);
  position: absolute;
}
section.yakugaku .tokushoku__gakka__h3 {
  color: #00AFEC;
}
section.soyaku .tokushoku__gakka__h3 {
  color: #39B54A;
}
@media screen and (max-width: 767px) {
  .tokushoku__gakka__h3 {
    font-size: 2rem;
  }
  .tokushoku__gakka__h3:before {
    font-size: 7rem;
    transform: translate(-50%, -42%);
  }
}

.tokushoku__gakka__step {
  max-width: 515px;
  margin-left: auto;
  margin-right: auto;
}
.tokushoku__gakka__step.wide {
  max-width: 585px;
}
.tokushoku__gakka__step.bg {
  background-color: #FFFAC4;
}
.tokushoku__gakka__step__copy {
  border-style: solid;
  border-width: 4px;
  padding: 15px;
  display: flex;
  justify-content: center;
  column-gap: 20px;
  flex-wrap: wrap;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .tokushoku__gakka__step__copy {
    margin-left: -15px;
    margin-right: -15px;
  }
}
section.yakugaku .tokushoku__gakka__step__copy {
  border-color: #00AFEC;
}
section.soyaku .tokushoku__gakka__step__copy {
  border-color: #39B54A;
}
section.yakugaku .tokushoku__gakka__step__copy__left {
  color: #00AFEC;
}
section.soyaku .tokushoku__gakka__step__copy__left {
  color: #39B54A;
}
.tokushoku__gakka__step__copy + .tokushoku__gakka__step__block {
  margin-top: 35px;
}
@media screen and (max-width: 767px) {
  .tokushoku__gakka__step__copy + .tokushoku__gakka__step__block {
    margin-top: 20px;
  }
}
.tokushoku__gakka__step__block {
  border-style: solid;
  border-width: 1px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .tokushoku__gakka__step__block {
    margin-left: -15px;
    margin-right: -15px;
    border-left-width: 0;
    border-right-width: 0;
  }
}
.tokushoku__gakka__step__block.bg {
  background-color: #FFFAC4;
}
.tokushoku__gakka__step__block + .tokushoku__gakka__step__block {
  margin-top: 18px;
}
.tokushoku__gakka__step__block + .tokushoku__gakka__step__block:before {
  content: '';
  position: absolute;
  left: 50%;
  top: 0;
  border-style: solid;
  border-width: 12px 9px 0;
  border-color: transparent;
  transform: translate(-50%, -19px);
}
section.yakugaku .tokushoku__gakka__step__block {
  border-color: #00AFEC;
}
section.yakugaku .tokushoku__gakka__step__block:before {
  border-top-color: #00AFEC;
}
section.soyaku .tokushoku__gakka__step__block {
  border-color: #39B54A;
}
section.soyaku .tokushoku__gakka__step__block:before {
  border-top-color: #39B54A;
}
.tokushoku__gakka__step__title {
  padding: 7px 20px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  font-size: 1.8rem;
}
section.yakugaku .tokushoku__gakka__step__title {
  background-color: #00AFEC;
}
section.soyaku .tokushoku__gakka__step__title {
  background-color: #39B54A;
}
.tokushoku__gakka__step__subtitle {
  padding: 10px 20px;
}
section.yakugaku .tokushoku__gakka__step__subtitle {
  color: #00AFEC;
}
section.soyaku .tokushoku__gakka__step__subtitle {
  color: #39B54A;
}
.tokushoku__gakka__step__row {
  position: relative;
  padding: 10px 0;
  display: flex;
}
.tokushoku__gakka__step__row:before {
  content: '';
  position: absolute;
  top: 0;
  left: 4px;
  right: 4px;
  border-style: solid;
  border-width: 1px 0 0;
}
section.yakugaku .tokushoku__gakka__step__row:before {
  border-top-color: #00AFEC;
}
section.soyaku .tokushoku__gakka__step__row:before {
  border-top-color: #39B54A;
}
.tokushoku__gakka__step__title + .tokushoku__gakka__step__row:before {
  content: none;
}
.tokushoku__gakka__step__nen {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 2rem;
  width: 100px;
  flex-shrink: 0;
  position: relative;
}
.tokushoku__gakka__step__nen span {
  font-size: 1.2rem;
}
.tokushoku__gakka__step__nen:before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  border-style: solid;
  border-width: 0 1px 0 0;
}
section.yakugaku .tokushoku__gakka__step__nen:before {
  border-right-color: #00AFEC;
}
section.soyaku .tokushoku__gakka__step__nen:before {
  border-right-color: #39B54A;
}
@media screen and (min-width: 768px), print {
  .tokushoku__gakka__step__nen.wide {
    width: 140px;
    flex-direction: row;
  }
  .tokushoku__gakka__step__nen.wide span {
    transform: translateY(2px);
  }
}
.tokushoku__gakka__step__text {
  padding: 15px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.tokushoku__gakka__step__text p {
  line-height: 1.3;
}
.tokushoku__gakka__step__jisshu {
  font-size: 1.8rem;
  font-weight: bold;
}
section.yakugaku .tokushoku__gakka__step__jisshu {
  color: #00AFEC;
}
section.soyaku .tokushoku__gakka__step__jisshu {
  color: #39B54A;
}
.tokushoku__gakka__step__leftimg {
  display: flex;
  column-gap: 25px;
  padding: 0 15px 15px;
}
@media screen and (max-width: 767px) {
  .tokushoku__gakka__step__leftimg {
    flex-direction: column;
    row-gap: 15px;
  }
}
@media screen and (min-width: 768px), print {
  .tokushoku__gakka__step__leftimg__left {
    width: 225px;
    max-width: 42%;
  }
}
@media screen and (max-width: 767px) {
  .tokushoku__gakka__step__leftimg__left {
    margin-left: -15px;
    margin-right: -15px;
    text-align: center;
  }
}
.tokushoku__gakka__step__leftimg__right {
  align-self: center;
  flex: 1;
}
.tokushoku__gakka__step__leftimg__right p {
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .tokushoku__gakka__step__leftimg__right p {
    text-align: center;
  }
}
section.yakugaku .tokushoku__gakka__step__leftimg__right p {
  color: #00AFEC;
}
section.soyaku .tokushoku__gakka__step__leftimg__right p {
  color: #39B54A;
}

section.yakugaku .btn-a:after {
  border-left-color: #00AFEC;
}

section.soyaku .btn-a:after {
  border-left-color: #39B54A;
}

.tokushoku__rinsho__jizen {
  display: flex;
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .tokushoku__rinsho__jizen {
    flex-direction: column;
  }
}
.tokushoku__rinsho__jizen__left {
  flex: 1;
}
.tokushoku__rinsho__jizen__title {
  padding: 7px 15px;
  color: #fff;
}
section.yakugaku .tokushoku__rinsho__jizen__title {
  background-color: #00AFEC;
}
section.soyaku .tokushoku__rinsho__jizen__title {
  background-color: #39B54A;
}
@media screen and (min-width: 768px), print {
  .tokushoku__rinsho__jizen__right {
    width: 350px;
    max-width: 45%;
  }
}
@media screen and (max-width: 767px) {
  .tokushoku__rinsho__jizen__right {
    margin-left: -15px;
    margin-right: -15px;
    text-align: center;
  }
}

.tokushoku__eximage {
  display: flex;
  gap: 25px 60px;
}
@media screen and (min-width: 768px), print {
  .tokushoku__eximage {
    padding: 0 0 0 5px;
  }
}
@media screen and (max-width: 767px) {
  .tokushoku__eximage {
    flex-direction: column;
    margin-left: -15px;
    margin-right: -15px;
  }
}
.tokushoku__eximage__img {
  display: flex;
}
@media screen and (max-width: 767px) {
  .tokushoku__eximage__img {
    gap: 10px;
    justify-content: center;
  }
}
@media screen and (min-width: 768px), print {
  .tokushoku__eximage__col:first-child {
    transform: translateX(-5px);
  }
  .tokushoku__eximage__col:last-child {
    transform: translateX(5px);
  }
  .tokushoku__eximage__col:only-child {
    transform: translateX(0px);
  }
}
@media screen and (max-width: 767px) {
  .tokushoku__eximage__col {
    width: calc((100% - 10px) / 2);
  }
}
@media screen and (max-width: 767px) {
  .tokushoku__eximage__title {
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media screen and (max-width: 767px) {
  .tokushoku__sentaku__copy {
    margin-left: -15px;
    margin-right: -15px;
  }
}
.tokushoku__sentaku__copy__top {
  padding: 20px;
  position: relative;
}
.tokushoku__sentaku__copy__top:after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  border-style: solid;
  border-width: 25px 20px 0;
  border-color: transparent;
  transform: translate(-50%, 100%);
}
@media screen and (max-width: 767px) {
  .tokushoku__sentaku__copy__top {
    padding: 15px 10px;
  }
  .tokushoku__sentaku__copy__top:after {
    border-width: 20px 15px 0;
  }
}
.tokushoku__sentaku__copy__col:nth-of-type(1) .tokushoku__sentaku__copy__top {
  background-color: #CDE5F3;
}
.tokushoku__sentaku__copy__col:nth-of-type(1) .tokushoku__sentaku__copy__top:after {
  border-top-color: #CDE5F3;
}
.tokushoku__sentaku__copy__col:nth-of-type(2) .tokushoku__sentaku__copy__top {
  background-color: #E0F5F7;
}
.tokushoku__sentaku__copy__col:nth-of-type(2) .tokushoku__sentaku__copy__top:after {
  border-top-color: #E0F5F7;
}
.tokushoku__sentaku__copy__box {
  border: 1px solid #00AFEC;
  color: #00AFEC;
  padding: 10px 15px;
  background-color: #fff;
  font-weight: bold;
  font-size: 1.7rem;
}
@media screen and (max-width: 767px) {
  .tokushoku__sentaku__copy__box {
    font-size: 1.3rem;
  }
}
.tokushoku__sentaku__copy__box + .tokushoku__sentaku__copy__box {
  margin-top: 10px;
}
.tokushoku__sentaku__copy__bottom {
  font-weight: bold;
  text-align: center;
  color: #fff;
  padding: 5px 15px;
  margin-top: 25px;
}
.tokushoku__sentaku__copy__col:nth-of-type(1) .tokushoku__sentaku__copy__bottom {
  background-color: #007CC2;
}
.tokushoku__sentaku__copy__col:nth-of-type(2) .tokushoku__sentaku__copy__bottom {
  background-color: #00ADBE;
}

@media screen and (max-width: 767px) {
  .tokushoku__sentaku__course {
    margin-left: -15px;
    margin-right: -15px;
  }
}

.tokushoku__sentaku__course__main:nth-of-type(1) {
  background-color: #CDE5F3;
}
.tokushoku__sentaku__course__main:nth-of-type(3) {
  background-color: #E0F5F7;
}
@media screen and (min-width: 768px), print {
  .tokushoku__sentaku__course__main {
    order: 1;
  }
}
@media screen and (max-width: 767px) {
  .tokushoku__sentaku__course__main:nth-of-type(3) {
    margin-top: 25px;
  }
}
.tokushoku__sentaku__course__main__title {
  font-weight: bold;
  text-align: center;
  color: #fff;
  padding: 10px 15px;
  font-size: 2.1rem;
}
@media screen and (max-width: 767px) {
  .tokushoku__sentaku__course__main__title {
    font-size: 1.7rem;
  }
}
.tokushoku__sentaku__course__main:nth-of-type(1) .tokushoku__sentaku__course__main__title {
  background-color: #007CC2;
}
.tokushoku__sentaku__course__main:nth-of-type(3) .tokushoku__sentaku__course__main__title {
  background-color: #00ADBE;
}
.tokushoku__sentaku__course__main__img img {
  aspect-ratio: 410 / 215;
  object-fit: cover;
}
.tokushoku__sentaku__course__main__text {
  padding: 20px 15px;
}
.tokushoku__sentaku__course__main__subtitle {
  font-weight: bold;
  font-size: 1.9rem;
}
@media screen and (max-width: 767px) {
  .tokushoku__sentaku__course__main__subtitle {
    font-size: 1.7rem;
  }
}
.tokushoku__sentaku__course__main:nth-of-type(1) .tokushoku__sentaku__course__main__subtitle {
  color: #007CC2;
}
.tokushoku__sentaku__course__main:nth-of-type(3) .tokushoku__sentaku__course__main__subtitle {
  color: #00ADBE;
}

.tokushoku__sentaku__course__sub {
  background-color: #FFFAC4;
  padding: 20px;
}
@media screen and (min-width: 768px), print {
  .tokushoku__sentaku__course__sub {
    order: 2;
  }
}
.tokushoku__sentaku__course__sub__header {
  display: flex;
  background-image: radial-gradient(#00AFEC 20%, transparent 20%);
  background-size: 12px 12px;
  background-repeat: repeat-x;
  background-position: 0 bottom;
  padding-bottom: 15px;
}
.tokushoku__sentaku__course__sub__header img {
  width: 60px;
  margin-right: 20px;
}
@media screen and (max-width: 767px) {
  .tokushoku__sentaku__course__sub__header img {
    width: 45px;
    margin-right: 10px;
  }
}
.tokushoku__sentaku__course__sub__title {
  color: #00AFEC;
  font-size: 2.2rem;
  font-weight: bold;
  align-self: center;
  flex: 1;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .tokushoku__sentaku__course__sub__title {
    font-size: 1.7rem;
  }
}
.tokushoku__sentaku__course__sub__title span {
  font-size: 1.6rem;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .tokushoku__sentaku__course__sub__title span {
    font-size: 1.2rem;
  }
}
.tokushoku__sentaku__course__sub__box {
  background-color: #EAF6FD;
  padding: 20px;
}
@media screen and (max-width: 767px) {
  .tokushoku__sentaku__course__sub__box {
    background-color: #fff;
    border: 1px solid #00AFEC;
    color: #00AFEC;
    padding: 10px;
  }
}
.tokushoku__sentaku__course__sub__box + .tokushoku__sentaku__course__sub__box {
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .tokushoku__jitsuken__box {
    margin-left: -15px;
    margin-right: -15px;
  }
}
.tokushoku__jitsuken__boxtitle {
  color: #fff;
  background-color: #39B54A;
  padding: 10px;
}

.tokushoku__jitsuken__boxtitle.tag {
	align-items: center;
	display: flex;
	justify-content: center;
}

.tokushoku__jitsuken__boxtitle.tag span {
	display: block;
	background-color: #fff;
	color: #39B54A;
	font-size: 13px;
	line-height: 1;
	padding: 5px 10px;
}

@media (max-width: 767px) {
	.tokushoku__jitsuken__boxtitle.tag {
		flex-direction: column;
		align-items: flex-start;
		row-gap: 5px;
	}
}

.tokushoku__jitsuken__text {
  padding: 30px;
  background-color: #FFFAC4;
}
@media screen and (max-width: 767px) {
  .tokushoku__jitsuken__text {
    padding: 20px 10px;
  }
}
.tokushoku__jitsuken__text strong {
  background: linear-gradient(transparent 50%, #39B54A 50%);
  background-size: 100% 4px;
  background-position: left bottom;
  background-repeat: no-repeat;
}

.tokushoku__soyakumanabi {
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .tokushoku__soyakumanabi__grid {
    margin-left: -15px;
    margin-right: -15px;
  }
}

.tokushoku__saisentan__leftimg {
  display: flex;
  gap: 30px;
	margin-top: 50px;
}
@media screen and (min-width: 768px), print {
  .tokushoku__saisentan__leftimg {
    flex-direction: row-reverse;
  }
}
@media screen and (max-width: 767px) {
  .tokushoku__saisentan__leftimg {
    flex-direction: column;
	  margin-top: 15px;
  }
	body.old .tokushoku__saisentan__leftimg {
		margin-top: 50px;
	}
}
.tokushoku__saisentan__leftimg__left {
  flex-shrink: 0;
}
@media screen and (min-width: 768px), print {
  .tokushoku__saisentan__leftimg__left {
    width: 405px;
    max-width: 48%;
  }
}
@media screen and (max-width: 767px) {
  .tokushoku__saisentan__leftimg__left {
    margin-left: -15px;
    margin-right: -15px;
    text-align: center;
  }
}

.tokushoku__saisentan__jusho__title {
  font-size: 1.8rem;
  color: #39B54A;
}
@media screen and (max-width: 767px) {
  .tokushoku__saisentan__jusho__title {
    font-size: 1.5rem;
  }
}

.tokushoku__saisentan__jusho__grid.r1 {
	display: block;
}

.tokushoku__saisentan__jusho__grid li + li {
  margin-top: 0;
}

.tokushoku__btngroup {
  display: flex;
  flex-wrap: wrap;
  column-gap: 35px;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .tokushoku__btngroup {
    flex-direction: column;
    row-gap: 15px;
  }
}
@media screen and (min-width: 768px), print {
  .tokushoku__btngroup__col {
    width: calc( (100% - 35px) / 2 );
  }
}

.tokushoku__jitsuken__voice {
	display: flex;
	column-gap: 40px;
}
@media (max-width: 767px) {
	.tokushoku__jitsuken__voice {
		flex-direction: column;
		row-gap: 20px;
	}
}

.tokushoku__jitsuken__voice__h {
	flex-shrink: 0;
}

@media (max-width: 767px) {
	.tokushoku__smpAlignLeft {
		text-align: left;
	}
	body.old .tokushoku__smpAlignLeft {
		text-align: center;
	}
}

/*
---
---------------------------------------------------------------------------*/
.oldpage h2 {
  border-left: solid 5px #01861d;
  font-size: 1.6rem;
  line-height: 20px;
  box-shadow: none;
  font-weight: normal;
  padding: 3px 0 3px 10px;
  margin-bottom: 10px;
  margin-top: 50px;
}
.oldpage h2:before {
  content: none;
}
.oldpage h3 {
  font-size: 1.6rem;
  line-height: 20px;
  padding: 3px 0 3px 10px;
  font-weight: normal;
}
.oldpage p {
  font-size: 1.3rem;
  line-height: 20px;
}

.webopencampus__button {
  border-radius: 4px;
  display: block;
  max-width: 368px;
  padding: 10px 5px;
  text-align: center;
  background-color: #f1b314;
  border: solid 1px #E89000;
  color: #fff;
  font-size: 1.6rem;
  margin-left: auto;
  margin-right: auto;
}
.webopencampus__button:hover {
  opacity: .5;
}
.webopencampus__button + .webopencampus__button {
  margin-top: 20px;
}

.webopencampus__program {
  display: flex;
  gap: 20px;
  justify-content: center;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px), print {
  .webopencampus__program {
    padding: 0 10px;
  }
}
@media screen and (max-width: 767px) {
  .webopencampus__program {
    gap: 2px;
  }
}
.webopencampus__program a {
  display: block;
  width: calc((100% - 20px) / 2);
}
.webopencampus__program a:hover {
  opacity: .5;
}
@media screen and (max-width: 767px) {
  .webopencampus__program a {
    width: calc((100% - 2px) / 2);
  }
}

.webopencampus__youtube {
  display: flex;
  gap: 30px 10px;
  flex-wrap: wrap;
  padding: 0 10px;
}
@media screen and (max-width: 767px) {
  .webopencampus__youtube {
    flex-direction: column;
    align-items: self-start;
  }
  .webopencampus__youtube.smp-gapy-10 {
    row-gap: 10px;
  }
}
.webopencampus__youtube.center {
  justify-content: center;
}
@media screen and (min-width: 768px), print {
  .webopencampus__youtube__col {
    width: calc((100% - 10px) / 2);
  }
}
@media screen and (max-width: 767px) {
  .webopencampus__youtube__col {
    width: 100%;
  }
}
.webopencampus__youtube__col.text {
  align-self: center;
}
@media screen and (min-width: 768px), print {
  .webopencampus__youtube__col.text {
    padding-left: 10px;
  }
}
.webopencampus__youtube iframe {
  aspect-ratio: 16/9;
  width: 100%;
}

.webopencampus__pinkbtn {
  display: flex;
  gap: 30px;
  justify-content: center;
  flex-wrap: wrap;
  padding: 0 15px;
}
.webopencampus__pinkbtn a {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #FF9999;
  border: solid 1px #FF5757;
  color: #fff;
  border-radius: 4px;
  text-align: center;
  padding: 10px;
  font-size: 1.2rem;
  width: calc((100% - 30px) / 2);
}
.webopencampus__pinkbtn a:hover {
  opacity: .5;
}

.webopencampus__cmplifem__h3 {
  display: flex;
  justify-content: center;
}
.webopencampus__cmplifem__h3 span {
  display: block;
  background: linear-gradient(transparent 50%, #a8eaff 50%);
  padding: 0 15px;
}

.webopencampus__jugyo {
  max-width: 410px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  gap: 25px;
  justify-content: center;
  flex-wrap: wrap;
}
.webopencampus__jugyo a {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  border-radius: 4px;
  text-align: center;
  padding: 20px;
  font-size: 1.2rem;
  width: calc((100% - 25px) / 2);
}
.webopencampus__jugyo a:hover {
  opacity: .5;
}
.webopencampus__jugyo a:nth-of-type(1) {
  background-color: #5B9BD5;
  border: solid 1px #3078BA;
}
.webopencampus__jugyo a:nth-of-type(2) {
  background-color: #A9D18E;
  border: solid 1px #78B64E;
}

.webopencampus__obog__h3 {
  display: flex;
  padding: 0 10px;
}
.webopencampus__obog__h3 span {
  display: block;
  padding: 5px 9px;
  font-size: 1.5rem;
  color: #ffffff;
  font-weight: bold;
  border-radius: 5px;
}
.webopencampus__obog__h3.yakugaku span {
  background-color: #5B9BD5;
}
.webopencampus__obog__h3.soyaku span {
  background-color: #A9D18E;
}

.webopencampus__obog {
  display: flex;
  gap: 25px;
  flex-wrap: wrap;
  padding: 0 10px;
}
@media screen and (max-width: 767px) {
  .webopencampus__obog {
    gap: 20px;
  }
}
.webopencampus__obog a {
  display: block;
  width: calc((100% - 25px) / 2);
}
.webopencampus__obog a:hover {
  opacity: .5;
}
@media screen and (max-width: 767px) {
  .webopencampus__obog a {
    width: calc((100% - 20px) / 2);
  }
}

.webopencampus__inquiry {
  background-color: #f5f5f5;
  padding: 15px;
  border: solid 1px #efefef;
}


/* 2023 web opencampus */
.weboc-flame h2 {
	font-size: 2.9rem;
	border-left: none;
	box-shadow: none;
	line-height: 1.5;
	margin-bottom: 0;
	padding: 0;
}
.weboc-flame h2:before {
	background-color: transparent;
	position: static;
}
.weboc-flame p {
	font-size: 1.6rem;
	line-height: 2;
}

.weboc-movie-flame-full {
	margin: 80px auto;
	background-color: rgba(188,94,96,.3);
}
	.weboc-movie-flame-full .movie-block {
		background-repeat: no-repeat;
		background-position: center center;
		margin: 0 auto;
		width: 760px;
		height: 459px;
	}
	.weboc-movie-flame-full .movie-buttom {
		margin: 20px auto 0;
		text-align: center;
	}

	.weboc-comments-flame h2 {
		background-color: transparent;
		border-left: none;
		box-shadow: none;
		font-size: 2.8rem;
		line-height: 2;
		padding: 0;
		text-align: center;
	}
	.weboc-comments-flame h2:before {
		background-color: transparent;
		position: static;
	}
		.weboc-comments-flame h2 > span {
			display: flex;
			justify-content: center;
			align-items: center;
			text-align: center;
			font-size: 1.7rem;
		}
		.weboc-comments-flame h2 > span::before,
		.weboc-comments-flame h2 > span::after {
			content: '';
			width: 1px;
			height: 22px;
			background-color: rgba(153,153,153,1);
		}
		.weboc-comments-flame h2 > span::before {
			margin-right: 10px;
			transform: rotate(-30deg)
		}
		.weboc-comments-flame h2 > span::after {
			margin-left: 10px;
			transform: rotate(30deg)
		}
	.weboc-comments-flame .overview {
		font-size: 1.6rem;
		margin-top: 0!important;
		line-height: 1.8;
		padding: 10px 60px;
		position: relative;
	}
	.weboc-comments-flame .overview:before,
	.weboc-comments-flame .overview:after { 
		position: absolute;
		top: 0;
		content:'';
		width: 30px;
		height: 100%;
		display: inline-block;
	}
	.weboc-comments-flame .overview:before {
		border-left: solid 1px rgb(153,153,153);
		border-top: solid 1px rgb(153,153,153);
		border-bottom: solid 1px rgb(153,153,153);
		left: 0;
	}
	.weboc-comments-flame .overview:after {
		content: '';
		border-top: solid 1px rgb(153,153,153);
		border-right: solid 1px rgb(153,153,153);
		border-bottom: solid 1px rgb(153,153,153);
		right: 0;
	}

.weboc-comments-flame {
	margin-bottom: 50px;
}

.weboc-program-flame {
	/*border: 1px solid #ccc;*/
	background: rgba(255,255,224,1);
	background:
		linear-gradient(135deg, transparent 40px, rgba(255,255,224,1) 0) top left,
		linear-gradient(-135deg, transparent 40px, rgba(255,255,224,1) 0) top right,
		linear-gradient(-45deg, transparent 40px, rgba(255,255,224,1) 0) bottom right,
		linear-gradient(45deg, transparent 40px, rgba(255,255,224,1) 0) bottom left;
	background-size: 50% 50%;
	background-repeat: no-repeat;
	margin-top: 50px;
	padding: 55px 20px;
}
	.weboc-program-flame h2 {
		background-color: transparent;
		border-left: none;
		box-shadow: none;
		font-weight: bold;
		margin-top: 0;
		line-height: 1.8;
	}
	.weboc-program-flame h2:before {
		background-color: transparent;
		position: static;
	}
		.weboc-program-flame h2 > span {
				display: flex;
				justify-content: center;
				align-items: center;
				border-left: none;
				font-size: 2rem;
				text-align: center;
				line-height: 1.3;
			}
			.weboc-program-flame h2 > span::before,
			.weboc-program-flame h2 > span::after {
				content: '';
				width: 1px;
				height: 46px;
				background-color: rgba(35,24,21,1);
			}
			.weboc-program-flame h2 > span::before {
				margin-right: 20px;
				transform: rotate(-30deg);
			}
			.weboc-program-flame h2 > span::after {
				margin-left: 20px;
				transform: rotate(30deg);
			}

	.weboc-program-title {
		margin-bottom: 38px;
	}
	.weboc-program-flame h3 {
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 3rem;
		font-weight: bold;
		position: relative;
		margin-top: 0;
		margin-right: auto;
		margin-left: auto;
		padding: 0;
		max-width: 418px;
	}
		.weboc-program-flame h3 > span {
			display: block;
			padding: 0 15px;
			letter-spacing: 2px;
		}
	.weboc-program-flame h3::before,
	.weboc-program-flame h3::after {
		content: '';
		height: 1px;
		background-color: black;
		flex-grow: 1;
	}
	.weboc-program-flame h3::before {
		left:0;
	}
	.weboc-program-flame h3::after {
		right: 0;
	}

	.weboc-program-image {
		margin-top: 0!important;
		padding-bottom: 30px;
	}

	.weboc-program-list {
		display: flex;
		row-gap: 20px;
		flex-wrap: wrap;
		justify-content: space-between;
		max-width: 672px;
		margin-right: auto;
		margin-left: auto;
		align-items: center;
	}
		.weboc-program-list .anker {
			max-width: 50%;
		}
		.weboc-program-list .anker.unique {
			max-width: none;
			width: 360px;
		}

	.weboc-program-list2 {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		justify-content: center;
		gap: 20px 72px;
		max-width: 672px;
		margin-right: auto;
		margin-left: auto;
		align-items: center;
	}
		.weboc-program-list2 .anker {
			max-width: 50%;
		}
		.weboc-program-list2 .anker.unique {
			max-width: none;
			width: 360px;
		}

.weboc2023-recommend {
	display: flex;
	align-items: center;
	column-gap: 10px;
}
	.weboc2023-recommend .r-img {
		flex-shrink: 0;
		width: 200px;
	}
	.weboc2023-recommend .r-text {
		font-size: 1.2rem;
		line-height: 1.6;
		letter-spacing: -1px;
		position: relative;
	}
	.weboc2023-recommend .r-text::before {
		content: '';
		display: block;
		border: 1px solid rgb(255,230,0);
		transform: rotate(-8deg);
		transform-origin: left 0;
		width: calc(100% - 16px);
	}
	.weboc2023-recommend .r-text::after {
		content: '';
		display: block;
		border: 1px solid rgb(255,230,0);
		transform: rotate(8deg);
		transform-origin: left 0;
		width: calc(100% - 16px);
	}
		.weboc2023-recommend .r-text > span {
			display: flex;
			align-items: stretch;
			padding: 5px 0;
		}



.program-pickup-block {
	display: block;
	width: 300px;
	max-width: 100%;
}

.pickup-buttom {
	position: relative;
	padding: 0 0 0 20px;
}
	.pickup-buttom .pickup-ico {
		position: absolute;
		top: -20px;
		left: 0;
		z-index: 2;
	}
	.pickup-buttom .pickup-botton {
		display: flex;
		background-color: rgba(255,255,255,1);
		border: 1px solid rgb(255,230,0);
		font-size: 1.9rem;
		font-weight: bold;
		text-align: center;
		position: relative;
	}
	.pickup-buttom .pickup-botton:before {
		content: '';
		position: absolute;
		top: 50%;
		right: 10px;
		transform: translateY(-50%);
		width: 0;
		height: 0;
		border-style: solid;
		border-top: 5px solid transparent;
		border-bottom: 5px solid transparent;
		border-left: 9px solid #ffffff;
		border-right: 0;
		z-index: 2;
	}
	.pickup-buttom .pickup-botton:after {
		content: '';
		background-color: rgba(255,230,0);
		width: 30px;
		z-index: 1;
	}
		.pickup-buttom .pickup-botton > div {
			padding: 15px;
			width: calc(100% - 30px);
		}

.pickup-buttom .pickup-botton span {
	transition: all .5s;
}
a:hover .pickup-buttom .pickup-botton span {
	opacity: .5;
}

.tx-c {
	text-align: center;
}

.w670 {
	max-width: 672px;
	margin: 0 auto 35px auto;
	padding: 0 0 0px 20px;
}
.smp-br {
	display: none;
}

@media screen and (max-width: 767px) {
	.w670 {
		margin: 0 auto 10px auto;
	}
	.smp-br {
		display: block;
	}

	.webopencampus2023 {
		max-width: 375px;
		margin-left: auto;
		margin-right: auto;
	}

	.weboc-flame h2 {
		font-size: 2.4rem;
	}

	.weboc-comments-flame h2 {
		font-size: 2.5rem;
	}
	.weboc-comments-flame .overview {
		padding: 10px 32px;
	}

	.weboc-program-flame {
		 background: linear-gradient(135deg, transparent 20px, rgba(255,255,224,1) 0) top left, linear-gradient(-135deg, transparent 20px, rgba(255,255,224,1) 0) top right, linear-gradient(-45deg, transparent 20px, rgba(255,255,224,1) 0) bottom right, linear-gradient(45deg, transparent 20px, rgba(255,255,224,1) 0) bottom left;
		 background-size: 50% 50%;
		 background-repeat: no-repeat;
		padding-top: 30px;
		padding-bottom: 30px;
	}


	.weboc-program-list {
		align-items: flex-start;
		flex-direction: column;
		row-gap: 10px;
	}

	.weboc-program-list .anker {
		max-width: none;
	}

	.weboc-program-list2 {
		align-items: flex-start;
		flex-direction: column;
		row-gap: 10px;
	}

	.weboc-program-list2 .anker {
		max-width: none;
	}

	.weboc-program-flame h3 {
		font-size: 2.2rem;
	}

	.weboc2023-recommend .r-img {
		width: 180px;
	}

	.m-20{
		margin-left: -20px;	
	}

}


/*
--- miyazaki
---------------------------------------------------------------------------*/
.weboc2023__blockh {
  display: flex;
  column-gap: 25px;
}
@media screen and (min-width: 768px) {
  .weboc2023__blockh {
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .weboc2023__blockh {
    flex-direction: column;
    row-gap: 15px;
  }
}
.weboc2023__blockh__left {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .weboc2023__blockh__left {
    column-gap: 5px;
  }
}
.weboc2023__blockh__left img {
  width: 200px;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .weboc2023__blockh__left img {
    width: 146px;
  }
}
.weboc2023__blockh__h {
  position: relative;
  display: flex;
  align-items: center;
  column-gap: 3px;
}
.weboc2023__blockh__h:before {
  content: '';
  width: 44px;
  height: 42px;
  background-image: url("../images/admission-weboc2023-hstar-44x42.png");
  flex-shrink: 0;
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
}
.weboc2023__blockh__hinner {
  position: relative;
  padding: 10px 0;
}
.weboc2023__blockh__hinner:before, .weboc2023__blockh__hinner:after {
  content: '';
  position: absolute;
  left: 0;
  border-style: solid;
  width: 0;
  height: 0;
  border-width: 10px 160px 10px 0;
  border-color: transparent #ffe600 transparent transparent;
}
.weboc2023__blockh__hinner:before {
  top: 0;
}
.weboc2023__blockh__hinner:after {
  bottom: 0;
}
.weboc2023__blockh__hinner span {
  display: flex;
  min-height: 66px;
  align-items: center;
  padding: 4px 8px;
  width: 170px;
  font-weight: bold;
  font-size: 19px;
  line-height: 1.25;
  position: relative;
  perspective: 10px;
  z-index: 1;
  background-color: #fff;
}
.weboc2023__blockh__hinner span:before, .weboc2023__blockh__hinner span:after {
  content: '';
  position: absolute;
  left: 0;
  border-style: solid;
  width: 0;
  height: 0;
  border-width: 10px 160px 10px 0;
  border-color: transparent #fff transparent transparent;
  z-index: -1;
}
.weboc2023__blockh__hinner span:before {
  top: -9px;
}
.weboc2023__blockh__hinner span:after {
  bottom: -9px;
}

.weboc2023__pageanchor {
  display: block;
  color: inherit;
  padding-right: 45px;
  position: relative;
  max-width: 300px;
}
.weboc2023__pageanchor img {
  width: 90px;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  flex-shrink: 0;
  border-radius: 100%;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
	transition: all .5s;
}
.weboc2023__pageanchor:hover img {
	opacity: .5;
}
.weboc2023__pageanchor .weboc2023__blockh__hinner:before,
.weboc2023__pageanchor .weboc2023__blockh__hinner:after,
.weboc2023__pageanchor .weboc2023__blockh__hinner span:before,
.weboc2023__pageanchor .weboc2023__blockh__hinner span:after {
  border-right-width: 208px;
}
.weboc2023__pageanchor .weboc2023__blockh__hinner span {
  min-height: 70px;
  width: 208px;
}

/*
---
---------------------------------------------------------------------------*/
.weboc2023__movie {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
  background-image: url(https://www.hoshi.ac.jp/admission/wp-content/uploads/sites/7/2023/07/weboc2023_84.png);
  background-size: 100%;
  background-repeat: no-repeat;
  aspect-ratio: 760 / 459;
  position: relative;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .weboc2023__movie {
    margin-left: -15px;
    margin-right: -15px;
  }
}
.weboc2023__movie iframe {
  position: absolute;
  top: 7%;
  left: 4.4%;
  width: 89.4%;
  aspect-ratio: 16 / 9;
  height: auto;
	/*border: 1px solid;*/
}
.weboc2023__movie .comingsoon {
	position: absolute;
	top: 7%;
	left: 4.4%;
	width: 89.4%;
	aspect-ratio: 16 / 9;
	height: auto;
}
.weboc2023__movie.blank:before {
  content: '';
  position: absolute;
  top: 7%;
  left: 4.4%;
  width: 89.4%;
  aspect-ratio: 160 / 89;
  height: auto;
  background-color: #e6ebeb;
  background-image: url("../images/icon_movie_play_54x40_red.png");
  background-size: 54px auto;
  background-position: center;
  background-repeat: no-repeat;
	/*border: 1px solid;*/
}
.weboc2023__movie.blank:after {
  content: 'COMING SOON';
  font-size: 13px;
  font-weight: bold;
  width: 120px;
  min-height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  position: absolute;
  bottom: 13.6%;
  right: 8%;
  line-height: 1;
  padding-top: 4px;
  box-sizing: border-box;
}

.weboc2023__mflex {
  display: flex;
  gap: 55px 25px;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .weboc2023__mflex {
/*
    flex-direction: column;
    row-gap: 35px;
    justify-content: flex-start;
*/
	  display: block;
  }
	.weboc2023__mflex__col + .weboc2023__mflex__col {
		margin-top: 35px;
	}
}
@media screen and (min-width: 768px) {
  .weboc2023__mflex__col {
    width: calc( (100% - 25px) / 2 );
  }
}
.weboc2023__mflex__boxtitle {
  display: flex;
  justify-content: center;
}
.weboc2023__mflex__boxtitle span {
  display: flex;
  padding: 4px 4px 0;
  justify-content: center;
  min-height: 42px;
  border: 1px solid;
  width: 220px;
  max-width: 100%;
  font-weight: bold;
  align-items: center;
  font-size: 18px;
  line-height: 1.3;
}
.weboc2023__mflex__title {
  text-align: left;
}

/*
---
---------------------------------------------------------------------------*/
main ul.weboc2023__ul > li + li {
  margin-top: 5px;
}
main ul.weboc2023__ul > li:before {
  background-image: url(https://www.hoshi.ac.jp/admission/wp-content/uploads/sites/7/2023/03/yellow-arrow-12x14-1.png);
  background-size: 100% auto;
  width: 12px;
  height: 14px;
  top: 0.3em;
}

/*
---
---------------------------------------------------------------------------*/
.weboc2023__bottuns {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .weboc2023__bottuns {
    flex-direction: column;
    row-gap: 15px;
  }
}
.weboc2023__bottuns > .btn-a {
  margin: 0;
}
@media screen and (min-width: 768px) {
  .weboc2023__bottuns > .btn-a {
    width: calc( (100% - 30px) / 2 );
  }
}

/*
---
---------------------------------------------------------------------------*/
.weboc2023__q__subcopy {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 15px;
}
.weboc2023__q__subcopy:before, .weboc2023__q__subcopy:after {
  content: '';
  display: block;
  height: 22px;
  flex-shrink: 0;
  border-left: 1px solid rgba(35,24,21,1);
}
.weboc2023__q__subcopy:before {
  transform: rotate(-20deg);
}
.weboc2023__q__subcopy:after {
  transform: rotate(20deg);
}

.weboc2023__qbutton {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  column-gap: 12px;
}
@media screen and (min-width: 768px) {
  .weboc2023__qbutton__center {
    order: 2;
    width: 400px;
    flex-shrink: 0;
  }
  .weboc2023__qbutton__left {
    order: 1;
    width: 200px;
  }
  .weboc2023__qbutton__right {
    order: 3;
    width: 200px;
  }
}
@media screen and (max-width: 767px) {
  .weboc2023__qbutton {
    flex-wrap: wrap;
    gap: 10px 0;
  }
  .weboc2023__qbutton__center {
    width: 100%;
  }
  .weboc2023__qbutton__left {
    width: 50%;
  }
  .weboc2023__qbutton__right {
    width: 50%;
  }
}

/*
---
---------------------------------------------------------------------------*/
.weboc2023__overview {
  position: relative;
}
.weboc2023__overview:before, .weboc2023__overview:after {
  content: '';
  position: absolute;
  top: 0;
  width: 30px;
  height: 100%;
  border-style: solid;
  border-color: #999;
}
.weboc2023__overview:before {
  left: 0;
  border-width: 1px 0 1px 1px;
}
.weboc2023__overview:after {
  right: 0;
  border-width: 1px 1px 1px 0;
}
.weboc2023__overview span {
  display: block;
  max-width: 740px;
  margin-left: auto;
  margin-right: auto;
  padding: 10px;
  letter-spacing: -0.8px;
}
@media screen and (max-width: 767px) {
  .weboc2023__overview span {
    padding: 20px 40px;
  }
}

/*
---
---------------------------------------------------------------------------*/
.program-pickup-block.wide {
  width: auto;
}

.wide .pickup-buttom .pickup-botton > div {
  padding: 20px 25px;
}

.wide .pickup-buttom {
  padding-left: 25px;
}

.wide .pickup-buttom .pickup-ico {
  top: -25px;
}

/*
---
---------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .weboc2023__lead {
    margin-left: -13px;
    margin-right: -13px;
  }
}

.webopencampus2023 .btn-a {
	border-color: #231815;
}

@media screen and (max-width: 767px) {
	.weboc2023__sectiontitle {
		margin-left: -15px;
		margin-right: -15px;
	}
}


/*
---
---------------------------------------------------------------------------*/
.movie__slider {
  padding-left: 25px;
  padding-right: 25px;
}
.movie__slider__wrapper {
  position: relative;
}
@media screen and (max-width: 767px) {
  .movie__slider {
    padding-left: 48px;
    padding-right: 48px;
  }
}
@media screen and (max-width: 767px) {
  .movie__slider .slick-list {
    overflow: visible;
  }
}
.movie__slider .slick-slide {
  padding: 0 25px;
}
@media screen and (max-width: 767px) {
  .movie__slider .slick-slide {
    padding-left: 8px;
    padding-right: 8px;
  }
}
.movie__slider__item {
  display: block;
  color: inherit;
}
.movie__slider__thumb {
  aspect-ratio: 16/9;
  position: relative;
  transition: all .5s;
  margin-bottom: 20px;
  overflow: hidden;
}
a:hover .movie__slider__thumb {
  opacity: 0.5;
}
.movie__slider__thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.movie__slider__thumb.new:after {
  content: 'NEW';
  font-size: 1.3rem;
  width: 70px;
  height: 70px;
  bottom: 0;
  right: 0;
  position: absolute;
  background-color: #E7B000;
  color: #fff;
  display: flex;
  justify-content: center;
  line-height: 1;
  transform: translate(50%, 50%) rotate(-45deg);
  padding-top: 4px;
}
/*.movie__slider__meta {
  display: flex;
  align-items: center;
  column-gap: 5px;
}
.movie__slider__cat {
  min-width: 70px;
  font-size: 1.3rem;
  line-height: 1;
  border-radius: 3px;
  min-height: 22px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bolder;
  background-color: #E6EBEB;
}
.movie__slider__cat.cat2 {
  background-color: #FFDA00;
}
.movie__slider__cat.cat3 {
  background-color: #ABDECD;
}
.movie__slider__cat.cat7 {
  background-color: #ACC5FF;
}
.movie__slider__cat.cat24 {
  background-color: #f1c9c9;
}
.movie__slider__date {
  flex: 1;
  font-size: 1.3rem;
}*/
.movie__slider__title {
  font-weight: bold;
  margin-top: 5px;
}

/* ----- 追加 2025.06.04 「学びの特色」ページ　- yamaguchi
---------------------------------------------------------------------------*/
.admission-gallery-souyaku .grid[data-grid-col="2"] {
	grid-template-columns: repeat(1, 1fr);
    max-width: 330px;
    margin: 0 auto;
}

/* ----- 追加 2024.04.03 「授業料全額免除について」ページ　- ueda
---------------------------------------------------------------------------*/
.page-id-3077 p{
	font-size: 1.6rem;
}
.shogakukin_h3{
	margin-top: 70px;
	text-align: center;
	font-size: 2.9rem;
}
.shogakukin_h3 span {
    display: inline-block;
}
.shogakukin_h3 + p{
	margin-top: 40px;
}
table.shogakukin_table{
	width: 100%;
	table-layout: fixed;
	font-size: 1.6rem;
}
table.shogakukin_table th{
	text-align: center;
	background-color: #F7E766;
}
table.shogakukin_table td{
	text-align: center;
}
table.shogakukin_table span {
    display: inline-block;
}
table.shogakukin_table .people_num{
	text-align: center;
}
.shogakukin_menjyokingaku{
	display: flex;
	justify-content: center;
	gap: 5px 30px;
	align-items: center;
}
.menjyokingaku_left p{
	background: linear-gradient(transparent 70% ,#FFE700 70%);
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 1.1;
	text-align: center;
}
.menjyokingaku_right{
	display: flex;
	gap: 20px 10px;
	font-weight: bold;
}
.menjyokingaku_right p{
	font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
	.container.container--860:has(.shogakukin_mv) {
		padding-left: 0;
		padding-right: 0;
	}
	section:has(.shogakukin_h3){
		margin-top: 40px;
	}
    .shogakukin_h3 {
		font-size: 2.4rem;
	}
	table.shogakukin_table {
		font-size: 1.2rem;
	}
	table.shogakukin_table td {
		padding: 3px;
	}
	table.shogakukin_table td{
		text-align: left;
	}
	.shogakukin_menjyokingaku {
		flex-direction: column;
	}
}


/* ----- 追加 2026.01.13 「保護者向けサイト」ページ　- 
---------------------------------------------------------------------------*/
body.specialpost.page-template-for_guardian .main__navi{
    margin-bottom: 0;
}
body.specialpost.page-template-for_guardian main{
    margin: 0;
    border-top-right-radius: inherit;
    background-color: inherit;
    padding-bottom: 0;
    font-feature-settings: "palt";
}
.page-template-for_guardian .block + .block {
    margin-top: 0;
}
.page-template-for_guardian .block > :last-child {
    margin-bottom: initial !important;  /* または 好きな値 */
}

.page-template-for_guardian .block > :first-child {
    margin-top: initial !important;     /* または 好きな値 */
}
/*
.page-template-for_guardian .block {
    padding: 50px 50px 50px 50px;
    background-color: #fff;
}
.page-template-for_guardian .block + .block {
    padding-top: 0;
}
*/
.page-template-for_guardian .customheader__cat{
    background-color: #fffcdb;
    padding: 40px 0;
}

h2.hero__subtitle {
    all: unset;
    font-size: 50px;
    letter-spacing: -0.05em;
}
h2.hero__subtitle::before {
    all: unset;
}

.hero__content{
    display: flex;
}
.hero__heading {
    width: 540px;
    max-width: 100%;
}
.hero__image-wrap {
    margin-right: -150px;
}
.hero__heading__Img{
    margin-bottom: 30px;
}
.hero__heading__Img img {
    width: 400px;
}
.hero__image-wrap img {
    width: 430px;
}
.customheader_for_guardian .hero__read {
    margin-top: -50px;
    font-size: 18px;
    font-weight: 500;
}
@media screen and (max-width: 1023px), print {
    body.specialpost.page-template-for_guardian header {
        background-color: #FFFFFF;
        border-bottom: 1px solid #040000;
    }
    body.specialpost.page-template-for_guardian {
        padding: 65px 0px 0;
    }
}
@media screen and (max-width: 882px) {
     body.specialpost.page-template-for_guardian header {
        background-color: #FFFFFF;
    }
    body.specialpost.page-template-for_guardian {
        padding: 65px 0px 0;
    }
    .customheader_for_guardian h2 {
        font-size: 36px!important;
    }
    
    .customheader_for_guardian .hero__read {
        margin-top: 25px;
    }
}
@media screen and (min-width: 767px){
    .page-template-for_guardian br.sp_br {
      display: none;
    }
}
@media screen and (max-width: 766px){
    .page-template-for_guardian br.sp_br{
        display: inline; 
    }
    .page-template-for_guardian section p {
        margin-top: 0;
    }
}

@media screen and (max-width: 767px){
    .hero__image-wrap {
         margin-right: -15px; 
    }
    .customheader_for_guardian p {
         margin-top: 0; 
    }
}

@media screen and (max-width: 600px){
    .page-template-for_guardian .smp_disp{
        display: none;
    }
    .hero__image-wrap {
         text-align: right;
         margin-top: -30px;
    }

    .hero__content{
         display: block;
    }
    .hero__image-wrap img {
         width: 260px;
    }
    
}

/*-----------------------*/
.page-template-for_guardian section{
    text-align: center;
    margin-top: 35px;
}

.page-template-for_guardian section h2{
    box-shadow: none;
    font-size: 48px;
    padding: 0;
    letter-spacing: -0.05em;
    margin-top: 20px;
}
.page-template-for_guardian h2:before{
    content: none;
}

.page-template-for_guardian h3{
    font-size: 32px;
}
.page-template-for_guardian h3.yellow_line{
    position: relative;
    font-size: 30px;
    margin-top: 70px;
    display: inline-block;
}

.page-template-for_guardian h3.yellow_line::after{
    content: "";
    display: block;
    height: 7px;
    margin-left: -5px;
    margin-right: -5px;
    background: #f4df26;
}

.page-template-for_guardian h3.yellow_underline span{
    display: inline;
    background: linear-gradient(transparent 75%, #f4df26 60%, #f4df26 100%);
}


.page-template-for_guardian h3.yellow_underline{
    margin: 70px 0 35px 0;
}

.page-template-for_guardian h4 span{
    border-bottom: 1px solid #231815;
    display: inline-block;
    font-size: 22px;
}

.page-template-for_guardian h4.bg_yellow span {
    background-color: #f4df26;
    border: none;
    font-size: 20px;
    padding: 10px 20px;
}


.page-template-for_guardian p.lead{
    font-size: 25px;
    font-weight: bold;
    letter-spacing: -0.05em;
    line-height: 1.5;
    margin-top: 5px!important;
}


.page-template-for_guardian p.lead + p{
    margin-top: 10px;
}

@media screen and (max-width: 768px){
    .page-template-for_guardian h4.bg_yellow {
        margin-top: 20px;
    }

}
@media screen and (max-width: 480px){
    .page-template-for_guardian p.lead{
        font-size: 20px;
    }
    .page-template-for_guardian section h2{
        font-size: 36px;
    }
    .page-template-for_guardian h3{
        font-size: 26px;
    }
    .page-template-for_guardian h3.yellow_line{
        font-size: 25px;
    }
}

/*-----------------------*/


section#guardian_anchor{
    margin-top: 0;
    padding: 30px 0;
    background-color: #FFFFFF;
}
#guardian_anchor .guardian-panel {
    padding: 0;
}
.page-template-for_guardian .btn-a{
    max-width: 550px;
    margin-top: 30px!important;
}

section#guardian_anchor .guardian-panel > .block:first-child {
    margin-top: 0px;
}
section#guardian_anchor .guardian-panel > .block:nth-of-type(2) {
    margin-top: 40px;
}

.guardian_anchor {
    display: flex;
    gap: 12px;
    font-weight: bold;
}

.anchor__item {
    width: 206px;
    border: 1px solid #999999;
    border-radius: 8px;
    text-align: center;
    font-size: 20px;
    line-height: 1;
}
.anchor__item p {
    margin-top: 0;
    padding: 13px;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
    position: relative;
}
.anchor__item p::before {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 5px 0 5px;
    border-color: #f4df26 transparent transparent transparent;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}

span.anchor__num {
    background-color: #f4df26;
    display: block;
    border-radius: 8px 8px 0 0;
    padding: 5px;
}
span.anchor__num__siz {
    font-size: 30px;
}

a.btn-a_yellow {
    background-color: #f4df26;
    display: block;
    padding: 13px;
    text-align: center;
    width: 100%;
    font-size: 32px;
    font-weight: bold;
    margin-top: 40px;
}

.btn-a_yellow span {
    font-size: 20px;
    display: block;
}

@media screen and (max-width: 767px){
    .guardian_anchor {
        flex-wrap: wrap;
        gap: 10px;
    }
    a.anchor__item {
        width: calc(50% - 5px);
    }
}
@media screen and (max-width: 480px){

    a.btn-a_yellow {
        font-size: 25px;
    }
    .btn-a_yellow span {
        font-size: 15px;
    }
    .page-template-for_guardian .btn-a{
        padding: 20px;
    }


}
/*-----------------------*/
.index-wrap {
    display: flex;
    font-weight: bold;
}
.index-wrap span{
    width: 200px;
    max-height: 42px;
    padding: 15px;
    display: flex;
    align-items: center;      /* 縦中央揃え */
    justify-content: center;  /* 横中央揃え（任意） */
    text-align: center;
}
.index-wrap span:first-of-type {
    background: #f4df26;
    border-right: 1px solid #989898;
    border-radius: 5px 0 0 0;
    font-size: 17px;
}

.index-wrap span:nth-of-type(2) {
    background: #ffffff;
    border-radius: 0 5px 0 0;
    font-size: 23px;
}

.guardian-panel {
    background-color: #FFFFFF;
    padding: 70px 50px 70px 50px;
}

.guardian-panel__line {
    border-top: 1px solid #231815;
    width: 100%;
}

.guardian_2flx__imgbox {
    display: flex;
    gap: 36px;
    width: 100%;
    margin-top: 40px;
}

.guardian_2flx__imgbox .imgbox span {
    display: block;
    font-size: 12px;
    padding-top: 10px;
}

.career-box {
    position: relative;
    border: 2px solid #f4df26;
    border-radius: 10px;
    padding: 25px;
    margin: 55px 0 85px 0;
}
.career-box span.midashi{
    position: absolute;
    top: 0;
    left: 50%;   
    padding: 0 10px;
    margin: 0;
    transform: translateY(-50%) translateX(-50%);
    background-color: #FFFFFF;
    font-size: 20px;
    font-weight: bold;
}

.guardian__list {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 50px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.guardian__list li {
    margin-top: 0;
    padding-left: 16px;
}

.guardian__list li::before {
    content: "●";
    color: #f4df26;
}

.guardian_2flx__txtbox .guardian__list {
    display: inline-block;
    text-align: left;
    margin-top: 5px;
}

.guardian__list span {
    font-size: 11px;
}

.guardian_2flx__txtbox  {
    display: flex;
    gap: 16px;
}

.guardian_2flx__txtbox .txtbox{
    border: 2px solid #f4df26;
    border-radius: 20px;
    padding: 30px;
    margin-top: 30px;
    width: 372px;
}

.guardian_2flx__txtbox .txtbox span {
    font-size: 22px;
    font-weight: bold;
    display: block;
}

.guardian_2flx__imgbox.curriculum {
    margin: 25px 0 90px;
    gap: 12px;
}

.guardian_2flx__imgbox > .imgbox.sp_none:last-of-type {
    display: none;
}

@media screen and (max-width: 1023px) {
    .index-wrap span:nth-of-type(2){
        font-size: 20px;
    }
}

@media screen and (max-width: 768px) {
    .guardian-panel {
        padding: 50px 10px;
    }
}



@media screen and (max-width: 480px){
    .guardian_2flx__imgbox {
        display: block;
    }
    .guardian_2flx__imgbox .imgbox + .imgbox {
        margin-top: 15px;
      }
    
    .guardian_2flx__txtbox .txtbox span {
        font-size: 19px;
    }

    ul.guardian__list {
        display: block;
        text-align: left;
    }
    .career-box ul.guardian__list li{
        margin-top: 15px;
    }
    .career-box{
        padding: 15px 15px 20px 15px;
    }
    .guardian_2flx__txtbox {
        display: block;
    }

    .guardian_2flx__txtbox .txtbox {
        width: 100%;
        border-radius: 10px;
        margin-top: 15px;
    }
    .index-wrap span{
        width: 100%;
    }

}


/*-----------------------*/

.student__support {
    background-color: #fffbda;
    margin: 45px -50px 0 -50px;
    padding-bottom: 40px;
}

.student__support h4{
    padding-top: 45px;
}

.student__support .guardian_2flx__imgbox{
    width: calc(100% - 100px);
    max-width: 670px;
    margin: 0 auto;
    padding-top: 25px;
}

.guardian_2flx__txtbox .guardian__list li{
    margin-bottom: 3px;
}

.guardian_2flx__txtbox .guardian__list li:last-child{
    margin-bottom: 0;
}

@media screen and (max-width: 768px){
    .student__support {
        margin: 45px -10px 0 -10px;
    }
/*
    .student__support .guardian_2flx__imgbox{
        width: calc(100% - 20px);
    }
*/
}

@media screen and (min-width: 481px){
    #student .guardian-panel__line {
        display: none;
    }
}

@media screen and (max-width: 480px){
    .student__support .guardian-panel__line {
        margin: 35px 0;
    }
    .guardian_2flx__imgbox >.guardian-panel__line:last-of-type {
        display: none;
    }
    .student__support .guardian_2flx__imgbox{
        width: calc(100% - 20px);
    }
    #student .guardian_2flx__txtbox .guardian__list {
        display: block;
    }


}


/*-----------------------*/

.tuition__support{
    margin-top: 70px;
}
.page-template-for_guardian .tuition__support h3.yellow_line{
    margin-top: 0;
}

.tuition__support p.tuition__support__read {
    font-size: 45px;
    font-weight: bold;
    line-height: 1.5;
}

.tuition__support p span {
    font-size: 25px;
    padding-right: 12px;
}

.tuition__support__read {
    display: inline-flex;
    align-items: center;
}

.tuition__support .guardian_2flx__imgbox {
    gap: 4px;
    margin-top: 25px;
}

.tuition__system{
    margin-top: 95px;
}

.page-template-for_guardian .tuition__system h3.yellow_line {
    margin-top: 0;
}

.tuition__system .guardian_2flx__imgbox {
    gap: 13px;
}

@media screen and (max-width: 768px){
    .tuition__support__read {
        display: block;
    }
    .tuition__support p.tuition__support__read {
        line-height: 1.2;
        margin-top: 0;
    }
    .tuition__system{
        margin-top: 75px;
    }

}

@media screen and (max-width: 480px){
    .tuition__support .imgbox {
        padding-top: 5px;
    }
    .tuition__system .sp_none{
        display: none;
    }
    .tuition__support .guardian_2flx__imgbox .imgbox + .imgbox {
        margin-top: 0;
    }
    .tuition__system .imgbox{
        margin-top: 40px!important;
    }

}

/*-----------------------*/


.environment-box {
    position: relative;
    border: 2px solid #f4df26;
    border-radius: 10px;
    padding: 25px;
    max-width: 607px;
    background-color: #FFFFFF;
    width: 100%;
}

.environment-box span.point {
    position: absolute;
    top: 0;
    left: 0;
    padding: 5px;
    width: 88px;
    transform: translateY(-50%) translateX(25%);
    background-color: #f4df26;
    border-radius: 20px;
    font-size: 16px;
    line-height: 1;
}

.environment-box h4{
    font-size: 32px;
    margin-top: 0;
}

.environment-box p {
    font-weight: bold;
    margin-top: 5px;
}

.environment-box .guardian_2flx__imgbox{
    gap: 0;
    margin-top: 15px;
}

.block > .environment-boxwrapper:first-child {
  margin-top: 75px !important;
}
.environment-boxwrapper {
    margin-top: 75px;
}
.environment-boxwrapper > .environment-box {
    margin: 0 auto -10px;
    padding: 20px;
}

.environment-boxwrapper .guardian_2flx__txtbox {
    margin-top: -20px;
    gap:20px;
}
.environment-boxwrapper .guardian_2flx__txtbox .guardian__list{
    display: block;
}

@media screen and (max-width: 768px){
    .environment-boxwrapper .guardian_2flx__txtbox{
        margin-top: 65px;
    }
    .environment-box h4{
        font-size: 26px;
        margin-top: 10px;
    }

}
@media screen and (max-width: 600px) {
    .environment-boxwrapper .guardian_2flx__txtbox  {
        flex-direction: column;
    }
}


@media screen and (max-width: 480px){
    .environment-boxwrapper .guardian_2flx__txtbox{
        margin-top: 30px;
    }
    .environment-boxwrapper .environment-box{
        margin: 25px 0;
    }
    .environment-boxwrapper .environment-imgbox {
        margin-top: 30px;
    }
    .environment-box .guardian_2flx__imgbox .imgbox + .imgbox {
        margin-top: 0;
    }
    .environment-box {
        padding: 15px 15px 20px 15px;
    }


}




/*-----------------------*/

section#guardian_link {
    margin-top: 60px;
    padding: 30px 0 0 0;
    background-color: #FFFFFF;
}
#guardian_link .guardian-panel{
    padding: 0;
}

.guardian_banner_wrapper img {
    width: 100%;
}

.guardian_banner_wrapper a {
    display: block;
    margin-bottom: 8px;
}

#guardian_link a:last-child {
    margin-top: 0;
}

.guardian_link_2flx {
    display: flex;
    gap: 8px;
}

.page-template-for_guardian .footer__sns {
    margin-top: 70px;
}
.page-template-for_guardian .footer__sns__flex {
    margin-top: 0;
}



@media screen and (max-width: 768px){
    .guardian_banner_wrapper.display001 {
        margin-top: 0;
    }
    .page-template-for_guardian .footer__sns {
        margin-top: 15px;
    }
}

@media screen and (max-width: 480px){
    #guardian_link .footer__sns__flex {
        margin-top: 15px;
    }
    .guardian_banner_wrapper.display001 .guardian_link_2flx{
        display: block;
        margin-bottom: 8px;
    }
    section#guardian_link{
        margin-top: 30px;
    }


}

