@charset "utf-8";

/*
'Noto Sans Japanese'
*/
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

/*
	Font Awesome by Dave Gandy
	http://fontawesome.io".
*/
@font-face { font-family: "Awesome"; src: url('../font/fontawesome-webfont.woff') format('woff'); text-decoration: none; font-style: normal; }

/* ----------------------------------------------
	This style definition is initiarize.
------------------------------------------------- */
* { margin:0; padding:0; box-sizing:border-box; }
body { color:#333; font-size:16px; line-height:1.8em; font-family:'Noto Sans Japanese',"Century Gothic","メイリオ",Meiryo,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN",sans-serif; position:relative; z-index:0; background:#fff; }
table { border-collapse: collapse; border-spacing: 0; }
fieldset , img { border: 0; vertical-align: bottom; }
address , caption , cite , code , dfn , em , strong , th , var { font-style: normal; font-weight: normal; }
strong { font-weight:900; }
ol , ul { list-style: none; }
caption , th { text-align: left; }
h1 , h2 , h3 , h4 , h5 , h6 { font-size: 100%; font-weight: 900; }
q:before , q:after { content:''; }
abbr , acronym { border: 0; }
input, select, textarea { font-size:100%; font-family:'Noto Sans Japanese',"Century Gothic","メイリオ",Meiryo,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN",sans-serif; }
img { max-width:100%; }

/* clearfix */
.cfix:after { content:"."; display:block; height:0; font-size:0; clear:both; visibility:hidden; }
.cfix { display: inline-block; } 
* html .cfix { height:  1%; }
.cfix { display: block; }

/* link */
a { text-decoration:none; outline:0; vertical-align:baseline; background:transparent; font-size:100%; color:#222222; }
a:hover, a:active { outline:none; }
a, a img, input[type='submit'] { -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all  0.3s ease; }
a:hover img { opacity:0.7; filter: alpha(opacity=70); -ms-filter: "alpha( opacity=70 )"; -moz-opacity: 0.7; }

/* copyright */
#copyright {}

/* ----------------------------------------------
	レイアウト
------------------------------------------------- */
.inner { width:100%; max-width:1060px; margin:0 auto; padding:0 30px; position:relative; }

/* タイポグラフィ
------------------------------------------------------------*/

/* ブロック
------------------------------------------------------------*/
.leftbox { float:left; margin:0 20px 0 0; }
.rightbox { float:right; margin:0 0 0 20px; }
.floatbox { overflow:hidden; }

.inside-mini { padding:5px; }		.next-mini { margin-bottom:5px; }
.inside-small { padding:15px; }		.next-small { margin-bottom:15px; }
.inside-normal { padding:20px; }		.next-normal { margin-bottom:20px; }
.inside-middle { padding:30px; }	.next-middle { margin-bottom:30px; }
.inside-large { padding:40px; }		.next-large { margin-bottom:45px; }
.center { text-align:center; } .left { text-align:left; } .right { text-align:right; }

.blue { color:#314c92; }
.red { color:#da3b15; }
.aqua { color:#009fe0; }

.bg-white { background:#fff; color:#333; }

.big1 { font-size:1.25em; }
.big2 { font-size:1.5em; }
.small1 { font-size:0.9em; }
.small2 { font-size:0.8em; }

.big1, .big2 { line-height:1.7em; }
.small1, .small2 { line-height:1.9em; }

.strong { font-weight:900; }
.strong2 { font-weight:700; }

.right { text-align:right; }

.link a, a.link { color:#da3b15; text-decoration:underline; }
.link a:hover, a.link:hover { opacity:0.7; filter:alpha(opacity=70); -ms-filter:"alpha( opacity=70 )"; -moz-opacity:0.7; }
.link2 a:hover, a.link2:hover { text-decoration:underline; }

/* リスト
------------------------------------------------------------*/
.floatlist { margin:0 0 -10px; }
.floatlist li { float:left; margin:0 2% 10px 0; }

.float2 li { width:49%; } .float3 li { width:32%; } .float4 li { width:23.5%; }
.float2 li:nth-child(2n), .float3 li:nth-child(3n), .float4 li:nth-child(4n) { margin-right:0; }
.float2 li:nth-child(2n+1), .float3 li:nth-child(3n+1), .float4 li:nth-child(4n+1) { clear:both; }

/* --------------------------------------------------------
	コンテンツ
----------------------------------------------------------- */

/* ヘッダー
------------------------------------------------------------*/
#global { position:relative; z-index:999; background:#fff; }
#global li { float:left; width:12.5%; border:solid 0 #ccd6da; border-right-width:1px; position:relative; }
#global li:first-child { border-left-width:1px; }
#global a { display:block; color:#314c92; height:50px; line-height:50px; text-align:center; font-weight:700; font-size:1.1em; position:relative; background:#fff; z-index:1005; }
#global a:hover { background:#e9edf8; }

#global .child { position:absolute; opacity:0; filter:alpha(opacity=0); -ms-filter:"alpha( opacity=0 )"; left:0; right:0; top:0; -moz-opacity:0; -webkit-transition:all 0.3s ease; -moz-transition:all 0.3s ease; -o-transition:all 0.3s ease; transition:all  0.3s ease; }
#global .child li { float:none; width:100%; border:none; }
#global .child a { background:rgba(49,76,146,0.9); color:#fff; border-bottom:solid 1px rgba(255,255,255,0.3); z-index:1002; position:relative; }
#global .child li:last-child a { border-bottom-width:0; }

#global .child a:hover { background:rgba(40,62,119,0.9); }
#global li:hover .child { opacity:1; filter:alpha(opacity=100); -ms-filter:"alpha( opacity=100 )"; -moz-opacity:1; top:50px; }

#topimg .bg { position:fixed; height:610px; left:0; right:0; top:0; z-index:0; }
#topimg .bg img { width:100%; position:absolute; bottom:0; }
#topimg .tx { position:relative; z-index:10; }
#topimg .fb { position:absolute; z-index:12; right:2.830%; bottom:4%; width:18%; z-index:510; }

#topimg a:hover img { -webkit-transform: rotate(-15deg) translate3d(0,0,0); -moz-transform: rotate(-15deg) translate3d(0,0,0); -ms-transform: rotate(-15deg) translate3d(0,0,0); transform: rotate(-15deg) translate3d(0,0,0); opacity:0.8; filter:alpha(opacity=80); -ms-filter:"alpha( opacity=80 )"; -moz-opacity:0.8; }


#mobile { display:none; position:fixed; left:0; right:0; top:0; z-index:999; }
#mobile a { display:block; background:#fff; text-align:center; height:50px; line-height:50px; color:#314c92; font-weight:700; cursor:pointer; }
#mobile a:hover { background:#e9edf8; }
#mobile a:before { font-family:"Awesome"; margin-right:10px; content:"\f0c9"; font-weight:normal; }

#global .inner { max-width:1000px; padding:0; } 
#topimg .inner { padding:0; }

/* フッター
------------------------------------------------------------*/
#footer { overflow:visible; }
#footer .facebox { overflow:hidden; }
#footer table { width:100%; font-weight:200; }
#footer table .label { width:110px; }
#footer table .text {}
#footer table span { display:inline-block; }
#footer table td { vertical-align:top; }
#copyright { padding:20px 0; }

/* ページトップへ
--------------------------------------------------------------------------------*/
#pagetop, #pagetop a { width:50px; height:50px; line-height:50px; font-size:30px; color:#fff; }
#pagetop { display:block; position:absolute; top:-55px; right:30px; z-index:1000; }
#pagetop a { display:block; background:rgba(0,0,0,0.5); text-align:center; position:fixed; behavior:url(css/PIE.htc); -moz-border-radius:7px; -webkit-border-radius:7px; border-radius:7px; cursor:pointer; bottom:-100px; z-index:1010; }
#pagetop a:hover { opacity:0.7; filter:alpha(opacity=70); -ms-filter:"alpha( opacity=70 )"; -moz-opacity:0.7; }

/* メイン
------------------------------------------------------------*/
#wrapper { background:#fff; position:relative; z-index:500; }
#wrapper .inner { position:relative; z-index:510; }

.wrap_bg:before, .wrap_bg:after { background-repeat:no-repeat; position:fixed; top:0; bottom:0; background-size:100%; z-index:-500; content:""; width:50%; opacity:0; filter:alpha(opacity=0); -ms-filter:"alpha( opacity=0 )"; -moz-opacity:0; -webkit-transition:all 0.5s ease; -moz-transition:all 0.5s ease; -o-transition:all 0.5s ease; transition:all  0.5s ease; }
.wrap_bg:before { background-image:url(../img/lp/lp03_bg1.png); background-position:left top; max-width:429px; left:-100px; top:200px; -webkit-transform: rotate(30deg) translate3d(0,0,0); -moz-transform: rotate(30deg) translate3d(0,0,0); -ms-transform: rotate(30deg) translate3d(0,0,0); transform: rotate(30deg) translate3d(0,0,0); }
.wrap_bg:after { background-image:url(../img/lp/lp03_bg2.png); background-position:right bottom; max-width:565px; right:-100px; bottom:200px; -webkit-transform: rotate(-30deg) translate3d(0,0,0); -moz-transform: rotate(-30deg) translate3d(0,0,0); -ms-transform: rotate(-30deg) translate3d(0,0,0); transform: rotate(-30deg) translate3d(0,0,0); }

.wrap_show:before, .wrap_show:after { opacity:1; filter:alpha(opacity=100); -ms-filter:"alpha( opacity=100 )"; -moz-opacity:1; -webkit-transform: rotate(0deg) translate3d(0,0,0); -moz-transform: rotate(0deg) translate3d(0,0,0); -ms-transform: rotate(0deg) translate3d(0,0,0); transform: rotate(0deg) translate3d(0,0,0); z-index:505; }
.wrap_show:before { left:0; top:0; }
.wrap_show:after { right:0; bottom:0; }

.mains .block { padding:70px 0; overflow:hidden; }
.mains .block:nth-child(odd) { background-color:#fff; }
.mains .block:nth-child(even) { background-color:#314c92; color:#fff; }

.blockline { font-weight:700; text-align:center; margin:0 0 40px; font-size:1.1em; }
.blockline:before { display:block; content:attr(data-name); font-size:1.8rem; margin:0 0 10px; }
.blockline2 { color:#dd3b0a ! important; text-align:left; }
.mains .block:nth-child(odd) .blockline { color:#314c92; }

.lang-en .blockline, .lang-en .mains .block:nth-child(odd) .blockline2,
.lang-en .mains .block:nth-child(odd) .blockline { color:rgba(0,0,0,0) ! important; font-size:10px; line-height:10px; }

.lang-en .blockline:before { color:#fff ! important; }
.lang-en .mains .block:nth-child(odd) .blockline:before { color:#314c92 ! important; }
.lang-en .mains .block:nth-child(odd) .blockline2:before { color:#dd3b0a ! important; }

.blockline-first:after { display:block; content:""; behavior:url(css/PIE.htc); position:relative; z-index:1; -moz-border-radius:4px; -webkit-border-radius:4px; border-radius:4px; background:#314c92; width:100%; max-width:300px; margin:15px auto; height:4px; }

.ribbon { background:#da3b15; text-align:center; font-size:1.4em; position:relative; width:100%; max-width:700px; height:60px; line-height:60px; margin:0 auto 50px; z-index:400; }
.ribbon:before, .ribbon:after { background:url(../img/lp/lp03_ribbon2.png) no-repeat 0 0; background-size:100%; width:73px; height:60px; content:""; position:absolute; top:10px; }
.ribbon:before { left:-40px; }
.ribbon:after { right:-40px; -webkit-transform:scaleX(-1); -o-transform:scaleX(-1); -moz-transform:scaleX(-1); transform:scaleX(-1); filter:FlipH; -ms-filter:"FlipH"; }

.facebox { width:340px; }
.infobox { width:55%; float:left; }
.dispbox { width:43%; float:right; }

/* ボタン */
.button a { display:block; behavior:url(css/PIE.htc); position:relative; z-index:1; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; background:#da3b15; color:#fff; text-align:center; }
.button a:hover { opacity:0.7; filter:alpha(opacity=70); -ms-filter:"alpha( opacity=70 )"; -moz-opacity:0.7; }
.button-big a { font-size:1.4em; font-weight:900; width:100%; max-width:460px; margin:0 auto; height:70px; line-height:70px; }
.button-dl a:after { font-family:"Awesome"; margin-left:10px; content:"\f019"; }
.pcinner { padding:0 50px; }


/* コンテンツ */
.concepts { line-height:2.5em; }
.photos img { border:solid 3px #eee; }

.events .group { background:#fff; position:relative; color:#333; }
.events .badge { position:absolute; top:-5px; left:10px; z-index:500; }
.events .image {}
.events .name {}
.events .desc {}

.schedules {}
.schedules .parents { background:url(../img/lp/lp03_schedule_bg1.png) repeat-y center 0; }
.schedules .parents:after { font-family:"Awesome"; content:"\f111"; display:block; color:#da3b15; text-align:center; font-size:20px; line-height:18px; margin:0; }
.schedules .times { margin-bottom:30px; }
.schedules .times:last-child {}
.schedules .times2 { font-size:0.9em; }
.schedules .group { padding:30px; }
.schedules .image { margin-right:20px; }
.schedules .image span { display:none; }
.schedules .times2 .name { line-height:1.5em; }

.schedules .time { color:#d4a012; font-weight:700; }
.schedules .desc { font-size:0.9em; line-height:1.8em; }
.schedules .children {  }
.schedules .child { float:left; width:50%; position:relative; }
.schedules .child .group:before { top:50%; border:solid transparent; content:" "; height:0; width:0; position:absolute; pointer-events:none; border-color:rgba(255,255,255,0); border-width:15px; margin-top:-15px; }

.schedules .child:nth-child(1) { padding-right:20px; }
.schedules .child:nth-child(2) { padding-left:20px; }
.schedules .child:nth-child(1) .group:before { left:100%; border-left-color:#fff; }
.schedules .child:nth-child(2) .group:before { right:100%; border-right-color:#fff; }

.schedules .times1 .image { width:240px; }
.schedules .times2 .image { width:100px; }

.schedules .times1 .image .gold   { display:block; }
.schedules .times2 .image .square { display:block; }

.schedules .times2 .group { padding:25px; }
/*
.schedules .times2 .name { font-size:1.1em; line-height:1.5em; }
*/

.schedules .button { margin:10px 0 0; }
.schedules .button a { display:inline-block; padding:10px 20px; background:#e6a800; font-weight:700; font-size:1.1em; cursor:pointer; }
.schedules .button a:before { font-family:"Awesome"; margin-right:10px; content:"\f105"; }

.casts .main { padding:25px; }
.casts .name { font-size:1em; line-height:1.6em; }
.casts .sub { color:#888fa0; font-weight:700; margin:-5px 0 5px; font-size:0.9em; }
.casts .desc { font-size:0.85em; line-height:1.8em; }
.casts .group { margin-bottom:30px; }

#salons { display:none; position:fixed; left:0; right:0; top:0; bottom:0; z-index:3000; background:rgba(0,0,0,0.5); padding:50px; font-size:0.9em; line-height:1.8em; }
#salons .container { background:#fff; width:100%; max-width:600px; margin:0 auto; color:#333; padding:50px; text-align:center; position:relative; }
#salons table { text-align:left; margin:0 auto; width:100%; }
#salons table th, #salons table td { padding:7px 10px; border:solid 0 #ccc; border-width:1px 0; }
#salons table th { background:#e6e8ed; box-shadow:0 1px 0 #fff inset; text-align:center; font-weight:700; }
#salons table td {}
#salons table td.tel { text-align:center; font-weight:700; color:#da3b15; } 
#salons table td.tel:before { font-family:"Awesome"; margin-right:5px; content:"\f095"; }
#salons .close { position:absolute; top:-10px; right:-10px; }
#salons .close a { display:block; width:50px; text-align:center; height:50px; line-height:50px; background:#e6a800; color:#fff; box-shadow:0 100px 0 rgba(0,0,0,0) inset; cursor:pointer; behavior:url(css/PIE.htc); z-index:1; -moz-border-radius:25px; -webkit-border-radius:25px; border-radius:25px; }
#salons .close a:before { font-family:"Awesome"; content:"\f00d"; }
#salons .close a:hover { box-shadow:0 100px 0 rgba(0,0,0,0.2) inset; }

.galleryes img { border:solid 1px transparent; }
.galleryes .image { width:250px; }
.galleryes .logo { width:85px; }
.galleryes .text { line-height:2em; }

.shoplist { font-size:0.85em; line-height:1.6em; }
.shoplist .group { background:#fff; padding:25px; color:#333; height:180px; overflow:hidden; position:relative; margin-bottom:20px; }
.shoplist .name, .shoplist .addr { margin-bottom:3px; }
.shoplist .name { font-size:1.1em; line-height:1.5em; }
.shoplist .addr {}
.shoplist .genre { margin-bottom:10px; }
.shoplist .jump { position:absolute; bottom:25px; left:0; right:0; }
.shoplist .btn { display:block; width:100%; max-width:140px; line-height:30px; height:30px; behavior:url(css/PIE.htc); position:relative; z-index:1; -moz-border-radius:4px; -webkit-border-radius:4px; border-radius:4px; background:#a2a2a2; color:#fff; text-align:center; margin:0 auto; }
.shoplist .btn:after { font-family:"Awesome"; margin-left:5px; content:"\f08e"; }
.shoplist a.btn { background:#da3b15; box-shadow:0 100px 0 rgba(0,0,0,0) inset; }
.shoplist a.btn:hover { box-shadow:0 100px 0 rgba(0,0,0,0.2) inset; }

.lang-en .shoplist .group { height:200px; }


.contacts .num { color:#314c92; font-size:1.2em; font-weight:700; margin-right:5px; }
.contacts .num:before { font-family:"Awesome"; margin-right:10px; content:"\f095"; }
.contacts .phones { float:left; }
.contacts .forms { float:right; }

.contacts table { border-collapse:separate; border-spacing:8px; font-size:0.85em; }
.contacts th, .contacts td { vertical-align:top; }
.contacts th { width:140px; }
.contacts th span { font-size:0.8em; }
.contacts label { display:block; background:#c99828; color:#fff; behavior:url(css/PIE.htc); position:relative; z-index:1; -moz-border-radius:4px; -webkit-border-radius:4px; border-radius:4px; text-align:center; }
.contacts td {}

.contacts input[type="text"], .contacts input[type="mail"], .contacts label { height:36px; line-height:36px; }
.contacts input[type="text"], .contacts input[type="mail"] { padding:0 7px; }
.contacts textarea { padding:7px; }
.contacts input[type="text"], .contacts input[type="mail"],
.contacts textarea { display:block; width:100%; behavior:url(css/PIE.htc); position:relative; z-index:1; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; background:transparent; border:solid 1px #ccc; }

.submits li:last-child { float:none; margin:0 auto; }
.submits input { display:block; width:100%; background:#da3b15; color:#fff; behavior:url(css/PIE.htc); position:relative; z-index:1; -moz-border-radius:4px; -webkit-border-radius:4px; border-radius:4px; font-size:1.15em; font-weight:700; text-align:center; border:none; height:55px; line-height:55px; box-shadow:0 100px 0 rgba(0,0,0,0) inset; cursor:pointer; }
.submits input:hover { box-shadow:0 100px 0 rgba(0,0,0,0.2) inset; }

.ui-dialog { position:relative; z-index:2000 ! important; }

.keisho {
	text-align: center;
	font-size: 80%;
	color: #838383;
	margin:-20px 0 20px;
}

.sp { display:none; }
.last { margin-bottom:0 ! important; }

/* ----------------------------------------------
	レスポンシブ
------------------------------------------------- */
@media only screen and (max-width: 1060px) {

	/* レイアウト ...................................................................... */

	/* ヘッダー ...................................................................... */

	#topimg .bg { height:auto; }
	#topimg .bg img { position:relative; }

	/* 大枠 ...................................................................... */
	/* 汎用 ...................................................................... */
	.shoplist .group { width:32%; }
	.shoplist .group:nth-child(4n) { margin-right:2%; }
	.shoplist .group:nth-child(3n) { margin-right:0; }
	.shoplist .group:nth-child(4n+1) { clear:none; }
	.shoplist .group:nth-child(3n+1) { clear:both; }

	/* ブロック ...................................................................... */
	.tickets .image { width:240px; }

	.contacts .blockline { text-align:center; }
	.contacts .phones, .contacts .forms { float:none; width:100%; max-width:520px; margin:0 auto; text-align:center; }
	.contacts .phones { margin-bottom:20px; }
	
	.pcinner { padding:0 30px; }

}
@media only screen and (max-width: 860px) {

	/* レイアウト ...................................................................... */
	.facebox { width:100%; max-width:500px; margin:0 auto 20px; float:none; }

	/* ヘッダー ...................................................................... */
	#global a { font-size:0.9em; }

	/* 大枠 ...................................................................... */

	/* 汎用 ...................................................................... */

	/* ブロック ...................................................................... */

	.concepts { line-height:2em; }
	.concepts .main { font-size:0.9em; }

	.schedules .times .group { padding:20px; }
	.schedules .times1 .image, .schedules .times2 .image { width:100px; }
	.schedules .times1 .image .gold   { display:none; }
	.schedules .times1 .image .square { display:block; }
	.schedules .times2 .name { font-size:1.1em; line-height:1.5em; }

	.casts .group { width:32%; }
	.casts .group:nth-child(4n) { margin-right:2%; }
	.casts .group:nth-child(3n) { margin-right:0; }
	.casts .group:nth-child(4n+1) { clear:none; }
	.casts .group:nth-child(3n+1) { clear:both; }
	.casts .main { padding:20px; }

	.shoplist .group { width:49%; }
	.shoplist .group:nth-child(3n) { margin-right:2%; }
	.shoplist .group:nth-child(2n) { margin-right:0; }
	.shoplist .group:nth-child(3n+1) { clear:none; }
	.shoplist .group:nth-child(2n+1) { clear:both; }

	.tickets .image { width:200px; }

	.sponsors li { width:49%; }
	.sponsors li:nth-child(3n) { margin-right:2%; }
	.sponsors li:nth-child(2n) { margin-right:0; }
	.sponsors li:nth-child(3n+1) { clear:none; }
	.sponsors li:nth-child(2n+1) { clear:both; }

	.galleryes .image { width:200px; margin-bottom:20px; }
	.galleryes .mizube { clear:both; }

	.pcinner { padding:0 15px; }

}
@media only screen and (max-width: 640px) {

	/* レイアウト ...................................................................... */
	.mains .block { padding:55px 0; }
	.blockline { margin:0 0 30px; font-size:1.05em; }
	.blockline:before { font-size:1.6em; }

	/* ヘッダー ...................................................................... */
	#mobile { display:block; box-shadow:0 0 5px rgba(0,0,0,0.3); }

	#global { background:#314c92; }
	#global { display:none; position:fixed; left:0; right:0; top:50px; z-index:900; }
	#global li:nth-child(1n) { width:50%; border-color:#253a70; border-width:0 0 1px; }
	#global li:nth-child(odd) { border-right-width:1px; }
	#global a { height:37px; line-height:37px; font-size:0.9em; background:#314c92; color:#fff; font-weight:500; }
	#global a:hover { background:#253a70; }

	#global .child { position:relative; }
	#global .child li { float:left; }
	#global .child, #global .child a, #global .child a:hover { opacity:1; filter:alpha(opacity=100); -ms-filter:"alpha( opacity=100 )"; -moz-opacity:1; }
	#global .child a { border-color:#253a70; }

	#global .child li:nth-child(odd) a { border-right:solid 1px #253a70; }

	#global li:hover .child { top:0; }
	#global li.language { width:100%; clear:both; border:none; }
	#global li.language > a { display:none; }

	#topimg .bg { top:50px; }
	#topimg .tx { margin:50px 0 0; }

	/* フッター ...................................................................... */
	#pagetop { right:20px; }

	/* 大枠 ...................................................................... */
	.float4 li { width:49%; }
	.float4 li:nth-child(2n) { margin-right:0; }

	.button-big a { font-size:1.2em; height:60px; line-height:60px; }

	/* 汎用 ...................................................................... */
	.big1 { font-size:1.15em; }
	.big2 { font-size:1.2em; }
	.big1, .big2 { line-height:1.5em; }

	.inside-mini { padding:5px; }		.next-mini { margin-bottom:5px; }
	.inside-small { padding:10px; }		.next-small { margin-bottom:10px; }
	.inside-normal { padding:15px; }		.next-normal { margin-bottom:15px; }
	.inside-middle { padding:20px; }	.next-middle { margin-bottom:20px; }
	.inside-large { padding:30px; }		.next-large { margin-bottom:30px; }

	.ribbon { width:auto; height:50px; line-height:50px; margin:0 25px 30px; font-size:1.2em; }
	.ribbon:before, .ribbon:after { width:61px; height:60px; top:8px; }
	.ribbon:before { left:-33px; }
	.ribbon:after { right:-33px; }

	/* ブロック ...................................................................... */

	.schedules .child .group:before { display:none; }
	.schedules .times { margin-bottom:20px; }
	.schedules .child { float:none; width:100%; position:relative; margin-bottom:20px; }
	.schedules .child:nth-child(1) { padding-right:0; }
	.schedules .child:nth-child(2) { padding-left:0; }
	.schedules .child:last-child { margin-bottom:0; }

	.casts .group { width:49%; }
	.casts .group:nth-child(3n) { margin-right:2%; }
	.casts .group:nth-child(2n) { margin-right:0; }
	.casts .group:nth-child(3n+1) { clear:none; }
	.casts .group:nth-child(2n+1) { clear:both; }

	#salons { padding:80px 25px 20px; }
	#salons .container { padding:25px; }

	.accesss .infobox, .accesss .dispbox { width:100%; float:none; }
	.accesss .infobox { margin-bottom:20px; }
	.accesss, .accesss .blockline2 { text-align:center; }

	.shoplist .group:nth-child(1n) { width:100%; margin:0 0 1px; height:auto; padding:20px; }
	.shoplist .genre { margin-bottom:0; }
	.shoplist .jump { display:none; }
	.shoplist .name a { text-decoration:underline; }
	.shoplist .name a:hover { opacity:0.7; filter:alpha(opacity=70); -ms-filter:"alpha( opacity=70 )"; -moz-opacity:0.7; }

	.tickets .image { width:150px; }
	.galleryes .image { width:150px; }

	.contacts table { font-size:0.9em; }
	.contacts table, .contacts tbody, .contacts tr, .contacts th, .contacts td { display:block; width:100%; }
	.contacts td { padding:0 0 5px; }
	.contacts label { background:transparent; color:#c99828; text-align:left; font-weight:700; }

	.pcinner { padding:0; }
	.sp { display:block; } .pc { display:none; }
}
@media only screen and (max-width: 500px) {

	/* レイアウト ...................................................................... */
	body { font-size:14px; line-height:1.8em; }
	.inner { padding:0 18px; }

	.mains .block { padding:40px 0; }
	.blockline { margin:0 0 25px; font-size:1em; }
	.blockline:before { font-size:1.5em; margin:0 0 5px; }

	/* ヘッダー ...................................................................... */
	#topimg { overflow:hidden; }
	#topimg .tx { margin-right:-60px; }

	/* フッター ...................................................................... */
	#footer table, #footer tbody, #footer tr, #footer td { display:block; }
	#footer td { text-align:center;  }
	#footer table .label { width:100%; }
	#footer table .text { margin:0 0 15px; }

	/* 大枠 ...................................................................... */
	/* 汎用 ...................................................................... */
	.inside-large { padding:20px; }		.next-large { margin-bottom:20px; }

	/* ブロック ...................................................................... */

	#salons { padding:60px 15px 15px; }
	#salons .container { padding:15px; }
	#salons table th { display:none; }
	#salons table, #salons tbody, #salons table tr, #salons table td { display:block; }
	#salons table { font-size:0.8em; line-height:1.7em; }
	#salons table td { padding:5px 10px; }
	#salons table td.name { padding-bottom:0; border-bottom:none; }
	#salons table td.tel { padding-top:0; border-top:none; text-align:left; border-bottom:none; }

	.shoplist { font-size:0.9em; line-height:1.5em; margin:0 -20px; }
	.tickets .image { float:none; margin:0 auto 15px; }

	.galleryes .image { width:100%; float:none; margin:0 0 15px; }
	.galleryes .logo { width:75px; margin-right:10px; }
	.galleryes .mizube span, .galleryes .mizube a { display:inline-block; }

	.submits li:last-child { width:100%; }

}

@media only screen and (max-width: 400px) {


	.schedules .times { margin-bottom:20px; }
	.schedules .times .group { padding:0; }
	.schedules .times .main { padding:20px; }
	.schedules .times .image { width:100%; float:none; margin:0; }
	.schedules .times .image .gold   { display:block; }
	.schedules .times .image .square { display:none; }

	.casts .group:nth-child(1n) { width:100%; margin:0 0 20px; float:none; }
	.schedules .button a { display:block; }
}