/*
 Theme Name: Alpine
 Theme URI: http://www.creative-ispiration.com/themes/alpine/
 Description: Responsive One Page HTML5/CSS3 Parallax Site Template
 Version: 1.0
 Author: Creative-Ispiration
 Author URI: http://themeforest.net/user/creativeispiration
 */

/* ##### GENERAL CLASS ##### */
*, *:after, *::before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html, body {
	height: 100%;
	width: 100%;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","ＭＳ Ｐゴシック","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
}

body {
	color: #1B152F;
	line-height: 1.4;
	
}
a:link,
a:visited {
	color: #1B152F;
	text-decoration: underline;
}
a:focus {
	outline: none;
	text-decoration: none;
	color: #222;
}
a:hover {
	text-decoration: none;
	color: #222;
}
iframe {
	border: 0;
}
p {
	margin: 0;
}
p.lead {
	color: #7c7c7c;
}
.no-margin{ margin:0;}

h1, h2, h3, h4, h5, h6, .section-title, .form-group label {
}
ul {
	list-style-type: none;
	margin: 15px 0 0;
	padding: 0;
	font-size: 80%;
	line-height: 1.4;
}



blockquote {
	border-color: #dedede;
}
/* -----------------------------------------------------------------------------
** clearfix
----------------------------------------------------------------------------- */
.clearfix {
	overflow: hidden;
	}
	
.clearfix:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
	overflow: hidden;
	}
/*\*/
* html .clearfix {
	height: 1em;
	overflow: visible;
	}
/**/




.mt0 {
	margin-top: 0px !important;
}
.mt5 {
	margin-top: 5px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt15 {
	margin-top: 15px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt50 {
	margin-top: 50px !important;
}
.pb0 {
	padding-bottom: 0px !important;
}
.pb5 {
	padding-bottom: 5px !important;
}
.pb10 {
	padding-bottom: 10px !important;
}
.pb15 {
	padding-bottom: 15px !important;
}
.pb20 {
	padding-bottom: 20px !important;
}
.pb30 {
	padding-bottom: 30px !important;
}
.pb40 {
	padding-bottom: 40px !important;
}
.pb50 {
	padding-bottom: 50px !important;
}
.pb70 {
	padding-bottom: 60px !important;
}
.pb70 {
	padding-bottom: 70px !important;
}


.tc {
	text-align: center !important;
}





/* wrapper
----------------------------------------------------------*/
#wrapper {
	width: 1100px;
	margin: 0 auto;
	overflow: visible;
	position: relative;
}


/* footer
----------------------------------------------------------*/
#footer {
	background:url(../img/bg_footer.png) left top repeat;
	font-size: 80%;
	text-align: center;
	color: #7f4b15;
	padding: 12px;
	line-height: 1;
}
#footer a {
	color: #7f4b15;
	text-decoration: none;
	
}



/* body
----------------------------------------------------------*/
body {
	background:url(../img/bg.gif) left top repeat;
}




/* menu
----------------------------------------------------------*/
#menu {
	width: 912px;
	overflow: visible;
	margin: 0 auto;
}
#menu h1 {
	float: left;
	vertical-align: top;
	margin: -42px 20px 0;
}
#menu ul {
	float: left;
	vertical-align: top;
	margin-top: 44px;
	background: url(../img/line01.gif) right top no-repeat;
	padding-right: 2px;
}
#menu ul li {
	float: left;
	background: url(../img/line01.gif) left top no-repeat;
	padding: 0 0 0 2px;
}

/* social
----------------------------------------------------------*/
#social {
	height: 50px;
	padding: 14px 50px 0;
	position: absolute;
	top: 0;
	right: 0;
}
#social div.fb-like {
	float: right;
	width: 130px;
	text-align: right;
	margin-left: 10px;
	padding-right: 10px;
	overflow: visible;
}
#social div.twitter {
	float: right;
	width: 71px;
	overflow: visible;
	padding-top: 2px;
}
/*facebookのコメントが切れるので対処*/
#social div.facebook iframe,
#social .fb-like iframe,
#social .item-facebook-like iframe {
max-width: none !important;/*こちらを優先*/
z-index: 9999;
}



/* contents
----------------------------------------------------------*/
#contents {
	width: 1100px;
	position: relative;
	margin: 0 auto;
	padding-top: 50px;
}


/* frame
----------------------------------------------------------*/
#frame {
	width: 1000px;
	position: relative;
	margin: 0 auto;
	overflow: visible;
}
#index #frame {
	background: url(../img/frame_index.gif) left top no-repeat;
	height: 1000px;
}
#under #frame {
	background: url(../img/frame_mdl.gif) left top repeat-y;
}
#under #frame #menu {
	background: url(../img/frame_top.gif) left top no-repeat;
	width: 1000px;
	padding: 0 44px;
}
#under #frame #page {
	background: url(../img/frame_btm.gif) left bottom no-repeat;
}



/* index
----------------------------------------------------------*/
#index #frame #copy {
	width: 59px;
	float: left;
	padding-top: 10px;
	padding-left: 10px;
}
#index #frame #main {
	width: 897px;
	float: right;
	margin-right: 29px;
}
#index #frame #main #menu h1 {
	margin: -50px 15px 0;
}
#index #frame #main #menu ul.ml5 {
	margin-left: 5px;
}
#index #frame #main #visual img {
	margin-top: -37px;
}



/* under
----------------------------------------------------------*/
#page {
	padding: 0 29px;
}
#page h2 {
	margin: 20px 0 0;
}

/* cast
----------------------------------------------------------*/
.cast .name {
	margin-top: 20px;
	font-size: 170%;
	line-height: 2;
}
.cast .staff {
	font-size: 110%;
	padding-bottom: 70px;
	line-height: 1.6;
}
.cast .staff h3 {
	margin-bottom: 5px;
}

/* schedule
----------------------------------------------------------*/
.schedule .dateall {
	font-size: 180%;
	margin-top: 20px;
}
.schedule table {
	margin: 20px auto 0;
	width: 500px;
}
.schedule table th {
	text-align: center;
	background-color: #DDD;
	width: 20%;
	padding: 10px;
	border-right: 1px solid #FFF;
	font-size: 100%;
}
.schedule table td {
	text-align: center;
	border-bottom: 1px dashed #999;
	padding: 10px;
}
.schedule table .week td {
	padding: 5px 10px;
	background-color: #f3f3f3;
}
.schedule .cautionbox {
	margin: 15px auto 0;
	width: 500px;
	padding-bottom: 70px;
}
.schedule .caution {
	text-indent: -1em;
	padding-left: 1em;
	margin-top: 5px;
}


/* ticket
----------------------------------------------------------*/
.ticket .subtit {
	font-size: 150%;
}
.ticket .date {
	margin-top: 20px;
	font-size: 130%;
}
.ticket .date span {
	font-size: 150%;
}
.ticket .price {
	padding-bottom: 100px;
}
.ticket table {
	margin: 20px auto 0;
	width: 500px;
}
.ticket table th {
	text-align: center;
	background-color: #DDD;
	width: 50%;
	padding: 10px;
	border-right: 2px solid #FFF;
}
.ticket table td {
	text-align: center;
	border-bottom: 1px dashed #999;
	padding: 10px;
}
.ticket table tr.price {
	font-size: 170%;
}
.ticket .corich {
	width: 500px;
	margin: 30px auto 0;
	text-align: center;
	
}



/* goods
----------------------------------------------------------*/
#page.goods {
	padding-bottom: 70px;
}


/* access
----------------------------------------------------------*/
.access .subtit {
	font-size: 170%;
}
.access #map {
	width: 700px;
	margin: 0 auto;
	padding-bottom: 70px;
}

/* contact
----------------------------------------------------------*/
.contact .subtit {
	font-size: 200%;
}
.contact .mail {
	font-size: 200%;
	padding-bottom: 150px;
}


/* faq
----------------------------------------------------------*/
.faq h3 {
	margin-bottom: 10px;
}
.faq p {
	width: 90%;
	margin: 0 auto;
	padding-bottom: 20px;
	line-height: 1.6;
	border-bottom: 4px dotted #CCC;
}
.faq p strong {
	color: #DD5C5E;
}




.fadeOut {
    -webkit-animation: fadeOut .5s cubic-bezier(.55,0,.1,1) both;
    animation: fadeOut .5s cubic-bezier(.55,0,.1,1) both;
}
@-webkit-keyframes fadeOut { to { opacity: 0; }}
@keyframes fadeOut { to { opacity: 0; }}

.fadeIn {
    -webkit-animation: fadeIn .5s cubic-bezier(.55,0,.1,1) both;
    animation: fadeIn .5s cubic-bezier(.55,0,.1,1) both;
}
@-webkit-keyframes fadeIn { from { opacity: 0; }}
@keyframes fadeIn { from { opacity: 0;}}






