.lb-data .lb-caption {
    font-size: 16px !important;
    line-height: 1.4em !important;
}

.wrap_slider {
  width: 100%;
  height: 100%;
}

.wrap_slider img {
  width: 100%;
  object-fit: cover;
} 
.main-img .slick-dots,.main-img .slick-arrow{display:none !important;}
/* dots */
  .slick-dots {
  position: absolute;
  bottom: 14px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}
.slick-dots li button:before {
  font-family: 'slick';
  font-size: 24px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: '•';
  text-align: center;
  opacity: 1;
  color: #737373;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  opacity: 1;
  color: #4592d0;
}
.slick-arrow {
  display: block;
  position: absolute;
  /*top: 0;*/
  top:36px;
  bottom: 0;
  margin: auto;
  padding: 0;
  width: 20px;
  height: 38px;
  color: transparent;
  z-index: 1;
  transition: opacity 0.5s;
}
.slick-arrow:hover {
  opacity: 0.7;
}
.slick-next::before, .slick-next::after, .slick-prev::before, .slick-prev::after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  opacity: 1;
}
.slick-next::after, .slick-prev::after {
  width: 18px;
  height: 18px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
} /* next */ .slick-next {
  right: 26px;
}
.slick-next::after {
  right: 4px;
  transform: rotate(45deg);
} /* prev */ .slick-prev {
  left: 26px;
}
.slick-prev::after {
  left: 4px;
  transform: rotate(-135deg);
}
@media screen and (max-width: 767px) {
  .slick-next::after, .slick-prev::after {
    width: 10px;
    height: 10px;
  }
  .slick-next {
    right: 8px;
  }
  .slick-prev {
    left: 8px;
  }
  .slick-next::after {
    right: 2px;
  }
  .slick-dots li {
    margin: 0;
  }
}
.ld-inner {
  background-color: #fff;
  padding-bottom: 10px;
}
#contents_box h1,
#contents_box h2,
#contents_box h3,
#contents_box h4,
#contents_box p,
#contents_box li,
#contents_box ol,
#contents_box ul {
  margin: 0;
  padding: 0;
}
#contents_box h1,
#contents_box h2,
#contents_box h4,
#contents_box li,
#contents_box ol,
#contents_box ul {
  font-weight: normal;
  font-style: normal !important;
  font-family: "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif !important;
}
#contents_box em {
  font-style: normal !important;
}
#contents_box li,
#contents_box ol,
#contents_box ul {
  list-style: none;
}
#contents_box img {
  width: auto;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  display: inline;
}
img {
  image-rendering: -webkit-optimize-contrast;
}
.max-w400 {
  max-width: 400px;
  margin-left: auto!important;
  margin-right: auto!important;
}
.max-w500 {
  max-width: 500px;
  margin-left: auto!important;
  margin-right: auto!important;
}
.max-w600 {
  max-width: 600px;
  margin-left: auto!important;
  margin-right: auto!important;
}
.max-w700 {
  max-width: 700px;
  margin-left: auto!important;
  margin-right: auto!important;
}
.max-w800 {
  max-width: 800px;
  margin-left: auto!important;
  margin-right: auto!important;
}
.max-w980 {
  max-width: 980px;
  margin-left: auto!important;
  margin-right: auto!important;
}
.max-w1120 {
  max-width: 1120px;
  margin-left: auto!important;
  margin-right: auto!important;
}
.max-w1360 {
  max-width: 1360px;
  margin-left: auto!important;
  margin-right: auto!important;
}
.mt5 {
  margin-top: 5px !important;
}
.mt10 {
  margin-top: 10px !important;
}
.mt20 {
  margin-top: 20px !important;
}
.mt30 {
  margin-top: 30px !important;
}
.mt40 {
  margin-top: 40px !important;
}
.mt50 {
  margin-top: 50px !important;
}
.mt60 {
  margin-top: 60px !important;
}
.mt80 {
  margin-top: 80px !important;
}
.mt100 {
  margin-top: 100px !important;
}
.mt0 {
  margin-top: 0px !important;
}
@media screen and (max-width: 750px) {
  .mt5 {
    margin-top: 4px !important;
  }
  .mt10 {
    margin-top: 8px !important;
  }
  .mt20 {
    margin-top: 15px !important;
  }
  .mt30 {
    margin-top: 20px !important;
  }
  .mt40 {
    margin-top: 30px !important;
  }
  .mt50 {
    margin-top: 40px !important;
  }
  .mt60 {
    margin-top: 50px !important;
  }
  .mt80 {
    margin-top: 60px !important;
  }
  .mt100 {
    margin-top: 80px !important;
  }
}
@media screen and (max-width: 480px) {
  .mt5 {
    margin-top: 3px !important;
  }
  .mt10 {
    margin-top: 5px !important;
  }
  .mt20 {
    margin-top: 10px !important;
  }
  .mt30 {
    margin-top: 15px !important;
  }
  .mt40 {
    margin-top: 20px !important;
  }
  .mt50 {
    margin-top: 30px !important;
  }
  .mt60 {
    margin-top: 40px !important;
  }
  .mt80 {
    margin-top: 50px !important;
  }
  .mt100 {
    margin-top: 60px !important;
  }
}

.txt_c {
  text-align: center;
}
.txt_l {
  text-align: left;
}
.txt_r {
  text-align: right;
}
.txt_b {
  font-weight: bold!important;
}

#contents_box {
  width: 100%;
  color: #000;
  line-height: 1.5 !important;
}

@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
#contents_box > * {
  font-family: 'Noto Sans JP', "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif !important;
}
/* .min */
.min {
  font-family: "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif" !important;
  font-weight: bold;
}
/*******************************************/
.hiragino {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif !important;
}
/* panel width用 */
.ld-inner:not(.cd-breadcrumbs__item){max-width:100%;width:100%;}
/* ----------- */
#contents_box {
  width: 100%;
  font-family: "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif !important;
  font-weight: normal !important;
  color: #000 !important;
  letter-spacing: 0;
  font-size: 16px;
}
#contents_box .contents {
  width: 100%;
  /*max-width: 960px;*/
  margin: 0 auto;
  letter-spacing: 1px;
}
@media screen and (max-width: 750px) {
  #contents_box .contents {
    max-width: 100%;
    padding: 0 0;
  }
}
@media screen and (max-width: 480px) {
  #contents_box {
    font-size: 14px;
  }
#contents_box .contents {
    max-width: 90%;
}
}
@media screen and (max-width: 380px) {
  #contents_box {
    font-size: 12px;
  }
} /* .main-img */ .main-img {
  max-width: 1120px;
  margin: 0 auto 60px;
}
@media screen and (max-width:768px) {
  .main-img {
    margin: 0 auto 40px;
  }
}
@media screen and (max-width:480px) {
  .main-img {
    margin: 0 auto 30px;
  }
}

div#n2-ss-127 .n2-ss-slide .n2-ss-slide-background img {
  margin-left: 0 !important;
  height: auto !important;
}

/* .readtext */
.readtext {
  max-width: 980px;
  /*padding: 0 20px;*/
  margin: 0 auto 40px !important;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 2.0;
}
@media screen and (max-width: 750px) {
  .readtext {
    max-width: 100%;
    padding: 0 0;
    font-size: 14px;
  }
}
@media screen and (max-width: 480px) {
  .readtext {
    line-height: 1.8;
    margin: 0 auto 30px !important;
    font-size: 13px;
    width:90%;
  }
}
@media screen and (max-width: 380px) {
  .readtext {
    font-size: 12px;
  }
}



/* ------------------------- .flex ------------------------- */
.flex {
  display: flex;
  align-items: baseline;
}



@media only screen and (max-width: 480px) {
  .flex {
    display: block;
    text-align: center;
  }
}



/* ------------------------- .accordion ------------------------- */
.accordion {
  font-size: 18px;
  line-height: 1.8;
}

.accordion summary {
  background: #fdf1be;
  border-radius:999px;
  cursor: pointer;
  display: grid;
  grid-template-columns: 1fr 24px;
  gap: 6px;
  align-items: center;
  padding: 12px 30px;
  max-width: 240px;
  position: relative;
}

.accordion summary::before {
  content: "";
  position: absolute;
  top: 45%;
  right: 30px;
  border: 6px solid transparent;
  border-top: 7px solid #262626;
  transition: transform 0.4s;
}

.accordion span.section__text {
  padding: 30px 0!important;
  display: block;
}

/* アコーディオンが開いた時のスタイル */
details.accordion[open] summary::before {
  transform: rotate(180deg) translateY(50%);
}


@media only screen and (max-width: 768px) {
  .accordion {
    font-size: 16px;
  }

  .accordion summary {
    grid-template-columns: 1fr 24px;
    gap: 5px;
    padding: 8px 20px;
    max-width: 240px;
  }

  .accordion summary::before {
    right: 20px;
    border: 5px solid transparent;
    border-top: 6px solid #262626;
  }

  .accordion span.section__text {
    padding: 20px 0!important;
  }
}


@media only screen and (max-width: 480px) {
  .accordion {
    font-size: 14px;
  }

  .accordion summary {
    grid-template-columns: 1fr 24px;
    gap: 4px;
    padding: 6px 14px;
    max-width: 240px;
  }

  .accordion summary::before {
    right: 14px;
    border: 4px solid transparent;
    border-top: 5px solid #262626;
  }

  .accordion span.section__text {
    padding: 14px 0!important;
  }
}



/* ------------------------- .slider ------------------------- */
.slider {
  width: 100%;
}



/* ------------------------- .name ------------------------- */
.name::before,
.name::after {
  content: '';
  display: inline-block;
  width: 500px;
  height: 33px;
  background-image: url(https://cocorocom.com/files/archives/schoolarticle/seisen/25_01/seisen-bg01.jpg);
  background-size: contain;
  background-position: center;
  vertical-align: middle;
}

.name__head {
  font-size: 18px;
  line-height: 1.3;
}

.name__head span {
  font-size: 24px;
}

.name__text {
  font-size: 18px;
  line-height: 1.8;
  font-weight: normal!important;
}

.name__text span {
  color: #3278a9;
}

.name__wrap {
  padding: 20px 0;
}


@media only screen and (max-width: 768px) {
  .name::before,
  .name::after {
    width: 400px;
    height: 23px;
  }

  .name__head {
    font-size: 16px;
  }

  .name__head span {
    font-size: 20px;
  }

  .name__text {
    font-size: 16px;
  }

  .name__wrap {
    padding: 15px 0;
  }
}


@media only screen and (max-width: 480px) {
  .name::before,
  .name::after {
    width: 300px;
    height: 17px;
  }

  .name__head {
    font-size: 14px;
  }

  .name__head span {
    font-size: 16px;
  }

  .name__text {
    font-size: 14px;
  }

  .name__wrap {
    padding: 12px 0;
  }
}



/* ------------------------- .mokuji ------------------------- */
.mokuji {
  border-top: 10px solid #7aa9ca;
  border-bottom: 10px solid #7aa9ca;
}

.mokuji__wrap {
  border: 10px solid #7aa9ca;
  background: #5f98c0;
  margin-bottom: 10px;
  padding: 40px;
}

.mokuji__item a {
  border-radius: 999px;
  background: #fff;
  color: #262626;
  display: block;
  text-decoration: none;
  font-size: 24px;
  padding: 10px;
}

.mokuji__item a:hover {
  opacity: .9;
}

.mokuji__item a span {
  color: #3278a9;
  display: block;
  font-size: 14px;
}


@media only screen and (max-width: 768px) {
  .mokuji {
    border-top: 8px solid #7aa9ca;
    border-bottom: 8px solid #7aa9ca;
  }

  .mokuji__wrap {
    border: 8px solid #7aa9ca;
    margin-bottom: 8px;
    padding: 30px;
  }

  .mokuji__item a {
    font-size: 20px;
    padding: 8px;
  }

  .mokuji__item a:hover {
    opacity: 1;
  }

  .mokuji__item a span {
    font-size: 13px;
  }
}


@media only screen and (max-width: 480px) {
  .mokuji {
    border-top: 6px solid #7aa9ca;
    border-bottom: 6px solid #7aa9ca;
  }

  .mokuji__wrap {
    border: 6px solid #7aa9ca;
    margin-bottom: 6px;
    padding: 20px;
  }

  .mokuji__item a {
    font-size: 18px;
    padding: 6px;
  }

  .mokuji__item a span {
    font-size: 12px;
  }
}



/* ------------------------- .shadow ------------------------- */
.shadow {
  border-radius: 10px;
  background-color: rgb(250, 249, 244);
  box-shadow: 0px 5px 10px 0px rgba(14, 0, 0, 0.09);
  padding: 60px;
}

.shadow__head {
  border-bottom: 1px solid #ccc;
  font-size: 32px;
  padding-bottom: 15px!important;
}

.interview .shadow {
  padding: 30px;
}

.interview .shadow__head {
  font-size: 24px;
}


@media only screen and (max-width: 768px) {
  .shadow {
    border-radius: 8px;
    box-shadow: 0px 4px 8px 0px rgba(14, 0, 0, 0.09);
    padding: 40px;
  }

  .shadow__head {
    font-size: 24px;
    padding-bottom: 12px!important;
  }

  .interview .shadow {
    padding: 20px;
  }

  .interview .shadow__head {
    font-size: 20px;
  }
}


@media only screen and (max-width: 480px) {
  .shadow {
    border-radius: 6px;
    box-shadow: 0px 3px 6px 0px rgba(14, 0, 0, 0.09);
    padding: 20px;
  }

  .shadow__head {
    font-size: 20px;
    padding-bottom: 8px!important;
  }

  .interview .shadow {
    padding: 15px;
  }

  .interview .shadow__head {
    font-size: 16px;
  }
}



/* ------------------------- .list ------------------------- */
.list__head {
  border-bottom: 2px solid #ccc;
  color: #3278a9;
  font-size: 24px;
  padding: 0 10px 10px 10px!important;
}

.list__head span {
  color: #262626;
  font-size: 16px;
  vertical-align: middle;
  margin: 0 0 0 20px;
}


@media only screen and (max-width: 768px) {
  .list__head {
    font-size: 20px;
    padding: 0 8px 8px 8px!important;
  }

  .list__head span {
    font-size: 14px;
    margin: 0 0 0 15px;
  }
}


@media only screen and (max-width: 480px) {
  .list__head {
    font-size: 16px;
    padding: 0 6px 6px 6px!important;
  }

  .list__head span {
    font-size: 12px;
    margin: 0 0 0 10px;
  }
}



/* ------------------------- .layout ------------------------- */
.layout {
  display: flex;
  position: relative;
}

.layout__item {
  background: #fff;
  box-shadow: 0px 5px 10px 0px rgba(14, 0, 0, 0.09);
  padding: 40px;
  position: absolute;
  max-width: 570px;
  top: 80px;
  z-index: 1;
}

.layout--order .layout__item {
  order: 2;
  right: 0;
}

.layout--order .slider {
  order: 1;
  text-align: left;
}

.layout__head {
  font-size: 28px;
}

.layout__text {
  font-size: 15px;
  line-height: 1.8;
}

.layout__border {
  border: 0;
  text-align: center;
}

.layout__border::before {
  content: '';
  display: inline-block;
  width: 500px;
  height: 33px;
  background-image: url(https://cocorocom.com/files/archives/schoolarticle/seisen/25_01/seisen-bg01.jpg);
  background-size: contain;
  background-position: center;
  vertical-align: middle;
}


@media only screen and (max-width: 768px) {
  .layout__item {
    box-shadow: 0px 4px 8px 0px rgba(14, 0, 0, 0.09);
    padding: 30px;
    max-width: 470px;
    top: 50px;
  }

  .layout__head {
    font-size: 22px;
  }

  .layout__text {
    font-size: 13px;
  }

  .layout__border::before {
    width: 400px;
    height: 23px;
  }
}


@media only screen and (max-width: 480px) {
  .layout__item {
    box-shadow: 0px 3px 6px 0px rgba(14, 0, 0, 0.09);
    padding: 20px;
    max-width: 370px;
    top: 30px;
  }

  .layout__head {
    font-size: 18px;
  }

  .layout__text {
    font-size: 11px;
  }

  .layout__border::before {
    width: 300px;
    height: 17px;
  }
}



/* ------------------------- .interview ------------------------- */
.interview__icon {
  border-radius: 999px;
  color: #fff;
  font-size: 16px;
  line-height: 1;
  padding: 6px;
  margin-right: 10px;
}

.interview__icon--red {
  background: #e95050;
}

.interview__icon--yellow {
  background: #caa600;
}

.interview__icon--blue {
  background: #3278a9;
}

.interview__title {
  font-size: 36px;
  line-height: 1.3;
}

.interview__head {
  border-bottom: 2px dotted #262626;
  font-size: 20px;
  line-height: 1.3;
  padding: 0 0 10px 0;
}


@media only screen and (max-width: 768px) {
  .interview__icon {
    font-size: 14px;
    padding: 5px;
    margin-right: 8px;
  }

  .interview__title {
    font-size: 28px;
  }

  .interview__head {
    font-size: 18px;
    padding: 0 0 8px 0;
  }
}


@media only screen and (max-width: 480px) {
  .interview__icon {
    font-size: 12px;
    padding: 4px;
    margin-right: 6px;
  }

  .interview__title {
    font-size: 22px;
  }

  .interview__head {
    font-size: 16px;
    padding: 0 0 6px 0;
  }
}



/* ------------------------- .section 共通 ------------------------- */
#contents_box .section * {
  box-sizing: border-box;
  font-weight: bold;
}

#contents_box .section:last-child {
  margin-bottom: 100px;
}

#contents_box .section h5,
#contents_box .section h6 {
  margin: 0;
}

#contents_box .section {
  width: 100%;
  margin: 100px auto 0;
  line-height: 1.3;
}

#contents_box .section__title {
  color: #3278a9;
  font-size: 44px;
}

#contents_box .section__title-sub {
  font-size: 22px;
  background: #eff4f9;
  border-radius: 5px;
  padding: 15px;
}

#contents_box .section__title-sub span {
  font-size: 32px;
  color: #3278a9;
  padding: 0 10px;
  vertical-align: sub;
}

#contents_box .section__head {
  border-bottom: 2px dotted #262626;
  font-size: 36px;
  line-height: 1.3;
  padding: 0 0 15px 0;
}

#contents_box .section__text {
  font-size: 18px;
  line-height: 1.8;
}

#contents_box .list .section__text {
  padding: 0 10px;
}

.interview .shadow .section__text {
  font-size: 16px!important;
}


#contents_box .section__text b {
  background: #fdf1be;
  padding: 5px 10px;
  margin-right: 15px;
}

#contents_box .section__chap {
  display: block;
  font-size: 16px;
}



@media screen and (max-width: 768px) {
  #contents_box .section {
    margin: 80px auto 0;
  }

  #contents_box .section:last-child {
    margin-bottom: 80px;
  }

  #contents_box .section__title {
    font-size: 32px;
  }

  #contents_box .section__title-sub {
    font-size: 18px;
    border-radius: 4px;
    padding: 12px;
  }

  #contents_box .section__title-sub span {
    font-size: 24px;
    padding: 0 8px;
  }

  #contents_box .section__head {
    font-size: 28px;
    padding: 0 0 12px 0;
  }

  #contents_box .section__text {
    font-size: 16px;
  }

  #contents_box .list .section__text {
    padding: 0 8px;
  }

  .interview .shadow .section__text {
    font-size: 14px!important;
  }


  #contents_box .section__text b {
    padding: 4px 8px;
    margin-right: 12px;
  }

  #contents_box .section__chap {
    font-size: 14px;
  }
}


@media screen and (max-width: 480px) {
  #contents_box .section {
    margin: 60px auto 0;
  }

  #contents_box .section:last-child {
    margin-bottom: 60px;
  }

  #contents_box .section__title {
    font-size: 26px;
  }

  #contents_box .section__title-sub {
    font-size: 16px;
    border-radius: 3px;
    padding: 8px;
  }

  #contents_box .section__title-sub span {
    font-size: 18px;
    padding: 0 6px;
  }

  #contents_box .section__head {
    font-size: 22px;
    padding: 0 0 8px 0;
  }

  #contents_box .section__text {
    font-size: 14px;
  }

  #contents_box .list .section__text {
    padding: 0 6px;
  }

  .interview .shadow .section__text {
    font-size: 12px!important;
  }


  #contents_box .section__text b {
    padding: 3px 6px;
    margin-right: 8px;
  }

  #contents_box .section__chap {
    font-size: 12px;
  }
}
