@charset "utf-8";
/* CSS Document */

body {
	background: #000;
	padding-top: 3.91rem;
}
h1,h2,h3,h4,small {
	color: #fff;
}
hr {
	border-bottom: 1px solid #999
}
.gallery a:hover img {
	opacity: 0.6;
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.main-content {
	min-height: 620px;
}
.bg-dark {
	background: #000 !important;
}
.valing_m {
	vertical-align: middle !important;
}
.nav-link {
	display:inline-block;
	font-family: 'Reem Kufi', sans-serif;
	font-size: 17px;
	color:#efefef !important;
	font-weight:400;
	padding:5px 14px;
	margin:6px 0.45rem;
}
.nav-link:hover {
	display: inline-block;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	background:#f00;
	padding:5px 14px;
	text-decoration:none;
}
.nav-link.active {
	display:inline-block;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	background:#f00;
	text-decoration:none;
	padding:5px 14px;
	pointer-events:none;
}
.nav-link.sns {
	display:inline-block;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	background:#000;
	text-decoration:none;
	padding:5px 14px;
}
@media (min-width: 992px) and (max-width: 1199.98px) {
	.nav-link {
		font-size: 15px;
		margin:6px 0.15rem;
	}
}
.p01 {
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
	color: #fff;
}
.p01 a,
.card-text a {
	color: #f00 !important;
}
.p01 a:hover,
.card-text a:hover {
	color: #900 !important;
}
.p02 {
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
	color: #000;
}
.h01 {
	font-family: 'Reem Kufi', sans-serif;
	font-weight:400;
	font-size:32px;
	color: #f00;
	text-align: center;
}
.h02 {
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
	color: #fff;
}
.h02 a {
	color: #fff;
}
.h02 a:hover {
	color: #f60;
	text-decoration: none;
}
.reem {
	font-family: 'Reem Kufi', sans-serif;
	font-weight:400;
}
.herrvon {
	font-family: 'Herr Von Muellerhoff', cursive;
	color: #fff;
}
.herrvon a {
	color: #f00 !important;
}
.herrvon a:hover {
	color: #900 !important;
}
.text-red,
.text-red a {
	color: #f00;
}
.text-yellow,
.text-yellow a {
	color: #ff0;
}
h3.newsT {
	font-family: 'Reem Kufi', sans-serif;
	font-weight:400;
	font-size:1.7rem;
	color: #fff;
}
.topNews {
	background:#fff;
	height:347px;
	overflow:auto;
	padding:20px;
}
@media (min-width: 768px) and (max-width: 1200px) {
	.topNews {
		height:300px;
		overflow:auto;
		padding:10px;
	}
}
@media (max-width: 767px) {
	.topNews {
		height:300px;
		padding:10px;
	}
}
.topNews dl {
	border-bottom:1px dotted #aaa;
	margin-bottom:10px;
	padding-bottom:5px;
}
.topNews dl dt {
	font-size:16px;
	font-family: 'Reem Kufi', sans-serif;
}
.topNews dl dd {
	font-size:16px;
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
}
.topNews dl dd a {
	font-size:16px;
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
	color: #000;
}
.topInsta {
	height:347px;
	overflow:auto;
}
@media (min-width: 768px) and (max-width: 991px) {
	.topInsta {
		height:380px;
		overflow: scroll
	}
}
@media (max-width: 767px) {
	.topInsta {
		height:380px;
		overflow: auto !important;
		width: 100% !important;
		-webkit-overflow-scrolling:touch !important;
	}
}
.topMission {
	background:#fff;
	padding:20px 50px;
}
.topMission p {
	font-size:16px;
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
}
/* イントロダクション */
.intro_t {
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
	color: #fff;
	font-size: 15px;
	line-height: 2.2;
	margin-bottom: 30px;
}
.modal-intro {
	background: url(images/intro_bg.jpg) no-repeat top center;
	background-size: cover;
}
.modal-intro .modal-header {
	border-bottom: none;
}
.modal-intro p {
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
	font-size: 16px;
	line-height: 2.2;
	margin-bottom: 30px;
}
.modal-intro p.lead {
	font-size: 21px;
	font-weight: 600;
}
.btn-warning {
	background-color: #cbb994;
	border-color: #bfa46f;
}

.btn-warning:hover {
	background-color: #bfa46f;
	border-color: #a59564;
}
/* キャスト */
.cast_list p {
	font-size: 18px;
	color: #fff;
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
	text-align: center;
	line-height: 1.8;
}
.cast_list p a {
	font-size: 18px;
	color: #fff;
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
}
.cast_list p small {
	font-size: 10px;
}
.cast_list p a:hover {
	color: #8b2532;
}
.cast_list p.ensemble {
	font-size: 14px;
}
.cast_block {
	border-top-left-radius: 20px; 
	-webkit-border-top-left-radius: 20px;
	-moz-border-radius-topleft: 20px;
	border-bottom-right-radius: 20px; 
	-webkit-border-bottom-right-radius: 20px; 
	-moz-border-radius-bottomright: 20px;
	background: #aaa;
	padding: 20px;
}
.cast_block p {
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
}
.castJ {
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
	font-size: 28px;
}
.castE {
	font-family: 'Herr Von Muellerhoff', cursive;
	font-size: 24px;
}
@media (max-width: 575.98px) {
	.castJ {
		font-size: 20px;
	}
	.castE {
		font-size: 16px;
	}
}
dl.cast_pro {
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
	margin-bottom: 5px;
}
dl.cast_pro dt {
	float: left;
	width: 5em;
	vertical-align: top;
}
dl.cast_pro dd {
	margin-left: 5em;
}
dl.cast_pro dt.j_middle {
	float: left;
	width: 7em;
	vertical-align: top;
}
dl.cast_pro dd.j_middle {
	margin-left: 7em;
}
dl.cast_pro dt.j_long {
	float: left;
	width: 11em;
	vertical-align: top;
}
dl.cast_pro dd.j_long {
	margin-left: 11em;
}
@media (max-width: 767.98px) {
	dl.cast_pro dt {
		float: none;
		width: 100%;
	}
	dl.cast_pro dd {
		margin-left: 0;
	}
	dl.cast_pro dt.j_middle {
		float: none;
		width: 100%;
	}
	dl.cast_pro dd.j_middle {
		margin-left: 0;
	}
	dl.cast_pro dt.j_long {
		float: none;
		width: 100%;
	}
	dl.cast_pro dd.j_long {
		margin-left: 0;
	}
}
dl.staff {
	text-align: left;
	margin: auto;
	width: 400px;
	color: #fff;
	font-size: 18px;
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
}
dl.staff dt {
	text-align: right;
	float: left;
	width: 11em;
	font-weight: normal;
}
dl.staff dd {
	margin-left: 12em;
}
@media (max-width: 575.98px) {
	dl.staff {
		text-align: center;
		width: 100%;
	}
	dl.staff dt {
		text-align: center;
		float: none;
		width: 100%;
	}
	dl.staff dd {
		margin-left: 0;
	}
}
/* Q&A */
.panel-title a {
	line-height: 1.6;
	color: #fff;
}
.panel-collapse {
	line-height: 1.6;
	margin-top: -10px;
	color: #fff;
}
.table_qa {
	color: #000;
	background: #fff;
	font-size: 12px;
	margin-bottom: 0;
	width: 60%;
}
.table_qa th {
	width: 40%;
}
@media (min-width: 992px) and (max-width: 1199px) {
	.table_qa {
		width: 80%;
	}
}
@media (max-width: 767px) {
	.table_qa {
		width: 100%;
	}
	.table_qa th {
		width: 50%;
	}
}
/* dvd */
dl.j_dvd {
	color: #fff;
	font-family: "heisei-mincho-std",sans-serif;
	font-style: normal;
	font-weight: 300;
}
dl.j_dvd dt {
	text-align: right;
	float: left;
	width: 4em;
	font-weight: normal;
}
dl.j_dvd dd {
	margin-left: 4em;
}
@media (max-width: 575.98px) {
	dl.j_dvd dt {
		text-align: center;
		float: none;
		width: 100%;
	}
	dl.j_dvd dd {
		margin-left: 0;
	}
}
.grayRadius {
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	background:#eee;
	color:#000;
	font-size:32px;
	line-height:1.5;
	text-align:center;
	width:870px;
	padding:10px 20px;
	margin-bottom:10px;
	border:2px solid #aaa;
	behavior: url(	ie_css3/PIE.htc);
	margin:0 auto;
}

.orangeRadius {
    background: none repeat scroll 0 0 #f60;
    border-radius: 5px;
    font-size: 32px;
    line-height: 1.5;
    margin-bottom: 10px;
    padding: 10px 20px;
    text-align: center;
    color: #fff;
    width: 960px;
	behavior: url(	ie_css3/PIE.htc);
}

.pinkRadius {
    background: none repeat scroll 0 0 #fff9fc;
    border-radius: 5px;
    margin: 20px 0;
    padding: 0;
    color: #000;
	behavior: url(	ie_css3/PIE.htc);
}
footer {
	padding:20px;
	margin:50px auto 0;
	border-top: 1px solid #aaa;
	color: #fff;
}
/* トップへ戻るボタン */
#page-top {
	font-size: 0;
	position: fixed;
	bottom: 16px;
	right: 16px;
	opacity: 0;
}
#page-top.fade-in {
	color: #e50012;
	font-size: 30px;
	opacity: 0.6;
	transition: opacity 1s;
}
dt.mfp {
	color: #fff;
}
dd.mfp {
	color: #fff;
}
dd.mfp input {
	color: #000;
}
ruby {
	display: inline-table;
	border-collapse: collapse;
    /*height: 2em;*/
    margin: 0;
    padding: 0;
    border: none;
    white-space: nowrap;
    text-indent: 0;
    vertical-align: 0.9em;
    text-decoration: inherit;
    text-align: center;
    line-height: 1em;
}
/* 上ルビ */
ruby>rtc {
    display: table-header-group;
    height: 25%;
    margin: 0;
    padding: 0;
    border: none;
    font: inherit;
    font-size: 50%;
    line-height: 1em;
}
/* 下ルビ(括弧類がある場合とない場合でセレクタが異なる) */
ruby>rtc+rtc,
ruby>rtc+rp+rtc {
    display: table-footer-group;
    height: 25%;
    margin: 0;
    padding: 0;
    border: none;
    font: inherit;
    font-size: 50%;
    text-decoration: none;
    line-height: 1em;
}
/* 各文字に対応するルビ */
ruby>rtc>rt {
    display: table-cell;
    margin: 0;
    padding: 0 0.125em;
    border: none;
    font-size: 100%;
    text-align: center;
    line-height: 1em;
}
/* ルビ対象テキスト */
ruby>rb {
    display: table-cell;
    max-height: 75%;
    margin: 0;
    padding: 0 0.125em;
    border: none;
    font: inherit;
    text-decoration: none;
    text-align: center;
    line-height: 1em;
    vertical-align: top;
}
/* 非対応環境向け括弧類 */
ruby>rp {
    display: none;
}
/* 単純な<ruby>要素での<rt>要素 */
ruby>rt {
    display: table-header-group;
    height: 25%;
    margin: 0;
    padding: 0 0.125em;
    border: none;
    font: inherit;
    font-size: 50%;
    line-height: 1em;
}
/* <ruby>要素入れ子の場合 */
ruby>ruby {
    vertical-align: 0em;
}
/* <ruby>要素が入れ子でない場合のルビテキストと、*/
/* <ruby>要素が入れ子の場合の上位<ruby>要素のルビテキスト、*/
ruby>ruby+rt,
ruby>ruby+rp+rt {
    display: table-footer-group;
}
/* <ruby>要素直下に<rt>要素が二つある場合 */
ruby>rt+rt {
    display: table-footer-group;
}