@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Kaisei+Decol:wght@400;700&display=swap');

@font-face {
	font-family:'CGothic';
	src:url('images/fonts/CGothic.ttf') format('truetype');
}
@font-face {
	font-family:'CSerif';
	src:url('images/fonts/CSerif.ttf') format('truetype');
}

*{
	--main-fonts:'Kaisei Decol',sans-serif;
	--title-fonts:'Kaisei Decol',sans-serif;
	--navi-fonts:'Kaisei Decol',sans-serif;
	--enter-fonts:'Kaisei Decol',sans-serif;
}


@media screen and (min-width:800px) { 
	.xElements > :nth-child(2) ,
	.dispSP {
		display:none !important;
	}
}
@media screen and (max-width:799px) {
	.xElements > :nth-child(1) ,
	.dispPC {
		display:none !important;
	}
}

@keyframes animateBlink {
	  0% { opacity:1; }
	100% { opacity:0.1; }
}

/* ==============================================
	CSS reset
=============================================== */
* ,*:before ,*:after {
	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:inherit;
	font-weight:inherit;
}
button ,input ,textarea ,select {
	display:block;
	font-size:110%;
	padding:0.3em;
	letter-spacing:1px;
	font-family:var(--main-fonts);
}
input[type="submit"] ,button {
	padding:5px 30px;
}

html ,body {
	min-height:100%;
	height:100%;
	font-family:var(--main-fonts);
	font-size:16px;
	line-height:1.6;
	color:#000;
}
a ,a:link ,a:visited {
	color:#00f;
	text-decoration:none;
	transition:all 0.3s ease;
    -webkit-transition:all 0.3s ease;
}
a:hover {
	color: #f06;
	text-decoration:none;
}

img {
	vertical-align:middle;
	max-width:100%;
	backface-visibility:hidden;
	-webkit-backface-visibility:hidden;
}

ol ,ul ,li {
	list-style:none;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
blockquote ,q {
	quotes:none;
}
blockquote:before ,blockquote:after
,q:before ,q:after {
	content:'';
	content:none;
}
.iframeOuter {
	overflow:auto;
	-webkit-overflow-scrolling:touch;
}
.iframeOuter > * {
	display:block;
	width:100%;
	height:100%;
	height:-webkit-fill-available;
}

.notoSerif {
	font-family: 'Noto Serif JP' ,serif;
}

.noDisp {
	display:none;
}

/* ==============================================
	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 {
	margin:0 auto;
	padding-bottom:20px;
	text-align:center;
	color:#f06;
	display:flex;
	flex-direction:column;
	align-items:center;
	font-family:var(--title-fonts);
}
.titleBar span {
	display:block;
}
.titleBar:not(.sub) span:nth-child(1) {
	line-height:1;
	font-size:350%;
	font-weight: bold;
}
.titleBar:not(.sub) span:nth-child(2) {
	font-size:200%;
	font-weight:bold;
	line-height:1;
	padding-bottom:0.5em;
	letter-spacing:0.2em;
	text-indent:0.2em;
	color: #000;
}
@media screen and (max-width:799px) {
	.titleBar:not(.sub) span:nth-child(2) {
		font-size:24px;
	}
}

.titleBar.sub {
	display:block;
	margin-top:20px;
	margin-bottom:20px;
	padding:0.3em;
	line-height:1em;
	font-size:240%;
	font-weight:bold;
	letter-spacing:0.1em;
	text-indent:0.1em;
	border-bottom:2px solid #333;
}
.titleBar.sub.center {
	text-align:center;
}

.titleBar.sub span {
	display:inline-block;
}

.titleBar.sub span:nth-child(1) {
	padding-right:0.5em;
}

.titleBar:not(.sub) span:nth-child(1) {
	padding:0 1.2em 0.5em;
}

@media screen and (max-width:799px) {
	.titleBar {
		padding-bottom:1em;
	}
	.titleBar:not(.sub) span:nth-child(1) {
		padding-bottom:0.2em;
		font-size:250%;
	}
	.titleBar span:nth-child(2) {
		font-size:180%;
	}
	.titleBar.sub {
		max-width:100%;
		font-size:150%;
		letter-spacing:0.05em;
		text-indent:0.05em;
	}
}

/* ==============================================
	list
=============================================== */
.commonList {
	text-align:center;
	margin-bottom:15px;
}

/* ==============================================
	common attribute
=============================================== */
.contentsBloc {
	margin-bottom:50px;
}

.left {
	text-align:left;
}
.center {
	text-align:center;
}
.right {
	text-align:right;
}


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

.noticeInfo {
	color:#90f;
}
.noticeAlert {
	color:#f06;
}
.noticeLink {
}
.noticeLink a {
	color:#f06;
}
.noticeLink a:hover {
	text-decoration:underline;
}

.mBottom {
	margin-bottom:30px;
}

.strong {
	color:#f06;
	font-size:18px;
}

.bold {
	font-weight:bold;
}


/* ==============================================
	infoBox option
=============================================== */
.noData {
	margin-left:auto;
	margin-right:auto;
	min-height:9em;
	padding-top:5em;
	color:#333;
	text-align:center;
}

.infoBox {
	width:100%;
	max-width:1200px;
	margin:0 auto 2em;
	padding:1em;
	border-radius: 0.5em;
}
.infoBox.box {
	background:transparent;
}
.infoBox.frame {
	color:#000;
	background:rgba(255,255,255,0.7);
    border: 3px solid #99f;
}
.infoBox p {
	padding:5px 0;
}
.infoBox.notes {
	width:85%;
	min-width:630px;
	text-align:center;
}
.infoBox.notes.left {
	text-align:left;
}

.infoBox.white {
	color:#000;
	background:rgba(255,255,255,0.7);
	border:3px solid #99f;
}
.infoBox.white h3.titleBar.sub.center.black {
	padding:1em 0;
	color:#000;
	border-bottom:2px solid #232323;
	text-align:center;
	letter-spacing:0.2em;
	text-indent:0.2em;
}

.infoBox.white a {
}
.infoBox.white a:hover {
}

.infoBox.notes .headline ,
.noData .headline {
	color:#f06;
	font-size:160%;
}
.infoBox.notes .comment ,
.noData .comment {
}
.noData .comment2 {
	margin-top:1em;
	font-size:110%;
}

.infoBox.textLink {
	padding:30px 20px;
}
.infoBox.notes.textLink .comment {
	padding-top:30px;
}
.infoBox .p30 {
	padding:30px 0;
}


@media screen and (max-width:799px) { 
	.noData {
		width:100%;
		min-height:5em;
		padding-top:2em;
	}
	.infoBox {
		padding:0.5em;
	}

	.infoBox.notes {
		width:100%;
		min-width:initial;
	}
	.infoBox.notes .headline ,
	.noData .headline {
		font-size:120%;
	}
	.infoBox.notes.white h3.titleBar.sub.center {
		letter-spacing:1px;
	}
}



/* ==============================================
	common table
=============================================== */
.commonTable {
	width:96%;
	max-width:1400px;
}
.commonTable th {
	width:20%;
	padding:0.6em 1em;
	border-bottom:1px solid #606;
	white-space:nowrap;
}
.commonTable td:not(.noData) {
	padding:0.6em 1em;
	border-bottom:1px solid #606;
	text-align:left;
}


@media screen and (max-width:799px) { 
	.commonTable {
	}

}



.imageList {
	max-width:100%;
	text-align:center;
}
.imageList li:not(.noData) {
	display:block;
	margin:auto 20px 30px;
	padding:10px;
}
.imageList li img {
	transition:all 0.3s ease;
    -webkit-transition:all 0.3s ease;
}
.imageList li a:hover img {
	box-shadow:0px 0px 10px #fff;
}

.imageList.eventList {
	display:flex;
	flex-wrap:wrap;
	margin:auto;
}
#PAGE_home .imageList.eventList {
	padding:30px 0;
	justify-content:center;
}
.imageList.eventList li {
	width:calc(100% / 4);
	margin:auto 0 30px;
	padding:10px;
}
.imageList.eventList li.noData {
	width:100%;
}
/*
#PAGE_home .imageList.eventList li {
	width:calc(100% / 2);
	margin:auto 0;
	max-width:680px;
}
*/

@media screen and (max-width:1370px) { 
	.imageList.eventList li {
		width:calc(100% / 3);
	}
}
@media screen and (max-width:1120px) { 
	.imageList.eventList li {
		width:calc(100% / 2);
	}
}
@media screen and (max-width:1120px) { 
	#PAGE_home .imageList.eventList li {
		width:100%;
	}
}
@media screen and (max-width:799px) { 
	#PAGE_home .imageList.eventList li {
		width:calc(100% / 2);
		margin:0 auto;
	}
}


body .sl-overlay {
	background:rgba(0,0,0,0.6);
	opacity:0.8;
}
body .sl-wrapper .sl-image img {
	border:1px solid #fff;
	box-shadow:2px 2px 5px #666;
}


/* ==============================================
	body
=============================================== */
body {
	position:relative;
}

body #bgLayer {
	position:relative;
	z-index:2;
}
body #body_bg {
	position:fixed;
	top:0;
	bottom:0;
	left:0;
	right:0;
	z-index:1;
	background:url(images/common/bg.jpg) 50% 50% no-repeat;
	background-size:cover;
}

.innerFrame {
	position:relative;
	width:100%;
	margin-left:auto;
	margin-right:auto;
}

#PAGE_index #body > .innerFrame {
	max-width:initial;
}



#h1 {
	position:relative;
	margin-left:280px;
	padding:0.5em;
	line-height:1;
	font-size:90%;
	z-index:11;
	text-align:center;
	overflow:hidden;
}


@media screen and (max-width:799px) { 
	body {
		padding:0;
	}
	body #bgLayer {
		width:480px;
		min-width:initial;
		min-height:100%;
		margin:auto;
		padding:0 0.5em;
	}
}


/* ==============================================
	header(left side fixed)
=============================================== */
@media screen and (min-width:800px) { 
	#header {
		position:fixed;
		left:0;
		top:0;
		width:280px;
		height:100%;
		padding-left:24px;
		background:rgba(255,255,255,0.5);
		z-index:100;
		box-shadow:0 3px 5px #666;
	}
	#header #headerInner {
		height:100%;
		overflow:hidden;
	}
}

@media screen and (max-width:799px) { 
	#header {
		position:fixed;
		top:0;
		left:0;
		width:100%;
		height:60px;
		z-index:102;
	}
	#header #headerInner {
		position:relative;
		z-index:103;
		width:100%;
		height:100%;
		background:rgba(255,255,255,0.9);
		box-shadow:1px 0 3px #666;
	}
}



/* ==============================================
	header(left side fixed) shopname & shopinfo
=============================================== */
#header ul#headerTitle {
	width:100%;
	text-align:center;
	display:flex;
	flex-direction:column;
	justify-content:space-around;
	align-items:center;
}
#header ul#headerTitle li {
	display:block;
	margin:auto;
}
#header ul#headerTitle li#headerLogo a {
	display:block;
	width:100%;
	height:100%;
}

@media screen and (min-width:800px) { 
	#header ul#headerTitle {
		padding-top:5px;
	}
	#header ul#headerTitle li {
		width:100%;
	}
	#header ul#headerTitle li#headerLogo a img {
	}
	#header ul#headerTitle li#headerInfo {
		padding:0.3em 0;
	}
	#header ul#headerTitle li#headerInfo .time {
		line-height:1.2;
		font-size:130%;
	}
	#header ul#headerTitle li#headerInfo .tel {
		font-size:150%;
	}

}
@media screen and (max-width:799px) { 
	#header ul#headerTitle {
		width:480px;
		height:100%;
		margin:auto;
		justify-content:space-between;
		flex-direction:row;
	}
	#header ul#headerTitle li#headerLogo {
		margin-right:auto;
		height:100%;
		text-align:left;
	}
	#header ul#headerTitle li#headerLogo a {
		display:flex;
		justify-content:flex-start;
		align-items:center;
	}
	#header ul#headerTitle li#headerLogo a img {
		max-height:100%;
	}

	#header ul#headerTitle li#headerInfo {
		margin-right:0;
	}

	#header ul#headerTitle .headerIcon {
		margin:0;
		width:70px;
		padding:5px 10px;
	}
	#header ul#headerTitle .headerIcon img {
		width:50px;
		height:50px;
	}
	#header ul#headerTitle li#headerLogo a span {
		padding-left:10px;
	}
}



/* ==============================================
	header(left side fixed) price panel
=============================================== */
#headerPrice {
	width:210px;
	padding-bottom:10px;
	margin:auto;
	text-align:center;
}
#headerPrice #headerPriceC {
	color:#000;
	font-size:10px;
}

@media screen and (max-width:799px) { 
	#header {
		min-width:initial;
	}
}

/* ==============================================
	header(left side fixed) nav menu
=============================================== */
#header ul.navMenu {
	font-family:var(--navi-fonts);
}

@media screen and (min-width:800px) { 
	#header #headerInner .navMenuBloc {
		display:block !important;
			padding-bottom:1.5em;
	}
	#header ul.navMenu {
		width:230px;
		margin:0 auto;
	}
	#header ul.navMenu li {
		position:relative;
		width:100%;
		padding:0.2em 0.1em;
	}

	#header ul.navMenu li a {
		position:relative;
		width:100%;
		padding:0 0.3em;
		font-size:130%;
		font-weight:bold;
		color:#f06;
		background:rgba(255,255,255,0.9);
		border:2px solid #f6c;
		border-image: linear-gradient(-30deg,#f6c,#6cf) 1;
		display:flex;
		justify-content:flex-start;
		align-items:center;
		filter:brightness(0.95) grayscale(0.8);
	}
	#header ul.navMenu li a:before {
		content:"";
		display:block;
		width:1.1em;
		aspect-ratio:1/1;
		background:url(images/icons/mark.png) 50% 50% no-repeat;
		background-size:contain;
	}

	#header ul.navMenu li a span:nth-child(1) {
		padding-left:0.2em;
	}

	#header ul.navMenu li a span:nth-child(2) {
		display:none;
	}

	#header ul.navMenu li.active {
	}
	
	#header ul.navMenu li.active a ,
	#header ul.navMenu li:not(.active) a:hover {
		transition-duration: 0s;
		transform:rotateX(360deg);
		filter:brightness(1) grayscale(0);
	}

}


@media screen and (max-width:799px) { 
	#header .navMenuBloc a span:nth-child(1) {
		display:none;
	}
	#header .navMenuBloc a span:nth-child(2) {
		padding-left:1.5em;
		background:url(images/icons/mark.png) 0% 50% no-repeat;
		background-size:1.1em;
	}

	#header .navMenuBloc{
		position:fixed;
		top:63px;
		right:-100%;
		background:rgba(255,255,255,0.9);
		box-shadow:-1px 1px 3px #666;
		z-index:102;
		transition:all 0.3s ease;
	    -webkit-transition:all 0.3s ease;
	}
	#header .navMenuBloc.on {
		right:0;
	}
	#header .navMenuBloc a {
	}
	#header .navMenuBloc a {
		display:block;
		font-size:20px;
		font-weight:bold;
		padding:0.8em 3em 0.8em 2em;
		color:#000;
		border-bottom:1px solid #f39;
	}
}

/* ==============================================
	header(left side fixed) nav menu
=============================================== */
#header #headerInner .navMenuBloc .navMenuBlocInner ul.navIcons {
	width:224px;
	height:55px;
	margin:0 auto 20px;
	display:flex;
	justify-content:space-around;
	background:url(images/icons/side_navi_icon.png) 0 0 no-repeat;
}
#header #headerInner .navMenuBloc .navMenuBlocInner ul.navIcons li {
}
#header #headerInner .navMenuBloc .navMenuBlocInner ul.navIcons li a {
	position:relative;
	display:block;
	width:56px;
	height:56px;
	background:url(images/icons/side_navi_icon.png) no-repeat;
	opacity:0;
}
#header #headerInner .navMenuBloc .navMenuBlocInner ul.navIcons li a span {
	display:none;
}
#header #headerInner .navMenuBloc .navMenuBlocInner ul.navIcons li a:hover {
	opacity:1;
}

#header #headerInner .navMenuBloc .navMenuBlocInner ul.navIcons li:nth-child(1) a { background-position:   0px -55px; }
#header #headerInner .navMenuBloc .navMenuBlocInner ul.navIcons li:nth-child(2) a { background-position: -56px -55px; }
#header #headerInner .navMenuBloc .navMenuBlocInner ul.navIcons li:nth-child(3) a { background-position:-112px -55px; }
#header #headerInner .navMenuBloc .navMenuBlocInner ul.navIcons li:nth-child(4) a { background-position:-168px -55px; }

#header #headerInner .navMenuBloc .navMenuBlocInner ul.navIcons li a:hover:before {
	content:attr(data-title);
	color:#232323;
	position:absolute;
	top:calc(100% + 5px);
	padding:5px;
	background:#fff;
	border-radius:10px;
	box-shadow:1px 1px 3px #333;
	white-space:nowrap;
}
@media screen and (min-width:800px) { 
}



#navBottomIcon {
	padding-bottom:30px;
	text-align:center;
}
#navBottomIcon img {
	width:80px;
}
@media screen and (max-width:799px) { 
	#navBottomIcon {
		padding-top:20px;
		padding-bottom:10px;
	}
}




/* ==============================================
	footer contents links (sidemenu)
=============================================== */
.sidemenu {
	width:100%;
	margin:auto;
	padding-top:50px;
	text-align:center;
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
}
.sidemenu li {
	padding:10px;
	width:50%;
}
.sidemenu li a {
	display:block;
	overflow:hidden;
	padding:3px;
}
.sidemenu li span {
	display:none;
}
.sidemenu li img {
	height:auto;
}
.sidemenu li a:hover {
	background: #0cf;
	box-shadow:0 0 5px #999;
}

@media screen and (max-width:799px) { 
	.sidemenu li {
		width:80%;
		padding:5px;
	}
	.sidemenu li a {
	}
}


/* ==============================================
	header(left side fixed) copyright
=============================================== */
@media screen and (min-width:800px) { 
	#copyright {
		position:fixed;
		top:0;
		left:0;
		width:24px;
		height:100%;
		padding-top:1em;
		background:linear-gradient(0deg,#f6c,#6cf);
		line-height:24px;
		font-size:80%;
		letter-spacing:1px;
		color:#fff;

		writing-mode:vertical-rl;
		-ms-writing-mode:tb-rl;
		-webkit-writing-mode: vertical-rl;

		z-index:101;
	}
	#copyright a {
		color:inherit;
	}
	#copyright a:hover {
		color:#966;
	}
}
@media screen and (max-width:799px) { 
	#copyright {
		padding:1em 0;
		text-align:center;
		font-size:80%;
		color:#333;
	}
	#copyright a {
		color:#333;
	}
}


/* ==============================================
	footer
=============================================== */
#footer {
	position:relative;
	width:100%;
	margin:0;
	text-align:center;
}

#footer #footerInner {
	position:relative;
	width:100%;
	padding-top:100px;
	padding-bottom:30px;
}
#footer #footerInner #footerNavPane .navMenuBloc {
	position:absolute;
	bottom:20px;
	left:0px;
	width:100%;
}
#footer .navMenuBloc .navMenuBlocInner ul.navMenu {
	width:680px;
	max-width:100%;
	margin:auto;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}
#footer .navMenuBloc .navMenuBlocInner ul.navMenu li {
	padding:0 10px;
	letter-spacing:1px;
	transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
}
#footer .navMenuBloc .navMenuBlocInner ul.navMenu li a {
	display:block;
	position:relative;
	width:100%;
	height:100%;
	padding:5px 0;
	color:#333;
	font-size:12px;
	transition: all 0.4s ease;
    -webkit-transition: all 0.4s ease;
}
#footer .navMenuBloc .navMenuBlocInner ul.navMenu li a span {
	display:block;
	white-space:nowrap;
	font-weight:bold;
}

#footer .navMenuBloc .navMenuBlocInner ul.navMenu li a span:nth-child(1) {
	font-size:16px;
	color:#f06;
}
#footer .navMenuBloc .navMenuBlocInner ul.navMenu li a span:nth-child(2) {
	font-size:11px;
	color:#000;
}


@media screen and (max-width:799px) { 
	#footer #footerInner {
		padding:60px 0 10px;
	}

	#footer #footerNavBloc {
		padding:10px 0;
	}
	#footer #footerNavBloc ul.navMenu {
		display:flex;
		justify-content:center;
		flex-wrap:wrap;
		align-items:stretch;
	}
	#footer #footerNavBloc ul.navMenu li {
		width:32%;
		height:50px;
		line-height:50px;
		margin:0 0.5% 5px;
		text-align:center;
	}
	#footer #footerNavBloc ul.navMenu li:nth-child(1) {
		width:98%;
	}
	#footer #footerNavBloc ul.navMenu li a {
		color:#f06;
		background:#fff;
		text-decoration:none;
		letter-spacing:0;
	}
}


/* ==============================================
	footer > logo & info
=============================================== */

#footer #footerInfo {
}
#footer #footerInfo #footerLogo {
	max-width:40%;
	margin:auto;
	padding-bottom:1em;
}
#footer #footerInfo #footerText {
	font-size:150%;
}
#footer #footerInfo #footerTel a {
	letter-spacing:1px;
	font-size:180%;
	font-weight:bold;
}

@media screen and (max-width:799px) { 
	#footer #footerInfo {
		display:block;
		text-align:center;
	}
	#footer #footerInfo li {
		padding:0 10px 5px;
	}
	#footer #footerInfo #footerLogo {
		max-width:60%;
		padding-bottom:20px;
	}
	#footer #footerInfo #footerText {
		padding-bottom:5px;
	}
	#footer #footerInfo #footerTel {
		padding-bottom:15px;
	}
	#footer #footerInfo #footerTel a {
		color:#000;
	}
}



/* ==============================================
	contents body
=============================================== */
#body {
	position:relative;
	width:100%;
	margin:0;
}

@media screen and (min-width:800px) { 
	body:not(#PAGE_index) #body {
		min-width:1320px;
		min-height:100%;
		padding-top:3em;
		padding-bottom:1em;
		padding-left:300px;
		padding-right:20px;
		z-index:10;
	}
	#mainBloc {
		padding-top:30px;
	}
}
@media screen and (max-width:799px) { 
	#body {
		padding-top:90px;
	}
}


/* ==============================================
	index
=============================================== */

#PAGE_index #h1 {
	display:none;
}
#PAGE_index #header {
	display:none;
}
#PAGE_index #footer #footerInner {
	padding-bottom:30px;
}

#PAGE_index #body {
	padding-top:0.5em;
}

#enterMainFrame {
	position:relative;
	text-align:center;
	padding-bottom:60px;
}
#enterImage {
	position:relative;
	display:inline-block;
}
#enterImage > #enterFrontLogo {
	position:absolute;
	top:3%;
	left:3%;
	width:36%;
}

ul#enterButtonBloc {
	position:relative;
	width:100%;
	padding-top:30px;
	display:flex;
	justify-content:center;
	align-items:center;
	font-family:var(--enter-fonts);
}
ul#enterButtonBloc li {
	padding:0 20px;
}
ul#enterButtonBloc li#icon18kin img {
	height:100px;
}
ul#enterButtonBloc li a {
	display:block;
	padding:0 0.5em;
	color:#000;
	font-size:80px;
}
ul#enterButtonBloc li a span {
	display:block;
	font-weight: bold;
}
ul#enterButtonBloc li a span:first-letter {
	font-size:120%;
	color:#f39;
}
ul#enterButtonBloc li a:hover {
	text-shadow:1px 1px 0 #fff,0 0 10px #f39;
}



#enterMainFrame .date {
	color:#60f;
	font-size:500%;
	font-weight:bold;
	text-shadow:2px 2px 1px #fff;
}


@media screen and (max-width:799px) { 
	ul#enterButtonBloc {
		justify-content: space-evenly;
	}
	ul#enterButtonBloc li {
		padding:0;
	}
	ul#enterButtonBloc li#icon18kin img {
		height:64px;
	}
	ul#enterButtonBloc li a {
		font-size:48px;
	}

	#enterMainFrame .date {
		font-size:300%;
	}
}




/* ==============================================
	headline
=============================================== */
#headline {
	margin:0 auto 4em;
	position:relative;
	width:100%;
	padding-left:1em;
	color:#000;
	background:rgba(255,255,255,0.7);
    border: 3px solid #99f;
    border-radius: 0.5em;
	display:flex;
	align-items:center;
}
#headline #headlineHead {
	width:200px;
	display:flex;
	justify-content:center;
	align-items:center;
	flex-wrap:wrap;
	text-align:center;
}
#headline #headlineHead > * {
	width:100%;
}
#headline #headlineHead > .en {
	color:#600;
	font-size:150%;
	font-weight:bold;
	border-bottom:1px solid #600;
	font-family:var(--title-fonts);
}

#headline #headlineText {
	width:calc(100% - 200px);
	padding:0.5em 1em;
	color:#fff;
}
#headline #headlineText #headlineTextInner {
	width:100%;
	height:100%;
	padding:0.5em;
	background:rgba(0,0,0,0.5);
	border-radius:0.5em;
	overflow:hidden;
}
#headline #headlineText #headlineTextInner ul {
	display:inline-block;
	white-space:nowrap;
	height:100%;
}
#headline #headlineText #headlineTextInner ul li {
	display:inline-block;
	height:100%;
	padding-left:200px;
	font-size:200%;
}
#headline #headlineText #headlineTextInner ul li span {
	padding-left:0.5em;
	font-size:50%;
	color:#333;
}


@media screen and (max-width:799px) {
	#headline {
		flex-direction:column;
		padding-left:0;
	}

	#headline #headlineHead {
		width:100%;
		justify-content:center;
		align-items:baseline;
		flex-direction:row;
	}
	#headline #headlineHead > * {
		width:auto;
		padding:0 0.5em;
	}
	#headline #headlineHead > .en {
		font-size:160%;
		border-bottom:0 none;
	}
	#headline #headlineHead > .jp {
		font-size:120%;
	}
	#headline #headlineText {
		width:100%;
		padding:0.5em;
	}
	#headline #headlineText #headlineTextInner ul li {
		font-size:150%;
	}
}





/* ==============================================
	home > homeTop > slider
=============================================== */
#homeSliderBloc {
	margin:auto;
	padding-bottom:50px;
}
#homeSliderBloc .bx-wrapper {
}
#homeSliderBloc .bx-wrapper .bx-viewport {
	background:transparent;
	border:0 none;
	text-align:center;
}
#homeSliderBloc .bx-wrapper .bx-viewport img {
	max-width:100%;
	border:1px solid #fff;
	box-shadow:2px 2px 5px #666;
}
#bgLayer #homeSliderBloc .bx-wrapper .bx-pager {
	bottom:-50px;
}


/* ==============================================
	home pickup
=============================================== */
#homePickup {
	width:1000px;
	margin:auto;
	padding-bottom:40px;
}
#homePickup ul.pickupList {
}
ul li.castPickupCell:not(.castCell) {
}
ul li.castPickupCell:not(.castCell) .castImage {
	display:block;
	float:left;
	width:422px;
	height:562px;
	margin:20px;
	position:relative;
}
ul li.castPickupCell:not(.castCell) .castImage a img {
	border:1px solid #fff;
	transition: all 0.4s ease;
    -webkit-transition: all 0.4s ease;
	box-shadow:0 0 5px #333;
}
ul li.castPickupCell:not(.castCell) .castImage a:hover img {
	box-shadow:0 0 15px 5px #999;
}

ul li.castPickupCell:not(.castCell) .castInfo {
	display:block;
	float:left;
	width:520px;
	height:562px;
	margin:20px 0;
	padding:15px;
	box-shadow:0 0 5px #333;
	overflow:auto;
	font-size:13px;
	line-height:1.5;
	letter-spacing:1px;
	background-color:rgba(255,153,204,0.6);
}
ul li.castPickupCell:not(.castCell) .castInfo img {
	vertical-align:sub;
}
ul li.castPickupCell:not(.castCell) .castInfo .castName {
	display:block;
	text-align:center;
	font-size:36px;
	color:#f06;
	line-height:1.3;
	letter-spacing:2px;

	background-color:rgba(255,255,255,0.8);
	box-shadow:1px 1px 3px #333 inset;
	border-radius:20px;
}
ul li.castPickupCell:not(.castCell) .castInfo .castName span {
	display:inline-block;
}
ul li.castPickupCell:not(.castCell) .castInfo .castName span:nth-child(1) {
	font-size:28px;
}
ul li.castPickupCell:not(.castCell) .castInfo .castSize {
	display:block;
	text-align:center;
	font-size:16px;
	color:#000;
}
ul li.castPickupCell:not(.castCell) .castInfo .castIcon {
	display:block;
	text-align:center;
	font-size:12px;
}
ul li.castPickupCell:not(.castCell) .castInfo .castIcon .textIcon {
	display:inline-block;
	margin:0 2.5px;
	font-size:13px;
	line-height:20px;
	letter-spacing:0;
	padding:7px 20px 5px 15px;
	background:#e2b2cd;
}
ul li.castPickupCell:not(.castCell) .castInfo .castCatch {
	display:block;
	text-align:center;
	font-size:14px;
}

ul li.castPickupCell:not(.castCell) .castInfo .castTime {
	display:block;
	width:95%;
	margin:3px auto;
	height:25px;
	color:#90f;
	padding-top:2px;
	font-weight:bold;
	overflow:hidden;
	text-align:center;
}
ul li.castPickupCell:not(.castCell) .castInfo .castTime.castFlagToday {
	background-color:rgba(255,255,255,0.8);
	box-shadow:1px 1px 5px #666 inset;
}
ul li.castPickupCell:not(.castCell) .castInfo .castTime.castFlagToday:before {
	content:"本日出勤　";
	color:#900;
}
ul li.castPickupCell:not(.castCell) .castInfo .castText {
	display:block;
	text-align:left;
	margin:auto 10px;
	padding:10px;
	background-color:rgba(255,255,255,0.8);
	box-shadow:1px 1px 5px #666 inset;
}

ul li.castPickupCell:not(.castCell) .castInfo dl.castProf {
	display:block;
	padding:10px 1em;
}
ul li.castPickupCell:not(.castCell) .castInfo dl.castProf dt {
	color:#f06
}
ul li.castPickupCell:not(.castCell) .castInfo dl.castProf dt:before {
	content:"★";
}
ul li.castPickupCell:not(.castCell) .castInfo dl.castProf dd {
	padding-left:1em;
}


#bgLayer .bx-wrapper .bx-pager {
	text-align:center;
	font-size:0;
	margin:auto;
	bottom:auto;
}

#bgLayer .bx-wrapper .bx-pager.bx-default-pager .bx-pager-item {
	width:40px;
	height:40px;
	line-height:40px;
	text-align:center;
}

#bgLayer .bx-wrapper .bx-pager.bx-default-pager a {
	display:inline-block;
	width:40px;
	height:40px;
	font-size:0;
	vertical-align:top;
	transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
	background-color:transparent;
	border:0 none;
	box-shadow:none;
}
#bgLayer .bx-wrapper .bx-pager.bx-default-pager a.active {
}
a.bx-pager-link:after {
    content:"\02665";
    font-size:24px;
    color:#f4c;
}
a.bx-pager-link.active:after {
    font-size:36px;
    color:#0a9;
}

@media screen and (max-width:1370px) { 
	#homePickup {
		width:820px;
	}
	ul li.castPickupCell:not(.castCell) .castImage {
		width:302px;
		height:402px;
	}
	ul li.castPickupCell:not(.castCell) .castInfo {
		width:460px;
		height:402px;
	}
}
@media screen and (max-width:1170px) { 
	#homePickup {
		width:730px;
	}
	ul li.castPickupCell:not(.castCell) .castImage {
		width:272px;
		height:362px;
	}
	ul li.castPickupCell:not(.castCell) .castInfo {
		width:400px;
		height:362px;
		font-size:12px;
	}
}
@media screen and (max-width:1070px) { 
	#homePickup {
		width:640px;
	}
	ul li.castPickupCell:not(.castCell) .castImage {
		width:242px;
		height:322px;
	}
	ul li.castPickupCell:not(.castCell) .castInfo {
		width:340px;
		height:322px;
	}

	ul li.castPickupCell:not(.castCell) .castInfo .castName {
		font-size:28px;
	}
	ul li.castPickupCell:not(.castCell) .castInfo .castName span:nth-child(1) {
		font-size:20px;
	}
	ul li.castPickupCell:not(.castCell) .castInfo .castSize {
		font-size:14px;
	}
}




/* ==============================================
	home schedule
=============================================== */
#homeSchedule {
	padding-bottom:40px;
}

/* ==============================================
	home blog
=============================================== */
#homeBlog {
	width:960px;
	margin:auto;
	height:640px;
}

@media screen and (max-width:1170px) { 
	#homeBlog {
		width:700px;
	}
}
@media screen and (max-width:1070px) { 
	#homeBlog {
		width:600px;
	}
}


/* ==============================================
	home news
=============================================== */
#homeNews {
	margin:auto;
	overflow:auto;
}
#PAGE_news #homeNews {
	height:auto;
}
#homeNews .newsInfo {
	line-height:1.1;
}


#newsLink {
	padding:1em 0;
}
#newsLink a {
	color:#f06;
}
#newsLink a:hover {
	color:#00f;
}



/* ==============================================
	cast list
=============================================== */

ul.castList {
	display:flex;
	flex-wrap:wrap;
}
ul.castList li.castCell {
	position:relative;
	display:block;
	width:25%;
	padding:0.5em 0.5% 1em;
	text-align:center;
}

ul.castList li.castCell .aFrame {
	display:block;
	color:#000;
	background:rgba(255,255,255,0.8);
    border: 3px solid #99f;
}


ul.castList li.castCell .castCatch {
	display:block;
}
ul.castList li.castCell .castCatch > span {
	display:block;
	font-size:130%;
	padding-bottom:0.1em;

}


ul.castList li.castCell .castImage {
	position:relative;
	display:block;
	width:100%;
	aspect-ratio:600/800;
	overflow:hidden;
}
ul.castList li.castCell .castImage img {
	width:100%;
	height:100%;
	object-fit:contain;
}

.aFrame .castImage img {
	transition:all 0.5s ease;
    -webkit-transition:all 0.5s ease;
}
a.aFrame:hover .castImage img {
	transform:scale(1.1);
}

ul.castList li.castCell .castImage .noimageText {
	position:absolute;
	top:0px;
	bottom:0px;
	left:3%;
	right:3%;
	padding-top:48%;
	text-align:center;
	font-size:30px;
	line-height:1.4;
	font-weight:700;
	color:#000;
	text-shadow:0px 0px 5px #fff ,0px 0px 5px #fff ,0px 0px 5px #fff
				,0px 0px 10px #fff ,0px 0px 10px #fff ,0px 0px 10px #fff
				,0px 0px 10px #fff ,0px 0px 10px #fff ,0px 0px 10px #fff;
}
ul.castList li.castCell .castImage .noimageText > span {
	display:block;
	width:100%;
	overflow:hidden;
	white-space:nowrap;
}



ul li.castFlagNewface .castImage:before ,
ul li.castFlagPickup .castImage:after {
	content:"";
	position:absolute;
	top:10px;
	left:10px;
	width:15%;
	height:100px;
	background-image:url(images/icons/newface_icon.png);
	background-repeat:no-repeat;
	background-position:0 0;
	background-size:contain;
	z-index:5;
}
ul li.castFlagPickup .castImage:after {
	top:initial;
	bottom:5px;
	left:5px;
	width:25%;
	background-image:url(images/icons/pickup_icon.png);
	background-position:0 100%;
}


ul.castList li.castCell .castInfo {
	display:block;
	color:#fff;
	background:rgba(204,102,255,0.7);
	transition:all 0.3s ease;
    -webkit-transition:all 0.3s ease;
}
ul.castList li.castCell a.aFrame:hover .castInfo {
	background:rgba(204,102,255,1);
}
ul.castList li.castCell .castInfo .castName {
	display:block;
	font-size:140%;
	border-bottom:1px solid #fff;
}
ul.castList li.castCell .castInfo .castName .number {
	font-size:80%;
}
ul.castList li.castCell .castInfo .castSize {
	display:block;
	padding:0.2em;
	overflow:hidden;
}
ul.castList li.castCell .castInfo .castIcon {
	padding-bottom:0.5em;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	overflow:hidden;
}
ul.castList li.castCell .castInfo .castIcon .textIcon {
	display:block;
	min-width:25%;
	margin:0 3px;
	padding-bottom:0.1em;
	font-size:90%;
	letter-spacing:0;
	color:#000;
	background:#fcf;
	border-radius:0.3em;
}
ul.castList li.castCell .castInfo .castIcon .textIcon.noIcon {
	visibility:hidden;
}

ul.castList li.castCell .castInfo .castTime {
	display:block;
	overflow:hidden;
	font-size:120%;
	font-weight:bold;;
	color:#000;
	background:#fff;
}
ul.castList li.castCell .castInfo .castTime.castFlagToday {
}
ul.castList li.castCell .castInfo .castTime.castFlagToday:before {
	content:"本日出勤 ";
}
ul.castList li.castCell .castInfo .castText {
	display:none;
}
ul.castList li.castCell .castInfo .castProf {
	display:none;
}




@media screen and (max-width:1800px) { 
	ul.castList li.castCell {
		font-size:80%;
	}
}
@media screen and (max-width:1500px) { 
	ul.castList li.castCell {
		font-size:70%;
	}
}


@media screen and (max-width:799px) { 
	ul.castList li.castCell {
		width:calc(100% / 3);
		font-size:85%;
	}
	ul.castList li.castCell .aFrame {
		border-width:1px;
	}
	ul.castList li.castCell .castCatch {
		font-size:80%;
		letter-spacing:-1px;
	}
	ul.castList li.castCell .castCatch span {
		display:block;
		height:1.8em;
		overflow:hidden;
		white-space:nowrap;
		text-overflow:ellipsis;
		-webkit-text-overflow:ellipsis;
	}
	ul.castList li.castCell .castInfo .castName .number {
		display:none;
	}
	ul.castList li.castCell .castInfo .castName {
		font-size:130%;
	}
	ul.castList li.castCell .castInfo .castSize {
	}
	ul.castList li.castCell .castInfo .castSize span {
		display:block;
	}
	ul.castList li.castCell .castInfo .castIcon {
		height:1.8em;
	}
	ul.castList li.castCell .castInfo .castIcon .textIcon {
		margin-bottom:5px;
		padding:0 0.2em;
	}
	ul.castList li.castCell .castInfo .castTime.castFlagToday:before {
		content:"";
	}

	ul li.castFlagNewface .castImage:before {
		top:2px;
		left:2px;
	}
	ul li.castFlagPickup .castImage:after {
		bottom:2px;
		left:2px;
	}

}



/* ==============================================
	cast schedule
=============================================== */
#dateList {
	width:100%;
	padding:1em 0;
	text-align:center;
	display:flex;
	justify-content:space-between;
}
#dateList li {
	width:calc(100% / 7 - 0.5em);
	padding:0.5em 0;
	color:#999;
	background:rgba(255,255,255,0.8);
	border:2px solid #ccc;
	cursor:pointer;
	transition:all 0.3s ease;
}
#dateList li.on {
    font-weight: bold;
	color: #fff;
	background:rgba(102,153,255,0.8);
	border-color:#06f;
}
#dateList li:not(.on):hover {
	color:#000;
	background:rgba(204,238,255,0.8);
	border-color:#06f;
}

#dateList li span.wday {
	font-size:80%;
}

@media screen and (max-width:799px) { 
	#dateList li {
		width:calc(100% / 7 - 0.2em);
		padding:0.5em 0;
		line-height:1.2;
	}
	#dateList li span.wday {
		display:block;
	}
}




/* ==============================================
	cast ranking
=============================================== */
#PAGE_ranking ul.castList li.rankTitle {
	margin-top:20px;
	margin-bottom:20px;
}

#PAGE_ranking ul.castList li.castCell {
	width:20%;
}

.castRank {
	display:inline-block;
	width:100%;
	margin-bottom:3px;
	color:#000;
	background:#fff;
	text-align:center;
}

.ranking ul.castList li.castCell.castFlagNewface a.aFrame:after {
	top:35px;
}

@media screen and (max-width:799px) {
	#PAGE_ranking ul.castList li.castCell {
		width:calc(100% / 3);
	}

	/* ==============================================
		rank 1,2 custom
	=============================================== */
	#PAGE_ranking ul.castList li.castCell.rank1 ,
	#PAGE_ranking ul.castList li.castCell.rank2 {
		width:calc(100% / 2);
	}
}




















/* ==============================================
	system
=============================================== */
div.system {
	width:900px;
	padding-top:15px;
	max-width:100%;
	margin-left:auto;
	margin-right:auto;
	text-align:center;
}
div.system ul.infoBox {
	padding:1em;
	font-size:40px;
	line-height:1.4;
	font-weight:bold;
}

div.system ul.infoBox li.cate {
	margin-bottom:0.5em;
}
div.system ul.infoBox li.cate > span.course {
	font-size:48px;
	color: #03f;
}
div.system ul.infoBox li.cate > span.playtime {
	font-size:28px;
	color: #03f;
}
div.system ul.infoBox li.cate > div.comment {
	font-size:28px;
	color: #03f;
}


div.system ul.infoBox li.cate > span.image {
	width:100%;
}

div.system ul.infoBox li.flex {
	display:flex;
	flex-wrap:wrap;
	align-items:flex-start;
	padding:0 1em 0.3em;
}
div.system ul.infoBox li.flex > span.time {
	width:50%;
	text-align:left;
}
div.system ul.infoBox li.flex > span.price {
	width:50%;
	text-align:right;
}
div.system ul.infoBox li.flex > span.text {
	width:100%;
	padding-left:1em;
	font-size:60%;
	color:#696;
	text-align:left;
}


div.system ul.discount.infoBox {
	padding-top:0.5em;
}
div.system ul.discount.infoBox li.cate {
	line-height:1.4;
	padding-bottom:10px;
	/* border-bottom:3px solid #fff; */
}
div.system ul.discount.infoBox li.cate > span.course {
	font-weight:700;
}
div.system ul.discount.infoBox li.cate > span.playtime {
	display:block;
	padding-left:0;
	font-size:28px;
}
div.system ul.discount.infoBox li.flex {
	justify-content:center;
	flex-direction:column;
	text-align:center;
}
div.system ul.discount.infoBox li.flex > span.time {
	width:100%;
	text-align:center;
}
div.system ul.discount.infoBox li.flex > span.price {
	width:100%;
	text-align:center;
	font-size:60px;
}

@media screen and (max-width:799px) { 
	div.system ul.infoBox {
		padding:10px 15px;
		font-size:24px;
	}
	div.system ul.infoBox li.cate > span.course {
		display:block;
		font-size:28px;
	}
	div.system ul.infoBox li.cate > span.playtime {
		display:block;
		padding:0;
		font-size:20px;
	}

	div.system ul.discount.infoBox li.cate > span.playtime {
		font-size:20px;
	}
	div.system ul.discount.infoBox li.flex > span.time {
		font-size:20px;
		padding-bottom:10px;
	}
	div.system ul.discount.infoBox li.flex > span.price {
		font-size:42px;
	}
}





/* ==============================================
	access
=============================================== */
#access {
	max-width:100%;
	text-align:center;
}
#access .titleBar.sub {
	margin-top:0;
}

#access iframe {
	width:90%;
	height:360px;
	margin:auto auto 15px;
	border:1px solid #fff;
}
#access .infoBox {
	width:95%;
	margin:auto;
}




/* ==============================================
	recruit
=============================================== */

.recruitButton {
	padding:1.5em 0;
	text-align:center;
}
.recruitButton a {
	display:inline-block;
	padding:0.5em 3em;
	color:#666;
	font-size:120%;
	background-color:rgba(255,255,255,0.8);
	border:1px solid #999;
	border-radius:0.5em;
}
.recruitButton a:before {
	content:">> ";
}
.recruitButton a:hover {
	color:#fff;
	background-color:rgba(204,102,255,0.8);
}

.recruit-0 .titleBar {
	color:#f06;
}
.recruit-0 .infoBox.white {
	border-color:#c00;
}
.recruit-0 .commonTable th {
	background-color:#fcf;
}
.recruit-0 .commonTable th ,
.recruit-0 .commonTable td {
	border-color:#f6c;
}

.recruit-1 .titleBar {
	color:#06f;
}
.recruit-1 .commonTable th {
	background-color:#cdf;
}

@media screen and (max-width:799px) { 
	.recruitButton {
		padding-top:0;
	}
}



/* ==============================================
	recruit form
=============================================== */

.error {
	color:#f00;
}

input[type='text']{
	width:20em;
}

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

.formButton {
	width:100%;
	margin:0 auto;
	padding:10px;
	text-align:center;
	display:flex;
	justify-content:center;
}

form th {
	text-align:right;
}
form td span {
	display:block;
}
form th .required:after ,
form th .required:before {
	display:inline-block;
	padding:0 0.3em;
	font-size:80%;
	color:#fff;
	background:#f06;
	border-radius:3px;
}

form .form-comment {
	padding-top:0.3em;
	font-size:90%;
	color:#999;
}
form .error {
	display:block;
}


@media screen and (min-width:800px) { 
	form th .required:after {
		content:attr(data-text);
		margin-left:0.3em;
	}
}
@media screen and (max-width:799px) { 
	form .commonTable ,
	form .commonTable tbody,
	form .commonTable tr,
	form .commonTable th,
	form .commonTable td {
		display:block;
		width:auto;
		border:0 none;
		text-align:left;
	}
	form .commonTable td:not(.noData) {
		border:0 none;
		padding:0.3em 2em 1em;
	}

	form .commonTable {
		width:100%;
		font-size:100%;
	}
	form th .required:before {
		content:attr(data-text);
		margin-right:0.3em;
	}
}






/* ==============================================
	melmaga
=============================================== */
#PAGE_melmaga input[type='text'] {
	width:480px;
	max-width:75%;
}

#PAGE_melmaga .infoBox.notes p {
	padding:10px 0;
}

@media screen and (max-width:799px) { 
	#PAGE_melmaga input[type='submit'] {
		padding:5px 0.5em;
	}
}

/* ==============================================
	link banner
=============================================== */
.linkList {
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}
.linkList li {
	padding:5px;
}
.linkList li.w100 {
	width:100%;
	text-align:center;
}

.linkList li a {
	display:block;
	padding:5px;
	text-align:center;
	font-size:85%;
	color:#333;
	overflow:hidden;
	white-space:nowrap;
	text-overflow:ellipsis;
	-webkit-text-overflow:ellipsis;
}
.linkList li a:hover {
	color:#fff;
	background:#f9c;
}




/* ==============================================
	profile
=============================================== */
#profileMainBloc .infoBox.notes {
	margin-bottom:30px;
	padding:5px;
	color:#000;
	background:rgba(255,255,255,0.8);
    border: 5px solid #99f;
	letter-spacing:0.1em;
}
.profileName {
	text-align:center;
	font-size:300%;
}
.profileName .number {
	font-size:80%;
}
.profileSize {
	display:block;
	font-size:160%;
}



/* ==============================================
	profile icons
=============================================== */
.profileIcons {
	text-align:center;
	padding:15px 0;
}
.profileIcons .textIcon {
	display:inline-block;
	margin:5px 5px;
	padding:0 1em 0.1em;
	font-size:150%;
	letter-spacing:1px;
	color:#fff;
	background:#c9f;
	border-radius:0.3em;
}



/* ==============================================
	profile thumbs slider
=============================================== */
#profileImageFrame {
	position:relative;
	text-align:center;
	margin:auto auto 60px;
	max-width:730px;
	padding:5px;
}

#profileImageFrame.castFlagNewface:before ,
#profileImageFrame.castFlagPickup:after {
	content:"";
	position:absolute;
	top:15px;
	left:calc(50% - 290px);
	width:20%;
	height:100px;
	background-image:url(images/icons/newface_icon.png);
	background-repeat:no-repeat;
	background-position:0 0;
	background-size:contain;
	z-index:5;
}
#profileImageFrame.castFlagPickup:after {
	top:initial;
	bottom:10px;
	left:calc(50% - 295px);
	width:30%;
	background-image:url(images/icons/pickup_icon.png);
	background-position:0 100%;
}



#profileImageFrame .bx-wrapper .bx-pager {
	bottom:-55px;
	text-align:center;
}
#profileImageFrame #profileThumbs li img {
	border:5px solid #fff;
}


#profileImageFrame ul#profileThumbs li.noimage {
	position:relative;
	display:inline-block;
}
#profileImageFrame ul#profileThumbs li.noimage > .noimageText {
	position:absolute;
	top:0px;
	bottom:0px;
	left:5%;
	right:5%;
	padding-top:45%;
	text-align:center;
	font-size:60px;
	line-height:1.4;
	font-weight:700;
	color:#000;
	text-shadow:0px 0px 5px #fff ,0px 0px 5px #fff ,0px 0px 5px #fff
				,0px 0px 10px #fff ,0px 0px 10px #fff ,0px 0px 10px #fff
				,0px 0px 10px #fff ,0px 0px 10px #fff ,0px 0px 10px #fff;
}
#profileImageFrame ul#profileThumbs li.noimage > .noimageText > span {
	display:block;
	width:100%;
	overflow:hidden;
	white-space:nowrap;
}

@media screen and (max-width:799px) { 
	#profileImageFrame.castFlagNewface:before {
		left:15px;
	}
	#profileImageFrame.castFlagPickup:after {
		left:10px;
	}
	#profileImageFrame ul#profileThumbs li.noimage > .noimageText {
		font-size:48px;
	}
}






/* ==============================================
	profile information
=============================================== */
#profileInfoFrame {
	max-width:800px;
	margin:auto auto 4em;
}
#profileInfoFrame #profileProfileBloc {
}
#profileInfoFrame #profileProfileBloc img {
	vertical-align:top;
}
#profileInfoFrame #profileTable {
	padding:0.5em;
	color:#000;
	background:rgba(255,255,255,0.8);
    border: 3px solid #99f;
	border-radius: 0.5em;
	text-align:left;
	display:flex;
	flex-wrap:wrap;
}
#profileInfoFrame #profileTable dt {
	color: #00f;
	font-weight:bold;
	width:270px;
	padding:5px 1em;
}
#profileInfoFrame #profileTable dt > span {
	padding-left:1.2em;
}

#profileInfoFrame #profileTable dd {
	width:calc(100% - 270px);
	padding:5px 1em;
}

#profileInfoFrame #profileMessageBloc {
	background:#98999b;
	padding:0.5em;
}
#profileInfoFrame .profileSubHeader {
	color:#f06;
	padding-left:1em;
}

#profileInfoFrame #profileMessageBloc p {
	padding-left:2em;
}

@media screen and (max-width:799px) { 
	#profileInfoFrame {
		font-size:16px;
		line-height:1.6;
	}
	#profileInfoFrame #profileTable dt {
		width:100%;
		padding-bottom:0;
	}
	#profileInfoFrame #profileTable dd {
		width:100%;
		padding-top:0;
		padding-left:2em;
	}
}



/* ==============================================
	profile > right info frame > bottom schedule
=============================================== */
#profileScheduleBloc {
	max-width:800px;
	margin:40px auto;
	color:#333;
}

.profileScheduleCaption {
	text-align:center;
	font-weight:bold;
	line-height:2;
	font-size:130%;
}
.profileSchedule {
	width:100%;
	margin:auto;
	text-align:center;
	border-spacing:3px;
	padding:3px;
	border-collapse:collapse;
}
.profileSchedule caption {
}
.profileSchedule th ,
.profileSchedule td {
	width:14%;
	border:2px solid #99f;
	background:#fff;
	font-size:95%;
}
.profileSchedule th {
	padding:5px 0;
	color:#fff;
	background:#999;
}
.profileSchedule th.week0 {
	background-color:#e65380;
}
.profileSchedule th.week6 {
	background-color:#3355b5;
}

.profileSchedule th span.wday {
	font-size:80%;
}

.profileSchedule td {
	padding:10px 0;
}

@media screen and (max-width:799px) { 
	.profileSchedule th ,
	.profileSchedule td {
		font-size:110%;
	}
}




/* ==============================================
	profile(event)
=============================================== */
#profileInfoFrame.eventInfo {
}
#profileInfoFrame.eventInfo #profileProfileBloc {
	display:none;
}
#profileInfoFrame.eventInfo #profileMessageBloc {
	float:none;
	width:100%;
}




/* ==============================================
	profile > guide(bottom)
=============================================== */
#profileGuideBottom {
	margin:4em auto 2em;
	overflow:hidden;
	display:flex;
	justify-content:center;
	text-align:center;
}
#profileGuideBottom li {
	width:140px;
	padding:0 1px
}

#profileGuideBottom li a {
	display:block;
	width:100%;
	padding:0.3em 0 0.4em;
	font-size:90%;
	color: #00f;
	background:#fff;
	font-weight: bold;
}
#profileGuideBottom li:last-child a {
	border-right:0px none;
}
#profileGuideBottom li a span {
}
#profileGuideBottom li a:hover {
	background:#99f;
	color:#fff;
}




/* ==============================================
	loading filter
=============================================== */
#loadingFilter {
	display:none;
	position:fixed;
	top:0;
	left:0;
	margin:0;
	width:100%;
	height:100%;
	z-index:9999;
	background-color:rgba(255,255,255,0.9);
}
body:not(#PAGE_index) #loadingFilter #loadingFrame {
	width:100%;
	height:100%;
	padding-bottom:15%;
}
#loadingFilter #loadingFrame #loadingImg {
	width:100%;
	height:100%;
	background-image:url(img/loading.gif);
	background-position:50% 50%;
	background-repeat:no-repeat;
}

@media screen and (min-width:800px) { 
	body:not(#PAGE_index) #loadingFilter #loadingFrame {
		min-width:1000px;
		max-width:1600px;
		padding-left:300px;
		padding-right:10px;
	}
}




/* ==============================================
	scrollTop
=============================================== */
#scrollTop {
	position:fixed;
	bottom:0;
	right:0;
	display:none;
	width:60px;
	height:60px;
	text-align:center;
	border:3px solid #f39;
	border-image:linear-gradient(15deg ,#f9c ,#fde ,#f36 ,#f69 ,#fde ,#f36) 2;
}
#scrollTop #scrollTopInner {
	cursor:pointer;
	border:2px solid #fff;
	background:rgba(255,0,102,0.3);
	width:100%;
	height:100%;
	display:flex;
}
#scrollTop img {
}






/* ==============================================
	transfer Banner
=============================================== */
.innerFrame.comingsoon .date {
	font-size:450%;
	font-weight:bold;
	background:-webkit-linear-gradient(90deg ,#ff8 20% ,#ffd 30% ,#db5 45% ,#ff9 65% ,#c95 80%);
	-webkit-background-clip:text;
	-webkit-text-stroke:1px #000;
	color:transparent;
	text-shadow:none;

	display:flex;
	justify-content:center;
	align-items:center;
}
.innerFrame.comingsoon .date small {
	font-size:75%;
}


.innerFrame.comingsoon .dispPC img {
	max-width:900px;
}

.transBanner {
	margin:60px auto 30px;
	text-align:center;
}
.transBanner a {
	display:inline-block;
	font-size:18px;
	line-height:2;
	color:#f9c;
}
.transBanner a img {
	border:2px solid transparent;
	transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
}
.transBanner a:hover img {
	border:2px solid #fff;
}


@media screen and (max-width:799px) { 
	.innerFrame.comingsoon .date {
		font-size:240%;
	}
	.transBanner a {
		font-size:14px;
	}

}


/* ==============================================
	price panel(sp)
=============================================== */
@media screen and (max-width:799px) { 
	#PAGE_home .imageList.eventList {
		padding-bottom:0;
	}
	#spPrice {
		padding:0 20px 40px;
		text-align:center;
	}
	#spPrice #spPriceC {
		color:#b83;
		font-size:16px;
	}
}




/* ==============================================
	filterBg
=============================================== */
#filterBg {
	position:fixed;
	top:0;
	bottom:0;
	left:0;
	right:0;
	display:block;
	width:100%;
	height:100%;
	background:#fff;
	z-index:10000;
	opacity:0;
}




/* ==============================================
	review
=============================================== */
.review {
	width:100%;
	display:flex;
	justify-content:space-evenly;
	align-items:flex-start;
}
.review .reviewList .infoBox.white {
	border:2px solid #f69;
	border-image:none;
	background:linear-gradient(15deg ,#f9c1 ,#fde1 ,#f361 ,#f691 ,#fde1 ,#f361);
}

.review > .reviewBloc {
	width:48%;
}
.reviewCell {
	width:100% !important;
}
.reviewCell .reviewDate {
	padding-right:1em;
	font-size:80%;
	text-align:right;
}
.reviewCell .infoBox.white {
	padding:0.5em 1em;
}
.reviewCell:last-child > .infoBox.white {
	margin-bottom:0;
}
.review .reviewList .reviewText.infoBox.white {
	border:1px solid #f69;
	background:rgba(255,255,255,0.3);
}

.reviewCell .text {
	padding-left:1em;
}
.reviewCell .body {
	padding-left:1em;
}

.reviewCell .reviewCast {
	padding-bottom:0.3em;
}

.reviewText.infoBox.white {
	border:1px solid #ccc;
	border-image:none;
	margin-bottom:0.5em;
}

.reviewNotes.infoBox.white {
	margin:0.5em 0 0.3em;
}


.reviewButton {
	padding:0 1em;
	display:flex;
	justify-content:center;
	align-items:center;
}
.reviewButton > span ,
.reviewButton > a {
	padding:0 1.5em 0.1em;
	line-height:2;
	letter-spacing:0.05em;
	color:#fff;
	border:2px solid;
	border-radius:1.5em;
	cursor:pointer;
}
.reviewButton > a {
	margin-left:auto;
}

@media screen and (max-width:799px) { 
	.review {
		align-items:center;
		flex-direction:column;
	}
	.review > .reviewBloc {
		width:100%;
	}
	.reviewBloc.shop {
		margin-bottom:50px;
	}
	.reviewCell .reviewDate {
		padding-right:0.5em;
		font-size:95%;
	}
}



/* color */
.reviewBloc .reviewButton > * {
	border-color:#f9c;
	background-color:#f06;
}
.reviewBloc .reviewButton > *:hover {
	color:#f06;
	background-color:#fde;
}



#profileReviewFrame:not(.all) .reviewList .reviewCell:nth-child(n + 2){
	display:none;
}

@media screen and (max-width:799px) { 
	#profileReviewFrame .titleBar.sub {
		font-size:32px;
		letter-spacing:0.1em;
		text-indent:0.1em;
	}
}




/* ==============================================
	diary
=============================================== */
.diaryList {
	padding:0 1em;
	line-height:1.6;
	display:flex;
	justify-content:flex-start;
	align-items:flex-start;
}
.diaryList > li {
	width:calc(100% / 3);
	padding:0 0.5em 1em;
}
.diaryCell {
	display:block;
	padding:0.5em 1em;
	text-align:center;
	background:rgba(255,255,255,0.6);
	border:2px solid;
}
.diaryCell .diaryDate {
	font-size:80%;
}
.diaryCell .diaryCate {
	font-size:80%;
}

.diaryCell .diaryImage {
	padding:0 1em;
	height:120px;
}
.diaryCell .diaryImage > * {
	width:100%;
	height:100%;
	object-fit:cover;
}

.diaryCell .diaryText {
	position:relative;
	text-align:left;
	height:calc(1.6em * 3);
	overflow:hidden;
}
.diaryCell .diaryText:after {
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	display:block;
	height:calc(1.6em * 1.5);
	z-index:2;
	background:linear-gradient(#fff0 ,#ffff 80%);
}


.diaryButton {
	padding:0.5em 0;
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
}
.diaryButton > a {
	width:80%;
	line-height:2;
	letter-spacing:0.05em;
	color:#fff;
	border:2px solid;
	border-radius:1.5em;
	cursor:pointer;
}


.diaryButton.cate {
	font-size:130%;
}
.diaryButton.cate a {
	width:60%;
}

.diary {
	width:100%;
	display:flex;
	justify-content:space-evenly;
	align-items:flex-start;
}
.diary .infoBox.white{
	background:rgba(255,255,255,0.4);
}

.diary > .diaryBloc {
	width:48%;
}

.diary .diaryList {
	padding:0.5em;
	flex-direction:column;
}
.diary .diaryList > li {
	width:100%;
	padding:0.5em;

}
.diary a.diaryCell {
	color:#000;
	display:flex;
	justify-content:flex-start;
	align-items:flex-start;
}
.diary a.diaryCell > .diaryInfo {
	order:2;
	width:60%;
	text-align:left;
}
.diary a.diaryCell > .diaryImage {
	order:1;
	width:40%;
}
.diary a.diaryCell > .diaryImage > * {
	object-position:50% 0;
}


@media screen and (max-width:799px) { 
	.diary {
		align-items:center;
		flex-direction:column;
	}
	.diary > .diaryBloc {
		width:100%;
	}
	.diaryBloc.shop {
		margin-bottom:50px;
	}
	.diaryList {
		font-size:16px;
		align-items:center;
		flex-direction:column;
	}
	.diaryList > li {
		width:100%;
	}
	.diaryButton > a {
		width:40%;
	}
}


.diaryBloc.shop {
}
.diaryBloc.shop .head {
	color:#03f;
}
.diaryBloc.shop .titleBar.sub ,
.diaryBloc.shop .diaryList.infoBox.white ,
.diaryBloc.shop .diaryButton > * {
	border-color:#09f;
}
.diaryBloc.shop .infoBox.white {
	border-color:#0cf;
}
.diaryBloc.shop .diaryButton > * {
	background-color:#06f;
}
.diaryBloc.shop .diaryButton > *:hover {
	color:#06f;
	background-color:#def;
}
.diary .shop a.diaryCell:hover {
	background:#def;
}


.diaryBloc.cast {
}
.diaryBloc.cast .head {
	color:#f30;
}
.diaryBloc.cast .titleBar.sub ,
.diaryBloc.cast .diaryList.infoBox.white ,
.diaryBloc.cast .diaryButton > * {
	border-color:#f90;
}
.diaryBloc.cast .infoBox.white {
	border-color:#fc0;
}
.diaryBloc.cast .diaryButton > * {
	background-color:#f60;
}
.diaryBloc.cast .diaryButton > *:hover {
	color:#f60;
	background-color:#fed;
}
.diary .cast a.diaryCell:hover {
	background:#fed;
}



#profileDiaryFrame .diaryCell .diaryHead {
	color:#fff;
	background-color:#f90;
}
#profileDiaryFrame .diaryCell .diaryImage {
	padding:1em 0.5em;
	height:160px;
}

#profileDiaryFrame .diaryList .diaryCell .diaryCate {
	display:none;
}

@media screen and (max-width:799px) { 
	#profileDiaryFrame:not(.all) .diaryList .diaryCell:nth-child(n + 2){
		display:none;
	}
	#profileDiaryFrame .titleBar.sub {
		font-size:32px;
		letter-spacing:0.1em;
		text-indent:0.1em;
	}
}

/* ==============================================
	diary page > main
=============================================== */
.diary.page {
}
.diary.page .diaryBloc#profileDiaryFrame {
	width:70%;
	margin:0;
}

.diary.page .diaryList {
	font-size:120%;
}
.diary.page .diaryBloc#profileDiaryFrame .diaryInfo {
	padding:0.5em 1em;
	color:#fff;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	text-align:left;
}
.diary.page .diaryBloc#profileDiaryFrame .diaryInfo > .diaryDate {
	order:2;
}
.diary.page .diaryBloc#profileDiaryFrame .diaryInfo > .diaryCate {
	order:1;
	display:initial;
}
.diary.page .diaryBloc#profileDiaryFrame .diaryInfo > .diaryHead {
	order:3;
	font-size:120%;
	width:100%;
	background:initial;
}




.diary.page .diaryBloc#profileDiaryFrame .diaryImage {
	margin:auto;
	width:80%;
	padding:1em 2em;
	height:auto;
}

.diary.page.list .diaryBloc#profileDiaryFrame .diaryImage {
	height:15em
}



/* ==============================================
	diary page > right menu
=============================================== */
.diary.page > .diaryNavBloc {
	width:25%;
}

.diaryNavCell {
	padding-bottom:60px;
}

.diaryNaviTitle {
	margin-bottom:30px;
	font-size:24px;
	line-height:2;
	background:rgba(255,255,255,0.6);
	border:2px solid;
	text-align:center;
}
.diaryNavBloc ul {
	border-top:1px solid;
}
.diaryNavBloc li {
	border-bottom:1px solid;
}


.diaryNavBloc li a {
	display:block;
	color:#000;
	padding:0.5em 1em;
}
.diaryNavBloc li a:hover {
	color:#f00;
}

.diaryNavBloc .rank {
	padding-right:1em;
}
.diaryNavBloc .name {
	padding-left:0.5em;
}

.diaryNavBloc .flexStart{
	display:flex;
	justify-content:flex-start;
	align-items:center;
	font-size:120%;
}

.diaryNavBloc .flexEnd{
	display:flex;
	justify-content:flex-end;
	align-items:center;
}

.diaryCategory .count {
	padding-left:0.5em;
	font-size:90%;
}

@media screen and (max-width:799px) { 
	.diary.page .diaryBloc#profileDiaryFrame {
		width:100%;
	}
	.diary.page > .diaryNavBloc {
		padding-top:3em;
		width:90%;
	}
}



/* ==============================================
	diary page > navilist
=============================================== */
.navigation {
	padding-bottom:1em;
	display:flex;
	justify-content:flex-start;
	align-items:center;
}
.navigation li:before {
	content:">";
	padding-right:0.5em;
}
.navigation li + li:before {
	padding-left:0.5em;
}
.navigation a {
	color:#000;
	text-decoration:underline;
}

@media screen and (max-width:799px) { 
	.navigation {
		font-size:90%;
	}
}

/* ==============================================
	diary page > article
=============================================== */

.diaryCell.article .diaryButton {
	display:none;
}
.diaryCell.article .diaryText {
	padding-bottom:1em;
	height:auto;
}
.diaryCell.article .diaryText:after {
	content:none;
}

/* ==============================================
	diary - color
=============================================== */
.diary.page .cast.diaryBloc#profileDiaryFrame .diaryInfo {
	background-color:#f90;
}
.cast .diaryCell ,
.cast .diaryNaviTitle ,
.cast.diaryNavBloc ul ,
.cast.diaryNavBloc li {
	border-image:linear-gradient(15deg ,#f9c ,#fde ,#f36 ,#f69 ,#fde ,#f36) 30;
}
.diary.page .shop.diaryBloc#profileDiaryFrame .diaryInfo {
	background:#06f;
}
.shop .diaryCell ,
.shop .diaryNaviTitle ,
.shop.diaryNavBloc ul ,
.shop.diaryNavBloc li {
	border-image:linear-gradient(15deg ,#f9c ,#fde ,#f36 ,#f69 ,#fde ,#f36) 30;
}

/* ==============================================
	diary - pager
=============================================== */
.pager {
	padding:2em 0;
}
.pager ul {
	display:flex;
	justify-content:flex-start;
	align-items:center;
	flex-wrap:wrap
}
.pager ul > li {
	padding:0.2em;
}
.pager ul > li a {
	display:block;
	width:3.4em;
	height:3.4em;
	color:#999;
	background:rgba(255,255,255,0.8);
	border:1px solid #999;
	border-radius:0.3em;
	display:flex;
	justify-content:center;
	align-items:center;
}
.pager ul > li.active a {
	color:#f00;
	background:rgba(255,240,240,0.8);
	border:1px solid #f00;
}
.pager ul > li:not(.active) a:hover {
	color:#00f;
	background:rgba(240,240,255,0.8);
	border:1px solid #00f;
}

@media screen and (max-width:799px) { 
	.pager ul > li {
		padding:0.1em;
	}
	.pager ul > li a {
		width:3.1em;
		height:3.1em;
	}
}




.indexText {
	width:800px;
	max-width:100%;
	margin:0 auto;
	padding-top:2em;
	text-align:center;
	font-size:95%;
	font-weight:bold;
}
.indexText > * {
	white-space:nowrap;
}
.indexText .pt {
	padding-top:0.5em;
}
.indexText h2 {
	color:#f00;
}
.indexText strong {
	color:#f0f;
}

