@charset "utf-8";


/* ============================================================================================
	外部フォント
============================================================================================= */
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700;900&family=Noto+Sans+JP:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1:wght@400;700&display=swap');

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


* {
	--font-family:'M PLUS 1' ,sans-serif;
	--font-family-en:'CSerif' ,'Noto Serif JP' ,serif;
	--font-family-jp:'M PLUS 1' ,sans-serif;
}

/* ============================================================================================
	ＣＳＳ初期化
============================================================================================= */
*,*:before,*:after {
	box-sizing:border-box;
	text-size-adjust:100%;
	-webkit-text-size-adjust:100%;
	margin:0;
	padding:0;
	border:0 none;
	vertical-align:inherit;
	color:inherit;
	line-height:inherit;
	font-size:inherit;
	font-style:inherit;
	font-weight:inherit;
	text-decoration:inherit;
}

ol,ul,li {
	list-style:none;
}
img {
	display:block;
	margin:auto;
	max-width:100%;
	vertical-align:top;
	backface-visibility:hidden;
	-webkit-backface-visibility:hidden;
}
a {
	display:inline-block;
	transition:all 0.3s ease;
	-webkit-transition:all 0.3s ease;
}
.anchorLink {
	cursor:pointer;
}

input ,textarea ,select ,option{
	padding:0.5em;
	border:1px solid #999;
	border-radius:0.3em;
	font-family:var(--font-family);
}
select {
	padding:0 0.5em;
	height:2.7em;
}
input[type="text"] ,textarea {
	width:100%;
}
textarea {
	height:10em;
}
input[type="file"] {
	border:0 none;
}
input[type="submit"] ,
input[type="button"] {
	cursor:pointer;
}


label.flex {
	display:flex;
	justify-content:center;
	align-items:center;
}
label > span {
	padding-left:0.2em;
}

.imageFlex {
	display:flex;
	justify-content:flex-start;
	align-items:center;
}
.pt1 {
	padding-top:1em;
}

.noDisp {
	display:none;
}


@-webkit-keyframes blink {
	0%{opacity:0;} 100%{opacity:1;}
}
@-moz-keyframes blink {
	0%{opacity:0;} 100%{opacity:1;}
}
@keyframes blink{
	0%{opacity:0;} 100%{opacity:1;}
}



/* ==============================================
	common
=============================================== */
.titleBar {
	margin-bottom:10px;
	padding:0.3em 1em;
	color:#c60;
	text-shadow:1px 1px 0 #fff;
	background:linear-gradient(#ddd ,#fff ,#ffe ,#fdb) #eee;
	box-shadow:1px 1px 3px #999;
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.titleBar > .en {
	font-size:140%;
	font-family:var(--font-family-en);
}
.titleBar > .jp {
	font-size:90%;
	font-family:var(--font-family-jp);
}

.titleBar.sub {
	font-size:120%;
	color:#000;
	text-shadow:1px 1px 0px #fff;
	background:linear-gradient(#fff, #eee) #eee;
	border-bottom:3px solid #fc0;
	justify-content:flex-start;
}
.titleBar.sub:before {
	content:"";
	display:block;
	width:1em;
	height:1em;
	background:#fc0;
}
.titleBar.sub > span {
	padding-left:0.2em;
}

.titleBar.sub.blue {
	border-bottom:3px solid #06f;
}
.titleBar.sub.blue:before {
	background:#06f;
}

.contentsBannerTitle {
	padding:0.1em 0.8em;
	font-size:140%;
	font-weight:bold;
	color:#c60;
	text-shadow:1px 1px 3px #fff;
	background:#fff;
	box-shadow:1px 1px 3px #999;
	border:2px solid #c60;
	border-radius:0.6em;
	overflow:hidden;
	font-family:var(--font-family-en);
}


.noData {
	width:100%;
	min-height:300px;
	padding-top:80px;
	color:#666;
	font-size:90%;
	text-align:center;
}

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

.contentsBloc {
	margin-bottom:20px;
}

.infoBox {
	width:100%;
	padding:30px 30px 60px;
}
.center {
	text-align:center;
}
.infoBox p {
	padding:5px 0;
}

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

.noticeInfo {
	color:#f06;
}
.noticeAlert {
	color:#f06;
}
.noticeLink {
	padding:1em;
	color:#999;
	font-size:small;
}

.noticeLink a {
	display:inline-block;
	padding:0.2em 1em;
	font-size:140%;
	color:#000;
	background:#eee;
	border:1px solid #999;
	border-radius:0.3em;
}
.noticeLink a:active {
	box-shadow:0 0 0 1px #000 inset;
}



.mBottom {
	margin-bottom:30px;
}

.strong {
	color:#f06;
	font-size:120%;
	font-weight:bold;
}

/* ==============================================
	body
=============================================== */
body {
	position:relative;
	font-size:16px;
	line-height:1.6;
	color:#000;
	text-shadow:1px 1px 1px #fff;
	letter-spacing:0.05em;
	text-indent:0.05em;
	background:url(images/pc/ptback0002.jpg) 50% 0 repeat-y #fff;
	font-family:var(--font-family);
}

.innerFrame {
	width:1200px;
	margin:0 auto;
}
.paddingA {
	padding:10px;
}
.paddingB {
	padding:20px;
}

@media screen and (max-width:1200px){
	body {
		background-position:-1200px 0;
	}
	#pageTop {
		width:1200px;
		margin:0 auto;
	}
}
@media screen and (max-width:799px){
	body {
		background-position:50% 0;
	}
	#pageTop {
		width:480px;
		margin:0 auto;
	}
}



/* ==============================================
	body layout
=============================================== */
#main.innerFrame {
	padding:20px 20px 40px;
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
}

#main.innerFrame > #sideMenu {
	width:260px;
	padding:0 10px;
	text-align:center;
}
#sideMenu li {
	padding-bottom:1em;
}
#sideMenu li img {
	box-shadow:1px 1px 3px #fff;
	transition:all 0.3s ease;
	-webkit-transition:all 0.3s ease;
}

#sideMenu li a {
	display:block;
}
#sideMenu li a:hover img {
	filter:brightness(1.1);
	box-shadow:0px 0px 3px 1px #c60;
}



/* ==============================================
	body mainBloc
=============================================== */
#mainBloc {
	width:880px;
	max-width:100%;
	padding-right:10px;
}



/* ==============================================
	header
=============================================== */
#header {
	position:relative;
	margin:0 auto;
}

#header #h1 {
	min-width:1200px;
	font-size:90%;
	color:#fff;
	text-shadow:1px 1px 1px #000;
	background:rgba(255,153,51,0.6);
}
#header #h1 h1 {
	padding:0.2em 1em;
}

#header #headerLogo {
	display:inline-block;
	height:100px;
	float:left;
}
#header #headerTel {
	display:inline-block;
	padding-top:40px;
	float:right;
}


#header #pageHeaderBloc {
	position:relative;
	margin-bottom:10px;
}

#header #pageHeaderBloc .infoFlex {
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	width:100%;
	padding:0 30px 6px;
	font-family:var(--font-family-en);
	font-weight:700;
	line-height:1.2;

	color:#fff;
	text-shadow:2px 2px 0 #630 ,0 0 5px #930 ,0 0 10px #930;

	display:flex;
	justify-content:space-between;
	align-items:flex-end;
	flex-direction:column;
}
#header #pageHeaderBloc .infoFlex .time {
	font-size:130%;
}
#header #pageHeaderBloc .infoFlex .tel {
	font-size:220%;
}
#header #pageHeaderBloc .infoFlex small {
	font-size:75%;
	padding-right:0.1em;
}

#homeHtmlBody #header #pageHeaderBloc .infoFlex {
	line-height:1.6;
	justify-content:space-between;
	align-items:center;
	flex-direction:row;
}
#homeHtmlBody #header #pageHeaderBloc .infoFlex .time {
	font-size:210%;
}
#homeHtmlBody #header #pageHeaderBloc .infoFlex .tel {
	font-size:240%;
}


/* ==============================================
	header > menu
=============================================== */
#header .navMenuBloc {
}
#header ul.navMenu {
	width:100%;
	height:60px;
	display:flex;
	justify-content:center;
	align-items:center;
	background:url(images/pc/menu_bg.png) 50% 50% no-repeat;
	background-size:cover;
}
#header ul.navMenu > li {
	flex-grow:1;
	width:calc(100% / 12);
	height:100%;
	overflow:hidden;
}
#header ul.navMenu > li a {
	position:relative;
	display:block;
	width:100%;
	height:100%;
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	line-height:1.2;
	color:#c60;
	font-weight:bold;
	padding-top:5px;
	border-bottom:5px solid #999;
}
#header ul.navMenu > li.active a {
	background:rgba(255,204,153,0.5);
	border-bottom-color:#f60;
}
#header ul.navMenu > li:not(.active) a:hover {
	background:rgba(255,255,0,0.2);
	border-bottom-color:#fc0;
}


#header ul.navMenu > li a:before ,
#header ul.navMenu > li a:after {
	content:"";
	position:absolute;
	top:10px;
	bottom:10px;
	left:0;
	display:block;
	width:1px;
	background:#fff;
}
#header ul.navMenu > li a:before {
	left:auto;
	right:0;
	background:#999;
}

#header ul.navMenu > li a span.en {
	font-weight:bold;
	letter-spacing:-1px;
	text-indent:-1px;
	font-family:'Noto Serif JP' ,serif;
	text-shadow:1px 1px 1px #fff ,0 0 5px #fff ,0 0 5px #fff ,0 1px 5px #fff;
}
#header ul.navMenu > li a span.jp {
	color:#333;
	font-size:70%;
	text-shadow:1px 1px 0px #fff ,0 0 3px #fff;
}


/* 2021.10.1 */
@media screen and (min-width:800px){
	ul.navMenu > li.navMenu13 {
		display:none;
	}
}
@media screen and (max-width:799px){
}


/* ==============================================
	footer
=============================================== */
#footer {
	position:relative;
	width:100%;
	text-align:center;
}
#footer .innerFrame {
	padding-bottom:2em;
	background:url(images/pc/footer.jpg);
}

#footer .footerNavPC {
	padding:1em 0;
}
#footer .navMenuBloc {
	width:100%;
}
#footer .navMenu {
	display:flex;
	justify-content:center;
	align-items:center;
}
#footer .navMenu > li {
	padding:0 0.3em;
}
#footer .navMenu > li a {
	display:block;
	padding:0 0.3em;
	color:#930;
    font-weight:bold;
}
#footer .navMenu > li a span.jp {
	display:none;
}
#footer .navMenu > li a:hover {
	color:#fff;
    -webkit-text-stroke:1px #fff;
	text-shadow:2px 2px 0 #630,0 0 5px #630;
}

#footerInfo {
	color:#930;
	font-weight:bold;
}
#footerInfo .logo {
	padding-top:30px;
	text-align:center;
}
#footerInfo .logo a {
	width:300px;
}
#footerInfo .time {
	padding-top:0.3em;
}
#footerInfo .tel {
	font-size:160%;
}


#copyright {
	padding:1em 0;
	color:#333;
	font-size:80%;
	text-align:center;
}
#copyright a:hover {
	text-decoration:underline;
}



/* ==============================================
	page layout
=============================================== */
#comingsoonFrame {
	position:relative;
	padding-bottom:30px;
}
#comingsoonFrame .openText {
	position:absolute;
	top:20px;
	left:0;
	transform:scaleY(1.2);
}
#comingsoonFrame .openText > img {
	width:65%;
}

/* ==============================================
	index > enter buttons
=============================================== */
#indexHtmlBody #header {
	position:relative;
	height:auto;
}
#indexHtmlBody #body .infoBox {
	width:100%;
}
div#enterButtonFrame {
	width:100%;
	padding:30px 0;
}

div#enterButtonFrame ul {
	padding:1em 0;
	display:flex;
	justify-content:center;
	align-items:center;
}
div#enterButtonFrame ul > li {
	padding:0 1em;
}

div#enterButtonFrame ul li#enterButton a {
	background:url(images/pc/btn_enter.png) 50% 50% no-repeat;
	background-size:contain
}
div#enterButtonFrame ul li#exitButton a {
	background:url(images/pc/btn_exit.png) 50% 50% no-repeat;
	background-size:contain
}



/* ==============================================
	home > slider
=============================================== */
#homeSliderBloc {
	width:100%;
	padding-bottom:2em;
}


#homeSliderBloc .bx-wrapper {
}
#homeSliderBloc .bx-wrapper .bx-viewport {
	border:0 none;
	box-shadow:1px 1px 1px #c60,-1px -1px 1px #c60,0px 3px 5px #c60;
}
#homeSliderBloc .bx-wrapper img {
	width:100%;
	aspect-ratio:1181 / 835;
	object-fit:contain;
}



/* ==============================================
	home > banner
=============================================== */
#homeBanner {
	padding:0.5em 1em 1em;
	text-align:center;
}
#homeBanner li {
	padding:1em 0;
}
#homeBanner li img {
	box-shadow:1px 1px 3px #fff;
}
#homeBanner li a {
}
#homeBanner li a:hover img {
	opacity:0.9;
	box-shadow:0px 0px 3px 1px #f06;
}







/* ==============================================
	system
=============================================== */
.system.infoBox {
	padding:30px 60px 60px;
}
.systemBloc {
	background:url(images/pc/system_photo.jpg) 100% 0% no-repeat;
	background-size:cover;
	font-size:180%;
	line-height:2;
	border-radius:1em;
	text-align:center;
	overflow:hidden;
}
.systemBloc:before {
	content:"SYSTEM";
	font-size:130%;
	font-weight:bold;
	display:block;
	width:100%;
	color:#fff;
	text-shadow:1px 1px 0 #000;
	background:rgba(255,153,0,0.6);
}
.systemBloc:after {
	content:"";
	display:block;
	width:100%;
	height:2em;
	background:rgba(255,153,0,0.6);
}

.systemBloc ul {
}
.systemCell {
	padding:0 2em;
	display:flex;
	justify-content:center;
	align-items:center;
}
.systemCell.title {
	background:rgba(255,204,0,0.6);
}
.systemCell.price {
	justify-content:space-between;
}

.systemCell.line {
	border-bottom:0.5em solid rgba(255,204,0,0.6);
}

.systemCell .size-s {
	font-size:75%;
}
.systemCell .size-l {
	font-size:120%;
	font-weight:bold;
}



/* ==============================================
	access
=============================================== */
#access {
	text-align:center;
	line-height:2;
}
#access iframe {
	width:100%;
	height:480px;
	border:1px solid #ccc;
}
#access p {
}
#access p.shopName {
	font-size:160%;
	color:#f60;
}



/* ==============================================
	castlist
=============================================== */
ul.castList {
	margin-bottom:15px;
	width:100%;
	display:flex;
	justify-content:flex-start;
	flex-wrap:wrap;
}
ul.castList > li.castCell {
	width:calc(100% / 4);
	padding:5px;
	text-align:center;
}
ul.castList > li.castCell > div.innerCell {
	position:relative;
	background:#eee;
	box-shadow:1px 1px 3px #999;
}
li.castCell a {
	position:relative;
	display:block;
	padding:2px;
	color:#000;
	z-index:2;
}
li.castCell a:hover {
	background-color:rgba(255,238,204,0.6);
	box-shadow:0 0 3px 1px #c60;
}

li.castCell .castImage {
	position:relative;
	display:block;
	width:100%;
	aspect-ratio:2 / 3;
	background-position:50% 50%;
	background-size:cover;
}
li.castCell .castImage img {
	width:100%;
	height:100%;
	object-fit:cover;
}

li.castCell .castInfo {
	position:relative;
	display:block;
	padding-top:2px;
}
li.castCell .castInfo > span {
	display:block;
}
li.castCell .castInfo .castIcons {
	display:flex;
	height:25px;
}
li.castCell .castInfo .castIcons img {
	width:calc(100% / 3);
}
li.castCell .castInfo .castName {
	font-size:140%;
	font-weight:bold;
}
li.castCell .castInfo .castSize {
	padding:0.2em 0;
	line-height:1.4;
}
li.castCell .castInfo .castSize > span {
	display:block;
}
li.castCell .castInfo .castSize > span.size {
	color:#c06;
}
li.castCell .castInfo .castTime {
	color:#60c;
	text-shadow:1px 1px 0 #fff;
	letter-spacing:1px;
}
li.castCell .castInfo .castTime.on {
	background:rgba(255,255,255,0.8);
}

li.castCell .castImage.castFlagNewface:after ,
li.castCell .castImage.castFlagBlog:before {
	content:"";
	position:absolute;
	width:40px;
	height:40px;
	background:url(images/icons/newface.png) 50% 50% no-repeat;
	background-size:contain;
	top:3px;
	right:3px;
}
li.castCell .castImage.castFlagBlog:before {
	left:3px;
	right:auto;
	background-image:url(images/icons/blog.png);
}



/* ==============================================
	schedule
=============================================== */
#dateList {
	padding:1em 0.5em 2em;
	text-align:center;
	display:flex;
	justify-content:space-around;
}
#dateList > li {
	display:block;
	width:calc(100% / 7 - 4px);
	line-height:2.4;
	font-weight:bold;
	color:#333;
	text-shadow:1px 1px 1px #fff;
	cursor:pointer;
	border:1px solid #999;
}
#dateList > li.on {
	color: #fff;
	text-shadow:1px 1px 1px #000;
	background:#f93;
	border:1px solid #f60;
	box-shadow:1px 1px 3px #fcc inset;
}
#dateList > li:not(.on):hover {
	color:#fff;
	text-shadow:1px 1px 1px #000;
	background:#fc9;
}



/* ==============================================
	mailmagazine
=============================================== */
#mailmagazineForm {
	padding:20px;
	text-align:center;
}
#mailmagazineForm form {
	display:flex;
	justify-content:center;
	align-items:center;
}

#mailmagazineForm .buttons {
}
#mailmagazineForm .buttons input {
	margin-left:1em;
	padding:0.3em 1.5em;
}
#mailmagazineForm input[type="text"] {
	width:30em;
}




/* ==============================================
	event
=============================================== */
.eventImage {
	padding:10px;
	text-align:center;
}
.eventImage img {
	box-shadow:1px 1px 5px #999;
}
.eventText {
	padding:10px;
	display:none;
}




/* ==============================================
	coupon
=============================================== */
.coupon .infoBox {
	padding:30px 30px;
}
.couponCell {
	text-align:center;
	border-left:0.5em solid #fd0;
	border-right:0.5em solid #fd0;
}
.couponCell h3 {
	font-size:200%;
	font-weight:bold;
	color:#fff;
	text-shadow:1px 1px 0 #000;
	background:#fd0;
}
.coupon .infoBox .body {
	padding:0.5em;
	text-align:center;
}
.coupon .eventImage + .body {
	padding-top:0.5em;
	margin:0 10px;
	border:1px solid #ccc;
}

.mainText {
	font-size:180%;
	font-weight:bold;
}

.subText {
	font-size:85%;
}
.couponCell .notes {
	padding:0.5em 1em 2em;
	font-size:90%;
	color:#000;
	text-shadow:1px 1px 0 #fff;
	background:url(images/pc/footer_logo.png) 100% 60% no-repeat #fd0;
	background-size:15em;
	text-align:left;
}




/* ==============================================
	recruit
=============================================== */
#recformTop + .infoBox {
	padding-top:0;
}

.recruitImage {
	text-align:center;
	padding:1em 1em 3em;
}

.recruitTable {
	width:100%;
	border-collapse:collapse;
}
.recruitTable th ,
.recruitTable td {
	vertical-align:top;
	padding:0.5em 1em;
	border:1px solid #999;
}

.recruitTable th {
	width:10em;
	color:#f06;
}
.recruitTable.blue th {
	color:#00f;
}


.recruitButton {
	padding-top:2em;
	text-align:center;
}
.recruitButton a {
	display:inline-block;
	padding:0.3em 1.5em;
	font-size:130%;
	background:#ccc;
	border:1px solid #666;
	border-radius:0.5em;
}
.recruitButton a:hover {
	background:#eee;
	border:1px solid #000;
	box-shadow:0px 0px 3px 0 #f6c;
}


/* ==============================================
	recruit form
=============================================== */
.thankyouText ,
#formTable {
	width:100%;
	padding:0 10px;
}
#formTable {
	display:flex;
	flex-wrap:wrap;
	align-items:stretch;
}
#formTable > dt ,
#formTable > dd {
	padding:0.5em;
	border-bottom:1px dotted #666;
}
#formTable > dt {
	width:45%;
	text-align:right;
}
#formTable:not(.formConfirm) dt {
	padding-top:1em;
}
#formTable > dd {
	width:55%;
}
#recruitHtmlBody #formTable dt {
	width:40%;
}
#recruitHtmlBody #formTable dd {
	width:60%;
}
#formTable dd .memo {
	color:#666;
}


#formTable dd label {
	display:block;
}
#formTable dd label input {
	margin-right:0.2em;
}

.error {
	color:#f00;
}

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%;
	padding:1em;
	font-size:90%;
}
.formButton + .formButton {
	border-top:1px dotted #666;
}
.formButton input[type="submit"] {
	font-size:130%;
	padding:0.3em 1em;
}


/* ==============================================
	link banner
=============================================== */
table.bannerTable {
	margin:10px auto;
}
table.bannerTable th ,
table.bannerTable td {
	vertical-align:middle;
	padding:10px;
}
table.bannerTable td img {
	display:inline-block;
	box-shadow:0 0 3px #666;
}


.linkList {
	padding:0 40px;
	display:flex;
	justify-content:flex-start;
	align-items:flex-start;
	flex-wrap:wrap;
}
.linkList li {
	width:calc(100% / 6);
	padding:5px;
}
.linkList li a {
	display:block;
	width:100%;
	padding:5px;
	text-align:center;
	font-size:80%;
	color:#333;
	overflow:hidden;
}
.linkList li a img {
}
.linkList li a span {
	display:block;
	overflow:hidden;
	white-space:nowrap;
	text-overflow:ellipsis;
	-webkit-text-overflow:ellipsis;
}
.linkList li a:hover {
	color:#000;
	text-shadow:1px 1px 0px #fff;
	background-color:rgba(255,238,204,0.2);
	box-shadow:0 0 3px 1px #c60;
}

.linkList.linkPage {
	padding:0 40px;
}
.linkList.linkPage li {
	width:calc(100% / 4);
}



/* ==============================================
	profile
=============================================== */
#profileMainFlex{
	padding:1em 1em 3em;
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
}
#profileMainFlex > #profileLeftFrame {
	position:relative;
	width:380px;
}
#profileMainFlex > #profileInfoFrame {
	position:relative;
	width:calc(100% - 380px - 30px);
}



#profileImageFrame {
	padding:10px;
	background:url(images/pc/daiza.jpg) 50% 50% no-repeat;
	box-shadow:1px 1px 3px #c60;
}
#profileImageFrame #profileImage {
	box-shadow:1px 1px 3px #fff;
	width:100%;
	aspect-ratio:2 / 3;
	object-fit:contain;
}


#profileImageFrame.castFlagNewface:after {
	content:"";
	position:absolute;
	width:75px;
	height:75px;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:75px 75px;
/*
    -webkit-animation: blink 1.2s ease infinite alternate;
    -moz-animation: blink 1.2s ease infinite alternate;
    animation: blink 1.2s ease infinite alternate;
*/
}
#profileImageFrame.castFlagNewface:after {
	background-image:url(images/icons/newface.png);
	top:1px;
	left:0px;
}


#profileThumbs {
	padding-top:1em;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-around;
	align-items:flex-start;
}

#profileThumbs li {
	width:calc(100% / 5);
	padding:2px;
}
#profileThumbs li img {
	border:1px solid #ccf;
	box-shadow:1px 1px 3px #999;
	cursor:pointer;
}
#profileThumbs li:not(.imageOn) {
	display:none;
}




#profileInfoFrame .profileName {
	position:relative;
	font-size:120%;
	padding:0.2em 0.5em;
	background:#f60;
	background:linear-gradient(#fc0,#f90);
	color:#fff;
	text-shadow:1px 1px 0 #000;
	display:flex;
	justify-content:space-between;
	align-items:center;
}
#profileInfoFrame .profileName #profileIcons {
	display:flex;
}
#profileInfoFrame .profileName #profileIcons img {
	height:1.2em;
	display:inline-block;
}

#profileInfoFrame #profileTable {
	width:100%;
	margin:0.5em;
	border-collapse:collapse;
}
#profileInfoFrame #profileTable th ,
#profileInfoFrame #profileTable td {
	vertical-align:top;
	padding:0.3em;
	border-bottom:1px solid #f60;
}
#profileInfoFrame #profileTable th {
	color:#f60;
	font-weight:bold;
	text-align:left;
	padding-left:1em;
}


.profileSubHeader {
	padding:3px 10px;
	margin-top:15px;
	margin-bottom:5px;
	text-align:left;
	color:#f60;
	background:linear-gradient(#fff, #eee) #eee;
	border-left:5px solid #f60;
	border-bottom:1px solid #f60;
}
#profileInfoFrame p ,
#profileMessage p {
	padding-left:1em;
	text-shadow:1px 1px 1px #fff;
}



#profileInfoFrame #profile-info-message {
	height:400px;
	padding:5px;
	border:1px solid #f60;
	background-color:#fff;
	overflow:hidden;
}
#profileInfoFrame #profile-info-message #profile-info-message-inner {
	width:100%;
	height:100%;
	-webkit-overflow-scrolling:touch;
}
#profileInfoFrame #profile-info-message #profile-info-message-inner iframe {
	width:100%;
	height:100%;
	border:0 none;
}






/* ==============================================
	profile > schedule
=============================================== */
#profileSchedule {
	width:100%;
	margin:auto;
	text-align:center;
	font-size:90%;
	border-spacing:3px;
	padding:3px;
	line-height:2.4em;
	border-collapse:separate;
}
#profileSchedule caption {
}
#profileSchedule th ,
#profileSchedule td {
	width:calc(100% / 7);
	font-weight:normal;
	line-height:3.2;
	border:1px solid #999;
	box-shadow:0px 1px 3px #ccc;
}
#profileSchedule .week0 {
	background-color:rgba(255,153,153,0.2);
}
#profileSchedule .week6 {
	background-color:rgba(153,153,255,0.2);
}



/* ==============================================
	profile > guide(bottom)
=============================================== */
#profileGuideBottom {
	width:450px;
	height:40px;
	margin:60px auto 30px;
	box-shadow:0px 0px 5px #c60;
	display:flex;
	justify-content:space-between;
	align-items:center;
	text-align:center;
}
#profileGuideBottom li {
	width:calc(100% / 3);
	height:100%;
	font-size:85%;
}

#profileGuideBottom li a {
	display:block;
	width:100%;
	height:100%;
	color:#c60;
	border:1px solid #999;
	display:flex;
	justify-content:center;
	align-items:center;
}
#profileGuideBottom li a span {
}
#profileGuideBottom li a:hover {
	color:#fff;
	text-shadow:1px 1px 0 #c60,0 0 3px #000;
	background:rgba(255,238,204,0.6);
}





/* ============================================================================================================================================
	meia query
============================================================================================================================================= */
/* ============================================================================================
	pc
============================================================================================= */
@media screen and (min-width:800px) { 
	.dispSP {
		display:none !important;
	}

	#footer .innerFrame {
		border-top:1px solid #fc0;
		border-bottom:1px solid #fc0;
	}

	/* ==============================================
		index
	=============================================== */
	div#enterButtonFrame a img {
		opacity:0;
		transition:all 0.3s ease;
		-webkit-transition:all 0.3s ease;
	}
	div#enterButtonFrame a:hover img {
		opacity:1;
	}

}


/* ============================================================================================
	sp
============================================================================================= */
@media screen and (max-width:799px) { 
	.dispPC {
		display:none !important;
	}

	body {
		background-image:url(images/sp/sma_back1.jpg);
	}
	body #pageTop {
		background:rgba(255,255,255,0.8);
	}

	.contentsBannerTitle {
		margin:0 0.3em;
	}

	.infoBox {
		padding:1em 0.5em 2em;
	}
	.paddingA {
		padding:0;
	}
	.paddingB {
		padding:1em;
	}

	.innerFrame ,
	.innerFrame > article {
		width:100%;
	}

	#main.innerFrame {
		padding:1em 0 0;
	}

	#mainBloc {
		padding-right:0;
		width:100%;
	}



	/* ==============================================
		index
	=============================================== */
	#indexHtmlBody header {
		display:none;
	}

	div#enterButtonFrame ul {
		justify-content:flex-end;
		flex-wrap:wrap;
	}
	div#enterButtonFrame ul > li#mark18kin {
		order:1;
	}
	div#enterButtonFrame ul > li#enterButton {
		order:2;
	}
	div#enterButtonFrame ul > li#exitButton {
		padding-top:2em;
		order:3;
		width:50%;
	}
	div#enterButtonFrame ul > li#exitButton a img {
		opacity:0;
	}




	/* ==============================================
		home
	=============================================== */
	#homeSliderBloc #bx-pager > a {
		width:90px;
	}




	/* ==============================================
		cast
	=============================================== */
	ul.castList > li.castCell {
		width:calc(100% / 3);
	}
	li.castCell .castInfo {
		font-size:80%;
	}
	li.castCell .castInfo .castIcons {
		height:20px;
	}


	#dateList > li {
		padding:0.5em 0;
		line-height:1.4;
	}




	/* ==============================================
		cast - profile
	=============================================== */
	#profileMainFlex {
		flex-direction:column;
	}
	#profileMainFlex > #profileLeftFrame {
		width:100%;
		display:flex;
		justify-content:space-between;
		padding-bottom:2em;
	}
	#profileMainFlex > #profileInfoFrame {
		width:100%;
	}

	#profileImageFrame {
		width:300px;
		height:450px;
		padding:0;
	}
	#profileGallery {
		width:calc(100% - 300px - 15px);
	}

	#profileThumbs {
		padding-top:0;
	}
	#profileThumbs > li {
		width:50%;
		padding:0 5px 7.5px;
	}

	#profileThumbs li:not(.imageOn) {
		display:inherit;
	}



	#profileSchedule th {
		padding:0.5em 0;
		line-height:1.4;
	}
	#profileSchedule td {
		padding:1em 0;
		line-height:1.4;
	}




	/* ==============================================
		system
	=============================================== */
	.system.infoBox {
		padding:1em 0.5em 2em;
	}

	.systemBloc {
		font-size:130%;
	}
	.systemCell {
		padding:0 1em;
	}




	/* ==============================================
		access
	=============================================== */
	#access p.shopName {
		font-size:130%;
	}




	/* ==============================================
		coupon
	=============================================== */
	.couponCell h3 {
		font-size:140%;
	}
	.mainText{
		font-size:140%;
	}
	.couponCell .notes {
		padding:0.5em 0 2.5em;
		background-size:10em;
	}



	/* ==============================================
		recruit
	=============================================== */
	.recruitTable th ,
	.recruitTable td {
		padding:0.5em;
	}
	.recruitTable th {
		width:7em;
	}

	.recruitImage {
		padding:1em;
	}

	/* ==============================================
		mailmagazine
	=============================================== */
	#mailmagazineForm form {
		flex-direction:column;
	}
	#mailmagazineForm input[type="text"] {
		width:90%;
	}
	#mailmagazineForm .buttons {
		padding-top:1em;
	}
	#mailmagazineForm .buttons input {
		margin:0 1em;
	}



	/* ==============================================
		form
	=============================================== */
	#formTable {
		font-size:120%;
	}
	#formTable dt {
		width:100% !important;
		padding:0.5em 0.5em 0;
		text-align:left !important;
		border-bottom:0 none;
	}
	#formTable dd {
		width:100% !important;
		padding:0 0.5em 0.5em 1.5em;
		border-bottom: 4px dotted #666;
	}

	.formButton + .formButton {
		border-top:3px dotted #666;
	}




	/* ==============================================
		link
	=============================================== */
	.linkList {
		padding:0 0.5em !important;
	}
	.linkList > li {
		width:calc(100% / 3) !important;
	}





	/* ==============================================
		header
	=============================================== */
	header {
		padding-top:75px;
		border-bottom:5px solid #c60;
		box-shadow:0 3px 5px #fff;
	}
	header #header {
		background:rgba(255,255,255,0.6);
	}

	#spHeaderMenu {
		height:70px;
		display:flex;
		justify-content:space-between;
		align-items:center;
		overflow:hidden;
		line-height:1;
	}
	#spHeaderMenu .logo img {
		height:70px;
	}
	#spHeaderMenu .tel {
		padding-right:0.5em;
	}
	#spHeaderMenu .tel a {
		display:block;
		padding:0.2em 0.5em;
		color:#fff;
		text-shadow:1px 1px 1px #000;
		background:#f60;
		background:linear-gradient(#fc0,#f30);
		border-radius:0.5em;
		text-align:center;
	}
	#spHeaderMenu .tel a span {
		display:block;
	}
	#spHeaderMenu .tel a .number {
		font-size:140%;
		font-weight:bold;
	}
	#spHeaderMenu .tel a .number small {
		font-size:80%;
		padding-right:0.5em;
	}
	#spHeaderMenu .tel a .text {
		padding-top:0.2em;
		font-size:90%;
	}



	/* ==============================================
		spFiexedMenu
	=============================================== */
	.spFiexedMenu {
		position:fixed;
		top:0;
		left:0;
		right:0;
		z-index:9900;
	}

	#spMenuButton ,
	#spTopMenu {
		width:480px;
		margin:0 auto;
		cursor:pointer;
	}

	/* ==============================================
		sp image menu
	=============================================== */
	.spMenuBox ul {
		padding:5px;
		display:flex;
		justify-content:space-around;
		align-items:flex-start;
		flex-wrap:wrap;
		line-height:1;
	}
	.spMenuBox ul > li {
		width:calc(100% / 4);
		padding:5px;
	}



	/* ==============================================
		header menu
	=============================================== */
	#header #spTopMenu {
		display:none;
		position:fixed;
		top:0;
		bottom:0;
		left:0;
		right:0;
		background:rgba(0,0,0,0.2);
		z-index:9910;
	}
	#header .spMenuBox {
		display:none;
		position:absolute;
		top:0;
		left:0;
		right:0;
		background:url(images/sp/menu/bg_headermenu.png) 50% 100% no-repeat #fee49b;
		border-radius:0 0 1em 1em;
		overflow:hidden;
	}

	#header .spMenuBox .spMenuToggle {
		cursor:pointer;
	}
	#header .spMenuBox .spMenuToggle > img {
		opacity:0;
	}

	.menuOpen {
		overflow:hidden;
	}
	.menuOpen main ,
	.menuOpen footer {
		filter:blur(2px);
	}
	.menuOpen #header #spTopMenu {
		display:block;
	}


	/* ==============================================
		footer menu
	=============================================== */
	#footer .spMenuBox {
		background:url(images/sp/menu/bg_footermenu.png) 50% 0 no-repeat #fee49b;
		border-radius:1em 1em 0 0;
		overflow:hidden;
	}
	#footer .spMenuBox .anchorLink > img {
		opacity:0;
	}


	/* ==============================================
		footer banner
	=============================================== */
	#footer {
		background:transparent;
		padding-bottom:0;
	}
	#footer .innerFrame {
		border-radius:1em 1em 0 0;
	}
	#bottomMenu {
		padding:0.5em 1em;
		display:flex;
		justify-content:center;
		flex-wrap:wrap;
		line-height:1;
	}
	#bottomMenu li {
		width:calc(100% / 2);
		padding:0.5em 1em;
	}
	#bottomMenu li img {
		border:1px solid #fff;
		box-shadow:1px 1px 3px #000;
	}

	/* 2021.10.1 3カラム */
		#bottomMenu.col3 {
			padding:0.3em;
		}
		#bottomMenu.col3 li {
			width:calc(100% / 3);
			padding:0.3em;
		}


	#footerInfo {
		background:rgba;
		padding:1em 0;
	}


}


.recruitBox {
	padding-bottom:30px;
}

@media screen and (max-width:799px) { 
	.recruitBox {
		padding:0 1em 30px;
	}
}





/* ============================================================================================
	instagram
============================================================================================= */
.instagram .title + div a {
	color:#f00;
	text-decoration:underline;
	letter-spacing:1px;
	text-indent:1px;
}
.instagram .title + div a:hover {
	color:#00f;
}
.instagram .title + div {
	display:flex;
	justify-content:center;
	flex-direction:column;
	letter-spacing:initial;
	text-indent:initial;
}

.instaImages {
	border:1px solid #f6c;
}
.instaCell > a {
	box-shadow: 0px 0px 2px #333;
}


/* ==============================================
	pc only
=============================================== */
#sideMenu .instagram {
}
#sideMenu .instagram .title + div {
	width:240px;
	height:240px;
	font-size:80%;
}

/* ==============================================
	sp only
=============================================== */
#mainBloc .instagram {
	padding:30px 0 60px;
}
#mainBloc .instaImages {
	margin:10px 20px;
	background:#fff;
}



/* ==============================================
	open text
=============================================== */
.openText {
	width:100%;
	line-height:2;
	font-size:300%;
	letter-spacing:2px;
	font-family:var(--font-family-en);
	text-align:center;
}

.openText > span {
	position:absolute;
	top:0;
	left:0;
	display:block;
	width:100%;
	color:#fd9;
	font-weight:bold;
}
.openText > span small {
	font-size:70%;
}
.openText > span.fore {
	background:-webkit-linear-gradient(90deg ,#ff8 20% ,#ffd 30% ,#db5 45% ,#ff9 65% ,#c95 80%);
	-webkit-background-clip:text;
	color:transparent;
	text-shadow:none;
	z-index:2;
	-webkit-text-stroke:3px;
}
.openText > span.back {
	z-index:1;
	-webkit-text-stroke:7px #000;
	text-shadow:2px 2px 5px #fff,2px 2px 5px #fff,2px 2px 5px #fff;
}

@media screen and (max-width:799px) { 
	#comingsoonFrame .openText {
		top:10px;
	}
	.openText {
		font-size:160%;
		line-height:1.2;
	}
	.openText > span.fore {
		background:-webkit-linear-gradient(90deg ,#ff8 20% ,#ffd 30% ,#db5 45% ,#ff9 80%);
		-webkit-background-clip:text;
		-webkit-text-stroke:2px;
	}
	.openText > span.back {
		-webkit-text-stroke:5px #000;
	}
}


