@import url("reset.css");
body {
	background-color: #fff;
	color: #42350b;
	font-size: 15px;
}
body::before {
	content:"";
	display:block;
	position:fixed;
	top:0;
	left:0;
	z-index:-1;
	width:100%;
	height:100vh;
	background-repeat: no-repeat;
	background-size: auto 110vh;
	background-position: 49.8% top;
	background-image: url("/img/bg.jpg");
	transition: all 3s ease-in-out;
	background-color:rgba(255,255,255,1);
	background-blend-mode:lighten;
	opacity: 0;
}
body.active::before {
	background-size: auto 100vh;
	background-color:rgba(255,255,255,0);
	opacity: 1;
}

img{
	vertical-align: bottom;
}
a:link,a:visited{
	color: #42350b;
}
a:hover,a:active{
	color: #42350b;
}
.dopc{
	display: none;
}
input[type="submit"] {
	-webkit-appearance: none;
	border-radius: 0;
}
span.lg{
	font-size: 1.1em !important;
	color: unset;
}
.fontChange{
	font-family: 'Libre Baskerville', serif;
}
#wrapper{
	width: 100%;
	overflow: hidden;
	position: relative;
	z-index: 1;
}
#pan{
	font-size: 14px;
	background-color: rgba(255,255,255,0.6);
	width: 100%;
	margin: 0 auto;
	padding-top: 5px;
	line-height: 16px;
}
#panIn{
	margin: 0 2%;
	padding-bottom: 5px;
}

.contentIn {
  margin: 0 2%;
}
/*----- index -----*/
#index{
	text-align: center;
}
#index .contentInner{
	padding: 0 1%;
}
#indexHead p{
	font-size: 9px;
}
#indexHead img{
	width: 80%;
	margin: 50px auto;
}
#indexMiddle{
	line-height: 30px;
	margin-bottom: 50px;
}
#indexMiddle .enter{
	font-size: 12px;
	font-family: '游明朝';
	font-weight: bold;
	color: #42350b;
	background: url("/img/header_bg.jpg") center top;
	width: 60%;
	margin: 0 auto 50px auto;
	padding: 10px 0 5px 0;
	border-radius: 5px;
	border: solid #505050 1px;
	line-height: 20px;
	display: block;
}
.enter span{
	font-size: 24px;
}
#indexBottom{
	margin-bottom: 50px;
}
#indexBottom p{
	line-height: 24px;
}
#indexBottom span{
	font-size: 16px;
	font-weight: bold;
	color: #42350b;
	margin-bottom: 10px;
	display: block;
}
#index .link{
	width: 100%;
	margin-bottom: 50px;
}
#index .link img{
	width: 100% !important;
	height: auto !important;
}
/*----- header -----*/
#header{
	width: 100%;
	height: 80px;
	position: relative;
}
#header.index {
  width: 100%;
  height: auto;
  position: relative;
  margin-bottom: 30px;
}
#header #menuBtn {
    width: 60px;
    height: 60px;
    font-size: 30px;
    text-align: center;
    line-height: 60px;
    position: fixed;
    top: 10px;
    right: 10px;
    border-radius: 3px;
    z-index: 9999;
		background: rgb(255 255 255 / 60%);
}
/** navToggle **/

#navToggle{
	display: block;
}
#header #menuBtn span,
#header #menuBtn span:before,
#header #menuBtn span:after{
    display: inline-block;
    width: 30px;
    border-bottom-width: 3px;
    border-bottom-style: solid;
    border-bottom-color: #42350B;
		-webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}
#header #menuBtn span{
	position: absolute;
	top: 20px;
	right: 15px;
}
#header #menuBtn span:before,
#header #menuBtn span:after{
	content: "";
	display: block;
	clear: both;
}
#header #menuBtn span:before{
	position: absolute;
	top: 10px;
	right: 0;
}
#header #menuBtn span:after{
	position: absolute;
	top: 20px;
	right: 0;
}
#header #menuBtn.active {
	background: none;
}
#header #menuBtn.active span{
	position: absolute;
	top: 30px;
	right: 15px;
	border-bottom-color: #fff;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
}
#header #menuBtn.active span:before{
	content: "";
	clear: both;
	position: absolute;
	top: 0px;
	right: 0px;
	border-bottom-color: #fff;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	opacity:0;
}
#header #menuBtn.active span:after{
	content: "";
	display: block;
	clear: both;
	position: absolute;
	top: 0px;
	left: 0px;
	border-bottom-color: #fff;
	transform: rotate(-90deg);
	-webkit-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
}
.swingMenu {
	width: 100%;
	height: 100vh;
	background-color: rgba(255,255,255,1);
	color: #42350b;
	z-index: 9998;
	line-height: 20px;
	position: fixed;
	top: 0;
	right: -100%;
	transition: all 0.5s ease-in-out;
}
.swingMenu a {
	font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.swingMenu.active {
	right: 0;
}
#menuHead {
    padding: 10px;
    height: 60px;
    line-height: 18px;
    font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.swingMenu #menuHead {
    background: #C2AD61;
    color: #fff;
}
#menuHead .caption {
		font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
		font-weight: 100;
}
#menuHead .shopName {
    font-size: 20px;
    font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    width: 300px;
    text-align: left;
}
#menuHead .shopName span:nth-child(1) {
	font-size: 29px;
	width: auto;
	display: block;
	line-height: 30px;
}
#menuHead .shopName span:nth-child(2) {
    font-size: 12px;
    width: auto;
    display: block;
    line-height: 22px;
    margin-left: 40px;
}
#header.index .caption1 {
		text-align: center;
    font-size: 30px;
    line-height: 40px;
    text-shadow: 0 0 8px #96917f;
		opacity: 0;
		transition: all 2s ease-in-out;
}
#header.index .caption1 span {
    display: block;
    font-size: 14px;
    line-height: 30px;
    letter-spacing: 3px;
}
body.active #header.index .caption1 {
    opacity: 1;
    right: 0;
    padding-top: 100px;
    margin-bottom: 20px;
}
#header .caption2 {
    display: none;
}
#header.index .caption2 {
		display: inherit;
    text-align: center;
    font-size: 18px;
    line-height: 40px;
    text-shadow: 0 0 8px #96917f;
    opacity: 0;
    transition: all 2s ease-in-out;
    line-height: 30px;
		font-weight: bold;
}
body.active #header.index .caption2 {
	opacity: 1;
	margin-top: 50px;
}
#header.index .shopName {
    margin: 5px;
    font-size: 30px;
    text-align: center;
		opacity: 0;
		transition: all 2s 1s ease-in-out;
		text-shadow: 0 0 8px #96917f;
}
#header .shopName span:nth-child(2) {
    display: none;
}
body.active #header.index .shopName {
	opacity: 1;
    left: 0;
}
#header.index .shopName span:nth-child(1) {
    font-size: 36px;
		font-weight: bold;
    width: auto;
    display: block;
}
#header.index .shopName span:nth-child(2) {
		margin-top: 20px;
    font-size: 20px;
    display: block;
}
#header.index .shopName span:nth-child(1) {
    display: block;
}
#header.index .shopName span:nth-child(2) {
    display: block;
}
#header.index .shopName span:nth-child(3) {
    display: block;
}
.swingMenu .menuList{
	padding: 15px;
	overflow: hidden;
}
.swingMenu ul{
}
.swingMenu li {
    font-size: 22px;
    /* font-weight: bold; */
    line-height: 18px;
    height: 45px;
    margin-top: 10px;
    letter-spacing: 5px;
    /* border-bottom: dotted #6b603d61 1px; */
    box-sizing: border-box;
    text-align: center;
}
.swingMenu li i {
    margin-right: 5px;
    font-size: 14px;
    position: relative;
    top: -2px;
}
.swingMenu li span {
	font-size: 12px;
	display: block;
}
.swingMenu .addressBox span{
	font-size: 10px;
	margin-left: 1%;
}
.addressBox {
    padding: 0 20px;
    font-size: 25px;
    line-height: 24px;
    overflow: hidden;
		font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.addressBox .address {
		font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 14px;
}
.addressBoxLeft{
	width: 40%;
	margin-top: 20px;
	float: left;
}
.addressBoxRight{
	width: 58%;
	margin-right: 2%;
	text-align: right;
	line-height: 20px;
	float: left;

}
.addressBoxRight .tel{
	font-size: 20px;
}
.addressBoxRight .mail{
	font-size: 14px;
}
.addressBoxRight .time{
	font-size: 16px;
}
.addressBoxRight span{
	font-size: 12px;
}
/*----- nav -----*/
#nav{
	font-size: 20px;
	width: 100%;
	height: 50px;
	margin: 0 auto;
	line-height: 45px;
	background-color: #111;
	border-bottom: solid #42350b 1px;
	box-sizing: border-box;
	overflow: hidden;
}
.navmain {
	padding-bottom: 10px;
}
.navmainInner{
	width: 100%;
	margin: 0 auto;
}
.navmainInner ul {
	text-align: center;
	overflow: hidden;
}
.navmainInner ul li {
    font-size: 14px;
    font-family: '游明朝';
    color: #42350b;
    width: 48%;
    margin: 2px 1%;
    line-height: 18px;
    border-radius: 3px;
    box-sizing: border-box;
    display: block;
    float: left;
    line-height: 37px;
    font-size: 18px;
    height: 40px;
		text-align: left;
		padding-left: 10px;
    background: rgba( 255, 255, 255, 0.80 );
    box-shadow: 0 0 5px #ccc;
    backdrop-filter: blur( 10.0px );
}
.navmainInner ul li a {
    width: 100%;
    position: relative;
    display: block;
    /* line-height: 1; */
    /* text-transform: uppercase; */
    text-decoration: none;
    overflow: hidden;
		color: #42350b !important;
}

/*----- girlSet -----*/
.girlDataBox{
	overflow: hidden;
}
.girlSet{
	position: relative;
	overflow: hidden;
}
.girlSet .girlImg{

}
.girlSet .girlImg img{
	height: 100%;
}
.girlSet .frame{
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 400;
}
.castSlider .girlSet .time {
	bottom:  65px;
}
.girlSet .time {
    font-size: 16px;
    padding: 5px;
    margin: 5px 5px 0;
    border-radius: 3px;
    border: solid 1px #9d9d9d;
    height: 14px;
    line-height: 13px;
    z-index: 600;
    background: rgb(0 0 0 / 60%);
    color: #fff;
}
.girlSet .time img{
	width: 11px !important;
	margin: 2px 2px 0 0 ;
	padding-bottom: 5px;
	display: block;
	float: left;
}
.girlSet .newfaceIcon {
	height: 50px;
	width: 50px;
	position: absolute;
	top: 0;
	left: 0;
}
.castSlider .girlSet .twitterIcon {
	bottom:  65px;
}
.girlSet .twitterIcon {
    height: 25px;
    width: 25px;
    position: absolute;
    top: 207px;
    right: 5px;
}

.girlSet .inexIcon {
    height: 25px;
    width: 25px;
    position: absolute;
    top: 207px;
    left: 5px;
}

.girlInfoBox {
	margin-bottom: 2px;
	bottom: 0px;
	width: 100%;
	text-align: center;
}
.girlSet .name{
	font-size: 16px;
	height: 22px;
	line-height: 22px;
	font-weight: bold;

}
.girlSet .name a {
	font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.girlSet .size {
    font-size: 14px;
    height: 14px;
    line-height: 12px;
		margin-bottom: 5px;
}
.girlSet .nameBack{
	font-size: 30px;
	opacity: 0.2;
	position: absolute;
	transform: rotate(-10deg);
	-moz-transform: rotate(-10deg);
	-webkit-transform: rotate(-10deg);
	bottom: 0;
	right: 15px;
	z-index: 500;
}
.girlSet .comment {
    text-align: center;
    background-color: rgb(255 255 255 / 30%);
    font-size: 12px;
}
.girlSet .iconList {
	display: flex;
	flex-wrap: wrap;
}
.girlSet .iconList li {
	width: calc(50% - 1px);
	margin-bottom: 2px;
	font-size: 12px;
	background-color: rgb(255 255 255  / 80%);
}
.girlSet .iconList li:nth-child(odd) {
	margin-right: 2px;
}
.girlSet a {
	display: block;
	height: 240px;
	overflow: hidden;
}
.girlSet a img {
	width: 100%;
}
/*----- gielSetStyle01 -----*/
.gielSetStyle01{
	width: calc(98.4%/4);
	margin: 0 0.2% 10px 0.2%;
}
.gielSetStyle01 .girlDataBox{
	padding: 5px;
}
.gielSetStyle01 .name{
	font-size: 16px;
	width: 150px;
	text-align: center;
	text-shadow: 1px 1px 1px #373737;
	color: #373737 ;
}
.gielSetStyle01 .size{
	width: 150px;
	font-size: 10px;
	margin-bottom: 7px;
}
.gielSetStyle01 .time{
	width: 150px;;
	font-size: 10px;
	margin-bottom: 5px;
}
/*----- gielSetStyle02 -----*/
.gielSetStyle02{
	padding: 5px;
}
.gielSetStyle02 .girlDataBox{
	padding: 5px;
}
.gielSetStyle02 .name{
	font-size: 20px;
	text-align: center;
	text-shadow: 1px 1px 1px #373737;
	width: 100%;
	margin-bottom: 5px;
	color: #373737 ;
}
.gielSetStyle02 .size{
	font-size: 14px;
	width: 100%;
}
/*----- main -----*/
#main{
	overflow: hidden;
}
#left{
	width: 680px;
}
#headContact{
	margin: 100px auto 20px auto;
}
#headContact .time{
	margin-bottom: 10px;
	text-align: center;
}
#headContact .time span{
	font-size: 20px;
	display: block;
}
.headContactBtn{
	width: 50%;
	margin: 0 auto 15px auto;
	padding: 5px 0;
	line-height: 20px;
	position: relative;
	background: url("/img/header_bg.jpg") center top;
	border-radius: 5px;
	border: solid #505050 1px;
	box-sizing: border-box;
	display: block;
}
#headContact .headContactBtn img{
	width: 22px;
	position: absolute;
	top: 4px;
	left: 8px;
}
#headContact .headContactBtn p{
	font-family: 'Libre Baskerville', serif;
	font-size: 18px;
	position: relative;
	left: 20%;

}
#headBn{

}
.content{
	overflow: hidden;
}
.contentW{
}
.contentP{
	/*background-color: rgba(225,127,127,0.3);*/
}
.contentInner{
	width: 96%;
	margin: 0 auto;
	padding: 20px 2% 20px 2%;
	overflow: hidden;
}
.contentSet{
	margin-bottom: 10px;
	overflow: hidden;
}
.contentSyle01{

}
.girlBox {
	display: flex;
	flex-wrap: wrap;
}
.girlBox li{
	width: calc(100% / 2);
	padding: 1px;
	box-sizing: border-box;
}
.contentSyle02{

}
.contentSyle02 .Lcontent{
	width: 70%;
	margin: 0 15%;
	position: relative;
}
.contentSyle02 .Lcontent .frame{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 400;
}
.contentSyle02 .Lcontent .label{
	position: absolute;
	top: 0;
	right: 0;
	z-index: 300;
}
.contentSyle02 .Lcontent .comment{
	text-align: center;
	color: #42350b;
	/*background-color: rgba(225,127,127,0.2);*/
	width: 94.3%;
	padding-left: 2%;
	position: absolute;
	bottom: 5px;
	left: 2%;
	z-index: 600;
}
.contentSyle02 .Lcontent .nameBack{
	font-size: 40px;
	opacity: 0.2;
	position: absolute;
	transform: rotate(-10deg);
	-moz-transform: rotate(-10deg);
	-webkit-transform: rotate(-10deg);
	bottom: 0;
	right: 15px;
	z-index: 500;
}
.contentSyle02 .Rcontent{
	margin-top: 10px;
}
.contentSyle02 .Rcontent .name{
	width: 100%;
	font-size: 20px;
	overflow: hidden;
}
.contentSyle02 .Rcontent .size{
	height: 16px;
	width: 68%;
	    margin-bottom: 5px;
	padding: 8px 1% 2px 0;
	text-align: right;
	border-bottom: solid #505050 1px;
	float: left;
}
.contentSyle02 .Rcontent .label{
	height: 22px;
	width: 30%;
	    margin-bottom: 5px;
	padding: 1px 1% 3px 0;
	border-bottom: solid #505050 1px;
	float: left;
}
.contentSyle02 .Rcontent .schedule .title{
	font-size: 18px;
	font-weight: bold;
	color: #42350b;
}
.contentSyle02 .Rcontent table{
	padding: 10px;
}
.contentSyle02 .Rcontent tr{

}
.contentSyle02 .Rcontent th{
	font-size: 16px;
	color: #42350b;
	width: 140px;
	text-align: left;
}
.contentSyle02 .Rcontent td{
	font-size: 16px;
}
.Rcontent .textBox .date{

}
.Rcontent .textBox .title{
	font-size: 16px;
}
.contentSyle02 .Rcontent .textBox .text{
}
.contentSyle02 .innerBottom .schedule .title{
	font-size: 20px;
	font-weight: bold;
	color: #42350b;
}
.contentSyle03{

}
.contentSyle03 .Lcontent{
	width: 30%;
	position: relative;
	float: left;
}
.contentSyle03 .Lcontent .frame{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 400;
}
.contentSyle03 .Rcontent{
	width: 68%;
	margin-left: 2%;
	float: left;
}
.contentTitle{
	font-size: 28px;

	text-align: center;
	width: 100%;
	margin: 0 auto;
	padding: 30px 0 5px 0;
	line-height: 30px;
	overflow: hidden;
	font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.contentSubTitle {
    font-size: 12px;
    color: #C2AD61;
    text-align: center;
    width: 100%;
    line-height: 12px;
    margin-bottom: 20px;
	font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	
}
.contentTitle span{
	font-size: 20px;
}
.contentTitleRight{
	font-size: 24px;
	text-shadow: 1px 1px 3px #ABABAB;
	padding-left: 10px;
	border-bottom: solid #A8A8A8 1px;
	box-sizing: border-box;
	overflow: hidden;
}
.pageTitleWrap {
    text-align: center;
    padding: 10px;
    margin-bottom: 30px;
}
.pageTitleWrap .pageTitle {
	font-family: 'Montserrat', sans-serif;
	color: #C2AD61;
	font-size: 36px;
	font-weight: 200;
}
.pageTitleWrap .pageSubTitle {
	font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.about,.play,.system,.flow,.recruit{
	background-repeat: no-repeat;
	width: 640px;
	overflow: hidden !important;
}
/*----- about -----*/
.about{
	background-image: url("/img/infoBg01.png");
}
/*----- play -----*/
.play{
	background-image: url("/img/infoBg02.png");
}
/*----- system -----*/
#system{
	text-align: center;
}
#system .systemTitle {
    font-size: 24px;
    text-align: center;
    margin: 30px 0;
    font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
#system .systemTitle .sub {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: #C2AD61;
}
#system .systemTitle .sub2 {
	font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 12px;
}
#system .classTitle{
	font-size: 20px;
	text-align: center;
	line-height: 24px;
	width: 60%;
	margin: 0 auto;
	padding: 5px 0 3px 0;
	border-radius: 5px;
}
#system .sweet{
	color: #e770a2;
	background: url("/img/header_bg.jpg") center top;
}
#system .gold{
	color: #af8f3a
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #f5da5a), color-stop(1.00, #e2c064));
	background: -webkit-linear-gradient(#f5da5a, #e2c064);
	background: -moz-linear-gradient(#f5da5a, #e2c064);
	background: -o-linear-gradient(#f5da5a, #e2c064);
	background: -ms-linear-gradient(#f5da5a, #e2c064);
	background: linear-gradient(#f5da5a, #e2c064);
}
#system .royal{
	color: #fff;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #676767), color-stop(1.00, #222222));
	background: -webkit-linear-gradient(#676767, #222222);
	background: -moz-linear-gradient(#676767, #222222);
	background: -o-linear-gradient(#676767, #222222);
	background: -ms-linear-gradient(#676767, #222222);
	background: linear-gradient(#676767, #222222);
}
#system .platinum{
	color: #747474;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #ebebeb), color-stop(1.00, #cccccc));
	background: -webkit-linear-gradient(#ebebeb, #cccccc);
	background: -moz-linear-gradient(#ebebeb, #cccccc);
	background: -o-linear-gradient(#ebebeb, #cccccc);
	background: -ms-linear-gradient(#ebebeb, #cccccc);
	background: linear-gradient(#ebebeb, #cccccc);
}
#system .classTitle span{
	font-size: 14px;
}
#system table{
	width: 90%;
	margin: 10px auto;
	line-height: 50px;
	border-collapse: collapse;
	
}
#system tr {
	border-bottom: solid 1px #686868;
}
#system th{
	font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 20px;
	text-align: left;
	font-weight: bold;
	color: rgba(235,110,56, 1);
}
#system .thStyle1 th{
	font-size: 14px;
	width: 45%;
	line-height: 24px;
}
#system .thStyle1 td{
	width: 55%;
}
#system td {
	font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 20px;
	text-align: right;
}
#system p{
	font-size: 12px;
	text-align: left;
	line-height: 30px;
	margin-bottom: 5px;
}
#system .commentStyle1{
	font-size: 11px;
	font-weight: bold;
	margin-bottom: 10px;
	line-height: 30px;
}
#system .commentStyle2{
	color: #F66;
	line-height: 30px;
}
#system img{
	width: 60%;
}
#system .normalPrice {
    opacity: 0.8;
    position: relative;
}
#system .normalPrice::after {
    content: '';
    border-top: solid 2px #e91e63;
    width: 100%;
    height: 1px;
    display: block;
    transform: rotate(
-3deg
);
    position: absolute;
	left: 0;
    top: 25px;
}
#system .spPrice {
	text-shadow: 0 0 5px #f8ff87;
}
#system .yen {
	font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 20px;
}
#system .terms {
	margin: 5%;
	font-size: 14px;
}
#system .earlyDiscount {
	color: rgba(235,110,56, 1);
	font-size: 15px;
}
#system .earlyDiscountTr {
	color: rgba(235,110,56, 1);
	line-height: 30px;
	border: none;
}
#system .earlyDiscountTr th {
	font-size: 16px;
	text-align: center;
}

/*----- recruit -----*/
.recruitImg {
    margin: 20px 0;
    width: 100%;
}
#form .tel{
	font-size: 20px;
	text-align: right;
	padding: 0 10px;
}
/*----- info -----*/
#info{
	padding: 20px 10px;
	overflow-y: scroll;
}
#info strong{
	/* font-size: 1.5em; */
}
#info span.gold{
	color: #42350b;
	text-shadow: 1px 1px 1px #373737;
}
#info span.pink{
	color: #F20088;
	text-shadow: 1px 1px 1px #373737;
}
#info span.red{
	color: #f00;
	text-shadow: 1px 1px 1px #373737;
}
#info .InfoHead{
	width: 620px;
	margin-bottom: 10px;
	padding: 0 10px;
	border-bottom: dotted #A8A8A8 1px;
	box-sizing: border-box;
	overflow: hidden;
}
#info .date{
	font-size: 12px;
	width: 100px;
	line-height: 32px;
}
#info .title{
	font-size: 18px;
	font-weight: bold;
	text-shadow: 1px 1px 1px #373737;
	color: #42350b;
	width: 490px;
	padding-left: 10px;
}
#info .infoTextBox{
	width: 640px;
	margin-bottom: 30px;
	padding-bottom: 10px;
	overflow: hidden;
	border-bottom: dotted #eee 1px;
	box-sizing: border-box;
}
#info .text{
	width: 340px;
	margin-right: 10px;
	padding: 0 10px;
}
#info .infoTextBox img{
	width: 260px;
}
#infoInner{
	margin: 20px;
	font-size: 16px;
	line-height: 28px;
}
#infoInner th {
	width: 80px;
}
#infoInner tr:nth-child(3) td {
	font-size: 12px;
	line-height: 24px;
}
.infoInnerTitle{
	font-size: 22px;
	margin-bottom: 10px;
	line-height: 32px;
	border-bottom: dashed #ABABAB 1px;
	box-sizing: border-box;
}
#infoInner .bottom{

}
#info p{
	font-size: 16px;
	font-weight: bold;
	margin-left: 10px;
	line-height: 50px;
}
#info span.head{
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 20px;
	text-shadow: 1px 1px 3px #565656;
	display: block;
}
#info span.head:first-letter {
	font-size: 1.5em;
	color: #42350b;
}
#info span.sub{
	font-size: 20px;
	margin-left: 20px;
	line-height: 60px;
}
/*----- schedule -----*/
.schedule{
	margin-bottom: 10px;
	position: relative;
}
.schedule ul{
	line-height: 20px;
	overflow: hidden;
}
.schedule li{
	font-weight: bold;
	width: calc(100% / 7);
	text-align: center;
	line-height: 20px;
	float: left;
}
.schedule .title{
	font-size: 20px;
	font-weight: bold;

}
.schedule .day{
	border-bottom: dotted #cfcfcf 1px;
	margin: 20px 0;
	padding-bottom: 5px;
}
.schedule .today {
    line-height: 20px;
    color: #fff;
    background: #C2AD61;
    padding: 0 0 5px 0;
}
.schedule .today a{
	color: #fff;
}
.schedule .check{
	margin-bottom: 10px;
}
.schedule .check li img{
	width: 30%;
}
#pickup .schedule .checkBg{
	position: absolute;
	top: 88px;
	left: 5%;
	z-index: -100;
	width: 90%;
}
#profile .schedule .checkBg{
	position: absolute;
	top: 100px;
	left: 55px;
	z-index: -100;
	width: 88%;
}
.schedule .sat{
	color: #60a0de;
}
.schedule .sun{
	color: #de6061;
}
/*----- profile -----*/
#profile .wrap{
	width: 100%;
	margin: 0 auto;
}

#profile {
  width: 100%;
  margin: 0 auto;
  padding: 20px 0;
  box-sizing: border-box;
  overflow: hidden;
}


#profile .dataBox{
  text-align: center;
}

#profile .mainImage{
	width: 83%;
	margin-right: 2%;
	float: left;
}
#profile .mainImage img{
	width: 100%;
}
#profile .mainImage .girlSet{
	height: unset;
}
#profile .thumbnails{
	width: 13%;
	margin-right: 2%;
	float: left;
}
#profile .thumbnails ul{
	margin-top: 5px;
}
#profile .Lcontent {
	overflow: hidden;
}
#profile .Rcontent .nameWrap {
	text-align: center;
}
#profile .Rcontent .name{
	font-size: 24px;
	font-weight: bold;
	margin-left: 5px;
	margin-top: 10px;
}
#profile .Rcontent .size {
    font-size: 16px;
    letter-spacing: 1px;
    padding: 10px;
    /* border-bottom: solid #505050 1px; */
    display: block;
    width: calc(100% - 20px);
    margin-bottom: 5px;
}
#profile .Rcontent .twitterIcon {
	width: 40px;
	margin: 10px auto;
}
#profile .Rcontent .label{
	width: 30%;
	height: 25px;
	margin: 0 0 5px 0;
	padding: 0 0 2px 0;
	border-bottom: solid #505050 1px;
	float: left;
}
#profile .Rcontent .scheduleList {
    width: 90%;
    font-size: 18px;
    line-height: 40px;
    margin: 30px 5%;
		border-collapse: collapse;
		font-weight: 100;
}
#profile .Rcontent .scheduleList tr {
	border-bottom: solid 1px #686868;
}
#profile .Rcontent .scheduleList th,#profile .Rcontent .scheduleList td {
	width: 50%;
	text-align: center;
}
#profile .Rcontent .questionList {
    text-align: left;
    margin: 5%;
}
#profile .Rcontent .questionList li:nth-child(odd){
	color: #EB6E38;
}
#profile .Rcontent .questionList li:nth-child(even){
	border-bottom: solid 1px #686868;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
#profile .Rcontent .textBox {
	padding: 5%;
}
#profile .iconList {
	padding: 5%;
	display: flex;
	flex-wrap: wrap;
}
#profile .iconList li {
    width: calc(50% - 5px);
    margin-bottom: 4px;
    font-size: 12px;
		border-radius: 3px;
    padding: 2px 0;
    text-align: center;
    border: solid 1px #eb6e38;
    color: #eb6e38;
    font-size: 15px;
}
#profile .iconList li:nth-child(odd) {
	margin-right: 4px;
}
#profile .contentInner{
	overflow: hidden;
}
#profile .contentInner .innerTitle{
	font-size: 18px;
	margin-left: 5px;
}
#profile .contentInner p{
	box-sizing: border-box;
}
#profile .contentInner .Lcontentul{
}
#profile .contentInner .Lcontent li{
	padding: 2px 0.5%;
	text-align: center;
	float: left;
	box-sizing: border-box;
}
#profile .innerBottom{
	width: 100%;
	overflow: hidden;
}
#profile .innerBottom .title{
	font-size: 20px;
	font-weight: bold;
	width: 100%;
	color: #fff;
}
#profile .innerBottom .schedule .day{
	margin-bottom: 10px;
	padding-bottom: 5px;
}
#profile .innerBottom .schedule .today{


}
#profile .innerBottom .schedule li{
	line-height: 20px;
}
#profile .backBtn{
	width: 96%;
	margin: 20px auto 10px auto;
	padding: 5px 0 3px 0;
	border: solid #505050 1px;
	border-radius: 5px;
	display: block;
	font-size: 16px;
	font-family: '游明朝';
	font-weight: bold;
	text-align: center;
	color: #fff;
	background: url("/img/header_bg.jpg") center top;
}
#profile .girlImageList {
	margin: 0 15px;
}
.girlImageList li img {
	border: solid 1px #111;
	width: 100%;
}
/*----- event -----*/
#event .Rcontent .textBox{

}
.eventBox img {
	width: 100%;
}
/*----- form reserve enquete -----*/
/*----- form reserve enquete -----*/
#form table{
	width: 100%;
	margin: 0 auto;
	line-height: 26px;
}
#form th{
	width: 100%;
	padding: 2px 1%;
	display: block;
	text-align: left;
}
#form td{
	width: 100%;
	padding: 2px 1%;
	display: block;
}
#form th span {
	font-size: 10px;
	margin-left: 10px;
	color: #de6061;
	line-height: 20px;
}
#form td li{
	width: 30%;
	float: left;
}
#form input[type="text"] {
	/* width: 90%; */
}
#form .age input[type="text"] {
	width: 20%;
}
#form #datepicker{
	width: 70px;
}
#form select{
	font-family: '游明朝';
	/* width: 70%; */
	float: left;
}
#form select.sub{
	width: 65%;
	margin-left: 5%;
}
#form textarea {
	width: 98%;
	height: 150px;
}
#form .submit_button{
	font-size: 16px;
	font-family: '游明朝';
	font-weight: bold;
	color: #42350b;
	background: url("/img/header_bg.jpg") center top;
	width: 200px;
	margin: 10px auto;
	padding-top: 2px;
	border-radius: 5px;
	border: solid #505050 1px;
	line-height: 35px;
	display: block;
}
#form .tabletyle01 tr{
	margin-bottom: 10px;
	display: block;
}
#form .tabletyle01 th{
	background-color: rgb(236 234 219 / 60%);;
	border-top: solid #cfcfcf 1px;
	border-right: solid #cfcfcf 1px;
	border-left: solid #cfcfcf 1px;
	box-sizing: border-box;
}
#form .tabletyle01 td{
	border: solid #cfcfcf 1px;
	box-sizing: border-box;
}
/*----- link -----*/
.linkBox{
	width: 96%;
	margin: 0 auto 10px auto;
	overflow: hidden;
}
.link p{
	text-align: center;
	margin-bottom: 10px;
}
.link img{
	width: unset;
	height: unset;
}
.list_link{
	margin: 0 auto;
}
.list_link p{
	margin: 0 0 5px 0;
	float: left;
}
.list_link .linkListStyle01{
	font-size: 10px;
	position: relative;
	padding: 5px 8% 0 3%;
	border: solid #cfcfcf 1px;
	box-sizing: border-box;
	text-align: center;
}
.list_link .linkListStyle01 img{
	max-width: 100%;
}
.list_link .linkListStyle01 a{
	display: block;
}
.list_link .linkListStyle01::after {
	position: absolute;
	content: ">";
	top: 50%;
	right: 3%;
	font-weight: bold;
	font-family: sans-serif;
	margin-top: -8px;
}
/*----- rank -----*/
#rank .rank1 {
	background-image: url("/img/rankBg1.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: top right;
}
#rank .rank2 {
	background-image: url("/img/rankBg2.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: top right;
}
#rank .rank3 {
	background-image: url("/img/rankBg3.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: top right;
}
#rank .Rcontent .rankIcon{
	width: 15%;
	float: left;
}
#rank .Rcontent .name{
	height: 52px;
	font-size: 32px;
	width: 80%;
	margin: 0 0 0 5%;
	padding-top: 2px;
	float: left;
}
#rank .contentSyle02 .Rcontent .size{
	height: 18px;
	font-size: 14px;
	width: 68%;
	margin-bottom: 10px;
	padding: 6px 1% 1px 0;
	text-align: right;
	border-bottom: solid #505050 1px;
	float: left;
}
#rank .contentSyle02 .Rcontent .label{
	width: 30%;
	height: 22px;
	margin: 0 0 10px 0;
	padding: 0 0 3px 0;
	border-bottom: solid #505050 1px;
}
/*----- magazine -----*/
#magazine{
}
#magazine span{
	font-size: 20px;
	margin-bottom: 5px;
	text-align: center;
}
#magazine .commentStyle1{
	font-size: 14px;
	font-weight: bold;
	margin: 10px 0;
	line-height: 30px;
	text-align: center;
}
#magazine .commentStyle1 p{
	margin-bottom: 10px;
}
#magazine .contentSubTitle{
	text-align: center;
}
#magazine .contentInner .fontChange{
	font-size: 16px;
}
#magazine .contentInner .carrier{
	margin-top: 30px;
}
#magazine .contentInner .carrier li{
	background-color: rgba(225, 224, 127, 0.1);
	padding: 10px 0;
	margin-bottom: 10px;
}
#magazine .contentInner .carrier img{
	width: 50%;
	margin: 0 25%;
}
/*----- member -----*/
#panel {
	background: rgba(255,255,255,0.6);
	width: 300px;
	margin: 150px auto;
	padding: 20px;
	box-shadow: 0 0 6px #333;
}
#panel table {
	width: 100%;
}
#panel table th,#panel table td {
	width: 50%;
}
#panel table th img{
	width: 80%;
	margin: 0 auto;
	margin-bottom: 20px;
}
.tal {
	text-align: left;
}
#panel input {
	width: 100%;
	border: solid 1px #e6e6e6;
}
#panel .btn {
	width: 30%;
	background: #111;
	border: none;
	margin-top: 10px;
	padding: 7px;
	box-shadow: 0px 0px 5px #CFC7C2 inset;
}
/*----- footer -----*/
.shopInfo {
	overflow: hidden;
}
#footer{
	width: 100%;
	box-sizing: border-box;
	/* color: #fff; */
}
#footer a {
	/* color: #fff; */
}
#footer img{
	width: 60%;
	margin-top: 10px;
}
#footer .link img {
    width: auto;
    display: block;
    margin: 10px auto;
}
#footer span{
	font-size: 14px;
}
#footerInner{
	padding: 10px;
	overflow: hidden;
}
#footerLeft{
	width: 480px;
	margin-right: 160px;
}
#footerRight{
	text-align: center;
	color: #42350b;
}
#footerRight .tel{
	font-size: 24px;
	font-family: 'Libre Baskerville', serif;
}
#footerRight .mail,#footerRight .time{
	font-family: 'Libre Baskerville', serif;
	font-size: 16px;
}
#copyright{
	background-color: #111;
	text-align: center;
	border-top: solid #42350b 1px;
	box-sizing: border-box;
	font-size: 12px;
	padding-bottom: 80px;
	color: #fff;
}
#memberBg{
	background-image: url("/img/memberBg.png");
	background-repeat: no-repeat;
	-moz-background-size: cover;
	background-attachment: fixed;
	background-size: cover;
	height: 100%;
}
#memberBg #header{
	padding: unset;
}
#memberBg #header p{
	font-size: 18px;
	width: 100%;
	padding: 2px 0;
	color: #42350b;
	background-color: #42350b;
	text-align: center;
}
#memberBg #header #headerInner{
	margin: 2px 1%;
}
#memberBg #header #headerLeft img{
	width: 90%;
	margin: 0 auto;
	display: block;
}
#memberBg #memberInner{
	margin-top: 80px;
}
#memberBg .swingMenu{
	margin-top: 80px;
}
#main #schedule .girlSet .label{
	width: 28%;
	position: absolute;
	bottom: 55px;
	right: 5%;
	z-index: 500;
}
#main #schedule .flexslider .girlSet .label{
	width: 35%;
	position: absolute;
	bottom: 53px;
	right: 5%;
	z-index: 500;
}
#girlList #schedule .girlSet .label{
	width: 30%;
	position: absolute;
	bottom: 54px;
	right: 5%;
	z-index: 500;
}
#schedule .scheduleLinks {
	overflow: hidden;
}
#schedule .scheduleLinks li a {
    display: block;
    text-align: center;
    font-family: '游明朝';
    color: #42350b;
    width: 48%;
    margin: 2px 1%;
    line-height: 18px;
    border-radius: 3px;
    box-sizing: border-box;
    display: block;
    float: left;
    line-height: 37px;
    font-size: 18px;
    height: 40px;
    /* text-align: left; */
    /* padding-left: 10px; */
    background: rgba( 255, 255, 255, 0.80 );
    box-shadow: 0 0 5px #ccc;
    backdrop-filter: blur( 10.0px );
}
.contentSyle04 .Rcontent .label{
	width: 110px;
	margin: 0 0 18px 0;
	padding: 2px 0 4px 10px;
	border-bottom: solid #eee 1px;
	box-sizing: border-box;
	float: left;
}
#memberInner #profile .Rcontent .size{
	font-size: 14px;
	width: 68%;
	height: 20px;
	padding: 4px 1% 1px 0;
	text-align: right;
	border-bottom: solid #505050 1px;
	float: left;
}
#memberInner #profile .Rcontent .label{
	width: 30%;
	height: 26px;
	padding: 0px 0 2px 0;
}
/*subMenu*/
#subMenu{
	overflow: hidden;
}
#subMenu .contentInner .subMenuTitle{
	font-size: 30px;
	color: #42350b;
	text-align: center;
	width: 80%;
	margin: 10px 10%;
	padding: 10px 0;
	line-height: 30px;
	border: solid #cfcfcf 1px;
	box-sizing: border-box;
	/* background-color: rgba(225, 127, 127,0.1); */
	overflow: hidden;
	float: left;
}
#subMenu .contentInner .subMenuTitle a{
	display: block;
}
#subMenu .subMenuTitle span{
	font-size: 20px;
}
#subMenu  span{

}
#contactBox {

}
#contactBox .head {
	text-align: center;
	font-size: 18px;
}
#contactBox ul {
	overflow: hidden;
}
#contactBox ul li {
    margin: 10px;
    text-align: center;
    margin-top: 30px;
    font-size: 16px;
}
#contactBox ul li p {

}
#contactBox a {
    display: block;
    margin-top: 20px;
    border: solid 1px;
    height: 50px;
    line-height: 50px;
    font-size: 17px;
}
#contactBox a:hover {
    box-shadow: 0 0 5px #42350b;
    text-shadow: 0 0 5px #42350b;
	background: rgb(255 255 255 / 20%);
}
#contactBox .tel a {

}
#contactBox .tel a:before {
	content: url('/img/btn_icon_tel.png');
	position: relative;
	top: 3px;
	left: -4px;
}
#contactBox .mail a {

}
#contactBox .mail a:before {
	content: url('/img/btn_icon_mail.png');
	position: relative;
	top: 3px;
	left: -4px;
}
#contactBox .line a {

}
#contactBox .line a:before {
	content: url('/img/btn_icon_line.png');
	position: relative;
	top: 3px;
	left: -4px;
}
.castSlider {
	display: none;
}
#topScheduleJumper {
    overflow: hidden;
    margin: 0 auto;
}
#topScheduleJumper li {
    float: left;
    margin: 10px;
    width: calc((100% - 40px) / 2);
    text-align: center;
    font-size: 16px;
}
#topScheduleJumper li p {

}
#topScheduleJumper a {
    display: block;
    margin-top: 20px;
    border: solid 1px;
    height: 50px;
    line-height: 50px;
    font-size: 19px;
}
#topScheduleJumper a:hover {
    box-shadow: 0 0 5px #42350b;
    text-shadow: 0 0 5px #42350b;
	background: rgb(255 255 255 / 20%);
}
#bottomBanner ul {

}
#bottomBanner li {
	box-shadow: 0 0 5px #000;
  margin: 40px 20px;
}
#bottomBanner li img {
	width: 100%;
}
.shootingStar {
	height: 100px;
	overflow: hidden;
}
/* star */
.starWrapper {
    height: 300px;
    width: 5px;
    transform: rotateZ( 
-86deg
 );
    float: left;
    position: relative;
    left: 15%;
    top: -100px;
}
.star {
    height: 0;
    width: 2px;
    background: linear-gradient(transparent, rgb(255, 255, 255));
    animation-name: shooting;
    animation-duration: 3s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    position: relative;
    box-shadow: 0 0 5px #ffeb3b;
}
.star img {
    position: absolute;
    height: 20px;
    width: 20px;
    bottom: -12px;
    left: -10px;
}
@keyframes shooting {
  0% {
    height: 0;
    opacity: 0%;
  }
  49% {
    height: 0;
    opacity: 0%;
  }
  50% {
    height: 0;
    opacity: 50%;
  }
  75% {
    height: 350px;
    opacity: 100%;
  }
  100% {
    height: 500px;
    opacity: 0;
  }
}
#star1 {
	transform: scale(1) rotateZ(-86deg);
}
#star2 {
    transform: scale(0.5) rotateZ(
-75deg
);
    left: 25%;
}
#star3 {
    transform: scale(1.2) rotateZ(
-82deg
);
    left: 60%;
}
#star4 {
    transform: scale(1.3) rotateZ(
-86deg
);
    left: 20%;
}
#star5 {
    transform: scale(0.5) rotateZ( 
-75deg
 );
    left: 75%;
}
#star6 {
    transform: scale(1.2) rotateZ( 
-70deg
 );
    left: 60%;
}
#star7 {
    transform: scale(0.3) rotateZ( 
-53deg
 );
    left: 25%;
}
#newsBannerWrapper {
    overflow: hidden;
    margin: 0 auto;
}
.newsBox {
    padding: 10px;
    background: rgba( 255, 255, 255, 0.80 );
    box-shadow: 0 0 10px #ccc;
    backdrop-filter: blur( 10.0px );
    overflow: scroll;
    height: 300px;
}
.newsBox .title {
	font-size: 16px;
	border-bottom: solid 1px #42350b;
	margin-bottom: 10px;
}
.newsBox .text {
    color: #111;
    font-size: 16px;
    padding: 10px;
}
.newsBox .newsImg {
    width: 90%;
    margin: 20px 5%;
}
#fixedTelLine {
	position: fixed;
	bottom: 0;
	z-index: 9997;
	width: calc(100%);
	display: flex;
	justify-content: center;
}
#fixedTelLine li {
    box-sizing: border-box;
    width: 33%;
		margin-bottom: 10px;
    text-align: center;
    border-radius: 3px;
    padding-top: 5px;
    font-size: 16px;
}
#fixedTelLine li:nth-child(1) {
	background: rgb(235 110 56 / 80%);
	margin-right: 2%;
}
#fixedTelLine li:nth-child(2) {
	background: rgb(6 198 85 / 80%);
  margin-right: 2%;
}
#fixedTelLine li:nth-child(3) {
	background: rgb(235 56 108 / 80%);
}
#fixedTelLine a {
	display: block;
	color: #fff !important;
}
#fixedTelLine img {
	height: 20px;
	width: auto;
}
#fixedTelLine span {
	font-size: 12px;
	height: 12px;
	line-height: 12px;
	overflow: hidden;
	display: block;
	letter-spacing: -0.5px;
}
#footerTelLine {
    z-index: 9999;
    width: 70%;
    margin: auto;
    display: flex;
    justify-content: center;
}
#footerTelLine li {
    box-sizing: border-box;
    width: 80px;
    height: 80px;
		margin-bottom: 10px;
    text-align: center;
    border-radius: 3px;
    padding-top: 5px;
    font-size: 14px;
		border-radius: 100%;
}
#footerTelLine li:nth-child(1) {
	background: rgb(235 110 56 / 100%);
	margin-right: 2%;
}
#footerTelLine li:nth-child(2) {
	background: rgb(6 198 85 / 100%);
  margin-right: 2%;
}
#footerTelLine li:nth-child(3) {
	background: rgb(235 56 108 / 100%);
}

#footerTelLine a {
	color: #fff;
	display: block;
}
#footerTelLine img {
	height: 20px;
	width: auto;
}
.footerOpenHour {
    height: 20px;
    background: rgb(0,0,0,0.8);
    line-height: 19px;
    width: 165px;
    text-align: center;
    font-size: 14px;
    margin: 0 auto 20px;
    border-radius: 20px;
		color: #fff;
}
.footerOpenHour img {
    height: 14px;
    position: relative;
    top: -2px;
    left: -1px;
    width: auto !important;
    margin: 0 !important;
}
#headerOpenhourTelList {
	overflow: hidden;
}
#headerOpenhourTelList li {
    float: left;
    line-height: 23px;
    text-align: center;
    width: 50%;
}
#headerOpenhourTelList span {
	font-size: 18px;
}
#headContactOpenhourTelList {
	text-align: center;
}
#headContactOpenhourTelList span {
	font-size: 18px;
}
#topCatch {
	position: relative;
}
#topCatch .particles-js-canvas-el {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.flex1 {
	margin: 8px !important;
}
.link {
	text-align: center;
}
/*movie*/
.movieArea {
	width:  100%;
}
.cardArea p {
	text-align: center !important;
	font-size:  16px !important;
}
.cardBtn {
    background: url(/img/header_bg.jpg) center top;
    border: solid 1px #adadad;
    box-shadow: 0 0 10px #42350bfbc;
    border-radius: 5px;
}
#snsHead .caption {
	margin: 10px;
}
#snsHead .iconHead {
    margin: 10px;
    background: #42350bfff17;
    width: 100px;
    text-align: center;
    border-radius: 100px;
    line-height: 25px;
    margin: 15px auto;
}
#snsHead ul {
    display: flex;
    justify-content: center;
    border-bottom: solid 1px #cccccc3b;
    padding-bottom: 20px;
}
#snsHead ul li {
	width: 50px;
	padding: 10px;
}
.shopInfo ul {
	margin: 10px;
	color: #C2AD61;
}
.shopInfo ul .shopName {
	font-weight: bold;
	font-size: 24px;
	text-align: center;
	padding: 20px 0;
	height: auto;
}
.shopInfo ul .shopName span:nth-child(1) {
	font-size: 15px;
	font-weight: bold;
	width: auto;
	display: block;
	line-height: 14px;
	margin-bottom: 10px;
}
.shopInfo ul .shopName span:nth-child(2) {
    font-size: 35px;
		font-weight: bold;
    width: auto;
    display: block;
    line-height: 40px;
}
.shopInfo ul .shopName span:nth-child(3) {
    font-size: 15px;
    font-weight: bold;
    width: auto;
    display: block;
    position: relative;
    left: -13%;
    line-height: 14px;
    margin-top: 10px;
}
.shopInfo ul li {
	position: relative;
	color: #42350b;
	font-size: 16px;
	height: 40px;
	line-height: 40px;
	border-bottom: solid 1px #cccccc3b;
}
.shopInfo ul li span {
	display: inline-block;
	width: 120px;
}
.shopInfo ul .mapBtn {
    display: inline-block;
    background: #ffffffb3;
    height: 18px;
    line-height: 18px;
    padding: 0 5px 0 9px;
    border-radius: 30px;
    border: solid 1px #CAB877;
    margin-left: 5px;
    font-size: 12px;
    position: relative;
    top: -1px;
    letter-spacing: 3px;
    text-align: center;
    position: absolute;
    right: -5px;
    top: 11px;
}
.shopInfo .caption {
    text-align: center;
    font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 18px;
    margin-bottom: 20px;
}
.shopInfo .caption .sub {
    text-align: center;
    font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 12px;
		margin-top: 10px;
    margin-bottom: 20px;
}
.shopInfo th {
	width: 100px;
	text-align: left;
	font-weight: bold;
	font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.shopInfo td {
	width: 80%;
	font-family: "游明朝", "游明朝体","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
/* card information */
#cardInformation {
	margin: 10px;
}
#cardInformation .subTitle {
	font-weight: bold;
	text-align: center;
}
#cardInformation .imgWrap {
	text-align: center;
}
#cardInformation .imgWrap img {
	width: 80%;
}
#cardInformation .cardInfo {
	margin: 10px;
}
#cardInformation .cardInfo li {
	line-height: 20px;
	list-style: decimal;
}
#cardInformation .cardLink {
    border: solid 1px #adadad;
    box-shadow: 0 0 10px #ffffbc;
    border-radius: 5px;
}


/* Xロゴの追加 */
#event .contentTitle {
  display: flex;
  justify-content: center;
  align-items: center;
}

#event .contentTitle img{
  width: 20px;
}

/*====================================
  reserve.php Web予約追加 20250703
====================================*/
#form #reserve .tableStyle02 {
  width: 100%;
  margin-bottom: 30px;
  background: #fff;
  border: none;
  display: block;
}

#form #reserve .tableStyle02 tr {
  display: block;
  margin-bottom: 20px;
  border: 1px solid #ddd;
  border-radius: 8px;
  overflow: hidden;
}

#form #reserve .tableStyle02 th,
#form #reserve .tableStyle02 td {
  display: flex;
  flex-direction: row;
  width: 100%;
}

/* テーブルヘッダー（項目名） */
#form #reserve .tableStyle02 th {
  background: #C2AD61;
  color: #fff;
  font-weight: bold;
  text-align: left;
  padding: 12px 15px;
  font-size: 16px;
}

/* 必須マーク */
#form #reserve .tableStyle02 th span {
  background: #e74c3c;
  color: #fff;
  font-size: 11px;
  padding: 2px 6px;
  border-radius: 3px;
  margin-left: 8px;
  font-weight: normal;
}

/* テーブルセル（入力エリア） */
#form #reserve .tableStyle02 td {
  background: #fff;
  padding: 15px 15px 20px 15px;
  box-sizing: border-box;
}

/* =============================================
  フォーム要素
============================================= */
/* テキストボックス・セレクトボックス */
input[type="text"],
input[type="email"],
input[type="tel"],
select {
  width: 100%;
  padding: 12px 15px;
  border: 2px solid #ddd;
  border-radius: 6px;
  font-size: 16px;
  transition: all 0.3s ease;
  background: #fff;
  height: 48px;
  box-sizing: border-box;
  -webkit-appearance: none;
  appearance: none;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
select:focus {
  outline: none;
  border-color: #C2AD61;
  box-shadow: 0 0 8px rgba(194, 173, 97, 0.3);
}

/* 日付ピッカー */
#visit_date {
  cursor: pointer;
  background: #fff url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="%23666" viewBox="0 0 16 16"><path d="M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5 0zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z"/></svg>') no-repeat right 15px center;
  padding-right: 50px;
}

/* セレクトボックス */
select {
  cursor: pointer;
  background: #fff url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="%23666" viewBox="0 0 16 16"><path d="M8 13.1l4.2-4.2L10.8 7.5 8 10.3 5.2 7.5 3.8 8.9z"/></svg>') no-repeat right 15px center;
  padding-right: 50px;
  height: 44px;
}

select option {
  max-width: 200px;
  width: auto;
  border: none;
  outline: none;
  background: #fff;
}



/* テキストエリア */
textarea {
  width: 100%;
  min-height: 120px;
  padding: 15px;
  border: 2px solid #ddd;
  border-radius: 6px;
  font-size: 16px;
  font-family: inherit;
  resize: vertical;
  transition: all 0.3s ease;
  box-sizing: border-box;
}

textarea:focus {
  outline: none;
  border-color: #C2AD61;
  box-shadow: 0 0 8px rgba(194, 173, 97, 0.3);
}

/* プレースホルダー */
input::placeholder,
textarea::placeholder {
  color: #999;
  font-size: 14px;
}

/* =============================================
  来店日時の縦積みレイアウト
============================================= */
.datetime-wrapper {
  display: block;
  width: 100%;
}

.datetime-item {
  width: 100%;
  margin-bottom: 20px;
}

.datetime-item:last-child {
  margin-bottom: 0;
}

.datetime-item label {
  display: block;
  font-weight: bold;
  color: #C2AD61;
  margin-bottom: 8px;
  font-size: 16px;
}

.datetime-item input,
.datetime-item select {
  width: 100%;
}

/* =============================================
  エラー表示
============================================= */
.vc {
  display: block;
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.4;
}

/* エラー時の背景色 */
input[style*="background:#FFB2CC"],
select[style*="background:#FFB2CC"],
textarea[style*="background:#FFB2CC"] {
  background-color: #FFB2CC !important;
  border-color: #e74c3c !important;
}

/* =============================================
  送信ボタン
============================================= */
.btnGray {
  display: block;
  width: 100%;
  max-width: 300px;
  margin: 30px auto 0;
  padding: 18px 30px;
  background: #C2AD61;
  color: #fff;
  border: none;
  border-radius: 50px;
  font-size: 18px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.3s ease;
  text-align: center;
  box-shadow: 0 4px 15px rgba(194, 173, 97, 0.4);
  -webkit-tap-highlight-color: transparent;
}

.btnGray:hover,
.btnGray:active {
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(194, 173, 97, 0.6);
  background: #B39C55;
}

/* =============================================
  完了メッセージ
============================================= */
.contentIn div[style*="text-align: center"] {
  padding: 40px 20px;
  background: #f8f9fa;
  border-radius: 8px;
  border: 2px solid #28a745;
  text-align: center;
}

.contentIn div[style*="text-align: center"] h3 {
  color: #28a745;
  font-size: 24px;
  margin-bottom: 15px;
}

.contentIn div[style*="text-align: center"] p {
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 12px;
  color: #333;
}

/* =============================================
  jQuery UI Datepicker スマホ対応
============================================= */
.ui-datepicker {
  background: #fff;
  border: 2px solid #C2AD61;
  border-radius: 8px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.2);
  padding: 15px;
  font-size: 16px;
  width: 280px !important;
}

.ui-datepicker-header {
  background: #C2AD61;
  color: #fff;
  border: none;
  border-radius: 6px;
  padding: 12px;
  margin-bottom: 15px;
}

.ui-datepicker-title {
  color: #fff;
  font-weight: bold;
  font-size: 16px;
}

.ui-datepicker-prev,
.ui-datepicker-next {
  background: rgba(255,255,255,0.2);
  border: none;
  border-radius: 4px;
  color: #fff;
  width: 32px;
  height: 32px;
}

.ui-datepicker-prev:hover,
.ui-datepicker-next:hover {
  background: rgba(255,255,255,0.3);
}

.ui-datepicker table {
  width: 100%;
}

.ui-datepicker td {
  padding: 2px;
}

.ui-datepicker td a {
  background: #f8f9fa;
  border: 1px solid #ddd;
  color: #333;
  border-radius: 4px;
  padding: 12px 8px;
  text-decoration: none;
  transition: all 0.2s ease;
  display: block;
  text-align: center;
  min-height: 20px;
}

.ui-datepicker td a:hover {
  background: #C2AD61;
  color: #fff;
  border-color: #C2AD61;
}

.ui-datepicker .ui-state-active {
  background: #C2AD61 !important;
  color: #fff !important;
  border-color: #C2AD61 !important;
}

/* 今日の日付 */
.ui-datepicker .ui-state-highlight {
  background: #fff3cd !important;
  border-color: #ffeaa7 !important;
}

/* =============================================
  タッチ操作の改善
============================================= */
input, select, textarea, button {
  -webkit-tap-highlight-color: transparent;
}

/* iOS Safari対応 */
input[type="text"],
input[type="email"],
input[type="tel"],
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* =============================================
  小さなスマホ対応
============================================= */
@media screen and (max-width: 375px) {
  .contentInner {
    padding: 15px 10px;
  }
  
  #form #reserve .tableStyle02 th {
    padding: 10px 12px;
    font-size: 15px;
  }
  
  #form #reserve .tableStyle02 td {
    padding: 12px;
  }
  
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  select,
  textarea {
    padding: 12px;
    font-size: 16px;
  }
  
  .btnGray {
    padding: 15px 20px;
    font-size: 16px;
  }
  
  .ui-datepicker {
    width: 260px !important;
    padding: 10px;
  }
}