
@charset "utf-8";

/**
 *
 * コンテンツ共通
 *
 */


/*--------------------------------------------------------------------------
	Utility 有用クラス
--------------------------------------------------------------------------*/

/* text
-----------------------------------------------------------------*/
/*
.font-xs{}
.font-s{}
.font-l{}
.font-xl{}
*/

sup,
sub{ font-size: 72%;}
sup{ vertical-align: super;}
sub{ vertical-align: baseline;}

.em,
em,
strong{ font-weight: bold;}

.txt-left  { text-align: left;}
.txt-center{ text-align: center;}
.txt-right { text-align: right;}



.Oswald{
	font-family: 'Oswald', sans-serif!important;
	color:#a00046;
	font-size:30px;
	letter-spacing: 0.2em;
}

@media (max-width: 800px) {

	.Oswald{
		font-family: 'Oswald', sans-serif!important;
		color:#a00046;
		font-size:30px;
		letter-spacing: 0.2em;
		text-align: left;
	}



}




/* float
-----------------------------------------------------------------*/
.left { float: left;}
.right{ float: right;}
.clear{ float: none; clear: both;}


/* display
-----------------------------------------------------------------*/
.hidden{
	visibility: hidden;
	overflow: hidden;
	height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	line-height: 0;
}
@media all and (orientation:portrait){
	.landscape{
		display: none !important;
	}
}
@media all and (orientation:landscape){
	.portrait{
		display: none !important;
	}
}

/*.pc{ display: block;}*/
.sd,
.tb,
.sp{ display: none;}

@media all and (max-width: 1024px){
	.pc{ display: none;}
	.sd,
	.tb{ display: block;}
}

@media all and (max-width: 768px){
	.tb{ display: none;}
	.sp{ display: block; }
}



/* adjuster
-----------------------------------------------------------------*/
.mt0{ margin-top: 0 !important;}
.mb0{ margin-bottom: 20px !important;}
.pt0{ padding-top: 0 !important;}
.pb0{ padding-bottom: 0 !important;}


.mbtxt_b{ padding-bottom: 22px !important;}

@media all and (max-width: 600px){

	.mbtxt_b{ margin-bottom: 0px !important;}

}


/*----------------------------------------------------------------------
	Parts .list リスト
----------------------------------------------------------------------*/

/* .list-disc 黒丸
-----------------------------------------------------------------*/
.list-disc{
	padding-left: 1.5em;
}
.list-disc li{
	list-style-type: disc;
}


/* .list-decimal ナンバー付きリスト
-----------------------------------------------------------------*/
.list-decimal{
	padding-left: 1.5em;
}
.list-decimal li{
	list-style-type: decimal;
}


/* .list-decimal ナンバー付きリスト
-----------------------------------------------------------------*/
/*
.list-arw[num]{}
.list-link[num]{}
.list-num[num]{}
.list-[unique]{}
.list-type[num]{}
*/

/* LINK
================================================== */

a[href^="tel:"] { cursor: default; }

a{
	color:#000000;	
	}
	
	a:hover{
	color:#333333;
	text-decoration:none;
	}
	
	
	a img{opacity:1;
	filter: alpha(opacity=100);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=100)";  /* ie 8 */
	-moz-opacity:1;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 1;              /* Safari 1.x */
	zoom:1;}
	
	a:hover img{
	filter: alpha(opacity=100);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=100)";  /* ie 8 */
	-moz-opacity:1;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 1;              /* Safari 1.x */
	zoom:1;}
	
	}
	

	
	
	a {
		 -webkit-transition: all .1s ease;
		-moz-transition: all .1s ease;
		-ms-transition: all .1s ease;
		-o-transition: all .1s ease;
		transition: all .1s ease;
	}
	
	*:focus {
	  outline: none!important;
	}



/* iframe
================================================== */

.youtube {
	position: relative;
	height: 0;
	padding: 0 0 56.25%;
	overflow: hidden;
	}
	
	.youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	}



/* CONTANTS LINK
================================================== */

h3 a{
	color:#a00046;
	margin:0 0 50px 0;
	padding:1px 0;
  }


  
  @media (max-width: 800px) {

	h3 a{
		color:#a00046;
		margin:0 0 0px 0;
		padding:3px 0;
		text-align:left!important;
	  }

  }




	.center-contents-box a{
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	  }

	  .center-contents-box:hover{
		opacity:0.6;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all  0.3s ease;
	  }


	
.images-contents-box:hover{
		cursor:pointer;
		-webkit-filter:contrast(120%);
		-moz-filter:contrast(120%);
		-ms-filter:contrast(120%);
		filter:contrast(120%);
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all  0.3s ease;

	  }


	  /* Zoom In #1 */
	  .images-contents-box img {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	position:relative;
	z-index:-1;
}
.images-contents-box:hover img {
	-webkit-transform: scale(1.03);
	transform: scale(1.03);
	position:relative;
	z-index:-1;
}




.banner-nav li:hover img,
.sns-nav-contents:hover img,
.sns-nav li:hover img {
	opacity: 1;
	-webkit-animation: flash 1s;
	animation: flash 1s;
  }
  @-webkit-keyframes flash {
	0% {
	  opacity: .4;
	}
	100% {
	  opacity: 1;
	}
  }
  @keyframes flash {
	0% {
	  opacity: .4;
	}
	100% {
	  opacity: 1;
	}
  }









/* ROUND
================================================== */

  .roundimg{  
    border-radius: 10px;        /* CSS3草案 */  
    -webkit-border-radius: 10px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 10px;   /* Firefox用 */  
}  

.roundimg-left-up{
	border-radius: 10px 0 0 0;	/* 左上・右上・右下・左下 */ 
}

.roundimg-right-up{
	border-radius: 0 10px 0 0;	/* 左上・右上・右下・左下 */ 
}

.roundimg-right-bottom{
	border-radius: 0 0 10px 0;	/* 左上・右上・右下・左下 */ 
}

.roundimg-left-bottom{
	border-radius: 0 0 0 10px;	/* 左上・右上・右下・左下 */ 
}


@media (max-width: 800px) {

	.roundimg-left-up{
		border-radius: 10px 10px 0 0;	/* 左上・右上・右下・左下 */ 
	}
	
	.roundimg-right-up{
		border-radius:0;	/* 左上・右上・右下・左下 */ 
	}
	
	.roundimg-right-bottom{
		border-radius:0 0 10px 10px;	/* 左上・右上・右下・左下 */ 
	}
	
	.roundimg-left-bottom{
		border-radius:0;	/* 左上・右上・右下・左下 */ 
	}




}


/* COLOR
================================================== */


.thick-bggreen{
	background-color:#90e7bb!important;
} 

.thick-bgyellow{
	background-color:#faeb7c!important;
}

.thick-bgblue{
	background-color:#84cedb!important;
}



.bggreen{
	background-color:#c2f0e4!important;
} 

.bgyellow{
	background-color:#fdfcc6!important;
}

.bgblue{
	background-color:#a1dfe9!important;
}

.bgwhite{
	background-color:#ffffff!important;
}


/* PAGES
================================================== */

  .pages-header{
	width:auto;
	height:65px;
	line-height:65px;
	background-color:#a00046;
}

.pages h3.aboutus-ttl{
	width:265px;
	height:auto;
	margin:0;
	padding:20px 0 0 0;
	float:left;
}

.pages h3.course-ttl{
	width:230px;
	height:auto;
	margin:0;
	padding:18px 0 0 0;
	float:left;
}

.pages h3.blog-ttl{
	width:110px;
	height:auto;
	margin:0;
	padding:19px 0 0 0;
}

.pages h3.contact-ttl{
	width:310px;
	height:auto;
	margin:0;
	padding:22px 0 0 0;
}

.pages h3.school-ttl{
	width:180px;
	height:auto;
	margin:0;
	padding:20px 0 0 0;
}

.pages h3.lecturer-ttl{
	width:300px;
	height:auto;
	margin:0;
	padding:18px 0 0 0;
}

.pages h3.performance-ttl{
	width:130px;
	height:auto;
	margin:0;
	padding:18px 0 0 0;
}


.pages h3.bredog-ttl{
	width:210px;
	height:auto;
	margin:0;
	padding:23px 0 0 0;
}


@media screen and (max-width: 600px) {


	.pages h3.aboutus-ttl{
		width:220px;
		height:auto;
		margin:0;
		padding:22px 0 0 0;
		float:left;
	}
	
	.pages h3.course-ttl{
		width:184px;
		height:auto;
		margin:0;
		padding:22px 0 0 0;
		float:left;
	}
	
	.pages h3.blog-ttl{
		width:88px;
		height:auto;
		margin:0;
		padding:22px 0 0 0;
	}
	
	.pages h3.contact-ttl{
		width:248px;
		height:auto;
		margin:0;
		padding:25px 0 0 0;
	}
	
	.pages h3.school-ttl{
		width:144px;
		height:auto;
		margin:0;
		padding:22px 0 0 0;
	}
	
	.pages h3.lecturer-ttl{
		width:240px;
		height:auto;
		margin:0;
		padding:22px 0 0 0;
	}
	
	.pages h3.performance-ttl{
		width:104px;
		height:auto;
		margin:0;
		padding:22px 0 0 0;
	}

}


/* PAGES NAV
================================================== */

ul.page-name-links{
	width:auto;
	height:auto;
	margin:0 40px 0 0;
	padding:0;
	float:right;
}

ul.page-name-links li{
	width:auto;
	height:auto;
	margin:0 0 0 25px;
	padding:0;
	display: inline-block;
	*display: inline
	*zoom: 1
}

ul.page-name-links li a{
	width:auto;
	height:auto;
	margin:0;
	padding:0 0 0 23px;
	color:#ffffff;
	background: url("/images/button-common-linkwhite-all.svg") center left no-repeat;
	background-size: 15px 25px;
}


ul.page-name-links li.left a{
	width:auto;
	height:auto;
	margin:0;
	padding:0 0 0 23px;
	color:#ffffff;
	background: url("/images/button-common-linkwhite-left.svg") center left no-repeat;
	background-size: 15px 25px;
}


@media screen and (max-width: 600px) {


	ul.page-name-links{
		width:auto;
		height:auto;
		margin:0px 0px 0 0;
		padding:0;
		float:none;
		font-size:12px;
		position: absolute;
		top:60px;
		letter-spacing: 0;
	}
	
	ul.page-name-links li{
		width:auto;
		height:auto;
		margin:0 10px 0 0;
		padding:0;
		display: inline-block;
		*display: inline
		*zoom: 1
	}
	
	ul.page-name-links li a{
		width:auto;
		height:auto;
		margin:0;
		padding:0 0 0 23px;
		color:#a00046;
		background: url("/images/button-common-moreresultred.svg") center left no-repeat;
		background-size: 15px 25px;
	}
	
	
	ul.page-name-links li.left a{
		width:auto;
		height:auto;
		margin:0;
		padding:0 0 0 23px;
		color:#a00046;
		background: url("/images/button-common-linkred-right.svg") center left no-repeat;
		background-size: 15px 25px;
	}

}



/* COMMON WRAPPER
================================================== */


.blog-container{
	max-width:980px;
	min-width:290px;
	height:auto;
	margin:0 auto;
	padding:0 40px 0 50px;
	text-align:center;
  overflow:hidden;
}


.container{
	max-width:980px;
		min-width:290px;
		height:auto;
		margin:0 auto;
		padding:0 40px 0 50px;
		text-align:center;
	  overflow:hidden;
	}
	


.pages-container{
	max-width:980px;
	min-width:290px;
	height:auto;
	margin:0 auto;
	padding:0 40px 0 50px;
	text-align:center;
  overflow:hidden;
}

.contact .pages-container{
	max-width:980px;
		min-width:290px;
		height:auto;
		margin:0 auto;
		padding:100px 40px 100px 50px;
		text-align:center;
	  overflow:hidden;
	}


	@media screen and (max-width: 800px) {


		.blog-container{
			max-width:980px;
			min-width:290px;
			height:auto;
			margin:0 auto;
			padding:0 35px;
			text-align:center;
		  overflow:hidden;
		}
		
		
		
		.container{
			max-width:980px;
				min-width:290px;
				height:auto;
				margin:0 auto;
				padding:0 40px;
				text-align:center;
			  overflow:hidden;
			}
			
		
		
		.pages-container{
			max-width:980px;
			min-width:290px;
			height:auto;
			margin:0 auto;
			padding:0 40px;
			text-align:center;
		  overflow:hidden;
		}
		
		.contact .pages-container{
			max-width:980px;
				min-width:290px;
				height:auto;
				margin:0 auto;
				padding:75px 40px;
				text-align:center;
			  overflow:hidden;
			}


	}




	@media screen and (max-width: 600px) {

		.blog-container{
			max-width:980px;
			min-width:290px;
			height:auto;
			margin:0 auto;
			padding:0 25px;
			text-align:center;
		  overflow:hidden;
		}
		

		
		.container{
			max-width:980px;
				min-width:290px;
				height:auto;
				margin:0 auto;
				padding:0 25px;
				text-align:center;
			  overflow:hidden;
			}
			
		
		
		.pages-container{
			max-width:980px;
			min-width:290px;
			height:auto;
			margin:0 auto;
			padding:0 25px;
			text-align:center;
		  overflow:hidden;
		}
		
		.contact .pages-container{
			max-width:980px;
				min-width:290px;
				height:auto;
				margin:0 auto;
				padding:55px 25px;
				text-align:center;
			  overflow:hidden;
			}


	}




/* FORM
================================================== */

.width50{
	width:50%!important;
}

.width20{
	width:25%!important;
}

.width30{
	width:30%!important;
}

.width60{
	width:60%!important;
}

@media (max-width: 800px) {

	.width50{
		width:95%!important;
	}
	
	.width20{
		width:95%!important;
	}
	
	.width30{
		width:95%!important;
	}
	
	.width60{
		width:95%!important;
	}

}



.cp_iptxt {
	position: relative;
	width: 100%;
	margin:0;
}
.cp_iptxt input[type='text'] {
	font: 15px/24px sans-serif;
	box-sizing: border-box;
	width: 100%;
	padding: 0.6em;
	transition: 0.3s;
	letter-spacing: 1px;
	color: #333333;
	border: 1px solid #cccccc;
	border-radius: 7px;
}
.ef input[type='text']:focus {
	outline: none;
	box-shadow: inset 1px 1px 2px 0 #c9c9c9;
}

.cp_iptxt ul {
	width:auto;
	height:auto;
	margin:0;
	padding:0;

}
.cp_iptxt .list_item {
	margin:0 0 15px 0;
	padding: 0;
}



.cp_ipcheck {
	width: 100%;
	margin:0;
	text-align: left;
}
.cp_ipcheck ul {
	margin: 5px 0 0;
	padding: 0;
	list-style: none;
	font-size:12px;
	letter-spacing: 0;

}
.cp_ipcheck .list_item {
	margin: 0 0 0.5rem 0;
	padding: 0;
}
.cp_ipcheck label {
	line-height: 135%;
	position: relative;
	margin: 0.5rem;
	cursor: pointer;
}
.cp_ipcheck .option-input05 {
	position: relative;
	margin: 0 1rem 0 0;
	cursor: pointer;
}
.cp_ipcheck .option-input05:before {
	position: absolute;
	z-index: 1;
	top: 0.125rem;
	left: 0.1875rem;
	width: 0.75rem;
	height: 0.375rem;
	content: '';
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	        transition:         transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	-webkit-transform: rotate(-45deg) scale(0, 0);
	        transform: rotate(-45deg) scale(0, 0);
	border: 2px solid #a00046;
	border-top-style: none;
	border-right-style: none;
}
.cp_ipcheck .option-input05:checked:before {
	-webkit-transform: rotate(-45deg) scale(1, 1);
	        transform: rotate(-45deg) scale(1, 1);
}
.cp_ipcheck .option-input05:after {
	position: absolute;
	top: -0.125rem;
	left: 0;
	width: 1rem;
	height: 1rem;
	content: '';
	cursor: pointer;
	border: 2px solid #f2f2f2;
	background: #ffffff;
}



.cp_ipselect {
	position: relative;
	width: 30%;
	margin:0;
}
.cp_ipselect select {
	width: 100%;
	padding-right: 1em;
	cursor: pointer;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}
.cp_ipselect select::-ms-expand {
    display: none;
}
.cp_ipselect.cp_sl01 {
	position: relative;
	padding: 0.2em;
	transition: 0.3s;
	letter-spacing: 1px;
	color: #333333;
	border: 1px solid #cccccc;
	background-color:#ffffff;
	border-radius: 7px;
}
.cp_ipselect.cp_sl01::before {
	position: absolute;
	top: 1.2em;
	right: 0.9em;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #666666;
	pointer-events: none;
}
.cp_ipselect.cp_sl01 select {
	padding: 8px 38px 8px 8px;
	color: #666666;
}




.cp_ipradio {
	width: 100%;
	margin:0;
	text-align: left;
}
.cp_ipradio ul {
	width:auto;
	height:auto;
	margin:0;
	padding:0;

}
.cp_ipradio .list_item {
	margin:0 25px 0 0;
	padding: 0;
	display: inline-block;
}


.cp_iptxtarea {
	width: auto;
	margin:0;
	padding:0;
	text-align: left;
	}


.cp_iptxtarea textarea{
	width:98%;
	height: 9em;
	text-align: left;
	line-height: 1.5em;
	transition: 0.3s;
	letter-spacing: 1px;
	color: #333333;
	border: 1px solid #cccccc;
	border-radius: 7px;
	font-size:14px;

	}