@charset "utf-8";

/* ==========================================================================
	 CSS Reset
============================================================================= */

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,
form,fieldset,input,textarea,p,blockquote,th,td
	{
	margin:0;
	padding:0;
	outline:0;
	border:0;
	vertical-align:baseline;
	font-weight:normal;
	font-style:normal;
	font-size:100%;
	-webkit-box-sizing: border-box; /* Safari, Chrome用 */
	-moz-box-sizing: border-box; /* Firefox用 */
	-ms-box-sizing: border-box; /* IE8用 */
	box-sizing: border-box; /* CSS3（Opera用） */
	}

table
	{
	border-collapse:collapse;
	border-spacing:0;
	}

fieldset,img
	{
	border:0;
	}

address,caption,cite,code,dfn,em,strong,th,var
	{
	font-style:normal;
	font-weight:normal;
	}

ol,ul
	{
	list-style:none;
	}

caption,th
	{
	text-align:left;
	}

.clearfix:after
	{
	content: "."; 
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	}

.clearfix
	{
	min-height: 1px;
	}

* html .clearfix
	{
	height: 1px;
	/**//*/
	height: auto;
	overflow: hidden;
	/**/
	}

.both
	{
	clear:both;
	}



/* ==========================================================================
	 Base / Link
============================================================================= */

body
	{
	font:0.8em/1.4em Verdana,MS UI Gothic, helvetica, arial, "MS Pゴシック", sans-serif;
	color: #111;
	-webkit-text-size-adjust:100%;
	background:url(img/wrap_bg.png) top center repeat-x #c4e2f3; /* ★ */

	}

a,a:visited
	{
	color:#0000ff;
	}

a:hover,a:active
	{
	color:#111;
	text-decoration:none;
	}

a:active,a:focus
	{
	outline:0 none;
	}

/* ==========================================================================
	 Layout
============================================================================= */

#area_bg
	{
	background:url(img/area_bg.png) top left no-repeat;
	width:1120px;
	margin:0 auto;
	}

#wrap
	{
	max-width:860px;
	margin:0 auto;
	padding:0 10px;
	background:#fff;
	overflow:hidden;
	zoom:1;
	-webkit-box-shadow: 0px 0px 10px #aaa;  
	-moz-box-shadow: 0px 0px 10px #aaa;  
	box-shadow: 0px 0px 10px #aaa;
	}

#contents
	{
	width:780px;
	margin:0 auto;
	overflow:hidden;
	zoom:1;
	}




#footer
	{
	text-align:center;
	padding:20px 10px;
	border-top:1px dotted #ccc;
	background:#343434;
	}

#footer a
	{
	color:#fff;
	}



/* ==========================================================================
	 Header
============================================================================= */

#header
	{
	background:#f3f3f3; /* ★ */
	margin:0;
	}

h1
	{
	padding:0;
	font-size:12px;
	font-weight:normal;
	color:#292929; /* ★ */
	}


/* ==========================================================================
	 Contents
============================================================================= */

.navi
	{
	margin-bottom:5px;
	}

img.rankh2
	{
	display:block;
	margin:40px auto 0;
	}


/********** contents_box **********/

.contents_box,
.contents_box_list,
.rank_box
	{
	width:760px;
	margin:20px auto 30px;
	padding:10px 0;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-moz-box-shadow: 0px 0px 10px #ccc;
	box-shadow: 0px 0px 10px #ccc;
	overflow:auto;
	}

h2
	{
	font-weight:bold;
	letter-spacing:0.5px;
	font-size:18px;
	border-bottom:1px solid #e8e8e8;
	padding:18px 10px 20px 80px;
	margin:0 0 30px 0;
	overflow:hidden;
	background:url(img/arrow1.png) 10px center no-repeat;
	}

h3
	{
	margin:20px 30px 5px 0;
	padding-left:30px;
	background:url(img/arrow2.png) 8px center no-repeat;
	}

.contents_box p,
.contents_box_list p
	{
	margin:15px 30px;
	}

.contents_box p.text
	{
	padding:0 0 0px;
	}

.contents_box a img
	{
	display:block;
	margin:0 auto;
	}


.contents_box p.img_r
	{
	float:right;
	padding:0;
	margin:5px 30px 5px 10px;
	}

.contents_box p.img_l
	{
	float:left;
	padding:0;
	margin:5px 10px 5px 30px;
	}

.contents_box p.img_r_banner
	{
	float:right;
	padding:0;
	margin:5px 10px;

	}

/********** area **********/

.contents_box_list ul
	{
	margin:15px 30px;
	line-height:1.8;
	}

.contents_box_list ul li
	{
	display:inline-block;
	}

.contents_box_list ul li:after
	{
	content:"｜";
	}

.contents_box_list ul li.area
	{
	display:block;
	font-weight:bold;
	line-height:1.2;
	margin-top:10px;
	}

.contents_box_list ul li.area:after
	{
	content:"";
	}


/********** Ranking **********/


.rank_box
	{
	clear:both;
	overflow:hidden;
	padding:20px 0;
	}

.ranking
	{
	font-size:18px;
	font-weight:bold;
	border-bottom:1px solid #e8e8e8;
	padding:0 25px;
	}

.ranking img
	{
	margin-right:10px;
	vertical-align:middle;
	padding-bottom:10px;
	}

.rank_des_1 p
	{
	margin-top:10px;
	}


.rank_des,
.rank_des_1
	{
	margin-top:20px;
	padding:0 25px;
	}


.rank_des img
	{
	float:left;
	margin-top:-20px;
	margin-right:15px;
	}

.rank_des p,
.rank_des_1 p
	{
	overflow:auto;
	zoom:1;
	}

.button
	{
	text-align:center;
	margin:20px 25px;;
	overflow:hidden;
	_zoom:1;
	}

.rank_box .button
	{
	float:right;
	width:55%;
	}

.f_button
	{
	clear:both;
	text-align:center;
	}

.f_button a:hover
	{
	position:relative;
	top:2px;
	left:2px;
	}

.bt
	{
	text-align:center;
	}

.contents_box p.f_button2
	{
	width:45%;
	float:left;
	margin:10px 10px 30px 30px;
	overflow:hidden;
	}

.contents_box p.f_button3
	{
	width:45%;
	overflow:hidden;
	margin:10px 10px 30px 0px;
	}

.contents_box p.f_button2 img,
.contents_box p.f_button3 img
	{
	max-width:100%;
	}

/********** blog **********/

.blog
	{
	margin-bottom:20px;
	}

.blog img
	{
	display:block;
	width:150px;
	}


/* ==========================================================================
	 Footer
============================================================================= */
#footer_inner
	{
	overflow:hidden;
	}

#footer_inner div
	{
	display:inline-block;
	text-align:left;
	line-height:1.4;
	margin-bottom:20px;
	vertical-align:top;
	}

#footer_inner ul li
	{
	margin-bottom:5px;
	}

#footer p
	{
	font-size:12px;
	color:#666;
	margin-bottom:10px;
	}


/********** footer_link **********/


.f_link
	{
	width:8%;
	}

.f_entry
	{
	width:40%;
	border-right:1px solid #ccc;
	border-left:1px solid #ccc;
	padding:0 15px;
	}

#footer_inner div.f_banner
	{
	text-align:center;
	width:45%;
	}

#footer_inner ul li
{}


/* ==========================================================================
	 Page
============================================================================= */

#text_box p
	{
	padding:10px 10px;
	clear:both;
	}



/********** Paging **********/

.paging
	{
	position:relative;
	overflow:hidden;
	margin-bottom:20px;
	}

.page_nav
	{
	position:relative;
	left:50%;
	float:left;
	}

.page_nav span,
.page_nav a
	{
	position:relative;
	left:-50%;
	display:block;
	float:left;
	border:1px solid #ddd;
	padding:0 6px;
	margin:0 3px;
	text-decoration:none;
	}

.page_nav a:hover
	{
	background:#e75377;
	color:#fff;
	}





/* ==========================================================================
	 MailForm
============================================================================= */

#mail
	{
	width:100%;
	margin:10px 0;
	text-align:center;
	}

#mail table
	{
	border-collapse:separate;
	border-spacing:10px;
	margin:0 auto;
	}


#mail table th
	{
	width:200px;
	font-weight:normal;
	background:#f1f1f1;
	padding:5px 5px;
	border-collapse:separate;
	border-spacing:2px;
	}

#mail span
	{
	color:#ff0000;
	margin-left:3px;
	}

#mail input
	{
	border:1px solid #aaa;
	padding:3px 5px;
	}

#mail textarea
	{ border:1px solid #aaa;}

#mail input,
#mail textarea
	{
	width:95%;
	}

#mail input.sm
	{
	width:200px;
	margin-bottom:5px;
	}


/********** データテーブル **********/

.controls
	{
text-align:center;
margin:0 0 10px;
color:#098eff;
font-weight:bold;
}

/*clearfix*/
.date_table:after
	{
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
	}

* html .date_table
	{
	zoom: 1;
	}

*:first-child+html .date_table 
	{
	zoom: 1;
	}

table.date_table
	{
	border-collapse: collapse;
	}

table.date_table th,td
	{
	margin: 0;
	padding: 10px;
	border: 1px solid #babcbf;
	}

table.date_table th
	{
	background: #e6e6e6;
	}




/* ==========================================================================
	 Media Queries -- 1120px
============================================================================= */
@media screen and (max-width: 1120px)
{

img
	{ max-width:100%; }

#area_bg
	{
	width:100%;
	-moz-background-size:100% auto;
	background-size:10% auto;
	}

#wrap
	{
	width:82%;
	box-shadow:0;
	}

#contents
	{
	width:100%;
	}

.contents_box,
.contents_box_list,
.rank_box
	{
	width:95%;
	}


}


/* ==========================================================================
	 Media Queries -- 860px
============================================================================= */
@media screen and (max-width: 860px)
{

.rank_des p
	{
	margin-top:20px;
	}

.rank_des img
	{
	float:none;
	display:block;
	margin:0 auto;
	}

.rank_box .button
	{
	float:none;
	width:95%;
	margin:20px auto;
	}

/********** データテーブル **********/


table.date_table
	{
	display: block;
	position: relative;
	width: auto;
	overflow-x: auto;
	}

table.date_table thead
	{
	display: block;
	float: left;
	}

table.date_table tbody
	{
	display: block;
	width:auto;
	position: relative;
	white-space: nowrap;
	}

table.date_table th
	{ display: block; }

table.date_table tr
	{
	display: inline-block;
	vertical-align: top;
	letter-spacing: normal;
	}

table.date_table td
	{ display: block; }

/* borderの調整 */
table.date_table th
	{
	border-bottom: 0;
	}

table.date_table td
	{
	border-left: 0;
	border-right: 0;
	border-bottom: 0;
	}

table.date_table tbody
{
letter-spacing:-0.4em;
}

table.date_table tbody tr
	{
	border-right: 1px solid #babcbf;
letter-spacing:normal;
	}

table.date_table th:last-child,
table.date_table td:last-child 
	{
	border-bottom: 1px solid #babcbf;
	}

.scroll_x
	{
	position: relative;
	width:100%;
	}

table.date_table
	{ overflow-x: auto; }

table.date_table::-webkit-scrollbar
	{
	width: 5px;
	background: #b3c2f4;
	}

table.date_table::-webkit-scrollbar:horizontal
	{
	height: 5px;
	background: #b3c2f4;
	}

table.date_table::-webkit-scrollbar-thumb
	{
	background: #098eff;
	border-radius: 2px;
	}

table.date_table::-webkit-scrollbar-thumb:horizontal
	{
	background: #098eff;
	border-radius: 2px;
	}

}


/* ==========================================================================
	 Media Queries -- 700px
============================================================================= */
@media screen and (max-width: 700px)
{

.contents_box p.f_button2,
.contents_box p.f_button3
	{
	float:none;
	margin:0;
	text-align:center;
	height:auto;
	width:100%;
	}


}


/* ==========================================================================
	 Media Queries -- 600px
============================================================================= */
@media screen and (max-width: 600px)
{

#wrap
	{
	width:100%;
	}

#contents
	{
	width:100%;
	margin:0;
	}

.contents_box_list div
	{
	overflow:auto;
	height:100px;
	}

.rank_des img
	{
	float:none;
	display:block;
	margin:0 auto;
	}

#footer_inner
	{
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-webkit-box-orient: vertical;
	-ms-flex-direction: column;
	flex-direction: column;
	text-align:center;
	}

#footer_inner div
	{
	text-align:center;
	}

.f_link,.f_entry,
#footer_inner div.f_banner
	{
	width:auto;
	}

.f_link
	{
	-webkit-order: 3;
	-moz-box-ordinal-group: 3;
	-ms-flex-order: 3;
	-webkit-box-ordinal-group: 3;
	order: 3;
	text-align:center;
	}

.f_link ul li
	{
	display:inline-block;
	text-align:center;
	margin:0 5px;
	}

.f_entry
	{
	-webkit-order: 2;
	-moz-box-ordinal-group: 2;
	-ms-flex-order: 2;
	order: 2;
	-webkit-box-ordinal-group: 2;
	border:none;
	}

.f_banner
	{
	-webkit-order: 1;
	-moz-box-ordinal-group: 1;
	-ms-flex-order: 1;
	order: 1;
	-webkit-box-ordinal-group: 1;
	}

.contents_box p.text,
.rank_des_1 p,
.rank_des p,
.contents_box p
	{
	overflow:auto;
	height:80px;
	}

.contents_box p.img_l,
.contents_box p.img_r,
.contents_box p.f_button
	{
	height:auto;
	float:none;
	text-align:center;
	}



}


/* ==========================================================================
	 Media Queries -- 500px
============================================================================= */
@media screen and (max-width: 500px)
{

#mail table td,
#mail table th
	{
	display:block;
	margin-bottom:5px;
	}

#mail table td
	{
	margin-bottom:10px;
	}

#mail table th,
#mail input.sm
	{
	width:100%;
	text-align:center;
	}


}




