@charset "utf-8";

/* Contents
 * ****************************
 *
 * 1:heading
 * 2:paragraph
 * 3:list
 * 4:table,box
 * 5:link
 * 6:others
 *
 * ****************************
 */

/*======= 1:heading ========================================================*/
h1,h2,h3,h4 {
	font-size:100%;
	font-weight:normal;
	line-height:1.5;
}

/* [sttl01] 黒背景-白文字 ----------*/
.sttl01 {
	margin-bottom:20px;
	padding:10px;
	background:#000;
	line-height:1;
	font-family:"Raleway", sans-serif;
	font-size:35px;
	font-weight:100;
	color:#FFF; 
}
.sttl02 {
	font-size:19px;
	padding-bottom:6px;
	margin-bottom:10px;
	border-bottom:2px solid #000;
}

@media screen and (max-width:768px) {
/* [sttl01] 黒背景-白文字 ----------*/
	.sttl01 {
		margin-bottom:30px;
		padding:7px 10px;
		font-size:20px;
	}
	.sttl02 {
		font-size:15px;
	}
}

/*
======= 2:paragraph =======
*/

/*
======= 3:list =======
*/
/*---- ul ----*/
ul {
	padding:0;
	list-style:none;
}

/*---- ol ----*/
ol { margin-left:1.8em; }

/*
======= 4:table,box =======
*/
/* [ttlBox] ----------*/
.ttlBox { position:relative; }

/* 動画埋め込み用 ----------*/
.iframeBoxBase {
	max-width:640px;
	margin:0 auto;
}
.iframeBox {
	position:relative;
	width:100%;
	padding-top:56.25%;
}
.iframeBox iframe {
	position:absolute;
	top:0;
	right:0;
	width:100% !important;
	height:100% !important;
	border:0;
}

/* other --------------------- */
.left { float:left; } 
.right { float:right; }

/*
======= 5:link =======
*/
a {
	color:inherit;
	text-decoration:none;
	transition:all 0.3s;
}

/* [localNavi] ローカルナビ ----------*/
.localNavi {
	margin-bottom:50px;
}
.localNavi li {
	display:table;
	float:left;
	width:316px;
	margin:0 11px 11px 0;
}
.localNavi li:nth-child(3n) {
	margin-right:0;
}
.localNavi a {
	display:table-cell;
	width:100%;
	height:70px;
	border:2px solid #000;
	text-align:center;
	vertical-align:middle;
	font-size:13px;
}
.localNavi a:hover,
.localNavi li.selected a {
	background:#000;
	color:#FFF;
}
@media screen and (min-width:769px) {
	.localNavi ul {
		display:block !important;
	}
}
@media screen and (max-width:768px) {
	.spSelectedItem0,
	.spSelectedItem1,
	.spSelectedItem2,
	.spSelectedItem3,
	.spSelectedItem4 {
		position:relative;
		padding:0.5em 3em 0.5em 1em;
		font-weight:bold; 
	}
	.spSelectedItem0:before,
	.spSelectedItem0:after,
	.spSelectedItem1:before,
	.spSelectedItem1:after,
	.spSelectedItem2:before,
	.spSelectedItem2:after,
	.spSelectedItem3:before,
	.spSelectedItem3:after,
	.spSelectedItem4:before,
	.spSelectedItem4:after{
		content:"";
		position:absolute;
		top:50%;
		right:10px;
		width:19px;
		height:19px;
		margin-top:-9.5px;
		background-size:cover;
	}
	.spSelectedItem0:before,
	.spSelectedItem1:before,
	.spSelectedItem2:before,
	.spSelectedItem3:before,
	.spSelectedItem4:before{
		opacity:1;
		background-image:url(../../img/common/icon_arrowdown.png);
	}
	.spSelectedItem0.active:before,
	.spSelectedItem1.active:before,
	.spSelectedItem2.active:before,
	.spSelectedItem3.active:before,
	.spSelectedItem4.active:before{
		opacity:0;
	}
	.spSelectedItem0:after,
	.spSelectedItem1:after,
	.spSelectedItem2:after,
	.spSelectedItem3:after,
	.spSelectedItem4:after{
		opacity:0;
		background-image:url(../../img/common/icon_arrowup.png);
	}
	.spSelectedItem0.active:after,
	.spSelectedItem1.active:after,
	.spSelectedItem2.active:after,
	.spSelectedItem3.active:after,
	.spSelectedItem4.active:after{
		opacity:1;
	}
	.localNavi {
		margin:0 15px 10px;
		border:1px solid #000;
	}
	.localNavi ul {
		display:none;
	}
	.localNavi li,
	.localNavi a {
		display:block;
		float:none;
		width:auto;
		margin:0;
		border:0;
	}
	.localNavi li {
		border-top:1px dashed #EEE;
	}
	.localNavi a {
		padding:0.5em 1em;
		height:auto;
		text-align:left;
	}
	.localNavi li.selected a {
		background:inherit;
		color:inherit;
	}
	.list {
		padding:15px;
	}
	.list select {
		width: 100%;
		padding: 1em 1em;
		background: url(../../img/common/icon_arrowdown.png) no-repeat 96% center;
		background-size: 23px 23px;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
	}

}

/* [modalBox] モーダルリンク ----------*/
.modalBox {
	display:none;
	box-sizing:border-box;
	position:fixed;
	top:50%;
	left:50%;
	width:800px;
	margin-left:-400px;
	padding:26px 32px 18px 20px;
	background:#FFF;
}
.modalClose {
	overflow:hidden;
	position:absolute;
	top:-17px;
	right:-7px;
	width:44px;
	height:44px;
	background:url(../../img/common/btn_modal_close.png) no-repeat;
	background-size:contain;
	text-indent:-9999px;
	cursor:pointer;
}
.modalBox table {
	border-collapse:collapse;
	border-spacing:0;
	width:100%;
	line-height:1.4;
}
.modalBox th,
.modalBox td {
	text-align:center;
	vertical-align:middle;
}

.modalBox tr th:nth-child(2),
.modalBox tr td:nth-child(2) {
	border-left:2px solid #CCC;
	border-right:2px solid #CCC;
}


.modalBox th {
	padding:5px;
	background:#9b9b9b;
	font-size:14px;
	font-weight:bold;
	color:#FFF;
}
.modalBox td {
	padding:14px 18px;
}
.modalBox tbody tr:nth-child(even) td {
	background:#f4f4f4;
}
.modalBox tr td.shop {
	font-size:16px;
}
.modalBox tr td.tel {
	width:28%;
	font-size:22px;
	font-weight:bold;
	white-space: nowrap;
}
.modalBox tr td.reserve {
	width:32%;
}
.modalBox .btn {
	display:block;
	width:200px;
	padding:10px 0;
	background:#e88bba;
	font-size:14px;
	font-weight:bold;
	color:#FFF;
}

#lean_overlay {
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:#000;
	z-index:2000;
}
@media screen and (max-width:768px) {
/* [modalBox] モーダルリンク ----------*/
	.modalBox {
		width:290px;
		margin-left:-145px;
		padding:14px;
	}
	.modalClose {
		top:-11px;
		right:-7px;
		width:26px;
		height:26px;
	}
	.modalBox thead { display:none; }
	.modalBox table,
	.modalBox tbody,
	.modalBox tr,
	.modalBox th,
	.modalBox td {
		display:block;
		padding:0;
	}
	
	.modalBox tr {
		padding:10px 0;
		border-bottom:1px solid #CCC;
	}
	.modalBox tr:before,
	.modalBox tr:after {
		content:'';
		display:table;
	}
	.modalBox tr:after { clear:both; }
	
	.modalBox tbody tr:nth-child(even) td {
		background:inherit;
	}
	.modalBox tr td:nth-child(2) {
		border:0;
	}
	
	.modalBox tr td.shop,
	.modalBox tr td.tel,
	.modalBox tr td.reserve {
		width:auto;
		font-size:12px;
	}
	
	.modalBox tr td.shop {
		padding-bottom:10px;
	}
	.modalBox .btn {
		width:100%;
		padding:5px 0;
		font-size:12px;
	}
	.modalBox .btn span {
		display:inline-block;
		background-repeat:no-repeat;
		background-position:0 50%;
		background-size:auto 15px;
	}
	
	.modalBox .tel .btn span {
		padding-left:20px;
		background-image:url(../../img/common/icon_tel.png);
	}
	.modalBox .reserve .btn span {
		padding-left:25px;
		background-image:url(../../img/common/icon_reserve.png);
	}
}

/* [btnMore01] Moreボタン1 ----------*/
.ttlBox .btnMore01 {
	position:absolute;
	top:50%;
	right:20px;
	margin-top: -1em;
}
.btnMore01 a {
	color: #FFF;
	position: relative;
}
.btnMore01 a:before {
	content: "";
	background:url(../../img/common/icon_more.gif) no-repeat 0 0;
	background-size:cover;
	width:14px;
	height:14px;
	position:absolute;
	left:-20px;
	top:2px;
}
/* [btnType01] 基本ボタン1 ----------*/
a.btnType01,
.btnType01 a {
	background:#E88BBA;
	text-align:center;
	color:#FFF;
}
a.btnType01:hover,
.btnType01 a:hover {
	opacity:0.7;
}
/* [btnContact01] お問い合わせボタン1 ----------*/
.btnContact01 {
}
@media screen and (max-width:768px) {
/* [btnMore01] Moreボタン1 ----------*/
	.ttlBox .btnMore01 {
		right:10px;
		margin-top: -0.7em;
	}
	.btnMore01 a:before {
		width:12px;
		height:12px;
		left:-16px;
		top:0;
	}
	
/* [btnType01] 基本ボタン1 ----------*/
	.btnType01 {
	}
/* [btnContact01] お問い合わせボタン1 ----------*/
	.btnContact01 {
	}
}

/*
======= 6:others =======
*/
img {
	max-width:100%;
	max-height:100%;
	height:auto!important;
	border:0;
	vertical-align:bottom;
}
/*----*/
.hidden {
	display:none;
}
/*----*/
.viewPC {
	display:block;
}
.viewPC_inb {
	display:inline-block;
}
.viewSP,
.viewSP_inb {
	display:none;
}
@media screen and (max-width:768px) {
	.viewPC,
	.viewPC_inb {
		display:none;
	}
	.viewSP {
		display:block;
	}
	.viewSP_inb {
		display:inline-block;
	}
}

/* [line] --------------------- */
.line01 { /* 実線 */
	border:1px solid #DDD;
}
/* [atten] --------------------- */
.atten01 {
	color:#E00A0A;
}
/* [fs]文字サイズ変更 --------------------- */
/* 16px相当 */
.f10 { font-size:63% !important; }
.f11 { font-size:69% !important; }
.f12 { font-size:75% !important; }
.f13 { font-size:82% !important; }
.f14 { font-size:88% !important; }
.f15 { font-size:94% !important; }
.f16 { font-size:100% !important; }
.f17 { font-size:107% !important; }
.f18 { font-size:113% !important; }
.f20 { font-size:125% !important; }
.f22 { font-size:138% !important; }
.f24 { font-size:150% !important; }
.f26 { font-size:163% !important; }

/* [fw]太字設定 --------------------- */
.fwBold { font-weight:bold; }
.fw600 { font-weight:600; }

/*----*/
.note {
	padding-left:1em;
	text-indent:-1em;
}
/*----*/
.align_l {
	text-align:left;
}
.align_r {
	text-align:right;
}
.align_c {
	text-align:center;
}
/*----*/
.clear {
	clear:both;
	height:auto;
}
/*----*/
.mt0, .mv0, .ma0 { margin-top:   0 !important; }
.mr0, .mh0, .ma0 { margin-right: 0 !important; }
.mb0, .mv0, .ma0 { margin-bottom:0 !important; }
.ml0, .mh0, .ma0 { margin-left:  0 !important; }
.pt0, .pv0, .pa0 { padding-top:  0 !important; }
.pr0, .ph0, .pa0 { padding-right:0 !important; }
.pb0, .pv0, .pa0 { padding-bottom:0 !important; }
.pl0, .ph0, .pa0 { padding-left: 0 !important; }
.mt5, .mv5, .ma5 { margin-top:   5px !important; }
.mr5, .mh5, .ma5 { margin-right: 5px !important; }
.mb5, .mv5, .ma5 { margin-bottom:5px !important; }
.ml5, .mh5, .ma5 { margin-left:  5px !important; }
.pt5, .pv5, .pa5 { padding-top:  5px !important; }
.pr5, .ph5, .pa5 { padding-right:5px !important; }
.pb5, .pv5, .pa5 { padding-bottom:5px !important; }
.pl5, .ph5, .pa5 { padding-left: 5px !important; }
.mt10, .mv10, .ma10 { margin-top:   10px !important; }
.mr10, .mh10, .ma10 { margin-right: 10px !important; }
.mb10, .mv10, .ma10 { margin-bottom:10px !important; }
.ml10, .mh10, .ma10 { margin-left:  10px !important; }
.pt10, .pv10, .pa10 { padding-top:  10px !important; }
.pr10, .ph10, .pa10 { padding-right:10px !important; }
.pb10, .pv10, .pa10 { padding-bottom:10px !important; }
.pl10, .ph10, .pa10 { padding-left: 10px !important; }
.mt15, .mv15, .ma15 { margin-top:   15px !important; }
.mr15, .mh15, .ma15 { margin-right: 15px !important; }
.mb15, .mv15, .ma15 { margin-bottom:15px !important; }
.ml15, .mh15, .ma15 { margin-left:  15px !important; }
.pt15, .pv15, .pa15 { padding-top:  15px !important; }
.pr15, .ph15, .pa15 { padding-right:15px !important; }
.pb15, .pv15, .pa15 { padding-bottom:15px !important; }
.pl15, .ph15, .pa15 { padding-left: 15px !important; }
.mt20, .mv20, .ma20 { margin-top:   20px !important; }
.mr20, .mh20, .ma20 { margin-right: 20px !important; }
.mb20, .mv20, .ma20 { margin-bottom:20px !important; }
.ml20, .mh20, .ma20 { margin-left:  20px !important; }
.pt20, .pv20, .pa20 { padding-top:  20px !important; }
.pr20, .ph20, .pa20 { padding-right:20px !important; }
.pb20, .pv20, .pa20 { padding-bottom:20px !important; }
.pl20, .ph20, .pa20 { padding-left: 20px !important; }
.mt25, .mv25, .ma25 { margin-top:   25px !important; }
.mr25, .mh25, .ma25 { margin-right: 25px !important; }
.mb25, .mv25, .ma25 { margin-bottom:25px !important; }
.ml25, .mh25, .ma25 { margin-left:  25px !important; }
.pt25, .pv25, .pa25 { padding-top:  25px !important; }
.pr25, .ph25, .pa25 { padding-right:25px !important; }
.pb25, .pv25, .pa25 { padding-bottom:25px !important; }
.pl25, .ph25, .pa25 { padding-left: 25px !important; }
.mt30, .mv30, .ma30 { margin-top:   30px !important; }
.mr30, .mh30, .ma30 { margin-right: 30px !important; }
.mb30, .mv30, .ma30 { margin-bottom:30px !important; }
.ml30, .mh30, .ma30 { margin-left:  30px !important; }
.pt30, .pv30, .pa30 { padding-top:  30px !important; }
.pr30, .ph30, .pa30 { padding-right:30px !important; }
.pb30, .pv30, .pa30 { padding-bottom:30px !important; }
.pl30, .ph30, .pa30 { padding-left: 30px !important; }
.mt40, .mv40, .ma40 { margin-top:   40px !important; }
.mr40, .mh40, .ma40 { margin-right: 40px !important; }
.mb40, .mv40, .ma40 { margin-bottom:40px !important; }
.ml40, .mh40, .ma40 { margin-left:  40px !important; }
.pt40, .pv40, .pa40 { padding-top:  40px !important; }
.pr40, .ph40, .pa40 { padding-right:40px !important; }
.pb40, .pv40, .pa40 { padding-bottom:40px !important; }
.pl40, .ph40, .pa40 { padding-left: 40px !important; }
.mt50, .mv50, .ma50 { margin-top:   50px !important; }
.mr50, .mh50, .ma50 { margin-right: 50px !important; }
.mb50, .mv50, .ma50 { margin-bottom:50px !important; }
.ml50, .mh50, .ma50 { margin-left:  50px !important; }
.ml55, .mh55, .ma55 { margin-left:  55px !important; }
.mt60, .mv60, .ma60 { margin-top:   60px !important; }
.mr60, .mh60, .ma60 { margin-right: 60px !important; }
.mb60, .mv60, .ma60 { margin-bottom:60px !important; }
.ml60, .mh60, .ma60 { margin-left:  60px !important; }
.mt90, .mv90, .ma90 { margin-top:   90px !important; }
.mr90, .mh90, .ma90 { margin-right: 90px !important; }
.mb90, .mv90, .ma90 { margin-bottom:90px !important; }
.ml90, .mh90, .ma90 { margin-left:  90px !important; }
.bt0, .ba0 { border-top:none !important; }
.br0, .ba0 { border-right:none !important; }
.bb0, .ba0 { border-bottom:none !important; }
.bl0, .ba0 { border-left:none !important; }

/*---- clearfix ----*/
/* For modern browsers */
.cf:before,
.cf:after {
    content:'';
    display:table;
}
.cf:after { clear:both; }
/* For IE 7 (trigger hasLayout) */
.cf { zoom:1; }
/* clearfix end */

/*---- pager ----*/
.paginateBox a:hover { color:#999; }
.paginateBox{
	margin-bottom:40px;
	font-size: 14px;
}
.paginate{
	text-align:center;
	line-height:1.2;
}
.paginate .next a:after,.paginate .prev a:before{
	font-size:82%;
	vertical-align:top;
}
.paginate .next a:after{
	content:"≫";
	padding-left:5px;
}
.paginate .prev a:before{
	content:"≪";
	padding-right:5px;
}
.paginate li{
	padding:0px 8px 0px 4px;
	border-right:1px solid #999;
	display:inline-block;
}
.paginate li:last-child{
	border-right:none;
}
.paginate li.active a,
.paginate li.active span{
	font-weight: bold;
}

.titlePager {
	border-top:1px solid #000;
	border-bottom:1px solid #000;
}
.titlePager .paginate{
	display:table;
	width:100%;
	border-top: 1px solid #000;
}
.titlePager p{
	display:table-cell;
	width:50%;
	line-height:1.6;
	border-right:1px solid #000;
}
.titlePager .prev{
	padding:1em 1em 1em 0;
	text-align:left;
}
.titlePager .next{
	padding:1em 0 1em 1em;
	text-align:right;
}
.titlePager p:last-child{
	border-right:none;
}

@media screen and (max-width:768px) {
	.paginateBox{margin-bottom:20px;}

	.titlePager{
		border:none;
	}
	.titlePager p{
		display:block;
		width:100%;
		border:none;
	}
	.titlePager .prev{padding:0.5em 0.5em 0.5em 0;}
	.titlePager .next{padding:0.5em 0 0.5em 0.5em;}
}

/*---- blockRank ----*/
@media screen and (min-width:768px) {
	.blockRank a.hover:hover{
		display: block;
		opacity:0.7;
	}
}
.blockRank {
	margin-bottom:80px;
}
.blockRank .listRank{
	margin:30px 0 0;
	list-style:none;
	padding-left:5px;
}
.blockRank .listRank li{
	position:relative;
	float:left;
	margin-right:28px;
	margin-bottom:26px;
	width:170px;
}
.blockRank .listRank li:last-child{
	margin-right:0;
}
.listRank .iconRank {
	position:absolute;
	top:-14px;
	left:8px;
	width:38px;
	height:28px;
	padding:7px 0 0 16px;
	color:#FFF;
	font-size:11px;
	border:none;
	cursor:pointer;
	background:url(../../img/common/icon_crown.png) no-repeat 0 0;
	background-size:cover;
	z-index: 1;
}
.listRank .photo{
	margin-bottom:10px;
/*	width: 160px;*/
/*	height: 160px;*/
}
.listRank .postTtl{
	font-size:13px;
	line-height:1.8;
}

@media screen and (max-width:768px) {
	.blockRank {
		margin-bottom:0;
	}
	.blockRank .listRank{
		padding-left:0;
	}
	.blockRank .listRank li{
		margin-right:4%;
		width:48%;
	}
	.blockRank .listRank li:nth-child(even){
		margin-right:0;
	}
	.listRank .iconRank {
		padding:10px 0 0 15px;
	}
}




