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


/******************************
 main-visual
***************************************/
.top .hero-body {
	height:auto;
	padding:0;
}
.top .main.wrapper {
	padding-top:5em;
}
.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
}
.mv-copy {
	margin-top:2rem;
	padding:0 2rem;
}
#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;
}
.main > .container section h2 a {
	color: #333;
}
.magazine-container {
	justify-content: center;
}

.magazine-container .txtBox {
	display: flex;
	justify-content: center;
	flex-flow: column;
	height:100%;
}
.magazine-container .txtBox h4 {
	margin-bottom:1em;
}
.main > .container .magazine-container .txtBox .dl {
	display: block;
}
.main > .container .magazine-container .txtBox .dl .dt {
	width:100%;
	font-weight:600;
}
.main > .container .magazine-container .txtBox .dl .dt:before {
	content:"●";
}
.main > .container .magazine-container .txtBox .dl .dd {
	margin-bottom:1em;
}
main > .container .magazine-container .txtBox .dl .dd ul li:before {
	content:"□　";
}
#bnr-index {
	border-top:1px dotted #000;
	margin-top:60px;
	padding:90px 0 30px;
}
h3 .sBtn , h2 .sBtn {
	display: inline-block;
	vertical-align: text-top;
}
h3 .sBtn a, h2 .sBtn a{
	margin-left: 1em;
    font-size: 0.8rem!important;
    height: 22px;
    line-height: 22px;
	padding:0 0.75rem!important;
}

@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:0;
	}
}

@media screen and (max-width: 1024px) {
	.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:auto;
	}
	.main-visual-slider .slick-slide {
		background-size:cover;
	}
	.display-wide-none {display: none !important;}
	.top .main.wrapper {
	padding-top:2.5em;
}
/*
	.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;
}
	.main > .container section .event-container .index-box a {
    	display: flex;
	}	
	.main .index-wrapper .event-container .index-box a .imgBox {
		width:25%;
	}
	.main .index-wrapper .event-container .index-box a .txtBox{
		width:75%;
		padding-left:1em;
	}
	.main .concept-container .index-wrapper.column {
    padding: 0 0 1rem 0;
    margin: 0;
}

	.main .index-wrapper.column > .index-box {
    width:50%;
		flex-basis: auto;
		flex-shrink: 1;
    flex-grow: 0;
}
	.main .index-wrapper.column h3 {
		margin-bottom:0;
	}
	.main > .container section .magazine-container img {
		width:70%;
		display: block;
		margin:0 auto;
	}
	.top .main > .container > .section:last-child {
    padding: 40px 0 0;
}

}

.main .index-wrapper .index-box a .imgBox {
    aspect-ratio:46/65;
    overflow: hidden;
    margin-bottom:0.5em;
}
.top .main > .container section h3 {
    border-bottom:none;
}