@charset "utf-8";

@media screen and (max-width: 640px) {
	#fkotei{
	display:block;
	width:100%;
	position:fixed;
	z-index:9999;
	bottom:0;
	text-align:center;
	background-color: rgba(0,0,0,0.5);
}
	*{word-break: break-all;}
/*--header-------------------------------------------------------*/
#header{
	width:100%;
	height:auto;
	text-align: left;
	padding: 0;
	margin:0 auto;
	border-bottom:solid 4px #0076B2;
}
#header .inner{
	width: 95%;
	max-width:1024px;
	height:auto;
	text-align: left;
	padding: 15px 0;
	margin:0 auto;
}
#header .desc{
	display: none;
	float:left;
	width: 45%;
	padding:15px 0 3px;
	font-weight:normal;
	color:#636367;
	font-size:0.9em;
}
#header #logo{
	width: 60%;
	float:left;
	padding-top:5px;
}
#menu{
	display:block;
	float:right;
	width:25%;
	text-align:right;
	padding:5px 0 !important;
	margin:0 5px 0 0;
}
#menu img{ max-width:100%; height:auto; max-height:40px; }
	#gnav{ display: none;}


.hbtn{
	position: fixed;
	bottom:0;
	left:0;
	float:none;
	width: 100%;
}
.hbtn a{
	display: block;
	text-align: center;
	background-image: -webkit-linear-gradient(90deg,rgba(0,201,180,1.00) 0%,rgba(1,231,179,1.00) 45.08%,rgba(0,201,180,1.00) 100%);
	background-image: -moz-linear-gradient(90deg,rgba(0,201,180,1.00) 0%,rgba(1,231,179,1.00) 45.08%,rgba(0,201,180,1.00) 100%);
	background-image: -o-linear-gradient(90deg,rgba(0,201,180,1.00) 0%,rgba(1,231,179,1.00) 45.08%,rgba(0,201,180,1.00) 100%);
	background-image: linear-gradient(0deg,rgba(0,201,180,1.00) 0%,rgba(1,231,179,1.00) 45.08%,rgba(0,201,180,1.00) 100%);
	border-radius: 5px;
	box-shadow: 0 4px 0 #00776B;
	padding:10px 15px;
	color:#fff;
	text-decoration: none;
	font-size:1.4em;
	text-shadow: 0 0 1px #00776B;
	font-weight: bold;
}
.hbtn a span{ background: url(img/arrow1.png) no-repeat right center; padding-right:15px;}

#visual{
	background:url(img/main_bg.jpg) no-repeat center top;
	text-align:center;	
	margin:0;
	width:100%;
	height:auto;
}
	#gnav{
		width:100%;
		text-align:left;
	}
	#gnav li a{
		display:block;
		padding:10px;
		font-size:1.2em;
		border-bottom:solid 1px #ddd;
	}
/*--header end-------------------------------------------------------*/



/*--content-------------------------------------------------------*/
#content{
	width:100%;
	height:auto;
	margin: 0 auto;
	padding:30px 0 0;
	clear: both;
	font-size:1.1em;
}

/*--main content end-------------------------------------------------------*/

/*--content end-------------------------------------------------------*/


/*--footer-------------------------------------------------------*/
#pageup{
	background: #4D5964;
}
#pageup a{ display: block; text-align: center; padding:15px 0 5px;}
#pageup a:hover{ background: #999;}
#footer{
	background: #3E4952;
	clear: both;
	width:auto;
	color:#fff;
	font-size: 1em;
	text-align:center;
	line-height: 1.4em;
	padding: 30px 0 30px;
}
#footer .flogo{ float:none; width: 50%; margin:0 auto 10px;}
#footer .ftxt{
	float:none;
	width: 100%;
	text-align: left;
	color:#fff;
}

/*--footer end-------------------------------------------------------*/

/* TOP */

.top1{
	width: 100%;
	background:url(img/bg1.jpg) no-repeat center bottom;
	background-size: 100% auto;
	padding:40px 0;
	font-size:1.1em;
}
.wrap{
	width: 95%;
	max-width: 1024px;
	margin:0 auto;
	text-align: left;
}
.ttl1{
	text-align: center;
	font-size:1.6em;
	font-weight: normal;
	line-height: 1.5em;
	margin-bottom:20px;
}
.top1 h3{
	font-size:1.4em;
	line-height: 1.5em;
	font-weight: normal;
	margin-bottom:15px;
}
.top1 .imgR{
	float:none;
	margin-right: 0;
	padding:0 0 30px;
}
.top1 .imgL{
	float:none;
	margin-left: 0;
	padding:0 0 30px;
}
/* 詳細 */


.postlist{
	background: #EBECF1;
	padding:40px 0;
	font-size:1.1em;
}
.postlist ul{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	margin-left:0;
}
.postlist ul li{
	background: #0076B2;
	-webkit-flex-grow:1;
	flex-grow:1;
	width: 100%;
	max-width: 100%;
	margin-bottom:25px;
	margin-left:0;
	padding:10px 15px 15px;
	color:#fff;
}
.postlist ul li h3{
	font-size:1.3em;
	font-weight: normal;
	padding-bottom:15px;
	text-align: center;
}
.postlist ul li a{ color:#fff; text-decoration: none;}
.postlist ul li p a{
	display: block;
	background: url(img/arrow2.png) no-repeat right bottom;
	padding-bottom:25px;
}
.btn1{
	width: 90%;
	margin:0 auto;
	text-align: center;
	color:#000;
}
.btn1 a{
	background: url(img/arrow3.png) no-repeat 95% center;
	border-radius: 5px;
	display:block;
	border:solid 2px #000;
	border-bottom:solid 5px #000;
	color:#000;
	text-decoration: none;
	font-weight: bold;
	padding:15px 25px;
	font-size:1.3em;
}

#ranking{
	background-image: url(img/bg2.jpg),url(img/bg3.png);
	background-repeat: no-repeat, repeat;
	background-size:contain, repeat;
	padding:30px 0;

}
#ranking h3{
	text-align: center;
	font-size:1.6em;
	color:#fff;
	font-weight: normal;
	line-height: 1.5em;
	margin-bottom:40px;
}

.ranking{
	position: relative;
	background: #fff;
	border:solid 4px #DBC284;
	padding:20px 20px;
	width: 95%;
	margin:0 auto 30px;
}
#rank2{ border:solid 4px #DADAD4 !important;}
#rank3{ border:solid 4px #CE9683 !important;}

.ranking .num{
	width: 15%;
	position: absolute;
	top:-10px;
	left:15px;
}
.ranking h4{
	position: relative;
	margin-top:-5px;
	font-size:1.6em;
	padding-left:18%;
	padding-bottom:40px;
	line-height: 1.3em;
}
.ranking .pic{
	float:none;
	width: 100%;
	padding-bottom:15px;
}
.ranking .txt{
	float:none;
	padding-bottom:15px;
	width:100%;
}
.ranking .txt h5{
	font-weight: bold;
	font-size:1.3em;
	line-height: 1em;
	background: url(img/icon1.png) no-repeat left top;
	padding:0 0 5px 15px;
	border-bottom:solid 1px #0076B2;
	margin-bottom:15px;
}
.ranking .txt ul{
	color:#666672;
}
.ranking .txt ul li{ font-size:1.1em; padding:5px 0;}
.ranking .txt ul li:before{ content:"・"; } 
.ranking table{
	width: 100%;
	clear:both;
	line-height: 1.4em;
	margin-bottom:30px;
}
.ranking table th{
	background: #CBD6E4;
	border-bottom:solid 1px #fff;
	vertical-align: middle;
	padding:15px;
	font-weight: normal;
	text-align: center;
}
.ranking table td{
	background: #EBECF1;
	border-bottom:solid 1px #fff;
	border-left:solid 1px #fff;
	vertical-align: middle;
	padding:15px;
}
.ranking .btn{
	text-align: center;
	width: 90%;
	margin:0 auto;
}
.ranking .btn a{
	display: block;
	background: #0076B2;
	border-bottom:solid 5px #005B8C;
	padding:15px 25px;
	border-radius: 5px;
	color:#fff;
	text-decoration: none;
	font-size:1.4em;
}
.ranking .btn a span{ display: block;background: url(img/arrow1.png) no-repeat right center;}
	
	
.post{
	background: #fff;
	padding:15px;
	text-align: left;
	margin-bottom:30px;
}	

}