
@charset "UTF-8";
.firstview #ui-scrollnav,
.firstview #ui-scrollnav.show {
  opacity: 0;
  z-index: 0;
  display: none;
}

#bodyarea {
  background-color: #f3f3f5;
}

#mainimgs {
  background: url("/images/2017/home-mainimg2017.jpg") no-repeat top center #c5e3ff;
  -webkit-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  height: 560px;
}
#mainimgs .catch {
  position: absolute;
  left: 50px;
  top: 50%;
  margin-top: -189px;
  max-height: 90%;
  width: auto;
}
#mainimgs .catch-pc {
  display: block;
}
#mainimgs .catch-smp {
  display: none;
}
#mainimgs:before {
  background-image: none;
}

@media screen and (max-width: 1039px) {
  #mainimgs {
    height: 370px;
  }
  #mainimgs .catch {
    position: absolute;
    left: 5px;
    top: auto;
    bottom: 20px;
    margin-top: 0;
  }
  #mainimgs .catch-pc {
    display: none;
  }
  #mainimgs .catch-smp {
    display: block;
  }
  #mainimgs:before {
    background-image: none;
  }
}
@media screen and (max-width: 767px) {
  #main-wrapper {
    overflow: hidden;
  }
}
.smp-support-nav {
  display: none;
  position: relative;
  border-top: 1px solid #cccccc;
  box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.2);
  background-color: #FFF;
  z-index: 2;
}
.smp-support-nav ul {
  display: table;
  width: 100%;
}
.smp-support-nav ul li {
  display: table-cell;
  width: 33.333%;
}
.smp-support-nav ul li + li {
  border-left: 1px solid #CCC;
}
.smp-support-nav a {
  display: block;
  height: 45px;
  line-height: 45px;
  text-align: center;
  font-size: 0.75rem;
  font-weight: bold;
  text-decoration: none;
  color: #000;
}

@media screen and (max-width: 767px) {
  .smp-support-nav {
    display: block;
  }
}
/* 緊急のお知らせ */
#emergencynews {
  border-top: 1px solid #CCC;
  background-color: #FFF;
  box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.2);
  position: relative;
  padding: 24px 0;
  overflow: hidden;
  width: 100%;
}
#emergencynews, #emergencynews a {
  color: #ff3333;
}
#emergencynews a {
  text-decoration: none;
}
#emergencynews a:hover {
  text-decoration: underline;
}
#emergencynews .container {
  width: 100%;
}
#emergencynews .container-heading {
  float: left;
  width: 160px;
  text-align: center;
}
#emergencynews .container-heading .title {
  margin: 0;
  padding: 0;
  font-size: 100%;
  font-weight: bold;
  color: #ff3333;
}
#emergencynews .container-body {
  margin-left: 160px;
  font-size: 0.875rem;
  line-height: 1.3;
  padding-top: 3px;
}
#emergencynews .container-body ul li {
  text-indent: -138px;
  padding-left: 138px;
}
#emergencynews .container-body ul li + li {
  margin-top: 1em;
}
#emergencynews .container-body ul .date {
  display: inline-block;
  width: 122px;
  margin-right: 16px;
  text-indent: 0;
  text-align: right;
}

@keyframes marquee {
  /*動作範囲(上級者向けの設定)*/
  0% {
    transform: translate(0%);
  }
  86% {
    transform: translate(-100%);
    opacity: 1;
  }
  87% {
    transform: translate(-100%);
    opacity: 0;
  }
  88% {
    transform: translate(0%);
    opacity: 0;
  }
  90% {
    transform: translate(0%);
    opacity: 1;
  }
}
@media screen and (max-width: 1039px) {
  #emergencynews {
    padding: 0;
    height: 44px;
    position: relative;
  }
  #emergencynews .container {
    position: absolute;
    padding: 0;
    overflow: hidden;
    animation-name: marquee;
    /*アニメーションのクラス名*/
    animation-timing-function: linear;
    /*アニメーションのタイミング・進行割合の指定*/
    animation-duration: 10s;
    /*アニメーションの速度*/
    animation-iteration-count: infinite;
    /*アニメーションの動作回数*/
    animation-delay: 2s;
  }
  #emergencynews .container:before, #emergencynews .container:after,
  #emergencynews .container-heading:before,
  #emergencynews .container-heading:after,
  #emergencynews .container-body:before,
  #emergencynews .container-body:after {
    content: none;
    display: none;
  }
  #emergencynews .container-heading {
    position: absolute;
    left: 0;
    top: 0;
    height: 44px;
    line-height: 44px;
    width: 120px;
    float: none;
    text-align: left;
    display: inline-block;
    padding-left: 15px;
  }
  #emergencynews .container-heading .title {
    font-size: 0.75rem;
    margin-right: 2em;
    white-space: nowrap;
  }
  #emergencynews .mask {
    position: relative;
    left: 10px;
    top: 0;
    overflow: hidden;
  }
  #emergencynews .container-body {
    margin-left: 0;
    float: left;
    font-size: 0.75rem;
    padding-top: 0;
    display: inline;
    line-height: 44px;
  }
  #emergencynews .container-body ul {
    padding-left: 120px;
  }
  #emergencynews .container-body ul li {
    text-indent: 0;
    padding-left: 0;
    display: inline-block;
    white-space: nowrap;
    float: left;
  }
  #emergencynews .container-body ul li + li {
    margin-top: 0;
    padding-left: 2em;
  }
  #emergencynews .container-body ul .date {
    width: auto;
    margin-right: 0.6em;
  }
  #emergencynews .container-body ul a {
    display: inline-block;
    height: 44px;
  }
}
/* 見出し
-------------------------------------------------------- */
.center-header {
  font-family: YuGothic, "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Droid Sans Japanese, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #333333;
  text-align: center;
  font-size: 1.75rem;
  font-weight: bold;
  border: none;
  margin: 0;
  padding: 0;
}
.center-header:after {
  content: "";
  display: block;
  width: 30px;
  height: 1px;
  margin: 32px auto 0;
  background-color: #263365;
}
.center-header.white {
  color: #FFF;
}
.center-header.white:after {
  background-color: #FFF;
}

@media screen and (max-width: 767px) {
  .center-header {
    font-size: 1.125rem;
  }
  .center-header:after {
    content: "";
    display: block;
    margin: 19px auto 0;
  }
}
/* BLOCK
-------------------------------------------------------- */
.btn-radius-next {
  display: inline-block;
  margin: 0 auto;
  width: 100%;
  max-width: 236px;
  background-color: #263365;
  color: #FFF;
  height: 60px;
  line-height: 60px;
  font-size: 0.875rem;
  -webkit-border-radius: 30px;
  border-radius: 30px;
  text-align: center;
  text-decoration: none;
}
.btn-radius-next:after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 0;
  padding: 13px 0 0;
  margin: 0 -20px 0 20px;
  vertical-align: middle;
  background: url("/common/images/2017/arrow-chev-next.png") no-repeat right center;
  -webkit-background-size: 8px 13px;
  -o-background-size: 8px 13px;
  background-size: 8px 13px;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.btn-radius-next:visited {
  color: #FFF;
}
.btn-radius-next:hover {
  color: #FFF;
  background-color: #34468a;
}
.btn-radius-next:hover:after {
  -webkit-transform: translateX(3px);
  transform: translateX(3px);
}

/* parts
-------------------------------------------------------- */
.btn-block {
  border-color: #FFF;
  border: 1px solid #FFF;
  display: block;
  background-color: rgba(255, 255, 255, 0.2);
  text-align: center;
  padding: 1em 0.8em;
}
.btn-block:hover, .btn-block:focus {
  color: #FFF;
  background-color: rgba(255, 255, 255, 0.4);
}
.btn-block:visited {
  color: #FFF;
}

/* layout
-------------------------------------------------------- */
/* 新着情報 */
.news-block ul {
  display: flex;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: stretch;
  align-items: stretch;
}
.news-block li {
  width: 22.80374%;
  margin-bottom: 22px;
}
.news-block li:nth-child(n+9) {
  display: none;
}

.news_card {
  position: relative;
}
.news_card .card-meta {
  zoom: 1;
  line-height: 28px;
  padding-bottom: 8px;
  display: block;
  position: relative;
}
.news_card .card-meta:before, .news_card .card-meta:after {
  content: "";
  display: table;
}
.news_card .card-meta:after {
  clear: both;
}
.news_card .card-meta .date {
  font-size: 0.75rem;
  color: #333;
}
.news_card .card-thumb {
  display: block;
  position: relative;
  overflow: hidden;
}
.news_card .card-thumb img {
  width: 100%;
  display: block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.news_card .card-txt {
  padding: 20px 0;
  text-decoration: none;
  font-size: 0.875rem;
  display: block;
  position: relative;
}
.news_card .label {
  height: 28px;
  line-height: 28px;
  font-size: 0.6875rem;
  color: #FFF;
  background-color: #168565;
  margin: 0;
  padding: 0 0.8em;
  float: right;
  -webkit-border-radius: 0;
  border-radius: 0;
}
.news_card .label.label-entrance {
  background-color: #ed4770;
}
.news_card .card-wrapper {
  width: 100%;
  height: 100%;
  display: block;
  text-decoration: none;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  background-color: #fff;
  color: #333;
}
.news_card .card-wrapper:before {
  content: '';
  position: absolute;
  border: 2px solid #168565;
  opacity: 0;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: opacity , top, right, bottom, left;
  transition-property: opacity , top, right, bottom, left;
}
.news_card .card-wrapper.card-entrance:before {
  border-color: #ed4770;
}
.news_card .card-wrapper:visited {
  color: #603371;
}
.news_card .card-wrapper:hover .card-thumb img {
  -webkit-transform: scale(1.1) translateZ(0);
  transform: scale(1.1) translateZ(0);
}
.news_card .card-wrapper:hover:before {
  opacity: 1;
  top: -8px;
  right: -8px;
  bottom: -8px;
  left: -8px;
}

@media screen and (max-width: 1039px) {
  .news-block ul {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .news-block li {
    width: 100%;
    max-width: inherit;
    margin-bottom: 0;
    border-bottom: 1px solid #e8e8e9;
  }
  .news-block li:nth-child(n+5) {
    display: none;
  }

  .news_card {
    position: relative;
    padding: 15px;
    min-height: 116px;
    zoom: 1;
  }
  .news_card:before, .news_card:after {
    content: "";
    display: table;
  }
  .news_card:after {
    clear: both;
  }
  .news_card .card-wrapper {
    min-height: 86px;
  }
  .news_card .card-thumb {
    position: absolute;
    left: 0px;
    top: 0;
    width: 86px;
    height: 86px;
    overflow: hidden;
  }
  .news_card .card-thumb img {
    max-width: inherit;
    width: auto;
    height: 86px;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }
  .news_card .label {
    float: none;
    height: 22px;
    line-height: 22px;
    font-size: 0.75rem;
    margin: 0 13px 0 0;
  }
  .news_card .card-meta {
    line-height: 22px;
    margin-left: 102px;
  }
  .news_card .card-txt {
    padding: 0;
    font-size: 0.8125rem;
    margin-left: 102px;
  }

  .news_card .card-wrapper:hover .card-thumb img {
    -webkit-transform: translate(-50%, 0) scale(1.1) translateZ(0);
    -moz-transform: translate(-50%, 0) scale(1.1) translateZ(0);
    -ms-transform: translate(-50%, 0) scale(1.1) translateZ(0);
    -o-transform: translate(-50%, 0) scale(1.1) translateZ(0);
    transform: translate(-50%, 0) scale(1.1) translateZ(0);
  }
}
.tab-container .nav {
  vertical-align: bottom;
  border-bottom: 1px solid #263365;
}
.tab-container .nav ul {
  display: flex;
  text-align: center;
  -webkit-justify-content: center;
  justify-content: center;
  width: 100%;
  margin: 0 auto;
}
.tab-container .nav li {
  width: 20%;
  max-width: 199px;
}
.tab-container .nav li:last-child {
  padding-right: 0;
}
.tab-container .nav .tabs-anchor {
  height: 53px;
  line-height: 53px;
  display: block;
  color: #263365;
  font-weight: normal;
  text-align: center;
  text-decoration: none;
  font-size: 0.875rem;
  position: relative;
}
.tab-container .nav .tabs-anchor:visited {
  color: #263365;
}
.tab-container .nav .tabs-anchor.current {
  background-color: #263365;
  color: #FFF;
}
.tab-container .nav .tabs-anchor:hover {
  color: #FFF;
}
.tab-container .nav .tabs-anchor {
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
.tab-container .nav .tabs-anchor:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #263365;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.tab-container .nav .tabs-anchor:hover:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
}
.tab-container .container-body {
  position: relative;
  box-shadow: 0px 15px 40px 0px rgba(0, 0, 0, 0.06);
}
.tab-container .tab-body {
  background-color: #fff;
  padding: 56px 79px 50px;
}

#newsarea {
  padding: 55px 68px 95px;
}
#newsarea .container-heading {
  margin-bottom: 48px;
}
#newsarea .block-foot {
  text-align: center;
}

@media screen and (max-width: 1039px) {
  #newsarea {
    padding: 30px 0 0;
  }
  #newsarea .container-heading {
    margin-bottom: 30px;
  }

  .tab-container .nav {
    display: none;
  }
  .tab-container .container-body {
    position: relative;
    box-shadow: 0px 15px 40px 0px rgba(0, 0, 0, 0.06);
  }
  .tab-container .tab-body {
    padding: 0 0 20px;
  }
  .tab-container .block-body {
    margin-bottom: 16px;
  }
}
/* 知る */
#siru {
  margin-bottom: 100px;
}
#siru ul {
  display: table;
  width: 100%;
}
#siru li {
  display: table-cell;
  overflow: hidden;
  width: 20%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#siru li + li a {
  margin-left: 1px;
}
#siru a {
  display: block;
  width: 100%;
  min-width: 160px;
  height: 197px;
  position: relative;
  overflow: hidden;
  color: #fff;
  background-color: #263365;
  text-decoration: none;
  background-repeat: no-repeat;
  background-position: top center;
  font-size: 1.125rem;
  line-height: 1.23077;
  -webkit-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
#siru a .bg {
  position: absolute;
  top: 10%;
  left: 50%;
  width: auto;
  height: 105%;
  max-width: inherit;
  z-index: 0;
  -webkit-transform: translateZ(0) translate(-50%, -10%);
  transform: translateZ(0) translate(-50%, -10%);
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
  -webkit-transition-property: opacity , transform;
  transition-property: opacity , transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
#siru a span {
  display: block;
  width: 100%;
  height: 80px;
  position: absolute;
  left: 0;
  bottom: 0;
  border-width: 4px 0 0;
  border-style: solid;
  border-color: #263365;
  background-color: rgba(38, 51, 101, 0.8);
  text-align: center;
  padding: 15px 5px 0;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#siru a small {
  display: block;
  font-size: 0.875rem;
  margin-top: 0.2em;
}
#siru a:hover .bg {
  opacity: 0.7;
  -webkit-transform: scale(1.04) translateZ(0) translate(-48%, -8%);
  transform: scale(1.04) translateZ(0) translate(-48%, -8%);
}
#siru a.siru-gakucho span, #siru a.siru-scholar span, #siru a.siru-koukai span, #siru a.siru-blog span {
  padding-top: 25px;
}

@media screen and (min-width: 1300px) {
  #siru a .bg {
    width: 105%;
    height: auto;
  }
}
@media screen and (max-width: 1039px) {
  #siru {
    margin-bottom: 0;
  }
  #siru .container-body {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    -webkit-transform: translateZ(0px);
    transform: translateZ(0px);
    width: 100%;
  }
  #siru ul {
    border-spacing: 16px;
  }
  #siru li {
    box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.3);
  }
  #siru li + li a {
    margin-left: 0;
  }
  #siru a {
    font-size: 0.8125rem;
  }
  #siru a span {
    height: 60px;
    padding-top: 13px;
  }
  #siru a.siru-gakucho span {
    padding-top: 13px;
  }
  #siru a.siru-scholar span, #siru a.siru-koukai span, #siru a.siru-blog span {
    padding-top: 20px;
  }
}
/* Bob */
@-webkit-keyframes hvr-bob {
  0% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
  50% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  100% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}
@keyframes hvr-bob {
  0% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
  50% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  100% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}
@-webkit-keyframes hvr-bob-float {
  100% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}
@keyframes hvr-bob-float {
  100% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}
/* 入試・入学情報 */
.entrance-btns ul {
  zoom: 1;
}
.entrance-btns ul:before, .entrance-btns ul:after {
  content: "";
  display: table;
}
.entrance-btns ul:after {
  clear: both;
}
.entrance-btns li {
  display: inline-block;
  width: 25%;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: top;
}
.entrance-btns li:nth-child(n+5) {
  display: none;
}
.entrance-btns a {
  display: block;
  height: 215px;
  text-align: center;
  color: #263365;
  font-size: 0.875rem;
  background-color: #a4d0e8;
  text-decoration: none;
  overflow: hidden;
  position: relative;
}
.entrance-btns a:before {
  content: "";
  display: block;
  background-image: url("../common/images/2017/icon-entrance-pc-s479a13f931.png");
  background-size: 51px 241px;
  height: 0;
  overflow: hidden;
  background-repeat: no-repeat;
  vertical-align: middle;
  position: absolute;
  left: 50%;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.entrance-btns a span {
  display: block;
  margin: 155px auto 0;
}
.entrance-btns a.btn-dl:before {
  padding: 51px 0 0;
  width: 51px;
  background-position: 0 0;
  margin-left: -25.5px;
  top: 58px;
}
.entrance-btns a.btn-goukaku:before {
  padding: 43px 0 0;
  width: 51px;
  background-position: 0 -71px;
  margin-left: -25.5px;
  top: 66px;
}
.entrance-btns a.btn-netentry:before {
  padding: 43px 0 0;
  width: 50px;
  background-position: 0 -134px;
  margin-left: -25px;
  top: 66px;
}
.entrance-btns a.btn-point:before {
  padding: 44px 0 0;
  width: 41px;
  background-position: 0 -197px;
  margin-left: -28px;
  top: 66px;
}
.entrance-btns a:hover:before {
  -webkit-animation-name: hvr-bob-float, hvr-bob;
  animation-name: hvr-bob-float, hvr-bob;
  -webkit-animation-duration: .3s, 1.5s;
  animation-duration: .3s, 1.5s;
  -webkit-animation-delay: 0s, .3s;
  animation-delay: 0s, .3s;
  -webkit-animation-timing-function: ease-out, ease-in-out;
  animation-timing-function: ease-out, ease-in-out;
  -webkit-animation-iteration-count: 1, infinite;
  animation-iteration-count: 1, infinite;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-direction: normal, alternate;
  animation-direction: normal, alternate;
}

@media screen and (max-width: 1039px) {
  .entrance-btns li {
    width: 50%;
  }
  .entrance-btns li:nth-child(2n) a {
    margin-left: 1px;
  }
  .entrance-btns li:nth-child(n+3) a {
    margin-top: 1px;
  }
  .entrance-btns a {
    display: block;
    height: 142px;
    font-size: 0.8125rem;
  }
  .entrance-btns a:before {
    background-image: url("/common/images/2017/icon-entrance-s7c81bb06e5.png");
    background-size: 29.5px 135px;
  }
  .entrance-btns a.btn-dl:before {
    padding: 29.5px 0 0;
    width: 29.5px;
    background-position: 0 0;
    margin-left: -14.5px;
    top: 33px;
  }
  .entrance-btns a.btn-goukaku:before {
    padding: 25px 0 0;
    width: 29.5px;
    background-position: 0 -40px;
    margin-left: -14.5px;
    top: 34px;
  }
  .entrance-btns a.btn-netentry:before {
    padding: 25px 0 0;
    width: 29px;
    background-position: 0 -75px;
    margin-left: -14.5px;
    top: 42px;
  }
  .entrance-btns a.btn-point:before {
    padding: 25.5px 0 0;
    width: 23.5px;
    background-position: 0 -110px;
    margin-left: -15.5px;
    top: 40px;
  }
  .entrance-btns a span {
    display: block;
    margin-top: 82px;
  }
}
#entrance {
  padding: 70px 68px 84px 68px;
  background-color: #fff;
  position: relative;
}
#entrance .container-heading {
  margin-bottom: 45px;
}
#entrance .container-body {
  z-index: 2;
}
#entrance:after {
  content: "";
  display: inline-block;
  position: absolute;
  background: url("/images/2017/entrance-bg.png") no-repeat right bottom;
  width: 515px;
  height: 0;
  padding: 490px 0 0;
  right: 0;
  bottom: -44px;
  z-index: 1;
}
#entrance .entrance-btns {
  margin-bottom: 68px;
}
#entrance .entrance-news-block {
  margin-bottom: 75px;
}
#entrance .entrance-news-block ul {
  display: flex;
  max-width: 1070px;
  margin: 0 auto;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: stretch;
  align-items: stretch;
}
#entrance .entrance-news-block li {
  background-color: rgba(164, 208, 232, 0.302);
  position: relative;
  width: 22.80374%;
  text-align: justify;
  font-size: 0.875rem;
  line-height: 1.57143;
}
#entrance .entrance-news-block li:nth-child(n+5) {
  display: none;
}
#entrance .entrance-news-block li .date {
  background-color: #a4d0e8;
  font-size: 0.75rem;
  padding: 0 12px;
  line-height: 2.16667em;
  color: #263365;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  -webkit-transition: background 0.3s;
  -moz-transition: background 0.3s;
  -ms-transition: background 0.3s;
  -o-transition: background 0.3s;
  transition: background 0.3s;
}
#entrance .entrance-news-block li a {
  display: block;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 47px 20px 31px 20px;
  text-decoration: none;
  color: #000;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
#entrance .entrance-news-block li a:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #a4d0e8;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
#entrance .entrance-news-block li a:visited {
  color: #603371;
}
#entrance .entrance-news-block li a:hover .date {
  background-color: rgba(255, 255, 255, 0.8);
}
#entrance .entrance-news-block li a:hover:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
}
#entrance .block-foot {
  text-align: center;
}

@media screen and (max-width: 1039px) {
  #entrance {
    padding: 30px 15px 25px;
  }
  #entrance .container-heading {
    margin-bottom: 30px;
  }
  #entrance .entrance-btns {
    margin-bottom: 10px;
  }
  #entrance .entrance-news-block {
    margin-bottom: 22px;
  }
  #entrance .entrance-news-block ul {
    display: flex;
    max-width: 1070px;
    margin: 0 auto;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: stretch;
    align-items: stretch;
  }
  #entrance .entrance-news-block li {
    width: 100%;
    max-width: inherit;
    padding: 0;
    font-size: 0.8125rem;
  }
  #entrance .entrance-news-block li + li {
    margin-top: 8px;
  }
  #entrance:after {
    content: none;
    display: none;
  }
}
#gakubuarea {
  padding: 63px 0 77px;
  background: url("/images/2017/gakubu-bg.jpg") no-repeat center bottom;
  -webkit-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
#gakubuarea .container-heading {
  margin-bottom: 54px;
}
#gakubuarea .gakubu-btns ul {
  zoom: 1;
}
#gakubuarea .gakubu-btns ul:before, #gakubuarea .gakubu-btns ul:after {
  content: "";
  display: table;
}
#gakubuarea .gakubu-btns ul:after {
  clear: both;
}
#gakubuarea .gakubu-btns li {
  float: left;
  width: 25%;
}
#gakubuarea .gakubu-btns li:nth-child(-n+4) {
  margin-bottom: 46px;
}
#gakubuarea .gakubu-btns a {
  display: block;
  width: 100%;
  height: 280px;
  position: relative;
  overflow: hidden;
  color: #fff;
  text-decoration: none;
  background-repeat: no-repeat;
  background-position: top center;
  font-size: 1.125rem;
  line-height: 1.23077;
  -webkit-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
#gakubuarea .gakubu-btns a .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 105%;
  max-width: inherit;
  height: auto;
  z-index: 0;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
  -webkit-transition-property: opacity , transform;
  transition-property: opacity , transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
#gakubuarea .gakubu-btns a span {
  display: block;
  width: 100%;
  height: 95px;
  position: absolute;
  left: 0;
  bottom: 0;
  border-width: 4px 0 0;
  border-style: solid;
  padding: 20px 5px 0 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#gakubuarea .gakubu-btns a small {
  display: block;
  font-size: 0.875rem;
  margin-top: 0.2em;
}
#gakubuarea .gakubu-btns a:hover .bg {
  opacity: 0.7;
  -webkit-transform: scale(1.05) translateZ(0);
  transform: scale(1.05) translateZ(0);
}
#gakubuarea .gakubu-btns .eng a {
  background-color: #5e5480;
}
#gakubuarea .gakubu-btns .eng a:before {
  background-color: rgba(94, 84, 128, 0.2);
}
#gakubuarea .gakubu-btns .eng a span {
  border-color: #5e5480;
  background-color: rgba(94, 84, 128, 0.902);
}
#gakubuarea .gakubu-btns .cs a {
  background-color: #7193be;
}
#gakubuarea .gakubu-btns .cs a:before {
  background-color: rgba(113, 147, 190, 0.2);
}
#gakubuarea .gakubu-btns .cs a span {
  border-color: #7193be;
  background-color: rgba(113, 147, 190, 0.902);
}
#gakubuarea .gakubu-btns .ms a {
  background-color: #ac5d5d;
}
#gakubuarea .gakubu-btns .ms a:before {
  background-color: rgba(172, 93, 93, 0.2);
}
#gakubuarea .gakubu-btns .ms a span {
  border-color: #ac5d5d;
  background-color: rgba(172, 93, 93, 0.902);
}
#gakubuarea .gakubu-btns .bs a {
  background-color: #51804e;
}
#gakubuarea .gakubu-btns .bs a:before {
  background-color: rgba(81, 128, 78, 0.2);
}
#gakubuarea .gakubu-btns .bs a span {
  border-color: #51804e;
  background-color: rgba(81, 128, 78, 0.902);
}
#gakubuarea .gakubu-btns .ds a {
  background-color: #9b5d44;
}
#gakubuarea .gakubu-btns .ds a:before {
  background-color: rgba(155, 93, 68, 0.2);
}
#gakubuarea .gakubu-btns .ds a span {
  border-color: #9b5d44;
  background-color: rgba(155, 93, 68, 0.902);
}
#gakubuarea .gakubu-btns .hs a {
  background-color: #dc667a;
}
#gakubuarea .gakubu-btns .hs a:before {
  background-color: rgba(220, 102, 122, 0.2);
}
#gakubuarea .gakubu-btns .hs a span {
  border-color: #dc667a;
  background-color: rgba(220, 102, 122, 0.902);
}
#gakubuarea .gakubu-btns .grad a {
  background-color: #4a55a1;
}
#gakubuarea .gakubu-btns .grad a:before {
  background-color: rgba(74, 85, 161, 0.2);
}
#gakubuarea .gakubu-btns .grad a span {
  border-color: #4a55a1;
  background-color: rgba(74, 85, 161, 0.902);
}
#gakubuarea .gakubu-btns .kyoyo a {
  background-color: #8b835f;
}
#gakubuarea .gakubu-btns .kyoyo a:before {
  background-color: rgba(139, 131, 95, 0.2);
}
#gakubuarea .gakubu-btns .kyoyo a span {
  border-color: #8b835f;
  background-color: rgba(139, 131, 95, 0.902);
}

@media screen and (max-width: 1039px) {
  #gakubuarea {
    padding: 32px 0 50px;
  }
  #gakubuarea .container-heading {
    margin-bottom: 30px;
  }
  #gakubuarea .gakubu-btns ul {
    zoom: 1;
  }
  #gakubuarea .gakubu-btns ul:before, #gakubuarea .gakubu-btns ul:after {
    content: "";
    display: table;
  }
  #gakubuarea .gakubu-btns ul:after {
    clear: both;
  }
  #gakubuarea .gakubu-btns li {
    width: 50%;
    margin-bottom: 17px;
  }
  #gakubuarea .gakubu-btns li:nth-child(-n+4) {
    margin-bottom: 17px;
  }
  #gakubuarea .gakubu-btns a {
    height: 163px;
    font-size: 0.8125rem;
  }
  #gakubuarea .gakubu-btns a span {
    display: block;
    width: 100%;
    height: 88px;
    position: absolute;
    left: 0;
    bottom: 0;
    border-width: 3px 0 0;
    border-style: solid;
    padding: 13px 5px 0 15px;
  }
  #gakubuarea .gakubu-btns a small {
    font-size: 0.75rem;
    margin-top: 0.2em;
  }
}
@media screen and (max-width: 375px) {
  #gakubuarea .gakubu-btns a .bg {
    height: 100%;
    width: auto;
    max-width: inherit;
  }
}
/* 施設 */
#shisetsu {
  background-color: #FFF;
  padding: 76px 0 104px;
}
#shisetsu .container-heading {
  margin-bottom: 53px;
}
#shisetsu .container-body {
  padding: 0 16px;
}
#shisetsu .container-body ul {
  zoom: 1;
  width: 100%;
}
#shisetsu .container-body ul:before, #shisetsu .container-body ul:after {
  content: "";
  display: table;
}
#shisetsu .container-body ul:after {
  clear: both;
}
#shisetsu .container-body li {
  float: left;
  display: inline-block;
}
#shisetsu .container-body li:nth-child(n+4) {
  margin-top: 16px;
}
#shisetsu .container-body a {
  display: block;
  width: 100%;
  height: 276px;
  position: relative;
  overflow: hidden;
  color: #fff;
  background-color: #263365;
  text-decoration: none;
  background-repeat: no-repeat;
  background-position: top center;
  font-size: 1.125rem;
  line-height: 1.23077;
  -webkit-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
#shisetsu .container-body a .bg {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  height: 105%;
  max-width: inherit;
  z-index: 0;
  -webkit-transform: translateZ(0) translate(-50%, -50%);
  transform: translateZ(0) translate(-50%, -50%);
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
  -webkit-transition-property: opacity , transform;
  transition-property: opacity , transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
#shisetsu .container-body a span {
  display: block;
  width: 100%;
  height: 80px;
  position: absolute;
  left: 0;
  bottom: 0;
  border-width: 4px 0 0;
  border-style: solid;
  border-color: #263365;
  background-color: rgba(38, 51, 101, 0.8);
  text-align: center;
  padding: 15px 5px 0;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#shisetsu .container-body a small {
  display: block;
  font-size: 0.875rem;
  margin-top: 0.2em;
}
#shisetsu .container-body a:hover .bg {
  opacity: 0.7;
  -webkit-transform: scale(1.04) translateZ(0) translate(-48%, -48%);
  transform: scale(1.04) translateZ(0) translate(-48%, -48%);
}
#shisetsu .container-body .shisetsu-karl a span, #shisetsu .container-body .shisetsu-neec a span, #shisetsu .container-body .shisetsu-ryo a span {
  padding-top: 25px;
}
#shisetsu .container-body .shisetsu-cloud, #shisetsu .container-body .shisetsu-ryo {
  width: 49%;
}
#shisetsu .container-body .shisetsu-karl, #shisetsu .container-body .shisetsu-media, #shisetsu .container-body .shisetsu-neec, #shisetsu .container-body .shisetsu-jst {
  width: 24%;
}
#shisetsu .container-body .shisetsu-karl {
  margin-left: 1%;
}
#shisetsu .container-body .shisetsu-media {
  margin-left: 1%;
}
#shisetsu .container-body .shisetsu-jst {
  margin-left: 1%;
}
#shisetsu .container-body .shisetsu-ryo {
  margin-left: 1%;
}

@media screen and (min-width: 1388px) {
  #shisetsu .container-body a .bg {
    width: 105%;
    height: auto;
  }
}
@media screen and (max-width: 1039px) {
  #shisetsu {
    padding: 32px 0 48px;
  }
  #shisetsu .container-heading {
    margin-bottom: 30px;
  }
  #shisetsu .container-body li {
    float: left;
    display: inline-block;
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.3);
  }
  #shisetsu .container-body li:nth-child(n+2) {
    margin-top: 16px;
  }
  #shisetsu .container-body a {
    font-size: 0.8125rem;
    height: 140px;
  }
  #shisetsu .container-body a span {
    height: 60px;
    padding-top: 13px;
  }
  #shisetsu .container-body a .bg {
    width: 105%;
    height: auto;
  }
  #shisetsu .container-body .shisetsu-karl a span, #shisetsu .container-body .shisetsu-neec a span, #shisetsu .container-body .shisetsu-ryo a span {
    padding-top: 20px;
  }
  #shisetsu .container-body .shisetsu-cloud, #shisetsu .container-body .shisetsu-ryo {
    width: 100%;
  }
  #shisetsu .container-body .shisetsu-karl, #shisetsu .container-body .shisetsu-media, #shisetsu .container-body .shisetsu-neec, #shisetsu .container-body .shisetsu-jst {
    width: 48%;
  }
  #shisetsu .container-body .shisetsu-karl {
    margin-left: 0;
  }
  #shisetsu .container-body .shisetsu-media {
    margin-left: 4%;
  }
  #shisetsu .container-body .shisetsu-jst {
    margin-left: 4%;
  }
  #shisetsu .container-body .shisetsu-ryo {
    margin-left: 0;
  }
}
.ie.notedge .btn-block {
  padding: 1.15em 0.8em 0.85em;
}
.ie.notedge .tab-container .nav a {
  padding-top: 0.25em;
}




