/* -- Copyright ShowShanghai, All Rights Reserved. -->> */

    @font-face {
        font-family: 'source_sans_proregular';
        src: url('../font/SourceSansPro-Regular-webfont.eot');
        src: url('../font/SourceSansPro-Regular-webfont.eot?#iefix') format('embedded-opentype'),
             url('../font/SourceSansPro-Regular-webfont.woff2') format('woff2'),
             url('../font/SourceSansPro-Regular-webfont.woff') format('woff'),
             url('../font/SourceSansPro-Regular-webfont.ttf') format('truetype'),
             url('../font/SourceSansPro-Regular-webfont.svg#source_sans_proregular') format('svg');
        font-weight: normal;
        font-style: normal; }
    
    @font-face {
        font-family: 'source_sans_probold';
        src: url('../font/SourceSansPro-Bold-webfont.eot');
        src: url('../font/SourceSansPro-Bold-webfont.eot?#iefix') format('embedded-opentype'),
             url('../font/SourceSansPro-Bold-webfont.woff2') format('woff2'),
             url('../font/SourceSansPro-Bold-webfont.woff') format('woff'),
             url('../font/SourceSansPro-Bold-webfont.ttf') format('truetype'),
             url('../font/SourceSansPro-Bold-webfont.svg#source_sans_probold') format('svg');
        font-weight: normal;
        font-style: normal; }

/* FRESH CSS */

html, body, iframe { height: 100%; }

.nivo-controlNav /* remove slide show controls */ { display: none !important; }
.home-sml { width: 295px; margin: 0 10px; float: left; text-align: center; font-family: 'source_sans_probold'; display: block; }
p.top { border-top: 1px solid #333; padding-top: 15px; }
p.top-nomargin { border-top: 1px solid #333; padding-top: 15px; margin-top: 0 !important; }
p.tnote { border: 2px dotted #000000; padding: 20px; font-size: 24px; line-height:32px; }

/* BASIC STYLING */

div, html, body { margin: 0; padding: 0; }
body { color: #000; margin: 0; font-family: 'source_sans_proregular';
font-size: 18px; line-height: 22px; }
img { display: inline-block; padding: 0; }
img.float { float: left; }

a { color: #014fad; text-decoration: none; }
a:hover { color: #014fad; text-decoration: underline; }

h1,h2,h3,h4 { font-weight: normal; }

h1 { font-family: 'source_sans_probold'; font-size: 28px;
font-weight: normal; margin: 20px 0; padding: 0; line-height: 27px; }
h2 { font-family: 'source_sans_probold'; font-size: 26px;
font-weight: normal; margin: 20px 0; padding: 0; }
h3 { font-family: 'source_sans_probold'; font-size: 22px;
font-weight: normal; margin: 10px 0; padding: 0; }

h1.home, h2.home { text-align:center; font-size:24px; color:#fff; line-height:21px;
text-transform: uppercase; margin: 8px 0 2px 0; }
h1.title { text-align:center; margin: 30px 0; text-decoration: underline; font-size: 32px; line-height: 34px; }
h3.inner { text-align: center; margin: 30px 0 20px 0; }
h2.inner { text-align: center; margin: 50px 0 20px 0; }

hr { border: 0; height: 0; border-top: 1px solid rgba(0, 0, 0, 0.1);
border-bottom: 1px solid rgba(255, 255, 255, 0.2); margin: 10px 0; }
p { margin: 20px 0; /* display: inline-block; */ }
ul { padding: 0; }
li { display: inline-block; list-style-type: none; padding: 2px 0; }

/* CONTAINERS */

#container-header { text-align: center; padding: 0 0 20px 0; margin: 0; background-color: #fafafa; border-bottom: 1px solid #dddddd; /* border-top: 1px solid #000; */ }
#container-menu { width: 960px; margin:-20px auto 0 auto; /* width: 960px; margin: 0 auto; */
/* display: inline-block; */ /* border-bottom: 4px solid #00316d; */
border-top: 0px solid #270808; /* float: left; */ /* fix whitespace between container-home & menu */
background-color: #000; }

#container-home { margin: 0 auto; width: 960px; }

#container-body { float: right; width: 630px; background-color: #fff; margin:0 0 20px 0; padding:0; }
#container-body.home { float: right; width: 630px; background-color: #fff; margin:0 0 20px 0 !important; padding:0; }

#container-top { width: 630px; background-color: #fff; padding: 0; border-bottom: 4px solid #000; display: inline-block; }

#container-sidebar { float: right; width: 330px; }

#container-side-after { padding: 7px 7px 0 14px; margin: 0 14px 0 14px; 
/* border: 1px solid #eeeeee; */ background-color: #fafafa; border-top: 2px solid #333;
border-bottom: 2px solid #333; }

img.side-img { margin-left: -7px; }

.top-side-color { margin: 10px 14px 0 14px; background-color: #00316d; height: 2px; }
.bottom-side-color { margin: 0 14px 25px 14px; background-color: #00316d; height: 2px; }
.bottom-side-color.v2 { margin: 0 14px 7px 14px !important; }

.sidebar-menub { background-color:#000; width:262px; margin: 1px auto; font-size: 18px; text-transform: uppercase;  font-family: "source_sans_probold",Arial,Helvetica,sans-serif; padding: 10px 20px; }
.sidebar-menub a { color: #fff !important; }

#container-inner { width:760px; margin:0 auto; /* text-align: center; */ }
#container-seatmap { padding: 20px; background-color: #E9E9E9; width: 510px;
margin: 20px auto 0 auto; }
#container-booking { margin:10px auto 20px auto; width:410px; background-color:#E9E9E9;}

#sub-bl { background-color: #000; color:#fff; font-size: 24px; padding: 20px; }
#sub-bl h1 { margin: 0 !important; }

#container-footer { width: 920px; margin: 0 auto; display: table;
background-color: #fff; padding: 20px; }

#container-footer1, #container-footer2, #container-footer4 {
width: 290px; float: left; padding-right: 20px; }

#container-footer3 { width: 300px; float: left; }

#footer-bar { width: 960px; margin: 0 auto;
background-color: #000; border-top: 4px solid #00316d;  display: table; height: 8px; }

.footer-b1 { width: 20%; float: left; }
.footer-b2 { width: 20%; float: left; }
.footer-b3 { width: 20%; float: left; }
.footer-b4 { width: 20%; float: left; }
.footer-b5 { width: 20%; float: left; }

#footer-bar a { /* color: #fff; */ font-weight: bold; text-align: center; }

#container-copyright { clear: left; text-align: center;
border-top: 1px solid #e2e2e2; padding: 30px; background-color: #fff; }

button.sbutton,
button.submit-button {
    background: none repeat scroll 0 0 #D82133;
    color: #FFFFFF;
    display: block !important;
    font-size: 20px !important;
    font-weight: bold;
	height: 50px;
    line-height: 40px;
    text-align: center;
    width: 200px;
    margin: 0 auto !important; border: 0 !important; }

button.sbutton.s1 { margin: 0 0 -10px 110px !important; float:left; display: inline-block !important; }
button.sbutton.s2 { margin: 0 0 -10px 5px !important; display: inline-block !important; }
button.sbutton.s3 { margin-bottom: -10px; }

button.sbutton:hover,
button.submit-button:hover { background-color: #ED2135; }

.copy-alert { font-size: 15px !important; text-align: justify; }

/* menu */

/* grub menu over rides */

#gruemenu { width:630px; float:right; border-bottom: 4px solid #00316d; }

#gruemenu.grue_244 ul > li > ul > li > a { font-family: 'source_sans_proregular' !important; }

#gruemenu.grue_244 ul { float:right; width:630px; }

#gruemenu.grue_244 ul li.item-101,
#gruemenu.grue_244 ul li.item-326,
#gruemenu.grue_244 ul li.item-334 { text-align:center; }

#gruemenu.grue_244 ul li.item-101 /* home */ {  width: 140px; text-align: center; }
#gruemenu.grue_244 ul li.item-328 /* show guide */ {  width: 180px; text-align: left; }
#gruemenu.grue_244 ul li.item-355 /* massage */ {  width: 180px; text-align: center; }
#gruemenu.grue_244 ul li.item-334 /* contact */ {  width: 130px; text-align: center; }

#gruemenu.grue_244 ul li ul li { width: 180px !important; text-align:left; }

#gruemenu.grue_244 ul ul ul::after /* submenu arrow */ { left: 38px !important; }
#gruemenu.grue_244 ul ul ul /* submenu */ { /* padding-left: 0 !important; */ margin-left: -20px; margin-top: 4px; }

/* quick hacks */

.ticket-page-fix { margin:0 auto; width: 440px; }
.ticket-page-fix .lfloat { float:left; }
img.f220 { width: 220px !important; }

/* -- Custom Form CSS -- */

.inner-info-inner /* without box, no padding, time & number */ {
font-family: 'source_sans_probold',sans-serif; font-size: 22px; line-height: 26px;
text-align:center; clear: both; 
background-color: #f3f3f3;
    border-top: 1px solid #e9e9e9; border-left: 1px solid #e9e9e9; border-right: 1px solid #e9e9e9;
    border-bottom: 1px solid #000; box-sizing: border-box;
    padding: 10px;
    width: 100%; margin-top: 30px; }
.inner-info-inner.red { background-color: #ff5454 !important;
    background-image: linear-gradient(#ff5454, #d12121) !important; color: #fff !important; border-top: none !important; border-left: none !important;
border-right: none !important; }

button.sbutton,
button.submit-button {
    background: none repeat scroll 0 0 #D82133;
    color: #FFFFFF;
    display: block !important;
    font-size: 20px !important;
    font-weight: normal !important;
	height: 50px;
    line-height: 40px;
    text-align: center;
    width: 200px;
    margin: 0 auto !important; border: 0 !important; }
.btn { text-shadow: none !important; }
button.submit-button span { font-family: source_sans_probold; font-weight: normal; }

button.sbutton.s1 { margin: 0 0 -10px 110px !important; float:left; display: inline-block !important; }
button.sbutton.s2 { margin: 0 0 -10px 5px !important; display: inline-block !important; }
button.sbutton.s3 { margin-bottom: -10px; }

button.sbutton:hover,
button.submit-button:hover { background-color: #ED2135; }

.copy-alert { font-size: 15px !important; text-align: justify; }

.fox-row .fox-column /* fix */ { min-height: 1px !important; }

/*
*** Custom Fox Contact Form Layout
*** *** The Show Form Part
*/

.btn.btn-success.submit-button { margin-top: -20px !important; }

div#fox-container-m164 .fox-row .fox-column6 { width: 48.6188% !important; }
div#fox-container-m164 .fox-row .fox-column:first-child { margin-left: 0 !important; }
div#fox-container-m164 .fox-row .fox-column { float: left !important; margin-left: 2.76243% !important; }

div.fox-container .btn {
    background-color: #FF5454 !important;
	background-image: linear-gradient(#FF5454, #D12121) !important; }
div.fox-container .btn:hover {
background-position: 0 !important; background-color: #D12121 !important; background-image: linear-gradient(#FF1717, #D12121) !important; }
div.fox-container .btn span { color: #fff !important; }

#booking-form { margin: 0 auto; width:390px; }
#booking-form-wide { width: 100%; display: inline-block; }
#contact-form { margin: 0 auto; width:500px; }

.fox-container-module { background-color: #f3f3f3; float:left; border: 1px solid #e9e9e9; padding:10px 20px;
width: 100%; box-sizing: border-box; /* required to center form */ margin-bottom: 20px; }

.alert-success { /* height:920px; display: table-cell; vertical-align: bottom; */
background-color:#f3f3f3 !important; color:#000 !important; }

.fox-container .alert { padding: 0 !important; border: 0 !important; }

ul.fox-messages { background-color:#fff; padding:14px !important; font-size:18px !important; text-align:center; line-height: 28px !important;
border: 1px solid #FF0000; }
.alert-error { color: #FF0000 !important; font-family: source_sans_probold; font-weight: normal; }
.alert { text-shadow: none !important; }
ul.fox-messages h1 { color:#EB0000 !important; font-family: source_sans_probold; font-weight: normal; font-size: 28px; margin-top: 10px !important; }
p.check-email { font-size: 24px; word-wrap: break-word; }

.fox-container .alert .close { display: none !important; }

.fox-container .fox-form-stacked .controls { float: none !important; }
.fox-container .fox-form-stacked .control-label { float: none !important; width: 100% !important; }

.fox-container input,
.fox-container select, /* Standard select used as fallback under some circumstances */
.fox-container .fox-form-stacked .fox-item-submit .controls,
.fox-container .fox-form-stacked .fox-item-captcha .controls,
.fox-container .fox-form-stacked .fox-item-checkbox .controls,
.fox-container .fox-form-stacked .fox-item-newsletter .controls,
.fox-container .fox-form-stacked .fox-item-attachments .controls,
.fox-container .fox-form-stacked .fox-item-html-fields .controls
{ width: 100% !important; }
.fox-container textarea { width: 100% !important; }

.fox-container input[type="text"],
.fox-container input[type="email"],
.fox-container select,
.fox-container .chzn-container-single .chzn-single
{ font-size: 18px; height: 36px !important; line-height: 36px !important; color: #000 !important; border: 1px solid #e9e9e9 !important; }

.fox-container textarea { font-size: 18px; color: #000 !important; border: 1px solid #e9e9e9 !important; }

.fox-container .chzn-container .chzn-results li.active-result { font-size: 18px; }

.fox-container .control-group { margin-bottom: 10px !important; }
.fox-container .control-label { font-weight: bold; }

/* fox date picker good old style */

.xdsoft_datetimepicker { box-shadow: none !important; padding: 0 !important; }
.xdsoft_datetimepicker .xdsoft_datepicker { width: 100%; margin: 0 !important; }

.xdsoft_datetimepicker .xdsoft_calendar td,.xdsoft_datetimepicker  .xdsoft_calendar th {
	font-size: 18px !important;
	padding: 3px !important;
	font-weight: normal !important;
	color: #000 !important; box-sizing: border-box; }

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default,
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div.xdsoft_current{
	background: #FFE401 !important; }

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_today{ color:#BB0008 !important; }

.xdsoft_datetimepicker .xdsoft_calendar td:hover,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div:hover{
    background: #424242 !important; }

.xdsoft_datetimepicker .xdsoft_label { font-size: 18px !important; }

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default,
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div.xdsoft_current{
	background: #FFE401 !important;
	box-shadow: #000 0px 1px 3px 0px inset !important; }

.xdsoft_datetimepicker .xdsoft_month { width:140px !important; }

.xdsoft_datetimepicker .xdsoft_year { width:106px !important; }

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div { font-size: 18px !important; }
