@charset "utf-8";


/*PC・タブレット・スマホ(全端末)共通設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/

/*全体の設定
---------------------------------------------------------------------------*/
body {
	margin: 0px;
	padding: 0px;
	-webkit-text-size-adjust: none;
	color: #999;	/*全体の文字色*/
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;	/*フォント種類*/
	font-size: 16px;	/*文字サイズ*/
	line-height: 2;		/*行間*/
	background: #fff;	/*背景色*/
}
h1,h2,h3,h4,h5,p,ul,ol,li,dl,dt,dd,form,figure,form,select,input,textarea {margin: 0px;padding: 0px;font-size: 100%;font-weight: normal;}
ul {list-style-type: none;}
ol {padding-left: 40px;padding-bottom: 15px;}
img {border: none;max-width: 100%;height: auto;vertical-align: middle;}
table {border-collapse:collapse;font-size: 100%;border-spacing: 0;}
iframe {width: 100%;}

/*リンク（全般）設定
---------------------------------------------------------------------------*/
a {
	color: #999;	/*リンクテキストの色*/
	transition: 0.3s;	/*マウスオン時の移り変わるまでの時間設定。0.3秒。*/
}
a:hover {
	color: #ff92c8;	/*マウスオン時の文字色*/
}


/*コンテナー（ホームページを囲む一番外側のブロック）
---------------------------------------------------------------------------*/
#container {
	max-width: 1400px;	/*ブロックの最大幅*/
	margin: 0 auto;
	padding: 0 3%;
}

/*ヘッダー（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
/*headerブロック*/
header {
	text-align: center;	/*内容を中央よせ*/
}
/*ロゴ画像設定*/
#logo img {
	width: 400px;	/*画像幅*/
	margin: 40px auto 40px;	/*ロゴの上と下に40pxスペースを空ける設定*/
}

/*トップページのメイン画像
---------------------------------------------------------------------------*/
/*画像ブロック*/
#mainimg img {
	border-radius: 10px;	/*角を丸くする指定。この１行を削除すれば角丸がなくなります。*/
	margin-bottom: 40px;	/*下に空けるスペース*/
}

/*メニュー
---------------------------------------------------------------------------*/
/*メニュー全体を囲むブロック*/
#menubar {
	text-align: center;		/*文字をセンタリング*/
	font-size: 18px;		/*文字サイズ*/
	margin-bottom: 40px;	/*下に空けるスペース*/
}
/*メニュー１個あたりの設定*/
#menubar li {
	display: inline;	/*横並びにする設定*/
}
#menubar li a {
	text-decoration: none;
	padding: 15px 30px;	/*各メニュー内の余白。上下に15px、左右に30pxあけるという意味。*/
}
/*マウスオン時の設定*/
#menubar li a:hover {
	color: #ff92c8;	/*文字色*/
	border-bottom: 4px solid #ff92c8;	/*下線の幅、線種、色*/
}

/*コンテンツ（見出しバーや文字などが入っているブロック）
---------------------------------------------------------------------------*/
/*コンテンツのh2タグの設定*/
#contents h2 {
	clear: both;
	margin-bottom: 20px;
	color: #ffffff;		/*文字色*/
	padding: 10px 20px;	/*上下、左右への余白*/
	background: #40cdde;	/*背景色*/
	border-radius: 10px;	/*角を丸くする指定。この１行を削除すれば角丸がなくなります。*/
}
/*コンテンツのh3タグの設定*/
#contents h3 {
	clear: both;
	margin-bottom: 20px;
	padding: 8px 20px;	/*上下、左右への余白*/
	background: #fff;	/*背景色*/
	border: 1px solid #999;	/*枠線の幅、線種、色*/
	border-radius: 10px;	/*角を丸くする指定。この１行を削除すれば角丸がなくなります。*/
}
/*コンテンツのp(段落)タグ設定*/
#contents p {
	padding: 0px 20px 20px;	/*上、左右、下への余白*/
}
/*他。微調整。*/
#contents p + p {
	margin-top: -5px;
}
#contents h2 + p,
#contents h3 + p {
	margin-top: -10px;
}
#contents section + section {
	margin-top: 30px;
}

/*Galleryページ
---------------------------------------------------------------------------*/
/*各ブロックごとの設定*/
.list {
	overflow: hidden;
	border-bottom: 1px solid #999;	/*下線の幅、線種、色*/
	padding: 20px;	/*ボックス内の余白*/
}
/*h4見出しの設定*/
.list h4 {
	color: #00ffff;	/*文字色*/
}
/*画像の設定*/
.list img {
	width: 50%;			/*画像幅*/
	float: left;		/*画像を左に回り込み*/
	margin-right: 3%	/*画像の右側に空けるスペース*/
}
/*段落タグ*/
.list p {
	padding: 0 !important;
}

/*フッター(ページ最下部のcopyrightのパーツ)設定
---------------------------------------------------------------------------*/
footer {
	clear: both;
	text-align: center;	/*文字をセンタリング*/
	padding: 30px 0px 10px;	/*上、左右、下へのボックス内の余白*/
}
footer a {
	text-decoration: none;
	border: none;
}
footer .pr {
	display: block;
}

/*トップページ内「更新情報・お知らせ」ブロック
---------------------------------------------------------------------------*/
/*ブロック全体の設定*/
#new dl {
	padding: 0px 20px;	/*上下、左右へのブロック内の余白*/
	margin-bottom: 20px;	/*ブロックの下(外側)に空ける余白*/
}
/*日付設定*/
#new dt {
	font-weight: bold;	/*太字にする設定。標準がいいならこの行削除。*/
	float: left;
	width: 8em;
}
/*記事設定*/
#new dd {
	padding-left: 8em;
}

/*テーブル
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta1 caption {
	border: 1px solid #999;	/*テーブルの枠線の幅、線種、色*/
	border-bottom: none;	/*下線だけ消す*/
	text-align: left;		/*文字を左寄せ*/
	background: #eee;		/*背景色*/
	font-weight: bold;		/*太字に*/
	padding: 10px;			/*ボックス内の余白*/
}
/*テーブル１行目に入った見出し部分（※tamidashi）*/
.ta1 th.tamidashi {
	width: auto;
	text-align: left;	/*左よせ*/
	background: #eee;	/*背景色*/
}
/*ta1テーブルブロック設定*/
.ta1 {
	table-layout: fixed;
	width: 100%;
	margin: 0 auto 20px;
}
.ta1, .ta1 td, .ta1 th {
	word-break: break-all;
	border: 1px solid #999;	/*テーブルの枠線の幅、線種、色*/
	padding: 10px;			/*テーブル内の余白*/
}
/*テーブルの左側ボックス*/
.ta1 th {
	text-align: center;	/*センタリング*/
	width: 30%;			/*幅*/
}

/*トップページのNEWアイコン
---------------------------------------------------------------------------*/
.newicon {
	background: #F00;	/*背景色*/
	color: #FFF;		/*文字色*/
	font-size: 70%;
	line-height: 1.5;
	padding: 2px 5px;
	border-radius: 2px;
	margin: 0px 5px;
	vertical-align: text-top;
}

/*その他
---------------------------------------------------------------------------*/
.look {background: #e5e5e5;padding: 5px 10px;border-radius: 4px;}
.mb15,.mb1em {margin-bottom: 15px;}
.color1 {color: #ff92c8;}
.pr {font-size: 12px;}
.wl {width: 96%;}
.ws {width: 50%;}
.c {text-align: center;}
.r {text-align: right;}
.l {text-align: left;}



/*画面幅580px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:580px){

/*全体の設定
---------------------------------------------------------------------------*/
body {
	font-size: 12px;	/*文字サイズ*/
	line-height: 1.5;	/*行間*/
}

/*メニュー
---------------------------------------------------------------------------*/
/*メニュー１個あたりの設定*/
#menubar li {
	display: block;	/*縦並びにする設定*/
	margin-bottom: 10px;
}
#menubar li a {
	text-decoration: none;
	padding: 8px 30px;	/*各メニュー内の余白。*/
}

/*Galleryページ
---------------------------------------------------------------------------*/
/*各ブロックごとの設定*/
.list {
	padding: 10px;	/*ボックス内の余白*/
}

/*その他
---------------------------------------------------------------------------*/
.ws,.wl {width: 94%;}

}


/*日程表
---------------------------------------------------------------------------*/
.table-scroll {
  overflow-x: auto;
}
.table_design11 {
  border-collapse: collapse;
  min-width: 700px;
  font-weight: bold;
  text-align: center;
}
.table_design11 th, .table_design11 td {
  padding: .5em 1em;
}
.table_design11 th {
  border-top: 2px solid #4d9bc1;
  border-bottom: 2px solid #4d9bc1;
  color: #4d9bc1;
}


/*公演概要テーブル
---------------------------------------------------------------------------*/
.table_design03 {
border-collapse: collapse;
width: 100%;
max-width: 1000px;
}
.table_design03 th, .table_design03 td {
border-bottom: 2px solid #c1c7c6;
padding: 1em;
}
.table_design03 th {
border-bottom: 2px solid #4d9bc1;;
font-weight: bold;
text-align: center;
width: 20%;
min-width: 4em;
}

/*チラシ画像横並び
---------------------------------------------------------------------------*/
.flex{
  display: flex;
  justify-content: space-between;
  
}
.flex>p {
  width: 100%;
}


/*ボックス
---------------------------------------------------------------------------*/
h10 {
   padding: 0.5em 1em;
   margin: 2em 0;
  display :inline-block;
  border: solid 4px red;
  background-color: #ff0000;
}



/*ボックス26
---------------------------------------------------------------------------*/
.box26 {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #95ccff;
    border-radius: 8px;
}
.box26 .box-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 19px;
    background: #FFF;
    color: #ff6347;
    font-weight: bold;
}
.box26 p {
    margin: 0; 
    padding: 0;
}





/*強調
---------------------------------------------------------------------------*/
.str {
  display       : inline-block;        /* ブロック化              */
  font-weight   : bold;                /* 太字                    */
  font-size     : 150%;                /* 文字を大きくする        */
  border-bottom : 2px solid #ffffff;   /* 下線                    */
  color         : #ff0000;             /* 文字色                  */
  background    : #ffffff;             /* 背景色                  */
  padding       : 4px;                 /* 背景色内の余白          */
  margin        : 0 2px;               /* 背景色のの外左右余白    */
}

/* マスキングテープ風 */
.box5-5 {
   position: relative; /* タイトルをボックス内の左上に配置するための基準 */
   margin: 0 auto 2em; /* 外側の余白（上下と中央配置） */
   background-color: #F6EEEC; /*ボックス背景色 */
}

.box5-5 .box-title {
   background-image: repeating-linear-gradient(-45deg,#F6EEEC 0, #F6EEEC 3px,#fafafa 3px,#fafafa 6px); /*ストライプ*/
   transform: rotate(-2deg); /* テープの傾き */
   box-shadow: 0 1px 2px rgb(0 0 0 / .1); /*テープ影*/
   padding: .5em 1em; /* タイトルの余白 */
   line-height: 1; /* タイトルの行の高さ */
   position: absolute; /* 親要素の左上に固定 */
   top: -1em; /* 上端に配置 */
   left: 1em; /* 左端に配置 */
   display: inline-block; /* タイトルの幅を内容に合わせる */
   font-size: 0.9em; /* タイトルのフォントサイズ */
   width: auto; /* タイトル幅を内容に応じて可変にする */
   max-width: calc(100% - 2em); /* 左右の余白を考慮して最大幅を調整 */
   white-space: nowrap; /* タイトルを1行に固定 */
   overflow: hidden; /* はみ出した部分を非表示 */
   text-overflow: ellipsis; /* 省略記号（...）を表示 */
}

/*ボックス交差線
---------------------------------------------------------------------------*/
.box5-5 .box-content {
   padding: 2.5em 2em 2em; /* コンテンツ内の余白 */
}

/* pタグのmarginを0にする */
.box5-5 p {
   margin: 0;
}

.box17{
    margin:2em 0;
    position: relative;
    padding: 0.5em 1.5em;
    border-top: solid 2px black;
    border-bottom: solid 2px black;
}
.box17:before, .box17:after{
    content: '';
    position: absolute;
    top: -10px;
    width: 2px;
    height: -webkit-calc(100% + 20px);
    height: calc(100% + 20px);
    background-color: black;
}
.box17:before {left: 10px;}
.box17:after {right: 10px;}
.box17 p {
    margin: 0; 
    padding: 0;
}
