﻿@charset "utf-8";

body, div, pre, p, ul, li, h1, h2, h3, h4, h5, h6, dl, dt, dd, blockquote, form, fieldset, table, th, td {
	margin: 0;
	padding: 0;
	list-style-type:none;
}
a {
	display:inline-block;
	padding:0px;
}
img {
	border: none;
	vertical-align: bottom;
}

.clearfix:after {
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	content: ".";
	line-height: 0;
}
.clearfix {
	display: inline-table;
	min-height: 1%;
}
/* for macIE \*/
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
	clear:both;
}


/*///////////////////////////////////////////////
layout
///////////////////////////////////////////////*/

body {
	position: relative;
	background: #FFF;
	text-align: center;
	color: #353535;
	font-family:Arial;
	font-size: 16px;
	-webkit-text-size-adjust: none;
}

#wrapper {
	top: 0px;
	width: 100%;
}
#wrapper.searchOpen {
	display: none;
}

.red {color:#F00;}
.blue {color:#00C}
.bold{font-weight:bold;}
.ft85{ font-size:85%;}
.txtC{ text-align: center;}

.bt_search { margin-bottom:15px; }

/*---------------header----------------*/
header {
	overflow:hidden;
	background:url(../img/top/header_bg.jpg) left bottom repeat-x;
    margin: 0 0 15px;
    height: 61px;
}
header h1.logo img {
	margin: 0;
	position: absolute;
	top: 0;
	left: 1%;
	/*width: 22.5%;*/
	z-index: 3;
	height: 65px;
}
header h1.logo a, header div.bt a {
    display: inline;
}
header p#header_txt {
	color: #FFF;
	float: left;
	line-height: 1.3em;
	margin-left: 82px;
	margin-top: 13px;
	margin-right: 0px;
	font-size: 11px;
	letter-spacing: -0.1em;
	text-shadow: none;
	text-align: left;
}
@media screen and (min-width: 480px) {
	header p#header_txt { font-size: 11px; letter-spacing: normal; }
}
header div.bt {
	margin-bottom: 10px;
	margin-right: 2px;
	text-align: right;
}
header div.bt img {
	/*width: 19%;*/
	margin: 5px 0 -6px 0;
	height: 45px;
}
#main {
	display:block;
	position: relative;
	width: 100%;
	height:110px;
	margin: 0 auto 1px;
	text-align: center;
	overflow:hidden;
}

#topicon {
	display:block;
	position: relative;
	width: 100%;
	height: 85px;

	text-align: center;
	overflow:hidden;
}
#topicon li {
	float:left;
	margin-top:5px;
	margin-left:12px;
}

#yoyaku {margin-bottom:15px;}
.padto15px{ padding-top:15px;}
.padto20px{ padding-top:20px;}


/*///////////////////////////////////////////////
searchform
///////////////////////////////////////////////*/

article dl dd.full select, article dl dd.full input {
    width: 100%;
}
article select {
    font-size: 14px;
}
input, select {
    vertical-align: middle;
}

nav#TopMenu .ttl {
	color: #FFFFFF;
	font-size: 16px;
	padding: 5px;
	background-attachment: scroll;
	background-color: #b50700;
	background-repeat: repeat;
	background-position: center top;
}

nav#TopMenu .ttl_01 {
    background: url("../img/search.png") no-repeat scroll left center transparent;
    padding-left: 28px;
	text-align: left;
}

section {
    background: none repeat scroll 0 0 #FFFFFF;
    padding-bottom: 10px;
}

form {
    background: none repeat scroll 0 0 transparent;
    border: 0 none;
    font-size: 100%;
    margin: 0;
    outline: 0 none;
    padding: 0;
    vertical-align: baseline;
    text-align: left;
}

article {
    background: none repeat scroll 0 0 #818181;
    border-radius: 6px 6px 6px 6px;
    color: #FFFFFF;
    margin: 5px;
    padding: 10px;
}
article {
    display: block;
}

article h1 {
	border-radius: 3px 3px 3px 3px;
	margin-bottom: 3px;
	padding: 4px 5px 3px;
	background-attachment: scroll;
	background-color: #333;
	background-image: none;
	background-repeat: repeat;
	background-position: 0 0;
}

/*///////////////////////////////////////////////
home
///////////////////////////////////////////////*/

#home {
	width: 100%;
	margin: 0 auto;
	text-align: left;
}

h2.ttl,
.toppage{
	margin-top:0px;
	font-size: 16px;
	font-weight: normal;
	line-height: 33px;
	color: #fff;
	background:url(../img/bar_bg.gif) repeat-x bottom;
	border-top:solid 1px #d24b5a;
	border-bottom:solid 1px #936;
}
h2.ttl03,
.toppage{
	margin-top:0px;
	font-size: 16px;
	font-weight: bold;
	line-height: 33px;
	color: #fff;
	background:url(../img/bar_bg.gif) repeat-x bottom;
	border-top:solid 1px #d24b5a;
	border-bottom:solid 1px #936;
	text-align: left;
}
.toppage{
	text-align:left;
	margin-top:20px;
}
.toppage a{
	color:#FFF;
	text-decoration:none;
}
.section {padding: 0 0 20px;}

/* campaign */
section.campaign {
	background: #f7f5ef;
	text-align: left;
}

section.campaign ul li {
	padding: 10px 10px;
	border-top: dotted 1px #666;
}

section.campaign ul li:first-of-type  {	border-top: none;}
section.campaign ul li a {
	width: 100%;
	color: #666;
	text-decoration: none;
}
section.campaign ul li a span.img {
	display: table-cell;
	width: 148px;
	vertical-align: top;
}
section.campaign ul li a span.img img {border: solid 1px #E1E1E1;}
section.campaign ul li a span.txt {
	display: table-cell;
	vertical-align: top;
	font-size: 12px;
	line-height: 1.2;
	font-weight: bold;
	padding-top:5px;
}
section.campaign ul li a span.tenpo {
	display: block;
	margin: 8px 0 0 0;
	font-size: 12px;
	line-height: 1.0;
	font-weight: normal;
}
section.campaign ul li a span.price {
	display: block;
	margin: 8px 0 0 0;
	font-size: 22px;
	line-height: 1.0;
	color:#F00;
}

/* class */
section.class {
	background: #fff;
	text-align: left;
}

section.class ul li {
	padding: 10px 10px 0 10px;
	border-top: dotted 1px #fff;
}
section.class ul li:first-of-type  {
	border-top: none;
}
section.class ul li a {
	width: 100%;
	color: #666;
	text-decoration: none;
}
section.class ul li a span.img {
	display: table-cell;
	width: 145px;
	vertical-align: top;
}
section.class ul li a span.img img {
	border: solid 1px #fff;
}

section.class ul li a span.txt {
	display: table-cell;
	vertical-align: top;
	font-size: 12px;
	line-height: 1.2;
	font-weight: bold;
	padding-top:5px;
}

section.class ul li a span.tenpo {
	display: block;
	margin: 8px 0 0 0;
	font-size: 12px;
	line-height: 1.0;
	font-weight: normal;
}

section.class ul li a span.price {
	display: block;
	margin: 8px 0 0 0;
	font-size: 20px;
	line-height: 1.0;
	color:#F00;
}

.next_g li a,.next_g li strong {
	display: block;
	padding: 16px 0px 16px 15px;
	border-bottom: 1px solid #b27f7f;
	background: url("../img/next.png") right center no-repeat #fff;
	text-decoration: none;
	font-weight: bold;
	color: #bb0a0a;

}
.next_g li strong{background-image:none;}
.next_g li p{
	background-color:#FFF;
	padding:5px 15px;
	color:#656;
}
.basicMenu li a,
.basicMenu li strong {
	background:url(../img/next.png) right #FFF no-repeat;
	display: block;
	padding: 14px 0px 12px 20px;
	border-bottom: 1px solid #9c9c9c;
	text-decoration: none;
	font-weight: bold;
	color: #bb0a0a;
}
.basicMenu li.cc strong {
	display: block;
	padding: 11px 10px 10px 48px;
	border-bottom: 1px solid #9c9c9c;
	background:url(../img/next.png) right #FFF no-repeat;
	text-decoration: none;
	font-weight: bold;
	color: #666;
}
.basicMenu li.text {
	display: block;
	padding: 11px 10px 10px 48px;
	border-bottom: 1px solid #9c9c9c;
	text-decoration: none;
	color: #555;
}
.basicMenu ul li a {
	display: block;
	padding: 11px 30px 10px 20px;
	border-bottom: 1px solid #d9d8d8;
	background:url(../img/next2.png) right no-repeat #fff;
	text-decoration: none;
	color: #666;
}
.basicMenu ul li:last-of-type a{
	border-bottom: 1px solid #f2edee;
}
.basicMenu ul li:nth-child(odd) a{
	background-color: #f4f4f4;
}
.basicMenu ul li:nth-child(even) a{
	background-color: #fff5f8;
}
.basicMenu ul li p {
	display: block;
	padding: 11px 30px 10px 48px;
	border-bottom: 1px solid #d9d8d8;
	text-decoration: none;
	color: #666;
}
.basicMenu ul {
	padding: 0 10px;
}

/*---------------footer----------------*/
footer {
	background: url(../img/top/foot_logo.jpg) center top no-repeat;
	background-size: 90%;
	background-color: white;
	padding-top: 30px;
}
footer p {
	text-align: center;
	border-bottom: solid 10px #cd0305;
	font-size:11px;
	margin-top:10px;
}
#foot_menu {
	background-color: white;
    border: none;
    border-top: solid 1px #969696;
    -webkit-border-radius: 0px;
    text-align: left;
    margin: 5px 0 0;
    padding-bottom: 15px;
    font: 14px/1.231 'ヒラギノ角ゴ pro W3', "Hiragino KaKu Gothic Pro", Osaka, sans-serif;
}
#foot_menu li {
	padding: 0px;
	background: #fdfaf9 url(../img/top/icon_list_foot.jpg) 10px center no-repeat;
	background-size: 5%;
	border-top: none;
	border-bottom: solid 1px #bebcbb;
	-webkit-border-radius: 0px;
}
#foot_menu li a {
	text-decoration: none;
	padding: 13px 40px;
	margin: 0px;
	display: block;
	color: #767676;
	font-weight: bold;
	background: url(../img/top/icon/icon_arrow.gif) 99% center no-repeat;
	background-size: 3%;
}


/*///////////////////////////////////////////////
search
///////////////////////////////////////////////*/

#searchBox {
	padding:0 0 9px;
	text-align: left;
	background: #e2e1e1;
	height: 420px;
	overflow: hidden;
    visibility: hidden;
    z-index: 0;
	position: absolute;
    left: 0px;
	top: 0px;
	width: 100%;
    min-height: 420px;
    -webkit-transition-duration: 300ms;
    -webkit-transition-property: -webkit-transform;
    -webkit-transform: translateX(0%);
}
#searchBox[selected="true"] {
	height: auto;
    visibility: visible;
    z-index: 1;
}

#searchBox {
	margin: 0;
	text-align: left;
}
#searchBox .close {
	position: absolute;
	top: 6px;
	right: 10px;
}

#searchBox h2 {
	margin: 0px;
	font-size: 16px;
	font-weight: bold;
	line-height: 37px;
	color: #fff;
	background:url(../img/bar_bg.gif) repeat-x bottom;
	border-top:solid 1px #d24b5a;
	border-bottom:solid 1px #936;
}

.searchWrap {
	width: 320px;
	margin: 0 auto;
}

#search {
	margin: 0;
	padding: 0 7px;
	background: #e2e1e1;
}
#search .section {
	margin: 9px 0 0;
	padding: 6px 4px 15px;
	border: 1px solid #b2b2b2;
	background: #FFFFFF; /* old browsers */
	background: -moz-linear-gradient(top, #FFFFFF 2%, #FFFFFF 97%, #EAEAEA 100%); /* firefox */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(2%,#FFFFFF), color-stop(97%,#FFFFFF), color-stop(100%,#EAEAEA)); /* webkit */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFFFFF', endColorstr='#EAEAEA',GradientType=0 ); /* ie */
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	text-align: left;
}

#search dl {
	margin: 10px 8px;
	border-bottom: dotted 1px #a8a7a7;
}
#search dl dt {
	padding: 0 0 4px 0;
	font-weight: bold;
	color: #18566d;
	line-height: 1.1;
}
#search dl dd {
	padding: 0 0 10px 0;
	line-height: 1.2;
}
#search .narrow dt {
	margin: 0 0 8px;
	padding: 0;
	text-indent: 28px;
	line-height: 23px;
	background: url(../img/common/ico_open.gif) left 0 no-repeat;
}
#search .narrow dt.open {
	background: url(../img/common/ico_close.gif) left 0 no-repeat;
}

#search .narrow ul {
	margin: 0;
}
#search .narrow ul li {
	display: inline-block;
	width: 110px;
	padding: 0 0 6px;
	font-size: 14px;
	line-height: 1.1;

}
#search .seat dt,
#search .seat dd {
	display: inline-block;
}

#search dl.data dt .error {
	display: block;
	padding: 4px 0 0;
	text-indent: 0;
	font-size: 14px;
	line-height: 1.1;
	font-weight: normal;
	color: #ff0000;
}
#search dl.data dd .error {
	display: block;
	padding: 0 0 4px;
	font-size: 14px;
}

#search p.btn {padding: 5px 0 0;}
#search .sizeL {width: 263px;}
#search select {
	margin-left: 0;
	font-size: 14px;
}
#search .place {width: 270px;}

.searchMenu li a,
.searchMenu li strong {
	display: block;
	padding: 11px 10px 10px 20px;
	border-bottom: 1px solid #9c9c9c;
	border-top: 1px solid #9c9c9c;
	background: url("../img/next.png") right center no-repeat #fff;
	text-decoration: none;
	font-weight: bold;
	color: #bb0a0a;
	text-align:left;
}
.searchMenu li span {
	display: block;
	padding: 11px 30px 10px 48px;
	border-bottom: 1px solid #d9d8d8;
	background: url("../img/ico_next_g.gif") right center no-repeat #FFFFFF;
	text-decoration: none;
	font-weight: bold;
	color: #666;
}
.searchMenu ul li a {
	display: block;
	padding: 11px 30px 10px 48px;
	border-bottom: 1px solid #d9d8d8;
	background: url("../img/ico_next_g.gif") right center no-repeat #FFFFFF;
	text-decoration: none;
	color: #666;
}
.searchMenu ul li :last-of-type a{
	border-bottom: 1px solid #9c9c9c;
}
.searchMenu ul li :nth-child(odd) a{
	background-color: #feffcd;
}
.searchMenu ul li :nth-child(even) a{
	background-color: #f8edd5;
}

/*---- PopupMenu (Menu) ----*/
#PopupMenu {
	background: #fff;
    position: absolute;
    top: 35px;
    left: 0;
    width: 96%;
    overflow: hidden;
    display: none;
	padding: 0 2%;
	display: none;
	z-index: 100;
}
#PopupMenu #menuBox {
    background: #e2e1e1 none repeat scroll 0 0;
    text-align: left;
}
#PopupMenu #menuBox {
    margin: 0;
    text-align: left;
}
#PopupMenu #menuBox .close {
    position: absolute;
    right: 12px;
    top: 2px;
}
#PopupMenu #menuBox h2 {
    background: rgba(0, 0, 0, 0) url("../img/bar_bg.gif") repeat-x scroll center bottom;
    border-bottom: 1px solid #993366;
    border-top: 1px solid #d24b5a;
    color: #ffffff;
    font-size: 16px;
    font-weight: bold;
    line-height: 37px;
    margin: 0;
}
#PopupMenu #menuBox img {
    border: medium none;
    vertical-align: bottom;
}
#PopupMenu div.section {
    margin: 9px 0 0;
	padding: 6px 4px 15px;
	border: 1px solid #b2b2b2;
	background: #FFFFFF; /* old browsers */
	background: -moz-linear-gradient(top, #FFFFFF 2%, #FFFFFF 97%, #EAEAEA 100%); /* firefox */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(2%,#FFFFFF), color-stop(97%,#FFFFFF), color-stop(100%,#EAEAEA)); /* webkit */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFFFFF', endColorstr='#EAEAEA',GradientType=0 ); /* ie */
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	text-align: left;
}
#PopupMenu .next_g {
	border: medium none !important;
    font-size: 100%;
	margin: 0;
    padding: 0;
}
#PopupMenu .next_g li {
	border: medium none !important;
    font-size: 100%;
    margin: 0;
    padding: 0;
    width: 100%;
}
#PopupMenu .next_g li a {
    background: #ffffff url("../img/next.png") no-repeat scroll right center;
    border-bottom: 1px solid #b27f7f;
    color: #bb0a0a;
    display: block;
    font-weight: bold;
    padding: 16px 0 16px 15px;
    text-decoration: none;
    margin: 0;
}

.menuWrap {
	width: 320px;
	margin: 0 auto;
}

#menu {
	margin: 0;
	padding: 0 7px;
	background: #e2e1e1;
}
#menu .section {
	margin: 9px 0 0;
	padding: 6px 4px 15px;
	border: 1px solid #b2b2b2;

	background: #FFFFFF; /* old browsers */
	background: -moz-linear-gradient(top, #FFFFFF 2%, #FFFFFF 97%, #EAEAEA 100%); /* firefox */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(2%,#FFFFFF), color-stop(97%,#FFFFFF), color-stop(100%,#EAEAEA)); /* webkit */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFFFFF', endColorstr='#EAEAEA',GradientType=0 ); /* ie */

	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	text-align: left;
}

#menu dl {
	margin: 10px 8px;
	border-bottom: dotted 1px #a8a7a7;
}
#menu dl dt {
	padding: 0 0 4px 0;
	font-weight: bold;
	color: #18566d;
	line-height: 1.1;
}
#menu dl dd {
	padding: 0 0 10px 0;
	line-height: 1.2;
}
#menu .narrow dt {
	margin: 0 0 8px;
	padding: 0;
	text-indent: 28px;
	line-height: 23px;
	background: url(../img/common/ico_open.gif) left 0 no-repeat;
}
#menu .narrow dt.open {	background: url(../img/common/ico_close.gif) left 0 no-repeat;}

#menu .narrow ul {margin: 0;}
#menu .narrow ul li {
	display: inline-block;
	width: 110px;
	padding: 0 0 6px;
	font-size: 14px;
	line-height: 1.1;

}
#menu .seat dt,
#menu .seat dd {display: inline-block;}

#menu dl.data dt .error {
	display: block;
	padding: 4px 0 0;
	text-indent: 0;
	font-size: 14px;
	line-height: 1.1;
	font-weight: normal;
	color: #ff0000;
}
#menu dl.data dd .error {
	display: block;
	padding: 0 0 4px;
	font-size: 14px;
}

#menu p.btn {padding: 5px 0 0;}
#menu .sizeL {width: 263px;}
#menu select {
	margin-left: 0;
	font-size: 14px;
}
#menu .place {width: 270px;}
p.top20{margin-top:20px;}
/* kaiteki */
section.kaiteki {
	background: #fff;
	text-align: left;
}

section.kaiteki ul li {
	padding: 10px 10px 0 10px;
	border-top: dotted 1px #fff;
	border-bottom:solid 1px #CCC;
}
section.kaiteki ul li:first-of-type  {	border-top: none;}
section.kaiteki ul li {
	width: 100%;
	color: #666;
	text-decoration: none;
}
section.kaiteki ul li span.img {
	display: table-cell;
	width: 160px;
	vertical-align: top;

}
section.kaiteki ul li span.img img {
	border: solid 1px #fff;
	margin-bottom:5px;
}
section.kaiteki ul li span.txt {
	display: table-cell;
	vertical-align: top;
	font-size: 14px;
	line-height: 1.2;
	padding-top:5px;
}
section.kaiteki ul li span.tenpo {
	display: block;
	margin: 8px 0 8px 0;
	font-size: 12px;
	line-height: 1.0;
	font-weight: normal;
}
.section p.kaiteki,
.section p.privacy{
	padding:15px 10px 10px 10px;
	font-size:14px;
	line-height:1.2em;
	letter-spacing: 0.2em;
}
/*FAQ*/
.fap_q,.fap_a{
	padding:10px 10px 15px 43px;
	margin-top:15px;
	font-size:14px;
}
.fap_q{background:url(../img/faq_q.png) left top no-repeat;}
.fap_a{background:url(../img/faq_a.png) left 8px no-repeat #eFeefF;}
.pr_txt{
	border: dotted 5px #F90;
	margin:10px 20px;
	padding:10px 15px;
	font-size:14px;
	line-height:1.3em;
	letter-spacing:0.2em;
}
.kinkyu{
	background:#FFC;
	font-size:12px;
	text-align:left;
	padding:5px 8px;
	margin-bottom:3px;
}

.botnset{margin: 0 10px; color: rgba(0, 0, 0, .9)}

/*TVCM*/
.cm dt{
	padding:5px 10px;
	background-color:#999;
	margin-top:15px;
	color:#FFF;
}
.cm dd{
	text-align:center;
	padding:6px;
}










ul.btn-cartype li a {
	color: #333333;
	display: block;
	text-decoration: none;
	border: none;
	margin: 0;
}


ul.btn-cartype li a img{
	pointer-events: none;
}



/* 白枠グレーボタン */
ul.btn-cartype {
	text-align: left;
	margin-left: 5px;
	margin-right: 1px;
	margin-top:5px;
}

ul.btn-cartype li {
	background:	-webkit-gradient(linear, left top, left bottom, from(#FFFFFF), to(#EEEEEE)); /* Safari,Google Chrome用 */
	background:	-moz-linear-gradient(top, #FFFFFF, #EEEEEE); /* Firefox用 */
	background:	  -o-linear-gradient(top, #FFFFFF, #EEEEEE); /* Opera用 */
	background-size: inherit;
	-webkit-box-shadow: 0px 1px 1px 1px #CCCCCC; /* Safari,Google Chrome用 */
	-moz-box-shadow: 0px 1px 1px 1px #CCCCCC; /* Firefox用 */
	-o-box-shadow: 0px 1px 1px 1px #CCCCCC; /* Opera用 */
	box-shadow: 0px 1px 1px 1px #CCCCCC;
	border: 3px solid #FFFFFF;
	width: 30%;
	margin: 0px 3px 6px;
	padding: 0;
	display: inline-table;
	position: relative;
	text-align: center;
}

ul.btn-cartype li a dl { margin: 0; }

ul.btn-cartype li a dl dt {
	font-size: 78.6%;
	text-align: left;
	color: #333333;
	margin-top: 3px;
	margin-left: 2px;
}

ul.btn-cartype li a dl dt.txt-length {
	letter-spacing: -0.1em;
}

ul.btn-cartype li a dl dd { font-size: 71.5%; }

ul.btn-cartype li a dl dd.price {
	text-align: right;
	color: #c60000;
	margin-right: 2px;
	margin-bottom: 1px;
}

ul.btn-cartype li a dl dd.price span { font-size: 121.4%; }

ul, ol, dl, li, dt, dd, p,
section, figure {
 margin: 0;
 padding: 0;
 font-size: 100%;
}

.camtxt {
	display: block;
	font-size: 12px;
	line-height: 1.2;
	margin: 3px 0 0;
}
.camtxt_red {
	display: block;
	font-size: 12px;
	line-height: 1.2;
	margin: 3px 0 0;
	color: #F00;
}

#txt_user_name {
    text-align: right;
    line-height: 18px;
    padding-right: 5px;
    margin-bottom: 7px;
    background-color: #eeeeee;
    font-size: 11px;
    display: none;
}

#jwing_header { line-height: 0!important; height: 50px; border-top: 5px solid #a60000; border-bottom: 1px solid #a60000; margin-bottom: 5px; }
#jwing_header .flLeft { margin: 9px 5px; float:left; }
#jwing_header #login_btn { padding: 0; margin: 5px 2px; float:right; height: 40px; max-width: 70px; }
#jwing_header #login_btn img { height: 100%; margin: 0; }
#jwing_footer { padding:5px 0; color:#fff; font-size:8px; background-color:#a60000; margin-top:20px; text-align: center; }