@charset "utf-8";

/*
==================================================
【PC】上ナビタイプ　目次
==================================================
basic - 共通基本設定
header - ヘッダー
nav - メインナビゲーション
main-visual - メインビジュアル
news-feed - ニュースフィード
news - ニュースページ用
schedule-calendar - スケジュールカレンダー
schedule_chart - スケジュール星取表
401,404,406 - エラーページ
aside - twitterウィジェットやバナーなど
footer - フッター
clearfix - クリアフィックス設定
rollover - 画像ロールオーバー設定
==================================================
*/

/* =============================================== */
/* basic - 共通基本設定 */
/* ----------------------------------------------- */

/* 画像のプリント禁止 */
/*@media print{
  img{display:none !important;}
}*/

/* リセットcss */
article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary{
  display: block;
  margin: 0;
  padding: 0;
}

html,h1,h2,h3,h4,dl,dt,dd,ul,li,p,img{
  margin: 0;
  padding: 0;
}

ul{
  list-style-type: none;
}

/* ボディ */
body{
  font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, sans-serif;
  font-size: 1.1em;
  font-weight: normal;
  margin: 0;
  padding: 0;
  line-height: 1.5;
  color: #333;
}
a:link{text-decoration: underline; color: #e81c4f;}
a:visited{text-decoration: underline; color: #e81c4f;}
a:active{text-decoration: underline; color: #e81c4f;}
a:hover{text-decoration: none; color: #e81c4f;}

/* 画像関連 */
figure{
  margin: 0;
  padding: 0;
}

figcaption{
  font-size: 80%;
  text-align: center;
  margin: 0;
  padding: 0 0 5px 0;
  color: #666;
}

img{
  border: none;
  vertical-align: bottom;
}

figure img{
  max-width: 100%;
  height: auto;
  width /***/:auto; /* 親要素の100% */
}

.image-container{}
.movie-container{}
.music-container{}

/* 配置 */
.left{float: left; margin: 0 10px 10px 0;}
.center{float: none; margin: 0 0 10px 0;}
.right{float: right; margin: 0 0 10px 10px;}

figure.left{text-align: left; margin: 5px 10px 10px 0;}
figure.center{text-align: center; margin: 5px 0 10px 0;}
figure.right{text-align: right; margin: 5px 0 10px 10px;}

/* 罫線 */
hr {height: 0; margin: 15px 0; padding: 0; border: 0; width: 100%;}
.solid{border-top: 1px #999 solid;}
.dotted{border-top: 1px #999 dotted;}
.dashed{border-top: 1px #999 dashed;}
.double{border-top: 3px #999 double;}

/* ページレイアウト */
#wrapper{
  width: 100%;
  margin: 0;
  padding: 0;
}

section{
  width: 100%;
  margin: 0;
  padding: 60px 0 40px;
  clear: both;
}

#top-contents{}
#news-feed-index{padding: 30px 0 15px;}
#free-format-1{}
#free-format-2{}
#free-format-3{}
#free-format-4{}
#news-contents{}
#other-contents{}

/* メインコンテンツ部分(main-box内) */
.contents-title{
  width: 1000px;
  margin: 0 auto;
  font-size: 140%;
  text-align: center;
  background: #333;
  color: #fff;
}

#head{
  font-size: 120%;
  text-align: center;
  background: #000;
  color: #fff;
  margin: 15px 0 0;
  padding: 5px;
}

article{
  width: 1000px;
  margin: 0 auto;
  padding: 30px 0;
  clear: both;
}

.subhead{
  font-size: 100%;
  padding: 8px 15px;
  margin: 0 0 15px;
  clear: both;
  border-top: 1px solid #666;
  border-bottom: 1px dotted #666;
}

.packs{
  margin: 0 auto;
  padding: 0 0 0 15px;
  width : 985px;
}

.column{
  margin: 0;
  padding: 0 15px 0 0;
  float: left;
}

/* ページトップ */
#pagetop{
  position: fixed;
  bottom: 10px;
  right: 10px;
  padding: 10px 20px;
}

/* =============================================== */
/* header - ヘッダー */
/* ----------------------------------------------- */
/* ヘッダー大枠 */
header{
  width: 100%;
  margin: 0;
  padding: 0;
}

/* ヘッダー内部 */
#header-inner{
  width: 1000px;
  margin: 0 auto;
  padding: 0;
}

/* 左部分(サイトタイトル) */
#header-left{
  float: left;
  width: 500px;
  margin: 40px 0 0 0;
  padding: 0;
}

#site-title{
  width: 500px;
  margin: 0;
  padding: 0;
}

#site-caption{
  margin: 3px 0 8px;
  padding: 0;
  font-size: 80%;
}

/* 右部分(用途に合わせて会員メニュー・SNSボタンなど) */
#header-right{
  float: left;
  width: 500px;
  margin: 0;
  padding: 0;
}

#member-menu{
  margin: 0;
  padding: 15px 0;
}

#member-menu li{
  float: right;
  margin: 0 0 0 10px;
  padding: 0 1em;
  font-size: 80%;
  background: url('/imagesPC/allow01.gif') no-repeat 0 5px;
}
#member-menu li a:link{text-decoration: none;}
#member-menu li a:visited{text-decoration: none;}
#member-menu li a:active{text-decoration: none;}
#member-menu li a:hover{text-decoration: underline;}

.welcome{
  clear: both;
  text-align: right;
  font-size: 90%;
  padding: 0.3em 1em;
  margin: 0;
}

/* =============================================== */
/* nav - メインナビゲーション */
/* ----------------------------------------------- */
/* ナビ全体枠 */
nav{
  clear: both;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  background: #000;
}

#main-menu{
  width: 1000px;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}

#main-menu li{
  float: left;
  display: block;
  padding: 9px 0;
  font-weight: bold;
}
#main-menu li a{
  color: #fff;
}
#main-menu li a:link{text-decoration: none; padding: 10px 1em;}
#main-menu li a:visited{text-decoration: none; padding: 10px 1em;}
#main-menu li a:active{text-decoration: none; padding: 10px 1em;}
#main-menu li a:hover{text-decoration: none; background: #666; padding: 10px 1em;}

/* 第二階層 */
#main-menu .sub-menu{
  position: absolute;
  top: 100%;
}
#main-menu .sub-menu li{
  float: none;
  margin: 0;
  padding: 0;
}
#main-menu .sub-menu li a{
  display: block;
  padding: 1em 1.5em;
  font-size: 80%;
  font-weight: normal;
  text-align: left;
  background: #000;
}
#main-menu .sub-menu li a:link{text-decoration: none;}
#main-menu .sub-menu li a:visited{text-decoration: none;}
#main-menu .sub-menu li a:active{text-decoration: none;}
#main-menu .sub-menu li a:hover{text-decoration: none; background: #666;}

/* 第二階層のフェード設定 */
#main-menu .sub-menu{
  visibility: hidden;
  opacity: 0;
  transition: .1s ease-in-out;
  transform: translateY(-20px);
}
#main-menu li:hover > .sub-menu{
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.fixed{
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 10000;
}

/* =============================================== */
/* main-visual - メインビジュアル */
/* ----------------------------------------------- */
#main-visual{
  width: 1000px;
  margin: 0 auto;
  padding: 0;
  text-align: center;
}

#visual-caption{
  margin: 0;
  padding: 2px 0 10px;
  font-size: 80%;
  text-align: center;
}

/* =============================================== */
/* news-feed - ニュースフィード */
/* ----------------------------------------------- */
#news-feed-index ul{
  width: 1000px;
  margin: 0 auto;
  padding: 20px 0;
}

#news-feed-index h3{
  font-size: 85%;
  margin: 0;
  padding: 4px 0 4px 1em;
  clear: both;
  background: url('/imagesPC/allow01.gif') no-repeat 0 8px;
}

.thumbnail{
  width: 80px;
  float: left;
  padding: 5px 10px 5px 1em;
}

.news-txt{
  padding: 5px 0 5px 0;
  font-size: 80%;
}

/* =============================================== */
/* news - ニュースページ用 */
/* ----------------------------------------------- */
/* 記事タイトル部分（subhead内） */
.date{
  font-size: 70%;
  display: block;
  color: #333;
}

.headline a:link{text-decoration: none; color: #333;}
.headline a:visited{text-decoration: none; color: #333;}
.headline a:active{text-decoration: none; color: #333;}
.headline a:hover{text-decoration: none; color: #e81c4f;}

/* 記事内カテゴリー */
.article-category{
  clear: both;
  font-size: 80%;
  text-align: right;
  padding: 1em 15px;
  margin: 0;
}
.article-category a:link{
  text-decoration: none;
  color: #333;
  padding: 0 0 0 1em;
  background: url('/imagesPC/allow01.gif') no-repeat left;
}
.article-category a:visited{text-decoration: none; color: #333;}
.article-category a:active{text-decoration: none; color: #333;}
.article-category a:hover{text-decoration: none; color: #e81c4f;}

/* プレビュー・ネクスト */
#pager{
  text-align: center;
  clear: both;
  margin: 15px 0 60px;
  padding: 0;
}

#pager li{
  display: inline;
  margin: 0 1em;
  padding: 0;
  font-size: 80%;
}
#pager li a:link{text-decoration: none; color: #fff; background: #444; padding: 0.8em 1.5em; border-radius: 5px;}
#pager li a:visited{text-decoration: none; color: #fff;}
#pager li a:active{text-decoration: none; color: #fff;}
#pager li a:hover{text-decoration: none; color: #e81c4f; background: #000;}

.disabled{display: none;}

/* 最新記事・カテゴリー・アーカイブのリスト（bottom-box内） */
#bottom-box{
  width:1000px;
  margin: 20px auto;
  clear: both;
}

#new-entry{float: left; width: 49%; margin: 0.5%;}
#category{float: left; width: 24%; margin: 0.5%;}
#archive{float: left; width: 24%; margin: 0.5%;}

h4{
  background: #000;
  color: #fff;
  font-size: 80%;
  padding: 3px 15px;
  border-radius: 0 8px 0 0;
}

.side-list{
  font-size: 80%;
  margin: 5px 0;
}

.side-list li{
  padding: 5px 1em;
  margin: 0 10px;
  background: url('/imagesPC/allow01.gif') no-repeat 0 10px;
  border-bottom: 1px dotted #aaa;
}
.side-list li a:link{text-decoration: none; color: #333;}
.side-list li a:visited{text-decoration: none; color: #333;}
.side-list li a:active{text-decoration: none; color: #333;}
.side-list li a:hover{text-decoration: none; color: #e81c4f;}

/* =============================================== */
/* schedule-calendar - スケジュールカレンダー */
/* ----------------------------------------------- */
/* カレンダー大枠 */
.schedule-calendar{
  width: 970px;
  border-collapse: collapse;
  margin: 0;
}

.schedule-calendar td{
  vertical-align: top;
  border: 1px solid #888;
  width: 12%;
  padding: 1%;
}

/* 曜日のセル */
.schedule-calendar .weekday{
  text-align: center;
  background: linear-gradient(#888, #444);
  padding: 0.5%;
  color: #fff;
  font-size: 75%;
  font-weight: bold;
}

/* 平日のセル */
.schedule-calendar .day{
  height: 110px;
  background: linear-gradient(#fff, #ededed);
}

/* 土・日・休演 */
.schedule-calendar .sat{color: #66ccff;}
.schedule-calendar .sun{color: #ff6699;}
.schedule-calendar .fullclose{background: #fff;}

/* 日付 */
.schedule-calendar .date{
  font-size: 150%;
  font-weight: bold;
  color: #777;
  text-align: center;
  padding: 0 0 10px;
}
.fullclose .date{color: #ddd;}

/* 時刻 */
.schedule-calendar .time{
  font-size: 85%;
  font-weight: bold;
  color: #333;
  margin: -1px 0 0;
  padding: 0;
  border-top:1px solid #ddd;
  border-bottom:1px solid #ddd;
}
.fullclose .time{
  color: #ddd;
  border: none;
  text-align: center;
}

/* 時刻横の特記事項 */
.time span{
  font-size: 85%;
  padding-left: 3px;
  color: #777;
}

/* =============================================== */
/* schedule_chart - スケジュール星取表 */
/* ----------------------------------------------- */
/* 星取大枠 */
.schedule-chart{
  width: 970px;
  border-collapse: collapse;
  border: 1px solid #888;
  table-layout: fixed;
  margin: 0;
}

.schedule-chart td{
  border: 1px solid #ccc;
  text-align: center;
  font-size: 70%;
  background: #fff;
}

/* 月 */
.schedule-chart .month{
  padding: 0.5%;
  background: #444;
  color: #fff;
  border: 1px solid #888;
}

/* 日 */
.schedule-chart .day{
  background: #666;
  color: #fff;
  border: 1px solid #888;
  border-top: none;
  border-bottom: none;
}

/* 土・日・休演 */
.schedule-chart .sat{color: #66ccff;}
.schedule-chart .sun{color: #ff6699;}

/* 時刻（一番左の列） */
.schedule-chart th{
  width: 100px;
  font-size: 85%;
  font-weight: bold;
  background: #444;
  color: #fff;
  border: 1px solid #888;
}

/* =============================================== */
/* 401,404,406 - エラーページ */
/* ----------------------------------------------- */
.error-page .column{
  width: 970px;
  margin: 0 auto;
  padding: 0 15px 50px 0;
  text-align: center;
}

.error-page .pack p{
  padding: 30px 0 0;
  text-align: center;
}

/* =============================================== */
/* aside - twitterウィジェットやバナーなど*/
/* ----------------------------------------------- */
aside{
  width: 100%;
  margin: 40px 0 20px;
  padding: 0 0 15px;
}

.twitter{
  width: 600px;
  margin: 0 auto 30px;
}

.banner{
  width: 1000px;
  text-align: center;
  margin: 0 auto 20px;
  padding: 0;
  clear: both;
}

.banner li{
  width: 260px;
  display: inline;
  margin: 0;
  padding: 5px;
}

/* =============================================== */
/* footer - フッター */
/* ----------------------------------------------- */
/* フッター大枠 */
footer{
  width: 100%;
  height: 100px;
  margin: 0;
  padding: 15px 0;
  clear: both;
  color: #fff;
  background: #000;
}

/* フッターメニュー */
#footer-menu{
  width: 1000px;
  text-align: center;
  margin: 0 auto 15px;
  padding: 5px 0 15px;
  font-size: 80%;
  border-bottom: 1px solid #444;
  clear: both;
}

#footer-menu li{
  display: inline;
  padding: 5px 1em;
  margin: 0 0.5em;
  background: url('/imagesPC/allow01.gif') no-repeat 0 7px;
}
#footer-menu li a:link{text-decoration: none; color: #fff;}
#footer-menu li a:visited{text-decoration: none; color: #fff;}
#footer-menu li a:active{text-decoration: none; color: #fff;}
#footer-menu li a:hover{text-decoration: none; color: #e81c4f;}

/* フッター内部 */
#footer-inner{
  width: 1000px;
  margin: 0 auto;
  padding: 0;
  clear: both;
  font-size: 85%;
}

/* 左部分(用途に合わせてバナー等) */
#footer-left{
  width: 250px;
  float: left;
  margin: 0;
  padding: 0;
  min-height: 20px;
}

/* 中央部分(コピーライト等) */
#footer-center{
  width: 500px;
  float: left;
  margin: 0;
  padding: 0;
  min-height: 20px;
}

#footer-center p{
  text-align: center;
  font-size: 80%;
}

/* 右部分(mincへのリンク等) */
#footer-right{
  width: 250px;
  float: left;
  margin: 0;
  padding: 0;
  min-height: 20px;
}

#footer-right p{
  text-align: right;
  font-size: 80%;
  margin: 0;
  padding: 0;
}
#footer-right p a:link{text-decoration: none; color: #fff;}
#footer-right p a:visited{text-decoration: none; color: #fff;}
#footer-right p a:active{text-decoration: none; color: #fff;}
#footer-right p a:hover{text-decoration: underline; color: #fff;}

/* =============================================== */
/* clearfix - クリアフィックス設定 */
/* ----------------------------------------------- */
.clearfix:after {
  content:" ";
  display:block;
  clear:both;
}

/* =============================================== */
/* rollover - 画像ロールオーバー設定 */
/* ----------------------------------------------- */
a:hover img{
  -moz-opacity: 0.80;
  opacity: 0.80;
  filter: alpha(opacity=80);
}

nav a:hover img{
  -moz-opacity: 1;
  opacity: 1;
  filter: alpha(opacity=100);
}