@charset "utf-8";
@import "reset.css";

/**** style.css ****/

/*** 初期設定 ***/
*{
	box-sizing:border-box;
}
body{
	line-height:1.8em;
	color:#522a1c;
	font-size:0.9em;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
li{
	list-style-type:none;
	display:inline;
}
input, select{
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
a{
	color:#522a1c;
	transition:color ease 0.2s;
}
a:hover{
	color:#92587D;
	text-decoration:none;
}
small{
	font-size:0.93m;
}
.inner{
	clear:both;
	overflow:hidden;
	margin:0 10px;
}
.inner ul{
	margin-left:2%;
}
.inner li{
	display:block;
}
.pc, .tab{
	display:none;
}
.sp{
	display:block;
}
img{
	max-width:100%;
	height:auto;
	display:block;
}

#gray{
	width:100%;
	height:100%;
	position:fixed;
	top:0;
	left:0;
	background-color:rgba(0,0,0,0.4);
	z-index:180;
}
.leader{
	float:right;
}
.headingThird {
	position: relative;
	padding: 0.6em;
	background: #f5f79f;
	margin:20px 0px;
}
.headingThird:after {
	position: absolute;
	content: '';
	top: 100%;
	left: 30px;
	border: 15px solid transparent;
	border-top: 15px solid #f5f79f;
	width: 0;
	height: 0;
}
.imgWap{
	display:block;
}
.imgWap img{
	margin:25px 20px 0px;
	width:100%;
	height:auto;
}
article{
	margin-bottom:20px;
}
article h3{
	color:#555;
}

article h3 {
	position: relative;
	padding-left: 1.8em;/*アイコン分のスペース*/
	font-size:1.3em;
	margin-bottom:10px;
}

article h3:before{ 
	font-family: "FontAwesome";
	content: "\f00c";/*アイコンのユニコード*/
	position: absolute;/*絶対位置*/
	font-size: 1.5em;/*サイズ*/
	left: 0;/*アイコンの位置*/
	top: 0;/*アイコンの位置*/
	color: #e4e37d; /*アイコン色*/
}
#memberWap{
	display:flex;
	justify-content:space-around;
	flex-wrap: wrap;
	margin:10px 0px;
}
.memberWap > img{
	width:100%;
}
.member{
	padding:5px;
	border:1px solid #999;
}
#memberWap figcaption{
	text-align:center;
}
.day{
	font-size:0.7em;
	margin-left:10px;
}
#scroll {
  scroll-behavior: smooth;
}

#visual{
	display:none;
}

/*** header ***/
#header{
	width:100%;
	padding:15px 0 0;
	background:url(../img/bar.png) top center repeat-x;
}
.logo{
	position:absolute;
	top:15px;
	left:38%;
	width:13.6%;
	padding:15px;
	border-radius:50%;
	background-color:#FFF;
	box-sizing:content-box;
	z-index:100;
}
.logo a{
	display:block;
}
.logo img{
	width:150%;
	height:auto;
}
#menu{
	float:right;
	width:40px;
	margin:10px 0;
}

/** navi **/
.navi{
	display:none;
	position:fixed;
	top:100px;
	left:5%;
	width:90%;
	z-index:200;
}
.navi li{
	clear:both;
	display:block;
	height:45px;
	margin-bottom:5px;
}
.navi a{
	clear:both;
	display:block;
	width:100%;
	height:45px;
	line-height:45px;
	text-align:center;
	text-decoration:none;
	background-color:#eccfc5;
	transition:all ease 0.3s;
}
.navi a:hover{
	color:#fff;
	background-color:#eccfc5;
}
#nClose{
	width:40px;
	float:right;
	margin-bottom:10px;
}


/*** mainvisual ***/
#mainvisual{
	clear:both;
	position:relative;
	width:100%;
	margin-bottom:35px;
}
#slide{
	overflow:hidden;
	width:100%;
	position:relative;
	z-index:1;
}
#slide ul{
	position:relative;
	width:100%;
}
#slide li{
	position:absolute;
	width:100%;
	top:0;
	opacity:0;
	animation:slide 18s linear infinite forwards;
}
#slide li:nth-child(2){
	animation-delay:6s;
}
#slide li:nth-child(3){
	animation-delay:12s;
}
#slide img{
	display:block;
	width:100%;
	height:auto;
}
#spBanner a{
	display:block;
}
#spBanner img{
	width:100%;
	height:auto;
}

/*** topimg ***/
#topimg{
	overflow:hidden;
	clear:both;
	width:100%;
}
#topimg img{
	width:100%;
	height:auto;
}


/*** main ***/
#main h2{
	margin-bottom:25px;
	text-align:center;
	font-size:160%;
}
.content{
	margin-bottom:60px;
	padding:45px;
}
.content:nth-child(even){
	background:#ede7e5;
}

/** topicpath **/
#topicpath{
	margin-bottom:35px;
	font-size:0.9em;
}
#topicpath span{
	margin:0 8px;
}


/** about **/
#about p{
	margin-bottom:10px;
}
#about img{
	width:100%;
	height:auto;
	padding:5px;
	border:1px solid #d0c2bc;
}

/** first **/
#first{
	padding:40px 20px;
	background-color:#ede7e5;
}
#first img{
	padding:5px;
	border:1px solid #d0c2bc;
	background-color:#ffffff;
	margin:0 auto 10px;
}

.fCont{
	margin-bottom:20px;
}
.fCont img{
	width:90%;
	height:auto;
	border-radius:50%;
	margin-bottom:10px;
}

/** level **/
#level{
	margin-bottom:20px;
}
.course{
	overflow:hidden;
	clear:both;
	margin-bottom:30px;
	text-align:center;
}
.course img{
	margin:0 auto 10px;
}
.desc{
	margin-left:10px;
	text-align:left;
}
.desc h3{
	margin-bottom:5px;
	padding-left:20px;
	background:url(../img/cHead.png) no-repeat left center;
}
.desc p{
	margin:0 20px;
}


/*** pagetop ***/
#pagetop a{
	clear:both;
	display:block;
	width:100%;
	height:40px;
	line-height:40px;
	margin-bottom:20px;
	color:#522a1c;
	text-align:center;
	text-decoration:none;
	background-color:#f5f79f;
	transition:background ease 0.2s;
}
#pagetop a:hover{
	background-color:#e4e37d;
}


/*** footer ***/
#footer{
	width:100%;
	padding-bottom:30px;
	background:url(../img/bar.png) bottom center repeat-x;
}
#fSide p{
	clear:both;
	margin:10px 0;
}
#fLogo {
	display:flex;
}
#fLogo img {
	flex:auto;
}

/*** animation ***/
@keyframes slide{
	0%{ opacity:0; }
	8%{ opacity:1; }
	30%{ opacity:1; }
	40%{ opacity:0; }
	100%{ opacity:0; }
	
}




@media only screen and ( min-width:600px ){
	/* 	pc */
	.sp, .tab{
		display:none;
	}
	.pc{
		display:block;
	}
	.inner{
		clear:both;
		overflow:hidden;
		width:90%;
		margin:0 auto;
	}
	.imgWap{
		display:flex;
		align-items: flex-start;
		justify-content: space-between;
	}
	.imgWap img{
		margin:25px 0px;
		width:24.5%;
		height:auto;
	}
	#visual{
		display:block;
		visibility:hidden;
	}
	
	/*** header ***/
	#header{
		width:100%;
		padding:15px 0 0;
		background:url(../img/bar.png) top center repeat-x;
	}
	#header .inner{
		overflow:visible;
		position:relative;
		padding:15px 0 0;
	}
	.logo{
		position:absolute;
		top:0;
		left:0;
		width:13.6%;
		padding:15px;
		border-radius:50%;
		background-color:#FFF;
		box-sizing:content-box;
		z-index:100;
	}
	.logo a{
		display:block;
	}
	.logo img{
		width:100%;
		height:auto;
	}
	#scrollHeader .navi{
		position:static;
		clear:none;
		float:right;
		width:78%;
		margin:10px 5% 0 0;
		font-size:0.9em;
	}
	
	/*** scrollHeader ***/
	#scrollHeader{
		position:fixed;
		top:-200px;
		left:0;
		width:100%;
		padding:10px 0 0;
		background:url(../img/bar.png) top center repeat-x;
		background-color:#FFF;
		background-size:26px auto;
		box-shadow:0 0 3px 2px #dedede;
		z-index:150;
		scroll-behavior: smooth;
	}
	#scrollHeader .logo{
		float:left;
		position:static;
		width:5%;
		padding:0px;
		margin:10px 0 10px 5%;
	}
	#scrollHeader .navi{
		clear:none;
		float:right;
		width:78%;
		margin:10px 5% 0 0;
		font-size:0.9em;
	}

	
	/** navi **/
	.navi{
		position:static;
		display:block;
		float:right;
		clear:both;
		width:83%;
		margin-top:10px;
	}
	.navi li{
		clear:none;
		display:inline;
		height:auto;
		margin:0;
		line-height:1.3;
	}
	.navi a{
		clear:none;
		display:block;
		float:left;
		width:19%;
		height:auto;
		line-height:1.8;
		padding:10px 0;
		text-align:center;
		text-decoration:none;
		border-radius:5px;
		background:url(../img/nBar.png) no-repeat left center;
		transition:background ease 0.4s;
	}
	.navi li:nth-child(3) a{
		width:24%;
	}
	.navi li:first-child a{
		background-image:none;
	}
	.navi .eng{
		font-size:0.8em;
	}
	.navi a:hover{
		color:#522a1c;
		background-color:#eccfc5;
	}
	
	
	/** campaign **/
	#campaign{
		position:absolute;
		right:15%;
		z-index:50;
		color:#FFF;
		text-align:center;
	}
	#campaign h2{
		line-height:2;
		margin-bottom:20px;
		font-size:250%;
	}
	#campaign a{
		display:block;
		width:60%;
		height:40px;
		line-height:36px;
		margin:0 auto;
		color:#FFF;
		text-decoration:none;
		font-weight:bold;
		border:2px solid #FFF;
		border-radius:5px;
		transition:all ease 0.4s;
	}
	#campaign a:hover{
		color:#522a1c;
		background-color:#FFF;
	}

	
	/*** course ***/
	.course{
		text-align:left;
	}
	.course img{
		float:left;
	}
	.desc{
		float:right;
		width:70%;
		margin:0;
	}
	.desc h3{
		margin-bottom:5px;
		padding-left:20px;
		background:url(../img/cHead.png) no-repeat left center;
	}
	.desc p{
		margin:0 0 0 20px;
	}
	

	/** about **/
	#about p{
		float:left;
		width:60%;
	}
	#about img{
		width:auto;
		margin-left:5%;
		padding:5px;
		border:1px solid #d0c2bc;
	}
	
	/** first **/
	#first{
		padding:45px;
		background-color:#ede7e5;
	}
	#first img{
		float:left;
		width:auto;
		margin-right:5%;
		padding:5px;
		border:1px solid #d0c2bc;
		background-color:#ffffff;
	}
	.fCont{
		width:30.65%;
		margin:0 0 0 4%;
	}
	.fCont:first-child{
		margin-left:0;
	}
	.fCont img{
		width:100%;
		height:auto;
		border-radius:50%;
		margin-bottom:10px;
	}
	/** level **/
	#level{
		margin-bottom:20px;
	}
	.course{
		overflow:hidden;
		clear:both;
		margin-bottom:30px;
	}
	.course img{
		float:left;
	}
	.desc{
		float:right;
		width:70%;
	}
	.desc h3{
		margin-bottom:5px;
		padding-left:20px;
		background:url(../img/cHead.png) no-repeat left center;
	}
	.desc p{
		margin-left:20px;
	}

	
	/*** footer ***/
	#fSide{
		float:left;
		width:70%;
	}
	#fSide p{
		clear:both;
	}
	#fLogo{
		float:right;
		text-align:right;
	}
}
