@charset "utf-8";

@font-face {
	font-family:'TPR';
	src:url('images/fonts/TrajanPro-Regular.eot?');
	src:url('images/fonts/TrajanPro-Regular.woff') format('woff'),url('images/fonts/TrajanPro-Regular.ttf') format('truetype');
}


@media screen and (min-width:800px) { 
	.dispSP {
		display:none;
	}
}
@media screen and (max-width:799px) { 
	.dispPC {
		display:none;
	}
}

/* ============================================================================================
	CSS reset
============================================================================================= */
* {
	box-sizing:border-box;
	text-size-adjust:100%;
	-webkit-text-size-adjust:100%;
}
html ,body ,div ,p ,span ,iframe ,a ,img ,
h1 ,h2 ,h3 ,h4 ,h5 ,h6 ,
dl ,dt ,dd ,ol ,ul ,li ,
form ,label ,
table ,thead ,tbody ,tfoot ,tr ,th ,td ,
blockquote ,q ,pre ,
header ,footer ,nav ,article ,section ,aside {
	margin:0;
	padding:0;
	border:0 none;
	font-size:100%;
	font-weight:normal;
}
button ,input ,textarea ,select ,option {
	font-size:14px;
	letter-spacing:1px;
	font-family:"メイリオ" ,"ヒラギノ角ゴPro W3" ,Osaka ,"ＭＳ Ｐゴシック" ,sans-serif;
}
button {
	padding:5px 20px;
}

html ,body {
	min-height:100%;
	height:100%;
	font-family:"メイリオ" ,"ヒラギノ角ゴPro W3" ,Osaka ,"ＭＳ Ｐゴシック" ,sans-serif;
	line-height:1.3;
}
a ,a:link ,a:visited {
	color:#ff0;
	text-decoration:none;
}
a:hover {
	color:#f00;
	text-decoration:none;
}

img {
	vertical-align:bottom;
	max-width:100%;
	image-rendering:auto;
	image-rendering:-webkit-optimize-contrast;
}
ol ,ul ,li {
	list-style:none;
}
ol ,ul {
	font-size:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
blockquote ,q {
	quotes:none;
}
blockquote:before ,blockquote:after
,q:before ,q:after {
	content:'';
	content:none;
}
header ,footer ,nav ,article ,section ,aside {
	display:block;
}

/* ==============================================
	cleafix
=============================================== */
.clearfix:after {
	display:block;
	clear:both;
	height:0px;
	line-height:0px;
	visibility:hidden;
	content:".";
}
.clearfix {
	display: block; /* for IE8 */
	zoom: 1; 
}


/* ============================================================================================
	common
============================================================================================= */
/* ==============================================
	titlebar
=============================================== */
.titleBar {
	position:relative;
	width:100%;
	padding-top:10px;
	padding-bottom:20px;
	overflow:hidden;
	text-align:center;
}

.titleBar span {
	display:inline-block;
	font-family:"TPR",serif;
	font-size:32px;
	letter-spacing:2px;
	color:#ffe;
	text-shadow:0 0 5px #fc9,0 0 10px #fc9;
	vertical-align:top;
	line-height:1;
}
.titleBar span:nth-child(2) {
	position:absolute;
	top:30px;
	right:10px;
	display:block;
	font-size:16px;
	color:#fff;
	letter-spacing:0px;
}
@media screen and (max-width:799px) { 
	.titleBar {
		padding-top:10px;
	}
	.titleBar span:nth-child(1) {
		padding-bottom:20px;
	}
	.titleBar span:nth-child(2) {
		top:40px;
		right:0;
		width:100%;
		text-align:center;
	}
}

.titleBar:before ,
.titleBar:after {
	content:"";
	display:inline-block;
	width:56px;
	height:32px;
	background:url(images/common/icon_title.png) 50% 50% no-repeat;
	background-size:contain;
}



.titleBar.noMark {
	padding:0 0 20px;
}
.titleBar.noMark:before ,
.titleBar.noMark:after {
	content:none;
}
@media screen and (max-width:799px) { 
	.titleBar.noMark {
		padding:20px 0 0;
	}
	.titleBar.noMark span {
		font-size:26px;
	}
	#menuHtmlBody .titleBar.noMark span {
		font-size:20px;
	}
}






.subtitleBar {
	margin-bottom:15px;
	padding:5px 10px;
	color:#fff;
	text-shadow:1px 1px 0px #000;
	background:linear-gradient(#bbb,#333) #666;
	background:-moz-linear-gradient(center top,#bbb,#333);
	background:-webkit-gradient(linear,center top,center bottom,from(#bbb),to(#333));
	border:1px solid #999;
	font-size:20px;
	text-align:center;
}


/* ==============================================
	blocks
=============================================== */
.noData {
	width:100%;
	min-height:300px;
	padding-top:80px;
	color:#999;
	font-size:14px;
	text-align:center;
}

.commonList {
	text-align:center;
	margin-bottom:15px;
}


/* ==============================================
	blocks infoBox
=============================================== */
.infoBox {
	width:100%;
	padding:15px;
	color:#eee;
	background:url(images/common/infobox_bg.jpg) 50% 0 repeat;
	font-size:14px;
	line-height:1.6;
	box-shadow:0 0 10px #999;
}
.infoBox .infoBox {
	background:rgba(0,0,0,0.6);
	margin-bottom:20px;
}
.infoBox .infoBox:last-child {
	margin-bottom:0;
}

.infoBox p {
	padding:5px 0;
}
.infoBox p.rb {
	line-height:2.4;
}
.infoBox p.rb ruby rt {
	font-family:arial,sans-serif;
}

@media screen and (max-width:799px) { 
	.infoBox {
		padding:5px;
	}
}

/* ==============================================
	image list
=============================================== */
.imageList {
	padding:20px 0;
}
.imageList li {
	text-align:center;
	margin-bottom:30px;
}
.imageList li:last-child {
	margin-bottom:0px;
}


/* ==============================================
	aligns
=============================================== */
.center {
	text-align:center;
}

.sendIP {
	margin-top:1em;
	color:#999;
	font-size:xx-small;
	text-align:right;
}

.noticeInfo {
	color:#f90;
}
.noticeAlert {
	color:#f00;
}
.noticeLink {
}
.noticeLink a {
	color:#f9c;
}
.noticeLink a:hover {
	text-decoration:underline;
}

.mBottom {
	margin-bottom:30px;
}

.strong {
	font-size:22px;
	color:#fc0;
}
.em {
	font-size:20px;
	color:#fc0;
}

a ,
a img ,
.castCell {
    -webkit-transition: all 0.3s ease;
       -moz-transition: all 0.3s ease;
         -o-transition: all 0.3s ease;
	        transition: all 0.3s ease;
}
.noHoverTrans a ,
.noHoverTrans a img ,
.bx-wrapper a {
    -webkit-transition:none;
       -moz-transition:none;
         -o-transition:none;
	        transition:none;
}

.iframeOuter {
	overflow:auto;
	-webkit-overflow-scrolling:touch;
}
.iframeOuter iframe {
	display:block;
	width:100%;
	height:100%;
	height:-webkit-fill-available;
}


/* ============================================================================================
	body
============================================================================================= */
body {
	position:relative;
	font-size:12px;
	color:#fff;
	text-shadow:1px 1px 0 #000;
	background:url(images/common/bg.jpg) 50% 0 repeat #322;
}
body .innerFrame {
	width:1000px;
	margin:0 auto;
}
body #body {
	width:1000px;
	margin:0 auto;
	padding-top:20px;
	padding-bottom:40px;
	background:rgba(0,0,0,0.4);
}
body #body .innerFrame {
	width:980px;
}
@media screen and (max-width:799px) { 
	body #bgLayer {
		width:480px;
		margin:auto;
	}
	body .innerFrame {
		width:100%;
	}
	body #body {
		width:100%;
		padding-top:120px;
	}
	body #body .innerFrame {
		width:100%;
	}
}

/* ============================================================================================
	header
============================================================================================= */
header {
	position:relative;
	margin:0 auto;
}
header #h1 {
	background:rgba(0,0,0,0.6);
}
header #h1 h1 {
	padding:3px 10px;
	font-size:11px;
}
@media screen and (max-width:799px) { 
}


/* ==============================================
	header > logo / tel
=============================================== */
header #header {
	height:120px;
	display:flex;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}
header #header li {
	height:100%;
}
header #header li img {
	max-height:100%;
}
header #header li span {
	display:block;
	height:40px;
	line-height:20px;
	font-size:16px;
	font-family:"TPR",serif;
	color:#eee;
}
header #header li span#headerTel {
	height:40px;
	line-height:40px;
}
header #header li span#headerTel a {
	color:#fff;
}
header #header li span#headerTel a:hover {
	text-shadow:0 0 5px #fc9 ,0 0 10px #fc9;
}


@media screen and (min-width:800px) { 
	header #header li:last-child {
		padding-top:30px;
		text-align:right;
	}
	header #header li span#headerTel a span {
		font-size:30px;
		line-height:40px;
	}
}
@media screen and (max-width:799px) { 
	header {
		position:fixed;
		top:0;
		left:0;
		width:100%;
		z-index:90000;
	}
	header #headerInner {
		position:relative;
		width:480px;
		margin:auto;
	}
	header #header {
		height:110px;
		padding:5px 0 20px;
		border-bottom:1px solid #666;
		border-radius:0 0 50% 50%;
		background:rgba(0,0,0,0.9);
		box-shadow:0 1px 5px #000;
	}
	header #headerMenu {
		cursor:pointer;
	}
	header #headerMenu ,
	header #header li span#headerTel {
		width:80px;
		height:80px;
		line-height:70px;
		text-align:center;
	}
	header #headerMenu img ,
	header #header li span#headerTel img {
		width:60px;
		height:60px;
		vertical-align:middle;
	}
	header #header li span.dispPC {
		display:none !important;
	}
}

/* ==============================================
	header > menu
=============================================== */
header nav {
	background:rgba(0,0,0,0.9);
	border-top:1px solid #666;
	border-bottom:1px solid #666;
}
header nav ul.navMenu {
	height:65px;
	margin:auto;
	display:flex;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}
header nav li {
	width:12.5%;
	height:100%;
	overflow:hidden;
}
header nav li a {
	position:relative;
	display:block;
	width:100%;
	height:100%;
	padding:10px 0;
	text-align:center;
}
header nav li a:hover {
	background:rgba(255,255,255,0.2);
}
header nav li a > span {
	position:relative;
	display:block;
	width:100%;
	height:100%;
	padding-left:1px;
	text-align:center;
	overflow:hidden;
}
header nav li:last-child a > span {
	padding-right:1px;
}
header nav li a > span:before ,
header nav li:last-child a > span:after {
	content:"";
	position:absolute;
	top:0;
	display:block;
	width:1px;
	height:100%;
	background:#666;
	background:linear-gradient(#666,#ccc,#666) #666;
	background:-moz-linear-gradient(center top,#666,#ccc,#666);
	background:-webkit-gradient(linear,center top,center bottom,from(#666),color-stop(#ccc 50%),to(#666));
}
header nav li a > span:before {
	left:0;
}
header nav li:last-child a > span:after {
	right:0;
}

header nav li a span > span {
	display:block;
	width:100%;
	font-family:"TPR",serif;
}
header nav li a span > span:nth-child(1) {
	position:relative;
	padding-top:5px;
	line-height:22px;
	font-size:17px;
	letter-spacing:-1px;
	color:#666;
}
header nav li a span > span:nth-child(1):before {
	content:attr(data-nav);
	position:absolute;
	top:5px;
	left:0;
	display:block;
	width:100%;
	height:100%;
	color:#eee;
	-webkit-mask-image:-webkit-linear-gradient(top ,rgba(0,0,0,0) ,rgba(0,0,0,1) 50% ,rgba(0,0,0,0));
}
header nav li a span > span:nth-child(2) {
	line-height:14px;
	font-size:11px;
	color:#ccc;
}

header nav li.active a span > span:nth-child(1) {
	color:#ffe;
}
header nav li.active a span > span:nth-child(1):before {
	color:#f90;
}
header nav li.active a span > span:nth-child(2) {
	color:#fdb;
}

@media screen and (min-width:800px) {




}
@media screen and (max-width:799px) {
	header nav {
		position:absolute;
		top:0;
		left:0;
		margin-top:-100%;
		padding-bottom:10px;
		box-shadow:0 3px 10px #999;
		border-bottom:0 none;
		background:#000;
		-webkit-transition:all 0.3s ease;
		   -moz-transition:all 0.3s ease;
		     -o-transition:all 0.3s ease;
		        transition:all 0.3s ease;
		z-index:-1;
	}
	header nav.on {
		margin-top:0;
		padding-top:120px;
	}
	header nav ul.navMenu {
		width:96%;
		margin:auto;
		border-top:1px solid #666;
		-webkit-justify-content:center;
		justify-content:center;
		flex-wrap:wrap;
		align-items:stretch;
		height:auto;
	}
	header nav li:nth-child(2n) a > span:after {
		content:"";
		position:absolute;
		top:0;
		right:0;
		display:block;
		width:1px;
		height:100%;
		background:#666;
		background:linear-gradient(#666,#ccc,#666) #666;
		background:-moz-linear-gradient(center top,#666,#ccc,#666);
		background:-webkit-gradient(linear,center top,center bottom,from(#666),color-stop(#ccc 50%),to(#666));
	}
	header nav li {
		width:50%;
		height:65px;
	}
	header nav li a {
		padding:0;
	}
	header nav li a > span {
		padding:10px 0;
		border-bottom:1px solid #666;
	}

	header nav li.navMenu09 {
		display:none;
	}
}



/* ============================================================================================
	footer
============================================================================================= */

/* ==============================================
	footer > footer bloc
=============================================== */
footer {
	position:relative;
	padding-bottom:20px;
	background:url(images/common/footer_bg.png) 50% 0 repeat rgba(0,0,0,0.8);
	text-align:center;
	font-family:'TPR',serif;
	color:#ccc;
	font-size:14px;
	line-height:1.8;
	letter-spacing:1px;
}
@media screen and (min-width:800px) { 
	footer {
		padding-top:30px;
	}
	footer:before {
		content:"";
		position:absolute;
		top:17px;
		left:0;
		width:100%;
		height:3px;
		border-top:3px solid #999;
	}
}

/* ==============================================
	footer > footer navi
=============================================== */
footer .navMenu {
	width:100%;
	padding-top:20px;
}
footer .navMenu {
	display:flex;
	justify-content:center;
	-webkit-justify-content:center;
}
footer .navMenu li a {
	display:block;
	padding:0 10px;
	color:#ccc;
	font-size:14px;
	letter-spacing:1px;
	line-height:20px;
	font-size:14px;
}
footer .navMenu li a span span:nth-child(2) {
	display:none;
}
footer .navMenu li a:hover {
	color:#f90;
	text-shadow:1px 1px 0px #000;
}
@media screen and (max-width:799px) { 
	footer .navMenu {
		display:flex;
		flex-wrap:wrap;
		align-items:stretch;
	}
	footer .navMenu:before {
		content:attr(data-title);
		display:block;
		width:100%;
		height:60px;
		line-height:60px;
		font-size:20px;
		color:#fff;
		text-shadow:1px 1px 0 #000;
		background:linear-gradient(#642,#200) #200;
		background:-moz-linear-gradient(center top,#642,#200);
		background:-webkit-linear-gradient(top, #642, #200)
	}
	footer .navMenu li {
		width:50%;
	}
	footer .navMenu li a {
		width:100%;
		height:60px;
		padding:0;
		line-height:60px;
		color:#ccc;
		text-shadow:1px 1px 0 #333;
		background:linear-gradient(#666,#000) #3333;
		background:-moz-linear-gradient(center top,#666,#000);
		background:-webkit-gradient(linear,center top,center bottom,from(#666),to(#000));
		border:1px solid #333;
	}
	footer .navMenu li a span {
		display:block;
	}
	footer .navMenu li a span span:nth-child(1) {
		display:none;
	}
	footer .navMenu li a span span:nth-child(2){
		display:block;
		font-size:18px;
		font-weight:bold;
	}
	footer .navMenu li a:hover {
		color:#f90;
		text-shadow:1px 1px 3px #000;
	}

	footer .navMenu li.navMenu09 {
		display:none;
	}
}



/* ==============================================
	footer > footer info
=============================================== */
footer #footerInfo {
	padding-top:30px;
	text-align:center;
	font-size:14px;
}
footer #footerInfo #footerInfoLogo {
}
footer #footerInfo #footerInfoTime {
	padding-top:10px;
}
footer #footerInfo #footerInfoTel a {
	font-size:18px;
	color:#fff;
}
footer #footerInfo #footerInfoTel a:hover {
	color:#ff0;
	text-shadow:1px 1px 0px #000;
}

footer #footerInfo #footerInfoQR {
	padding-top:20px;
}
footer #footerInfo #footerInfoQR img {
	width:120px;
}


/* ==============================================
	footer > copyright
=============================================== */
#copyright {
	padding-top:20px;
	color:#ccc;
	font-size:12px;
	text-align:center;
}
#copyright a {
	color:#ccc;
}
#copyright a:hover {
	color:#ccc;
	text-decoration:underline;
}




/* ============================================================================================
	contents
============================================================================================= */
/* ==============================================
	home > slider
=============================================== */
#homeSliderBloc {
	position:relative;
	width:100%;
	padding-top:20px;
	padding-bottom:40px;
}
#homeSliderBloc .bx-wrapper {
	margin-bottom:20px;
	box-shadow: 0 0 10px #fff;
}
#homeSliderBloc .bx-wrapper .bx-viewport {
	border:0 none;
}
#homeSliderBloc .bx-wrapper img {
	box-shadow:1px 1px 3px #666;
}

#homeSliderBloc #bx-pager {
	display:flex;
	justify-content:center;
	-webkit-justify-content:center;
}
#homeSliderBloc #bx-pager a {
	display:inline-block;
	width:18%;
	margin:0 0.5%;
	cursor:pointer;
}
#homeSliderBloc #bx-pager a img {
	width:100%;
	height:auto;
}


/* ==============================================
	page layout
=============================================== */
@media screen and (min-width:800px) { 
	#homeFlex {
		display:flex;
		-webkit-justify-content:space-between;
		justify-content:space-between;
	}
	#homeFlex #homeMain {
		width:600px;
		margin:auto;
	}
	#homeFlex #homeSide {
		width:360px;
		margin:0 auto;
	}
}
#homeFlex #homeMain article {
	margin-bottom:20px;
}
#homeFlex #homeMain article:last-child {
	margin-bottom:0px;
}
@media screen and (max-width:799px) { 
	#homeFlex h2.titleBar {
		margin-top:10px;
		padding-bottom:10px;
	}
	#homeFlex h2.titleBar span:nth-child(1) {
		padding-bottom:0;
	}
}

/* ==============================================
	home > pickup
=============================================== */
#homePickup {
	margin:0 auto 20px;
}
#homePickup ul li {
	width:100%;
	margin:0;
	height:544px;
	background:transparent;
	box-shadow:none;
	border:0 none;
}
#homePickup ul li:hover {
	box-shadow:0px 0px 8px #fc0;
}
#homePickup ul li .castImage {
	width:auto;
	height:auto;
	padding-bottom:5px;
}
#homePickup ul li .castImage img {
	max-width:100%;
	max-height:none;
	border:1px solid #666;
}
#homePickup ul li .castInfo {
}
#homePickup ul li .castInfo .castName {
	font-size:24px;
	line-height:40px;
	padding-top:0;
}
#homePickup ul li .castInfo .castName span {
	font-size:20px;
}
#homePickup ul li .castInfo .castSize {
}
#homePickup ul li .castInfo .castTime {
	line-height:24px;
}
#homePickup ul li .castInfo .castTime.today:before {
	content:"本日出勤　";
}
@media screen and (max-width:799px) { 
	#homePickup {
		padding:0 75px;
	}
}


/* ==============================================
	home > sideBars
=============================================== */
#homeSideBars {
	text-align:center;
}
#homeSideBars li {
	padding-bottom:20px;
}
#homeSideBars li img {
	box-shadow:0 0 10px #999;
}
#homeSideBars li a:hover img {
	box-shadow:0px 0px 8px #fc0;
}




/* ==============================================
	home > news
=============================================== */
div#homeNews {
	width:100%;
	height:544px;
	overflow:auto;
}
div#homeNews iframe {
	width:100%;
}

@media screen and (max-width:799px) { 
	div#homeNews {
		width:92%;
		margin-left:auto;
		margin-right:auto;
	}
}




ul#homeNews {
	width:100%;
	height:544px;
	line-height:1.3;
	overflow-y:scroll;
	background-color:rgba(0,0,0,0.6);
}
ul#homeNews li {
	position:relative;
	padding-bottom:5px;
	border-bottom:1px solid #666;
	margin-bottom:5px;
}
ul#homeNews li:last-child {
	border-bottom:0 none;
	margin-bottom:0;
}
ul#homeNews li div.news_photo {
	display:block;
	float:left;
	width:25%;
	text-align:center;
}
ul#homeNews li div.news_photo a:hover img {
	box-shadow:0px 0px 8px #fc0;
}
ul#homeNews li div.news_info {
	display:block;
	float:right;
	width:72%;
	font-size:18px;
	line-height:1.4;
}
ul#homeNews li div.news_date {
	font-size:16px;
	color:#fcf;
}
ul#homeNews li h3 {
	font-size:20px;
	color:#ff3;
}
ul#homeNews li p.news_text {
	letter-spacing:1.5px;
}



/* ==============================================
	home > schedule
=============================================== */
ul.castList#homeSchedule {
}
@media screen and (min-width:800px) { 
	ul.castList#homeSchedule li.castCell {
		width:170px;
		margin:5px;
	}
	ul.castList#homeSchedule li.castCell(3n) {
		margin-right:0;
	}
	ul.castList#homeSchedule li.castCell .castImage {
		width:168px;
		height:224px;
		line-height:200px;
	}
	ul.castList#homeSchedule li.castCell .castImage img {
	}
	ul.castList#homeSchedule li.castCell .castInfo .castName {
		font-size:16px;
	}
	ul.castList#homeSchedule li.castCell .castInfo .castName span {
		font-size:12px;
	}
	ul.castList#homeSchedule li.castCell .castInfo .castSize {
		height:20px;
		line-height:12px;
		font-size:11px;
	}
	ul.castList#homeSchedule li.castCell .castInfo .castTime {
		font-size:14px;
	}
}


/* ==============================================
	system
=============================================== */



/* ==============================================
	access
=============================================== */
#access iframe {
	width:100%;
	height:480px;
	border:1px solid #fff;
	box-shadow:0px 3px 5px #666;
}
#access p {
	text-align:center;
	line-height:1.8;
}


.routeList {
	display:flex;
	flex-wrap:wrap;
	-webkit-flex-wrap:wrap;
	align-items:stretch;
	-webkit-align-items:stretch;
}
.routeList li {
	width:47%;
	margin:10px 0 10px 2%;
	padding:10px;
	text-align:center;
	line-height:1.8;
	font-size:16px;
	border:1px solid #999;
	box-shadow:1px 1px 3px #666;
}
@media screen and (max-width:799px) { 
	.routeList li {
		padding:5px;
		font-size:15px;
	}
}




/* ==============================================
	castlist
=============================================== */
ul.castList {
	width:100%;
	display:flex;
	flex-wrap:wrap;
	align-items:stretch;
}
ul.castList li.castCell {
	display:inline-block;
	position:relative;
	width:218px;
	background:#000;
	border:1px solid #666;
	margin:6px;
	overflow:hidden;
	text-align:center;
	box-shadow:1px 1px 3px #666;
}
ul.castList li.castCell:nth-child(4n) {
	margin-right:0;
}

ul.castList li.castCell a {
	display:block;
	width:100%;
	height:100%;
	color:#eee;
	text-shadow:none;
	font-size:14px;
	letter-spacing:1px;
}

ul.castList li.castCell:hover {
	box-shadow:0px 0px 8px #fc0;
}
ul.castList li.castCell a:hover span.castName {
	color:#fc0;
}

ul.castList li.castCell .castImage {
	display:block;
	position:relative;
	width:216px;
	height:288px;
	line-height:240px;
	text-align:center;
}
ul.castList li.castCell .castImage img {
	width:auto;
	max-width:100%;
	height:auto;
	max-height:100%;
	vertical-align:middle;
}

ul.castList li.castCell .castInfo {
	position:relative;
	display:block;
}
ul.castList li.castCell .castInfo .castName {
	display:block;
	font-size:18px;
	line-height:36px;
	padding-top:4px;
}
ul.castList li.castCell .castInfo .castName span {
	font-size:16px;
}
ul.castList li.castCell .castInfo .castSize {
	display:block;
	height:28px;
	line-height:20px;
	font-size:14px;
	font-family:"TPR";
}
ul.castList li.castCell .castInfo .castTime {
	display:block;
	height:28px;
	line-height:20px;
	font-size:16px;
	color:#ffe;
	text-shadow:0 0 5px #fc9,0 0 10px #fc9;
}

li.castCell .castImage.castFlagNewface:after {
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:33%;
	height:50px;
	background:url(images/common/new.png) 0 0 no-repeat;
	background-size:contain;
}


/* ==============================================
	schedule
=============================================== */
#dateList {
	width:100%;
	margin:15px auto;
	display:flex;
	justify-content:space-around;
	-webkit-justify-content:space-around;
	text-align:center;
}
#dateList li {
	width:13.5%;
	line-height:40px;
	font-weight:bold;
	font-size:14px;
	color:#fff;
	text-shadow:1px 1px 0px #000;
	cursor:pointer;
	border:1px solid #666;
	background-color:rgba(34,34,34,0.8);
	box-shadow:1px 1px 3px #666;
}
#dateList li.on {
	font-size:18px;
	background-color:rgba(102,102,102,0.6);
}
#dateList li:not(.on):hover {
	text-shadow:1px 1px 1px #000;
	background-color:rgba(64,64,64,0.8);
}
#dateList li.col6 {
	color:#9cf;
}
#dateList li.col0 {
	color:#f9c;
}

@media screen and (max-width:799px) { 
	#dateList li {
		padding:10px 0;
		line-height:24px;
	}
}


/* ==============================================
	gallery
============================================== */
.gallery {
	margin-top:20px;
}
.gallery li {
	position:relative;
	display:inline-block;
	width:435px;
	margin:12px 10px;
}
.gallery li div img {
	border:1px solid #999;
	box-shadow:1px 1px 3px #666;
	vertical-align:top;
}
.gallery li p {
	position:absolute;
	left:1px;
	bottom:1px;
	display:block;
	width:calc(100% - 2px);
	padding:5px 20px;
	text-align:right;
	font-size:14px;
	background:rgba(0,0,0,0.9);
}
@media screen and (max-width:799px) { 
	.gallery li {
		width:auto;
	}
}

/* ==============================================
	recruit
=============================================== */
.recruitImage {
}
.recruitImage img {
	box-shadow:1px 1px 3px #666;
}
.recruitImage a {
	display:inline-block;
	border-radius:17.5px;
	overflow:hidden;
	box-shadow:1px 1px 3px #666;
}
.recruitImage a:hover {
	box-shadow:0px 0px 10px #fff;
}



.recruitTable {
	width:90%;
	margin:15px auto;
	border:1px solid #333;
	font-size:14px;
	line-height:1.6;
}
.recruitTable th {
	vertical-align:top;
	font-weight:normal;
	width:180px;
	padding:10px;
	border:1px solid #333;
	color:#f9f;
}
.recruitTable th.blue {
	color:#9ff;
}
.recruitTable td {
	vertical-align:top;
	padding:10px;
	border:1px solid #333;
}




/* ==============================================
	recruit form
=============================================== */
#recruit_formHtmlBody .infoBox {
	width:90%;
}
.thankyouText ,
#formTable {
	width:100%;
	margin:auto;
	padding:0 10px;
	font-size:14px;
}
#formTable dt {
	line-height:26px;
}
#formTable dd {
	padding-bottom:10px;
	border-bottom:1px dotted #666;
	line-height:1.8;
}
#formTable dd .memo {
	color:#666;
}
#formTable dd:last-child {
	border-bottom:0px none;
}

#formTable dd label {
	display:block;
}
.error {
	display:block;
	color:#fc0;
}

input.widthS {
	width:4em;
}
input.widthMS {
	width:8em;
}
input.widthM {
	width:12em;
}
input.widthL {
	width:20em;
}
textarea {
	width:20em;
	max-width:100%;
	height:5em;
}

.formButton {
	width:100%;
	margin:auto 10px;
	padding:10px;
	font-size:13px;
	border-top:1px dotted #666;
}

@media screen and (min-width:800px) { 
	#formTable dt {
		float:left;
		text-align:right;
		width:320px;
		padding:10px 5px 0;
	}
	#formTable dd {
		padding-top:10px;
		padding-left:330px;
	}
}

@media screen and (max-width:799px) { 
	#formTable dt {
		line-height:2em;
		font-size:16px;
	}

	#formTable dd {
		padding-left:30px;
	}
}


/* ==============================================
	links
=============================================== */
.linkList {
	margin:10px auto;
}
.linkList th ,
.linkList td {
	padding:5px 10px;
	vertical-align:middle;
}
.linkList a {
	color:#ccc;
}

.linkList.hAction tr:hover a {
}
.linkList.hAction tr:hover th ,
.linkList.hAction tr:hover td {
	background-color:rgba(255,153,51,0.4);
}

.linkList.banners td {
	text-align:left;
}
.linkList.banners img {
	border:1px solid #666;
}

@media screen and (max-width:799px) { 
	.linkList {
		width:90%;
		display:block;
	}
	.linkList tbody ,
	.linkList tr ,
	.linkList tr th ,
	.linkList tr td {
		width:100%;
		display:block;
		text-align:center;
	}
}



/* ============================================================================================
	profile
============================================================================================= */
#profileBloc {
	margin-bottom:30px;
	line-height:1.6;
	display:flex;
}

@media screen and (min-width:800px) { 
	#profileBloc {
		justify-content:space-between;
		-webkit-justify-content:space-between;
		flex-direction:row-reverse;
		-webkit-flex-direction:row-reverse;
		align-items:stretch;
	}
	#profileBloc .infoBox {
		margin-bottom:0;
	}

}
@media screen and (max-width:799px) { 
	#profileBloc {
		flex-direction:column;
		-webkit-flex-direction:column;
	}
}



/* ==============================================
	profile > right frame > main image
=============================================== */
#profileImageFrame {
	display:flex;
}
@media screen and (min-width:800px) { 
	#profileImageFrame {
		width:490px;
		justify-content:space-between;
		-webkit-justify-content:space-between;
		align-items:center;
	}
}
@media screen and (max-width:799px) { 
	#profileImageFrame {
		width:440px;
		margin:auto auto 20px;
		padding:30px 0 60px;
	}
}

#profileImageFrame #profileImage {
	position:relative;
	width:362px;
	margin:auto;
}
#profileImageFrame #profileImage img {
	vertical-align:top;
	border:1px solid #999;
}

#profileImageFrame #profileImage.castFlagNewface:after {
	content:"";
	position:absolute;
	top:1px;
	left:1px;
	width:25%;
	height:50px;
	background:url(images/common/new.png) 0 0 no-repeat;
	background-size:contain;
}

@media screen and (max-width:799px) { 
	#profileImageFrame {
		overflow:hidden;
	}
	#profileImageFrame #profileImage .bx-wrapper .bx-pager {
		bottom:-45px;
		height:45px;
		line-height:45px;
		text-align:center;
	}
	#profileImageFrame #profileImage .bx-wrapper .bx-pager a {
		width:25px;
		height:25px;
		border-radius:100%;
		text-indent:-9999px;
		background:#666;
		margin:0 5px;
	}
	#profileImageFrame #profileImage .bx-wrapper .bx-pager a:hover {
		background:#999;
	}
	#profileImageFrame #profileImage .bx-wrapper .bx-pager a.active {
		background:#f60;
	}
	#profileImageFrame #profileImage .bx-wrapper .bx-prev {
		left:-35px;
	}
	#profileImageFrame #profileImage .bx-wrapper .bx-next {
		right:-35px;
	}
}


/* ==============================================
	profile > thumbs
=============================================== */
#profileImageFrame #profileThumbs {
}
#profileImageFrame #profileThumbs li {
	display:inline-block;
	width:86px;
	height:114px;
	line-height:112px;
	overflow:hidden;
	background-color:#666;
	text-align:center;
	border:1px solid #333;
	vertical-align:middle;
}
#profileImageFrame #profileThumbs li:last-child {
	margin-bottom:0;
}
#profileImageFrame #profileThumbs li img {
	max-width:100%;
	max-height:100%;
	vertical-align:middle;
}
#profileImageFrame #profileThumbs li.imageOn {
	border:1px solid #999;
	cursor:pointer;
}
@media screen and (min-width:800px) { 
	#profileImageFrame #profileThumbs {
		width:86px;
	}
	#profileImageFrame #profileThumbs li {
		margin-bottom:9px;
	}
}
@media screen and (max-width:799px) { 
	#profileImageFrame #profileThumbs {
		margin:10px 0;
	}
	#profileImageFrame #profileThumbs li {
		margin:0 5px;
	}
}



/* ==============================================
	profile > info
=============================================== */
#profileInfoFrame {
	position:relative;
	width:440px;
	margin:0 auto;
	padding:80px 0;
	font-size:16px;
	text-align:center;
}
@media screen and (min-width:800px) { 
	#profileInfoFrame #profileInfoInner {
		overflow:auto;
		margin:0 10px;
		height:100%;
	}
}
@media screen and (max-width:799px) { 
	#profileInfoFrame {
		margin-bottom:20px;
	}
}

#profileInfoFrame:before ,
#profileInfoFrame:after {
	content:"";
	position:absolute;
	left:5%;
	display:block;
	width:90%;
	height:60px;
	background-repeat:no-repeat;
	background-size:contain;
}
#profileInfoFrame:before {
	top:0;
	background-image:url(images/common/frame_top.png);
	background-position:50% 50%;
}
#profileInfoFrame:after {
	bottom:0;
	background-image:url(images/common/frame_bottom.png);
	background-position:50% 50%;
}

#profileInfoFrame #profileName {
	font-size:30px;
	line-height:2;
}
#profileInfoFrame #profileName span {
	font-size:24px;
}
#profileInfoFrame #profileSize {
	line-height:2;
	font-family:"TPR",serif;
	padding:3px 0;
}
#profileInfoFrame #profileTime {
	line-height:2;
	color:#ffe;
	text-shadow:0 0 5px #fc9,0 0 10px #fc9;
}

#profileInfoFrame #profileMessage {
	font-size:14px;
	color:#fe9;
	line-height:1.8;
}

#profileInfoFrame #profileBlogLink {
	margin-top:30px;
	text-align:center;
}
#profileInfoFrame #profileBlogLink a {
	display:inline-block;
	padding:5px 15px;
	color:#fff;
	text-shadow:1px 1px 0px #000;
	background:linear-gradient(#960 ,#630) #960;
	background:-moz-linear-gradient(center top,#960,#630);
	background:-webkit-gradient(linear,center top,center bottom,from(#960),to(#630));
	border:1px solid #960;
	border-radius:5px;
	font-size:14px;
	text-align:center;
}
#profileInfoFrame #profileBlogLink a:hover {
	color:#000;
	text-shadow:1px 1px 0px #fff;
}


#profileInfoFrame #profileTwitterLink {
	margin-top:30px;
	text-align:center;
}
#profileInfoFrame #profileTwitterLink a {
	display:inline-block;
	padding:5px 15px;
	color:#fff;
	text-shadow:1px 1px 0px #000;
	background:linear-gradient(#09f ,#039) #039;
	background:-moz-linear-gradient(center top,#09f,#039);
	background:-webkit-gradient(linear,center top,center bottom,from(#09f),to(#039));
	border:1px solid #09f;
	border-radius:5px;
	font-size:14px;
	text-align:center;
}
#profileInfoFrame #profileTwitterLink a:hover {
	color:#000;
	text-shadow:1px 1px 0px #fff;
}



/* ==============================================
	profile > schedule
=============================================== */
#profileSchedule {
	width:96%;
	margin:auto;
	font-size:14px;
	text-align:center;
	line-height:40px;
	border-spacing:3px;
	border-collapse:separate;
}
#profileSchedule caption {
}
#profileSchedule th ,
#profileSchedule td {
	width:14%;
	font-weight:normal;
	height:40px;
	background:rgba(0,0,0,0.6);
	border:1px solid #666;
	box-shadow:0 0 3px #999;
}
#profileSchedule .week0 {
}
#profileSchedule .week6 {
}
#profileSchedule th {
	color:#fe9;
}
#profileSchedule td span:after {
	content:" ～ ";
}
@media screen and (max-width:799px) { 
	#profileSchedule td span:after {
		content:"↓";
		display:block;
	}
	#profileSchedule th ,
	#profileSchedule td {
		padding:5px 0;
		line-height:20px;
	}
}

/* ==============================================
	profile > guide(bottom)
=============================================== */
#profileGuideBottom {
	width:100%;
	height:40px;
	margin-top:80px;
	margin-bottom:60px;
	overflow:hidden;
	text-align:center;
}
#profileGuideBottom li {
	display:inline-block;
	width:150px;
	height:40px;
	line-height:40px;
	font-size:13px;
	text-align:center;
}

#profileGuideBottom li a {
	display:block;
	width:100%;
	height:100%;
	border-top:1px solid #666;
	border-left:1px solid #666;
	border-bottom:1px solid #666;
	color:#fe9;
	background-color:rgba(0,0,0,0.4);
}
#profileGuideBottom li:last-child a {
	border-right:1px solid #666;
}
#profileGuideBottom li a span {
}
#profileGuideBottom li a:hover {
	color:#fff;
	text-shadow:1px 1px 0 #000;
	background-color:rgba(204,153,0,0.4);
}




/* ============================================================================================
	2018.11.30
	form override
============================================================================================= */
#ui-datepicker-div {
	font-size:16px;
	text-shadow:1px 1px 0 #fff;
}
#ui-datepicker-div .ui-state-active {
	text-shadow:1px 1px 0 #000;
}
.formNotes {
	font-size:13px;
	color:#bbb;
}

@media screen and (max-width:799px) { 
	button ,input ,textarea ,select ,option {
		padding:2px 5px;
		font-size:18px;
	}
	#ui-datepicker-div {
		font-size:20px;
	}
}




/* ============================================================================================
	2018.11.30
	footer fixed buttons
============================================================================================= */
/* ==============================================
	footer override
=============================================== */
@media screen and (max-width:799px) { 
	footer {
		padding-bottom:80px;
	}
}

/* ==============================================
	fixed area
=============================================== */
#footerFixedButtons {
	display:none;
}
@media screen and (max-width:799px) { 
	#footerFixedButtons {
		position:fixed;
		left:0;
		right:0;
		bottom:0;
		display:block;
		width:100%;
		height:65px;
		background:rgba(0,0,0,0.9);
		border-top:1px solid #333;
		box-shadow:0 -1px 5px #000;
	}
	#footerFixedButtons ul.innerFrame {
		width:480px;
		height:100%;
		padding:5px 10px;
		margin:0 auto;
		display:flex;
		justify-content:space-around;
		align-items:center;
	}
	#footerFixedButtons ul.innerFrame li {
		width:49%;
		height:100%;
	}
	#footerFixedButtons ul.innerFrame li a {
		display:block;
		width:100%;
		height:100%;
		font-size:20px;
		line-height:1;
		color:#fff;
		text-shadow:none;
		background:#0b3;
		border-radius:5px;
		box-shadow:1px 1px 3px #666;
		display:flex;
		justify-content:center;
		align-items:center;
	}
	#footerFixedButtons ul.innerFrame li a span {
		padding:0 2.5px;
	}
	#footerFixedButtons ul.innerFrame li a span img {
		height:45px;
	}
	#footerFixedButtons ul.innerFrame li:nth-child(2) a {
		background:#09f;
	}
	#footerFixedButtons ul.innerFrame li a:active {
		opacity:0.8;
	}
}




/* ============================================================================================
	2019.7.11
============================================================================================= */
#profTwitter {
	padding-top:30px;
}
#profTwitter div#homeNews {
	width:540px;
	max-width:calc(100% - 30px);
	margin-left:auto;
	margin-right:auto;
}


