

/*----------------------------------------------------

// スマホ用リセットCSS

----------------------------------------------------*/

html, body, div, span, applet, object, iframe,

h1, h2, h3, h4, h5, h6, p, blockquote, pre,

a, abbr, acronym, address, big, cite, code,

del, dfn, em, img, ins, kbd, q, s, samp,

small, strike, strong, sub, sup, tt, var,

b, u, i, center,

dl, dt, dd, ol, ul, li,

fieldset, form, label, legend,

table, caption, tbody, tfoot, thead, tr, th, td,

article, aside, canvas, details, embed,

figure, figcaption, footer, header, hgroup,

menu, nav, output, ruby, section, summary,

time, mark, audio, video {

  margin: 0;

  padding: 0;

  border: 0;

  font-weight: normal;

  font-size: 100%;

  vertical-align: baseline;

}



article, aside, details, figcaption, figure,

footer, header, hgroup, menu, main, nav, section {

  display: block;

}



html {

  width: auto;

  height: 100%;

  font-size: 10px;

  overflow-y: scroll;

  -webkit-text-size-adjust: 100%;

  margin: 0;

  padding: 0;

}



blockquote, q {

  quotes: none;

}



blockquote:before, blockquote:after,

q:before, q:after {

  content: '';

  content: none;

}



input, select, textarea {

  font-family: inherit;

  font-size: 100%;

  vertical-align: middle;

  margin: 0;

  padding: 0;

}



ol, ul {

  list-style: none;

}



table {

  border-collapse: collapse;

  border-spacing: 0;

}



caption, th {

  text-align: left;

}



a {

  margin: 0;

  padding: 0;

  font-size: 100%;

  vertical-align: baseline;

  background: transparent;

}



a:focus {

  outline: none;

}



img {

  max-width: 100%;

  height: auto;

  font-size: 0;

  line-height: 0;

  vertical-align: top;

}



ins {

  background-color: #FFFF99;

  color: #000000;

  text-decoration: none;

}



mark {

  background-color: #FFFF99;

  color: #000000;

  font-style: italic;

  font-weight: bold;

}



del {

  text-decoration: line-through;

}



abbr[title], dfn[title] {

  border-bottom: 1px dotted;

  cursor: help;

}



hr {

  display: block;

  height: 1px;

  border: 0;

  border-top: 1px #CCCCCC solid;

  margin: 1em 0;

  padding: 0;

}



strong, b, em {

  font-weight: bold;

}



body {

  min-width: 1200px;

  color: #333333;

  background: #FFFFFF;

  font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", 'ipaexm', serif;

  font-size: 1.5rem;

  line-height: 1.8;

  -webkit-text-size-adjust: none;

}



/* font */

@font-face {

  font-family: 'CONDENSEicon';

  src: url("../fonts/CONDENSEicon.eot");

  src: url("../fonts/CONDENSEicon.eot?#iefix") format("embedded-opentype"), url("../fonts/CONDENSEicon.ttf") format("truetype"), url("../fonts/CONDENSEicon.otf") format("opentype"), url("../fonts/CONDENSEicon.woff") format("woff");

  font-weight: normal;

  font-style: normal;

}

/*

 * "ipaexm" licensed under the IPA Font License Agreement v1.0

 * http://www.otemae.ac.jp/anniversary/70th/（配布元のURL）

 * http://ipafont.ipa.go.jp/（IPAフォントのURL）

 * http://ipafont.ipa.go.jp/ipa_font_license_v1.html（IPAフォントライセンスv1.0のURL）

 */

@font-face {

  font-family: 'ipaexm';

  src: url("../fonts/ipaexm.eot");

  src: url("../fonts/ipaexm.eot?#iefix") format("embedded-opentype"), url("../fonts/ipaexm.woff") format("woff"), url("../fonts/ipaexm.ttf") format("truetype");

  font-weight: normal;

  font-style: normal;

}

.ff-go, .contents-inner-block .figbox .txt, #qa .qa-block .a {

  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro W3","メイリオ",Meiryo,"MS P Gothic","ＭＳ Ｐゴシック",sans-serif;

}



a {

  text-decoration: none;

}



.oblique-red {

  background-image: -webkit-linear-gradient(45deg, #365399 40%, rgba(54, 83, 153, 0.95) 40%, rgba(54, 83, 153, 0.95) 50%, #365399 50%, #365399 90%, rgba(54, 83, 153, 0.95) 90%);

  background-image: linear-gradient(45deg, #365399 40%, rgba(54, 83, 153, 0.95) 40%, rgba(54, 83, 153, 0.95) 50%, #365399 50%, #365399 90%, rgba(54, 83, 153, 0.95) 90%);

  -webkit-background-size: 5px 5px;

  -moz-background-size: 5px 5px;

  -ms-background-size: 5px 5px;

  background-size: 5px 5px;

}



@-webkit-keyframes showLead {

  from {

    top: 3.5%;

    opacity: 0;

    filter: alpha(opacity=0);

  }

  99%,to {

    top: 4.5%;

    opacity: 1;

    filter: alpha(opacity=100);

  }

}

@-moz-keyframes showLead {

  from {

    top: 3.5%;

    opacity: 0;

    filter: alpha(opacity=0);

  }

  99%,to {

    top: 4.5%;

    opacity: 1;

    filter: alpha(opacity=100);

  }

}

@keyframes showLead {

  from {

    top: 3.5%;

    opacity: 0;

    filter: alpha(opacity=0);

  }

  99%,to {

    top: 4.5%;

    opacity: 1;

    filter: alpha(opacity=100);

  }

}

@-webkit-keyframes showFig {

  from {

    opacity: 0;

    filter: alpha(opacity=0);

  }

  99%,to {

    opacity: 1;

    filter: alpha(opacity=100);

  }

}

@-moz-keyframes showFig {

  from {

    opacity: 0;

    filter: alpha(opacity=0);

  }

  99%,to {

    opacity: 1;

    filter: alpha(opacity=100);

  }

}

@keyframes showFig {

  from {

    opacity: 0;

    filter: alpha(opacity=0);

  }

  99%,to {

    opacity: 1;

    filter: alpha(opacity=100);

  }

}

@-webkit-keyframes logoAbs {

  from {

    background: #FFFFFF;

  }

  99%,to {

    background: rgba(133, 36, 51, 0.75);

  }

}

@-moz-keyframes logoAbs {

  from {

    background: #FFFFFF;

  }

  99%,to {

    background: rgba(54, 83, 153, 0.75);

  }

}

@keyframes logoAbs {

  from {

    background: #FFFFFF;

  }

  99%,to {

    background: rgba(54, 83, 153, 0.75);

  }

}

@-webkit-keyframes logoFix {

  from {

    background: rgba(54, 83, 153, 0.75);

  }

  99%,to {

    background: #FFFFFF;

  }

}

@-moz-keyframes logoFix {

  from {

    background: rgba(54, 83, 153, 0.75);

  }

  99%,to {

    background: #FFFFFF;

  }

}

@keyframes logoFix {

  from {

    background: rgba(54, 83, 153, 0.75);

  }

  99%,to {

    background: #FFFFFF;

  }

}

@-webkit-keyframes figHide {

  from {

    opacity: 1;

    filter: alpha(opacity=100);

  }

  99%,to {

    opacity: 0;

    filter: alpha(opacity=0);

  }

}

@-moz-keyframes figHide {

  from {

    opacity: 1;

    filter: alpha(opacity=100);

  }

  99%,to {

    opacity: 0;

    filter: alpha(opacity=0);

  }

}

@keyframes figHide {

  from {

    opacity: 1;

    filter: alpha(opacity=100);

  }

  99%,to {

    opacity: 0;

    filter: alpha(opacity=0);

  }

}

@-webkit-keyframes figShow {

  from {

    opacity: 0;

    filter: alpha(opacity=0);

  }

  99%,to {

    opacity: 1;

    filter: alpha(opacity=100);

  }

}

@-moz-keyframes figShow {

  from {

    opacity: 0;

    filter: alpha(opacity=0);

  }

  99%,to {

    opacity: 1;

    filter: alpha(opacity=100);

  }

}

@keyframes figShow {

  from {

    opacity: 0;

    filter: alpha(opacity=0);

  }

  99%,to {

    opacity: 1;

    filter: alpha(opacity=100);

  }

}

.txt-small {

  font-size: 70%;

}



/* ヘッダ */

#global-header {

  position: relative;

  background: #FFFFFF;

  margin-bottom: 80px;

}

#global-header .logo {

  position: absolute;

  bottom: 0;

  left: 0;

  background: rgba(54, 83, 153, 0.75);

  width: 100%;

  height: 55px;

  padding: 18px 0;

  z-index: 1000;

}

#global-header .logo a {

  display: block;

  width: 482px;/* 元 176px ロゴ変更210714*/

  height: 55px;

  background: url("../img/img_logo-w.png") no-repeat left top;　/* ロゴ変更210714*/

  text-indent: -9999px;

  margin: 0 auto;

}

#global-header .logo.absolute {

  position: absolute;

  bottom: 0;

  left: 0;

  background: rgba(54, 83, 153, 0.75);

  -webkit-animation: logoAbs 0.1s linear;

  -moz-animation: logoAbs 0.1s linear;

  animation: logoAbs 0.1s linear;

  -webkit-animation-fill-mode: both;

  -moz-animation-fill-mode: both;

  animation-fill-mode: both;

}

#global-header .logo.absolute a {

  background-image: url("../img/img_logo-w.png");/* ロゴ変更210714*/

}

#global-header .logo.fixed {

  position: fixed;

  top: 0;

  left: 0;

  background: #FFFFFF;

  -webkit-animation: logoFix 0.1s linear;

  -moz-animation: logoFix 0.1s linear;

  animation: logoFix 0.1s linear;

  -webkit-animation-fill-mode: both;

  -moz-animation-fill-mode: both;

  animation-fill-mode: both;

}

#global-header .logo.fixed a {

  background-image: url("../img/img_logo-r.png");

}

#global-header #movie-wrap {

  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  overflow: hidden;

}

#global-header #movie-wrap #movie {

  width: 120%;

  height: 100%;

  margin: 0 -8% 0 -12%;

}

#global-header .lead {

  position: absolute;

  top: 4.5%;

  left: 50%;

  width: 5.4375%;

  opacity: 0;

  filter: alpha(opacity=0);

  margin-left: -2.71875%;

  z-index: 1000;

}

#global-header .lead.show {

  -webkit-animation: showLead 0.5s linear 3.5s;

  -moz-animation: showLead 0.5s linear 3.5s;

  animation: showLead 0.5s linear 3.5s;

  -webkit-animation-fill-mode: both;

  -moz-animation-fill-mode: both;

  animation-fill-mode: both;

}

#global-header figure {

  position: relative;

}

#global-header figure img {

  width: 100%;

  opacity: 0;

  filter: alpha(opacity=0);

  max-width: none;

}

#global-header figure.show {

  background: url("../img/bg_mv.jpg") no-repeat 72% top/auto 100%;

  z-index: 500;

}

#global-header figure.show img {

  -webkit-animation: showFig 3s linear;

  -moz-animation: showFig 3s linear;

  animation: showFig 3s linear;

  -webkit-animation-fill-mode: both;

  -moz-animation-fill-mode: both;

  animation-fill-mode: both;

}

#global-header #gnav {

  left: 0;

  width: 100%;

  height: 76px;

  z-index: +2;

}

#global-header #gnav.absolute {

  position: absolute;

  top: 100%;

}

#global-header #gnav.fixed {

  position: fixed;

  top: 91px;

}

#global-header #gnav ul {

  position: relative;

  width: 900px;

  height: 76px;

  display: -webkit-box;

  display: -moz-box;

  display: -ms-flexbox;

  display: -webkit-flex;

  display: flex;

  -webkit-box-pack: justify;

  -moz-box-pack: justify;

  -ms-flex-pack: justify;

  -webkit-justify-content: space-between;

  justify-content: space-between;

  margin: 0 auto;

}

#global-header #gnav ul:after {

  position: absolute;

  top: 50%;

  right: -0.25em;

  color: #FFFFFF;

  content: "/";

  font-size: 2.0rem;

  font-weight: bold;

  margin-top: -0.7em;

}

#global-header #gnav li {

  position: relative;

  width: 20%;

  height: 76px;

  -webkit-box-flex: 1;

  -moz-box-flex: 1;

  -ms-box-flex: 1;

  -webkit-flex-grow: 1;

  flex-grow: 1;

  text-align: center;

}

#global-header #gnav li a {

  display: block;

  width: 100%;

  height: 38px;

  padding: 19px 0;

}

#global-header #gnav li:before {

  position: absolute;

  top: 50%;

  left: -0.25em;

  color: #FFFFFF;

  content: "/";

  font-size: 2.0rem;

  font-weight: bold;

  margin-top: -0.7em;

}



/* メインコンテンツ */

.contents-wrap {

  padding: 70px 0 0;

}



.contents-title {

  text-align: center;

  margin-bottom: 40px;

}



.contents-lead {

  color: #000000;

  font-size: 2.2rem;

  text-align: center;

  margin-bottom: 70px;

}



.contents-inner-block {

  background: no-repeat center top cover;

  color: #FFFFFF;

  padding: 80px 0 40px;

}

.contents-inner-block .figbox {

  display: -webkit-box;

  display: -moz-box;

  display: -ms-flexbox;

  display: -webkit-flex;

  display: flex;

  width: 1150px;

  background: #012e71;

  -webkit-box-shadow: 0 0 2px #000000;

  box-shadow: 0 0 2px #000000;

  margin: 0 auto 40px;

}

.contents-inner-block .figbox .txt-box {

  width: 535px;

  padding: 25px 20px 20px;

}

.contents-inner-block .figbox .title {

  border-bottom: 1px rgba(255, 255, 255, 0.4) solid;

  font-size: 2.2rem;

  line-height: 1.4;

  margin-bottom: 10px;

  padding: 0 20px 15px;

}

.contents-inner-block .figbox .txt {

  padding: 0 20px;

}

.contents-inner-block .figbox figure {

  position: relative;

  width: 575px;

}

.contents-inner-block .figbox figure .off {

  position: absolute;

  top: 0;

  left: 0;

  z-index: +1;

}

.contents-inner-block .figbox figure .off.hidden {

  -webkit-animation: figHide 0.3s linear 0.1s;

  -moz-animation: figHide 0.3s linear 0.1s;

  animation: figHide 0.3s linear 0.1s;

  -webkit-animation-fill-mode: both;

  -moz-animation-fill-mode: both;

  animation-fill-mode: both;

}

.contents-inner-block .figbox figure .off.show {

  -webkit-animation: figShow 0.3s linear 0.1s;

  -moz-animation: figShow 0.3s linear 0.1s;

  animation: figShow 0.3s linear 0.1s;

  -webkit-animation-fill-mode: both;

  -moz-animation-fill-mode: both;

  animation-fill-mode: both;

}

.contents-inner-block .fig-left {

  -webkit-box-orient: horizontal;

  -webkit-box-direction: reverse;

  -moz-box-orient: horizontal;

  -moz-box-direction: reverse;

  -ms-flex-direction: row-reverse;

  -webkit-flex-direction: row-reverse;

  flex-direction: row-reverse;

}



#schedule .contents-inner-block {

  background-image: url("../img/bg_schedule.jpg");

  font-size: 1.8rem;

  text-align: center;

  padding: 75px 0 80px;

}

/*下記2021.1.13追記　*/

#schedule .contents-inner-block2 {

  background-image: url("../img/bg_schedule.jpg");

  font-size: 1.8rem;

  text-align: center;

  padding: 0px 0 80px;

}

#schedule .contents-inner-block2 a {

  margin: 5px;

}
/*上記2021.1.13追記　*/


#schedule .contents-inner-block .exam-info {

  width: 860px;

  border-bottom: 1px #FFFFFF solid;

  color: #FFFFFF;

  text-align: center;

  margin: 0 auto 40px;

  padding-bottom: 20px;

}

#schedule .exam-day {

  letter-spacing: 0.5em;

}

#schedule .btn-wrap {

  display: -webkit-box;

  display: -moz-box;

  display: -ms-flexbox;

  display: -webkit-flex;

  display: flex;

  -webkit-box-pack: center;

  -moz-box-pack: center;

  -ms-flex-pack: center;

  -webkit-justify-content: center;

  justify-content: center;

}

#schedule .btn-wrap a {

  display: block;

  width: 286px;

  height: 66px;

  border: 1px rgba(230, 230, 230, 0.8) solid;

  font-size: 2.4rem;

  letter-spacing: 0.2em;

  padding: 3px;

}

#schedule .btn-wrap a span {

  display: block;

  width: 100%;

  height: 100%;

  color: #FFFFFF;

  font-weight: bold;

  line-height: 66px;

}

#schedule .btn-wrap a.btn-exam {

  margin-right: 20px;

}

#schedule .btn-wrap a.btn-exam span {

  background-image: -webkit-linear-gradient(45deg, #333333 65%, #4C4C4C 65%);

  background-image: linear-gradient(45deg, #333333 65%, #4C4C4C 65%);

}

#schedule .btn-wrap a.btn-apply span {

  background-image: -webkit-linear-gradient(45deg, #852433 65%, #963F4D 65%);

  background-image: linear-gradient(45deg, #852433 65%, #963F4D 65%);

}



#environment .contents-inner-block {

  background-image: url("../img/bg_environment.jpg");

}



#curriculum .contents-inner-block {

  background-image: url("../img/bg_curriculum.jpg");

}



#carrer .contents-inner-block {

  background-image: url("../img/bg_carrer.jpg");

}



#qa .contents-inner-block {

  -webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.15) inset;

  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.15) inset;

}

#qa .qa-block .q {

  padding: 10px 0;

}

#qa .qa-block .q p {

  position: relative;

  width: 1065px;

  color: #FFFFFF;

  cursor: pointer;

  font-size: 2.6rem;

  margin: 0 auto;

  padding: 10px 0 15px 85px;

}

#qa .qa-block .q p:before {

  position: absolute;

  top: 10px;

  left: 0;

  display: block;

  width: 65px;

  height: 57px;

  background: url("../img/img_balloon-q.png") no-repeat center top;

  content: '';

}

#qa .qa-block .q p:after {

  position: absolute;

  top: 1.0em;

  right: 0;

  width: 15px;

  height: 21px;

  background: url("../img/icon_arrow.png") no-repeat center top;

  -webkit-transform: rotate(90deg);

  -ms-transform: rotate(90deg);

  transform: rotate(90deg);

  -webkit-transition: 0.2s;

  transition: 0.2s;

  content: '';

}

#qa .qa-block .a {

  height: 0;

  max-height: 0;

  background: #012e71;

  overflow: hidden;

  -webkit-transition: 0.3s;

  transition: 0.3s;

}

#qa .qa-block .a p {

  position: relative;

  width: 1005px;

  font-size: 2.0rem;

  line-height: 1.6;

  margin: 0 auto;

  padding-left: 145px;

}

#qa .qa-block .a p:before {

  position: absolute;

  top: 10px;

  left: 60px;

  display: block;

  width: 65px;

  height: 57px;

  background: url("../img/img_balloon-a.png") no-repeat center top;

  content: '';

}

#qa .qa-block.open .q p:after {

  -webkit-transform: rotate(-90deg);

  -ms-transform: rotate(-90deg);

  transform: rotate(-90deg);

  -webkit-transform-origin: center center;

  -moz-transform-origin: center center;

  -ms-transform-origin: center center;

  transform-origin: center center;

}

#qa .qa-block.open .a {

  height: auto;

  max-height: 500px;

  padding: 30px 0 35px;

}



aside {

  background: url("../img/bg_aside.jpg") no-repeat center top/cover;

  border-top: 4px #333333 solid;

  padding: 80px 0;

}

aside .btn-wrap {

  display: -webkit-box;

  display: -moz-box;

  display: -ms-flexbox;

  display: -webkit-flex;

  display: flex;

  -webkit-box-pack: justify;

  -moz-box-pack: justify;

  -ms-flex-pack: justify;

  -webkit-justify-content: space-between;

  justify-content: space-between;

  -webkit-flex-wrap: wrap;

  -moz-flex-wrap: wrap;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;

  width: 1150px;

  margin: 0 auto;

}

aside .btn-wrap .btn-arc {

  position: relative;

  display: -webkit-box;

  display: -moz-box;

  display: -ms-flexbox;

  display: -webkit-flex;

  display: flex;

  width: 558px;

  height: 132px;

  border: 4px rgba(255, 255, 255, 0.8) solid;

  color: #FFFFFF;

  margin-bottom: 40px;

}

aside .btn-wrap .btn-arc:after {

  position: absolute;

  top: 50%;

  right: 20px;

  width: 15px;

  height: 21px;

  background: url("../img/icon_arrow.png") no-repeat center top;

  content: '';

  margin-top: -10px;

}

aside .btn-wrap .btn-arc figure {

  width: 176px;

  margin-right: 20px;

}

aside .btn-wrap .btn-arc p {

  font-size: 2.4rem;

  font-weight: bold;

  line-height: 1.6;

  padding-top: 30px;

}

aside .btn-wrap .btn-arc p span {

  display: block;

  font-size: 1.8rem;

}

aside .btn-wrap .btn-public {

  width: 100%;

  border-top: 1px rgba(255, 255, 255, 0.4) solid;

  text-align: center;

  padding-top: 40px;

}



/* footer */

#global-footer {

  background: #365399;

}

#global-footer #copyright {

  color: #FFFFFF;

  font-size: 1.6rem;

  text-align: center;

  padding: 5px 0 8px;

}

