@charset "utf-8";

/* =============================================================
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
============================================================= */
html, body {height: 100%; }
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body { line-height:1;
}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section { display:block;}
/* IE6/7/8/9とFF3で定められていない 'block' 表示を修正します. */

nav ul { list-style:none;}
blockquote, q { quotes:none;}
blockquote:before, blockquote:after, q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}
audio,canvas,video {
	display: inline-block;/* IE6/7/8/9とFF3で定められていない 'inline-block' 表示を修正します。 */
	*display: inline;
	*zoom: 1;
}
audio:not([controls]) {
	display: none;/* 最新のブラウザーが規制なしで 'audio' を示すのを防ぎます。 */
	height: 0;/* iOS5装置で過剰な高さを取り除きます。 */
}
[hidden] {
	display: none;/* IE7/8/9、FF3、S4に存在しない 'hidden' 属性を定義化。※IE6未対応 */
}


a { text-decoration: none;}
a:link    { color: #000; }
a:visited { color: #000;}
a:hover   { text-decoration: underline;}
a:active  { color: #D42A32;text-decoration: underline;}


/* 画像
 ---------------------------------------------------------------------- */
#container #Wrap a:hover img { opacity: 0.85;}

/* 汎用クラス
 ---------------------------------------------------------------------- */
.margin1 {margin-bottom: 1em;}
.red {color: #d00;}


ul li {list-style:none; font-size: 14px; }
table {border-collapse: collapse;}
p {letter-spacing: 0.05em;}
small {font-size: 0.75em;}


/* コンテンツ部分の構造
 ---------------------------------------------------------------------- */

#container {
	position: relative;
	background-color: #fff;
	height: auto !important;
	height: 100%;
	min-height: 100%;

}

#container .fixed {
	position: fixed;
	height: 130px;
	z-index: 100000;
	background: url(../images/bg-top.png) center bottom no-repeat;
}


#container #contents {
	position: relative;
	margin-top: 0px;
	padding-top: 130px;
	padding-bottom: 30px;
	width: 1055px;
	background: url(../images/bg2.jpg) center top / 1055px fixed;
	background-position: center 128px;
/* 	z-index: -1; */
}

#container #contents #main {
	float: right;
	width: 800px;
	height: auto;
}
#container #contents #side {
	position: fixed;
	top: 130px;
/*
	background: url(../images/bg-side.jpg) left top no-repeat;
	background-position: left -20px;
*/
/* 	left: 0; */
	float: left;
	width: 230px;
}

/* 下位ページ */
.page #container #contents #side {
	top: 250px;
	background-position: left -140px;
}

p {
	font-size: 14px;
	line-height: 21px;
/* 	letter-spacing: 0; */
}


#container #footer {
	position: relative;
	padding: 10px 0 20px;
	color: #333;
	border-top: 5px solid #000;
	background-color: #fff;
	z-index: 100;

}
#container #footer p {
	text-align: right;
	padding-bottom: 0.8em;
	font-size: 0.75em;
	letter-spacing: 0.1em;
}
#container #footer p a {color: #000;}
#container #footer p a:hover {text-decoration: underline;}

/* ページの先頭へ */
#container #Wrap #contents .totop {
	margin-bottom: -25px;
	padding:10px 10px 0;
	font-weight: normal;
	text-align: right;
}
#container #Wrap #contents .totop a {color: black;font-size: 13px;}
#container #Wrap #contents .totop a:hover {color: black;text-decoration: underline;}

/* サイドコラム
 ---------------------------------------------------------------------- */

#side { padding-left: 15px;}
#side ul.lang {
	margin-bottom: 15px;
	width: 220px;
	height: 20px;
}
#side ul.lang li {
	float: left;
}
#side ul.lang li a {
	display: block;
	height: 20px;
	overflow: hidden;
	background: url(../images/lang-j_e.png) left top no-repeat;
	width: 110px;

}
#side ul.lang li.jp a { background-position: left top;width: 115px;}
#side ul.lang li.en a {	background-position: right top;width: 105px;margin-left: 0px;}
#side ul.lang li.jp a:hover,#side ul.lang li.current.jp a  { background-position: left -20px;}
#side ul.lang li.en a:hover,#side ul.lang li.current.en a  {	background-position: right -20px;}

#side ul.lang li a span {
	padding-left: 200px;
}

/*
#side .mainpict ul.lang li a {
	display: block;
	height: 20px;
	padding: 0 5px;
	border-top: 2px solid #bfbfbf;
	border-right: 2px solid #cbcbcb;
	border-bottom: 2px solid #828282;
	border-left: 2px solid #808080;
	font-size: 1em;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 20px;
	text-align: center;
	background-color: #dcdcdc;
}
#side .mainpict ul.lang li a:link    { color: #c00;}
#side .mainpict ul.lang li a:visited { color: #c00;}
#side .mainpict ul.lang li a:hover   { color: #13007f;}
#side .mainpict ul.lang li a:active  { color: #f00;
	border-bottom: 2px solid #bfbfbf;
	border-left: 2px solid #cbcbcb;
	border-top: 2px solid #828282;
	border-right: 2px solid #808080;
}
#side .mainpict ul.lang li.current a {color: #777;}
*/


#side .subnavi {
	margin-bottom: 10px;
	width: 228px;
	overflow: hidden;
}
#side .subnavi ul li a {
	display: block;
	overflow: hidden;
	background: url(../images/navi.png) left top no-repeat;
	width: 628px;
	height: 60px;
}
#side .subnavi ul li a span {padding-left: 230px;}
#side .subnavi ul li.top a      { background-position: 0 0; }
#side .subnavi ul li.summary a  { background-position: 0 -60px; }
#side .subnavi ul li.contents a { background-position: 0 -120px; }
#side .subnavi ul li.ticket a   { background-position: 0 -180px; }
#side .subnavi ul li.world a    { background-position: 0 -240px; }
#side .subnavi ul li.top a:hover 			{ background-position: -230px 0; }
#side .subnavi ul li.summary a:hover  { background-position: -230px -60px; }
#side .subnavi ul li.contents a:hover { background-position: -230px -120px; }
#side .subnavi ul li.ticket a:hover   { background-position: -230px -180px; }
#side .subnavi ul li.world a:hover    { background-position: -230px -240px; }
#side .subnavi ul li.top a:active 		 { background-position: -229px 2px; }
#side .subnavi ul li.summary a:active  { background-position: -229px -58px; }
#side .subnavi ul li.contents a:active { background-position: -229px -118px; }
#side .subnavi ul li.ticket a:active   { background-position: -229px -178px; }
#side .subnavi ul li.world a:active    { background-position: -229px -238px; }

/* 英語版 */
.en #side .subnavi ul li a {
	display: block;
	overflow: hidden;
	background: url(../images/navi-e.png) left top no-repeat;
	width: 628px;
	height: 60px;
}
.en #side .subnavi ul li a span {padding-left: 230px;}
.en #side .subnavi ul li.top a      { background-position: 0 0; }
.en #side .subnavi ul li.contents a { background-position: 0 -60px; }
.en #side .subnavi ul li.ticket a   { background-position: 0 -120px; }
.en #side .subnavi ul li.world a    { background-position: 0 -180px; }
.en #side .subnavi ul li.top a:hover 			{ background-position: -230px 0; }
.en #side .subnavi ul li.contents a:hover { background-position: -230px -60px; }
.en #side .subnavi ul li.ticket a:hover   { background-position: -230px -120px; }
.en #side .subnavi ul li.world a:hover    { background-position: -230px -180px; }
.en #side .subnavi ul li.top a:active 		 { background-position: -229px 2px; }
.en #side .subnavi ul li.contents a:active { background-position: -229px -58px; }
.en #side .subnavi ul li.ticket a:active   { background-position: -229px -118px; }
.en #side .subnavi ul li.world a:active    { background-position: -229px -178px; }


#side .flyer { margin-bottom: 10px;}
#side .flyer dt { float: left;margin-right: 15px;}
#side .flyer dd { font-size: 13px;line-height: 18px;letter-spacing: 0.05em;}
#side .flyer dd a {color: #f00;}
#side .flyer dd a:hover {text-decoration: underline;}
#side .flyer dd.title {margin-bottom: 3px;}

#side .social li {font-size: 13px;margin-bottom: 8px;height: 30px;line-height: 30px;}
#side .social li img { vertical-align: middle;margin-right: 7px;}
#side .social li a {color: #f00;}
#side .social li a:hover {text-decoration: underline;}

/* メインカラム
 ---------------------------------------------------------------------- */


/* メイン画像 */
#main .mainpict {
	margin-bottom: 30px;
	width: 800px;
	height: 350px;
}
#main .section {
	margin-bottom: 30px;
	padding: 25px;
	background-color: rgba( 255, 255, 255, 0.6 );
}
#main .section h3 {
	margin-bottom: 30px;
}
#main .section h4 {
	margin: 20px 0 15px;
	padding-left: 10px;
	background-color: #762000;
	color: #fff;
	font-size: 16px;
	font-weight: normal;
}







/* サブナビゲーション
 ---------------------------------------------------------------------- */
#contents #main .center .subnavi {

}
#contents #main .center .subnavi ul {
	width: 900px;
	position: fixed;
	z-index: 1000000;

	box-shadow: 0 7px 5px 0px rgba(0,0,0,0.1) ;
}

#contents #main .center .subnavi ul li {
	float: left;
	width: 20%;


}
#contents #main .center .subnavi ul li a {
	display: block;
	height: 20px;
	border-top: 3px solid #bfbfbf;
	border-right: 3px solid #cbcbcb;
	border-bottom: 3px solid #828282;
	border-left: 3px solid #808080;
	color: #13007f;
	font-size: 0.85em;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 20px;
	text-align: center;
	background-color: #dcdcdc;
}
#contents #main .center .subnavi ul li a:hover {
	color: #f9ff01;
	border-top: 3px solid #337a8c;
	border-right: 3px solid #274b6b;
	border-bottom: 3px solid #274b6b;
	border-left: 3px solid #265060;
	background-color: #3d8da4;
}
#contents #main .center .subnavi ul li a:active {
	color: #f9ff01;
	border-bottom: 3px solid #337a8c;
	border-left: 3px solid #274b6b;
	border-top: 3px solid #274b6b;
	border-right: 3px solid #265060;
}


/* タイトル周り
 ---------------------------------------------------------------------- */

#body .header {
	margin-bottom: 30px;
	color: #fff;
	text-align: center;
}
#body .header h3 {
	font-weight: bold;


}
#body .header h2 {
	margin-bottom: 25px;
	font-size: 1.8em;
}
#body .header p { 	font-weight: bold;letter-spacing: 0.1em;}

/* section
 ---------------------------------------------------------------------- */
#body .section {
	margin-bottom: 20px;
}
#body .section h3 {
	position: relative;
	margin-left: -30px;
	margin-bottom: -30px;
	width: 500px;
	height: 150px;
	line-height: 1;
	color: #fff;
	z-index: 10000;
}
#body .section div.text {
	background-color: rgba(255,255,255,0.5);
}

/* 下位ページ
 ---------------------------------------------------------------------- */

.page #container #Wrap .fixed {
	margin: 0;
  background: none;
  height: 250px;
  position: fixed;
  z-index: 100000;
}
.page #container #Wrap .fixed .mainpict {
	padding: 20px 0 15px;
	z-index: 10000;
	background: url(../images/bg-head.jpg) center top / 1055px fixed;
}
.page #container #Wrap #contents #main {
	padding-top: 120px;
}



.page #container #Wrap .section {margin-bottom: 25px;}
.page #container #Wrap .section h3 { margin-bottom: 15px;}
.page #container #Wrap .section h4 { margin: 0 0 15px; line-height: 1.4; }
.page.summary #container #Wrap .section h4  { background-color: #63651C;}
.page.contents #container #Wrap .section h4 { background-color: #6f586a;}
.page.ticket #container #Wrap .section h4 { background-color: #5c7886;}
.page.world #container #Wrap .section h4 { background-color: #BB5730;}

.page #container #Wrap #contents #main .section { position: relative;}
#container #Wrap #contents #main .section .pict,
.page #container #Wrap #contents #main .section .pict {
	position: absolute;
	right: 0px;
	z-index: 1000;
}
.page #container #Wrap #contents #main .section p {
	font-size:15px;
	line-height: 1.7em;
}
.page #container #Wrap #contents #main .section p img.middle {
	vertical-align: middle;
}
.aling-left4em {
	padding-left: 4em;
}
/* 公演概要 */
.page.summary #container #Wrap .section h4 { margin: 0 0 10px; line-height: 1.4; }
.page.summary #container #Wrap .section h3 {
 width: 510px;
}


/* 上演内容 */
.page.contents #container #Wrap .section h4 {
	background-color: #6f586a;
	padding: 5px 20px;
	margin-bottom: 15px;
	font-size: 17px;
	line-height: 1.3em;
}
.page #container #Wrap #contents #main .section p.floatleft {
	float: left;
	width: 180px;
	font-size: 14px;
	line-height: 21px;
}
.page #container #Wrap #contents #main .section p.floatleft1 {
	width: 230px;
	font-size: 14px;
	line-height: 21px;
}
.page #container #Wrap #contents #main .section p.floatleft2 {
	font-size: 14px;
	line-height: 21px;
	margin-bottom: 10px;
}
.page #container #Wrap .section .pict1 {
	float: right;
	margin: 0;
	width: 510px;
	line-height: 0;
}
.page #container #Wrap .section .pict2 {
	float: right;
	margin: 0;
	width: 560px;
	line-height: 0;
}
.page #container #Wrap .section .pict2 img {
	padding: 0;
	margin: 0;
	line-height: 0;
}
.page #container #Wrap .section .pictleft  { float: left;}
.page #container #Wrap .section .pictright { float: right;}
.page #container #Wrap .section .pict3 { width: 750px;}


/* チケット購入 */
.page.ticket #container #Wrap .section dl dt {
	line-height: 1.6em;
	float: left;
	color: #5C7886;
}
.page.ticket #container #Wrap .section dl dd {
	line-height: 1.6em;
	margin-left: 100px;
	letter-spacing: 0.05em;
}
.page.ticket #container #Wrap .section dl dd small {
	display: block;
	padding-top: 5px;
	line-height: 1.3;
}

/* 江戸糸あやつり人形の世界 */
.page #container #Wrap #contents #main .section p.pictleft {
	float: left;
	margin-right: 20px;
}
.page #container #Wrap #contents #main .section h5 {
	margin-bottom: 5px;
	font-size: 18px;
	color: #BB5730;
}
.toweb {
	padding-left: 1.3em;
}
.toweb a:link { color: #f00; }

/* 英語ページ */

.en.page #container #Wrap .section h3 { margin-bottom: 0px;}
.en #container #Wrap #contents #main .section p,
.en #container #Wrap #contents #main .section p.floatleft { line-height: 19px;}
.en #container #Wrap #contents #main .section .text { padding-right: 210px;}
.en #container #Wrap #contents #main .section .text2 { padding-right: 250px;}
.en #container #Wrap #contents #main .section .pict {
    position: absolute;
    right: 25px;
    z-index: 1000;
}
.en #container #Wrap #contents #main .section h4 {margin: 0px 0 15px;}
.en #container #Wrap #contents #main .section h4.line2 {line-height: 0.7; padding: 3px 10px;}
.en.world #container #Wrap #contents #main .section ul li {
	text-indent: -1em;
	padding-left: 1em;
	font-size: 15px;
}



@media screen and (max-device-width: 480px) {


body::before {
  background:url('../images/bg2.jpg')  center top;
  background-size: 100% auto;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  z-index: 0;
}
#container {
	background: none;

}
#container #contents {
    background:none;
    margin-top: 0;
    padding-bottom: 30px;
    position: relative;
    width: 1055px;
    z-index: 10;
}
#container #footer {
	position: relative;
	z-index: 100;

}


.page #container #Wrap .fixed .mainpict {
    background: none;
}

#container #Wrap .fixed {
	position: relative;
	background: none;
}
.page #container #Wrap .fixed {
	margin: 0;
	background: none;
	position: relative;
	height: 248px;
}
#container #contents {
	padding-top: 0;
	background-position: center 120px;
}
.page #container #Wrap #contents #main {
    padding-top: 0;
}
#container #contents #side {
	position: relative;
	top:0;
}
.page #container #contents #side {
    top: 0;
}
	.page #container #Wrap #contents #main .section p {
    font-size: 14px;
    line-height: 1.7em;
}

.page.summary #container #Wrap .section .text {
padding-right: 230px;
}




}
@media screen and (max-height:640px)and (min-width:420px) {

/* サイドコラム
 ---------------------------------------------------------------------- */

#side ul.lang {
	margin-bottom: 5px;
}

#side .subnavi {
	margin-bottom: 0px;
}
#side .subnavi ul li a { height: 48px;}

#side .flyer { margin-bottom: 0px;}
#side .flyer dt { float: left;margin-right: 15px;}
#side .flyer dd { font-size: 13px;line-height: 18px;letter-spacing: 0.05em;}
#side .flyer dd a {color: #f00;}
#side .flyer dd a:hover {text-decoration: underline;}
#side .flyer dd.title {margin-bottom: 3px;}

#side .social li {font-size: 13px;margin-bottom: 5px;height: 20px;line-height: 20px;}
#side .social li img { vertical-align: middle;margin-right: 7px; width: 20px; height: 20px;}

}


/* フロートを設定した子要素を持つ親要素の高さを復活するための設定
========================================================= */
.clearfix:after {
content:"";
display: block;
height: 0;
clear: both;
visibility: hidden;


}
.clearfix {
display: inline-table;
min-height:1%;
}
/*Mac IE に適用させないための設定*/
*html .clearfix {/*セレクタの前に「*htm」1がつくとIE6以前のみに適用される*/
height: 1%;
}
.clearfix {
display:block;
}
