@charset "UTF-8";
/*= Mirai CSS =======================================================

    1.基本設定
    2.メインビジュアル
    3.LIKE×JOBスライダー
    4.目指せる職種、おすすめの領域
    5.輝く名芸のパイセン!
    6.Instagramバナー
    7.こんな不安、持っていませんか？
        7-1.絵とか音楽が得意な人しか受からないんでしょ？
        7-2.ジブンが向いているか分かんないし不安です。
    8.好きを選べる分野

    20.コンテンツリンク

    30.フッター固定リンク

==================================================================*/
body:not(.menu-open) .header-menu {
  opacity: 0; }
  body:not(.menu-open) .header-menu a {
    pointer-events: none; }

#l-wrap a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  cursor: pointer; }

#l-wrap::before, #l-wrap::after {
  content: "";
  display: block;
  position: fixed;
  top: 0;
  bottom: 0;
  width: calc(50% - 320px);
  margin: auto;
  background-color: #f2f2f0;
  z-index: -1; }

#l-wrap::before {
  left: 0; }

#l-wrap::after {
  right: 0; }

@media (min-width: 1279.98px) {
  #l-wrap::before {
    background-color: #f2f2f0;
    background-image: url("../svg/bg_wrap01.svg"), url("../images/bg_wrap02.png");
    background-repeat: no-repeat, no-repeat;
    background-position: center top 10%, center bottom 5%;
    background-size: 62.5% auto, 80% auto; }
  #l-wrap::after {
    background: #f2f2f0 url("../images/bg_wrap03.png") no-repeat center bottom 5%/75% auto; } }

/* -----------------------------------------------------------------
* 1.基本設定
* -------------------------------------------------------------- */
#l-content {
  color: #000000;
  font-family: 'Zen Kaku Gothic New', sans-serif;
  font-weight: 500;
  line-height: 1.75; }
  #l-content img {
    max-width: 100%;
    height: auto; }
  #l-content h1, #l-content h2, #l-content h3, #l-content h4 {
    font-weight: 700;
    letter-spacing: .16em;
    line-height: 1.5; }
  #l-content p, #l-content ul, #l-content dl .m-bnr {
    margin-bottom: 2em;
    letter-spacing: .1em; }
  #l-content a {
    transition: all .15s ease-in-out; }
    #l-content a img {
      transition: opacity .15s ease-in-out; }
    #l-content a:hover img, #l-content a:focus img {
      opacity: .8; }
    #l-content a:focus-visible {
      outline: none; }
  #l-content em {
    font-style: normal; }

#l-content {
  font-size: 20.48px; }
  @media (max-width: 639.98px) {
    #l-content {
      font-size: 3.2vw; } }

.swiper-button {
  font-size: 47.78px; }
  @media (max-width: 639.98px) {
    .swiper-button {
      font-size: 7.47vw; } }

.m-aptitude-header {
  font-size: 42.67px; }
  @media (max-width: 639.98px) {
    .m-aptitude-header {
      font-size: 6.67vw; } }

#m-field-header h2,
.m-accordion dt {
  font-size: 30.72px; }
  @media (max-width: 639.98px) {
    #m-field-header h2,
    .m-accordion dt {
      font-size: 4.8vw; } }

.m-contents-link li {
  font-size: 30px; }
  @media (max-width: 639.98px) {
    .m-contents-link li {
      font-size: 4.7vw; } }

#m-aptitude-anxiety .m-grade .m-catch {
  font-size: 29px; }
  @media (max-width: 639.98px) {
    #m-aptitude-anxiety .m-grade .m-catch {
      font-size: 4.53vw; } }

#l-content h3,
#m-exam-anxiety .m-faq,
#m-aptitude-anxiety .m-faq {
  font-size: 27.31px; }
  @media (max-width: 639.98px) {
    #l-content h3,
    #m-exam-anxiety .m-faq,
    #m-aptitude-anxiety .m-faq {
      font-size: 4.27vw; } }

.m-check-list,
.m-circle-list,
.m-arrow-link,
.m-accordion dt .m-small,
#m-meigeidays-list .m-name {
  font-size: 25.6px; }
  @media (max-width: 639.98px) {
    .m-check-list,
    .m-circle-list,
    .m-arrow-link,
    .m-accordion dt .m-small,
    #m-meigeidays-list .m-name {
      font-size: 4vw; } }

.m-accordion dt::before,
.m-accordion dt::after {
  font-size: 23.04px; }
  @media (max-width: 639.98px) {
    .m-accordion dt::before,
    .m-accordion dt::after {
      font-size: 3.6vw; } }

.m-btn {
  font-size: 22.69px; }
  @media (max-width: 639.98px) {
    .m-btn {
      font-size: 3.55vw; } }

#m-aptitude-anxiety .m-grade .m-tit {
  font-size: 21.85px; }
  @media (max-width: 639.98px) {
    #m-aptitude-anxiety .m-grade .m-tit {
      font-size: 3.41vw; } }

#m-exam-anxiety .m-example dt {
  font-size: 18.26px; }
  @media (max-width: 639.98px) {
    #m-exam-anxiety .m-example dt {
      font-size: 2.85vw; } }

#m-exam-anxiety .m-small,
#m-aptitude-anxiety .m-small,
#m-meigeidays-list .m-faculty,
#mirainav-link {
  font-size: 17px; }
  @media (max-width: 639.98px) {
    #m-exam-anxiety .m-small,
    #m-aptitude-anxiety .m-small,
    #m-meigeidays-list .m-faculty,
    #mirainav-link {
      font-size: 2.67vw; } }

#m-exam-anxiety .m-example dd {
  font-size: 16.39px; }
  @media (max-width: 639.98px) {
    #m-exam-anxiety .m-example dd {
      font-size: 2.56vw; } }

.m-accordion dt i {
  font-size: 15.36px; }
  @media (max-width: 639.98px) {
    .m-accordion dt i {
      font-size: 2.4vw; } }

.m-container {
  padding: 10% 6%; }

.m-arrow-link::after,
.m-btn::after,
.m-admission-link::after,
.m-faculty-link::after {
  content: "";
  display: inline-block;
  margin: auto 0 auto .5em;
  text-align: center;
  letter-spacing: 0;
  border-radius: 100%;
  background-image: url("../svg/ico_arrow01.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 30% 30%; }

.m-arrow-link,
.m-btn {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  padding: .25em 0; }
  .m-arrow-link::after,
  .m-btn::after {
    margin: auto 0 auto .5em; }

.m-arrow-link::after {
  width: .9em;
  height: .9em;
  vertical-align: -.1em; }

#m-instagram-bnr,
#m-exam-anxiety,
#m-aptitude-anxiety,
#m-field {
  border-bottom: 1px solid #f2f2f0; }

/* -----------------------------------------------------------------
* 2.メインビジュアル
* -------------------------------------------------------------- */
#m-visual {
  padding: 10% 0;
  text-align: center;
  background-color: #d8dd00; }

#m-visual-btn {
  display: block;
  width: 25%;
  margin-left: auto;
  margin-right: auto; }

/* -----------------------------------------------------------------
* 3.LIKE×JOBスライダー
* -------------------------------------------------------------- */
#m-like--job-slider {
  position: relative; }
  #m-like--job-slider h2 .m-slide-message::before {
    background-image: url("../svg/ico_slide-arrow-right01.svg"); }
  #m-like--job-slider h3 {
    margin-top: 2em;
    margin-bottom: 1.5em;
    padding: .75em 0;
    border-top: 1px solid #000000;
    border-bottom: 1px solid #000000;
    text-align: center; }

/* ---------- Swiperデフォルト ---------- */
.swiper,
swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block; }

.swiper-vertical > .swiper-wrapper {
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box; }

.swiper-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0); }

.swiper-horizontal {
  touch-action: pan-y; }

.swiper-vertical {
  touch-action: pan-x; }

.swiper-slide,
swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block; }

.swiper-slide-invisible-blank {
  visibility: hidden; }

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto; }

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height; }

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px; }

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d; }

.swiper-3d {
  perspective: 1200px; }

.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d; }

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10; }

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15); }

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none; }

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none; }

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start; }

.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory; }

.swiper-vertical.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
      scroll-snap-type: y mandatory; }

.swiper-centered > .swiper-wrapper::before {
  content: '';
  flex-shrink: 0;
  order: 9999; }

.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always; }

.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
          margin-inline-start: var(--swiper-centered-offset-before); }

.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after); }

.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
          margin-block-start: var(--swiper-centered-offset-before); }

.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after); }

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent; }

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
swiper-container:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  -webkit-animation: swiper-preloader-spin 1s infinite linear;
          animation: swiper-preloader-spin 1s infinite linear; }

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff; }

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000; }

@-webkit-keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0); }

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none; }

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size); }

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size); }

.swiper-button-lock {
  display: none; }

/* ---------- Swiperカスタム ---------- */
.swiper {
  position: relative;
  width: 100%;
  height: 100%; }

.swiper-button,
.swiper-pagination {
  position: absolute;
  display: flex;
  z-index: 2; }

.swiper-button {
  right: 0;
  justify-content: flex-end;
  padding: .25em; }

.swiper-button-prev,
.swiper-button-next {
  width: 1.5em;
  height: 1.5em;
  flex: 0 0 1.5em;
  background: transparent url("../svg/btn_arrow01.svg") no-repeat center center/1em;
  cursor: pointer; }
  .swiper-button-prev.swiper-button-disabled,
  .swiper-button-next.swiper-button-disabled {
    display: none; }

.swiper-button-prev {
  transform: scale(-1, 1); }

.swiper-pagination {
  left: 0;
  right: 0;
  justify-content: center;
  align-items: center;
  width: 100%;
  text-align: center;
  transition: .3s opacity;
  transform: translate3d(0, 0, 0); }
  .swiper-pagination .swiper-pagination-hidden {
    opacity: 0; }

.swiper-pagination-bullet {
  display: block;
  width: .5em;
  height: .5em;
  margin-left: .25em;
  margin-right: .25em;
  border-radius: 100%;
  opacity: .5;
  background-color: white; }

.swiper-pagination-bullet-active {
  opacity: 1; }

#m-like-slider .swiper-button,
#m-like-slider .swiper-pagination {
  top: 0; }

#m-like-slider .swiper-pagination {
  margin-top: 1.5em; }

#m-job-slider .swiper-button,
#m-job-slider .swiper-pagination {
  bottom: 0; }

#m-job-slider .swiper-pagination {
  margin-bottom: 1.5em; }

/* ---------- スクロールダウンアニメーション、横スライドメッセージ共通 ---------- */
#m-scroll,
#m-scroll-txt,
.m-slide-message {
  position: absolute;
  left: 0;
  right: 0; }

#m-scroll,
.m-slide-message {
  display: none;
  top: 0;
  bottom: 0;
  text-align: center;
  z-index: 3; }

/* ---------- スクロールダウンアニメーション ---------- */
#m-scroll {
  background-color: rgba(0, 0, 0, 0.3); }

#m-scroll-txt {
  position: absolute;
  left: 0;
  right: 0;
  width: 25%;
  bottom: 6%;
  margin: auto;
  -webkit-animation: scroll-animation 1s ease-in-out infinite;
          animation: scroll-animation 1s ease-in-out infinite; }

@-webkit-keyframes scroll-animation {
  0% {
    bottom: 6%; }
  50% {
    bottom: 12%; }
  100% {
    bottom: 6%; } }

@keyframes scroll-animation {
  0% {
    bottom: 6%; }
  50% {
    bottom: 12%; }
  100% {
    bottom: 6%; } }

/* ---------- 横スライドアイコン ---------- */
.m-slide-message {
  display: block;
  width: 30%;
  height: 30%;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.6);
  transition: opacity .3s;
  margin: auto;
  border-radius: .5em;
  opacity: 0; }
  .m-slide-message.is-active {
    -webkit-animation: fade-out 4s ease-in-out;
            animation: fade-out 4s ease-in-out; }
    .m-slide-message.is-active::before {
      -webkit-animation: fade-in 3s linear 3s;
              animation: fade-in 3s linear 3s; }
    .m-slide-message.is-active::after {
      -webkit-animation: slide-animation 1.2s linear .6s 2;
              animation: slide-animation 1.2s linear .6s 2; }
  .m-slide-message::before, .m-slide-message::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain; }
  .m-slide-message::before {
    width: 70%;
    height: 15%;
    top: 6%;
    margin-right: 18%;
    background-image: url("../svg/ico_slide-arrow01.svg");
    opacity: 0; }
  .m-slide-message::after {
    bottom: 22%;
    margin: auto;
    width: 60%;
    height: 60%;
    vertical-align: middle;
    background-image: url("../svg/ico_slide-hand01.svg"); }
  .m-slide-message img {
    position: absolute;
    display: block;
    left: 0;
    right: 0;
    bottom: 5%;
    width: 90%;
    margin: 0 auto;
    vertical-align: bottom; }

@-webkit-keyframes fade-in {
  0% {
    opacity: 1; }
  50% {
    opacity: 0; } }

@keyframes fade-in {
  0% {
    opacity: 1; }
  50% {
    opacity: 0; } }

@-webkit-keyframes fade-out {
  0% {
    opacity: 0; }
  50% {
    opacity: 1; } }

@keyframes fade-out {
  0% {
    opacity: 0; }
  50% {
    opacity: 1; } }

@-webkit-keyframes slide-animation {
  0% {
    opacity: 0;
    transform: translateX(200%); }
  20% {
    opacity: .9; }
  40% {
    opacity: 0;
    transform: translateX(-100%); }
  60% {
    opacity: 0;
    transform: translateX(0); }
  80% {
    opacity: 0;
    transform: translateX(0); }
  100% {
    opacity: 1; } }

@keyframes slide-animation {
  0% {
    opacity: 0;
    transform: translateX(200%); }
  20% {
    opacity: .9; }
  40% {
    opacity: 0;
    transform: translateX(-100%); }
  60% {
    opacity: 0;
    transform: translateX(0); }
  80% {
    opacity: 0;
    transform: translateX(0); }
  100% {
    opacity: 1; } }

/* -----------------------------------------------------------------
* 4.目指せる職種、おすすめの領域
* -------------------------------------------------------------- */
#m-aptitude {
  display: none;
  position: relative;
  background-color: #f2f2f0; }
  #m-aptitude h3 {
    margin-top: 2em;
    margin-bottom: 1.5em;
    padding: .75em 0;
    border-top: 1px solid #000000;
    border-bottom: 1px solid #000000;
    text-align: center; }
  #m-aptitude .m-arrow-link {
    border-bottom: 1px solid #000000; }
    #m-aptitude .m-arrow-link::after {
      background-color: #000000; }
    #m-aptitude .m-arrow-link:hover, #m-aptitude .m-arrow-link:focus {
      color: #595959;
      border-bottom-color: #595959; }
      #m-aptitude .m-arrow-link:hover::after, #m-aptitude .m-arrow-link:focus::after {
        background-color: #595959; }

.m-aptitude-header {
  display: flex;
  align-items: center;
  margin-bottom: 1.25em;
  min-height: 7em; }
  .m-aptitude-header h2 {
    width: 70%; }
    .m-aptitude-header h2 .m-item-like-tit,
    .m-aptitude-header h2 .m-times,
    .m-aptitude-header h2 .m-item-job-tit {
      display: block; }
    .m-aptitude-header h2 .m-item-like-tit,
    .m-aptitude-header h2 .m-item-job-tit {
      margin-left: .25em;
      text-indent: -.25em; }
      .m-aptitude-header h2 .m-item-like-tit span,
      .m-aptitude-header h2 .m-item-job-tit span {
        position: relative;
        padding: .1em .25em;
        background-color: white; }
        .m-aptitude-header h2 .m-item-like-tit span::before,
        .m-aptitude-header h2 .m-item-job-tit span::before {
          content: "";
          display: block;
          position: absolute;
          top: 0;
          bottom: 0;
          left: 0;
          width: .25em;
          background-color: white; }
    .m-aptitude-header h2 .m-times {
      display: flex;
      align-items: center;
      padding: .5em .25em;
      line-height: 1; }
      .m-aptitude-header h2 .m-times img {
        width: .9em; }
  .m-aptitude-header .m-thumb {
    width: 30%; }
    .m-aptitude-header .m-thumb img {
      transform: scale(1.5, 1.5); }

.m-check-list li {
  position: relative;
  text-indent: -1.5em;
  padding-left: 1.5em; }
  .m-check-list li::before {
    content: "";
    display: inline-block;
    width: 1.2em;
    height: 1.2em;
    margin-right: .3em;
    background: url("../svg/ico_check01.svg") no-repeat center center/contain; }

.m-circle-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  text-align: center;
  line-height: 1.5;
  letter-spacing: .2em;
  margin-top: -2.5%;
  margin-left: -2.5%;
  margin-right: -2.5%; }
  .m-circle-list li {
    width: 33.333333%;
    padding: 2.5%;
    color: white; }
    .m-circle-list li .circle {
      position: relative;
      width: 100%; }
      .m-circle-list li .circle a {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        padding-left: .2em;
        color: white;
        border-radius: 100%; }
      .m-circle-list li .circle::before {
        display: block;
        content: "";
        padding-top: 100%; }
    .m-circle-list li.music .circle a {
      background-color: #e96f84; }
      .m-circle-list li.music .circle a:hover, .m-circle-list li.music .circle a:focus {
        background-color: rgba(233, 111, 132, 0.8); }
    .m-circle-list li.performingarts .circle a {
      background-color: #9e4f8e; }
      .m-circle-list li.performingarts .circle a:hover, .m-circle-list li.performingarts .circle a:focus {
        background-color: rgba(158, 79, 142, 0.8); }
    .m-circle-list li.art .circle a {
      background-color: #2fb37f; }
      .m-circle-list li.art .circle a:hover, .m-circle-list li.art .circle a:focus {
        background-color: rgba(47, 179, 127, 0.8); }
    .m-circle-list li.design .circle a {
      background-color: #f4b900; }
      .m-circle-list li.design .circle a:hover, .m-circle-list li.design .circle a:focus {
        background-color: rgba(244, 185, 0, 0.8); }
    .m-circle-list li.education .circle a {
      background-color: #ff8543; }
      .m-circle-list li.education .circle a:hover, .m-circle-list li.education .circle a:focus {
        background-color: rgba(255, 133, 67, 0.8); }
    .m-circle-list li.child .circle a {
      background-color: #3c97df; }
      .m-circle-list li.child .circle a:hover, .m-circle-list li.child .circle a:focus {
        background-color: rgba(60, 151, 223, 0.8); }

/* ---------- ローディングアニメーション ---------- */
#m-spinner {
  position: absolute;
  top: 10em;
  left: 0;
  right: 0;
  display: none;
  z-index: 1; }

#m-spinner-content {
  display: flex;
  justify-content: center;
  align-items: center; }

.m-pulse-bubble {
  width: 1em;
  height: 1em;
  margin: .25em;
  border-radius: 50%;
  background-color: rgba(0, 0, 0, 0.15); }
  .m-pulse-bubble:nth-child(1) {
    -webkit-animation: pulse .5s ease 0s infinite alternate;
            animation: pulse .5s ease 0s infinite alternate; }
  .m-pulse-bubble:nth-child(2) {
    -webkit-animation: pulse .5s ease .25s infinite alternate;
            animation: pulse .5s ease .25s infinite alternate; }
  .m-pulse-bubble:nth-child(3) {
    -webkit-animation: pulse .5s ease .5s infinite alternate;
            animation: pulse .5s ease .5s infinite alternate; }

@-webkit-keyframes pulse {
  from {
    opacity: 1;
    transform: scale(1); }
  to {
    opacity: .25;
    transform: scale(0.75); } }

@keyframes pulse {
  from {
    opacity: 1;
    transform: scale(1); }
  to {
    opacity: .25;
    transform: scale(0.75); } }

/* -----------------------------------------------------------------
* 5.輝く名芸のパイセン!
* -------------------------------------------------------------- */
#m-meigeidays {
  color: white;
  text-align: center;
  background-color: #e96d8c; }
  #m-meigeidays .m-arrow-link {
    color: white;
    border-bottom: 1px solid white; }
    #m-meigeidays .m-arrow-link::after {
      background-color: white;
      background-image: url("../svg/ico_arrow02.svg"); }
    #m-meigeidays .m-arrow-link:hover, #m-meigeidays .m-arrow-link:focus {
      opacity: .8; }

#m-meigeidays-list {
  overflow: hidden; }
  #m-meigeidays-list ul {
    display: flex;
    flex-wrap: wrap;
    margin-left: -.96em;
    margin-right: -.96em;
    line-height: 1.5; }
  #m-meigeidays-list li {
    width: 100%;
    max-width: 50%;
    flex: 0 0 50%;
    margin-bottom: 1.5em;
    padding-left: .96em;
    padding-right: .96em; }
  #m-meigeidays-list .m-thumb {
    overflow: hidden;
    position: relative;
    height: 0;
    margin-bottom: .75em;
    padding-bottom: 115%;
    line-height: 1;
    background-color: white;
    border-radius: 100vw 100vw 0 0; }
    #m-meigeidays-list .m-thumb img {
      position: absolute;
      top: 0;
      left: -5%;
      right: -5%;
      margin: 0 auto;
      width: 110%;
      height: auto; }
  #m-meigeidays-list .m-faculty,
  #m-meigeidays-list .m-name {
    color: white;
    text-align: left;
    margin-bottom: 0;
    transition: all .15s ease-in-out; }
  #m-meigeidays-list .m-faculty {
    margin-bottom: .25em;
    font-weight: 400;
    letter-spacing: .015em; }
  #m-meigeidays-list .m-name {
    font-weight: 700; }
  #m-meigeidays-list a:hover .m-faculty,
  #m-meigeidays-list a:hover .m-name, #m-meigeidays-list a:focus .m-faculty,
  #m-meigeidays-list a:focus .m-name {
    opacity: .8; }

.m-btn {
  width: 60%;
  padding-left: 2em;
  padding-right: 2em;
  background-color: white;
  border-radius: 100vh; }
  .m-btn::after {
    width: 1.5em;
    height: 1.5em;
    vertical-align: -.35em;
    background-color: #e96d8c; }
  .m-btn:hover, .m-btn:focus {
    opacity: .8; }

/* -----------------------------------------------------------------
* 6.Instagramバナー
* -------------------------------------------------------------- */
.m-bnr {
  display: block; }

/* -----------------------------------------------------------------
* 7.こんな不安、持っていませんか？
* -------------------------------------------------------------- */
#m-exam-anxiety h2,
#m-exam-anxiety .m-q .m-thumb,
#m-aptitude-anxiety h2,
#m-aptitude-anxiety .m-q .m-thumb {
  margin: 0 auto 1.5em;
  text-align: center; }

#m-exam-anxiety h3,
#m-exam-anxiety .m-faq,
#m-aptitude-anxiety h3,
#m-aptitude-anxiety .m-faq {
  letter-spacing: .1em; }

#m-exam-anxiety h2,
#m-aptitude-anxiety h2 {
  width: 88%; }

#m-exam-anxiety h3,
#m-aptitude-anxiety h3 {
  margin-bottom: 1em; }

#m-exam-anxiety .m-small,
#m-aptitude-anxiety .m-small {
  letter-spacing: .08em; }

#m-exam-anxiety .m-faq,
#m-aptitude-anxiety .m-faq {
  margin-bottom: 1.5em;
  text-align: center; }

#m-exam-anxiety .m-q .m-thumb,
#m-aptitude-anxiety .m-q .m-thumb {
  display: block;
  width: 36.5%;
  margin-top: 1em; }

#m-exam-anxiety .m-a,
#m-exam-anxiety .m-grade .m-tit,
#m-aptitude-anxiety .m-a,
#m-aptitude-anxiety .m-grade .m-tit {
  color: white; }

#m-exam-anxiety .m-a,
#m-aptitude-anxiety .m-a {
  padding: .25em .5em; }

#m-exam-anxiety .m-example,
#m-exam-anxiety .m-grade,
#m-aptitude-anxiety .m-example,
#m-aptitude-anxiety .m-grade {
  display: flex;
  border-width: 1px;
  border-style: solid; }

/* -----------------------------------------------------------------
* 7-1.絵とか音楽が得意な人しか受からないんでしょ？
* -------------------------------------------------------------- */
#m-exam-anxiety .m-q,
#m-exam-anxiety .m-example {
  color: #e56259; }

#m-exam-anxiety .m-a {
  background-color: #e56259; }

#m-exam-anxiety .m-example {
  margin-bottom: 1em;
  padding-right: .6em;
  border-color: #e56259;
  text-align: center;
  letter-spacing: .14em; }
  #m-exam-anxiety .m-example dt {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
    margin-right: .6em;
    padding: 1em 0;
    border-right-width: 1px;
    border-right-style: solid; }
  #m-exam-anxiety .m-example dd {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 .6em;
    line-height: 1; }
    #m-exam-anxiety .m-example dd .m-txt {
      padding: .25em .5em;
      background-color: #dadf00; }
    #m-exam-anxiety .m-example dd span {
      margin-top: .15em;
      margin-bottom: .15em; }

#m-exam-anxiety .m-ratio {
  display: flex;
  align-items: flex-end;
  margin-top: -.5em;
  margin-left: -.25em;
  margin-right: -.25em; }
  #m-exam-anxiety .m-ratio li {
    padding: 0 .25em; }

/* -----------------------------------------------------------------
* 7-2.ジブンが向いているか分かんないし不安です。
* -------------------------------------------------------------- */
#m-aptitude-anxiety h3,
#m-aptitude-anxiety .m-q,
#m-aptitude-anxiety .m-grade .m-catch {
  color: #1f83c6; }

#m-aptitude-anxiety .m-a,
#m-aptitude-anxiety .m-grade .m-tit {
  background-color: #1f83c6; }

#m-aptitude-anxiety .m-list li:last-child::after,
#m-aptitude-anxiety .m-grade.first-year::after,
#m-aptitude-anxiety .m-grade.second-year::after {
  display: block;
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

#m-aptitude-anxiety .m-grade {
  position: relative;
  margin-top: 2.5em;
  margin-bottom: 1.5em;
  border-color: #1f83c6;
  align-items: center; }
  #m-aptitude-anxiety .m-grade.first-year::after {
    right: 5%;
    top: -30%;
    width: 15.55%;
    height: 80%;
    background-image: url("../images/img_m-aptitude-anxiety01.png"); }
  #m-aptitude-anxiety .m-grade.second-year::after {
    right: -3%;
    top: 0;
    bottom: 0;
    width: 26%;
    height: 65%;
    margin: auto 0;
    background-image: url("../images/img_m-aptitude-anxiety03.png"); }
  #m-aptitude-anxiety .m-grade .m-tit {
    width: 100%;
    flex: 0 0 2em;
    max-width: 2em;
    padding: 1em .5em;
    text-align: center;
    line-height: 1.25;
    letter-spacing: normal; }
  #m-aptitude-anxiety .m-grade .m-catch {
    padding: 0 1.25em; }

#m-aptitude-anxiety .m-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 1em 1em; }
  #m-aptitude-anxiety .m-list li {
    width: 100%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
    margin-bottom: .8em;
    padding-left: .4em;
    padding-right: .4em; }
    #m-aptitude-anxiety .m-list li:last-child {
      position: relative; }
      #m-aptitude-anxiety .m-list li:last-child::after {
        right: -26%;
        bottom: -5%;
        width: 50%;
        height: 70%;
        background-image: url("../images/img_m-aptitude-anxiety02.png"); }

#m-aptitude-anxiety > section:last-child > section:last-child > *:last-child {
  margin-bottom: 0; }

/* -----------------------------------------------------------------
* 7.好きを選べる分野
* -------------------------------------------------------------- */
#m-field-header {
  position: relative;
  margin-bottom: 1.5em;
  padding: 0 30% 1.5em 0;
  border-bottom: 2px solid #e56259;
  color: #e56259; }
  #m-field-header h2 {
    margin-bottom: .5em; }
  #m-field-header p {
    margin-bottom: 0; }
  #m-field-header .m-thumb {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 29.41%;
    margin: auto 0; }

.m-accordion {
  border-bottom: 1px solid #e56259; }
  .m-accordion dt {
    position: relative;
    padding-top: 1em;
    padding-bottom: 1em;
    color: #e56259;
    letter-spacing: .16em;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    cursor: pointer; }
    .m-accordion dt::before, .m-accordion dt::after {
      display: block;
      content: "";
      position: absolute;
      top: 0;
      bottom: .75em;
      right: 1em;
      width: 1em;
      height: .15em;
      margin: auto;
      background-color: #e56259;
      border-radius: .15em;
      transition: all .6s ease-out; }
    .m-accordion dt::before {
      transform: rotate(0deg); }
    .m-accordion dt:after {
      transform: rotate(-90deg); }
    .m-accordion dt i {
      position: absolute;
      right: 0;
      bottom: 3em;
      width: 4.5em;
      letter-spacing: .05em;
      text-align: center;
      pointer-events: none;
      font-style: normal; }
    .m-accordion dt.is-open::before {
      transform: rotate(180deg); }
    .m-accordion dt.is-open::after {
      transform: rotate(180deg);
      opacity: 0; }
    .m-accordion dt .m-small {
      letter-spacing: .08em; }
  .m-accordion dd {
    display: none;
    padding-bottom: 2em;
    letter-spacing: .1em; }
    .m-accordion dd + dt {
      border-top: 1px solid #e56259; }

/* -----------------------------------------------------------------
* 21.コンテンツリンク
* -------------------------------------------------------------- */
.m-contents-link {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2.5%;
  margin-right: -2.5%;
  padding-bottom: 2em;
  text-align: center; }
  .m-contents-link li {
    width: 50%;
    padding-left: 2.5%;
    padding-right: 2.5%; }
    .m-contents-link li .m-admission-link::after,
    .m-contents-link li .m-faculty-link::after {
      width: 1em;
      height: 1em;
      margin: 0 auto; }
    .m-contents-link li .m-admission-link {
      color: #e56259; }
      .m-contents-link li .m-admission-link::after {
        background-color: #e56259; }
      .m-contents-link li .m-admission-link:hover, .m-contents-link li .m-admission-link:focus {
        color: rgba(229, 98, 89, 0.8); }
        .m-contents-link li .m-admission-link:hover::after, .m-contents-link li .m-admission-link:focus::after {
          background-color: rgba(229, 98, 89, 0.8); }
    .m-contents-link li .m-faculty-link {
      color: #1f83c6; }
      .m-contents-link li .m-faculty-link::after {
        background-color: #1f83c6; }
      .m-contents-link li .m-faculty-link:hover, .m-contents-link li .m-faculty-link:focus {
        color: rgba(31, 131, 198, 0.8); }
        .m-contents-link li .m-faculty-link:hover::after, .m-contents-link li .m-faculty-link:focus::after {
          background-color: rgba(31, 131, 198, 0.8); }

/* -----------------------------------------------------------------
* 30.フッター固定リンク
* -------------------------------------------------------------- */
#l-footer {
  padding-bottom: 5.67em; }

#footer-mirainav {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  max-width: 640px;
  min-width: 320px;
  margin: 0 auto;
  font-family: 'Zen Kaku Gothic New', sans-serif;
  font-weight: 500;
  background-color: white;
  z-index: 50; }

#mirainav-link {
  display: flex;
  text-align: center; }
  #mirainav-link li {
    flex-basis: 0;
    flex-grow: 1;
    width: 100%;
    max-width: 100%; }
    #mirainav-link li a {
      display: flex;
      justify-content: center;
      align-items: center;
      height: 4em; }
    #mirainav-link li + li {
      position: relative; }
      #mirainav-link li + li::before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        margin: auto 0;
        width: 1px;
        height: 2em;
        background-color: #000000; }
