@charset "utf-8";

body.is-loading *, body.is-loading *:before, body.is-loading *:after {
	-moz-animation: none !important;
	-webkit-animation: none !important;
	-ms-animation: none !important;
	animation: none !important;
	-moz-transition: none !important;
	-webkit-transition: none !important;
	-ms-transition: none !important;
	transition: none !important;
}

.scroll-area {
  width: 100%;
  height: 100vh;
  overflow: auto;
  -webkit-scroll-behavior: smooth;
  scroll-behavior: smooth;
  -webkit-scroll-snap-type: mandatory;
  scroll-snap-type: mandatory;
  -webkit-scroll-snap-points-y: repeat(100%);
  scroll-snap-points-y: repeat(100%);
}
.topbox {
  width: 100%;
  height: 100vh;
  color: #fff;
  display: flex;
  align-items: center; /* 縦方向中央揃え */
  justify-content: center; /* 横方向中央揃え */
  flex-direction: column;
}
/* nextpage */
.material-icons.md-100 { font-size: 50px; line-height: 0px; margin-top: 60px; padding: 0px;  margin-bottom: 40px; display:inline-block;	vertical-align:bottom;}
.topbox > .next {
	position: absolute;
	bottom: 0vh;
}
@media all and (-ms-high-contrast:none){
	 .topbox > .next {
		margin-left: -150px;
	}
}
_:-ms-lang(x)::-ms-backdrop, .topbox > .next {
		margin-left: -50px;
	}	/* IE11 ハック */
}
#nextpage {
  display: flex;
  align-items: baseline; /* 縦方向中央揃え */
  justify-content: center; /* 横方向中央揃え */
  flex-direction: column;
}

#nextpage a {
	color:#E75297;
/*	background: #333;
	border: #FFF solid 2px;
	text-decoration: none;
	color: #fff;
	width: 300px;
	text-align: center;
	vertical-align:bottom;
	display: block;
	border-top-left-radius: 75px;
	border-top-right-radius: 75px;
	opacity: 0.5;*/
}
#nextpage a:hover {
	text-decoration: none;
}

@media only screen and (max-width: 768px){
	.material-icons.md-100 {
		font-size: 150px;
		margin-top: 5px;
		margin-bottom: 25px;
	}
}
@media screen and ( min-width:769px) {
	.material-icons.md-100 {
		font-size: 125px;
		margin-top: 7px;
		margin-bottom: 18px;
	}
	#nextpage a {
	}
}

@media print, screen and (min-width: 769px){
	.box__bg_photo {
	  background-image: url("../img/bg.svg");
	  background-size: cover;
	  background-position: center;
	  background-repeat: no-repeat;
	}
	_:-ms-lang(x)::-ms-backdrop, .box__bg_photo {
		  background-image: url("../img/bg.png"); 	/* IE11 ハック */
	}
}

@media only screen and (min-height: 461px){
	.sc-low {display: none;}
}
@media only screen and (max-height: 460px){
	.sc-high {display: none;}
}
@media only screen and (max-width: 768px) and (min-height: 461px){
	.box__bg_photo {
	  background-color: #FFF;
	  background-image: url(../img/top_sp_1.svg);
	  background-size: cover;
	  background-position: center;
	  background-repeat: no-repeat;
	}
	.for-title {
		display: none;
	}
}


@media only screen and (max-width: 768px) and (max-height: 460px){
	.box__bg_photo {
	  background-image: url("../img/bg.svg");
	  background-size: cover;
	  background-position: center;
	  background-repeat: no-repeat;
	}
	_:-ms-lang(x)::-ms-backdrop, .box__bg_photo {
		  background-image: url("../img/bg.png"); 	/* IE11 ハック */
	}
}


/*
@media only screen and (max-width: 1023px){
	.material-icons.md-100 {
		font-size: 150px;
		margin-top: 5px;
		margin-bottom: 25px;
	}
}
@media screen and ( min-width:1024px) {
	.material-icons.md-100 {
		font-size: 150px;
		margin-top: 10px;
		margin-bottom: 25px;
	}
	#nextpage a {
	}
}

@media print, screen and (min-width: 1024px){
	.box__bg_photo {
	  background-image: url("../img/mv4.jpg");
	  background-size: cover;
	  background-position: center;
	  background-repeat: no-repeat;
	}
}
@media only screen and (max-width: 1023px) and (max-height: 560px){
	.box__bg_photo {
	  background-image: url("../img/mv4.jpg");
	  background-size: cover;
	  background-position: center;
	  background-repeat: no-repeat;
	}
}
@media only screen and (max-width: 1023px) and (min-height: 561px){
	.box__bg_photo {
	  background-image: url(../img/top_sp.jpg);
	  background-size: cover;
	  background-position: center;
	  background-repeat: no-repeat;
	}
	.for-title {
		display: none;
	}
}
*/


/*@media print, screen and (min-width: 1024px) and (max-height: 560px){
	.box__bg_photo {
	  background-image: url(../img/samp.png);
	  background-size: cover;
	  background-position: center;
	  background-repeat: no-repeat;
	}
	.for-title {
		display: none;
	}
}*/





@media print, screen and (min-width: 1024px){
.g-container{
	overflow: hidden;
	min-width: 980px;
	padding-top: 25px;
}
.pc-sitewidth{
	width: 980px;
	margin-left: auto;
	margin-right: auto;
	
	box-sizing: 		border-box;
	-o-box-sizing: 		border-box;
	-ms-box-sizing: 	border-box;
	-moz-box-sizing: 	border-box;
	-webkit-box-sizing: border-box;
}
ul.course {
	font-size: 0;
}
	
ul.course li {
	display: inline-block;
	margin: 10px 0;
	padding: 0;
}
ul.course li:nth-of-type(2n-1) {
	width: 490px;
}
ul.course li:nth-of-type(2n){
	width: 480px;
}
ul.course li img {
	width: 480px;
}
}





@media only screen and (max-width: 1023px){
.g-container{
	overflow: hidden;
	min-width: 320px;
	padding-top: 25px;
}
.sp-sitewidth{
	margin-left: 1%;
	margin-right: 1%;
	
	box-sizing: 		border-box;
	-o-box-sizing: 		border-box;
	-ms-box-sizing: 	border-box;
	-moz-box-sizing: 	border-box;
	-webkit-box-sizing: border-box;
}
}

/* page-top */
.material-icons.md-30 { font-size: 30px; }
#page-top {
	position: fixed;
	bottom: 0;
	left: 90%;
	transform: translate(-50%, -10%);
	font-weight: bold;

}

#page-top a {
	background: #999;
	text-decoration: none;
	color: #fff;
	width: 75px;
	padding: 10px 0 0px;
	text-align: center;
	vertical-align:bottom;
	display: block;
	border-radius: 50px;
	opacity: 0.7;
}
#page-top a:hover {
	text-decoration: none;
	background: #f66;
}


/* photo */
.fit{
	width: 100%;
}
.fit--fixed{
	max-width: 100%;
}
@media print, screen and (min-width: 1024px){
.pc-fit{
	width: 100%;
}
.pc-fit--fixed{
	max-width: 100%;
}
}
@media only screen and (max-width: 1023px){
.sp-fit{
	width: 100%;
}
.sp-fit--fixed{
	max-width: 100%;
}
}





@media print, screen and (min-width: 1024px){}
@media only screen and (max-width: 1023px){}






	ol, ul {
		list-style: none;
	}

	blockquote, q {
		quotes: none;
	}

	blockquote:before, blockquote:after, q:before, q:after {
		content: '';
		content: none;
	}

	table {
		border-collapse: collapse;
		border-spacing: 0;
	}

	body {
		-webkit-text-size-adjust: none;
	}

/* Box Model */

	*, *:before, *:after {
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

/* Basic */

	@-ms-viewport {
		width: device-width;
	}

	html {
		height: 100%;
	}

	body {
		background: #ffffff;
		height: 100%;
		min-width: 320px;
	}

		body.is-loading *, body.is-loading *:before, body.is-loading *:after {
			-moz-animation: none !important;
			-webkit-animation: none !important;
			-ms-animation: none !important;
			animation: none !important;
			-moz-transition: none !important;
			-webkit-transition: none !important;
			-ms-transition: none !important;
			transition: none !important;
		}

/* Spinner */

	@-moz-keyframes spinner-rotate {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
		}

		100% {
			-moz-transform: scale(1) rotate(360deg);
			-webkit-transform: scale(1) rotate(360deg);
			-ms-transform: scale(1) rotate(360deg);
			transform: scale(1) rotate(360deg);
		}
	}

	@-webkit-keyframes spinner-rotate {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
		}

		100% {
			-moz-transform: scale(1) rotate(360deg);
			-webkit-transform: scale(1) rotate(360deg);
			-ms-transform: scale(1) rotate(360deg);
			transform: scale(1) rotate(360deg);
		}
	}

	@-ms-keyframes spinner-rotate {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
		}

		100% {
			-moz-transform: scale(1) rotate(360deg);
			-webkit-transform: scale(1) rotate(360deg);
			-ms-transform: scale(1) rotate(360deg);
			transform: scale(1) rotate(360deg);
		}
	}

	@keyframes spinner-rotate {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
		}

		100% {
			-moz-transform: scale(1) rotate(360deg);
			-webkit-transform: scale(1) rotate(360deg);
			-ms-transform: scale(1) rotate(360deg);
			transform: scale(1) rotate(360deg);
		}
	}

/* Loader */

	@-moz-keyframes spinner-show {
		0% {
			opacity: 0;
		}

		100% {
			opacity: 1;
		}
	}

	@-webkit-keyframes spinner-show {
		0% {
			opacity: 0;
		}

		100% {
			opacity: 1;
		}
	}

	@-ms-keyframes spinner-show {
		0% {
			opacity: 0;
		}

		100% {
			opacity: 1;
		}
	}

	@keyframes spinner-show {
		0% {
			opacity: 0;
		}

		100% {
			opacity: 1;
		}
	}

	@-moz-keyframes spinner-hide {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		99% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		100% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: -1;
		}
	}

	@-webkit-keyframes spinner-hide {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		99% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		100% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: -1;
		}
	}

	@-ms-keyframes spinner-hide {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		99% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		100% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: -1;
		}
	}

	@keyframes spinner-hide {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		99% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		100% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: -1;
		}
	}

	@-moz-keyframes overlay-hide {
		0% {
			opacity: 1;
			z-index: 100000;
		}

		15% {
			opacity: 1;
			z-index: 100000;
		}

		99% {
			opacity: 0;
			z-index: 100000;
		}

		100% {
			opacity: 0;
			z-index: -1;
		}
	}

	@-webkit-keyframes overlay-hide {
		0% {
			opacity: 1;
			z-index: 100000;
		}

		15% {
			opacity: 1;
			z-index: 100000;
		}

		99% {
			opacity: 0;
			z-index: 100000;
		}

		100% {
			opacity: 0;
			z-index: -1;
		}
	}

	@-ms-keyframes overlay-hide {
		0% {
			opacity: 1;
			z-index: 100000;
		}

		15% {
			opacity: 1;
			z-index: 100000;
		}

		99% {
			opacity: 0;
			z-index: 100000;
		}

		100% {
			opacity: 0;
			z-index: -1;
		}
	}

	@keyframes overlay-hide {
		0% {
			opacity: 1;
			z-index: 100000;
		}

		15% {
			opacity: 1;
			z-index: 100000;
		}

		99% {
			opacity: 0;
			z-index: 100000;
		}

		100% {
			opacity: 0;
			z-index: -1;
		}
	}

	body {
		text-decoration: none;
	}

/*		body:before {
			-moz-animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-hide 0.25s ease-in-out forwards !important;
			-webkit-animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-hide 0.25s ease-in-out forwards !important;
			-ms-animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-hide 0.25s ease-in-out forwards !important;
			animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-hide 0.25s ease-in-out forwards !important;
			-moz-transform-origin: 50% 50%;
			-webkit-transform-origin: 50% 50%;
			-ms-transform-origin: 50% 50%;
			transform-origin: 50% 50%;
			-moz-osx-font-smoothing: grayscale;
			-webkit-font-smoothing: antialiased;
			font-style: normal;
			font-weight: normal;
			text-transform: none !important;
			color: #e5e6e7;
			content: '\f1ce';
			cursor: default;
			display: block;
			font-size: 2em;
			height: 2em;
			left: 50%;
			line-height: 2em;
			margin: -1em 0 0 -1em;
			opacity: 0;
			position: fixed;
			text-align: center;
			top: 50%;
			width: 2em;
			z-index: -1;
		}

		body:after {
			-moz-animation: overlay-hide 1.5s ease-in forwards !important;
			-webkit-animation: overlay-hide 1.5s ease-in forwards !important;
			-ms-animation: overlay-hide 1.5s ease-in forwards !important;
			animation: overlay-hide 1.5s ease-in forwards !important;
			background: #ffffff;
			content: '';
			display: block;
			height: 100%;
			left: 0;
			opacity: 0;
			position: fixed;
			top: 0;
			width: 100%;
			z-index: -1;
		}

		body.is-loading:before {
			-moz-animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-rotate 0.75s infinite linear !important;
			-webkit-animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-rotate 0.75s infinite linear !important;
			-ms-animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-rotate 0.75s infinite linear !important;
			animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-rotate 0.75s infinite linear !important;
			z-index: 100001;
		}

		body.is-loading:after {
			-moz-animation: none !important;
			-webkit-animation: none !important;
			-ms-animation: none !important;
			animation: none !important;
			opacity: 1;
			z-index: 100000;
		}*/

	@media (-webkit-min-device-pixel-ratio: 2) {

		body:before {
			line-height: 2.025em;
		}

	}



/*2018.3.2追加*/

@media print, screen and (min-width: 1024px){
	.link{
		padding-left: 150px;
		font-size: 1.25em;
		font-weight:bold;
	}
}

@media only screen and (max-width: 1023px){
	.link{
		padding-left: 15%;
		font-size: .825em;
		font-weight:bold;
	}
}


/*▼2019.08*/
@media print, screen and (min-width: 1024px){
	ul.index_nav li {
		width: 180px;
		margin-left: 20px;
	}
	ul.index_nav:first-of-type {
		margin-left: 0px;
	}
	ul.index_nav a li:hover {
		transform: scale(1.3);
		transition-duration: 0.3s;
		opacity:1;
	}
}
@media only screen and (max-width: 1023px){
	ul.index_nav li {
	}
	ul.index_nav:first-of-type {
	}
	ul.index_nav a li:hover {

	}
}




#bucktop {
	background: #F44;
	height:50px;
	text-align: center;
	padding: 10px;
	color: #FFF;
	font-size: 1.2rem;
}


#bucktop a{
	color: #FFF;

}
#bucktop a:hover{
	color: #FF0;

}
#bucktop a:active{

}