@charset "utf-8";


/*#######################################################*/
/*##                                                   ##*/
/*##  トップ                                           ##*/
/*##                                                   ##*/
/*#######################################################*/

/*---------------------------------------------------------
contents
---------------------------------------------------------*/
#contents {
	padding-bottom: 0px;
}
	@media screen and (max-width: 959px) {
		#contents {
			padding-bottom: 0px;
		}
	}


/*---------------------------------------------------------
メインスライダー
---------------------------------------------------------*/
.wideslider {
    width: 100%;
	height: 100vh;
    text-align: left;
    position: relative;
    overflow: hidden;
}
 
.wideslider ul,
.wideslider ul li {
    float: left;
    display: inline;
    overflow: hidden;
	/*padding: 0px;
	margin: 0px;*/
}
 
.wideslider ul li img {
    width: 100%;
    display: none;
}
 
.wideslider_base {
    top: 0;
    position: absolute;
}
.wideslider_wrap {
    top: 0;
    position: absolute;
    overflow: hidden;
 
}
.wideslider .slider_prev,
.wideslider .slider_next {
    top: 0;
    overflow: hidden;
    position: absolute;
    z-index: 100;
    cursor: pointer;
}
.wideslider .slider_prev {background: #fff url(../img/prev.jpg) no-repeat right center;}
.wideslider .slider_next {background: #fff url(../img/next.jpg) no-repeat left center;}

#mainImg{
	position: relative;
}

#mainImg #mainTxt{
	position: absolute;
	display: inline-block;
	left: calc((100% - 1200px) / 2 + 3%);
	bottom: 7%;
	color: #FFFFFF;
	font-size: 268.75%;
	line-height: 1.20em;
	letter-spacing: -3px;
	background-color: #4EBEB9;
	padding: 1.8% 0px 1.65% 2.5%;
    z-index: 200;
}
	#mainImg #mainTxt span{
		font-size: 85%;
	}
	
	@media screen and (max-width: 1200px) {
		#mainImg #mainTxt{
			left: 2%;
			font-size: 218.75%;
		}
	}
	
	@media screen and (max-width: 959px) {
		#mainImg #mainTxt{
			font-size: 3.0rem;
		}
	}
	
	@media screen and (max-width: 640px) {
		#mainImg #mainTxt{
			position: static;
			display: block;
			width: 100%;
			font-size: 2.0rem;
			letter-spacing: 0px;
			text-align: center;
			box-sizing: border-box;
		}
	}


/*---------------------------------------------------------
NPO法人FSAについて
---------------------------------------------------------*/
#fsaBox{
	height: 260px;
	background-color: #DDDDDD;
	overflow: hidden;
}

/*左*/
#fsaBox .fsaLeft{
	/*display: table;*/
	float: left;
	width: 50%;
	background-color: #FFFFFF;
	/*padding-left: calc((100% - 1200px) / 2);*/
	box-sizing: border-box;
}
	#fsaBox .fsaLeft .inr{
		/*display: table-cell;*/
		float: right;
		width: calc(50% - (100% - 1200px) / 2);
		max-width: 100%;
		height: 260px;
		line-height: 1.75em;
		padding: 40px 50px 40px;
		box-sizing: border-box;
	}

/*右*/
#fsaBox .fsaRight{
	/*display: table;*/
	float: right;
	width: 50%;
	/*padding-right: calc((100% - 1200px) / 2);*/
	box-sizing: border-box;
}
	#fsaBox .fsaRight .inr{
		/*display: table-cell;*/
		float: left;
		width: calc(50% - (100% - 1200px) / 2);
		max-width: 100%;
		background-image: url(../common/arw13_pc.png);
		background-position: left center;
		background-repeat: no-repeat;
		padding: 40px 0px 40px 40px;
		box-sizing: border-box;
	}

/*ボタン*/
#fsaBox .fsaRight .inr ul{
}

#fsaBox .fsaRight .inr ul li{
	display: table;
	float: left;
	width: 32.14%;
	text-align: center;
	background-position: center 20px;
	background-repeat: no-repeat;
	background-color: #FFFFFF;
	margin-right: 1.79%;
}
	#fsaBox .fsaRight .inr ul li:nth-child(3n){
		margin-right: 0;
	}
	
	#fsaBox .fsaRight .inr ul li#fsa01{/*FSAの歴史*/
		background-image: url(../common/icon_history02.png);
	}
	#fsaBox .fsaRight .inr ul li#fsa02{/*当会概要*/
		background-image: url(../common/icon_company02.png);
	}
	#fsaBox .fsaRight .inr ul li#fsa03{/*運営役員*/
		background-image: url(../common/icon_officer02.png);
	}

#fsaBox .fsaRight .inr ul li a{
	display: table-cell;
	height: 180px;
	font-size: 125%;
	text-decoration: none;
	vertical-align: middle;
	background-image: url(../common/arw12.png);
	background-position: center 120px;
	background-repeat: no-repeat;
	border: #FFFFFF solid 1px;
	box-sizing: border-box;
}
	#fsaBox .fsaRight .inr ul li a:hover{
		border: #459A9A solid 1px;
	}
	
	@media screen and (max-width: 959px) {
		#fsaBox{
			height: auto;
		}

		/*左*/
		#fsaBox .fsaLeft{
			/*display: block;*/
			float: none;
			width: 100%;
			/*padding-left: 0px;*/
		}
			#fsaBox .fsaLeft .inr{
				/*display: block;*/
				float: none;
				width: 100%;
				max-width: 100%;
				height: auto;
				padding: 20px 15px 15px;
			}
		
		/*右*/
		#fsaBox .fsaRight{
			/*display: block;*/
			float: none;
			width: 100%;
			/*padding-right: 0px;*/
		}
			#fsaBox .fsaRight .inr{
				/*display: block;*/
				float: none;
				width: 100%;
				max-width: 100%;
				background-image: url(../common/arw13_sp.png);
				background-position: center top;
				background-size: 20px auto;
				padding: 20px 5px 20px 5px;
			}
		
		/*ボタン*/
		#fsaBox .fsaRight .inr ul li{
			width: 32.14%;
			background-position: center 15px;
			background-size: 33px auto;
			margin-right: 1.79%;
		}

		#fsaBox .fsaRight .inr ul li a{
			height: 108px;
			font-size: 1.7rem;
			line-height: 1.35em;
			background-position: center 73px;
			background-size: 20px auto;
		}
	}


/*---------------------------------------------------------
FSAの活動
---------------------------------------------------------*/
#activityBox{
	height: 240px;
	background-color: #38BCB3;
	overflow: hidden;
}
	#activityBox .inner{
		line-height: 1.75em;
	}

/*写真*/
#activityBox .pic{
	float: left;
	width: 360px;
}

/*テキスト*/
#activityBox .txt{
	position: relative;
	color: #FFFFFF;
	padding: 30px 0px 0px 400px;
}

/*見出し*/
#activityBox .txt .hl04{
}
	#activityBox .txt .hl04::after{
		background-color: #FFFFFF;
	}

/*詳細ボタン*/
#activityBox .activityBtn{
	position: absolute;
	bottom: 0;
	right: 0;
	width: 180px;
}

#activityBox .activityBtn p a {
	display: block;
	color: #FFFFFF;
	font-size: 93.8%;
	text-decoration: none;
	text-align: center;
	background-image: url(../common/arw14.png);
	background-position: 90% center;
	background-repeat: no-repeat;
	background-size: 8px auto;
	background-color: #1E8A87;
	padding: 10px 23px 8px 10px;
}
	#activityBox .activityBtn p a:hover{
		text-decoration: underline;
	}

	@media screen and (max-width: 959px) {
		#activityBox{
			height: auto;
		}
			#activityBox .inner{
				padding-top: 15px;
			}

		/*写真*/
		#activityBox .pic{
			float: none;
			width: 100%;
		}

		/*テキスト*/
		#activityBox .txt{
			padding: 20px 0px 30px 0px;
		}
		
		/*詳細ボタン*/
		#activityBox .activityBtn{
			position: static;
			width: 40%;
			margin: 20px auto 0px;
		}

		#activityBox .activityBtn p a {
			font-size: 1.4rem;
			padding: 13px 23px 11px 10px;
		}
	}

	@media screen and (max-width: 640px) {
		/*詳細ボタン*/
		#activityBox .activityBtn{
			width: 80%;
		}

		#activityBox .activityBtn p a {
			padding: 10px 23px 8px 10px;
		}
	}


/*--------------------------------------------------------
	勉強会告知
----------------------------------------------------------*/
#topActivity{
	background-image: url(../img/bg_topactivity.jpg);
	background-position: right top;
	background-repeat: no-repeat;
	background-size: cover;
}

#topActivity .inner{
	padding: 65px 0px 50px;
}

#topActivity .activityList li{
	float: left;
	width: 48.5%;
	background-color: #FFFFFF;
	margin-right: 3%;
	margin-bottom: 40px;
}
	#topActivity .activityList li:last-child{
		margin-bottom: 40px;
	}
	#topActivity .activityList li:nth-child(2n){
		margin-right: 0;
	}

#topActivity .activityList li a{
	height: 246px;
	overflow: hidden;
}

/*タイトル*/
#topActivity .activityList li p.tit{
	font-size: 112.5%;
	margin-bottom: 15px;
}

/*ボタン*/
#topActivity .actlistBtn{
	clear: both;
	padding-top: 10px;
}

#topActivity .actlistBtn p{
	width: 302px;
	margin: 0px auto 0px;
}

#topActivity .actlistBtn p a {
	display: block;
	color: #FFFFFF;
	font-size: 112.5%;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	background-image: url(../common/arw08.png);
	background-position: 95% center;
	background-repeat: no-repeat;
	background-size: 21px auto;
	background-color: #23A5A2;
	padding: 19px 40px 17px 15px;
}
	@media screen and (max-width: 959px) {
		#topActivity{
			background-image: url(../img/bg_topactivity_sp.jpg);
			background-position: right bottom;
			background-size: 100% auto;
		}

		#topActivity .inner{
			padding: 40px 15px 14%;
		}

		#topActivity .activityList li{
			float: none;
			width: 100%;
			margin-right: 0;
			margin-bottom: 10px;
		}
		
		#topActivity .activityList li a{
			height: auto;
			overflow: inherit;
		}

		/*タイトル*/
		/*#topActivity .activityList li p.tit{
			font-size: 1.4rem;
			margin-bottom: 10px;
		}*/
		
		/*ボタン*/
		#topActivity .actlistBtn{
			padding-top: 0px;
		}
		
		#topActivity .actlistBtn p{
			width: 80%;
			margin: 0px auto 0px;
		}

		#topActivity .actlistBtn p a {
			font-size: 1.5rem;
			background-size: 14px auto;
			padding: 17px 35px 15px 15px;
		}
	}
	
	
/*--------------------------------------------------------
	活動報告
----------------------------------------------------------*/
#topReport{
	background-image: url(../img/bg_topreport.jpg);
	background-position: right top;
	background-repeat: no-repeat;
	background-size: cover;
}

#topReport .inner {
	max-width: 1100px;
	padding: 55px 0px 50px;
}

#topReport .reportList{
}

#topReport .reportList li{
	float: left;
	width: 23.5%;
	background-color: #FFFFFF;
	margin-right: 2%;
	margin-bottom: 20px;
}
	#topReport .reportList li:nth-child(3n){
		margin-right: 2%;
	}
	#topReport .reportList li:nth-child(4n){
		margin-right: 0;
	}

#topReport .reportList li dl{
	padding: 15px 20px 15px;
}

/*タイトル*/
#topReport .reportList li dl dt{
	font-size: 100%;
	padding-bottom: 10px;
	margin-bottom: 12px;
}

/*ボタン*/
#topReport .replistBtn{
	clear: both;
	padding-top: 25px;
}

#topReport .replistBtn p{
	width: 302px;
	margin: 0px auto 0px;
}

#topReport .replistBtn p a {
	display: block;
	color: #23A5A2;
	font-size: 112.5%;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	background-image: url(../common/arw05.png);
	background-position: 95% center;
	background-repeat: no-repeat;
	background-size: 21px auto;
	background-color: #FFFFFF;
	border: #23A5A2 solid 2px;
	padding: 19px 40px 17px 15px;
}

	@media screen and (max-width: 959px) {
		#topReport{
			background-image: url(../img/bg_topreport_sp.jpg);
			background-position: right bottom;
			background-size: 100% auto;
		}
		
		#topReport .inner {
			padding: 40px 15px 51%;
		}

		#topReport .reportList{
		}

		#topReport .reportList li{
			float: left;
			width: 48.5%;
			margin-right: 2%;
			margin-bottom: 10px;
		}
			#topReport .reportList li:nth-child(3n){
				margin-right: 2%;
			}
			#topReport .reportList li:nth-child(4n){
				margin-right: 2%;
			}
			#topReport .reportList li:nth-child(2n){
				margin-right: 0;
			}

		#topReport .reportList li dl{
			padding: 15px 20px 15px;
		}

		/*タイトル*/
		#topReport .reportList li dl dt{
			font-size: 1.4rem;
			padding-bottom: 10px;
			margin-bottom: 12px;
		}
		
		/*ボタン*/
		#topReport .replistBtn{
			padding-top: 30px;
		}
		
		#topReport .replistBtn p{
			width: 80%;
			margin: 0px auto 0px;
		}

		#topReport .replistBtn p a {
			font-size: 1.5rem;
			background-size: 14px auto;
			padding: 17px 35px 15px 15px;
		}
	}
	

/*--------------------------------------------------------
	お問い合わせ
----------------------------------------------------------*/
#footContact{
	background-color: #EEEEEE;
}

#footContact .inner{
	display: table;
}

#footContact dl{
	display: table-cell;
	vertical-align: middle;
}
	#footContact dt{
		float: left;
		font-size: 125%;
		font-weight: bold;
	}
	
	#footContact dd{
		padding: 3px 0px 0px 160px;
	}

/*ボタン*/
#footContact .fconBtn{
	display: table-cell;
}

#footContact .fconBtn p{
	/*width: 408px;*/
	background-image: url(../common/icon_contact02.png);
	background-position: 35px center;
	background-repeat: no-repeat;
	background-size: 20px auto;
}

#footContact .fconBtn p a {
	display: block;
	color: #000000;
	font-size: 100%;
	text-decoration: none;
	text-align: center;
	background-image: url(../common/arw01.png);
	background-position: 90% center;
	background-repeat: no-repeat;
	background-size: 28px auto;
	border-left: #CCCCCC solid 1px;
	border-right: #CCCCCC solid 1px;
	padding: 40px 40px 35px 20px;
}
	#footContact .fconBtn p a:hover{
		text-decoration: underline;
	}
	
	@media screen and (max-width: 959px) {
		#footContact .inner{
			display: block;
			padding: 30px 15px 30px;
		}

		#footContact dl{
			display: block;
			text-align: center;
			vertical-align: top;
			margin-bottom: 10px;
		}
			#footContact dt{
				float: none;
				font-size: 1.6rem;
			}

			#footContact dd{
				padding: 0px 0px 0px 0px;
			}

		/*ボタン*/
		#footContact .fconBtn{
			display: block;
		}

		#footContact .fconBtn p{
			width: 80%;
			margin: 0px auto 0px;
			background-position: 25px center;
		}

		#footContact .fconBtn p a {
			font-size: 1.3rem;
			background-position: 95% center;
			background-size: 14px auto;
			border: #CCCCCC solid 1px;
			padding: 17px 35px 15px 35px;
		}
	}

	@media screen and (max-width: 350px) {
		/*ボタン*/
		#footContact .fconBtn p{
			width: 100%;
		}
	}



