@charset "utf-8";

/************************************************
	reset
*************************************************/
body,div,span,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,form,input,textarea,p,th,td,table,caption,img {
	margin: 0;
	padding: 0;
}

body {
	zoom: 1;
	color: #FFF;
	font-family: "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 16px;
	line-height: 1.8;
	background-color: #FFF;
}

h1,h2,h3,h4,h5,h6,strong {
	font-weight: bold;
	font-size: 100%;
}

img {
	border: 0;
	vertical-align: top;
	-ms-interpolation-mode: bicubic;
}

li {
	list-style: none;
}

input, select {
	vertical-align: middle;
}

a:link,a:visited {
	color: #FFF;
	text-decoration: none;
}
a:hover, a:active {
	color: #FFF;
	text-decoration: underline
}

/************************************************
	Base Layout
*************************************************/
body {
	background: url(../img/bg_body.gif) repeat top center;
	text-align: center;
}

#header {
	background: url(../img/bg_header.gif) repeat-x top left;
	text-align: center;
	height: 201px;
	width: 100%;
}
	#header .sns {
		position: relative;
		width: 940px;
		margin: 0 auto;
	}
	#header .sns ul {
		position: absolute;
		top: 10px;
		right: 20px;
	}
	#header .sns li {
			float: left;
			margin-left: 10px;
		}

#menu, #mv, #contents {
	width: 940px;
	margin: 0 auto;
}
	#mv h1 {
		margin: 0 0 50px -20px;
	}
	#menu ul li {
		float: left;
		margin-right: 10px;
	}
		#menu ul li.last {
			margin-right: 0;
		}
#contents {
	margin-bottom: 50px;
}
	#contents .section {
		margin: 50px 20px;
		text-align: left;
	}
		#contents .section h2 {
			margin-bottom: 20px;
		}
		#contents .section .bx01 {
			background: url(../img/bg_bx01.gif) 0 0 repeat;
			padding: 15px;
			color: #FFF;
			font-size: 14px;
			line-height: 1.7;
		}
#totop {
	position: fixed;
	right: 20px;
	bottom: 50px;
	z-index: 1;
}
*html #totop {
	position: relative;
	margin: 0 10px 10px;
	float: right;	
}
#footer {
	background: #A5100C;
	text-align: center;
	color: #FFF;
	width: 100%;
	font-size: 20px;
	position: relative;
	overflow: hidden;
}
	#footer .footer_inner {
		width: 940px;
		margin: 0 auto;
		padding: 50px 0; 
	}
	#footer ul {
		float:left;
		left:50%;
		position:relative;
	}
	#footer ul li {
		float:left;
		left:-50%;
		position:relative;
		margin-right: 20px;
	}
			#footer ul li.ft_txt01 {
				font-size: 70%;
				padding-top: 12px;
			}
			#footer ul li.last {
				padding-right: 0;
			}
		#footer .copy {
			font-size: 60%;
			letter-spacing: 0.2em;
			position: relative;
			display: block;
			padding-top: 20px;
			clear: both;
		}
/************************************************
	shop
*************************************************/
.txt_att {
	margin-bottom: 20px;
	text-align: center;
	color: #FFFFFF;
	border: 1px dashed #E63700;
	background: #000;
	padding: 20px;
	font-size: 120%;
}
#contents .section .li_shop {
	margin: 0 0 50px 0;
}
#contents .section .li_shop li {
	float: left;
	background: url(../img/ico01.png) left center no-repeat;
	padding-left: 25px;
	width: 250px;
	margin-left: 25px;
}
	#contents .section .li_shop li a {
		color: #FFF;
	}
		#contents .section .li_shop li a span {
			font-size: 70%;
		}
.bx02 {
	background: url(../img/bg_bx01.gif) 0 0 repeat;
	padding: 15px 20px;
	color: #FFF;
	width: 250px;
	float: left;
	font-size: 13px;
	line-height: 1.4;
	margin: 0 15px 20px 0;
}
	#contents .section .bx02_last {
		margin-right: 0;
	}
#contents .section .bx02 h3 {
	font-size: 17px;
	margin-bottom: 10px;
}
	#contents .section .bx02 h3.small {
		font-size: 15px;
	}
	#contents .section .bx02 h3 span {
		font-size: 13px;
	}
.bx02 .txt_shop01 {
	padding: 10px 0; 
	background: url(../img/bg_border01.png) left bottom repeat-x;
}
.bx02 .shop_s {
	padding: 10px 0 10px 10px;
	float: right;
}
.bx02 .ctg01 {
	margin: 10px 0;
	float: left;
}
.bx02 .map {
	float: right;
	margin-top: 10px;
}
#contents .section .bx02 .shop_info, #contents .section .bx_rank01 .shop_info, #contents .section .bx_rank02 .shop_info {
	font-size: 12px;
	line-height: 1.8;
	position: relative;
}
#contents .section .bx02 .shop_info {
	clear: both;
}
	#contents .section .bx02 .shop_info dt, #contents .section .bx_rank01 .shop_info dt, #contents .section .bx_rank02 .shop_info dt {
		float: left;
		margin-right: 5px;
		width: 55px;
		text-align: center;
		border: 1px solid #E68773;
		font-size: 11px;
		height: 17px;
	}
/************************************************
	form
*************************************************/
#form {
	width: 520px;
	margin: 0 auto 50px;
	font-size: 14px;
}
	#form h2 {
		margin: 40px 0 20px;
	}
	#form .tbl_form01 {
		margin: 20px auto 50px;
		width: 500px;
		border-collapse: collapse;
		border-spacing: 0;
	}
	#form .tbl_form01 th, #form .tbl_form01 td {
		border: 1px solid #FFF;
		padding: 5px 10px;
	}
	#form .tbl_form01 td {
		text-align: left;
	}
	#form .tbl_form01 select {
		width: 130px;
	}
/************************************************
	thanks
*************************************************/
#thanks {
	width: 520px;
	margin: 0 auto 50px;
	font-size: 14px;
}
	#thanks h2 {
		margin: 10px 0;
	}
	#thanks .coupon {
		margin-bottom: 10px;
	}
	#thanks .map {
		position: relative;
		left: 215px;
		top: 30px;
	}
	#thanks .txt_att {
		margin-bottom: 0;
	}
	#thanks .shop_info {
		font-size: 13px;
		background: url(../img/bg_bx01.gif) 0 0 repeat;
		padding: 15px 20px;
	}
	#thanks .shop_info dd {
		text-align: left;
		border-bottom: 1px solid #EBBBB1;
	}
	#thanks .shop_info dt {
		width: 90px;
		display: block;
		float: left;
		text-align: center;
	}
#print {
	position:absolute;
	top: 10px;
	right: 10px
}	
/************************************************
	結果
*************************************************/
h3.ico_no1 {
	font-size: 150%;
	background: url(../img/ico_no1.gif) left top no-repeat;
	padding: 20px 0 10px 85px;
}
h3.ico_no2 {
	font-size: 150%;
	background: url(../img/ico_no2.gif) left top no-repeat;
	padding: 20px 0 10px 85px;
}
h3.ico_no3 {
	font-size: 150%;
	background: url(../img/ico_no3.gif) left top no-repeat;
	padding: 20px 0 10px 85px;
}
.bx_rank01, .bx_rank02 {
	padding: 10px 0; 
	background: url(../img/bg_border01.png) left bottom repeat-x;
}
	.bx_rank01 img, .bx_rank02 img {
		float: left;
		margin: 0 10px 10px 0; 
	}
	.bx_rank02 img.fl_r {
		float: right;
		margin: 0;
	}
		.bx_rank01 .map img {
			position: absolute;
			top: 23px;
			right: 0;
		}
		.bx_rank02 .map img {
			float: right;
			margin-left: 10px;
		}
	.bx_rank02 p {
		font-size: 90%;
	}
.bx_rank02 {
	float:left;
	width:430px;
}
.bx_rank02 .ico_no {
	margin-bottom: 10px;
}
	.bx_rank02 .ico_no span {
		background: url(../img/bg_no.gif) left top no-repeat;
		padding: 10px 20px 10px 14px;
		color: #D83815;
		font-size: 120%;
		font-family: Arial;
	}
		.bx_rank02 .ico_no span.rank {
			padding: 10px 20px 10px 8px;
		}
/************************************************
	汎用クラス
*************************************************/
.clearfix:after, #menu:after, #contents .section:after, 
#contents:after, #footer .footer_inner:after, .li_shop:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.clearfix {
	display: inline-block;
}

/* Hides from IE-mac \*/
.clearfix {
  min-height: 1px;
}
* html .clearfix {
  height: 1px;
}
/* End hide from IE-mac */

.clear {
  clear: both;
}

.fl_l {float: left;}
.fl_r {float: right;}
.center {text-align: center;}
.ml30 {margin-left: 30px;}
.mt30 {margin-top: 30px;}
.mb10 {margin-bottom: 10px;}
.mb30 {margin-bottom: 30px;}