@charset "UTF-8";

/* common */

body {
  line-height: 1.4;
}

:where(.p-hiketsu) img,
:where(.p-hiketsu) svg,
:where(.p-hiketsu) video {
  width: 100%;
  height: auto;
  vertical-align: middle;
}

.pc {
  display: block;
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .sp {
    display: block;
  }
}

a {
  transition: all .5s;
  text-decoration: none;
  cursor: pointer;
}

a:hover {
  opacity: .7;
}

@media screen and (max-width: 768px) {
  a:hover {
    opacity: 1;
  }
}

.lp__ttl {
  font-family: "M PLUS 2", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  color: #0064be;
  font-size: min(calc((64/1500)*100vw), 64px);
  line-height: 1.3;
  letter-spacing: .02em;
  transform: rotate(-13deg) skew(-10deg);
  position: absolute;
  top: min(calc((95 / 1500)* 100vw), 95px);
  left: min(calc((162 / 1500)* 100vw), 162px);
}

@media screen and (max-width: 768px) {
  .lp__ttl {
    font-size: calc((64/750)*100vw);
    letter-spacing: 0;
    top: 0;
    left: 2.5%;
    right: 0;
    margin: auto;
    width: fit-content;
    height: fit-content;
    text-indent: -0.5em;
  }
}


/* .contents */

.contents {
  /* padding: 0 min(calc((50 / 1500)* 100vw), 50px); */
  padding: 0 min(calc((50 / 1500)* 100vw), 0);
  background: #e2eef7;
  min-height: min(calc((4693 / 1500)* 100vw), 4693px);
  min-height: min(calc((4571 / 1500)* 100vw), 4571px);
  box-sizing: border-box;
}

@media screen and (max-width: 1000px) {
  .contents {
    min-height: min(calc((4673 / 1500)* 100vw), 4683px);
  }
}

@media screen and (max-width: 768px) {
  .contents {
    min-height: auto;
    padding: 0;
  }
}

.contents__inner {
  max-width: 1360px;
  margin: 0 auto;
  padding: 0 7px;
  background-color: #fff;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .contents__inner {
    padding: 0;
  }
}

/* 「オープンキャンパス予約はこちら！」ボタン */
.btn-reserve {
  display: block;
  position: absolute;
  /* right: min(calc((116 / 1500)* 100vw), 116px); */
  right: min(calc((280 / 1500)* 100vw), 280px);
  top: 0;
  /* margin-top: min(calc((606 / 1500)* 100vw), 606px); */
  margin-top: min(calc((620 / 1500)* 100vw), 620px);
  width: min(calc((215 / 1500)* 100vw), 215px);
  height: min(calc((189 / 1500)* 100vw), 189px);
  z-index: 2;
  transition: all .5s;
  transform: scale(1.2);
}

/* @media screen and (max-width: 1460px) {
  .btn-reserve {
    margin-top: min(calc((590 / 1500)* 100vw), 590px);
  }
} */

@media screen and (max-width: 768px) {
  .btn-reserve {
    margin-top: calc((583 / 750)* 100vw);
    width: calc((195 / 750)* 100vw);
    height: 100%;
    right: calc((8 / 750)* 100vw);
    transform: scale(1);
  }
}

@media screen and (max-width: 768px) {
  body:not(.is-mobile) .btn-reserve {
    margin-top: calc((558 / 750)* 100vw);
  }
}

.btn-reserve:hover {
  opacity: .7;
}

@media screen and (max-width: 768px) {
  .btn-reserve:hover {
    opacity: 1;
  }
}

.btn-reserve__inner {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.btn-reserve__inner__txt {
  /* font-family: "ヒラギノ角ゴ Std W6"; */
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: min(calc((16 / 1500)* 100vw), 16px);
  line-height: 1.47;
  letter-spacing: 0;
  text-align: center;
  color: #fff;
  position: absolute;
  padding-right: min(calc((49 / 1500)* 100vw), 49px);
}

@media screen and (max-width: 768px) {
  .btn-reserve__inner__txt {
    font-size: calc((23/750)*100vw);
    line-height: 1.09;
    padding-right: 0;
    text-align: left;
    margin: calc((-10 / 750)* 100vw) 0 0 calc((-61 / 750)* 100vw);
  }
}

@media screen and (max-width: 768px) {
  .btn-reserve__inner__txt__s {
    font-size: calc((16.5/750)*100vw);
    margin-top: calc((4 / 750)* 100vw);
    display: block;
  }
}

/* 「LINE友だち追加」ボタン */
.btn-line {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.2em;
  line-height: 1;
  position: absolute;
  right: min(calc((30 / 1500)* 100vw), 30px);
  top: 0;
  margin-top: min(calc((670 / 1500)* 100vw), 670px);
  width: min(calc((210 / 1500)* 100vw), 210px);
  height: min(calc((168 / 1500)* 100vw), 168px);
  padding-left: calc((10 / 1500) * 100vw);
  z-index: 1;
  transition: all .5s;
  transform: scale(1.2);
}

.btn-line::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: #ffe618;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

.btn-line span {
  line-height: 1.3;
  font-size: min(calc((15/1500)*100vw), 15px);
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #01b901;
}

.btn-line span > br {
  display: none;
}

.btn-line img {
  width: 60%;
}

@media screen and (max-width: 768px) {
  .btn-line {
    margin-top: calc((583 / 750)* 100vw);
    width: calc((195 / 750)* 100vw);
    height: calc((170 / 750)* 100vw);
    right: calc((190 / 750)* 100vw);
    padding-left: calc((10 / 750) * 100vw);
    transform: scale(1);
  }
  .btn-line span {
    font-size: min(calc((18/750)*100vw), 16px);
  }
  .btn-line span > br {
    display: block;
  }
  .btn-line img {
    width: 70%;
  }
}

/* ヘッダー */

.header {
  background-color: #fff;
  padding: min(calc((30/1500)*100vw), 30px);
}

@media screen and (max-width: 768px) {
  .header {
    /* padding: calc((33 / 750)* 100vw); */
    padding: calc((33 / 750)* 100vw) calc((23 / 750)* 100vw);
  }
}

.header__inner {
  max-width: 1360px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.header__inner__a {
  display: block;
  width: min(calc((350/1500)*100vw), 350px);
  margin: 0 0 0 min(calc((20/1500)*100vw), 20px);
}

@media screen and (max-width: 768px) {
  .header__inner__a {
    width: calc((377 / 750)* 100vw);
    margin: 0;
  }
}

.header__inner__line {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  column-gap: 1em;
  flex: 1;
  & > span {
    display: block;
    text-align: right;
    font-family: hiragino-kaku-gothic-pron, sans-serif;
    font-size: min(calc((18/1500)*100vw), 18px);
    font-weight: 700;
    color: #01b901;
  }
  & > img {
    width: calc((150 / 1500) * 100vw);
    max-width: 150px;
  }
}

@media screen and (max-width: 768px) {
  .header__inner__line {
    flex-direction: column;
    align-items: flex-end;
    row-gap: 0.2em;
    & > span {
      display: none;
    }
    & > img {
      width: calc((160 / 750) * 100vw);
    }
  }
}

/* フッター */

.footer {
  background-color: #0064be;
  padding: min(calc((13 / 1500)* 100vw), 13px) min(calc((50 / 1500)* 100vw), 50px);
}

@media screen and (max-width: 768px) {
  .footer {
    padding: calc((12 / 750)* 100vw) calc((10 / 750)* 100vw) calc((14 / 750)* 100vw);
  }
}

.footer__inner {
  display: flex;
  justify-content: center;
  max-width: 1360px;
  margin: 0 auto;
  color: #fff;
  /* font-family: "ヒラギノ角ゴ Std W4"; */
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-weight: 300;
  font-style: normal;
  text-shadow: 0 0 0 #000;
  font-size: min(calc((23 / 1500)* 100vw), 23px);
  line-height: 1.4;
  letter-spacing: 0.02em;
}

@media screen and (max-width: 768px) {
  .footer__inner {
    font-size: calc((18/750)*100vw);
  }
}

.footer__inner__tel {
  padding-left: min(calc((50 / 1500)* 100vw), 50px);
}

.footer__inner__tel .tel-link a {
  color: #fff;
}


/* メインビジュアル */

.main-visual {
  background-color: #e6f0fa;
  overflow: hidden;
}

.main-visual__inner {
  position: relative;
  max-width: 1460px;
  box-sizing: border-box;
  margin: 0 auto;
}

/* 予約はこちらボタン */

.main-visual .btn-reserve {
  margin-top: min(calc((520 / 1500)* 100vw), 520px);
  left: min(calc((140 / 1500)* 100vw), 140px);
}

@media screen and (max-width: 768px) {
  .main-visual .btn-reserve {
    margin-top: calc((490 / 750)* 100vw);
    left: calc((50 / 750)* 100vw);
  }
}

@media screen and (max-width: 768px) {
  body:not(.is-mobile) .main-visual .btn-reserve {
    margin-top: calc((490 / 750)* 100vw);
    left: calc((50 / 750)* 100vw);
  }
}

/* 「LINE友だち追加」ボタン */
.main-visual .btn-line {
  margin-top: min(calc((550 / 1500)* 100vw), 550px);
  left: min(calc((400 / 1500)* 100vw), 400px);
}

.main-visual .btn-line::before {
  background-color: #ffe618;
}

@media screen and (max-width: 768px) {
  .main-visual .btn-line {
    margin-top: calc((490 / 750)* 100vw);
    left: calc((240 / 750)* 100vw);
  }
  body:not(.is-mobile) .main-visual .btn-line {
    margin-top: calc((490 / 750)* 100vw);
    left: calc((240 / 750)* 100vw);
  }
}

.main-visual__videowrap {
  position: relative;
  max-width: 1460px;
  max-height: min(calc((735 / 1500)* 100vw), 735px);
  box-sizing: border-box;
  margin: 0 auto;
  padding: 0 min(calc((50 / 1500)* 100vw), 50px);
}

@media screen and (max-width: 768px) {
  .main-visual__videowrap {
    max-height: calc((400 / 750)* 100vw);
    padding: 0;
  }
}


.main-visual__videowrap video {
  opacity: 0;
}

.main-visual__videowrap video.animated {
  animation: video_fadein 1s ease forwards;
}

@keyframes video_fadein {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.main-visual__videowrap__img-txt01 {
  position: absolute;
  top: min(calc((50 / 1500)* 100vw), 50px);
  left: 0;
  right: 0;
  margin: auto;
  width: min(calc((624 / 1500)* 100vw), 624px);
}

@media screen and (max-width: 768px) {
  .main-visual__videowrap__img-txt01 {
    top: calc((12 / 750)* 100vw);
    width: calc((346 / 750)* 100vw);
  }
}

.main-visual__videowrap__img-txt02 {
  position: absolute;
  top: min(calc((338 / 1500)* 100vw), 338px);
  left: 0;
  right: 0;
  margin: auto;
  width: min(calc((214 / 1500)* 100vw), 214px);
}

@media screen and (max-width: 768px) {
  .main-visual__videowrap__img-txt02 {
    top: calc((183 / 750)* 100vw);
    left: calc((-1 / 750)* 100vw);
    width: calc((124 / 750)* 100vw);
  }
}

.main-visual__videowrap__img-ttl {
  position: absolute;
  bottom: min(calc((-2 / 1500)* 100vw), -2px);
  left: 0;
  right: 0;
  margin: auto;
  width: min(calc((1166 / 1500)* 100vw), 1166px);
}

@media screen and (max-width: 768px) {
  .main-visual__videowrap__img-ttl {
    bottom: calc((-3 / 750)* 100vw);
    left: calc((-11 / 750)* 100vw);
    width: calc((642 / 750)* 100vw);
  }
}

/* オープンキャンパスへのリンク */

.opencampus__link {
  display: flex;
  justify-content: center;
  background-color: #e61e19;
  padding: min(calc((15 / 1500)* 100vw), 15px) min(calc((14 / 1500)* 100vw), 14px) min(calc((13 / 1500)* 100vw), 13px);
}

@media screen and (max-width: 768px) {
  .opencampus__link {
    padding: calc((8 / 750)* 100vw) calc((10 / 750)* 100vw) calc((7 / 750)* 100vw);
  }
}

.opencampus__link__txt {
  /* font-family: "A-OTF UD新ゴ Pro DB"; */
  font-family: "M PLUS 2", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: min(calc((32/1500)*100vw), 32px);
  line-height: 1;
  letter-spacing: 0.06em;
  text-align: center;
  color: #fff;
  position: relative;
}

@media screen and (max-width: 768px) {
  .opencampus__link__txt {
    font-size: calc((34.5/750)*100vw);
    line-height: 1.35;
  }
}

.opencampus__link__txt::after {
  content: '';
  display: inline-block;
  width: min(calc((22/1500)*100vw), 22px);
  height: min(calc((30/1500)*100vw), 30px);
  background: url(../images/arrow_right_white.svg) no-repeat center / cover;
  position: relative;
  top: min(calc((2/1500)*100vw), 2px);
}

@media screen and (max-width: 768px) {
  .opencampus__link__txt::after {
    width: calc((22 / 750)* 100vw);
    height: calc((37 / 750)* 100vw);
    top: calc((5 / 750)* 100vw);
  }
}


/* ハッシュタグエリア */

#hashtag {
  padding: 0 min(calc((50/1500)*100vw), 50px);
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 768px) {
  #hashtag {
    padding: 0;
  }
}

.hashtag_inner {
  max-width: 1360px;
  margin: 0 auto;
  position: relative;
}

.hashtag__box {
  display: flex;
  overflow: hidden;
  border-bottom: 1.5px solid #0064be;
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
  .hashtag__box {
    border-bottom: 1px solid #0064be;
  }
}

_:-ms-lang(x)::-ms-backdrop,
.hashtag {
  display: -ms-grid;
  overflow: hidden;
}

.hashtag__box:nth-child(3) {
  background: none;
}

.hashtag__list {
  display: flex;
  list-style: none;
}

.hashtag__list__left {
  animation: infinity-scroll-left 20s infinite linear 0.5s both;
}

.hashtag__list__left._2 {
  animation: infinity-scroll-left 30s infinite linear 0.5s both;
}

.hashtag__list__right {
  animation: infinity-scroll-right 20s infinite linear 0.5s both;
}

@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-100%);
  }
}

@keyframes infinity-scroll-right {
  from {
    transform: translateX(-100%);
  }

  to {
    transform: translateX(0%);
  }
}

.hashtag__item__a {
  display: flex;
  align-items: center;
  text-decoration: none;
  padding: min(calc((15/1500)*100vw), 15px) min(calc((30/1500)*100vw), 30px) min(calc((14/1500)*100vw), 14px) min(calc((5/1500)*100vw), 5px);
  height: 100%;
  box-sizing: border-box;
  transition: all .5s;
  position: relative;
}

@media screen and (max-width: 768px) {
  .hashtag__item__a {
    padding: calc((13 / 750)* 100vw) 0 calc((11 / 750)* 100vw) calc((18 / 750)* 100vw);
  }
}

.hashtag__item__a:hover {
  background-color: #0064be;
  opacity: 1;
}

@media screen and (max-width: 768px) {
  .hashtag__item__a:hover {
    background-color: inherit;
  }
}

.hashtag__item__a:hover::before {
  background-color: #231815;
  transition: all .5s;
  transform: translateY(0);
}

.hashtag__item__txt {
  /* font-family: "A-OTF UD新ゴ Pro R"; */
  font-family: "M PLUS 2", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  color: #231815;
  font-size: min(calc((58.9/1500)*100vw), 58.9px);
  line-height: 1;
  letter-spacing: .02em;
  font-weight: normal;
  white-space: nowrap;
}

@media screen and (max-width: 768px) {
  .hashtag__item__txt {
    font-size: calc((57/750)*100vw);
  }
}

.hashtag__item__txt .ff_2 {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-weight: 400;
  font-style: normal;
}

.hashtag__item__a:hover .hashtag__item__txt {
  color: #fff;
}

@media screen and (max-width: 768px) {
  .hashtag__item__a:hover .hashtag__item__txt {
    color: #231815;
  }
}

.hashtag__item__img {
  width: min(calc((80/1500)*100vw), 80px);
  margin: 0 10px 0 8px;
}

@media screen and (max-width: 768px) {
  .hashtag__item__img {
    width: calc((80 / 750)* 100vw);
    margin: 0 calc((20 / 750)* 100vw);
  }
}

.hashtag__box__hover:hover .hashtag__list__right,
.hashtag__box__hover:hover .hashtag__list__left {
  animation-play-state: paused;
}

#scrollControlButton {
  width: 30px;
  cursor: pointer;
  transition: all .5s;
  display: block;
  position: absolute;
  bottom: min(calc((-50 / 1500)* 100vw), -50px);
  right: min(calc((20 / 1500)* 100vw), 20px);
}

@media screen and (max-width: 1460px) {
  #scrollControlButton {
    bottom: min(calc((-40 / 1500)* 100vw), -40px);
  }
}

@media screen and (max-width: 768px) {
  #scrollControlButton {
    bottom: -35px;
    right: 5px;
  }
}

#scrollControlButton:hover {
  opacity: .5;
}

@media screen and (max-width: 768px) {
  #scrollControlButton:hover {
    opacity: 1;
  }
}


/* 1分でわかるニチブンの魅力！ */

.charm {
  position: relative;
  z-index: 1;
}

.charm__ttl {
  top: min(calc((95 / 1500)* 100vw), 95px);
  left: min(calc((162 / 1500)* 100vw), 162px);
}

@media screen and (max-width: 768px) {
  .charm__ttl {
    font-size: calc((65/750)*100vw);
    top: 0;
    left: 0;
    right: 0;
    margin: calc((26 / 750)* 100vw) auto 0;
    width: fit-content;
    height: fit-content;
  }
}

.charm__ttl.effect_d {
  opacity: 0;
}

.charm__ttl.effect_d.fadein {
  animation: effect_d_charm__ttl 1s ease forwards;
  animation-delay: 0.5s;
}

@keyframes effect_d_charm__ttl {
  0% {
    opacity: 0;
    transform: rotate(-13deg) skew(-10deg);
  }

  100% {
    opacity: 1;
    transform: rotate(-13deg) skew(-10deg);
  }
}

.charm__ttl__2 {
  padding-left: 1.5em;
}

.charm__box {
  padding-top: min(calc((92 / 1500)* 100vw), 92px);
}

@media screen and (max-width: 768px) {
  .charm__box {
    padding-top: calc((120 / 750)* 100vw);
  }
}

.charm__box+.charm__box {
  padding-top: 0;
}

.charm__box._2 {
  margin-top: -15.5%;
}

@media screen and (max-width: 768px) {
  .charm__box._2 {
    margin-top: calc((-118 / 750)* 100vw);
  }
}

.charm__box._3 {
  margin-top: -23.7%;
}

@media screen and (max-width: 768px) {
  .charm__box._3 {
    margin-top: 0;
  }
}

.charm__box__inner {
  position: relative;
}

.charm__box__imgwrap {
  mix-blend-mode: multiply;
}

@media screen and (max-width: 768px) {
  .charm__box._2 .charm__box__imgwrap.sp {
    margin-top: calc((-180 / 750)* 100vw);
  }
}

@media screen and (max-width: 768px) {
  .charm__box._3 .charm__box__imgwrap.sp._3-1 {
    margin-top: calc((-190 / 750)* 100vw);
  }
}

@media screen and (max-width: 768px) {
  .charm__box._3 .charm__box__imgwrap.sp._3-2 {
    margin-top: calc((-196 / 750)* 100vw);
  }
}

.charm__box__txtwrap {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 1;
  width: fit-content;
  height: fit-content;
  margin: auto;
  color: #fff;
  text-shadow: 0px 0px 15px #011222, 0px 0px 15px #011222;
}

@media screen and (max-width: 1000px) {
  .charm__box__txtwrap {
    text-shadow: 0px 0px 15px #011222, 0px 0px 15px #011222;
  }
}

@media screen and (max-width: 768px) {
  .charm__box__txtwrap {
    text-shadow: 0px 0px 10px #011222, 0px 0px 10px #011222;
  }
}

.charm__box._2 .charm__box__txtwrap._1 {
  top: min(calc((-68 / 1500)* 100vw), -68px);
  left: min(calc((190 / 1500)* 100vw), 190px);
  right: auto;
}

@media screen and (max-width: 768px) {
  .charm__box._2 .charm__box__txtwrap._1 {
    top: -38%;
    left: 0;
    right: 0;
  }
}

@media screen and (max-width: 500px) {
  .charm__box._2 .charm__box__txtwrap._1 {
    top: calc((-277 / 750)* 100vw);
  }
}

.charm__box._2 .charm__box__txtwrap._2 {
  top: min(calc((118 / 1500)* 100vw), 118px);
  left: min(calc((835 / 1500)* 100vw), 835px);
  right: auto;
}

@media screen and (max-width: 768px) {
  .charm__box._2 .charm__box__txtwrap._2 {
    top: calc((373 / 750)* 100vw);
    left: 0;
    right: 0;
  }
}

.charm__box._3 .charm__box__txtwrap._1 {
  top: min(calc((125 / 1500)* 100vw), 125px);
  left: min(calc((210 / 1500)* 100vw), 210px);
  right: auto;
}

@media screen and (max-width: 768px) {
  .charm__box._3 .charm__box__txtwrap._1 {
    top: 0;
    left: 0;
    right: 0;
    margin-top: calc((150 / 750)* 100vw);
  }
}

.charm__box._3 .charm__box__txtwrap._2 {
  top: min(calc((-30 / 1500)* 100vw), -30px);
  left: min(calc((728 / 1500)* 100vw), 728px);
  right: auto;
}

@media screen and (max-width: 768px) {
  .charm__box._3 .charm__box__txtwrap._2 {
    top: 0;
    left: 2%;
    right: 0;
    margin-top: calc((545 / 750)* 100vw);
  }
}

.charm__box__txtwrap__ttl {
  /* font-family: "A-OTF UD新ゴ Pro M"; */
  font-family: "M PLUS 2", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: min(calc((39/1500)*100vw), 39px);
  line-height: 1.2;
  letter-spacing: .02em;
  text-align: center;
  margin-top: min(calc((20/1500)*100vw), 20px);
  ;
}

@media screen and (max-width: 768px) {
  .charm__box__txtwrap__ttl {
    font-size: calc((46/750)*100vw);
    margin-top: 0;
  }
}

.charm__box__txtwrap__ttl__m {
  display: block;
}

.charm__box._3 .charm__box__txtwrap._1 .charm__box__txtwrap__ttl__m {
  display: inline-block;
  text-align: left;
}

.charm__box__txtwrap__ttl__l {
  font-size: min(calc((52/1500)*100vw), 52px);
  line-height: 1.2;
  letter-spacing: .06em;
  margin-top: min(calc((-20 / 1500)* 100vw), -20px);
  display: block;
}

@media screen and (max-width: 1000px) {
  .charm__box__txtwrap__ttl__l {
    margin-top: min(calc((-10 / 1500)* 100vw), -10px);
  }
}

@media screen and (max-width: 768px) {
  .charm__box__txtwrap__ttl__l {
    font-size: calc((60/750)*100vw);
    margin-top: calc((-19 / 750)* 100vw);
  }
}

.charm__box._2 .charm__box__txtwrap._1 .charm__box__txtwrap__ttl__l,
.charm__box._2 .charm__box__txtwrap._2 .charm__box__txtwrap__ttl__l {
  margin-top: min(calc((-10 / 1500)* 100vw), -10px);
}

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

  .charm__box._2 .charm__box__txtwrap._1 .charm__box__txtwrap__ttl__l,
  .charm__box._2 .charm__box__txtwrap._2 .charm__box__txtwrap__ttl__l {
    margin-top: min(calc((-5 / 1500)* 100vw), -5px);
  }
}

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

  .charm__box._2 .charm__box__txtwrap._1 .charm__box__txtwrap__ttl__l,
  .charm__box._2 .charm__box__txtwrap._2 .charm__box__txtwrap__ttl__l {
    margin-top: calc((-12 / 750)* 100vw);
  }
}

.charm__box._3 .charm__box__txtwrap._1 .charm__box__txtwrap__ttl__l {
  display: inline-block;
  white-space: nowrap
}

.charm__box__txtwrap__ttl__l__num,
.charm__box__txtwrap__ttl__l__unit,
.charm__box__txtwrap__ttl__l__no {
  color: #ffe619;
}

.charm__box__txtwrap__ttl__l__num {
  font-family: "din-2014", sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: min(calc((96/1500)*100vw), 96px);
  line-height: 1;
  letter-spacing: -.05em;
  display: inline-block;
  vertical-align: -0.05em;
}

@media screen and (max-width: 768px) {
  .charm__box__txtwrap__ttl__l__num {
    font-size: calc((112/750)*100vw);
    letter-spacing: -.08em;
  }
}

.charm__box._2 .charm__box__txtwrap._1 .charm__box__txtwrap__ttl__l__num,
.charm__box._2 .charm__box__txtwrap._2 .charm__box__txtwrap__ttl__l__num {
  font-size: min(calc((130/1500)*100vw), 130px);
  letter-spacing: -.02em;
  vertical-align: 0;
}

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

  .charm__box._2 .charm__box__txtwrap._1 .charm__box__txtwrap__ttl__l__num,
  .charm__box._2 .charm__box__txtwrap._2 .charm__box__txtwrap__ttl__l__num {
    font-size: calc((159/750)*100vw);
    letter-spacing: -.02em;
  }
}

.charm__box._3 .charm__box__txtwrap._1 .charm__box__txtwrap__ttl__l__num {
  margin-left: -0.3em;
  font-size: min(calc((110/1500)*100vw), 130px);
  vertical-align: 0;
}

@media screen and (max-width: 768px) {
  .charm__box._3 .charm__box__txtwrap._1 .charm__box__txtwrap__ttl__l__num {
    margin-left: -0.3em;
    font-size: calc((130/750)*100vw);
  }
}

.charm__box__txtwrap__ttl__l__unit {
  /* font-family: "A-OTF UD新ゴ Pro M"; */
  font-family: "M PLUS 2", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  margin-left: -0.25em;
}

@media screen and (max-width: 768px) {
  .charm__box__txtwrap__ttl__l__unit {
    margin-left: -0.1em;
  }
}

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

  .charm__box._2 .charm__box__txtwrap._1 .charm__box__txtwrap__ttl__l__unit,
  .charm__box._2 .charm__box__txtwrap._2 .charm__box__txtwrap__ttl__l__unit {
    margin-left: -0.3em;
  }
}

.charm__box__txtwrap__ttl__l__no {
  font-family: "din-2014", sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: min(calc((74/1500)*100vw), 74px);
  letter-spacing: 0.06em;
}

@media screen and (max-width: 768px) {
  .charm__box__txtwrap__ttl__l__no {
    font-size: calc((77/750)*100vw);
  }
}

.charm__box__txtwrap__ttl__l__txt {
  /* font-family: "A-OTF UD新ゴ Pro M"; */
  font-family: "M PLUS 2", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  margin-left: -0.1em;
}

@media screen and (max-width: 768px) {
  .charm__box__txtwrap__ttl__l__txt {
    /* font-family: "A-OTF UD新ゴ Pro M"; */
    font-family: "M PLUS 2", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    margin-left: -0.2em;
  }
}

.charm__box__txtwrap__desc {
  /* font-family: "ヒラギノ角ゴ Std W6"; */
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: min(calc((21/1500)*100vw), 21px);
  line-height: 1.33;
  letter-spacing: 0;
  text-align: center;
  text-shadow: 0px 0px 15px #011222, 0px 0px 15px #011222, 0px 0px 15px #011222;
  margin-top: min(calc((-5 / 1500)* 100vw), -5px);
}

@media screen and (max-width: 1000px) {
  .charm__box__txtwrap__desc {
    text-shadow: 0px 0px 10px #011222, 0px 0px 10px #011222, 0px 0px 15px #011222;
    margin-top: 0;
  }
}

@media screen and (max-width: 768px) {
  .charm__box__txtwrap__desc {
    font-size: calc((24.5/750)*100vw);
    text-shadow: 0px 0px 10px #011222, 0px 0px 10px #011222, 0px 0px 10px #011222;
    margin-top: calc((-6 / 750)* 100vw);
  }
}

.charm__box__txtwrap__desc+.charm__box__txtwrap__desc {
  margin-top: min(calc((10/1500)*100vw), 10px);
}

@media screen and (max-width: 768px) {
  .charm__box__txtwrap__desc+.charm__box__txtwrap__desc {
    margin-top: calc((8 / 750)* 100vw);
  }
}

.charm__box__txtwrap__chuki {
  /* font-family: ヒラギノ角ゴ Std W4; */
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: min(calc((19/1500)*100vw), 19px);
  line-height: 1.4;
  letter-spacing: 0;
  text-align: center;
  text-shadow: 0px 0px 15px #011222, 0px 0px 15px #011222, 0px 0px 15px #011222;
  text-indent: -1em;
  padding-left: 1em;
}

@media screen and (max-width: 768px) {
  .charm__box__txtwrap__chuki {
    font-size: calc((23/750)*100vw);
    text-shadow: 0px 0px 10px #011222, 0px 0px 10px #011222, 0px 0px 10px #011222;
  }
}

.charm__box__txtwrap__desc+.charm__box__txtwrap__chuki {
  margin-top: min(calc((8/1500)*100vw), 8px);
}

@media screen and (max-width: 768px) {
  .charm__box__txtwrap__desc+.charm__box__txtwrap__chuki {
    margin-top: calc((6 / 750)* 100vw);
    font-size: calc((21.5/750)*100vw);
  }
}

.charm__box._2 .charm__box__txtwrap._1 .charm__box__txtwrap__chuki {
  margin-top: min(calc((-5/1500)*100vw), -5px);
}

@media screen and (max-width: 768px) {
  .charm__box._2 .charm__box__txtwrap._1 .charm__box__txtwrap__chuki {
    margin-top: calc((-13 / 750)* 100vw);
  }
}

.charm__box__txtwrap__bullets-ul {
  /* font-family: "ヒラギノ角ゴ Std W6"; */
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: min(calc((21/1500)*100vw), 21px);
  line-height: 1.33;
  letter-spacing: 0;
  text-align: left;
}

@media screen and (max-width: 768px) {
  .charm__box__txtwrap__bullets-ul {
    font-size: calc((24/750)*100vw);
  }
}

.charm__box__txtwrap__bullets-ul__li {
  text-indent: -1em;
  padding-left: 1em;
}

.charm__box__txtwrap__bullets-ul__li+.charm__box__txtwrap__bullets-ul__li {
  margin-top: min(calc((3/1500)*100vw), 3px);
}

.charm__box__txtwrap__bullets-ul__li__yellowtxt {
  color: #ffe619;
}


/* 公務員就職に強いニチブン ４つのヒケツ */

.secret {
  position: relative;
  z-index: 1;
}

.secret__ttl {
  position: relative;
  top: 0;
  margin-top: -11.7%;
}

@media screen and (max-width: 768px) {
  .secret__ttl {
    margin-top: -7.7%;
  }
}

@media screen and (max-width: 500px) {
  .secret__ttl {
    margin-top: calc((-48 / 750)* 100vw);
  }
}

.secret__ttl__1.pc {
  display: inline-block;
}

@media screen and (max-width: 768px) {
  .secret__ttl__1.pc {
    display: none;
  }
}

.secret__ttl__2.pc {
  display: inline-block;
  padding-left: 9.2em;
}

@media screen and (max-width: 768px) {
  .secret__ttl__2.pc {
    display: none;
  }
}

.secret__ttl__2.sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .secret__ttl__2.sp {
    display: inline-block;
    padding-left: 0;
  }
}

.secret__rhombus {
  margin-top: -6.5%;
  position: relative;
  top: 0;
}

@media screen and (max-width: 768px) {
  .secret__rhombus {
    z-index: -1;
  }
}

.secret__list {
  display: flex;
  max-width: min(calc((1060 / 1500)* 100vw), 1060px);
  padding: 0 min(calc((30 / 1500)* 100vw), 30px);
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .secret__list {
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0 20px;
    max-width: inherit;
  }
}

.secret__list__item {
  width: min(calc((212 / 1500)* 100vw), 212px);
  position: absolute;
}

@media screen and (max-width: 768px) {
  .secret__list__item {
    width: calc((300/750)*100vw);
  }
}

.secret__list__item:nth-child(1) {
  margin-top: 24.5%;
  top: 0;
  left: min(calc((177 / 1500)* 100vw), 177px);
}

@media screen and (max-width: 768px) {
  .secret__list__item:nth-child(1) {
    margin-top: calc((255 / 750)* 100vw);
    left: calc((46 / 750)* 100vw);
    width: calc((310 / 750)* 100vw);
  }
}

.secret__list__item:nth-child(2) {
  margin-top: 20.0%;
  top: 0;
  left: min(calc((385 / 1500)* 100vw), 385px);
}

@media screen and (max-width: 768px) {
  .secret__list__item:nth-child(2) {
    margin-top: calc((172 / 750)* 100vw);
    left: calc((405 / 750)* 100vw);
  }
}

.secret__list__item:nth-child(3) {
  margin-top: 15.5%;
  top: 0;
  left: min(calc((645 / 1500)* 100vw), 645px);
  width: min(calc((229 / 1500)* 100vw), 229px);
}

@media screen and (max-width: 768px) {
  .secret__list__item:nth-child(3) {
    margin-top: calc((760 / 750)* 100vw);
    left: calc((46 / 750)* 100vw);
    width: calc((310 / 750)* 100vw);
  }
}

@media screen and (max-width: 768px) {
  body:not(.is-mobile) .secret__list__item:nth-child(3) {
    margin-top: calc((745 / 750)* 100vw);
    width: calc((310 / 750)* 100vw);
  }
}

.secret__list__item:nth-child(4) {
  margin-top: 10.9%;
  top: 0;
  left: min(calc((915 / 1500)* 100vw), 915px);
  width: min(calc((229 / 1500)* 100vw), 229px);
}

@media screen and (max-width: 768px) {
  .secret__list__item:nth-child(4) {
    margin-top: calc((674 / 750)* 100vw);
    left: calc((405 / 750)* 100vw);
    width: calc((300/750)*100vw);
  }
}

@media screen and (max-width: 768px) {
  body:not(.is-mobile) .secret__list__item:nth-child(4) {
    margin-top: calc((654 / 750)* 100vw);
    width: calc((300/750)*100vw);
  }
}

.secret__list__item+.secret__list__item {
  margin-left: min(calc((50 / 1500)* 100vw), 50px);
}

@media screen and (max-width: 768px) {
  .secret__list__item+.secret__list__item {
    margin-left: 0;
  }
}

.secret__list__item__ttl__triangle {
  display: block;
  width: min(calc((86 / 1500)* 100vw), 86px);
  height: min(calc((76 / 1500)* 100vw), 76px);
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 768px) {
  .secret__list__item__ttl__triangle {
    width: calc((102 / 750)* 100vw);
    height: calc((90 / 750)* 100vw);
  }
}

.secret__list__item__ttl__triangle__num {
  font-family: "din-2014", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: min(calc((53 / 1500)* 100vw), 53px);
  line-height: 1;
  text-align: center;
  color: #ffe619;
  position: absolute;
  left: min(calc((10 / 1500)* 100vw), 10px);
}

@media screen and (max-width: 768px) {
  .secret__list__item__ttl__triangle__num {
    font-size: calc((56/750)*100vw);
    left: 14%;
  }
}

.secret__list__item__ttl__txt {
  /* font-family: "A-OTF UD新ゴ Pro M"; */
  font-family: "M PLUS 2", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  color: #0064be;
  font-size: min(calc((35/1500)*100vw), 35px);
  line-height: 1.25;
  letter-spacing: 0;
  transform: rotate(-13deg) skew(-10deg);
  display: block;
  margin-top: min(calc((-17 / 1500)* 100vw), -17px);
  position: relative;
  padding: 0 min(calc((5 / 1500)* 100vw), 5px);
  white-space: nowrap;
}

@media screen and (max-width: 1460px) {
  .secret__list__item__ttl__txt {
    margin-top: min(calc((-5 / 1500)* 100vw), -5px);
  }
}

@media screen and (max-width: 768px) {
  .secret__list__item__ttl__txt {
    font-size: calc((38/750)*100vw);
    margin-top: calc((-31 / 750)* 100vw);
    padding: 0 3%;
  }
}

.secret__list__item__ttl__txt::after {
  content: '';
  display: block;
  width: calc(100% + min(calc((10 / 1500)* 100vw), 10px));
  height: 0.4em;
  background: #ffe619;
  position: absolute;
  bottom: min(calc((-1 / 1500)* 100vw), -1px);
  left: min(calc((0 / 1500)* 100vw), 0px);
  z-index: -1;
}

.secret__list__item__desc {
  /* font-family: "ヒラギノ角ゴ Std W4"; */
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-weight: 300;
  font-style: normal;
  text-shadow: 0 0 0 #000;
  color: #231815;
  font-size: min(calc((19.2/1500)*100vw), 19.2px);
  line-height: 1.45;
  letter-spacing: 0;
  margin-top: min(calc((30 / 1500)* 100vw), 30px);
}

@media screen and (max-width: 1460px) {
  .secret__list__item__desc {
    margin-top: min(calc((40 / 1500)* 100vw), 40px);
  }
}

@media screen and (max-width: 768px) {
  .secret__list__item__desc {
    font-size: calc((22/750)*100vw);
    margin-top: calc((39 / 750)* 100vw);
  }
}


/* twocolumns共通 */

.twocolumns {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 768px) {
  .twocolumns {
    display: block;
    margin-top: calc((-167 / 750)* 100vw);
  }
}

.twocolumns.voice_access {
  flex-direction: row-reverse;
}

@media screen and (max-width: 768px) {
  .twocolumns.voice_access {
    flex-direction: inherit;
  }
}

.twocolumns>* {
  width: calc((100% - 7px) / 2);
  box-sizing: border-box;
  position: relative;
}

@media screen and (max-width: 768px) {
  .twocolumns>* {
    width: auto;
  }
}

.twocolumns>*:nth-child(odd) {
  margin-top: -11.3%;
}

@media screen and (max-width: 768px) {
  .twocolumns>*:nth-child(odd) {
    margin-top: 0;
  }
}

.twocolumns>*:nth-child(even) {
  margin-top: -23.2%;
}

@media screen and (max-width: 768px) {
  .twocolumns>*:nth-child(even) {
    margin-top: calc((-167 / 750)* 100vw);
  }
}

.twocolumns__green .twocolumns__svg .st0 {
  fill: #00A596;
}

.twocolumns__lightgreen .twocolumns__svg .st0 {
  fill: #aae6e6;
}

.twocolumns__img-tit {
  display: block;
  position: absolute;
  top: 0;
  pointer-events: none;
}

.twocolumns__ol {
  position: absolute;
  top: 0;
  left: min(calc((169 / 1500)* 100vw), 169px);
  margin-top: 44%;
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .twocolumns__ol {
    left: calc((-70 / 750)* 100vw);
    right: 0;
    margin: calc((293 / 750)* 100vw) auto 0;
    width: fit-content;
  }
}

.twocolumns__ol__li+.twocolumns__ol__li {
  margin-top: min(calc((13 / 1500)* 100vw), 13px);
}

@media screen and (max-width: 768px) {
  .twocolumns__ol__li+.twocolumns__ol__li {
    margin-top: calc((21 / 750)* 100vw);
  }
}

.twocolumns__ol__li__num {
  font-family: "din-2014", sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: min(calc((30 / 1500)* 100vw), 30px);
  line-height: 1;
  text-align: center;
  background-color: #ffe619;
  text-align: center;
  color: #0064be;
  border-radius: 50%;
  width: min(calc((37 / 1500)* 100vw), 37px);
  height: min(calc((37 / 1500)* 100vw), 37px);
  padding-top: min(calc((3 / 1500)* 100vw), 37px);
  display: inline-block;
}

@media screen and (max-width: 768px) {
  .twocolumns__ol__li__num {
    font-size: calc((40/750)*100vw);
    width: calc((46 / 750)* 100vw);
    height: calc((46 / 750)* 100vw);
    padding-top: calc((3 / 750)* 100vw);
  }
}

.twocolumns__ol__li__txt {
  /* font-family: "ヒラギノ角ゴ Std W6"; */
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #fff;
  font-size: min(calc((33/1500)*100vw), 33px);
  line-height: 1.13;
  letter-spacing: 0;
  padding-left: min(calc((10 / 1500)* 100vw), 10px);
  white-space: nowrap;
  display: inline-block;
}

@media screen and (max-width: 768px) {
  .twocolumns__ol__li__txt {
    font-size: calc((39/750)*100vw);
    padding-left: 0;
  }
}

.twocolumns__ol__li__txt-s {
  /* font-family: "ヒラギノ角ゴ Std W3"; */
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-weight: 300;
  font-style: normal;
  color: #fff;
  font-size: min(calc((22/1500)*100vw), 22px);
  line-height: 1.13;
  padding-left: min(calc((50 / 1500)* 100vw), 50px);
}

@media screen and (max-width: 768px) {
  .twocolumns__ol__li__txt-s {
    font-size: calc((25/750)*100vw);
    line-height: 1.3;
    padding-left: calc((54 / 750)* 100vw);
  }
}

.twocolumns__window {
  width: min(calc((34 / 1500)* 100vw), 34px);
  height: min(calc((34 / 1500)* 100vw), 34px);
  position: absolute;
  top: 0;
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .twocolumns__window {
    width: calc((44 / 750)* 100vw);
    height: auto;
  }
}

.twocolumns__lr {
  display: flex;
  justify-content: space-between;
  position: absolute;
  top: 0;
  left: min(calc((56 / 1500)* 100vw), 56px);
  width: min(calc((440 / 1500)* 100vw), 440px);
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .twocolumns__lr {
    width: calc((600 / 750)* 100vw);
    margin: 0 auto;
    left: 0;
    right: 0;
  }
}

.twocolumns__lr__r,
.twocolumns__lr__l,
.twocolumns__lr__m {
  width: min(calc((214 / 1500)* 100vw), 214px);
  box-sizing: border-box;
}

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

  .twocolumns__lr__r,
  .twocolumns__lr__l,
  .twocolumns__lr__m {
    width: calc((290 / 750)* 100vw);
  }
}

.twocolumns__lr__tit {
  /* font-family: "ヒラギノ角ゴ Std W6"; */
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #fff;
  font-size: min(calc((27.5/1500)*100vw), 27.5px);
  line-height: 1.2;
  letter-spacing: 0;
  color: #0064be;
  white-space: nowrap;
}

@media screen and (max-width: 768px) {
  .twocolumns__lr__tit {
    font-size: calc((33/750)*100vw);
  }
}

.twocolumns__lr__desc {
  /* font-family: "ヒラギノ角ゴ Std W3"; */
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-weight: 300;
  font-style: normal;
  color: #fff;
  font-size: min(calc((23/1500)*100vw), 23px);
  line-height: 1.3;
  letter-spacing: 0;
  color: #231815;
}

@media screen and (max-width: 768px) {
  .twocolumns__lr__desc {
    font-size: calc((27/750)*100vw);
    line-height: 1.5;
  }
}

.twocolumns__lr__l .twocolumns__lr__imgwrap {
  margin-top: -10%;
}

.twocolumns__lr__r .twocolumns__lr__imgwrap {
  margin-top: -42%;
}

@media screen and (max-width: 768px) {
  .twocolumns__lr__r .twocolumns__lr__imgwrap {
    margin-top: calc((-130 / 750)* 100vw);
  }
}

.twocolumns__lr__imgwrap {
  transform: all .5s;
}


/* ニチブンのキャリアサポート */

.careersupport {
  margin-top: -11.4%;
}

@media screen and (max-width: 768px) {
  .careersupport {
    position: relative;
  }
}

.careersupport .twocolumns__img-tit {
  left: min(calc((177 / 1500)* 100vw), 177px);
  margin-top: min(calc((124 / 1500)* 100vw), 124px);
}

@media screen and (max-width: 768px) {
  .careersupport .twocolumns__img-tit {
    left: calc((-28 / 750)* 100vw);
    right: 0;
    margin: calc((76 / 750)* 100vw) auto auto;
    width: fit-content;
  }
}

.careersupport .twocolumns__img-tit__inner__txt-img {
  width: min(calc((330 / 1500)* 100vw), 330px);
}

@media screen and (max-width: 768px) {
  .careersupport .twocolumns__img-tit__inner__txt-img {
    width: calc((628 / 750)* 100vw);
  }
}

.careersupport .twocolumns__window {
  right: min(calc((69 / 1500)* 100vw), 69px);
  margin-top: 10.1%;
}

@media screen and (max-width: 768px) {
  .careersupport .twocolumns__window {
    right: calc((48 / 750)* 100vw);
    margin-top: calc((160 / 750)* 100vw);
  }
}


/* ニチブンの教育 */

.education {
  pointer-events: none;
}

.education .twocolumns__img-tit {
  left: min(calc((56 / 1500)* 100vw), 56px);
  margin-top: min(calc((133 / 1500)* 100vw), 133px);
}

@media screen and (max-width: 768px) {
  .education .twocolumns__img-tit {
    left: calc((-276 / 750)* 100vw);
    margin: calc((136 / 750)* 100vw) auto 0;
    right: 0;
    bottom: 0;
    width: fit-content;
    height: fit-content;
  }
}

.education .twocolumns__img-tit__inner__txt-img {
  width: min(calc((315 / 1500)* 100vw), 315px);
}

@media screen and (max-width: 768px) {
  .education .twocolumns__img-tit__inner__txt-img {
    width: calc((380 / 750)* 100vw);
  }
}

.education .twocolumns__lr {
  margin-top: 41.2%;
}

@media screen and (max-width: 768px) {
  .education .twocolumns__lr {
    margin-top: calc((309 / 750)* 100vw);
  }
}

@media screen and (max-width: 768px) {
  body:not(.is-mobile) .education .twocolumns__lr {
    margin-top: calc((289 / 750)* 100vw);
  }
}


/* アクセス */

.access {
  pointer-events: none;
}

.twocolumns>*:nth-child(even).access {
  margin-top: -11.3%;
}

@media screen and (max-width: 768px) {
  .twocolumns>*:nth-child(even).access {
    margin-top: calc((-167 / 750)* 100vw);
  }
}

.access .twocolumns__img-tit {
  left: min(calc((177 / 1500)* 100vw), 177px);
  margin-top: min(calc((138 / 1500)* 100vw), 138px);
}

@media screen and (max-width: 768px) {
  .access .twocolumns__img-tit {
    left: calc((-440 / 750)* 100vw);
    right: 0;
    bottom: 0;
    margin: calc((180 / 750)* 100vw) auto 0;
    width: fit-content;
    height: fit-content;
  }
}

.access .twocolumns__img-tit__inner__txt-img {
  width: min(calc((184 / 1500)* 100vw), 184px);
}

@media screen and (max-width: 768px) {
  .access .twocolumns__img-tit__inner__txt-img {
    width: calc((215 / 750)* 100vw);
  }
}

.access__map-imgwrap {
  width: min(calc((440 / 1500)* 100vw), 440px);
  margin: 30.1% auto 0;
  position: absolute;
  top: 0;
  left: min(calc((177 / 1500)* 100vw), 177px);
}

@media screen and (max-width: 768px) {
  .access__map-imgwrap {
    margin: calc((224 / 750)* 100vw) auto 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: calc((650 / 750)* 100vw);
    height: fit-content;
  }
}

@media screen and (max-width: 768px) {
  body:not(.is-mobile) .access__map-imgwrap {
    width: calc((620 / 750)* 100vw);
  }
}

.access__map-txtwrap {
  position: absolute;
  top: 0;
  right: min(calc((56 / 1500)* 100vw), 56px);
  margin-top: 74.5%;
}

@media screen and (max-width: 768px) {
  .access__map-txtwrap {
    display: none;
  }
}

.access__map-txtwrap__tit {
  width: min(calc((166 / 1500)* 100vw), 166px);
}

@media screen and (max-width: 768px) {
  .access__map-txtwrap__tit {
    width: 94px;
  }
}

.access__map-txtwrap__desc {
  /* font-family: "A-OTF UD新ゴ Pro R"; */
  font-family: "M PLUS 2", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  color: #000;
  font-size: min(calc((11/1500)*100vw), 11px);
  line-height: 1.45;
  letter-spacing: 0;
  margin-top: min(calc((5 / 1500)* 100vw), 5px);
}

@media screen and (max-width: 768px) {
  .access__map-txtwrap__desc {
    font-size: 0.44rem;
    line-height: 1.45;
    margin-top: -1%;
  }
}


/* あなたの未来に一番近い先輩たちの声 */

.twocolumns>*:nth-child(odd).voice {
  margin-top: -23.2%;
}

@media screen and (max-width: 768px) {
  .twocolumns>*:nth-child(odd).voice {
    margin-top: 0;
  }
}

.voice .twocolumns__img-tit {
  left: min(calc((56 / 1500)* 100vw), 56px);
  margin-top: min(calc((126 / 1500)* 100vw), 126px);
}

@media screen and (max-width: 768px) {
  .voice .twocolumns__img-tit {
    right: 0;
    left: calc((-118 / 750)* 100vw);
    margin: calc((130 / 750)* 100vw) auto 0;
    bottom: 0;
    width: fit-content;
    height: fit-content;
  }
}

.voice .twocolumns__img-tit__inner__txt-img {
  width: min(calc((444 / 1500)* 100vw), 444px);
}

@media screen and (max-width: 768px) {
  .voice .twocolumns__img-tit__inner__txt-img {
    width: calc((536 / 750)* 100vw);
  }
}

.voice .twocolumns__lr {
  margin-top: 45.2%;
  flex-wrap: wrap;
  justify-content: center;
}

@media screen and (max-width: 768px) {
  .voice .twocolumns__lr {
    margin-top: calc((335 / 750)* 100vw);
  }
}

@media screen and (max-width: 768px) {
  body:not(.is-mobile) .voice .twocolumns__lr {
    margin-top: calc((310 / 750)* 100vw);
  }
}

.voice .twocolumns__lr__l {
  margin-right: min(calc((12 / 1500)* 100vw), 12px);
}

@media screen and (max-width: 768px) {
  .voice .twocolumns__lr__r {
    margin-left: auto;
  }
}

.voice .twocolumns__lr__r .twocolumns__lr__imgwrap {
  margin-top: -34.9%;
}

.voice .twocolumns__lr__m {
  margin-top: -15%;
}

.voice .twocolumns__window {
  right: min(calc((173 / 1500)* 100vw), 173px);
  margin-top: 13.3%;
}

.voice:hover .twocolumns__lr__r .twocolumns__lr__imgwrap {
  opacity: 0.7;
}

@media screen and (max-width: 768px) {
  .voice:hover .twocolumns__lr__r .twocolumns__lr__imgwrap {
    opacity: 1;
  }
}


/* 写真エリア */

.fullimages {
  margin-top: -23.3%;
}

@media screen and (max-width: 768px) {
  .fullimages {
    margin-top: calc((-167 / 750)* 100vw);
  }
}


/* オープンキャンパス日程 */

.openday {
  margin-top: -23.3%;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 768px) {
  .openday {
    margin-top: -22.3%;
    position: relative;
    z-index: 1;
  }
}

.openday__svg .st0 {
  fill: #0064BE;
}

.openday__img-tit {
  display: block;
  position: absolute;
  top: 0;
  left: min(calc((173 / 1500)* 100vw), 173px);
  margin-top: min(calc((127 / 1500)* 100vw), 127px);
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .openday__img-tit {
    left: calc((47 / 750)* 100vw);
    margin-top: calc((79 / 750)* 100vw);
  }
}

.openday__img-tit__inner__txt-img {
  width: min(calc((1053 / 1500)* 100vw), 1053px);
}

@media screen and (max-width: 768px) {
  .openday__img-tit__inner__txt-img {
    width: calc((650 / 750)* 100vw);
  }
}

.openday__ulwrap {
  position: absolute;
  top: 0;
}

.openday__ulwrap._1 {
  margin-top: min(calc((475 / 1500)* 100vw), 475px);
  left: min(calc((172 / 1500)* 100vw), 172px);
}

@media screen and (max-width: 768px) {
  .openday__ulwrap._1 {
    margin-top: calc((317 / 750)* 100vw);
    left: calc((100 / 750)* 100vw);
  }
}

.openday__ulwrap._2 {
  margin-top: min(calc((451 / 1500)* 100vw), 451px);
  left: min(calc((418 / 1500)* 100vw), 418px);
}

@media screen and (max-width: 768px) {
  .openday__ulwrap._2 {
    margin-top: calc((540 / 750)* 100vw);
    left: calc((100 / 750)* 100vw);
  }
}

.openday__ulwrap._3 {
  margin-top: min(calc((392 / 1500)* 100vw), 392px);
  left: min(calc((677 / 1500)* 100vw), 677px);
}

@media screen and (max-width: 768px) {
  .openday__ulwrap._3 {
    margin-top: calc((219 / 750)* 100vw);
    left: calc((470 / 750)* 100vw);
  }
}

.openday__ulwrap._4 {
  margin-top: min(calc((315 / 1500)* 100vw), 315px);
  left: min(calc((864 / 1500)* 100vw), 864px);
}

@media screen and (max-width: 768px) {
  .openday__ulwrap._4 {
    margin-top: calc((353 / 750)* 100vw);
    margin-top: calc((253 / 750)* 100vw);
    left: calc((470 / 750)* 100vw);
  }
}

.openday__ulwrap__year {
  font-family: "din-2014", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: min(calc((31 / 1500)* 100vw), 31px);
  line-height: 1;
  color: #ffe619;
}

@media screen and (max-width: 768px) {
  .openday__ulwrap__year {
    font-size: calc((41/750)*100vw);
  }
}

.openday__ulwrap__year+.openday__ulwrap__ul {
  margin-top: min(calc((8 / 1500)* 100vw), 8px);
}

@media screen and (max-width: 768px) {
  .openday__ulwrap__year+.openday__ulwrap__ul {
    margin-top: calc((7 / 750)* 100vw);
  }
}

.openday__ulwrap__ul__li {
  color: #fff;
}

.openday__ulwrap__ul__li+.openday__ulwrap__ul__li {
  margin-top: min(calc((8 / 1500)* 100vw), 8px);
}

@media screen and (max-width: 768px) {
  .openday__ulwrap__ul__li+.openday__ulwrap__ul__li {
    margin-top: calc((10 / 750)* 100vw);
  }
}

.openday__ulwrap__ul__li__day {
  font-family: "din-2014", sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: min(calc((40 / 1500)* 100vw), 40px);
  line-height: 1;
  letter-spacing: 0.04em;
}

@media screen and (max-width: 768px) {
  .openday__ulwrap__ul__li__day {
    font-size: calc((44/750)*100vw);
    letter-spacing: 0;
  }
}

.openday__ulwrap__ul__li__day+.openday__ulwrap__ul__li__week+.openday__ulwrap__ul__li__day {
  margin-left: -0.2em;
}

.openday__ulwrap__ul__li__week {
  /* font-family: "A-OTF UD新ゴ Pro DB"; */
  font-family: "M PLUS 2", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: min(calc((19.8 / 1500)* 100vw), 19.8px);
  line-height: 1;
  letter-spacing: 0.04em;
  position: relative;
  left: -0.2em;
  top: -0.1em;
}

@media screen and (max-width: 768px) {
  .openday__ulwrap__ul__li__week {
    font-size: calc((25/750)*100vw);
  }
}

.openday .btn-reserve {
  /* margin-top: min(calc((268 / 1500)* 100vw), 286px); */
  /* margin-top: min(calc((180 / 1500)* 100vw), 180px); */
  margin-top: min(calc((520 / 1500)* 100vw), 520px);
  left: min(calc((870 / 1500)* 100vw), 870px);
}

@media screen and (max-width: 768px) {
  .openday .btn-reserve {
    margin-top: calc((442 / 750)* 100vw);
    left: calc((530 / 750)* 100vw);
  }
}

@media screen and (max-width: 768px) {
  body:not(.is-mobile) .openday .btn-reserve {
    /* margin-top: calc((517 / 750)* 100vw);
    left: calc((525 / 750)* 100vw); */
    margin-top: calc((660 / 750)* 100vw);
    left: calc((500 / 750)* 100vw);
  }
}

/* 「LINE友だち追加」ボタン */
.openday .btn-line {
  /* margin-top: min(calc((300 / 1500)* 100vw), 300px); */
  margin-top: min(calc((490 / 1500)* 100vw), 490px);
  left: min(calc((1110 / 1500)* 100vw), 1110px);
}

.openday .btn-line::before {
  background-color: #ffe618;
}

@media screen and (max-width: 768px) {
  .openday .btn-line {
    margin-top: calc((560 / 750)* 100vw);
    left: calc((400 / 750)* 100vw);
  }
  body:not(.is-mobile) .openday .btn-line {
    /* margin-top: calc((560 / 750)* 100vw);
    left: calc((340 / 750)* 100vw); */
    margin-top: calc((800 / 750)* 100vw);
    left: calc((540 / 750)* 100vw);
  }
}

/* 動画エリア */

.movie-area {
  margin-top: -21.3%;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 768px) {
  .movie-area {
    margin-top: -22.3%;
  }
}

.movie-area__ttl-jp {
  width: min(calc((835 / 1500)* 100vw), 835px);
  position: absolute;
  top: 0;
  left: min(calc((438 / 1500)* 100vw), 438px);
  margin-top: 8.7%;
}

@media screen and (max-width: 768px) {
  .movie-area__ttl-jp {
    width: calc((570 / 750)* 100vw);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: calc((74 / 750)* 100vw) auto 0;
  }
}

.movie-area__ttl-en {
  width: min(calc((360 / 1500)* 100vw), 360px);
  position: absolute;
  top: 0;
  left: min(calc((941 / 1500)* 100vw), 941px);
  margin-top: 19.5%;
  display: flex;
}

@media screen and (max-width: 768px) {
  .movie-area__ttl-en {
    width: calc((240 / 750)* 100vw);
    left: calc((443 / 750)* 100vw);
    margin-top: calc((174 / 750)* 100vw);
  }
}

.movie-area__ttl-en__inner {
  position: relative;
}

.movie-area__ttl-en__inner::after {
  content: '';
  display: block;
  background-color: #fff;
  width: calc(100% + min(calc((70 / 1500)* 100vw), 70px));
  height: min(calc((66 / 1500)* 100vw), 66px);
  transform: rotate(-13deg) skew(-13deg);
  position: absolute;
  left: min(calc((-35 / 1500)* 100vw), -35px);
  bottom: min(calc((31 / 1500)* 100vw), 31px);
  z-index: -1;
}

@media screen and (max-width: 1200px) {
  .movie-area__ttl-en__inner::after {
    left: min(calc((-31 / 1500)* 100vw), -28px);
    bottom: min(calc((27 / 1500)* 100vw), 24px);
  }
}

@media screen and (max-width: 1000px) {
  .movie-area__ttl-en__inner::after {
    left: min(calc((-28 / 1500)* 100vw), -28px);
    bottom: min(calc((24 / 1500)* 100vw), 24px);
  }
}

@media screen and (max-width: 800px) {
  .movie-area__ttl-en__inner::after {
    left: min(calc((-20 / 1500)* 100vw), -20px);
    bottom: min(calc((26 / 1500)* 100vw), 26px);
  }
}

@media screen and (max-width: 768px) {
  .movie-area__ttl-en__inner::after {
    width: calc((240 / 750)* 100vw);
    height: calc((47 / 750)* 100vw);
    left: calc((-19 / 750)* 100vw);
    bottom: calc((12 / 750)* 100vw);
  }
}

@media screen and (max-width: 768px) {
  body:not(.is-mobile) .movie-area__ttl-en__inner::after {
    bottom: calc((13 / 750)* 100vw);
  }
}

.movie-area__ttl-en__icon {
  width: min(calc((61 / 1500)* 100vw), 61px);
  height: min(calc((85 / 1500)* 100vw), 85px);
  display: inline-block;
  margin-right: 0;
  position: relative;
  top: 3%;
}

@media screen and (max-width: 768px) {
  .movie-area__ttl-en__icon {
    width: calc((41 / 750)* 100vw);
    height: auto;
    top: calc((11 / 750)* 100vw);
  }
}

@media screen and (max-width: 768px) {
  body:not(.is-mobile) .movie-area__ttl-en__icon {
    top: calc((5 / 750)* 100vw);
  }
}

.movie-area__ttl-en__txt {
  font-family: "din-2014", sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: min(calc((94 / 1500)* 100vw), 94px);
  line-height: 1;
  letter-spacing: 0;
  transform: rotate(-13deg) skew(-10deg);
  display: inline-block;
}

@media screen and (max-width: 768px) {
  .movie-area__ttl-en__txt {
    font-size: calc((62/750)*100vw);
  }
}

.movie-area__ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  max-width: min(calc((1180 / 1500)* 100vw), 1180px);
  box-sizing: border-box;
  margin: 0 auto 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-top: 34.5%;
}

@media screen and (max-width: 768px) {
  .movie-area__ul {
    display: block;
    margin-top: calc((335 / 750)* 100vw);
  }
}

.movie-area__ul__li {
  width: min(calc((350 / 1500)* 100vw), 350px);
  box-sizing: border-box;
  margin-right: min(calc((65 / 1500)* 100vw), 65px);
}

@media screen and (max-width: 768px) {
  .movie-area__ul__li {
    width: calc((410 / 750)* 100vw);
    box-sizing: border-box;
    margin: 0 auto;
  }
}

.movie-area__ul__li._3,
.movie-area__ul__li._5 {
  margin-right: 0;
}

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

  .movie-area__ul__li._3,
  .movie-area__ul__li._5 {
    margin-right: auto;
  }
}

.movie-area__ul__li._2,
.movie-area__ul__li._3 {
  margin-top: min(calc((55 / 1500)* 100vw), 55px);
}

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

  .movie-area__ul__li._2,
  .movie-area__ul__li._3,
  .movie-area__ul__li._4,
  .movie-area__ul__li._5 {
    margin-top: calc((35 / 750)* 100vw);
  }
}

.movie-area__ul__li._1 {
  order: 1;
}

.movie-area__ul__li._2 {
  order: 4;
}

.movie-area__ul__li._3 {
  order: 5;
}

.movie-area__ul__li._4 {
  order: 2;
}

.movie-area__ul__li._5 {
  order: 3;
}

.movie-area__ul__li__a__imgwrap {
  overflow: hidden;
}

.movie-area__ul__li__a__imgwrap img {
  transition: all .5s;
}

.movie-area__ul__li__a:hover .movie-area__ul__li__a__imgwrap img {
  transform: scale(1.1);
}

@media screen and (max-width: 768px) {
  .movie-area__ul__li__a:hover .movie-area__ul__li__a__imgwrap img {
    transform: scale(1);
  }
}

.movie-area__ul__li__a__tit {
  font-family: "M PLUS 2", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  color: #000;
  font-size: min(calc((22/1500)*100vw), 22px);
  line-height: 1.4;
  letter-spacing: 0.1em;
  text-align: center;
  margin-top: min(calc((5 / 1500)* 100vw), 5px);
}

@media screen and (max-width: 768px) {
  .movie-area__ul__li__a__tit {
    font-size: calc((26/750)*100vw);
    margin-top: calc((7 / 750)* 100vw);
  }
}

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

  .movie-area .o_effect.o_effect_1.fadein,
  .movie-area .o_effect.o_effect_1_pc.fadein,
  .movie-area .o_effect.o_effect_2.fadein,
  .movie-area .o_effect.o_effect_2_pc.fadein,
  .movie-area .o_effect.o_effect_3.fadein,
  .movie-area .o_effect.o_effect_3_pc.fadein,
  .movie-area .o_effect.o_effect_4.fadein,
  .movie-area .o_effect.o_effect_4_pc.fadein,
  .movie-area .o_effect.o_effect_5.fadein,
  .movie-area .o_effect.o_effect_5_pc.fadein {
    animation-delay: 0s;
  }
}

/* モーダルYouTube動画埋め込み【lity.js】 */
.lity-container {
  padding: 0 25px;
}

.lity-close {
  position: absolute;
  right: 20px;
  top: -50px;
  font-size: 60px;
}

.lity-close:hover,
.lity-close:focus,
.lity-close:active,
.lity-close:visited {
  font-size: 60px;
}

.lity-close:hover {
  opacity: .6;
}

@media screen and (max-width: 768px) {
  .lity-close:hover {
    opacity: 1;
  }
}

/* 2026年3月修正
---------------------------------------------------------*/

.oc-program {
  height: auto;
  background-color: white;
}

.program_box {
  margin-top: -23%;
}

.kodai-schedule {
  margin-top: -24%;
}