@charset "utf-8";


/* home =============================================================
======================================================================== */


/* Loading
=========================================================================================== */

	@-webkit-keyframes opening {
		0% { opacity: 0; }
		40% { opacity: 1; }
		60% { opacity: 1; }
		100% { opacity: 0; }
	}	
	@keyframes opening {
		0% { opacity: 0; }
		40% { opacity: 1; }
		60% { opacity: 1; }
		100% { opacity: 0; }
	}
		
	@-webkit-keyframes fadeOut {
		0% { opacity: 1; z-index: 100; }
		40% { opacity: 1; z-index: 100; }
		80% { opacity: 1; z-index: 100; }
		100% { opacity: 0; z-index: -1; }
	}
	@keyframes fadeOut {
		0% { opacity: 1; z-index: 100; }
		40% { opacity: 1; z-index: 100; }
		80% { opacity: 1; z-index: 100; }
		100% { opacity: 0; z-index: -1; }
	}
	@-webkit-keyframes img-mask {
		100% { transform: -webkit-translateX(100%); }
	}
	@keyframes img-mask {
		100% { transform: translateX(100%); }
	}



	#loading {
		opacity: 0;
		z-index: 9100;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: #fff;
		zoom: 1;
		-webkit-animation: fadeOut 6.0s forwards;
		animation: fadeOut 6.0s forwards;
		}

	#loading .logo {
		display: block;
		position: absolute;
		top: 50%;
		text-align: center;
		-webkit-animation: opening 5.0s forwards;
		animation: opening 5.0s forwards;
		}
	@media print, screen and (min-width: 768px) {
		#loading .logo {
			left: 50%;
			width: 445px;
			height: 63px;
			margin: -31px 0 0 -222px;
			}
	}
	@media (max-width: 767px) {
		#loading .logo {
			width: 100%;
			height: auto;
			margin: -5% 0 0 ;
			}
		#loading .logo img {
			width: 90%;
			}
	}

	#loading .img_mask {
		overflow: hidden;
		position: relative;
		}
	
	#loading .img_mask:before {
		animation: img-mask 2s cubic-bezier(.4, 0, .2, 1) forwards;
		background: #fff;
		bottom: 0;
		content: '';
		left: 0;
		pointer-events: none;
		position: absolute;
		right: 0;
		top: 0;
		z-index: 1;
		}





/* Head slider
=========================================================================================== */

	.bxslider li {
		width: 100% !important;
		}








/* Information
=========================================================================================== */

	/* title */
	.p-titInfo {
		box-sizing: border-box;
		width: 100%;
		color: #fff;
		font-weight: bold;
		border-radius: 8px 8px 0 0 / 8px 8px 0 0;
		-webkit-border-radius: 8px 8px 0 0 / 8px 8px 0 0;
		-moz-border-radius: 8px 8px 0 0 / 8px 8px 0 0;
		}
		.p-titInfo span {
			display: block;
			font-size: 1.2rem;
			}


	@media print, screen and (min-width: 768px) {
		.p-titInfo {
			padding-left: 95px;
			padding-top: 20px;
			height: 90px;
			font-size: 2.6rem;
			border-bottom: #000 solid 5px;
			}
		.p-titInfo.p-titInfoFuji {
			background: #FF0D00 url(../img/common/icon_logo.png) no-repeat 20px 5px;
			}
		.p-titInfo.p-titInfoMiya {
			background: #4a9626 url(../img/common/icon_logo.png) no-repeat 20px 5px;
			}
	}
	@media (max-width: 767px) {
		.p-titInfo {
			padding-left: 50px;
			padding-top: 7px;
			height: 55px;
			font-size: 1.8rem;
			border-bottom: #000 solid 2px;
			}
		.p-titInfo.p-titInfoFuji {
			background: #FF0D00 url(../img/common/icon_logo.png) no-repeat 8px 3px;
			background-size: 35px auto;
			}
		.p-titInfo.p-titInfoMiya {
			background: #4a9626 url(../img/common/icon_logo.png) no-repeat 8px 3px;
			background-size: 35px auto;
			}
	}






	@media print, screen and (min-width: 768px) {
		.p-homeInfo iframe{
			width: 710px;
			height: 280px;
			}
	}
	@media (max-width: 767px)  {
		.p-homeInfo {
			position: relative;
			padding-bottom: 10%;
			height: 280px;
			}
		.p-homeInfo iframe {
			position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
			width: 100%;
			height: 100%;
			}
		}


/* Information List   iframeで使用
		
	.p-homeInfoList {
		padding: 0 5px 0 10px;
		}
		.p-homeInfoList li {
			padding: 8px 5px;
			line-height: 2;
			border-bottom: #666 dotted 2px;
			}

	.p-homeInfoList .p-redBig {
		color: #ff0c00;
		font-size: 110%;
		font-weight: bold;
		}
		.p-homeInfoList .p-redBig a {
			color: #ff0c00;
			}
	.p-homeInfoList .p-greenBig {
		color: #4a9626;
		font-size: 110%;
		font-weight: bold;
		}
		.p-homeInfoList .p-greenBig a {
			color: #4a9626;
			}

 */


/* Calendar
=========================================================================================== */


	@media print, screen and (min-width: 768px) {
		.p-homeCalendar iframe{
			width: 710px;
			height: 50px;
			}
	}
	@media (max-width: 767px)  {
		.p-homeCalendar {
			position: relative;
			height: 100px;
			}
		.p-homeCalendar iframe {
			position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
			width: 100%;
			height: 100%;
			}
		}



/* Fee
=========================================================================================== */

/*	.p-homeFee table {
		width: 100%;
		border-collapse:collapse;
		table-layout: fixed;
		}
		.p-homeFee table th,
		.p-homeFee table td {
			padding: 10px;
			vertical-align: middle;
			}
		.p-homeFee table th {
			border-top: solid 1px #999;
			border-right: solid 1px #999;
			border-bottom: solid 1px #999;
			text-align: center;
			color: #666;
			font-weight: bold;
			}
		.p-homeFee table td {
			border-top: solid 1px #999;
			border-right: solid 1px #999;
			border-bottom: solid 1px #999;
			text-align: center;
			}
		.p-homeFee table td.p-tGray {
			background-color: #f2f2f2 !important;
			padding: 10px 2px !important;
			}

*/




/* Facebook
=========================================================================================== */


	@media print, screen and (min-width: 768px) {
		.p-homeFB {
			width: 345px;
			height: 450px;
			}
	}
	@media (max-width: 767px)  {
		.p-homeFB {
			position: relative;
			padding-bottom: 10%;
			}
		.p-homeFB iframe {
			position: absolute;
			width: 100%;
			height: 100%;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
			}
		}




/* Access
=========================================================================================== */



	@media print, screen and (min-width: 768px) {
	}
	@media (max-width: 767px) {
		.p-homeGmap {
			position: relative;
			padding-bottom: 56.25%;
			padding-top: 30px;
			height: 0;
			overflow: hidden;
			margin-bottom: 2.0rem;
			}
		.p-homeGmap iframe,
		.p-homeGmap object,
		.p-homeGmap embed {
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			}

	}



/* page =============================================================
======================================================================== */

/* page common ================================================================ */







/* =====================================================================

	school
	
======================================================================== */

	/* checkpoint */
	.p-checkpoint {
		margin-bottom: 20px;
		padding: 10px 0 5px 0 ;
		text-align: center;	
		}
	.p-checkpoint li {
		display: inline-block;
		margin-bottom: 5px;
		}
	@media print, screen and (min-width: 768px) {
		.p-checkpoint {
			border: #e9ece6 solid 5px;
			}
	}
	@media (max-width: 767px) {
		.p-checkpoint {
			border: #e9ece6 solid 2px;
			}
		.p-checkpoint img {
			height: 50px;
			width: auto;
			}
	}



	/* schoolLead */
	.p-schoolLead02,
	.p-schoolLead01 {
		font-weight: bold;
		}

	@media print, screen and (min-width: 768px) {
		.p-schoolLead01 {
			font-size: 3.0rem;
			color: #fff;
			text-shadow:
			2px 2px 5px rgba(102, 102, 102, 0.8),
			-2px 2px 5px rgba(102, 102, 102, 0.8),
			2px -2px 5px rgba(102, 102, 102, 0.8),
			-2px -2px 5px rgba(102, 102, 102, 0.8),
			0px 2px 5px rgba(102, 102, 102, 0.8),
			-2px 0px 5px rgba(102, 102, 102, 0.8),
			0px -2px 5px rgba(102, 102, 102, 0.8),
			-2px 0px 5px rgba(102, 102, 102, 0.8);
			}
	
		.p-schoolLead02 {
			font-size: 4.0rem;
			color: #fff;
			text-shadow:
			3px 3px 5px rgba(204, 153, 0, 0.8),
			-3px 3px 5px rgba(204, 153, 0, 0.8),
			3px -3px 5px rgba(204, 153, 0, 0.8),
			-3px -3px 5px rgba(204, 153, 0, 0.8),
			0px 3px 5px rgba(204, 153, 0, 0.8),
			-3px 0px 5px rgba(204, 153, 0, 0.8),
			0px -3px 5px rgba(204, 153, 0, 0.8),
			-3px 0px 5px rgba(204, 153, 0, 0.8);
			}
	}
	@media (max-width: 767px) {
		.p-schoolLead01 {
			font-size: 1.6rem;
			color: #666;
			}
	
		.p-schoolLead02 {
			font-size: 2.0rem;
			color: #cc9900;
			}
	}


	/* purpose */
	.p-purpose {
		margin-top: 10px;
		}
		.p-purpose.p-purposeFuji li {
			background: url(../img/school/icon_retenRed.gif) no-repeat left top;
			margin-bottom: 10px;
			}
		.p-purpose.p-purposeMiya li {
			background: url(../img/school/icon_retenGreen.gif) no-repeat left top;
			margin-bottom: 10px;
			}
	@media print, screen and (min-width: 768px) {
		.p-purpose li {
			font-size: 2.4rem;
			padding-left: 40px;
			}
	}
	@media (max-width: 767px) {
		.p-purpose li {
			font-size: 1.8rem;
			padding-left: 25px;
			background-size: 20px auto;
			}
		.p-purpose.p-purposeFuji li,
		.p-purpose.p-purposeMiya li {
			background-size: 20px auto;
			background-position: left 5px;
			}
	}


	/* schoolladies */
	.p-schoolTxt-pink {
		font-weight: bold;
		}

	@media print, screen and (min-width: 768px) {
		.p-schoolTxt-pink {
			font-size: 2.4rem;
			color: #fff;
			margin-bottom: 30px;
			letter-spacing: -0.1px;
			text-shadow:
			2px 2px 5px rgba(255, 102, 153, 0.8),
			-2px 2px 5px rgba(255, 102, 153, 0.8),
			2px -2px 5px rgba(255, 102, 153, 0.8),
			-2px -2px 5px rgba(255, 102, 153, 0.8),
			0px 2px 5px rgba(255, 102, 153, 0.8),
			-2px 0px 5px rgba(255, 102, 153, 0.8),
			0px -2px 5px rgba(255, 102, 153, 0.8),
			-2px 0px 5px rgba(255, 102, 153, 0.8);
			}
	}
	@media (max-width: 767px) {
		.p-schoolTxt-pink {
			font-size: 1.6rem;
			color: #ff6699;
			margin-bottom: 20px;
			}
	}






/* =====================================================================

	teams
	
======================================================================== */

 	.p-matogrosso {
		letter-spacing: 0px;
		}
		.p-matogrosso span {
			display: block;
			}
		.p-matogrosso span.p-keizoku {
			color: #990000;
			font-weight: bold;
			}
	@media print, screen and (min-width: 768px) {
		.p-matogrosso img {
			float: left;
			margin-right: 5px;
			}
		.p-matogrosso span.p-keizoku {
			padding-top: 20px;
			padding-bottom: 20px;
			font-size: 2.4rem;
			}
	}
	@media (max-width: 767px) {
		.p-matogrosso img {
			float: right;
			margin-left: 5px;
			width: 25%;
			}
		.p-matogrosso span.p-keizoku {
			padding-top: 10px;
			padding-bottom: 10px;
			font-size: 1.8rem;
			}
	}






/* =====================================================================

	contact
	
======================================================================== */


/*--- Form --*/

.p-contactForm dl {
	padding: 0;
	margin: 0;
	}
.p-contactForm dt,
.p-contactForm dd {
	padding: 12px !important;
	margin: 0;
	text-align: left !important;
	font-weight: normal !important;
	font-size: 100% !important;
	border: none !important;
	}

.p-contactForm input,
.p-contactForm textarea {
	border: solid 1px #ccc;
	box-shadow: none;
	}

.p-contactForm label {
	border: none !important;
	}

/*送信ボタン*/
.mfp_buttons {
	clear: both;
	padding-top: 30px;
	text-align: center;
	}
.mfp_element_submit,
.mfp_buttons button {
	clear: both;
	padding: 10px 40px !important;
	font-weight: normal !important;
	font-size: 100% !important;
	margin-top: 20px !important;
	background: -moz-linear-gradient(top, rgba(255,255,255,1), rgba(204,204,204,0.3)) !important;
	background: -webkit-linear-gradient(top, rgba(255,255,255,1), rgba(204,204,204,0.3)) !important;
	background: linear-gradient(to bottom, rgba(255,255,255,1), rgba(204,204,204,0.3)) !important;
	color: #000 !important;
	border: solid 1px #e7e7e7 !important;
	-webkit-border-radius: 5px;
		 -moz-border-radius: 5px;
				border-radius: 5px;
			-ms-border-radius: 5px;
	}

@media screen and (max-width: 768px) {
	
	.p-contactForm dl {
		border: solid 1px #e7e7e7;
		margin-bottom: 30px;
		}
	.p-contactForm dt {
		float: inherit;
		text-align: left;
		display: block;
		font-weight: bold;
		border-bottom: solid 1px #e7e7e7;
		background-color: #e6e6e6;
		}
	
	.p-contactForm input[type="text"],
	.p-contactForm input[type="email"],
	.p-contactForm input[type="tel"] {
		padding: 2%;
		width: 90%;
		}
	.p-contactForm textarea {
		width: 90% !important;
		height: 150px !important;
		padding: 2% !important;
		}
	
	/*確認画面*/
	#mfp_phase_confirm_inner {
		margin-right: 8%;
		}
	#mfp_phase_confirm_inner th,
	#mfp_phase_confirm_inner td {
		width: 100% !important;
		display: block !important;
		padding: 4% !important;
		border: solid 1px #e7e7e7 !important;
		}
	#mfp_phase_confirm_inner th {
		background-color: #e6e6e6 !important;
		}
	#mfp_phase_confirm_inner td {
		border-top: none !important;
		margin-bottom: 20px !important;
		}
	tr.mfp_colored {
		background-color: inherit !important;
		}


}




@media print, screen and (min-width: 769px) {
	
	.p-contactForm {
		border: solid 1px #e7e7e7;
		border-bottom: none;
		}
	.p-contactForm dl {
		overflow: hidden;
		background-color: #fff;
		border-bottom: solid 1px #e7e7e7;
		}
	.p-contactForm dt {
		float: left;
		width: 140px !important;
		}
	.p-contactForm dd {
		overflow: hidden;
		background-color: #FFF;
		}
	
	.p-contactForm input[type="text"],
	.p-contactForm input[type="email"] {
		width: 70% !important;
		padding: 7px !important;
		}
	.p-contactForm input[type="tel"] {
		padding: 7px !important;
		width: 30% !important;
		}
	
	.p-contactForm textarea {
		width: 95% !important;
		height: 100px !important;
		padding: 7px !important;
		}
	
	/*確認画面*/
	#mfp_phase_confirm_inner th,
	#mfp_phase_confirm_inner td {
		padding: 12px !important;
		border: solid 1px #e7e7e7 !important;
		}
	#mfp_phase_confirm_inner th {
		background-color: #e6e6e6 !important;
		}
	#mfp_phase_confirm_inner td {
		margin-bottom: 20px !important;
		}
	tr.mfp_colored {
		background-color: inherit !important;
		}
	
	
}










