@charset "utf-8";
/* CSS Document */


/******************************
 main-visual
***************************************/
.top .hero-body {
	height:auto;
	padding:0;
}
.main-visual-slider, .slick-list, .slick-track {
	height:100%;
}
.main-visual-slider .slick-slide {
	display: flex;
	position:relative;
	justify-content: flex-start;
	align-items: center;
	flex-flow: column;
	height:100%;
	opacity:0;
	transition: 1s;
}
.main-visual-slider {
	opacity:0;
	transition: 1s;
}
.main-visual-slider.slick-initialized{
    opacity: 1
}

#preloader_bg {

  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #FFF;
  z-index: 1;
}

#preloader {

  position: fixed;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  margin-top: -100px;
  margin-left: -100px;
  text-align: center;
  z-index: 2;
}
.main-visual-slider.slick-initialized .slick-slide #preloader_bg {
	display: none;
}

.main-visual01 {
	background: none;
	
}
.main-visual02 {
	background: none;
	
}
.page-title .slick-slide h1{
	position:absolute;
	-webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
	right:15%;
	top:10vh;
	font-size:1.25rem;
	text-align: left; 
	color:#FFF;
	text-shadow: 0 0 5px rgb(0,0,0);
}
.page-title .slick-slide h1 img {
	margin:auto;
	width:144px;
	height:auto;
}
.page-title .slick-slide h1 .kagi,.page-title .slick-slide h1 .kakko{
	position:relative;
	display: inline-block;
	padding-top:0.5em;
	box-sizing: content-box;
}
.page-title .slick-slide h1 .kagi:before {
	position:absolute;
	content:"「 ";
	top:-1em;
	padding-bottom: 0.25em;
	display: inline-block;
	height:0.5em;
	box-sizing: content-box;
} 
.page-title .slick-slide h1 .kakko:before {
	position:absolute;
	content:"（ ";
	top: -1.25em;
	padding-top:0.25em;
	padding-bottom: 0.5em;
	display: inline-block;
	height:1em;
	box-sizing: content-box;
} 
.main-visual01 figure {
	position:absolute;
	right:40px;
	bottom:2rem;
}
.main-visual02 .button {
	margin-top:2em;
	width:280px;
	border-radius: 10px;
	color:#1b2f6b;
}
.main-visual02 .button i {
	padding-right:0.5em;
}

.slick-dotted.slick-slider
{
    margin-bottom: 0;
}

.slick-dots
{
    position: absolute;
    bottom: 25px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}
.slick-dots li
{
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 ;
    padding: 0;

    cursor: pointer;
}
.slick-dots li button
{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 24px;
    height: 24px;
    padding: 0;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}
.slick-dots li button:before
{
    font-family: 'slick';
    font-size: 24px;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 24px;
    height: 24px;

    content: '•';
    text-align: center;

    opacity:1;
    color: #FFF;

}
.slick-dots li.slick-active button:before
{
    opacity: 1;
    color: #f6ca50;
}
.main > .container section .concept-container p {
	font-size:1.11rem;
}
.education-container .index-box {
	border-right:1px solid #FFF;
}

.education-container > .index-box:last-child {
	border-right:none;
}
.education-container > .index-box:nth-of-type(1) a figure{
	background: url(../img/top/education-img-mon.jpg) center center no-repeat;background-size: cover;
}
.education-container > .index-box:nth-of-type(2) a figure{
	background: url(../img/top/education-img-tue.jpg) center center no-repeat;background-size: cover;
}
.education-container > .index-box:nth-of-type(3) a figure{
	background: url(../img/top/education-img-wed.jpg) center center no-repeat;background-size: cover;
}
.education-container > .index-box:nth-of-type(4) a figure{
	background: url(../img/top/education-img-thu.jpg) left center no-repeat;background-size: cover;
}
.education-container > .index-box:nth-of-type(5) a figure{
	background: url(../img/top/education-img-fri.jpg) left center no-repeat ;background-size: cover;
}
.education-container > .index-box:nth-of-type(6) a figure{
	background: url(../img/top/education-img-sat.jpg) center no-repeat ;background-size: cover;
}
.education-container > .index-box:nth-of-type(7) a figure{
	background: url(../img/top/education-img-sun.jpg) left center no-repeat ;background-size: cover;
}
.main .education-container .index-box a {
	position:relative;
	height:100%;
	width:100%;
	background-color: #dcdddd;
}
.main .education-container .index-box a:hover {
	opacity: 1.0;
}

.main .education-container .index-box a:before {
	content:"";
	display: block;
	padding-top:215%;
} 
.main .education-container .index-box a figure {
	position:absolute;
	display: block;
	top: 0;
    left: 0;
    bottom: 0;
    right: 0;
	background-color: #dcdddd;
}
.main .education-container .index-box a:hover:before {
	background-color: rgba(0,0,0,0.5);
	z-index: 1;
	position:relative;
}
.education-container .index-box a:after {
	content: attr(data)'';
    position: absolute;
    font-size: 3.0rem;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    width: 1em;
    height: calc(100% - 1em);
    margin: auto;
    line-height: 1.5;
    top: 1em;
    left: calc(50% - 0.5em);
	color:#FFF;
	opacity: 1;
	z-index: 2;
}
/*.education-container .index-box a:hover:after {
	content: attr(data)'';
    position: absolute;
    font-size: 3.0rem;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    width: 1em;
    height: calc(100% - 1em);
    margin: auto;
    line-height: 1.5;
    top: 1em;
    left: 37%;
	color:#FFF;
	opacity: 1;
	z-index: 2;
}*/
.education-container .index-box a img {
	width:100%;
	height:100%;
}
.main .index-wrapper .education-container .index-box {
	background-color:rgba(0,0,0,1.0);
	margin-bottom:0;
}
#bnr-index, #education-index {
	border-top:1px dotted #000;
	margin-top:60px;
	padding:90px 0 30px;
}


@media screen and (min-width: 1200px) {
	.top .hero-body {
	height:calc(100vh - 120px);
}
	.display-wide-none {display: none !important;}
	.main-visual01 {
	background: url( /img/top/main-visual01-photo.jpg) center bottom no-repeat;
					
	}
	.main-visual02 {
		background: url( /img/top/main-visual02-photo.jpg) center bottom no-repeat;

	}
	.main-visual03 {
		background: url( /img/top/main-visual03-photo.jpg) center bottom no-repeat;

	}
	.main-visual04 {
		background: url( /img/top/main-visual04-photo.jpg) center bottom no-repeat;

	}
	.main-visual05 {
		background: url( /img/top/main-visual05-photo.jpg) center bottom no-repeat;

	}
	.main-visual06 {
		background: url( /img/top/main-visual06-photo.jpg) center bottom no-repeat;

	}
	.main-visual-slider .slick-slide {
		background-size:cover;
		padding:3rem 0;
	}
}

@media screen and (max-width: 1080px) {
	.main-visual01 h1 {
		padding-top:2rem;
	}
	.main-visual01 h1 img {
		max-width:35%;
	}
	.main-visual01 figure {
		width:30%;
	}
	.main-visual02 h1 img {
		max-width:45%;
	}
	.main-visual02 a.button.is-medium {
		font-size:1.0rem;
	}  
	.slick-dots {
		bottom:1rem;
	}

	.top .hero-body {
		height:calc(100vh - 100px);
	}
	.main-visual-slider .slick-slide {
		background-size:cover;
	}
	.display-wide-none {display: none !important;}
	.main-visual01 {
		background: url( /img/top/main-visual01-photo.jpg) center top no-repeat;
					
	}
	.main-visual02 {
		background: url( /img/top/main-visual02-photo.jpg) center top no-repeat;
	}
	.main-visual03 {
		background: url( /img/top/main-visual03-photo.jpg) center top no-repeat;
					
	}
	.main-visual04 {
		background: url( /img/top/main-visual04-photo.jpg) center top no-repeat;
	}
	.main-visual05 {
		background: url( /img/top/main-visual05-photo.jpg) center top no-repeat;
					
	}
	.main-visual06 {
		background: url( /img/top/main-visual06-photo.jpg) center top no-repeat;
	}
	
}
@media screen and (max-width: 500px) {
.page-title .slick-slide h1 img {
	margin:auto;
	width:100px;
	height:auto;
}
	.main-visual01 h1 img {
		max-width:50%;
	}
	.main-visual02 h1 img {
		max-width:60%;
	}
	.main-visual01 figure {
		width:40%;
	}
	.page-title .slick-slide h1{
    position:static;
    text-align: left;
    width: auto;
    vertical-align: middle;
    padding-top:2rem;
	font-size:1.0em;
}
	.main .index-wrapper .education-container .index-box {
    height: 360px;
}

}
