@charset "UTF-8";


mark {
  background-color: transparent;
  background-image: -webkit-linear-gradient(left, transparent 50%, #FFE997 50%);
  background-image: -moz-linear-gradient(left, transparent 50%, #FFE997 50%);
  background-image: -ms-linear-gradient(left, transparent 50%, #FFE997 50%);
  background-image: -o-linear-gradient(left, transparent 50%, #FFE997 50%);
  background-image: linear-gradient(left, transparent 50%, #FFE997 50%);
  background-repeat: repeat-x;
  background-size: 200% .6em;
  background-position: 0 1.2em;
  transition: all 1.5s ease;
  padding: 0 4px;
  padding-right: 4px;
  padding-left: 5px;
}

mark.is-mark{
  background-position: -100% 1.2em;
}

/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
ベース
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/
* {
  box-sizing: border-box;
}

*:focus {
  /*chromeで表示される青枠を消す*/
  outline: none;
}
a:hover {
  text-decoration: none;
}
b {
  font-weight: bold;
}

.u-center {
  text-align: right;
}
.u-right {
  text-align: right;
}
.u-left {
  text-align: left;
}

.back_curtain {
  background-color: #d2f0f0;
}
.u-bgLightBlue {
  background-color: #C8F0ED;
}
.u-bgBrown {
  background-color: #DBBDAE;
}
.bg_award_01 {
  background-color: #ffe1b4;
}
.bg_award_02 {
  background-color: #96aafa;
}
.l-ministerAward.bg_award_01:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: block;
  background-image: url(../img/66/hr_wave_white.png);
  background-repeat: repeat-x;
  height: 44px;
  /*transform: translateY(-4%);*/
  background-color: #ffe1b4;
}
.u-bgGreen {
  background-color: #78C3B3;
}
.u-bgBlue {
  background-color: #C2BEF5;
}
.l-olympusAward.bg_award_02:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: block;
  background-image: url(../img/66/hr_zigzag.png);
  background-repeat: repeat-x;
  height: 52px;
  background-color: #96aafa;
}
.l-olympusAward.u-bgGreen:after {
  content: "";
  position: absolute;
  bottom: -44px;
  left: 0;
  width: 100%;
  display: block;
  background-image: url(../img/common/hr_wave_green.png);
  background-repeat: repeat-x;
  height: 44px;
}



/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
レイヤー
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

.l-wrapper {
  color: #444444;
}
.l-wrapper * {
  font-size: 16px;
  line-height: 30px;
}
.l-container {
  max-width: 1406px;
  width: 100%;
  padding-right: 20px;
  padding-left: 20px;
  margin-right: auto;
  margin-left: auto;
}

.l-homeVidual {
  position: relative;
  overflow: hidden;
  padding-bottom: 70px;
}

.l-generalComment {
  max-width: 1000px;
  padding-right: 20px;
  padding-left: 20px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  margin-top: 54px;
  margin-bottom: 50px;
}

.l-teacherComment {
  max-width: 860px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  margin-top: 80px;
  padding-bottom: 29px;
  padding-right: 20px;
  padding-left: 20px;
}

.l-ministerAward {
  padding-bottom: 200px;
  position: relative;
}
.l-ministerAward__inner {
  padding-top: 139px;
}
.l-olympusAward {
  padding-bottom: 220px;
  position: relative;
}
.l-olympusAward__inner {
  padding-top: 153px;
}

.l-banner {
  padding-top: 196px;
}
.s-banner {
  padding-top: 196px;
}
.l-totalNumber {
  margin-top: 110px;
  margin-bottom: 194px;
}

.l-wrapper--interview {
  padding-top: 82px;
  padding-right: 20px;
  padding-bottom: 150px;
  padding-left: 20px;
}

.l-interview {
  position: relative;
  max-width: 1092px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  background: #fff;
  padding-top: 60px;
  padding-bottom: 107px;
}

.l-interview__btn {
  text-align: center;
  margin-top: 60px;
}

@media screen and (max-width:767px) {
  .l-wrapper {
    color: #444444;
    overflow: hidden;
    padding-top: 13.5vw;
  }
  .l-wrapper * {
    font-size: 4.3vw;
    line-height: 7vw;
  }
  .l-container {
    max-width: 1406px;
    width: 100%;
    padding-right: 7vw;
    padding-left: 7vw;
    margin-right: auto;
    margin-left: auto;
  }

  .l-homeVidual {
    position: relative;
    overflow: hidden;
    padding-bottom: 3vw;
  }

  .l-generalComment {
    max-width: 100%;
    padding-right: 7vw;
    padding-left: 7vw;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    margin-top: 0;
  }

  .l-teacherComment {
    max-width: 100%;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    margin-top: 16vw;
    padding-bottom: 0;
    padding-right: 7vw;
    padding-left: 7vw;
  }

  .l-ministerAward {
    padding-bottom: 18vw;
    position: relative;
  }
  .l-ministerAward__inner {
    padding-top: 26vw;
  }
  .l-olympusAward {
    padding-bottom: 36vw;
  }
  .l-olympusAward__inner {
    padding-top: 30vw;
  }

  .l-banner {
    padding-top: 33vw;
  }
  .l-totalNumber {
    margin-top: 21vw;
    margin-bottom: 9vw;
  }

  .l-wrapper--interview {
    padding-top: 6vw;
    padding-right: 7.5vw;
    padding-bottom: 20vw;
    padding-left: 7.5vw;
  }

  .l-interview {
    position: relative;
    max-width: 100%;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    background: #fff;
    padding-top: 16vw;
    padding-bottom: 9vw;
  }

  .l-interview__btn {
    text-align: center;
    margin-top: 23vw;
  }
}


/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
モジュール
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

/* 審査員コメント */

.p-teacher {
  transform: translateY(-36%);
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  padding-right: 53px;
  margin-top: -50px;
}
.l-teacherComment .p-teacher {
  transform: translateY(-34%);
  padding-right: 35px;
  margin-top: -50px;
}
.p-teacher__body__post {
  font-size: 12px;
  line-height: 10px;
  display: block;
}
.p-teacher__body {
  margin-right: 16px;
  margin-bottom: 12px;
}
.l-teacherComment .p-teacher__body {
  margin-right: 3px;
  margin-bottom: 1px;
}
.p-teacher__body__name {
  font-weight: bold;
  display: block;
  font-size: 16px;
  text-align: right;
}
.p-teacher__body__name > span {
  font-size: 12px;
  padding-left: 7px;
}
.l-teacherComment .p-teacher__body__name > span {
  font-size: 12px;
  padding-left: 4px;
}
.p-teacher__img {
  width: 140px;
}
.p-teacher__img img {
  width: 100%;
}
.p-teacher__img--small {
  width: 100px;
}

@media screen and (max-width:767px) {
    /* 審査員コメント */

  .p-teacher {
    transform: translateY(-28%);
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    padding-right: 4vw;
    margin-top: -8vw;
  }
  .l-teacherComment .p-teacher {
    transform: translateY(-44%);
    padding-right: 7vw;
    margin-top: -8vw;
    padding-bottom: 6vw;
  }
  .p-teacher__body__post {
    font-size: 3.2vw;
    line-height: 4vw;
    display: block;
  }
  .p-teacher__body {
    margin-right: 3vw;
    margin-bottom: 3vw;
  }
  .l-teacherComment .p-teacher__body {
    margin-right: 5vw;
    margin-bottom: 0;
  }
  .p-teacher__body__name {
    font-weight: bold;
    display: block;
    font-size: 16px;
    text-align: right;
  }
  .p-teacher__body__name > span {
    font-size: 12px;
    padding-left: 7px;
  }
  .l-teacherComment .p-teacher__body__name > span {
    font-size: 12px;
    padding-left: 4px;
  }
  .p-teacher__img {
    width: 32vw;
  }
  .p-teacher__img img {
    width: 100%;
  }
  .p-teacher__img--small {
    width: 21vw;
  }
  .readmore {
    display: none;
  }
  .readmore-text {
    display: block;
    position: relative;
    padding-top: 1em;
  }
  .readmore-text:before {
    content: "...続きを読む";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 4vw;
    color: #E2B703;
  }
}

/* ボタン：デフォルト */

.c-btn {
  display: inline-block;
  color: #0041A0;
  width: 310px;
  max-width: 100%;
  background-color: #fff;
  border: 2px solid currentColor;
  text-align: center;
  text-decoration: none;
  transition: .25s;
  font-weight: bold;
  position: relative;
  padding-top: 23px;
  padding-right: 2.8em;
  padding-bottom: 23px;
  padding-left: 5em;
}

.c-btn:focus,
.c-btn:hover {
  text-decoration: none;
  background-color: #C8F0ED;
  transition: .25s;
}
.c-btn:focus::after,
.c-btn:hover::after {
  right: 1em;
  transition: .25s;
}

.c-btn::after {
  position: absolute;
  content: "";
  background-image: url(../img/common/icon_arrow.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 7px;
  height: 11px;
  top: 50%;
  right: 1.2em;
  transform: translateY(-50%);
  transition: .25s;
}

.c-btn--small {
  width: 180px;
  font-size: 13px;
  line-height: 26px;
  border: 1px solid currentColor;
  background-color: #fff;
  margin-top: 6px;
  padding-top: 6px;
  padding-bottom: 6px;
  padding-right: 2em;
  padding-left: 2.5em;
  letter-spacing: 0.1em;
  transition: 0.2s all ease;
}
.c-btn--small::after {
  width: 6px;
  height: 10px;
  right: 0.9em;
}

/* バナー一覧：ホバー時の動き */

.c-card:hover .c-btn--small {
  color: #fff;
  background-color: #174299;
  border: 1px solid #174299;
}
.c-card:hover .c-btn--small::after {
  right: 0.7em;
}

.p-btnBox {
  display: flex;
  justify-content: center;
  padding-right: 20px;
  padding-left: 20px;
}
.p-btnBox .c-btn:first-child {
  margin-right: 20px;
}

/* バナー一覧：ホバー時の動き */

.c-card:hover .c-btn--small {
  color: #fff;
  background-color: #174299;
  border: 1px solid #174299;
}
.c-card:hover .c-btn--small::after {
  right: 0.7em;
}

.p-btnBox {
  display: flex;
  justify-content: center;
  padding-right: 20px;
  padding-left: 20px;
}
.p-btnBox .c-btn:first-child {
  margin-right: 20px;
}

/* アイコン付きボタン */

.c-btn.c-btn--note::before {
  position: absolute;
  content: "";
  background-image: url(../img/common/icon_note.svg);
  background-repeat: no-repeat;
  background-size: cover;
  top: 50%;
  left: 1.6em;
  transform: translateY(-50%);
  width: 33px;
  height: 36px;
}
.c-btn.c-btn--comment::before {
  position: absolute;
  content: "";
  background-image: url(../img/common/icon_comment.svg);
  background-repeat: no-repeat;
  background-size: cover;
  top: 50%;
  left: 1.4em;
  transform: translateY(-50%);
  width: 43px;
  height: 30px;
}

/* インタビュー：最下部のボタン */

.c-btn--big {
  width: 420px;
  font-size: 16px;
  line-height: 30px;
  border: 2px solid currentColor;
  margin-top: 6px;
  padding-top: 24px;
  padding-bottom: 23px;
  padding-right: 3em;
  padding-left: 4.8em;
  letter-spacing: 0em;
}

/* インタビュー：モーダルCLOSEボタン */

.c-btn--close {
  position: fixed;
  text-align: center;
  top: 10px;
  right: 30px;
  width: 60px;
  height: 84px;
  display: block;
  z-index: 999;
}
.c-btn--close span {
  display: block;
  font-size: 10px;
  line-height: 24px;
  font-weight: bold;
  color: #000;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.c-btn--close:before {
  content: "";
  width: 46px;
  height: 1px;
  background: #666;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  transition: .5s all ease;
}
.c-btn--close:after {
  content: "";
  width: 46px;
  height: 1px;
  background: #666;
  transform: rotate(-45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  transition: .5s all ease;
}
.c-btn--close:hover:before {
  width: 34px;
  transition: .5s all ease;
}
.c-btn--close:hover:after {
  width: 34px;
  transition: .5s all ease;
}




/* 動画再生ボタン */

.c-btn--play--big--box {
  position: absolute;
  top: auto;
  right: 4px;
  left: auto;
  bottom: -13px;
  width: 124px;
  height: 124px;
}
.c-btn--play--box {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 108px;
  height: 108px;
  transform: translate(-50%, -42%);
}

.c-btn--play {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  width: 96px;
  height: 96px;
  border-radius: 50%;
  background-color: #fff;
  border: 2px solid #000;
  transition: 0.2s all ease;
  z-index: 99;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  z-index: 1;
}
.c-card:hover .c-btn--play {
  width: 108px;
  height: 108px;
}

.c-btn--play--box::before {
  position: absolute;
  content: "";
  width: 24px;
  height: 26px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/common/btn_movie_play.svg);
  -webkit-backface-visibility:hidden;
  background-repeat: no-repeat;
  backface-visibility:hidden;
  pointer-events: none;
  z-index: 2;
}
.c-btn--play--big--box::before {
  position: absolute;
  content: "";
  width: 24px;
  height: 26px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/common/btn_movie_play.svg);
  -webkit-backface-visibility:hidden;
  background-repeat: no-repeat;
  backface-visibility:hidden;
  pointer-events: none;
  z-index: 2;
}
.c-btn--play--big {
  width: 112px;
  height: 112px;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  transition: 0.2s all ease;
  z-index: 1;
}
.c-btn--play--big:hover {
  width: 124px;
  height: 124px;
}
.c-btn--play--big--box::after {
  position: absolute;
  content: "";
  pointer-events: none;
  z-index: 2;
  width: 88px;
  height: 88px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/common/btn_movie_text.svg);
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  -webkit-animation: spin 15s linear infinite;
  -moz-animation: spin 15s linear infinite;
  -ms-animation: spin 15s linear infinite;
  -o-animation: spin 15s linear infinite;
  animation: spin 15s linear infinite;
}
@-webkit-keyframes spin {
	0% {-webkit-transform: rotate(0deg);}
	100% {-webkit-transform: rotate(360deg);}
}
@-moz-keyframes spin {
	0% {-moz-transform: rotate(0deg);}
	100% {-moz-transform: rotate(360deg);}
}
@-ms-keyframes spin {
	0% {-ms-transform: rotate(0deg);}
	100% {-ms-transform: rotate(360deg);}
}
@-o-keyframes spin {
	0% {-o-transform: rotate(0deg);}
	100% {-o-transform: rotate(360deg);}
}
@keyframes spin {
	0% {transform: rotate(0deg);}
	100% {transform: rotate(360deg);}
}

@media screen and (max-width:767px) {

  /* ボタン：デフォルト */

  .c-btn {
    display: block;
    color: #0041A0;
    width: 64vw;
    max-width: 100%;
    background-color: #fff;
    border: 2px solid currentColor;
    text-align: center;
    text-decoration: none;
    transition: .25s;
    font-weight: bold;
    position: relative;
    padding-top: 4.5vw;
    padding-right: 2em;
    padding-bottom: 4vw;
    padding-left: 3.5em;
    margin-right: auto;
    margin-left: auto;
    font-size: 3.8vw;
    margin-bottom: 4.5vw;
  }

  .c-btn:focus,
  .c-btn:hover {
    text-decoration: none;
    background-color: #C8F0ED;
    transition: .25s;
  }
  .c-btn:focus::after,
  .c-btn:hover::after {
    right: 1em;
    transition: .25s;
  }

  .c-btn::after {
    position: absolute;
    content: "";
    background-image: url(../img/common/icon_arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 3vw;
    height: 3vw;
    top: 50%;
    right: 1.2em;
    transform: translateY(-50%);
    transition: .25s;
  }

  .c-btn--small {
    width: 51vw;
    font-size: 3.5vw;
    line-height: 8vw;
    border: 1px solid currentColor;
    background-color: #fff;
    margin-top: 0vw;
    padding-top: 3vw;
    padding-bottom: 3vw;
    padding-right: 2em;
    padding-left: 2.5em;
    letter-spacing: 0.1em;
  }
  .c-btn--small::after {
    width: 1.6vw;
    height: 4vw;
    right: 1.4em;
  }

  /* バナー一覧：ホバー時の動き */

  .c-card:hover .c-btn--small {
    color: #fff;
    background-color: #174299;
    border: 1px solid #174299;
  }
  .c-card:hover .c-btn--small::after {
    right: 0.7em;
  }

  .p-btnBox {
    display: block;
    justify-content: center;
    padding-right: 0;
    padding-left: 0;
  }
  .p-btnBox .c-btn:first-child {
    margin-right: auto;
  }

  /* アイコン付きボタン */

  .c-btn.c-btn--note::before {
    position: absolute;
    content: "";
    background-image: url(../img/common/icon_note.svg);
    background-repeat: no-repeat;
    background-size: contain;
    top: 57%;
    left: 1.3em;
    transform: translateY(-50%);
    width: 8vw;
    height: 9vw;
  }
  .c-btn.c-btn--comment::before {
    position: absolute;
    content: "";
    background-image: url(../img/common/icon_comment.svg);
    background-repeat: no-repeat;
    background-size: contain;
    top: 50%;
    left: 1.4em;
    transform: translateY(-35%);
    width: 9.5vw;
    height: 7vw;
  }

  /* インタビュー：最下部のボタン */

  .c-btn--big {
    width: 87%;
    font-size: 3.7vw;
    line-height: 9vw;
    border: 2px solid currentColor;
    margin-top: 2vw;
    padding-top: 4vw;
    padding-bottom: 4vw;
    padding-right: 2em;
    padding-left: 3em;
    letter-spacing: 0em;
    margin-right: auto;
  }

  /* インタビュー：モーダルCLOSEボタン */

  .c-btn--close {
    position: fixed;
    text-align: center;
    top: 0;
    right: 0;
    z-index: 999;
    background-color: #FFCEAF;
    padding: 2vw 3vw;
    width: 12vw;
    height: 16vw;
    display: block;
  }
  .u-bgGreen .c-btn--close {
    background-color: #78C3B3;
  }
  .u-bgBlue .c-btn--close {
    background-color: #C2BEF5;
  }
  .c-btn--close span {
    display: block;
    font-size: 2.7vw;
    line-height: 2vw;
    font-weight: bold;
    color: #000;
    position: absolute;
    bottom: 2vw;
    left: 0;
    right: 0;
    margin: auto;
  }

  .c-btn--close:before {
    content: "";
    width: 6vw;
    height: 1px;
    background: #666;
    transform: rotate(45deg);
    position: absolute;
    top: -1vw;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    transition: .5s all ease;
  }
  .c-btn--close:after {
    content: "";
    width: 6vw;
    height: 1px;
    background: #666;
    transform: rotate(-45deg);
    position: absolute;
    top: -1vw;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    transition: .5s all ease;
  }


  /* 動画再生ボタン */

  .c-btn--play--big--box {
    position: absolute;
    top: auto;
    right: -7vw;
    left: auto;
    bottom: -5vw;
    width: 28vw;
    height: 28vw;
  }
  .c-btn--play--box {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 108px;
    height: 108px;
    transform: translate(-50%, -42%);
  }

  .c-btn--play {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    width: 22vw;
    height: 22vw;
    border-radius: 50%;
    background-color: #fff;
    border: 2px solid #000;
    transition: 0.2s all ease;
    z-index: 99;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    z-index: 1;
  }
  .c-card:hover .c-btn--play {
    width: 108px;
    height: 108px;
  }

  .c-btn--play--box::before {
    position: absolute;
    content: "";
    width: 6vw;
    height: 8vw;
    top: 1vw;
    bottom: 0;
    left: 2vw;
    right: 0;
    margin: auto;
    background-image: url(../img/common/btn_movie_play.svg);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background-repeat: no-repeat;
    pointer-events: none;
    z-index: 2;
    background-repeat: no-repeat;
    background-size: contain;
  }
  .c-btn--play--big--box::before {
    position: absolute;
    content: "";
    width: 5vw;
    height: 6vw;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-image: url(../img/common/btn_movie_play.svg);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background-repeat: no-repeat;
    pointer-events: none;
    z-index: 2;
    background-repeat: no-repeat;
    background-size: contain;
  }
  .c-btn--play--big {
    width: 24vw;
    height: 24vw;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    transition: 0.2s all ease;
    z-index: 1;
  }
  .c-btn--play--big:hover {
    width: 25vw;
    height: 25vw;
  }
  .c-btn--play--big--box::after {
    position: absolute;
    content: "";
    pointer-events: none;
    z-index: 2;
    width: 19.8vw;
    height: 19.8vw;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-image: url(../img/common/btn_movie_text.svg);
    background-size: contain;
    background-repeat: no-repeat;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    -webkit-animation: spin 7s linear infinite;
    -moz-animation: spin 7s linear infinite;
    -ms-animation: spin 7s linear infinite;
    -o-animation: spin 7s linear infinite;
    animation: spin 7s linear infinite;
  }
  @-webkit-keyframes spin {
    0% {-webkit-transform: rotate(0deg);}
    100% {-webkit-transform: rotate(360deg);}
  }
  @-moz-keyframes spin {
    0% {-moz-transform: rotate(0deg);}
    100% {-moz-transform: rotate(360deg);}
  }
  @-ms-keyframes spin {
    0% {-ms-transform: rotate(0deg);}
    100% {-ms-transform: rotate(360deg);}
  }
  @-o-keyframes spin {
    0% {-o-transform: rotate(0deg);}
    100% {-o-transform: rotate(360deg);}
  }
  @keyframes spin {
    0% {transform: rotate(0deg);}
    100% {transform: rotate(360deg);}
  }

}



/* インタビュー：小学生の部・中学生の部 */

.c-label {
  position: absolute;
  width: 180px;
  top: 0;
  left: 65px;
  transform: translateY(-50%);
  font-size: 16px;
  line-height: 30px;
  border-radius: 12px;
  text-align: center;
  padding-top: 23px;
  padding-bottom: 13px;
  font-weight: bold;
  letter-spacing: 0.1em;
}

@media screen and (max-width:767px) {

  /* インタビュー：小学生の部・中学生の部 */

  .c-label {
    position: absolute;
    width: 47vw;
    top: 0;
    left: 20vw;
    transform: translateY(-50%);
    font-size: 4.3vw;
    line-height: 8vw;
    border-radius: 3vw;
    text-align: center;
    padding-top: 7vw;
    padding-bottom: 2vw;
    font-weight: bold;
    letter-spacing: 0.1em;
  }

}


/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
TOP_KV
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

.p-homeVidual {
  padding-top: 83px;
  position: relative;
}
.p-homeVidual:after {
  content: "";
  position: absolute;
  bottom: -220px;
  left: 0;
  width: 100%;
  display: block;
  background-image: url(../img/66/back_curtain.png);
  background-repeat: no-repeat;
  background-position: center bottom;
  height: 220px;
  background-color: #fff;
  background-size: cover;
  z-index: -1;
}
.p-homeVidual__main {
  position: relative;
  display: block;
  margin: 0 auto;
  width: 950px;
  z-index: 99;
}
.p-homeVidual__side--left {
  position: absolute;
  top: 0;
  left: -12px;
  transform: scale(-1, 1);
}
.p-homeVidual__side--right {
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (min-width:1367px) {
  .p-homeVidual__side--left {
    left: -1vw;
    width: 13vw;
  }
  .p-homeVidual__side--right {
    width: 13vw;
  }
}

/* 審査総評 */

.p-generalComment {
  color: #0041A0;
}
.p-generalComment__title {
  position: relative;
  z-index: 99;
  text-align: center;
  transform: translateY(61%);
}
.p-generalComment__text {
  position: relative;
  background: #fff;
  border: 2px solid #17429A;
  border-radius: 12px;
  font-size: 16px;
  line-height: 34px;
  padding: 43px 50px;
  letter-spacing: 0.07em;
}
.p-generalComment__text::after {
  content: "";
  position: absolute;
  width: 38px;
  height: 30px;
  background-image: url(../img/common/balloon_blue.svg);
  background-size: contain;
  background-repeat: no-repeat;
  right: 208px;
  bottom: 0;
  transform: translateY(91%);
}

/* 審査員コメント */

.p-teacherComment {
  color: #6BBFA5;
}
.p-teacherComment__title {
  position: absolute;
  z-index: 99;
  text-align: left;
  transform: translateY(-50%);
  font-size: 18px;
  line-height: 26px;
  font-weight: bold;
}
.p-teacherComment__title__inner {
  display: inline-block;
  border-radius: 21px;
  border: 2px solid #6BBFA5;
  padding: 4px 18px 4px 24px;
  margin-left: 33px;
  letter-spacing: 0.19em;
  background: #fff;
}
.p-teacherComment__text {
  position: relative;
  color: #444;
  background: #fff;
  border: 2px solid #6BBFA5;
  border-radius: 12px;
  font-size: 16px;
  line-height: 32px;
  padding: 35px 32px 47px 39px;
  letter-spacing: 0;
}
.p-teacherComment__text--blue {
  color: #0041A0;
}
.p-teacherComment__text::after {
  content: "";
  position: absolute;
  width: 38px;
  height: 30px;
  background-image: url(../img/common/balloon_green.svg);
  background-size: contain;
  background-repeat: no-repeat;
  right: 149px;
  bottom: 0;
  transform: translateY(80%);
  z-index: 99;
}

@media screen and (max-width:767px) {
  .p-homeVidual {
    padding-top: 7vw;
  }
  .p-homeVidual:after {
    background-image: url(../img/66/back_curtain.png);
    bottom: -30vw;
    height: 30vw;
  }
  .p-homeVidual__main {
    display: block;
    margin: 0 auto;
    width: 97vw;
    position: relative;
    z-index: 99;
  }
  .p-homeVidual__side--left {
    position: absolute;
    top: 0;
    left: -2vw;
    transform: scale(-1, 1);
    width: 17.5vw;
  }
  .p-homeVidual__side--right {
    position: absolute;
    top: 0;
    right: -1vw;
    width: 17.5vw;
  }

  /* 審査総評 */

  .p-generalComment {
    color: #0041A0;
  }
  .p-generalComment__title {
    position: relative;
    z-index: 99;
    text-align: center;
    transform: translateY(61%);
  }
  .p-generalComment__title img {
    width: 40vw;
  }
  .p-generalComment__text {
    position: relative;
    background: #fff;
    border: 2px solid #17429A;
    border-radius: 4vw;
    font-size: 4.3vw;
    line-height: 8vw;
    padding: 7.6vw 6vw;
    letter-spacing: 0.07em;
  }
  .p-generalComment__text::after {
    content: "";
    position: absolute;
    width: 11vw;
    height: 11vw;
    background-image: url(../img/common/balloon_blue.svg);
    background-size: contain;
    background-repeat: no-repeat;
    right: 49vw;
    bottom: 0;
    transform: translateY(84%);
    background-repeat: no-repeat;
  }
  
  /* 審査員コメント */
  
  .p-teacherComment {
    color: #6BBFA5;
  }
  .p-teacherComment__title {
    position: absolute;
    z-index: 99;
    text-align: left;
    transform: translateY(-50%);
    font-weight: bold;
  }
  .p-teacherComment__title__inner {
    display: inline-block;
    border-radius: 6vw;
    border: 1vw solid #6BBFA5;
    padding: 1vw 5vw 1vw 5vw;
    letter-spacing: 0.1em;
    background: #fff;
    margin-left: 9vw;
    font-size: 4.8vw;
    line-height: 8vw;
  }
  .p-teacherComment__text {
    position: relative;
    color: #444;
    background: #fff;
    border: 1vw solid #6BBFA5;
    border-radius: 12px;
    font-size: 4.3vw;
    line-height: 8.1vw;
    padding: 8.6vw 6vw 8vw 6vw;
    letter-spacing: 0;
  }
  .p-teacherComment__text--blue {
    color: #0041A0;
  }
  .p-teacherComment__text::after {
    content: "";
    position: absolute;
    width: 11vw;
    height: 9vw;
    background-image: url(../img/common/balloon_green.svg);
    background-size: contain;
    background-repeat: no-repeat;
    right: 37vw;
    bottom: 0;
    transform: translateY(59%);
    z-index: 99;
    background-repeat: no-repeat;
  }
}

/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
TOP_賞の一覧
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/
.c-awardTitle {
  text-align: center;
  margin-bottom: 59px;
  width: 487px;
  margin-right: auto;
  margin-left: auto;
}
.c-awardTitle img {
  width: 100%;
}
.p-awardCard {
  position: relative;
  max-width: 1092px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  border: 2px solid #000;
  background-color: #FFE997;
  padding: 24px;
}
.l-olympusAward .p-awardCard {
  background-color: #C8F0ED;
}
.p-awardCard:not(:last-child) {
  margin-bottom: 120px;
}
.p-awardCard::before {
  position: absolute;
  content: "";
  background-image: url(../img/common/ribbon_orange.svg);
  background-repeat: no-repeat;
  width: 120px;
  height: 120px;
  top: -2px;
  left: -2px;
}
.p-awardCard::after {
  position: absolute;
  content: "";
  background-image: url(../img/common/ribbon_orange.svg);
  background-repeat: no-repeat;
  width: 120px;
  height: 120px;
  bottom: -2px;
  right: -2px;
  transform: rotate(180deg);
}
.l-olympusAward .p-awardCard::before {
  background-image: url(../img/common/ribbon_blue.svg);
  background-repeat: no-repeat;
}
.l-olympusAward .p-awardCard::after {
  background-image: url(../img/common/ribbon_blue.svg);
  background-repeat: no-repeat;
}
.p-awardCard__inner {
  background-color: #fff;
  border-radius: 10px;
}

/* タイトル：小学校の部・中学校の部 */

.c-partTitle {
  position: relative;
  text-align: center;
  padding-top: 14px;
  letter-spacing: 0.1em;
  margin-bottom: 58px;
}
.c-partTitle::before {
  content: "";
  position: absolute;
  width: 240px;
  height: 84px;
  background-image: url(../img/common/frame_part.svg);
  background-repeat: no-repeat;
  top: -25px;
  left: 50%;
  transform: translate(-50%);
}
.c-partTitle__inner {
  position: relative;
  display: inline-block;
  font-weight: bold;
  z-index: 99;
}

/* フレームに入った写真 */

.p-awardCard__img {
  position: relative;
  width: 540px;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 57px;
  padding-top: 3%;
}
.p-awardCard__img::before {
  position: absolute;
  content: "";
  width: 640px;
  height: 400px;
  background-image: url(../img/common/frame_image.svg);
  background-repeat: no-repeat;
  top: -18px;
  left: 50%;
  transform: translate(-50%);
}
.p-awardCard__img img {
  width:100%;
}

@media screen and (max-width:767px) {
  .c-awardTitle {
    text-align: center;
    margin-bottom: 12vw;
    width: 87vw;
    margin-right: auto;
    margin-left: auto;
  }
  .c-awardTitle img {
    display: block;
    width: 100%;
  }
  .p-awardCard {
    position: relative;
    max-width: 1092px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    border: 2px solid #000;
    background-color: #FFE997;
    padding: 3vw;
  }
  .l-olympusAward .p-awardCard {
    background-color: #C8F0ED;
  }
  .p-awardCard:not(:last-child) {
    margin-bottom: 120px;
  }
  .p-awardCard::before {
    position: absolute;
    content: "";
    background-image: url(../img/common/ribbon_orange.svg);
    background-repeat: no-repeat;
    width: 17vw;
    height: 17vw;
    top: -0.3vw;
    left: -0.4vw;
    background-size: contain;
    background-repeat: no-repeat;
  }
  .p-awardCard::after {
    position: absolute;
    content: "";
    background-image: url(../img/common/ribbon_orange.svg);
    background-repeat: no-repeat;
    width: 17vw;
    height: 17vw;
    bottom: -2px;
    right: -2px;
    background-size: contain;
    background-repeat: no-repeat;
    transform: rotate(180deg);
  }
  .l-olympusAward .p-awardCard::before {
    background-image: url(../img/common/ribbon_blue.svg);
    background-repeat: no-repeat;
  }
  .l-olympusAward .p-awardCard::after {
    background-image: url(../img/common/ribbon_blue.svg);
    background-repeat: no-repeat;
  }
  .p-awardCard__inner {
    background-color: #fff;
    border-radius: 4vw;
  }
  
  /* タイトル：小学校の部・中学校の部 */
  
  .c-partTitle {
    position: relative;
    text-align: center;
    padding-top: 10px;
    letter-spacing: 0.1em;
    margin-bottom: 12vw;
  }
  .c-partTitle::before {
    content: "";
    position: absolute;
    width: 43vw;
    height: 15vw;
    background-image: url(../img/common/frame_part.svg);
    top: -3vw;
    left: 50%;
    transform: translate(-50%);
    background-size: contain;
    background-repeat: no-repeat;
  }
  .c-partTitle__inner {
    position: relative;
    display: inline-block;
    font-weight: bold;
    z-index: 99;
    font-size: 3vw;
  }
  
  /* フレームに入った写真 */
  
  .p-awardCard__img {
    position: relative;
    width: 71%;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 6vw;
    padding-top: 0%;
  }
  .p-awardCard__img::before {
    position: absolute;
    content: "";
    width: 66vw;
    height: 42vw;
    background-image: url(../img/common/frame_image.svg);
    background-repeat: no-repeat;
    top: -5vw;
    left: 50%;
    transform: translate(-50%);
    background-repeat: no-repeat;
    background-size: contain;
  }
  .p-awardCard__img img {
    width:100%;
  }

}

/* 受賞者紹介・作品紹介 */

.p-study {
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 0.05em;
  margin-bottom: 30px;
}
.p-study__img {
  width: 100px;
  height: 100px;
  margin-right: 20px;
}
.p-study__img img {
  width: 100%;
}
.p-study__body {
  padding-right: 17px;
}
.p-study__body__title {
  font-size: 18px;
  line-height: 26px;
  font-weight: bold;
  color: #41B69E;
  margin-bottom: 1px;
}
.p-study__body__title span {
  font-size: 13px;
}
.p-study__body__name {
  color: #0041A0;
  font-size: 16px;
  line-height: 24px;
  padding-right: 5px;
  font-weight: bold;
}
.p-study__body__name span {
  font-size: 10px;
  line-height: 24px;
  padding-left: 4px;
}
.p-study__body__belong {
  font-size: 12px;
  line-height: 24px;
  letter-spacing: 0.05em;
}

.p-study--interview {
  flex-direction: column;
  margin-bottom: 60px;
}
.p-study--interview .p-study__img {
  width: 256px;
  height: 256px;
  margin-right: 0;
  position: relative;
  margin-bottom: 35px;
}
.p-study--interview .p-study__img::before {
  position: absolute;
  content: "";
  background-image: url(../img/common/interview/frame_orange.svg);
  background-size: contain;
  background-repeat: no-repeat;
  top: 50%;
  left: 50%;
  width: 274px;
  height: 274px;
  transform: translate(-50%, -50%);
}
.l-interview--olympusAward .p-study--interview .p-study__img::before {
  background-image: url(../img/common/interview/frame_blue.svg);
  background-repeat: no-repeat;
}
.p-study--interview .p-study__img__title {
  position: absolute;
  width: 274px;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.p-study--interview .p-study__body {
  padding-right: 0;
}
.p-study--interview .p-study__body__title {
  text-align: center;
  font-size: 16px;
  line-height: 24px;
  margin-bottom: 19px;
}
.p-study--interview .p-study__body__title span {
  font-size: 12px;
}
.p-study--interview .p-study__body__name {
  display: block;
  text-align: center;
}
.p-study--interview .p-study__body__nameWrap {
  display: block;
  text-align: center;
}
.p-study--interview .p-study__body__name--02 {
  display: inline-block;
}
.p-study--interview .p-study__body__belong {
  display: block;
  text-align: center;
  line-height: 19px;
}




@media screen and (max-width:767px) {

  /* 受賞者紹介・作品紹介 */

  .p-study {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    letter-spacing: 0.05em;
    margin-bottom: 7vw;
  }
  .p-study--02 {
    padding-bottom: 6vw;
  }
  .p-study__img {
    position: absolute;
    bottom: 1.5vw;
    left: 7.5vw;
    width: 16vw;
    height: 16vw;
    margin-right: 0;
  }
  .p-study__img img {
    width: 100%;
  }
  .p-study--02 > .p-study__img:first-child {
    bottom: 19vw;
  }
  .p-study__body {
    padding-right: 7vw;
    padding-left: 7vw;
    display: flex;
    flex-direction: column;
  }
  .p-study__body__title {
    font-size: 4.9vw;
    line-height: 7vw;
    font-weight: bold;
    color: #41B69E;
    margin-bottom: 3vw;
    order: 1;
  }
  .p-study--02  .p-study__body__title {
    margin-bottom: 6vw;
  }
  .p-study__body__title span {
    font-size: 13px;
  }
  .p-study__body__name {
    display: block;
    color: #0041A0;
    font-size: 4.3vw;
    line-height: 6vw;
    padding-right: 0.5vw;
    font-weight: bold;
    order: 3;
    padding-left: 21.5vw;
  }
  .p-study__body__name span {
    font-size: 2.5vw;
    line-height: 7vw;
    padding-left: 0.5vw;
  }
  .p-study__body__belong {
    display: block;
    font-size: 3.2vw;
    line-height: 5.4vw;
    letter-spacing: 0.05em;
    order: 2;
    padding-left: 21.5vw;
  }

  .p-study--interview {
    flex-direction: column;
    margin-bottom: 18vw;
    margin-top: 8vw;
  }
  .p-study--interview .p-study__img {
    width: 64vw;
    height: 64vw;
    position: relative;
    margin: 0 auto 2vw;
    bottom: 1.5vw;
    left: 0;
    right: 0;
  }
  .p-study--interview .p-study__img::before {
    position: absolute;
    content: "";
    background-image: url(../img/common/interview/frame_orange.svg);
    background-size: contain;
    background-repeat: no-repeat;
    top: 50%;
    left: 50%;
    width: 64vw;
    height: 64vw;
    transform: translate(-50%, -50%);
  }
  .l-interview--olympusAward .p-study--interview .p-study__img::before {
    background-image: url(../img/common/interview/frame_blue.svg);
    background-repeat: no-repeat;
  }
  .p-study--interview .p-study__img__title {
    position: absolute;
    width: 64vw;
    bottom: 1vw;
    left: 50%;
    transform: translateX(-50%);
  }
  .p-study--interview .p-study__body {
    padding-right: 0;
    padding-left: 0;
  }
  .p-study--interview .p-study__body__title {
    text-align: center;
    font-size: 4.3vw;
    line-height: 6.8vw;
    margin-bottom: 3.5vw;
  }
  .p-study--interview .p-study__body__title span {
    font-size: 12px;
  }
  .p-study--interview .p-study__body__name {
    display: block;
    text-align: center;
    order: 2;
    padding-left: 0;
  }
  .p-study--interview .p-study__body__name--02 {
    display: inline-block;
  }
  .p-study--interview .p-study__body__belong {
    display: block;
    text-align: center;
    line-height: 5vw;
    order: 3;
    padding-left: 0;
  }
}


/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
TOP__バナー一覧
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/


.p-cardBox {
  max-width: 1000px;
  width: 100%;
  padding-right: 20px;
  padding-left: 20px;
  display: flex;
  justify-content: space-between;
}
.c-card {
  position: relative;
  display: block;
  border: 1px solid #17429A;
  max-width: 457px;
  width: 100%;
  text-align: center;
}
.c-card * {
  transition: .3s;
}
.c-card:hover * {
  opacity: 1;
}
.c-card::before {
  content: "";
  top: 0;
  left: 0;
  opacity: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255,0.3);
  z-index: 99;
}
.c-card:hover::before {
  transition: .3s;
  opacity: 1;
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255,0.3);
  z-index: 99;
}
.c-card__body {
  position: relative;
  padding-top: 36px;
  padding-right: 36px;
  padding-bottom: 27px;
  padding-left: 36px;
  text-align: center;
}
.c-card__label {
  position: absolute;
  width: 76px;
  height: 76px;
  top: 0;
  right: 23px;
  transform: translateY(-50%);
}
.c-card__label img {
  width: 100%;
}
.c-card__img {
  position: relative;
  display: block;
  width: 100%;
  line-height: 0;
}
.c-card__img img {
  width: 100%;
}

.c-card__title {
  font-size: 20px;
  line-height: 26px;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.1em;
  margin-bottom: 22px;
}
.c-card__post {
  display: block;
  text-align: center;
  font-size: 12px;
  line-height: 15px;
}
.c-card__name {
  font-weight: bold;
  display: block;
  text-align: center;
}
.c-card__name span {
  font-size: 12px;
}



.c-banner {
  position: relative;
  display: block;
  border: 2px solid #17429A;
  max-width: 457px;
  width: 100%;
  background: #fff;
  overflow: hidden;
}
.c-banner * {
  transition: .3s;
}
.c-banner__left:hover,
.c-banner__right:hover {
  opacity: 0.7 !important;
}
.c-banner__right {
  background: #FFE997;
}
.c-banner__right:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 24px;
  margin: auto;
  width: 8px;
  height: 8px;
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
  transform: rotate(45deg);
  z-index: 1;
  transition: .3s all ease;
}


.c-banner__right:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 53px;
  background: #0041A0;
  border: 1px solid #0041A0;
  height: 46px;
  transition: .3s all ease;
}
.c-banner__right:hover:before {
  right: 14px;
  transition: .3s all ease;
}
.c-banner__right:hover:after {
  right: -10px;
  transition: .3s all ease;
}

.c-banner__body__left {
  position: relative;
  padding-top: 36px;
  padding-right: 36px;
  padding-bottom: 27px;
  padding-left: 130px;
}
.c-banner__body__right {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 100%;
  padding-left: 120px;
}
.c-banner__body__left .c-banner__label {
  position: absolute;
  width: 76px;
  height: 76px;
  top: 0;
  bottom: 0;
  left: 23px;
  margin: auto;
}
.c-banner__body__right .c-banner__label {
  position: absolute;
  width: 30px;
  height: 50px;
  top: 0;
  bottom: 0;
  left: 42px;
  margin: auto;
}
.c-banner__label img {
  width: 100%;
}
.c-banner__btn {
  position: absolute;
  width: 61px;
  height: 46px;
  top: 0;
  bottom: 0;
  right: -2px;
  margin: auto;
}
.c-banner__left:hover .c-banner__btn {
  right: -10px;
}
.c-banner__btn img {
  width: 100%;
}
.c-banner__img {
  position: relative;
  display: block;
  width: 100%;
  line-height: 0;
}
.c-banner__img img {
  width: 100%;
}

.c-banner__title {
  font-size: 20px;
  font-weight: bold;
  line-height: 26px;
  letter-spacing: 0.1em;
  margin-bottom: 22px;
}
.c-banner__right .c-banner__title {
  font-size: 20px;
  line-height: 26px;
  letter-spacing: 0.1em;
  margin-top: 64px;
}
.c-banner__post {
  display: block;
  font-size: 12px;
  line-height: 15px;
}
.c-banner__name {
  display: block;
  font-weight: bold;
}
.c-banner__name span {
  font-size: 12px;
}

@media screen and (max-width:767px) {

  .p-cardBox {
    max-width: 1000px;
    width: 100%;
    padding-right: 7vw;
    padding-left: 7vw;
    display: block;
    justify-content: space-between;
  }
  .c-card {
    position: relative;
    display: block;
    border: 1px solid #17429A;
    max-width: 100%;
    width: 100%;
    text-align: center;
    margin-bottom: 11vw;
  }
  .c-card * {
    transition: .3s;
  }
  .c-card:hover * {
    opacity: 1;
  }
  .c-card::before {
    content: "";
    top: 0;
    left: 0;
    opacity: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255,0.3);
    z-index: 99;
  }
  .c-card:hover::before {
    transition: .3s;
    opacity: 1;
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255,0.3);
    z-index: 99;
  }
  .c-card__body {
    position: relative;
    padding-top: 9vw;
    padding-right: 9vw;
    padding-bottom: 7vw;
    padding-left: 9vw;
    text-align: center;
  }
  .c-card__label {
    position: absolute;
    width: 17vw;
    height: 17vw;
    top: 0;
    right: 6.5vw;
    transform: translateY(-50%);
  }
  .c-card__label img {
    width: 100%;
  }
  .c-card__img {
    position: relative;
    display: block;
    width: 100%;
    line-height: 0;
  }
  .c-card__img img {
    width: 100%;
  }
  
  .c-card__title {
    font-size: 4.8vw;
    line-height: 7vw;
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin-bottom: 4vw;
  }
  .c-card__post {
    display: block;
    text-align: center;
    font-size: 3vw;
    line-height: 3.8vw;
  }
  .c-card__name {
    font-weight: bold;
    display: block;
    text-align: center;
  }
  .c-card__name span {
    font-size: 12px;
  }



  .c-banner {
    position: relative;
    display: block;
    border: 2px solid #17429A;
    max-width: 100%;
    width: 100%;
    background: #fff;
    overflow: hidden;
  }
  .c-banner * {
    transition: .3s;
  }
  .c-banner__left:hover,
  .c-banner__right:hover {
    opacity: 0.7 !important;
  }
  .c-banner__right {
    background: #FFE997;
    height: 30vw;
    margin-top: 10vw;
  }
  .c-banner__right:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 4.5vw;
    margin: auto;
    width: 1.6vw;
    height: 1.6vw;
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
    transform: rotate(45deg);
    z-index: 1;
    transition: .3s all ease;
  }


  .c-banner__right:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    width: 10vw;
    background: #0041A0;
    border: 1px solid #0041A0;
    height: 8vw;
    transition: .3s all ease;
  }
  .c-banner__right:hover:before {
    right: 3vw;
    transition: .3s all ease;
  }
  .c-banner__right:hover:after {
    right: -2vw;
    transition: .3s all ease;
  }

  .c-banner__body__left {
    position: relative;
    padding-top: 4vw;
    padding-right: 6vw;
    padding-bottom: 4vw;
    padding-left: 20vw;
  }
  .c-banner__body__right {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 100%;
    padding-left: 20vw;
  }
  .c-banner__body__left .c-banner__label {
    position: absolute;
    width: 14vw;
    height: 14vw;
    top: 0;
    bottom: 0;
    left: 4vw;
    margin: auto;
  }
  .c-banner__body__right .c-banner__label {
    position: absolute;
    width: 8vw;
    height: 14vw;
    top: 0;
    bottom: 0;
    left: 6vw;
    margin: auto;
  }
  .c-banner__label img {
    width: 100%;
  }
  .c-banner__btn {
    position: absolute;
    width: 61px;
    height: 46px;
    top: 0;
    bottom: 0;
    right: -2px;
    margin: auto;
  }
  .c-banner__left:hover .c-banner__btn {
    right: -10px;
  }
  .c-banner__btn img {
    width: 100%;
  }
  .c-banner__img {
    position: relative;
    display: block;
    width: 100%;
    line-height: 0;
  }
  .c-banner__img img {
    width: 100%;
  }

  .c-banner__title {
    font-size: 4vw;
    line-height: 26px;
    letter-spacing: 0.1em;
    margin-bottom: 4vw;
  }
  .c-banner__right .c-banner__title {
    font-size: 4vw;
    line-height: 1.6;
    letter-spacing: 0.1em;
    margin-top: 12vw;
  }
  .c-banner__post {
    display: block;
    font-size: 3vw;
    line-height: 1.6;
  }
  .c-banner__name {
    display: block;
  }
  .c-banner__name span {
    font-size: 3vw;
  }


}

/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
TOP__応募総数
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/


.p-number {
  padding-right: 20px;
  padding-left: 20px;
  max-width: 1000px;
  width: 100%;
}
.p-number__title {
  text-align: center;
  position: relative;
}
.p-number__title::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 6px;
  top: 50%;
  left: 0;
  transform: translateY(-90%);
  border-top: 1px solid #17429A;
  border-bottom: 1px solid #17429A;
  z-index: 1;
}
.p-number__title {
  text-align: center;
  margin-bottom: 3px;
}
.p-number__title img {
  position: relative;
  z-index: 99;
  padding-right: 40px;
  padding-left: 40px;
  background-color: #fff;
}
.p-number__subtitle {
  font-size: 16px;
  line-height: 32px;
  text-align: center;
  letter-spacing: 0.1em;
  margin-bottom: 30px;
}

.p-number__table {
  width: 100%;
}
.p-number__table {
  width: 100%;
}
.p-number__table tr th,
.p-number__table tr td {
  color: #0041A0;
  font-weight: bold;
  font-size: 18px;
  line-height: 32px;
  position: relative;
  text-align: center;
  padding-top: 15px;
  padding-bottom: 15px;
}
.p-number__table tr:not(:first-child) th,
.p-number__table tr:not(:first-child) td {
  padding-top: 23px;
  padding-bottom: 23px;
}
.p-number__table tr:first-child th:first-child {
  width: 180px;
}
.p-number__table tr:first-child th:nth-child(2) {
  width: 260px;
}
.p-number__table tr:first-child th:nth-child(3) {
  width: 260px;
}
.p-number__table tr:first-child th:last-child {
  width: auto;
}
.p-number__table tr:first-child th:nth-child(2),
.p-number__table tr:first-child th:nth-child(3) {
  background-color: #FFE997;
  padding-left: 7rem;
  text-align: left;
}
.p-number__table tr th:first-child {
  font-weight: normal;
  padding-left: 3rem;
  text-align: left;
}
.p-number__table tr td:last-child {
  background-color: #C8F0ED;
}
.p-number__table tr:first-child th:last-child {
  background-color: #0041A0;
  color: #fff;
}
.p-number__table tr:not(:last-child) {
  border-bottom: 2px solid #17429A;
}
.p-number__table tr th:not(:last-child),
.p-number__table tr td:not(:last-child) {
  border-right: 2px solid #17429A;
}
.p-number__table tr:nth-child(2) th:first-child::before,
.p-number__table tr:nth-child(3) th:first-child::before,
.p-number__table tr:nth-child(1) th:nth-child(2)::before,
.p-number__table tr:nth-child(1) th:nth-child(3)::before {
  position: absolute;
  content: "";
  width: 36px;
  height: 41px;
  background-size: contain;
  top: 50%;
}
.p-number__table tr:nth-child(2) th:first-child::before {
  background-image: url(../img/common/icon_school.svg);
  background-repeat: no-repeat;
  width: 27px;
  height: 28px;
  left: 0;
  transform: translateY(-50%);
}
.p-number__table tr:nth-child(3) th:first-child::before {
  background-image: url(../img/common/icon_work.svg);
  background-repeat: no-repeat;
  width: 27px;
  height: 27px;
  left: 0;
  transform: translateY(-50%);
}
.p-number__table tr:nth-child(1) th:nth-child(2)::before {
  background-image: url(../img/common/icon_el.svg);
  background-repeat: no-repeat;
  left: 50%;
  transform: translate(-4.5em,-50%);
}
.p-number__table tr:nth-child(1) th:nth-child(3)::before {
  background-image: url(../img/common/icon_jh.svg);
  background-repeat: no-repeat;
  left: 50%;
  transform: translate(-4.5em,-50%);
}

@media screen and (max-width:767px) {

  .p-number {
    padding-right: 7vw;
    padding-left: 7vw;
    max-width: 1000px;
    width: 100%;
  }
  .p-number__title {
    text-align: center;
    position: relative;
  }
  .p-number__title::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 6px;
    top: 50%;
    left: 0;
    transform: translateY(-90%);
    border-top: 1px solid #17429A;
    border-bottom: 1px solid #17429A;
    z-index: 1;
  }
  .p-number__title {
    text-align: center;
    margin-bottom: 3px;
  }
  .p-number__title img {
    position: relative;
    z-index: 99;
    padding-right: 6vw;
    padding-left: 6vw;
    background-color: #fff;
    width: 49vw;
  }
  .p-number__subtitle {
    font-size: 4.3vw;
    line-height: 11vw;
    text-align: center;
    letter-spacing: 0.1em;
    margin-bottom: 4vw;
  }

  .p-number__table {
    width: 100%;
  }
  .p-number__table {
    width: 100%;
  }
  .p-number__table tr th,
  .p-number__table tr td {
    color: #0041A0;
    font-weight: bold;
    font-size: 4.3vw;
    line-height: 9vw;
    position: relative;
    text-align: center;
    padding-top: 10vw;
    padding-bottom: 1vw;
  }
  .p-number__table tr:not(:first-child) th,
  .p-number__table tr:not(:first-child) td {
    padding-top: 17vw;
    padding-bottom: 4vw;
  }
  .p-number__table tr:first-child th:first-child {
    width: 21%;
  }
  .p-number__table tr:first-child th:nth-child(2) {
    width: 40%;
  }
  .p-number__table tr:first-child th:nth-child(3) {
    width: 40%;
  }
  .p-number__table tr:first-child th:last-child {
    width: auto;
  }
  .p-number__table tr:first-child th:nth-child(2),
  .p-number__table tr:first-child th:nth-child(3) {
    background-color: transparent;
    padding-left: 0rem;
    text-align: center;
  }
  .p-number__table tr th:first-child {
    font-weight: bold;
    padding-left: 0rem;
    text-align: center;
    line-height: 1;
  }
  .p-number__table tr:nth-child(2) th:first-child,
  .p-number__table tr:nth-child(3) th:first-child {
    background-color: #FFE997;
  }
  .p-number__table tr td:last-child {
    background-color: transparent;
  }
  .p-number__table tr:last-child td {
    background-color: #C8F0ED;
  }
  .p-number__table tr:first-child th:last-child {
    background-color: transparent;
    color: #0041A0;
  }
  .p-number__table tr:last-child th:first-child {
    background-color: #0041A0;
    color: #F6C701;
    padding-top: 14vw;
    padding-bottom: 15vw;
    line-height: 1.3;
  }
  .p-number__table tr:not(:last-child) {
    border-bottom: 2px solid #17429A;
  }
  .p-number__table tr th:not(:last-child),
  .p-number__table tr td:not(:last-child) {
    border-right: 2px solid #17429A;
  }
  .p-number__table tr:nth-child(2) th:first-child::before,
  .p-number__table tr:nth-child(3) th:first-child::before,
  .p-number__table tr:nth-child(1) th:nth-child(2)::before,
  .p-number__table tr:nth-child(1) th:nth-child(3)::before {
    position: absolute;
    content: "";
    width: 7vw;
    height: 8vw;
    background-size: contain;
    background-repeat: no-repeat;
    top: 0;
  }
  .p-number__table tr:nth-child(2) th:first-child::before {
    background-image: url(../img/common/icon_el.svg);
    background-repeat: no-repeat;
    width: 10vw;
    height: 11vw;
    left: 50%;
    transform: translate(-50%, 30%);
  }
  .p-number__table tr:nth-child(3) th:first-child::before {
    background-image: url(../img/common/icon_jh.svg);
    background-repeat: no-repeat;
    width: 10vw;
    height: 11vw;
    left: 50%;
    transform: translate(-50%, 30%);
  }
  .p-number__table tr:nth-child(1) th:nth-child(2)::before {
    background-image: url(../img/common/icon_school.svg);
    background-repeat: no-repeat;
    left: 50%;
    transform: translate(-50%, 30%);
  }
  .p-number__table tr:nth-child(1) th:nth-child(3)::before {
    background-image: url(../img/common/icon_work.svg);
    background-repeat: no-repeat;
    left: 50%;
    transform: translate(-50%, 30%);
  }
}


/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
インタビュー
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

/* 黄色斜線背景の見出し */

.c-heading01 {
  position: relative;
  max-width: 820px;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
  font-size: 24px;
  line-height: 32px;
  font-weight: bold;
  color: #41B69E;
  background-color: rgba(255, 255, 255, 1);
  padding-top: 24px;
  padding-bottom: 20px;
  letter-spacing: 0.05em;
  background-image: linear-gradient(-45deg, rgba(255, 233, 151, 1) 10%, #fff 10%, #fff 50%, rgba(255, 233, 151, 1) 50%, rgba(255, 233, 151, 1) 60%, #fff 60%, #fff);
  background-size: 8px 8px;
}
.mordal-04 .c-heading01,
.mordal-03 .c-heading01 {
  color: #4691D3;
}

.c-heading01::before,
.c-heading01::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  background-color: #ccc;
  left: 0;
}
.c-heading01::before {
  top: -5px;
}
.c-heading01::after {
  bottom: -5px;
}

@media screen and (max-width:767px) {

  /* 黄色斜線背景の見出し */

  .c-heading01 {
    position: relative;
    max-width: 88%;
    margin-right: auto;
    margin-left: auto;
    text-align: left;
    font-size: 6.3vw;
    line-height: 8.7vw;
    font-weight: bold;
    background-color: rgba(255, 255, 255, 1);
    padding-top: 5.4vw;
    padding-bottom: 6vw;
    letter-spacing: 0.08em;
    background-image: linear-gradient(-45deg, rgba(255, 233, 151, 1) 10%, #fff 10%, #fff 50%, rgba(255, 233, 151, 1) 50%, rgba(255, 233, 151, 1) 60%, #fff 60%, #fff);
    background-size: 8px 8px;
    padding-right: 5vw;
    padding-left: 5vw;
  }
  .c-heading01 br {
    display: none;
  }
  .c-heading01::before,
  .c-heading01::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    background-color: #ccc;
    left: 0;
  }
  .c-heading01::before {
    top: -5px;
  }
  .c-heading01::after {
    bottom: -5px;
  }
}

/* 66 99 で挟まれた見出し */

.c-heading02 {
  text-align: center;
  color: #41B69E;
  margin-bottom: 60px;
}
.mordal-04 .c-heading02,
.mordal-03 .c-heading02 {
  color: #4691D3;
}
.c-heading02 span {
  position: relative;
  display: inline-block;
  font-size: 22px;
  line-height: 32px;
  font-weight: bold;
  letter-spacing: 0.05em;
}
.c-heading02 span::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  border-top: 1px dashed #707070;
  left: 0;
  bottom: 0;
}
.c-heading02 span:first-child::after,
.c-heading02 span:last-child::after {
  position: absolute;
  content: "";
  width: 45px;
  height: 33px;
  background-image: url(../img/common/interview/title_heading_66.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
.c-heading02 span:first-child:after {
  top: 0.3em;
  left: calc(50% - 273px);;
}
.c-heading02 span:last-child:after {
  bottom: 0.1em;
  right: calc(50% - 273px);;
  transform: rotate(180deg);
}


@media screen and (max-width:767px) {

  /* 66 99 で挟まれた見出し */

  .c-heading02 {
    text-align: center;
    margin-bottom: 0;
    padding-top: 10vw;
    /* padding-bottom: 10vw; */
  }
  .c-heading02 span {
    position: relative;
    display: inline-block;
    font-size: 5vw;
    line-height: 8.5vw;
    font-weight: bold;
    letter-spacing: 0.05em;
  }
  .c-heading02 span::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    border-top: 1px dashed #707070;
    left: 0;
    bottom: 0;
  }
  .c-heading02 span:first-child::after,
  .c-heading02 span:last-child::after {
    position: absolute;
    content: "";
    width: 10vw;
    height: 7.5vw;
    background-image: url(../img/common/interview/title_heading_66.svg);
    background-size: contain;
    background-repeat: no-repeat;
  }
  .c-heading02 span:first-child:after {
    top: -10vw;
    left: calc(50% - 36vw);
  }
  .c-heading02 span:last-child:after {
    bottom: -10vw;
    right: calc(50% - 39vw);
    transform: rotate(180deg);
  }
}

/* インタビュー内容 */

.l-interview__box {
  max-width: 860px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-top: 71px;
  padding-right: 20px;
  padding-bottom: 82px;
  padding-left: 20px;
  border-bottom: 1px solid #CCC;
}
.l-interview__title {
  width: 288px;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 27px;
}

.p-interview {
  max-width: 820px;
  padding-left: 137px;
  padding-right: 137px;
}
.p-interview__question {
  font-size: 16px;
  line-height: 32px;
  font-weight: bold;
  margin-top: 40px;
  background-color: #41B69E;
  border-radius: 12px;
  color: #444;
  padding: 24px 40px;
  position: relative;
}
.l-interview--olympusAward .p-interview__question {
  background-color: #FAEDBA;
}
.p-interview__question::before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 13px 20px 0 20px;
  border-color: #41B69E transparent transparent transparent;
  left: 0;
  top: 34px;
  transform: translateX(-50%);
}
.l-interview--olympusAward .p-interview__question::before {
  border-color: #FAEDBA transparent transparent transparent;
}
.p-interview__question::after {
  position: absolute;
  content: "";
  width: 80px;
  height: 80px;
  top: -2px;
  left: -137px;
  background-image: url(../img/common/interview/icon_boy.png);
  background-size: contain;
  background-repeat: no-repeat;
}
.l-interview--olympusAward .p-interview__question::after {
  background-image: url(../img/66/icon_girl.png);
  background-repeat: no-repeat;
}
.p-interview__answer {
  position: relative;
  font-size: 16px;
  line-height: 32px;
  margin-top: 40px;
  border: 2px solid #17429A;
  border-radius: 12px;
  padding: 20px 40px 30px;
}
.p-interview__answer::before {
  position: absolute;
  content: "";
  width: 80px;
  height: 80px;
  right: -139px;
  top: -1px;
  background-size: contain;
  background-repeat: no-repeat;
}
.l-interview--ministerAward.el .p-interview__answer::before {
  background-image: url(../img/66/thum_student_el_01.png);
  background-repeat: no-repeat;
}
.l-interview--ministerAward.jh .p-interview__answer::before {
  background-image: url(../img/66/thum_student_jh_01.png);
  background-repeat: no-repeat;
}
.l-interview--olympusAward.el .p-interview__answer::before {
  background-image: url(../img/66/thum_student_el_02.png);
}
.l-interview--olympusAward.jh .p-interview__answer::before {
  background-image: url(../img/66/thum_student_jh_02.png);
}
.p-interview__answer::after {
  position: absolute;
  content: "";
  width: 27px;
  height: 20px;
  right: -20px;
  top: 27px;
  background-image: url(../img/common/interview/balloon_blue.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
.p-interview__answer img {
  margin-top: 22px;
  margin-bottom: 10px;
  width: 100%;
}
.p-interview__answer__name {
  position: absolute;
  font-size: 16px;
  line-height: 24px;
  color: #0041A0;
  font-weight: bold;
  top: 84px;
  right: -127px;
}
.p-interview__answer__name span {
  font-size: 10px;
  line-height: 24px;
  padding-left: 4px;
}

@media screen and (max-width:767px) {

  /* インタビュー内容 */

  .l-interview__box {
    max-width: 860px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-top: 12vw;
    padding-right: 6vw;
    padding-bottom: 12vw;
    padding-left: 4vw;
    border-bottom: 1px solid #CCC;
  }
  .l-interview__title {
    width: 63vw;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 6vw;
  }
  .l-interview__title img {
    width: 100%;
  }

  .p-interview {
    max-width: 820px;
    padding-left: 0;
    padding-right: 0;
    padding-top: 2vw;
  }
  .p-interview__question {
    font-size: 4.3vw;
    line-height: 8.7vw;
    font-weight: bold;
    margin-top: 37vw;
    background-color: #41B69E;
    border-radius: 3vw;
    padding: 5vw 4vw 5vw 6vw;
    position: relative;
  }
  .l-interview--olympusAward .p-interview__question {
  }
  .p-interview__question::before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7vw 1vw 0 4vw;
    border-color: #41B69E transparent transparent transparent;
    left: 50%;
    top: -4vw;
    transform: translateX(-77%) rotate(180deg) scale(-1,1);
  }
  .l-interview--olympusAward .p-interview__question::before {
  }
  .p-interview__question::after {
    position: absolute;
    content: "";
    width: 21vw;
    height: 21vw;
    top: -26vw;
    left: 50%;
    background-image: url(../img/common/interview/icon_boy.png);
    background-size: contain;
    transform: translateX(-50%);
    background-repeat: no-repeat;
  }
  .l-interview--olympusAward .p-interview__question::after {
    background-repeat: no-repeat;
  }
  .p-interview__answer {
    position: relative;
    font-size: 4.3vw;
    line-height: 8vw;
    margin-top: 46vw;
    border: 2px solid #17429A;
    border-radius: 12px;
    padding: 3vw 6vw 3vw 7vw;
  }
  .p-interview__answer::before {
    position: absolute;
    content: "";
    width: 21vw;
    height: 21vw;
    right: 50%;
    top: -35vw;
    background-size: contain;
    background-repeat: no-repeat;
    transform: translateX(50%);
  }
  .l-interview--ministerAward.el .p-interview__answer::before {
    background-image: url(../img/66/thum_student_el_01.png);
    background-repeat: no-repeat;
  }
  .l-interview--ministerAward.jh .p-interview__answer::before {
    background-image: url(../img/66/thum_student_jh_01.png);
    background-repeat: no-repeat;
  }
  .l-interview--olympusAward.el .p-interview__answer::before {
    background-image: url(../img/66/thum_student_el_02.png);
  }
  .l-interview--olympusAward.jh .p-interview__answer::before {
    background-image: url(../img/66/thum_student_jh_02.png);
  }
  .p-interview__answer::after {
    position: absolute;
    content: "";
    width: 5.5vw;
    height: 5.5vw;
    right: 50%;
    top: -4.4vw;
    background-image: url(../img/common/interview/balloon_blue.svg);
    background-size: contain;
    background-repeat: no-repeat;
    transform: rotate(-90deg) scale(1,-1) translateY(-20%);
  }
  .p-interview__answer img {
    margin-top: 22px;
    margin-bottom: 10px;
    width: 100%;
  }
  .p-interview__answer__name {
    position: absolute;
    font-size: 4.3vw;
    line-height: 7vw;
    color: #0041A0;
    font-weight: bold;
    top: -12.5vw;
    right: 50%;
    transform: translateX(50%);
  }
  .p-interview__answer__name span {
    font-size: 3vw;
    line-height: 7vw;
    padding-left: 0.5vw;
  }
}


/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
ON・OFF指定
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

.u-pcOn {
  display: block !important;
}
.u-pcIn {
  display: inline !important;
}
.u-pcInblock {
  display: inline-block !important;
}
.u-spOn {
  display: none !important;
}
.u-spIn {
  display: none !important;
}
.u-spInblock {
  display: none !important;
}

@media screen and (max-width:767px) {
  .u-pcOn {
    display: none !important;
  }
  .u-pcIn {
    display: none !important;
  }
  .u-pcInblock {
    display: none !important;
  }
  .u-spOn {
    display: block !important;
  }
  .u-spIn {
    display: inline !important;
  }
  .u-spInblock {
    display: inline-block !important;
  }
}



/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
youtubeやmordalの制御
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/
.movie-layer {
  z-index: 10000;
}
.youtube-bg-layer {
  z-index: 1000;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.9);
  width: 100%;
  height: 100%;
  display: none;
}
.youtube-bg-layer--close {
  position: fixed;
  text-align: center;
  top: 10px;
  right: 30px;
  width: 60px;
  height: 84px;
  display: block;
}
.youtube-bg-layer--close span {
  display: block;
  font-size: 10px;
  line-height: 24px;
  font-weight: bold;
  color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.youtube-bg-layer--close:before {
  content: "";
  width: 46px;
  height: 1px;
  background: #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  transition: .5s all ease;
}
.youtube-bg-layer--close:after {
  content: "";
  width: 46px;
  height: 1px;
  background: #fff;
  transform: rotate(-45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  transition: .5s all ease;
}
.youtube-bg-layer--close:hover:before {
  width: 34px;
  transition: .5s all ease;
}
.youtube-bg-layer--close:hover:after {
  width: 34px;
  transition: .5s all ease;
}


.scroll-prevent {
  overflow: hidden;
}
.mordal-04,
.mordal-03,
.mordal-02,
.mordal-01{
  display: none;
  z-index: 1000;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  overflow-y: scroll;
  height: 100vh;
}

@media screen and (max-width:767px) {
  .youtube-bg-layer--close {
    position: fixed;
    text-align: center;
    top: 16vw;
    right: 4vw;
    width: 60px;
    height: 84px;
    display: block;
  }
  .page-top {
    z-index: 999;
  }

}