@charset "utf-8";

body {
	margin: 0 auto;
	font: 13px Verdana, "メイリオ", "Meiryo", Verdana, "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3", sans-serif;
	*font-size: small;
	*font: x-small;
	_display: inline;
	_zoom: 1;
}
img {
	border: 0;
	vertical-align: bottom;
}
form {
	margin: 0;
	padding: 0;
}
form textarea,
form input.txt {
	padding: 5px;
	border: #CCCCCC 1px solid;
}
form input,
form select {
	position:relative;
	top: 2px;
	margin: 0 5px 0 0;
}
form label {
	margin: 0 10px 0 0;
}
ul {
	list-style: none;
}
a:hover {
	text-decoration: none;
}
* html .clearfix { zoom: 1; } /* IE6 */
*:first-child+html .clearfix { zoom: 1; } /* IE7 */
.clearfix:after {
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	content: " ";
	font-size: 0;
}


/*---------------------------------------------------------------------------------------------
  COLOR
---------------------------------------------------------------------------------------------*/
.red    {color: #FF3300;}
.redB   {color: #FF3300; font-weight:bold;}

.caution {color: #FF3300;}
/*---------------------------------------------------------------------------------------------
  BACKGROUND (背景色・画像・文字色)
---------------------------------------------------------------------------------------------*/
.col01                         {color: #333333;}/* フォント色 */
a                              {color: #1772B8;}/* リンクフォント色 */

/* body */
.bg01_col                      {background: #CCCCCC;}/* 背景色 */
.bg01_img01                    {background: url(../img/sample02.jpg) repeat;}/* 背景画像 全リピート */
.bg01_img02                    {background: url(../img/sample02.jpg) no-repeat;}/* 背景画像 リピートなし */
.bg01_img03                    {background: url(../img/sample02.jpg) repeat-x;}/* 背景画像 横リピート */

/* フラッシュ・メインイメージ */
.bg02_col                      {background: #FFCCCC;}/* 背景色 */
.bg02_colNone                  {background: none;}/* 背景なし */

/* 各部サイトカラー */
.bg03_col,.bg03_col a:hover    {background: #CC9966;}

/* h1,footer */
.bg04_col                      {background: #000000;}/* 背景色 */
.col02,.col02 a                {color: #FFFFFF;}/* 文字色 */

/* footer */
.csr01                  {background: url(../img/common/f_csr01.png) no-repeat left center;}/* カーソル白（背景色白以外用） */
.csr02                  {background: url(../img/common/f_csr02.png) no-repeat left center;}/* カーソル黒（背景色白用） */


/*---------------------------------------------------------------------------------------------
  WRAPPER
---------------------------------------------------------------------------------------------*/
#wrapper {
	margin: 0 auto;
	padding: 0;
	text-align: left;
}


/*---------------------------------------------------------------------------------------------
  HEADER
---------------------------------------------------------------------------------------------*/
#header #h1Box {
	width: 100%;
}
#header #h1Box h1 {
	width: 970px;
	line-height: 1.2;
	margin: 0 auto;
	padding: 3px 0;
	font-weight: normal;
	font-size: 77%;
}
#header #headerInn {
	width: 970px;
	height: auto;
	margin: 0 auto;
	padding: 10px 20px 20px 20px;
	background: #FFFFFF;
}
#header #headerInn .headerTopBox {
	margin: 0;
}
/* ロゴ、ショップ名
================================================= */
#header #headerInn .headerTopBox .headerTopBoxL {
	float: left;
	width: 540px;
	margin: 0 0 20px;
}
#header #headerInn .headerTopBox .headerTopBoxL .logoBox {
	float: left;
}
#header #headerInn .headerTopBox .headerTopBoxL .shopNameBox {/* ロゴあり */
	float: left;
	width: 413px;
	margin: 0 0 0 10px;
}
#header #headerInn .headerTopBox .headerTopBoxL .logoNone {/* ロゴなし */
	width: 540px;
	margin: 0;
}
#header #headerInn .headerTopBox .headerTopBoxL .shopNameBox p.area {
	margin: 0;
	font-size: 93%;
}
#header #headerInn .headerTopBox .headerTopBoxL .shopNameBox h2.shopName {
	float: left;
	line-height: 1.4;
	margin: 0;
	font-size: 153%;
}
#header #headerInn .headerTopBox .headerTopBoxL .shopNameBox h2.shopName a {
	display: block;
	color: #333333;
	text-decoration: none;
}
/* 電話番号、カート、サイトTOPボタン
================================================= */
#header #headerInn .headerTopBox .headerTopBoxR {
	float: right;
	width: 402px;
	margin: 0 0 20px;
}
#header #headerInn .headerTopBox .headerTopBoxR .numBox {
	margin: 0 0 10px;
}
#header #headerInn .headerTopBox .headerTopBoxR .numBox ul {
	margin: 0;
	padding: 0;
}
#header #headerInn .headerTopBox .headerTopBoxR .numBox ul li {
	float: right;
	width: auto;
	overflow: hidden;
	font-weight: bold;
	font-size: 93%;
}
#header #headerInn .headerTopBox .headerTopBoxR .numBox ul li.tel {
	height: 19px;
	padding: 4px 12px;
	color: #FFFFFF;
}
#header #headerInn .headerTopBox .headerTopBoxR .numBox ul li.btnTop,
#header #headerInn .headerTopBox .headerTopBoxR .numBox ul li.btnCoupon,
#header #headerInn .headerTopBox .headerTopBoxR .numBox ul li.btnCart {
	margin: 0 0 0 1px;
	_white-space: nowrap;/* IE6で文字列が縦並びになってしまうものを解消 */
}
#header #headerInn .headerTopBox .headerTopBoxR .numBox ul li.btnTop a,
#header #headerInn .headerTopBox .headerTopBoxR .numBox ul li.btnCoupon a,
#header #headerInn .headerTopBox .headerTopBoxR .numBox ul li.btnCart a {
	display: block;
	height: 19px;
	padding: 4px 12px;
	color: #FFFFFF;
	text-decoration: none;
	*display: inline-block;/* IE6,7 */
}
#header #headerInn .headerTopBox .headerTopBoxR .numBox ul li img {
	vertical-align: middle;
	margin: 0 5px 1px 0;
}
/* サブナビ
================================================= */
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl {
	float: right;
	width: 50px;
	margin: 0;
	text-align: center;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl a {
	display: block;
	text-decoration: none;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt {
	width: 25px;
	height: 25px;
	margin: 0 auto 5px;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoFan {/* ファン */
	background: url(../img/common/h_icoFan.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoNews {/* ピックアップニュース */
	background: url(../img/common/h_icoNews.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoRecruit {/* 求人 */
	background: url(../img/common/h_icoRecruit.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoKuchikomi {/* クチコミ */
	background: url(../img/common/h_icoKuchikomi.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoCoupon {/* クーポン */
	background: url(../img/common/h_icoCoupon.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoCompany {/* 会社概要 */
	background: url(../img/common/h_icoCompany.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoReservation {/* 予約 */
	background: url(../img/common/h_icoReservation.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoContact {/* お問い合わせ */
	background: url(../img/common/h_icoContact.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoFree01 {/* フリーページ01 */
	background: url(../img/common/h_icoFree01.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoFree02 {/* フリーページ02 */
	background: url(../img/common/h_icoFree02.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoFree03 {/* フリーページ03 */
	background: url(../img/common/h_icoFree03.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoMenu {/* メニュー・料金 */
	background: url(../img/common/h_icoMenu.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoPhoto {/* もっと写真を見る */
	background: url(../img/common/h_icoPhoto.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoEc {/* ショッピング */
	background: url(../img/common/h_icoEc.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoStore {/* ショッピング */
	background: url(../img/common/h_icoEc.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dt.icoCourse {/* メニュー予約 */
	background: url(../img/common/h_icoCourse.jpg) no-repeat;
}
#header #headerInn .headerTopBox .headerTopBoxR .subNaviBox dl dd {
	line-height: 1.1;
	margin: 0;
	color: #666666;
	font-weight: bold;
	font-size: 71%;
}
/* メインナビ
================================================= */
#header #headerInn .naviBox ul {
	margin: 0;
	padding: 0;
}
#header #headerInn .naviBox ul li {
	display: inline;
	padding: 3px 0 3px 4px;
	background: #FFFFFF;
	border-left: #EDEDED 2px solid;
	font-weight: bold;
}
#header #headerInn .naviBox ul li.boxR {
	padding: 3px 4px 3px 2px;
	border-right: #EDEDED 2px solid;
}
#header #headerInn .naviBox ul li a {
	padding: 3px 20px;
	text-decoration: none;
	*display: inline-block;/* IE6,7 */
}
#header #headerInn .naviBox ul li a:hover {
	color: #FFFFFF;
}


/*---------------------------------------------------------------------------------------------
  FLASH IMAGE
---------------------------------------------------------------------------------------------*/
#mainImgBox {
	position: relative;
	/*width: 1010px;*/
	height: auto;
	overflow: hidden;
	margin: 0 auto;
	_display: inline-block;/* IE6 */
}
#mainImgBox .slideshow {
	display: block;
	width: 1010px;
	height: auto;
	overflow: hidden;
	margin: 0 auto;
    background-color: #FFF;
}
#mainImgNoneContBox {
	margin: 0 auto;
	width: 1010px;
}
/*---------------------------------------------------------------------------------------------
  CONTAINER
---------------------------------------------------------------------------------------------*/
#container {
	width: 970px;
	height: auto;
	margin: 0 auto;
	padding: 10px 20px 20px 20px;
	background: #FFFFFF;
}
/* SNS
================================================= */
#dtlTempSnsBox {
	width: 970px;
	margin: 0 0 10px;
	text-align: right;
}
#dtlTempSnsBox ul {
	display: inline-block;
	margin: 0;
}
#dtlTempSnsBox ul li {
	display: inline;
	float: right;
	margin: 0 0 0 5px;
}
/* タイトル下部ボーダー（サイド、コンテンツ共通）
================================================= */
#container .bdrH3 {
	height: 3px;
	overflow: hidden;
}
#container .sortBox {
	margin: 0 0 10px;
}
#container .sortBox dl {
	clear: both;
	overflow: hidden;
	margin: 0;
	padding: 0;
	background: #FFFFFF;
	font-size: 93%;
	line-height: 1.7;
}
#container .sortBox dl dt {
	float: left;
	margin: 0 10px 0 0;
	padding: 2px 8px;
	font-weight: bold;
	background: #FFCACA;
}
#container .sortBox dl dd {
	float: left;
	margin: 0;
}
#container .sortBox dl dd span {
	color: #D7337E;
	font-weight: bold;
}


/*---------------------------------------------------------------------------------------------
  CONTENTS
---------------------------------------------------------------------------------------------*/
#container #contents {
	width: 710px;
    min-height: 730px;
}
#container .contentsL {/* コンテンツ左 */
	float: left;
}
#container .contentsR {/* コンテンツ右 */
	float: right;
}
/* タイトル
================================================= */
#contents h3.contentsH3 {
	margin: 0;
	padding: 0 0 5px;
	font-weight: normal;
	font-size: 131%;
}
#contents h3.contentsH3 span.subTit {
	margin: 0 0 0 15px;
	color: #999999;
	font-size: 77%;
}
/* テキストリンク（一覧へなど）
================================================= */
#contents .txtLink {
	margin: 10px 0 0;
	font-size: 93%;
	text-align: right;
}


/*---------------------------------------------------------------------------------------------
  SIDE
---------------------------------------------------------------------------------------------*/
#container #side {
	width: 240px;
}
#container .sideL {/* サイド左 */
	float: left;
}
#container .sideR {/* サイド右 */
	float: right;
}
/* 動画
================================================= */
#side .s_movieBox {
	margin: 0 0 15px;
}
/* フリーHTMLスペース
================================================= */
#side .s_freeHtmlBox {
	margin: 0 0 15px;
}
/* サブ情報
================================================= */
#side .s_subInfoBox {
	margin: 0 0 15px;
}
#side .s_subInfoBox .s_subInfoBoxInn {
	margin: 0 0 15px;
}
#side .s_subInfoBox .s_subInfoBoxInn img {
	width: 100%;
	object-fit: cover;
}
#side .s_subInfoBox .s_subInfoBoxInn p.subTxt {
	line-height: 1.2;
	margin: 5px 0 0;
	font-size: 85%;
}
/* ピックアップニュース
================================================= */
#side .s_newsBox {
	margin: 0 0 15px;
	border: #EEEEEE 10px solid;
}
#side .s_newsBox h3.sideH3 {
	line-height: 35px;
	margin: 0 10px;
	padding: 0 0 0 25px;
	background: url(../img/common/s_icoNews.jpg) no-repeat left center;
	font-size: 100%;
}
#side .s_newsBox .s_newsBoxInn {
	overflow: hidden;
	margin: 0;
	padding: 10px;
	border-bottom: #CCCCCC 1px solid;
}
#side .s_newsBox .s_newsBoxInn .inner {
	margin: 0 0 5px;
}
#side .s_newsBox .s_newsBoxInn .inner .ph {
	float: left;
	width: 80px;
	margin: 0;
}
#side .s_newsBox .s_newsBoxInn .inner dl.txt {/* 添付画像あり */
	float: right;
	width: 110px;
	line-height: 1.4;
	margin: 0;
}
#side .s_newsBox .s_newsBoxInn .inner dl.phNone {/* 添付画像なし */
	float: right;
	width: 200px;
	line-height: 1.4;
	margin: 0;
}
#side .s_newsBox .s_newsBoxInn .inner dl.txt dt {
	margin: 0;
	font-size: 77%;
}
#side .s_newsBox .s_newsBoxInn .inner dl.txt dd {
	margin: 0;
}
#side .s_newsBox .s_newsBoxInn .inner dl.txt dd h4 {
	margin: 0;
	font-size: 85%;
}
#side .s_newsBox .s_newsBoxInn .inner dl.txt dd h4 a {
	display: block;
	text-decoration: none;
}
#side .s_newsBox .s_newsBoxInn p.cmnt {
	margin: 0;
	font-size: 85%;
}
/* ニュース・タイル
================================================= */
#side .s_newsBox.tile {
    margin: 0 0 15px;
    border: #EEEEEE 10px solid;
}
#side .s_newsBox.tile h3.sideH3 {
    line-height: 35px;
    margin: 0 10px;
    padding: 0 0 0 25px;
    font-size: 100%;
}
#side .s_newsBox.tile .s_newsBoxInn {
    padding: 10px;
    border-bottom: #CCCCCC 1px solid;
}
#side .s_newsBox.tile .s_newsBoxInn dl {
    float: left;
    width: 95px;
    margin: 0 10px 10px 0;
}
#side .s_newsBox.tile .s_newsBoxInn dl:nth-child(2n) {
    margin: 0 0 10px 0;
}
#side .s_newsBox.tile .s_newsBoxInn dl dt {
    margin: 0 0 2px;
}
#side .s_newsBox.tile .s_newsBoxInn dl dd {
    margin: 0;
}
#side .s_newsBox.tile .s_newsBoxInn dl dd h4 {
    line-height: 1.3;
    margin: 0;
    font-weight: normal;
    font-size: 77%;
    text-align: center;
}
#side .s_newsBox.tile .menuBtnBox {
    font-size: 85%;
}
#side .s_newsBox.tile .menuBtnBox a {
    display: block;
    padding: 10px;
    background: url(../img/common/s_csr01.gif) no-repeat 97% center;
    color: #000000;
    text-decoration: none;
}
/* バックナンバーボタン */
#side .s_newsBox .btnBackNum {
	float: right;
	padding: 10px;
}
#side .s_newsBox .btnBackNum a {
	display: block;
	clear: both;
	width: 142px;
	height: 25px;
	overflow: hidden;
	background: url(../img/top/c_btnNewsBackNum.jpg) no-repeat left center;
	text-indent: -9999px;
}
#side .s_newsBox .newsBtnBox {
	font-size: 85%;
}
#side .s_newsBox .newsBtnBox a {
	display: block;
	padding: 10px;
	background: url(../img/common/s_csr01.gif) no-repeat 97% center;
	color: #000000;
	text-decoration: none;
}
/* メニュー・料金
================================================= */
#side .s_menuBox {
	margin: 0 0 15px;
	border: #EEEEEE 10px solid;
}
#side .s_menuBox h3.sideH3 {
	line-height: 35px;
	margin: 0 10px;
	padding: 0 0 0 25px;
	background: url(../img/common/s_icoMenu.jpg) no-repeat left center;
	font-size: 100%;
}
#side .s_menuBox .s_menuBoxInn {
	padding: 10px;
	border-bottom: #CCCCCC 1px solid;
}
#side .s_menuBox .s_menuBoxInn dl {
	float: left;
	width: 95px;
	margin: 0 10px 0 0;
}
#side .s_menuBox .s_menuBoxInn dl.innR {
	float: left;
	width: 95px;
	margin: 0;
}
#side .s_menuBox .s_menuBoxInn dl dt {
	margin: 0 0 2px;
}
#side .s_menuBox .s_menuBoxInn dl dd {
	margin: 0;
}
#side .s_menuBox .s_menuBoxInn dl dd h4 {
	line-height: 1.3;
	margin: 0;
	font-weight: normal;
	font-size: 77%;
	text-align: center;
}
#side .s_menuBox .menuBtnBox {
	font-size: 85%;
}
#side .s_menuBox .menuBtnBox a {
	display: block;
	padding: 10px;
	background: url(../img/common/s_csr01.gif) no-repeat 97% center;
	color: #000000;
	text-decoration: none;
}
/* もっと写真を見る
================================================= */
#side .s_photoBox {
	margin: 0 0 15px;
	border: #EEEEEE 10px solid;
}
#side .s_photoBox h3.sideH3 {
	line-height: 35px;
	margin: 0 10px;
	padding: 0 0 0 25px;
	background: url(../img/common/s_icoPhoto.jpg) no-repeat left center;
	font-size: 100%;
}
#side .s_photoBox .s_photoBoxInn {
	padding: 10px;
	border-bottom: #CCCCCC 1px solid;
}
#side .s_photoBox .s_photoBoxInn dl {
	float: left;
	width: 60px;
	margin: 0 10px 0 0;
}
#side .s_photoBox .s_photoBoxInn dl.innR {
	float: left;
	width: 60px;
	margin: 0;
}
#side .s_photoBox .s_photoBoxInn dl dt {
	margin: 0;
}
#side .s_photoBox .photoBtnBox {
	font-size: 85%;
}
#side .s_photoBox .photoBtnBox a {
	display: block;
	padding: 10px;
	background: url(../img/common/s_csr01.gif) no-repeat 97% center;
	color: #000000;
	text-decoration: none;
}
/* ブログRSS
================================================= */
#side .s_blogRssBox {
	margin: 0 0 15px;
	border: #EEEEEE 10px solid;
}
#side .s_blogRssBox h3.sideH3 {
	line-height: 35px;
	margin: 0 10px;
	padding: 0 0 0 25px;
	background: url(../img/common/s_icoBlog.jpg) no-repeat left center;
	font-size: 100%;
}
#side .s_blogRssBox dl {
	margin: 0;
	padding: 10px;
	border-bottom: #CCCCCC 1px solid;
	font-size: 85%;
}
#side .s_blogRssBox dl.boxBtm {
	border-bottom: none;
}
#side .s_blogRssBox dl dt {
	margin: 0 0 5px;
}
#side .s_blogRssBox dl dd {
	line-height: 1.2;
	margin: 0;
}
#side .s_blogRssBox dl dd a {
	display: block;
	text-decoration: none;
}
/* お友達店舗
================================================= */
#side .s_shopBox {
	margin: 0 0 15px;
	border: #EEEEEE 10px solid;
}
#side .s_shopBox h3.sideH3 {
	line-height: 35px;
	margin: 0 10px;
	padding: 0 0 0 25px;
	background: url(../img/common/s_icoShop.jpg) no-repeat left center;
	font-size: 100%;
}
#side .s_shopBox dl {
	overflow: hidden;
	margin: 0;
	padding: 10px;
	border-bottom: #CCCCCC 1px solid;
	font-size: 85%;
}
#side .s_shopBox dl.boxBtm {
	border-bottom: none;
}
#side .s_shopBox dl dt {
	float: left;
	width: 80px;
}
#side .s_shopBox dl dd {
	float: right;
	width: 115px;
	line-height: 1.2;
	margin: 0;
}
#side .s_shopBox dl dd a {
	display: block;
	margin: 0 0 3px;
	text-decoration: none;
}
/* お店のファンリスト
================================================= */
#side .s_fanListBox {
	margin: 0 0 15px;
	border: #EEEEEE 10px solid;
}
#side .s_fanListBox h3.sideH3 {
	line-height: 35px;
	margin: 0 10px;
	padding: 0 0 0 25px;
	background: url(../img/common/s_icoFan.jpg) no-repeat left center;
	font-size: 100%;
}
#side .s_fanListBox .s_fanListBoxInn {
	padding: 10px;
	border-bottom: #CCCCCC 1px solid;
}
#side .s_fanListBox .s_fanListBoxInn p.fanTxt {
	margin: 0;
	font-size: 93%;
	text-align: center;
}
#side .s_fanListBox .s_fanListBoxInn dl {
	float: left;
	width: 60px;
	margin: 0 10px 0 0;
}
#side .s_fanListBox .s_fanListBoxInn dl.innR {
	float: left;
	width: 60px;
	margin: 0;
}
#side .s_fanListBox .s_fanListBoxInn dl dt {
	margin: 0 0 2px;
	border: #DDDDDD 1px solid;
}
#side .s_fanListBox .s_fanListBoxInn dl dd {
	line-height: 1.2;
	margin: 0;
	font-size: 77%;
	text-align: center;
}
#side .s_fanListBox .s_fanListBoxInn dl dd a {
	text-decoration: none;
}
#side .s_fanListBox ul.fanBtnBox {
	margin: 0;
	padding: 0;
	background: #F5F5F5;
}
#side .s_fanListBox ul.fanBtnBox li {
	float: left;
	width: 109px;
	margin: 0;
	padding: 0;
	font-size: 85%;
	text-align: center;
}
#side .s_fanListBox ul.fanBtnBox li img {
	vertical-align: middle;
	margin: 0 5px 0 0;
}
#side .s_fanListBox ul.fanBtnBox li.icoFanAdd {
	border-right: #CCCCCC 1px solid;
}
#side .s_fanListBox ul.fanBtnBox li a {
	display: block;
	padding: 10px 0;
	color: #000000;
	text-decoration: none;
}

/* サイド：カレンダー 
================================================= */
#side #diaryMenu {
	width: 240px;
	height: auto;
	overflow: hidden;
}
#side #diaryMenu #dateBox,
#side #diaryMenu .sideBox {
	margin: 0 0 10px;
}
#side #diaryMenu .sideTit {
	width: 238px;
	height: 25px;
	line-height: 25px;
	padding: 5px 0;
	background: #E0E0E0;
	font-weight: bold;
	text-align: center;
	border: #D6D6D6 1px solid;
	border-bottom: none;
}
#side #diaryMenu #dateBox .sideTit ul#dateHead {
	margin: 0;
	padding: 0;
	list-style: none;
}
#side #diaryMenu #dateBox .sideTit ul#dateHead li {
	margin: 0;
	padding: 0;
	font-weight: bold;
}
#side #diaryMenu #dateBox .sideTit ul#dateHead li#headL {
	float: left;
	width: 30px;
	margin: 0 0 0 10px;
	text-align: left;
}
#side #diaryMenu #dateBox .sideTit ul#dateHead li#headC {
	float: left;
	width: 158px;
	margin: 0 auto;
	padding: 0;
	text-align: center;
}
#side #diaryMenu #dateBox .sideTit ul#dateHead li#headR {
	float: right;
	width: 30px;
	margin: 0 10px 0 0;
	text-align: right;
}	
#side #diaryMenu #dateBox .sideTit ul#dateHead li a {
	color: #333333;
	text-decoration: none;
}
#side #diaryMenu #dateBox .sideTit ul#dateHead li a:hover {
	text-decoration: underline;
}
#side #diaryMenu #dateBox table#calendar {
	width: 240px;
	border-top: #D6D6D6 1px solid;
	border-left: #D6D6D6 1px solid;
	border-collapse: collapse;
}
#side #diaryMenu #dateBox table#calendar th,
#side #diaryMenu #dateBox table#calendar td {
	padding: 2px 0;
	border-right: #D6D6D6 1px solid;
	border-bottom: #D6D6D6 1px solid;
	text-align: center;
}
#side #diaryMenu #dateBox table#calendar td a {
	color: #18A3BE;
	font-weight: bold;
	text-decoration: underline;
}

/* サイド：記事カテゴリ、最新記事 
================================================= */
#side .sideTit {
	padding: 5px;
	background: #E0E0E0;
	border: #D6D6D6 1px solid;
	font-weight: bold;
	text-align: center;
}
#side .innBox {
	margin: 0 0 10px;
	padding: 10px 0;
}
#side .innBox ul.contList {
	margin: 0;
	padding: 0;
}
#side .innBox ul.contList li {
	line-height: 1.6;
	padding: 8px 0 8px 10px;
	background: url(../img/common/s_csrNavi01.gif) no-repeat left 12px;
	border-bottom: #ededed 1px solid;
	font-size: 93%;
}
#side .innBox ul.contList li a {
	text-decoration: none;
}
#side .innBox ul.contList li a:hover {
	text-decoration: underline;
}
#side .innBox .toDigest {
	margin: 8px 0 0;
	text-align: right;
	font-size: 93%;
}
#side .innBox .toDigest a {
	padding: 0 0 0 12px;
	background: url(../img/common/s_csr01.gif) no-repeat left 2px;
	color: #000000;
	text-decoration: none;
}
#side .innBox .toDigest a:hover {
	text-decoration: underline;
}

/*---------------------------------------------------------------------------------------------
  FOOTER
---------------------------------------------------------------------------------------------*/
#footer {
	width: 100%;
}
#footer #footerInn {
	width: 970px;
	margin: 0 auto;
	padding: 20px 0 80px;
}
#footer #footerInn .footerInnL {
	float: left;
	width: 240px;
}
#footer #footerInn .footerInnL .shopInfoBox {
	margin: 0 0 10px;
}
#footer #footerInn .footerInnL .shopInfoBox .shopQr {
	float: left;
	width: 83px;
	border: #CCCCCC 1px solid;
}
#footer #footerInn .footerInnL .shopInfoBox dl {
	float: right;
	width: 145px;
	line-height: 1.5;
	margin: 0;
}
#footer #footerInn .footerInnL .shopInfoBox dl dt h2.shopName {
	margin: 0 0 5px;
	font-size: 85%;
}
#footer #footerInn .footerInnL .shopInfoBox dl dt h2.shopName a {
	display: block;
	text-decoration: none;
}
#footer #footerInn .footerInnL .shopInfoBox dl dd {
	margin: 0 0 5px;
	font-size: 85%;
}
/* サイトSNS関連（お気に入り店舗追加ボタン、SNSログイン等）
================================================= */
#footer #footerInn .footerInnL .siteRelationBox .btnFavoriteAdd {
	margin: 0 0 7px;
	padding: 2px 0;
	border: #CCCCCC 1px solid;
	background: #FFFFFF;
	font-size: 77%;
	text-align: center;
}
#footer #footerInn .footerInnL .siteRelationBox .btnFavoriteAdd img {
	vertical-align: middle;
	margin: 0 10px 0 0;
}
#footer #footerInn .footerInnL .siteRelationBox .btnFavoriteAdd a {
	display: block;
	color: #000000;
	text-decoration: none;
}
#footer #footerInn .footerInnL .siteRelationBox p.memName {
	line-height: 1.3;
	margin: 0 0 5px;
	font-weight: bold;
	font-size: 85%;
}
#footer #footerInn .footerInnL .siteRelationBox ul {
	margin: 0;
	padding: 0;
}
#footer #footerInn .footerInnL .siteRelationBox ul li {
	margin: 0 0 10px;
	padding: 0 0 0 15px;
	font-size: 85%;
}
#footer #footerInn .footerInnL .siteRelationBox ul li a {
	text-decoration: none;
}
/* ナビ
================================================= */
#footer #footerInn .footerNavi {
	float: right;
	width: 710px;
}
#footer #footerInn .footerNavi ul {
	float: left;
	width: 162px;
	margin: 0 20px 0 0;
	padding: 0;
}
#footer #footerInn .footerNavi ul.naviR {
	margin: 0;
}
#footer #footerInn .footerNavi ul li {
	margin: 0 0 10px;
	padding: 0 0 0 15px;
	font-size: 85%;
}
#footer #footerInn .footerNavi ul li a {
	text-decoration: none;
}



/*---------------------------------------------------------------------------------------------
  iframe化 関連
---------------------------------------------------------------------------------------------*/
/* お気に入りに追加ボタン
================================================= */
.favoriteFrame {
	width: 240px;
	border: none;
}
.favoriteFrameCont .btnFavoriteAdd {
	margin: 0 0 7px;
	padding: 2px 0;
	border: #CCCCCC 1px solid;
	background: #FFFFFF;
	font-size: 77%;
	text-align: center;
}
.favoriteFrameCont .btnFavoriteAdd img {
	vertical-align: middle;
	margin: 0 10px 0 0;
}
.favoriteFrameCont .btnFavoriteAdd a {
	display: block;
	color: #000000;
	text-decoration: none;
}
.favoriteFrameCont p.memName {
	line-height: 1.3;
	margin: 0 0 5px;
	font-weight: bold;
	font-size: 85%;
}
.favoriteFrameCont ul {
	margin: 0;
	padding: 0;
}
.favoriteFrameCont ul li {
	margin: 0 0 10px;
	padding: 0 0 0 15px;
	font-size: 85%;
}
.favoriteFrameCont ul li a {
	text-decoration: none;
}
/* メニューお気に入りに追加ボタン
================================================= */
.menuFavoriteFrame {
	margin: 7px 0 0;
	width: 201px;
	height: 26px;
	border: none;
}
.menuFavoriteCont {
	margin: 7px 0 0;
	font-weight: bold;
	font-size: 85%;
}
.menuFavoriteCont dt {
	display: inline;
	width: 120px;
	margin: 0 5px 0 0;
	padding: 3px 7px;
	border: #E5E5E5 1px solid;
	background: url(../img/layout/menu_bgFavrt.jpg) repeat-x;
	color: #CCCCCC;
	text-align: center;
}
.menuFavoriteCont dt a {
	display: inline-block;
	color: #FF9900;
	text-decoration: none;
}
.menuFavoriteCont dd {
	display: inline;
	height: 17px;
	margin: 0;
	padding: 3px 0 3px 17px;
	background: url(../img/layout/menu_icoNum.gif) no-repeat left center;
	color: #FF6600;
}
/* メイン ファン登録ボタン
================================================= */
.mainFanFrame {
	width: 109px;
	height: 27px;
	border: none;
}
.mainFanFrameCont {
	font-size: 85%;
	text-align: center;
}
.mainFanFrameCont a {
	display: block;
	padding: 7px 0;
	color: #000000;
	text-decoration: none;
}
.mainFanFrameCont a img {
	vertical-align: middle;
	margin: 0 5px 0 0;
}
/* サイド ファン登録ボタン
================================================= */
.subFanFrame {
	width: 109px;
	height: 35px;
	border: none;
}
.subFanFrameCont {
	font-size: 85%;
	text-align: center;
}
.subFanFrameCont a {
	display: block;
	padding: 10px 0;
	color: #000000;
	text-decoration: none;
}
.subFanFrameCont a img {
	vertical-align: middle;
	margin: 0 5px 0 0;
}
/* クチコミ投稿フォーム
====================================================== */
.dtlBtnReviewPostFrame {
	margin-top: 30px;
	width: 100%;
	height: 900px;
	border: none;
}
/* 注意書き */
.dtlAddBtnReviewPostBox .formBox dl.formCtnBox {
	margin: 0 0 10px;
	padding: 10px 20px;
	border: #DDDDDD 1px solid;
	font-size: 93%;
}
.dtlAddBtnReviewPostBox .formBox dl.formCtnBox dt {
	margin: 0 0 5px;
}
.dtlAddBtnReviewPostBox .formBox dl.formCtnBox dd {
	margin: 0;
}
/* フロー */
.dtlAddBtnReviewPostBox .formBox ul.flowBox {
	margin: 0;
	padding: 10px 0 20px;
}
.dtlAddBtnReviewPostBox .formBox ul.flowBox li {
	float: left;
	width: 201px;
	margin: 0 21px 0 0;
	padding: 7px 0;
	border: #999999 1px solid;
	background: #FFFFFF;
	color: #999999;
	text-align: center;
}
.dtlAddBtnReviewPostBox .formBox ul.flowBox li.current {
	border: #999999 1px solid;
	background: #999999;
	color: #FFFFFF;
}
.dtlAddBtnReviewPostBox .formBox ul.flowBox li.csrFlow {
	width: 8px;
	height: 14px;
	padding: 20px 0 0;
	border: none;
	background: url(../img/layout/form_csrFlow.gif) no-repeat left center;
}
.dtlAddBtnReviewPostBox .formBox ul.flowBox li.boxR {
	margin: 0;
}
/* フォーム */
.dtlAddBtnReviewPostBox .formBox p.formCmntBox {
	margin: 0 0 10px;
	border-bottom: #CCCCCC 1px solid;
}
.dtlAddBtnReviewPostBox .formBox p.formCmntBox span.red {
	display: inline-block;
	margin: 0 0 -1px;
	padding: 0 0 7px;
	border-bottom: #000000 1px solid;
	font-size: 85%;
}
.dtlAddBtnReviewPostBox .formBox p.formCmntBox span.tit {
	display: inline-block;
	line-height: 1.3;
	margin: 0 0 -1px;
	padding: 0 0 7px;
	border-bottom: #000000 1px solid;
	font-size: 116%;
}
.dtlAddBtnReviewPostBox .formBox p.formCmnt {/* フォーム上のコメント */
	line-height: 1.2;
	margin: 0 0 5px;
	font-size: 85%;
}
.dtlAddBtnReviewPostBox .formBox table.tblForm {
	width: 100% !important;
	margin: 0 0 20px !important;
	font-size: 93% !important;
	table-layout: fixed;
}
.dtlAddBtnReviewPostBox .formBox table.tblForm th {
	display: table-cell !important;
	width: 180px !important;
	line-height: 1.2;
	padding: 12px !important;
	border-top: #FFFFFF 1px solid !important;
	border-bottom: #CCCCCC 1px solid !important;
	background: #EEEEEE;
	font-weight: normal;
	text-align: left;
	border-radius: 0;
}
.dtlAddBtnReviewPostBox .formBox table.tblForm td {
	display: table-cell !important;
	line-height: 1.2;
	padding: 12px !important;
	border-top: #FFFFFF 1px solid !important;
	border-bottom: #CCCCCC 1px solid !important;
}
.dtlAddBtnReviewPostBox .formBox table.tblForm td p.starCtn {
	margin: 2px 0 0 100px;
	font-size: 93%;
}
.dtlAddBtnReviewPostBox .formBox table.tblForm td .formSubBox {
	margin: 0 0 7px;
}
/* フォームボタン */
.dtlAddBtnReviewPostBox .formBox .formBtnBox {
	margin: 0;
	padding: 0;
	text-align: center;
	border-top: none;
}
.dtlAddBtnReviewPostBox .formBox .formBtnBox ul {
	width: 710px;
	margin: 0 auto;
	padding: 0;
}
.dtlAddBtnReviewPostBox .formBox .formBtnBox ul li {
	display: inline;
	margin: 0;
	padding: 7px 20px;
	font-weight: bold;
	text-align: center;
}
.dtlAddBtnReviewPostBox .formBox .formBtnBox ul li img {
	vertical-align: middle;
	margin: 0 0 3px 10px;
}
.dtlAddBtnReviewPostBox .formBox .formBtnBox ul li.back {
	background: #D5D5D5;
	margin: 0 20px 0 0;
}
.dtlAddBtnReviewPostBox .formBox .formBtnBox ul li.pre {
	background: #FF3333;
}
.dtlAddBtnReviewPostBox .formBox .formBtnBox ul li a {
	display: inline-block;
	width: auto;
	color: #FFFFFF;
	text-decoration: none;
	*padding: 7px 20px;
	border: none;
	line-height: normal;
	background-color: transparent;
}


/*---------------------------------------------------------------------------------------------
  求人カテゴリ別イメージ
---------------------------------------------------------------------------------------------*/
.jobCateImgBox {
	background-color: #FFFFFF;
	text-align: center;
}
.jobCateImgBorderBox {
	padding: 1px;
	border: #DDDDDD 1px solid;
	background-color: #FFFFFF;
	text-align: center;
}
.jobCateImgBox .jobCateIcon,
.jobCateImgBorderBox .jobCateIcon {
	padding: 10px 0;
}
.jobCateImgBox .jobCateTitle,
.jobCateImgBorderBox .jobCateTitle {
	padding: 5px;
	color: #FFFFFF;
	font-weight: bold;
	box-shadow: 0 1px 2px rgba(0,0,0,0.4) inset;
}
a.no-decoration {
	text-decoration: none;
}

.sns-parent-box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
}
.sns-parent-box.sns-shop-header{
    margin-bottom: 15px;
}
.sns-parent-box .sns-child.g-plus{
    /*width: 58px;*/
}
.sns-parent-box .sns-child{
    margin: 5px 10px 0px 0px;
}
.sns-parent-box .sns-child:last-child{
    margin: 5px 0px 0px 0px;
}

/*---------------------------------------------------------------------------------------------
  カレンダー予約
---------------------------------------------------------------------------------------------*/
.mainCtsBox {
	margin-top: 15px;
}
.mainCtsBox .calendarReserve .calendar__table { 
	width: 100%;
	border-spacing: 0;
  border-collapse: collapse;
}
.mainCtsBox .calendarReserve .calendar__table th {
	padding: 0.2rem 0.5rem;
	vertical-align: middle;
	text-align: center;
	border: 1px solid #999;
	border-color: #CCC;
}
.mainCtsBox .calendarReserve .calendar__table th.sunday {
	background: #f27579;
	color: #fff;
}
.mainCtsBox .calendarReserve .calendar__table th.saturday {
	background: #779dc4;
	color: #fff;
}
.mainCtsBox .calendarReserve .calendar__table td {
	padding: 0.2rem 0.5rem;
	vertical-align: middle;
	text-align: left;
}
.mainCtsBox .calendarReserve .calendar__table tbody th,
.mainCtsBox .calendarReserve .calendar__table tbody td {
	padding: 0;
	width: 43px;
	height: 50px;
	border: 1px solid #999;
	border-color: #CCC;
	color: #333;
	font-weight: bold;
	vertical-align: top;
}
.mainCtsBox .calendarReserve .calendar__table tbody td:hover {
	background-color: #ffe9a6;
}

.mainCtsBox .calendarReserve .calendar__table tbody td.bgGray {
	background-color: #e1e1e1;
	background-color: #eaeaea;
}
.mainCtsBox .calendarReserve .calendar__table tbody tr:first-child td {
	padding-top: 0;
	height: 50px;
}
.mainCtsBox .calendarReserve .calendar__table tbody td dl {
	margin: 0;
}
.mainCtsBox .calendarReserve .calendar__table tbody td dl a {
	text-decoration: none;
}
.mainCtsBox .calendarReserve .calendar__table thead {
	font-size: 0.75rem;
	background-color: #ddd;
	color: #333;
	background-color: #808080;
	color: #fff;
}
.mainCtsBox .calendarReserve .iconLabel {
	display: inline-block;
	width: 15px;
	height: 15px;
	border-radius: 100px;
	background: #999;
}
.mainCtsBox .calendarReserveBox {
	display: flex;
	flex-wrap: wrap;
	clear: both;
}
.mainCtsBox .calendarReserve {
	width: calc(100% /2 - 10px);
	margin: 0 15px 15px 0;
}
.mainCtsBox .calendarReserve:nth-child(2n) {
	margin-right: 0;
}
.mainCtsBox .calendarReserve .titleDate {
	font-size: 1rem;
	font-weight: bold;
}
.reserveStatus {
	text-align: center;
	font-size: 16px;
	color: #303aea;
	margin: 0;
}
.reserveStatus.holiday {
	color: #aaa;
	font-weight: 500;
}
.reserveStatus p {
	font-size: 78%;
	font-weight: 500;
	margin: 0;
	position: relative;
	top: 3px;
}
img.tel_icon {
	width: 20px;
}
img.reserve_icon {
	width: 15px;
}
.calendar-search__box.move_box ul {
	padding: 0;
}
.mainCtsBox .calendarReserve .calendar__table tbody td .txtDay {
	min-height: 20px;
	margin: 5px 5px 0;
	font-weight: 400;
	font-size: 81.5%;
}
.mainCtsBox .calendarReserve .calendar-search__box.move_box ul {
	padding: 0;
	font-size: 1rem;
    font-weight: bold;
    margin: 0 0 5px;
}
.mainCtsBox .calendarReserve .calendar__table tbody td.sunday .txtDay {
	color: #f27579;
}
.mainCtsBox .calendarReserve .calendar__table tbody td.saturday .txtDay {
	color: #779dc4;
}
.noReserve {
	color: #f44336 !important;
}
.calendar_note {
	padding: 0;
}
.calendarControle {
	text-align:center;
}
.calendarControle ul {
	float: right;
	padding: 10px 0;
}
.calendarControle .calendarBtn {
	float: left;
}
.calendarControle .calendarBtn a {
	margin: 0 5px;
	border: 1px solid #808080;
	padding: 3px 15px;
	border-radius: 5px;
	color: #808080;
	text-decoration: none;
}
.calendarControle .calendarBtn a:hover {
	opacity: 0.7;
	background: #808080;
	color: #FFF;
	text-decoration: none;
}
.calendarExplainBox {
    margin-top: 15px;
}
.calendarExplainBox li {
    display: flex;
    align-items: center;
    margin-bottom: 5px;
}
.calendarLoadBox {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 300px;
}
.calendarLoadBox img {
    width: 48px;
    height: 48px;
}
/*** ボタン ***/
.formCalendarBtnBox {
	text-align: center;
    margin-top: 10px;
}
.formCalendarBtnBox ul li {
	display: inline-block;
	margin-right: 5px;
}
.formCalendarBtnBox ul li a {
	display: block;
	min-width: 130px;
	line-height: 30px;
	border: #CCC 1px solid;
	background-color: #F8F8F8;
	border-radius: 5px;
}
.formCalendarBtnBox ul li:last-child {
	margin-right: 0;
}
.formCalendarBtnBox ul li a.main {
	/* border: #666 1px solid; */ 
	background-color: #666;
	color: #FFF;
}
.formCalendarBtnBox ul li a:hover {
	opacity: .7;
}
.formCalendarBtnBox ul li a.img {
	width: auto;
	border: none;
	background-color: transparent;
}

@media (max-width: 768px) {
	.mainCtsBox .calendarReserveBox {
		display: block;
	}
	.mainCtsBox .calendarReserve {
		width: 100%;
	}
}

/* カレンダー予約（スケジュール機能版） */
.scheduleCalendarBox {
    width: 100%;
	border: none !important;
	margin-bottom: 30px;
}
.scheduleCalendarBox .calendar-search__box ul {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.5rem;
    font-size: 1rem;
    font-weight: bold;
    padding: 10px 0 0;
}
.scheduleCalendarBox .calendar-search__box ul a {
	color: #000;
	text-decoration: none;
}
.scheduleCalendarBox .schedule_calendar__table {
	width: 100%;
	border-collapse: collapse;
}
.scheduleCalendarBox .schedule_calendar__table thead tr th {
    padding: 0.4rem;
    vertical-align: middle;
    text-align: center;
    border: 1px solid #999;
    border-color: #CCC;
    background-color: #808080;
    color: #FFF;
}
.scheduleCalendarBox .schedule_calendar__table thead tr th.sunday {
    background: #f27579;
}
.scheduleCalendarBox .schedule_calendar__table thead tr th.saturday {
    background: #779dc4;
}
.scheduleCalendarBox .schedule_calendar__table tbody tr td {
    height: 80px;
    width: 14%;
    width: calc(100% / 7);
    border: 1px solid #999;
    border-color: #CCC;
    vertical-align: top;
    position: relative;
}
.scheduleCalendarBox .schedule_calendar__table tbody tr td.bgGray {
    background-color: #eaeaea;
}
.scheduleCalendarBox .schedule_calendar__table tbody tr td .dateTxt {
    color: #333;
    background-color: none;
    padding: 0;
    margin: 2px;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    display: inline-block;
    border-radius: 50%;
    font-weight: bold;
}
.scheduleCalendarBox .schedule_calendar__table tbody tr td.sunday .dateTxt {
    color: #f27579;
}
.scheduleCalendarBox .schedule_calendar__table tbody tr td.saturday .dateTxt {
    color: #779dc4;
}
.scheduleCalendarBox .schedule_calendar__table tbody tr td.today .dateTxt {
    color: #FFF;
    background-color: #ffa800;
}
.scheduleCalendarBox .schedule_calendar__table tbody tr td .schedule {
    width: 100%;
    padding: 5px;
	margin: 0;
	box-sizing: border-box;
	font-size: 93%;
}
.scheduleCalendarBox .schedule_calendar__table tbody tr td .schedule_holiday {
    text-align: right;
    width: 100%;
    padding: 5px;
    margin: 0;
    box-sizing: border-box;
	color: #999;
	font-size: 93%;
    position: absolute;
    top: 0;
    right: 5px;
}
.scheduleCalendarBox .schedule_calendar__table tbody tr td .schedule a {
    text-decoration: underline;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.scheduleCalendarBox .schedule_calendar__table tbody tr td .schedule a:hover {
    text-decoration: none;
}
.scheduleCalendarBox .reserveBtn {
	padding-top: 10px;
    text-align: center;
}
.scheduleCalendarBox .reserveBtn a {
    color: #FFF;
    background: #0080EB;
    display: inline-block;
    width: 150px;
    padding: 5px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 10px;
}

.ReserveCalendarBox.scheduleCalendarBox .descriptionBox {
    display: none;
}
.ReserveCalendarBox.scheduleCalendarBox .reserveBtn {
    text-align: center;
    margin: 1rem 0 0;
}
.ReserveCalendarBox.scheduleCalendarBox .reserveBtn a {
    color: #FFF;
    background: #ffa800;
    display: inline-block;
    width: 200px;
    padding: 10px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 10px;
	border-radius: 50px;
	text-decoration: none;
}

.scheduleSelectBox {
    max-width: 500px;
}

.scheduleSelectBox .scheduleSelectItem .reserve__modal-headline {
    font-size: 129%;
    font-weight: bold;
    text-align: left;
	margin: 0;
}

.scheduleSelectBox .scheduleSelectItem .scheduleItem {
    padding-top: 10px;
    font-size: 105%;
}

.scheduleSelectBox .scheduleSelectItem .scheduleItem p {
	margin: 0;
}

.schedule-link__btn {
	line-height: 1;
	align-items: center;
	display: flex;
	justify-content: center;
	max-width: 150px;
	margin-top: 16px;
	padding: 7px 15px;
	border: #ccc 1px solid;
	border-radius: 24px;
	background: #ffffff;
	float: right;
	font-size: 0.8rem;
}

.schedule-link__btn::after {
	font-family: FontAwesome, sans-serif;
	content: " \f138";
	display: inline-block;
	margin-left: 8px;
	color: inherit;
}

/* カレンダー予約（スケジュール機能スマホ版） */
.scheduleCalendarBox .sp_schedule_box {
    position: relative;
    overflow: hidden;
}
.scheduleCalendarBox .sp_schedule_box.is-hide {
    height: 300px;
}
.scheduleCalendarBox .sp_schedule_box.is-hide::before {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 40px;
    background: -webkit-gradient(linear,left top,left bottom,from(transparent),to(rgba(0,0,0,.5)));
    background: linear-gradient(180deg,transparent 0,rgba(0,0,0,.5));
}
.scheduleCalendarBox .sp_schedule_box .grad-trigger {
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    width: 148px;
    margin: auto;
    padding: .5em 0;
    border-radius: 2px;
    background: #009e8f;
    color: #fff;
    text-align: center;
    cursor: pointer;
    transition: .2s ease;
    box-shadow: 0 0 3px rgba(0,0,0,.3);
}
.scheduleCalendarBox .sp_schedule_box .grad-trigger:before {
    font-family: FontAwesome;
    content: "\f107";
    position: absolute;
    right: 10px;
}
.scheduleCalendarBox .sp_schedule_box.is-show .grad-trigger {
    display: none;
}
.scheduleCalendarBox .sp_schedule_table {
    width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
}
.scheduleCalendarBox .sp_schedule_table tr {
    /* border: 1px solid #CCC; */
}
.scheduleCalendarBox .sp_schedule_table tr.bgGray {
    background-color: #eaeaea;
}
.scheduleCalendarBox .sp_schedule_table tr td {
    border: 1px solid #CCC;
    padding: 0.5rem;
    font-size: 1rem;
}
.scheduleCalendarBox .sp_schedule_table tr td.dateBox {
    width: 100px;
}
.scheduleCalendarBox .sp_schedule_table tr td .dateLabel {
    font-weight: bold;
}
.scheduleCalendarBox .sp_schedule_table tr.sunday td .dateLabel {
    color: #f27579;
}
.scheduleCalendarBox .sp_schedule_table tr.saturday td .dateLabel {
    color: #779dc4;
}
.scheduleCalendarBox .sp_schedule_table tr td p.schedule {
    font-size: 0.8rem;
}
.scheduleCalendarBox .sp_schedule_table tr td p.schedule a {
    text-decoration: underline;
}
.scheduleCalendarBox .sp_schedule_table tr td p.schedule_holiday {
    font-size: 0.8rem;
    color: #999;
}

/* 営業日カレンダー
================================================= */
#side .s_calendarBox {
	margin: 0 0 15px;
	border: 2px solid #999;
	border-color: #CCC;
	border-width: 1px;
}
#side .s_calendarBox h3.sideH3 {
	line-height: 35px;
	margin: 0 10px;
	padding: 0 0 0 25px;
	background: url(../img/common/s_icoCalendar.jpg) no-repeat left center;
	font-size: 100%;
}
#side .s_calendarBox .side_headline {
	display: none;
}
#side .s_calendarBox .ReserveCalendarBox { 
	width: 100% !important;
	margin: 0 !important;
}
#side .s_calendarBox .ReserveCalendarBox .calendar-search__box ul {
    display: flex;
    justify-content: space-between;
    font-size: 110%;
	font-weight: bold;
	margin: 0;
	padding: 10px 10px 5px;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table { 
	width: 100%;
	border-collapse: collapse;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table thead {
    font-size: 0.75rem;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table th, 
#side .s_calendarBox .ReserveCalendarBox .calendar__table td {
    vertical-align: middle;
    text-align: center;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table th {
    border: 1px solid #999;
	border-color: #CCC;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table th:first-child {
    border-left: none;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table th:last-child {
    border-right: none;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table th.sunday {
    background: #f27579;
    color: #FFF;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table th.saturday {
    background: #779dc4;
    color: #FFF;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table thead {
    background-color: #808080;
    color: #FFF;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td {
    position: relative;
    cursor: pointer;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 32px;
    border-radius: 50%;
    border: 1px solid transparent;
    color: #6d6d6d;
	margin: auto;
	text-decoration: none;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td a:hover {
    opacity: 1 !important;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td span {
    width: 25px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 25px;
    border-radius: 50%;
    border: 1px solid transparent;
    color: #333;
	margin: auto;
	font-size: 90%;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td span.holiday {
    border: none;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td span.full {
    border: none;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td span.event {
    color: #303aea;
    background: #FFF;
    -moz-border-radius: 60px;
    -webkit-border-radius: 60px;
    border-radius: 60px;
    box-shadow: 0 0 0 3px #e37c7c;
    -webkit-box-shadow: 0 0 0 3px #e37c7c;
    -moz-box-shadow: 0 0 0 3px #e37c7c;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td.sunday span {
    color: #f27579;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td.saturday span {
    color: #779dc4;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td.today span {
    background-color: #ffa800;
    color: #FFF;

}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td .fukidashi {
    display: none;
    width: 100%;
    position: absolute;
    top: -40px;
    left: 0;
    padding: 0;
    border-radius: 5px;
    background: #f27579;
    color: #fff;
	font-weight: 500;
	font-size: 80%;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td .fukidashi:after {
    position: absolute;
    width: 0;
    height: 0;
    left: 0;
    bottom: -12px;
    margin-left: 10px;
    border: solid transparent;
    border-color: rgba(51, 204, 153, 0);
    border-top-color: #f27579;
    border-width: 6px;
    pointer-events: none;
    content: " ";
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td .fukidashi.colorGray {
    background: #808080;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td .fukidashi.colorGray:after {
    border-top-color: #808080;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table td:hover .fukidashi {
    display: block;
}
#side .s_calendarBox .ReserveCalendarBox .iconLabel {
	display: inline-block;
    width: 15px;
    height: 15px;
    border-radius: 100px;
    background: #999;
}
#side .s_calendarBox .ReserveCalendarBox .reserveBtn {
	text-align: center;
	margin-top: 10px;
}
#side .s_calendarBox .ReserveCalendarBox .reserveBtn a {
    color: #FFF;
    background: #0080EB;
    display: inline-block;
    width: 100px;
    padding: 3px;
	font-weight: bold;
	font-size: 90%;
    text-align: center;
    margin-bottom: 10px;
    text-decoration: none;
}

#side .s_calendarBox .ReserveCalendarBox .calendar__table tbody th, 
#side .s_calendarBox .ReserveCalendarBox .calendar__table tbody td {
	padding: 0;
	width: 14.285%;
	width: calc(100% / 7);
    height: auto;
    border: 1px solid #999;
	border-color: #CCC;
    font-weight: bold;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table tbody tr td:first-child {
    border-left: none;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table tbody tr td:last-child {
    border-right: none;
}
#side .s_calendarBox .ReserveCalendarBox .calendar__table tbody td.bgGray {
    background-color: #eaeaea;
}

/* カレンダー予約（ポップアップ） */
.reserve__modal-box .reserve__select-item .reserve__modal-headline {
    font-size: 129%;
    font-weight: bold;
	text-align: center;
	margin: 0 0 20px;
}
.reserve__modal-box .reserve__select-item .reserve__select-inn .reserve__modal-btn {
    display: block;
    width: 100%;
    min-width: 270px;
    padding: 10px;
    border: 1px solid;
    margin-top: 15px;
    position: relative;
	box-sizing: border-box;
    background-color: #ffa800;
    border-color: #ffa800;
    color: #FFF;
	font-weight: bold;
	text-decoration: none;
}
.reserve__modal-box .reserve__select-item .reserve__select-inn .reserve__modal-btn:after {
    font-family: FontAwesome;
    content: '\f105';
    position: absolute;
    right: 10px;
}

.course__menu-detail {
	margin: 20px 0;
}
.course__menu-detail .course__detail-inner {
	display: flex;
    justify-content: center;
    width: 100%;
    padding: 10px 15px;
    background: #ffdeb5;
	border-radius: 10px;
	box-sizing: border-box;
}
.course__menu-detail .course__detail-inner .course__menu-image {
    float: left;
    width: 200px;
    margin-right: 20px;	
}
.course__menu-detail .course__detail-inner .course__menu-image .courseImg {
	width: 100%;
    height: 150px;
    transition: all 300ms ease-out;
    position: relative;
    background-color: #ffdeb5;
}
.course__menu-detail .course__detail-inner .course__menu-image .courseImg img {
	width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: 'object-fit: cover;';
}
.course__menu-detail .course__detail-inner .course__menu-text {
	flex: 1;
}
.course__menu-detail .course__detail-inner .course__menu-text h3 {
	font-size: 1rem;
    margin-bottom: 10px;
}
.course__menu-detail .course__detail-inner .course__menu-text .price_text {
	font-size: 110%;
    margin: 10px 0;
}
.course__menu-detail .course__detail-inner .course__menu-text .price_text .price_prefix,
.course__menu-detail .course__detail-inner .course__menu-text .price_text .price_suffix {
    font-size: 80%;
}
.course__menu-detail .course__detail-inner .course__menu-text .price_text .normal_price {
    text-decoration: line-through;
}
.course__menu-detail .course__detail-inner .course__menu-text .price_text .red {
    color: #e00000;
    font-weight: bold;
    font-size: 120%;
}
.course__menu-detail.seatOnlyBox .course__detail-inner {
    display: block;
    background: #ececec;
}
.course__menu-detail.seatOnlyBox .course__detail-inner p {
    font-size: 115%;
    font-weight: bold;
}

.course__menu-box {
	border: 2px solid #333;
	padding: 15px 10px;
	margin-bottom: 15px;
}
.course__menu-box .course__menu-inner {
    display: flex;
    align-items: start;
    justify-content: center;
	margin: 15px 0 10px;
}
.course__menu-box .course__menu-image_box {
    float: left;
    width: 40%;
    margin-right: 20px;
}
.course__menu-box .course__menu-image_box .thumb img {
    width: 100%;
}
.course__menu-box .course__menu-image_box .thumb.slick img {
	width: 100%;
}
.course__menu-box .course__menu-image_box .slick-slider .prev, 
.course__menu-box .course__menu-image_box .slick-slider .next {
    position: absolute;
    top: 50% !important;
    height: 50px;
    width: 30px;
    line-height: 50px;
	background-color: rgba(0,0,0,.15);
    cursor: pointer;
    z-index: 10;
    text-align: center;
    margin: -22px 0px 0px;
}
.course__menu-box .course__menu-image_box .slick-slider .prev:before, 
.course__menu-box .course__menu-image_box .slick-slider .next:before {
    font-family: FontAwesome, sans-serif;
    display: block;
    font-size: 150%;
    color: #FFF;
}
.course__menu-box .course__menu-image_box .slick-slider .prev {
	left: 0;
}
.course__menu-box .course__menu-image_box .slick-slider .prev:before {
    content: "\f053";
} 
.course__menu-box .course__menu-image_box .slick-slider .next {
	right: 0;
}
.course__menu-box .course__menu-image_box .slick-slider .next:before {
    content: "\f054";
}
.course__menu-box .course__menu-image_box .slick-slider .slick-inner {
	position: relative;
}
.course__menu-box .course__menu-image_box .slick-slider .slick-caption {
	position: absolute;
	bottom: 0;
	background: rgba(0, 0, 0, .5);
	width: 100%;
	color: #FFF;
	padding: 5px;
	margin: 0;
}
.course__menu-box .course__menu-title {
    font-size: 1.1rem;
    font-weight: bold;
}
.course__menu-box .course__menu-inner > .txtBox {
    flex: 1;
}
.course__menu-box .course__menu-inner > .txtBox .course__menu-description {
	padding: 10px;
    background: #ebebeb;
}
.course__menu-box .course__menu-inner > .txtBox .price_text {
	font-size: 1.2rem;
    margin: 0 0 10px;
}
.course__menu-box .course__menu-inner > .txtBox .price_text .price_prefix,
.course__menu-box .course__menu-inner > .txtBox .price_text .price_suffix {
	font-size: 70%;
}
.course__menu-box .course__menu-inner > .txtBox .price_text .normal_price {
	text-decoration: line-through;
}
.course__menu-box .course__menu-inner > .txtBox .price_text .red {
	color: #e00000;
	font-weight: bold;
}
.course__menu-box .course__menu-info .info-list .course__menu-pr {
	font-size: 110%;
	margin: 10px 0;
}
.course__menu-box .course__menu-info .info-list .course__menu-pr::before {
	font-family: FontAwesome;
	content: '\f087';
	margin-right: 10px;
}
.course__menu-box .course__menu-info .course__menu-table {
	width: 100%;
	border-collapse: collapse;
}
.course__menu-box .course__menu-info .course__menu-table tr th,
.course__menu-box .course__menu-info .course__menu-table tr td {
	width: 16%;
	border: 1px solid;
	padding: 5px;
}
.course__menu-box .course__menu-info .course__menu-table tr th {
	background: #e9eef6;
}
.course__menu-box .course__menu-info .course__menu-table p {
	margin: 0;
}
.course__menu-box .course__menu-info .course__reserve-btn_box .course__reserve-btn {
	padding: 10px;
    border: 1px solid;
    width: 200px;
    text-align: center;
    display: block;
    margin: 15px auto;
    background: #ffa800;
    color: #FFF;
    border-color: #FFF;
	border-radius: 5px;
	font-size: 108%;
	text-decoration: none;
}
.course__menu-box .course__menu-info .course__reserve-btn_box .course__reserve-btn:hover {
	color: #FFF;
}
.course__menu-box .course__menu-info .courseNote {
	padding: 15px 0 10px;
}
.course__menu-box .dotLine {
	border-style: dashed;
    border-color: #999;
	margin: 1rem 0;
}

.course__menu-box .course__menu-form_title {
    line-height: 1.3;
    margin: 20px 0 10px;
    border-bottom: #CCCCCC 1px solid;
    font-size: 120%;
}
.course__menu-box .course__menu-form_title span {
    display: inline-block;
    margin: 0 0 -1px;
    padding: 0 0 7px;
    border-bottom: #000000 1px solid;
    font-weight: bold;
}
.course__menu-box .course__menu-form_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 10px;
    background-color: #f1f1f1;
}
.course__menu-box .course__form-item {
    width: calc(100% / 3 - 7px);
    margin-right: 10px;
}
.course__menu-box .course__form-item:nth-of-type(3n) {
    margin-right: 0px;
}
.course__menu-box .course__form-item input, 
.course__menu-box .course__form-item select {
    width: 100%;
}
.course__menu-box .course__form-date_box .course__form-date_item {
    color: #333;
    border: 1px solid #CCC;
    padding: 0 10px;
    font-size: 16px;
    height: 35px;
    line-height: 35px;
    cursor: pointer;
    position: relative;
    padding-left: 35px;
    font-size: 0.9rem;
    background-color: #FFF;
}
.course__menu-box .course__form-date_box .course__form-date_item::before {
    font-family: FontAwesome;
    content: "\f073";
    font-size: 18px;
    position: absolute;
    left: 10px;
    color: #CCC;;
}
.course__menu-box .course__form-date_box .course__form-date_item::after {
    font-family: FontAwesome;
    content: "\f107";
    font-size: 20px;
    position: absolute;
    right: 10px;
    color: #333;
}
.course__menu-box .course__form-item .easy-select-box {
    width: 100% !important;
    margin: 0;
}
.course__menu-box .course__form-item .easy-select-box .esb-displayer {
    color: #333;
    border: 1px solid #CCC;
    cursor: pointer;
    font-size: 0.9rem;
    background-color: #FFF;
}
.course__menu-box .course__form-item_time .easy-select-box .esb-displayer,
.course__menu-box .course__form-item_num .easy-select-box .esb-displayer {
    padding-left: 35px;
}
.course__menu-box .course__form-item_time .easy-select-box .esb-displayer::before {
    font-family: FontAwesome;
    content: "\f017";
    font-size: 20px;
    position: absolute;
    left: 10px;
    color: #CCC;
}
.course__menu-box .course__form-item_num .easy-select-box .esb-displayer::before {
    font-family: FontAwesome;
    content: "\f007";
    font-size: 20px;
    position: absolute;
    left: 10px;
    color: #CCC;
}
.course__menu-box .course__form-item .easy-select-box .esb-displayer::after {
    font-family: FontAwesome;
    content: "\f107";
    font-size: 20px;
    position: absolute;
    right: 10px;
    color: #333;
}
.course__menu-box.course__menu-detail_box .course__menu-info {
	min-height: 300px;
}

@media(max-width: 767px){
    .course__menu-detail {
    	margin: 20px 10px;
    }
    .course__menu-detail .course__detail-inner {
        display: block;
        padding: 15px;
    }
    .course__menu-detail .course__detail-inner .course__menu-image {
        float: none;
        width: 100%;
        margin: 0 0 15px;
    }
	.course__menu-detail .course__detail-inner .course__menu-image .courseImg img {
		object-fit: contain;
		font-family: 'object-fit: contain;';
	}
    .course__menu-detail .course__detail-inner .course__menu-text h3 {
        font-size: 1.1rem;
    }
    .course__menu-detail .course__detail-inner .course__menu-text .price_text {
        font-size: 1rem;
        margin: 10px 0 0;
    }
    .course__menu-box .course__menu-title {
        font-size: 1rem;
    }
	.course__menu-box .course__menu-inner {
		display: block;
	}
	.course__menu-box .course__menu-image_box {
		float: none;
		width: 100%;
	}
    .course__menu-box .course__menu-inner > .txtBox .price_text {
        font-size: 110%;
		margin: 10px 0;
    }
    .course__menu-box .course__menu-info .info-list .course__menu-pr {
        font-size: 100%;
	}
    .course__menu-box .course__menu-info .course__menu-table tr th,
    .course__menu-box .course__menu-info .course__menu-table tr td {
        width: auto;
    }
    .course__menu-box .course__form-item {
        width: 100%;
        margin-right: 0;
        margin-bottom: 10px;
    }
    .course__menu-box .course__form-item:nth-of-type(3n) {
        margin-bottom: 0;
    }
}
