/* eye
----------------------------------------------------------------------------------------------------*/
#eye{
  position: relative;
  background-size: cover;
}
.eyecatch {
  position: absolute;
  padding: 20vw;
  top: 0vw;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

#scroll-down{
  position: absolute;
  bottom: 20px;
  left: 50%;
  z-index: 2;
  display: inline-block;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  color: #fff;
  font : normal 400 20px/1 'Josefin Sans', sans-serif;
  letter-spacing: .1em;
  text-decoration: none;
  transition: opacity .3s;
  padding-top: 70px;
}
#scroll-down span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 24px;
  height: 24px;
  margin-left: -12px;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-animation: sdb05 1.5s infinite;
  animation: sdb05 1.5s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb05 {
  0% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(-45deg) translate(-20px, 20px);
    opacity: 0;
  }
}
@keyframes sdb05 {
  0% {
    transform: rotate(-45deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: rotate(-45deg) translate(-20px, 20px);
    opacity: 0;
  }
}




/*下から上*/
@keyframes SlideUp {
0% {
    opacity: 0;
    transform: translateY(50px);
}
50% {
  opacity: 0;
  transform: translateY(50px)
}
100% {
    opacity: 1;
    transform: translateY(0);
}
}

.eyecatch {
animation-duration: 8s;
animation-name: SlideUp;
animation-iteration-count: 1;
}


/* 動画微調整 */
.inline-YTPlayer{max-width:100% !important;}
.mbYTP_wrapper iframe{width:100% !important; margin-left:0 !important;}
.mainvisual {
position: relative;
width: 100%;
}

/*
.mainvisual:before {
content:"";
display: block;
margin-top:-5%;
margin-bottom:-4%;/*  高さを幅の75%に固定 
width: 100%;
}*/

.mainvisual_video {
/* position: absolute; */
top: 0;
left: 0;
bottom: 0;
right: 0;
width: 100%;
}

/*loding animation*/
#loading {
position: absolute;
color:#ffffff;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

#loading:after {
display:none;
}

#loading {
  position: absolute;
  top: 50%;
  left: 47%;
  color: #333333;
  font-size: 90px;
  text-indent: -9999em;
  overflow: hidden;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  margin: 0 auto;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load6 1.7s infinite ease, round 1.7s infinite ease;
  animation: load6 1.7s infinite ease, round 1.7s infinite ease;
}
@-webkit-keyframes load6 {
  0% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
  5%,
  95% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
  10%,
  59% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.087em -0.825em 0 -0.42em, -0.173em -0.812em 0 -0.44em, -0.256em -0.789em 0 -0.46em, -0.297em -0.775em 0 -0.477em;
  }
  20% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.338em -0.758em 0 -0.42em, -0.555em -0.617em 0 -0.44em, -0.671em -0.488em 0 -0.46em, -0.749em -0.34em 0 -0.477em;
  }
  38% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.377em -0.74em 0 -0.42em, -0.645em -0.522em 0 -0.44em, -0.775em -0.297em 0 -0.46em, -0.82em -0.09em 0 -0.477em;
  }
  100% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
}
@keyframes load6 {
  0% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
  5%,
  95% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
  10%,
  59% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.087em -0.825em 0 -0.42em, -0.173em -0.812em 0 -0.44em, -0.256em -0.789em 0 -0.46em, -0.297em -0.775em 0 -0.477em;
  }
  20% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.338em -0.758em 0 -0.42em, -0.555em -0.617em 0 -0.44em, -0.671em -0.488em 0 -0.46em, -0.749em -0.34em 0 -0.477em;
  }
  38% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.377em -0.74em 0 -0.42em, -0.645em -0.522em 0 -0.44em, -0.775em -0.297em 0 -0.46em, -0.82em -0.09em 0 -0.477em;
  }
  100% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
}
@-webkit-keyframes round {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes round {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

video{
    width: 100%;
    height: 100%;
}


/* セクション
----------------------------------------------------------------------------------------------------*/
main{overflow:hidden;}
#index > section{
  padding-top:3rem;
  padding-bottom:3rem;
}
@media(min-width:768px){
  #index > section{
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
#index #event,#index #topics{
  padding-top:6rem !important;
  padding-bottom:6rem !important;
  transform: skew(0deg, -2deg);
}
#index #event > div,#index #topics > div{transform: skew(0deg, 2deg);}
#index #event{background-color:#006837;}
#index #topics{background-color:#ebf5e8;}

.btn{background: transparent; border:2px solid #333333; color:#333333; font-family: 'Poiret One', sans-serif, cursive; font-weight:600; padding:.375rem 1.4rem; border-radius:30px; display:inline-flex; justify-content:space-between;}
.btn:hover,.btn:focus,.btn:active {background:#333333; color: #ffffff;}
.btn span{display:inline-block; margin-left:10px;}
#index #event .btn{background:transparent; border:1px solid #ffffff; color:#ffffff;}
#index #event .btn:focus,#index #event .btn:active {background:#ffffff; color: #006837;}
#index #department .btn{background:#ffffff;}
#index #department .btn:hover,#index #department .btn:focus,#index #department .btn:active {background:#333333; color: #ffffff;}

.btn.btn-arrow{position:relative; right: 0; padding: .375rem 60px .375rem 1.4rem;}
.btn.btn-arrow span{
  display: block;
  width: 20px;
  height: 2px;
  background: #3e3a39;
  position: absolute;
  -webkit-transition: .25s transform, .25s background, .25s color;
  transition: .25s transform, .25s background, .25s color;
  right: 20px;
  top: calc(50% - 1px);
}
.btn.btn-arrow span::after,.btn.btn-arrow span::before {
  height: 100%;
  width: 50%;
  content: '';
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  background: #3e3a39;
  -webkit-transform-origin: right center;
  transform-origin: right center;
  -webkit-transition: .25s transform, .25s background;
  transition: .25s transform, .25s background;
}
.btn.btn-arrow:hover span::before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  background: black;
}
.btn.btn-arrow:hover span::after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  background: black;
}
.btn.btn-arrow:hover span,
.btn.btn-arrow:hover span::after,.btn.btn-arrow:hover span::before,
.btn.btn-arrow:focus span::after,.btn.btn-arrow:focus span::before,
.btn.btn-arrow:active span::after,.btn.btn-arrow:active span::before {background:#ffffff;}

#index #event .btn.btn-arrow span,
#index #event .btn.btn-arrow span::after,#index #event .btn.btn-arrow span::before{background:#ffffff;}
#index #event .btn.btn-arrow:hover span,
#index #event .btn.btn-arrow:hover span::after,#index #event .btn.btn-arrow:hover span::before,
#index #event .btn.btn-arrow:focus span::after,#index #event .btn.btn-arrow:focus span::before,
#index #event .btn.btn-arrow:active span::after,#index #event .btn.btn-arrow:active span::before {background:#006837;}


#index h2{
  color: #333333;
  line-height: 1.6;
  margin:0 0 4rem;
  font-size:1rem;
}
#index #event h2{color: #ffffff;}
#index h2 span{
  display: block;
  font-size:4rem;
  font-family: 'Poiret One', sans-serif, cursive;
  line-height:1;
  margin-bottom:5px;
}


#index a > div.hoverwhite{ position: relative;}
#index a > div.hoverwhite:before{-webkit-transition: all .3s; transition: all .3s;
  position: absolute;
  display:block;
  top:0; bottom:0;
  left:0; right:0;
  content: '';}
#index a:hover > div.hoverwhite:before{background-color:rgba(255, 255, 255,0.4);}

#index #pickup h2{margin:5.5em 0 2.5em;}
#index #pickup h2.keyword{text-align:center; margin:3em 0 1.5em; font-family: 'Noto Sans Japanese', sans-serif;}
#index #pickup h2.keyword span{font-size:1.5rem; border-bottom:2px solid #000000; display:inline-block; padding:0 .3em .5em;}


#pickup dl{border:1px solid #ff0000;}
#pickup dl > *{margin:0; padding:.5em 1em;}
#pickup dl dt{background-color:#ff0000; color:#ffffff; font-weight:normal; text-align:center;}
#pickup dl dd{flex:1;}
@media(min-width:992px){
  #pickup dl{display:flex;}
}

.pick_info{padding:0 20px;}
.pick_info div.slider-element{width:100%;}
.pick_info div.slider-element > a{margin:0 10px; display:block;}
.pick_info div.slider-element p{margin-top:5px; font-size:1.1rem;}
.pick_info div.slider-element p > small{font-family: 'Poiret One', cursive; display:block; font-weight:600;}
@media(min-width:768px){
  .pick_info{padding:30px 0 0;}
.pick_info div.slider-element > a{margin:0 20px;}
.pick_info div.slider-element > a:hover{text-decoration:none;}
.pick_info div.slider-element:not(:last-child) p{margin-bottom:30px;}
}
@media(min-width:992px){
  .pick_info div.slider-element:nth-child(-n+2) p{margin-bottom:30px;}
}
@media(min-width:1200px){
  .pick_info div.slider-element p{margin-bottom:0px;}
}

.slick-prev, .slick-next{z-index:1 !important;}
.slick-prev::before, .slick-next::before {
  border:none; line-height:0; letter-spacing:0;
border-radius: 100%;
color:
  #000000 !important;
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900;
  width: 30px;
  height: 30px;
  display: flex !important;
  align-items: center;
  justify-content: center;
  opacity: .75 !important;
}
@media(min-width:768px){
  .slick-prev, .slick-next{top:0 !important;}
  .slick-next{right:0 !important;}
  .slick-prev{right:40px !important; left:auto !important;}
}

.event_area > div.left{margin-top:30px; display:flex; flex-direction: column;}
@media(min-width:992px){
.event_area{display:flex; flex-direction: row-reverse;}
.event_area > div.right{width:35%; margin-left:30px; margin-bottom:0px; display:flex;}
.event_area > div.left{flex:1;}
.event_area > div.left{margin-top:0px;}
}


/* 緊急
----------------------------------------------------------------------------------------------------*/
.table.emergency th, .table.emergency td{
  display: block;
  border: 1px solid #cc0000!important;
}
.table.emergency th{
  background-color: #cc0000;
  color: #ffffff;
  width: 100%;
}

@media(min-width:768px){
  .table.emergency th, .table.emergency td{display: table-cell;}  
  .table.emergency th{
    width: 15%;
    text-align: center;
  }
}



.pict_area > div{padding:10px;
	-webkit-transition: all .3s;
	transition: all .3s;}
.pict_area > div:hover{background-color:rgba(255, 255, 255,0.1);}
.pict_area > div:last-child{border-bottom:none;}
.pict_area figure{margin:0;
  overflow: hidden;
  width: 70px;/* トリミングしたい枠の幅 */
  height: 70px;/* トリミングしたい枠の高さ */
  position: relative;}
.pict_area img{
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 100%;
  max-height: 100%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);}
#index .pict_area a > div.hoverwhite::before{z-index:2;}
.pict_area > div a{color:#ffffff !important; display:flex;}
.pict_area > div a p{margin:0 0 0 20px; flex:1; display:flex; flex-direction: column; justify-content:flex-end;}
.pict_area > div a p small{color:#ffffff !important; display:block;font-family: 'Poiret One', cursive; font-weight:500;}
.pict_area > div a:hover{text-decoration:none;}
.pict_area + div{margin-top:30px;}
@media(min-width:992px){
.pict_area + div{margin-top:auto;}
}



/* カレンダー表示*/ /**/
#index .fc-ltr .fc-popover .fc-header .fc-title{float:none;}
#index div.eventcalendar > div{background-color:#ffffff; display:flex; flex-grow:1; padding:15px;}
#calendar{font-family: 'Poiret One', sans-serif, cursive; font-weight:600;}
#index .fc-center h2{font-size:1em !important; margin-bottom:0 !important; color:#333333 !important; font-weight:600; line-height:1;}
.fc a{text-decoration:none; overflow:hidden;
  background: none;
  text-align: center;
  border: none;
  display:inline-block;
}

.fc-toolbar{display:flex; justify-content:space-between; align-items:center;}
.fc-toolbar > div{float:none !important; flex-grow:1;}
.fc-left{order:1;}
.fc-center{order:2;}
.fc-right{order:3;}
div.fc-day-grid{font-size:0.8em;}
th.fc-day-header{font-size:0.8em !important; text-align:center !important;}
button.fc-today-button{display:none;}
div.fc-day-grid-container{height:100%!important;}
span.fc-day-number{float:none !important; text-align:center; color:#333333 !important; font-weight:600;}
main.page .fc table thead{background-color: #ffffff!important;}
.fc .fc-row .fc-content-skeleton td{text-align:center !important;}
.fc td, .fc th{border:none !important; color:#333333 !important;}
.fc .fc-row {border-bottom:1px solid #006837 !important;}
.fc tbody .fc-row:last-child{border-bottom:none !important;}

.fc-unthemed td.fc-today{background-color:#ebf5e8 !important;}
.fc a span{font-size:8px; font-family:'ＭＳ Ｐゴシック', sans-serif; display:inline-block; border-radius:50%;color:#006837; font-weight:600;}
.fc th.fc-sat{color:#6688ee;}
.fc th.fc-sun{color:#e45a5b;}
.fc{margin-bottom:10px;}
.fc a.fc-more{margin:0;}
.fc-state-default{background-color:transparent !important; border:none !important; box-shadow:none !important;}


ul.slick-dots{bottom:10px !important;}
.slick-dotted.slick-slider{margin-bottom:0 !important;}



/* 学類・学群
----------------------------------------------------------------------------------------------------*/
#department_study{position: relative;}
#department_study > div{display:flex; justify-content:flex-end; align-items:center; margin-top:10px;}
#department_study > div > div{width:100%;}
#department_study img{width:100%;}
#department_area{margin-top:4em;}
#department_area h3{margin-top:0;}
#department_area h3 small{color:#333333; display:block;}
#department_area > section > div.container{display:flex; flex-direction: column; align-items:center;}
#department_area section{position: relative; margin-bottom:5em;}
#department_area section:last-child{margin-bottom:0em;}
#department_area > section:before{content: ''; position: absolute; display: block; border:2px solid #ced7ce; top:15px; bottom:0; left:15px; right:15px; z-index:2; margin:0 auto;}
#department_area > section img.mainimg{margin:0 auto 10px;}
#department_area div.ex{display:block; width:100%; padding:0 15px;}
#department_area div.ex p:last-child{position: relative; z-index:3;}
#department_area > section div.smallimg{display:none;}
@media (min-width:576px) {
  #department_study > div{position: absolute; bottom:0; top:0; left:0; right:0; margin-top:0;}
  #department_study > div > div{width:40%;}
  #department_area div.ex{display:flex; flex:1; width:100%; justify-content:space-between; align-items:flex-end; padding:0;}
}
@media(min-width:768px){
  #department_area > section img.mainimg{width:100%;}
}
@media(min-width:992px){
  #department_area section{padding-bottom:6em;}
  #department_area > section > div.container{flex-direction:row;}
  #department_area > section:nth-child(even) > div{flex-direction: row-reverse;}
  #department_area > section:before{background-color:#ebf5e8; border:none; top:auto; bottom:3em; left:0; right:auto; width:50%; height:80%; z-index:-1;}
  #department_area > section:nth-child(even):before{right:0; left:auto;}
  #department_area > section img.mainimg{margin-right:40px;margin-left:40px; max-width:620px;}
  #department_area > section div.smallimg{display:block; position: absolute; width:150px; bottom:0; left:50%;}
  #department_area > section:nth-child(even) div.smallimg{right:50%; left:auto;}
  #department_area div.ex{width:auto; flex-direction: column; justify-content:center; align-items:flex-start;}
}

/* popup banner */
.btn-popup{
    color: #fff;
    background-color: #007bff;
    border-color: #007bff;
}
.btn-popup:hover{
    color: #fff;
    background-color: #0069d9;
    border-color: #0062cc;
}
html.sr .load-hidden {
  visibility: hidden;
}