@charset 'utf-8';

/* BODY
--------------------------------------------------	*/
body{
	margin:0;
	padding:0;
	text-align:center;
	background-color:#ffffff;
}

/* HEADER
--------------------------------------------------	*/
#header{
	margin:0px;
	padding:6px;
	font-weight:bold;
	text-align:center;
}

/* FOOTER
--------------------------------------------------	*/
#footer{
	padding:10px 0;
	text-align:center;
	font-size:0.9em;
	color:#ffffff;
	background-color:#c42f4c;
}
#footer a:link{ color:#ffffff; text-decoration:none; }
#footer a:visited{ color:#ffffff; }
#footer a:hover{ color:#ffb9ec; text-decoration:none; }

#footer li {
	display:inline;
}
#footer-link{
	padding-top: 10px;
	padding-bottom: 20px;
	font-size:0.9em;
	line-height: 1.1;
	color: #ffffff;
	background-color:#c42f4c;
	display: flex;
	justify-content: center;
}
#footer-link > *{
	padding: 0 20px;
	border-left: #ffffff solid 1px;
}
#footer-link > :last-child{
	border-right: #ffffff solid 1px;
}
#footer-link span{
	font-size:1.0em;
}
#footer-link ul{
	margin: 0;
	margin-top: 10px;
	padding: 0;
}
#footer-link li{
	margin: 2px 0;
	padding: 0;
	list-style-type: none;
}
#footer-link li a{
	color: #ffffff;
}

/* A
--------------------------------------------------	*/
a{ text-decoration:none; }
a:hover{ color:crimson; }

/* IMG
--------------------------------------------------	*/
img{ border-style:none; vertical-align:middle; max-width:100%; }

/* FORM
--------------------------------------------------	*/
form{ margin:0px; padding:0px; }
.require{ float:right; padding:2px 4px; background-color:#cc0000; border-radius:3px; font-size:11px; color:#ffffff; }

/* CLEAR
--------------------------------------------------	*/
.clear { clear:both; }

/* PROFILE-SCHEDULE
--------------------------------------------------	*/
.profile-schedule {
	width:100%;
}
.profile-schedule dl {
	width: 100%;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.profile-schedule dt {
	width: calc((100% / 3) - 20px - 1px);
	margin: 0;
	padding: 10px;
	background: #b7913c;
	font-weight:normal;
	font-size:0.8em;
	text-align:center;
	color:#ffffff;
	border-right:1px solid #fff0cf;
}
.profile-schedule dd {
	width: calc((100% / 3) - 20px - 1px);
	margin: 0;
	padding: 10px;
	border-right: 1px solid #b7913c;
	border-bottom: 1px solid #b7913c;
	background-color:#fdf7eb;
	font-size:0.8em;
	text-align:center;
}
.profile-schedule dl > :nth-child(3n+3){
	width: calc((100% / 3) - 20px);
	border-right: none;
}
.title2 {
	margin:10px 0;
	padding:10px;
	background-color:#c83d52;
	background-image:url("../image/bg_schedule.jpg");
	background-repeat: no-repeat;
	background-position:right;
	font-size:1.4em;
	font-weight:normal;
	color:#ffffff;
	text-align:left;
}
.title2 span{ font-size:0.6em; }

/* PROFILE-MAIN
--------------------------------------------------	*/
.profile-main {
	width:100%;
}
.profile-main th {
	padding: 10px;
	font-weight:normal;
	font-size:0.8em;
	text-align:center;
	vertical-align:top;
}
.profile-main td {
	padding: 10px;
	font-size:0.8em;
	text-align:left;
	vertical-align:top;
}

/* Rules */
.rules-outer {
	border: 2px solid #ccaa44;
	margin-bottom:20px;
	padding: 5px;
	position: relative;
	z-index: 0;
}

.rules-inner {
	border: 1px solid #ccaa44;
	padding: 1.5em;
	position: relative;
}

.rules-outer::before,
.rules-outer::after,
.rules-inner::before,
.rules-inner::after {
	border: 2px solid #ccaa44;
	border-radius: 50%;
	box-sizing: border-box;
	content: '';
	display: block;
	height: 40px;
	position: absolute;
	width: 40px;
	z-index: -1;
}

.rules-outer::before{
	top: -20px;
	left: -20px;
	clip: rect(18px, auto, auto, 18px);
}

.rules-outer::after {
	top: -20px;
	right: -20px;
	clip: rect(18px, 22px, auto, auto);
}

.rules-inner::before {
	bottom: -25px;
	left: -25px;
	clip: rect(auto, auto,23px,17px);
}

.rules-inner::after {
	bottom: -25px;
	right: -25px;
	clip: rect(auto, 23px, 23px, auto);
}

.rules-inner h2 {
	margin:0;
	font-size:1.8em;
	font-weight:normal;
	text-align:center;
	color:#cf324d;
}
.rules-inner h3 {
	margin:0;
	font-size:1.5em;
	font-weight:normal;
	text-align:center;
	color:#cf324d;
}

/* Profile-container1 */
.profile-container1{ float:left; width:45%; margin-bottom:10px; color:#cf324d; border:1px dashed 333; }
.profile-container2{ float:left; margin-bottom:10px; color:#555555; }
.profile-clear{ clear:both; margin-bottom:10px; border-top:1px dashed #888888; }

/* Box=Cast */
.box-cast {
	width: auto;
	float: left;
	width:133px;
	height: 350px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	background: #ffffff;
	text-align: center;
	font-size: 15px;
	color: #555555;
	overflow: hidden;
	margin-right: 0.4em;
	margin-bottom: 1em;
}

/* H1 */
h1{
	display: flex;
	justify-content: center;
	align-items: center;
	font-size:1.7em;
	color:#c83e58;
	text-align:center;
}
h1::before,
h1::after {
	content: '';
	width: 20px;
	height: 3px;
	background-color: #c19532;
}
h1::before {
	margin-right:10px;
}
h1::after {
	margin-left:10px;
}

/* HEADLINK */
#headlink{ margin:0; text-align:left; }
#headlink a:link{ color:#c32443; text-decoration:none; }
#headlink a:visited{ color:#c32443; }
#headlink a:hover{ color:#e53d5e; text-decoration:none; }

/* TABLE */
.table { display:table; width:100%; }
.table .row { display:table-row; text-align:left; }
.table .cell1{ display:table-cell; width:45%; padding:10px; text-align:left; color:#cf324d; font-size:0.9em; border-bottom:1px dashed #888; }
.table .cell2{ display:table-cell; width:55%; padding:10px; text-align:left; color:#333333; font-size:0.9em; border-bottom:1px dashed #888; }

/* CAST-TAG */
.cast-tag{
	display:inline-block;
	margin:2px;
	padding:5px 12px;
	background-color:#b38e3b;
	color:#ffffff;
	font-weight:bold;
	border-radius:15px;
}

/* CAST-PLAY */
#cast_play-container{
	display:flex;
	flex-wrap:wrap;
	height:auto;
	width:100%;
	margin:10px 0;
}
.cast-play-on{
	width:26.2%;
	height:auto;
	margin:2px;
	padding:5px 12px;
	background-color:#cf324d;
	color:#ffffff;
	font-size:0.9em;
	font-weight:bold;
	text-align:left;
}
.cast-play-off{
	width:26.2%;
	height:auto;
	margin:2px;
	padding:5px 12px;
	background-color:#f3a5b2;
	color:#cf324d;
	font-size:0.9em;
	font-weight:bold;
	text-align:left;
}

/* PAGETOP
--------------------------------------------------	*/
.pagetop {
	position:relative;
	width:100%;
	margin:0;
	padding:0px;
	background-color:#a61430;
	font-size:2.0em;
	color:#ffffff;
	cursor:pointer;
}
.pagetop a {
	position:absolute;
	top:0;
	left:0;
}

/* BUTTON
--------------------------------------------------	*/
.button {
	padding:10px 35px;
	background-color:#c3304d;
	border-radius:50px;
	font-size:1.0em;
	color:#fff;
	cursor:pointer;
}

/* table-form-shop
--------------------------------------------------	*/
.table-form{ width:100%; margin:auto; padding:0; }
.table-form th,td { padding:20px 0; text-align:left; border-bottom:1px solid #888888; }
.table-form input:focus, select:focus, textarea:focus { background-color:#ffffff; }

/* girls-box
--------------------------------------------------	*/
.girls-box{ float:left; width:20%; margin:0.6%; padding:0.7%; background-color:#ffffff; text-align:center; }
.girls-box-image{ margin-bottom:5px; }
.girls-box-name{ color:#cf364b; }

/* table-system
--------------------------------------------------	*/
.table-system {
	width:100%;
	border-collapse:collapse;
}
.table-system th{ width:50%; }
.table-system th, .table-system td {
	padding:10px;
	border:1px solid #888888;
}
.table-system tr:nth-child(2n+1) {
	background:#f1f1f1;
}
.table-system tr:nth-child(2n+0) {
	background:#ffffff;
}
.table-system tr:first-child, .s-tbl th:first-child {
	background: #c42f4c;
	color:#ffffff;
}

/* box-todaygirl
--------------------------------------------------	*/
.box-todaygirl{
	float:left;
	background-color:#ffffff;
	text-align:center;
}
.box-todaygirl-image{ margin-bottom:5px; max-width:100%; }

/* hamburger
--------------------------------------------------	*/
.hamburger {
	display:block;
	position:fixed;
	z-index:3;
	right:20px;
	top:20px;
	width:42px;
	height:42px;
	cursor:pointer;
	text-align:center;
}
.hamburger span {
	display:block;
	position:absolute;
	width:30px;
	height:2px ;
	left:6px;
	background:#5a5a5a;
	-webkit-transition:0.3s ease-in-out;
	-moz-transition:0.3s ease-in-out;
	transition:0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
	top:10px;
}
.hamburger span:nth-child(2) {
	top:20px;
}
.hamburger span:nth-child(3) {
	top:30px;
}
.hamburger.active span:nth-child(1) {
	top:16px;
	left:6px;
	background:#fff;
	-webkit-transform:rotate(-45deg);
	-moz-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
	top: 16px;
	background :#fff;
	-webkit-transform:rotate(45deg);
	-moz-transform:rotate(45deg);
	transform:rotate(45deg);
}
nav.globalMenuSp {
	position:fixed;
	z-index:2;
	top:0;
	left:0;
	color:#fff;
	background:rgba(55,55,55,0.8);
	text-align:center;
	width:100%;
	transform:translateX(-100%);
	transition:all 0.6s;
}
nav.globalMenuSp ul {
	margin:0 auto;
	padding:0;
	width:100%;
}
nav.globalMenuSp ul li {
	list-style-type:none;
	padding:0;
	width:100%;
	transition:.4s all;
}
nav.globalMenuSp ul li:last-child {
	padding-bottom:0;
}
nav.globalMenuSp ul li:hover{
	background:#c42f4c;
}
nav.globalMenuSp ul li a {
	display:block;
	color:#fff;
	padding:1em 0;
	text-decoration:none;
}
nav.globalMenuSp.active {
	opacity:100;
	display:block;
	transform:translateX(0%);
}

/* ���X�|���V�uPC&�^�u���b�g
--------------------------------------------------	*/
@media screen and (min-width:1010px){
	#wrapper{
		width:990px;
		margin-left:auto;
		margin-right:auto;
		overflow: hidden;
	}

	#header-top-left{ float:left; width:33%; }
	#header-top-center{ float:left; width:34%; }
	#header-top-right{ float:left; width:33%; }

	#contents{
		width:990px;
		margin-left:auto;
		margin-right:auto;
		text-align:left;
	}
	#contents-left{
		float:left;
		width:650px;
		padding:10px;
		text-align:left;
		background-color:#f3ecda;
	}
	#contents-right{
		float:left;
		width:300px;
		padding:10px;
		text-align:center;
	}
	#contents-main{
		padding:20px;
		background-color:#f3ecda;
	}

	#top-menu{
		width:990px;
		padding:0;
		margin:0;
		list-style-type: none;
	}
	#top-menu li{
		width:14.28%;
		float:left;
		padding:0;
		margin:0;
		text-align:center;
		border-right:0px solid #ebebeb;
	}
	#top-menu li a{
		width:auto;
		color:#ce324a;
		font-weight:bold;
		padding:8px;
		text-decoration:none;
		font-size:18px;
		display:block;
		background:#ffffff;
		border-left:1px solid #ebebeb;
		border-right:1px solid #ebebeb;
	}
	#top-menu li a:hover{
		background:#fcd1dc;
	}
	#top-menu .subtitle{ font-size:0.8em; font-weight:normal; color:#333333; }

	#footer li{
		padding-left:10px;
		padding-right:5px;
		border-left:2px solid #ffffff;
	}
	#footer li.last {
		padding-left:10px;
		padding-right:10px;
		border-right:2px solid #ffffff;
	}

	.profile-main th { width:50%; }
	.profile-main td { width:50%; }

	/* SCHEDULETABLE
	--------------------------------------------------	*/
	.scheduletable td:first-child {
		background: #fbf5f5;
	}
	.scheduletable {
		width:100%;
		margin-bottom:20px;
	}
	.scheduletable th {
		background: #c42f4c;
		text-align:center;
		font-size:0.8em;
		color:#ffffff;
	}
	.scheduletable p {
		width:80px; height:25px; margin:0; padding:0; overflow:hidden; color:#ffffff;
	}
	.scheduletable td {
		background: #fffcf4;
		text-align:center;
		font-size:0.8em;
	}
	.scheduletable td:first-child {
		width:80px;
		background: #c42f4c;
		color: #fff;
		text-align: center;
	}
	.scheduletable td:before {
		content:attr(data-label);
		display:none;
	}

	/*** slider ***/
	div.slider-index {
		margin: auto;
		width: 600px;
	}
	div.slider-profile {
		margin: auto;
		width: 384px;
	}
	div.slider-for {
		margin-bottom: 16px;
	}
	div.slider-nav img {
		width: 90%;
	}

	/*** table-form ***/
	.table-form th { width:45%; }
	.table-form .mandatory{ float:right; margin-right:10px; padding:2px 4px; color:#c42f4c; font-size:0.8em; font-weight:normal; background-color:#ffffff; border:1px solid #b82441; border-radius:5px; }

	/*** girls-box ***/
	.girls-box{ height:420px; }
	.girls-box-image{ height:300px; }
	.girls-box-name{ height:40px; overflow:hidden; font-size:1.5em; }
	.girls-age{ font-size:0.7em; }

	/*** box-todaygirl ***/
	.box-todaygirl{
		width:30.6%;
		height:480px;
		margin:0.6%;
		padding:0.7%;
	}
	.box-todaygirl-name{ color:#cf364b; font-size:1.5em; }
	.box-todaygirl-name span{ font-size:0.5em; }
	.box-todaygirl-size{ font-size:0.8em; }

	.hamburger{ display:none; }

	/*** column ***/
	#column-container{ width:720px; margin:auto; }
	.column-box{
		float:left;
		width:220px;
		margin:10px;
		background-color:#ffffff;
		border-radius:15px;
		overflow:hidden;
		text-align:center;
		color:#333333;
		cursor:pointer;
		transition:all 0.5s ease 0s;
	}
	.column-box-img{ height:250px; overflow:hidden; }
	.column-box-noimg{ height:250px; overflow:hidden; display:flex; justify-content:center; align-items:center; }
	.column-box-txt{ height:200px; padding:5px; overflow:hidden; }
	.column-box p{ font-size:0.9em; text-align:left; }
	.column-box h3{ margin:0; font-weight:normal; }
	.column-box:hover{
		box-shadow:5px 5px 0 0 #cccccc;
		transform: translateY(-5px);
	}
}

/* ���X�|���V�uSP
--------------------------------------------------	*/
@media screen and (max-width:1009px){
	#wrapper{
		margin-left:auto;
		margin-right:auto;
	}

	#contents{
		margin-left:auto;
		margin-right:auto;
	}
	#contents-left{
		padding:10px;
		text-align:center;
		background-color:#ffffff;
	}
	#contents-right{
		padding:10px;
		text-align:center;
	}
	#contents-main{
		padding:20px;
		background-color:#f3ecda;
	}

	#top-menu{
		padding:0;
		margin:0;
		list-style-type: none;
		display:none;
	}

	#header-top-left{ float:left; width:33%; }
	#header-top-center{ float:left; width:34%; }
	#header-top-right{ float:left; width:23%; }
	#header-top-right img{ max-width:40%; }

	#footer ul { padding-left:2%; margin:auto; line-height:250%; }
	#footer li {
		float: left;
		width:48%;
		margin:2px;
		background:#c93652;
		border:1px solid #ffffff;
	}
	#footer li a {
		display:block;
		width:100%;
	}
	#footer li a:hover {
		background-color:#d53f5d;
	}

	.profile-schedule {
		width:98%;
		margin:auto;
	}
	.profile-schedule tr {
		display: block;
		float: left;
	}
	.profile-schedule tr td,
	.profile-schedule tr th {
		display: block;
		height: 50px;
	}
	.profile-schedule tr th {
		border-bottom:none;
	}
	.profile-schedule tr td {
		border-left: none;
		border-bottom:none;
	}
	.profile-schedule thead {
		display: block;
		float: left;
		width: 40%;
	}
	.profile-schedule thead tr {
		width: 100%;
	}
	.profile-schedule tbody {
		display: block;
		float: left;
		width: 60%;
	}
	.profile-schedule tbody tr {
		width: 100%;
	}
	.profile-schedule th {
		overflow:auto;
		text-align:left;
		border:1px solid #fdf7eb;
	}
	.profile-schedule td {
		overflow:auto;
		text-align:left;
	}
	.profile-schedule tr td + td {
		border-left: none;
	}
	.profile-schedule th:last-child {
		border-bottom:1px solid #808080;
	}
	.profile-schedule td:last-child {
		border-bottom:1px solid #808080;
	}
	.profile-schedule-img{ width:98%; margin:auto; }

	/*** profile-main ***/
	.profile-main {
		margin:auto;
		text-align:center;
	}
	.profile-main tr {
		display: block;
		float: left;
		width:100%;
	}
	.profile-main tr td,
	.profile-main tr th {
		display: block;
	}

	/* SCHEDULETABLE
	--------------------------------------------------	*/
	.scheduletable td:first-child {
		background: #fbf5f5;
	}
	.scheduletable {
		width:100%;
		margin-bottom:20px;
	}
	.scheduletable .thead {
		display: none;
	}
	.scheduletable p {
		margin:0; padding:0; color:#ffffff;
	}
	.scheduletable td {
		display: block;
		text-align: right;
		width: 100%;
		background: #fffcf4;
		border-bottom:1px dashed #808080;
	}
	.scheduletable td:first-child {
		background: #c42f4c;
		text-align:center;
		border:0;
	}
	.scheduletable td:before {
		content: attr(data-label);
		float:left;
		margin-right:10px;
	}

	/*** slider ***/
	div.slider-profile {
		margin: 40px auto;
		width: 300px;
	}
	div.slider-for {
		margin-bottom: 16px;
	}
	div.slider-nav img {
		width: 90%;
	}

	.table-form th { display: block; padding:10px; border:0; }
	.table-form td { display: block; padding:10px; }
	.table-form .mandatory{ margin-left:2px; color:#c42f4c; font-size:0.8em; font-weight:normal; }

	/* CAST-PLAY */
	.cast-play-on{
		width:22.25%;
		margin:1px;
	}
	.cast-play-off{
		width:22.2%;
		margin:1px;
	}

	/*** girls-box ***/
	.girls-box{ height:330px; }
	.girls-box-name{ height:23px; overflow:hidden; font-size:0.8em; }
	.girls-box-size{ font-size:0.65em; }
	.girls-age{ font-size:0.5em; }

	/*** schedule-date ***/
	.schedule-date{ font-size:0.8em; }

	/*** box-todaygirl ***/
	.box-todaygirl{
		width:22.0%;
		height:420px;
		margin:0.6%;
		padding:0.7%;
		font-size:0.8em;
	}
	.box-todaygirl-name{ color:#cf364b; font-size:1.0em; }
	.box-todaygirl-name span{ font-size:0.8em; }
	.box-todaygirl-size{ font-size:0.8em; }
	.box-todaygirl-sche{ margin:5px 0; color:#ffffff; background-color:#b7913c; border-radius:15px; }

	/*** column ***/
	#column-container{ margin:auto; }
	.column-box{
		float:left;
		width:31%;
		margin:1%;
		background-color:#ffffff;
		border-radius:15px;
		overflow:hidden;
		text-align:center;
		color:#333333;
		cursor:pointer;
		transition:all 0.5s ease 0s;
	}
	.column-box-img{ height:200px; overflow:hidden; }
	.column-box-noimg{ height:200px; overflow:hidden; display:flex; justify-content:center; align-items:center; }
	.column-box-txt{ height:150px; padding:5px; overflow:hidden; }
	.column-box p{ font-size:0.9em; text-align:left; margin-left:10px; }
	.column-box h3{ font-size:0.9em; margin:0; font-weight:normal; }
	.column-box:hover{
		box-shadow:5px 5px 0 0 #cccccc;
		transform: translateY(-5px);
	}
}

/* index.php
--------------------------------------------------	*/
#idx-entrance {
	width: 100%;
	margin-bottom: 20px;
	font-family: serif;
	text-align: center;
	display: flex;
	flex-direction: column;
}
#idx-entrance p {
	margin: 30px 0;
	font-size: 20px;
	color: #000000;
}
#idx-entrance-choice{
	margin: 0;
	margin-bottom: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
}
#idx-entrance-button{
	width: 250px;
	height: 60px;
	margin: 0 30px;
	Background: #c42f4c;
	border: solid 3px #ffffff;
	border-radius: 10px;
	box-shadow: 5px 5px 10px 0 #00000080;
	font-size: 20px;
	font-weight: bold;
	color: #ffffff;
	display: flex;
    justify-content: center;
    align-items: center;
}
#idx-entrance-link{
	width: 100%;
	margin-top: 40px;
	padding-top: 20px;
	border-top: 2px dotted #a61430;
	display: flex;
	flex-direction: column;
	align-items: center;
}

/* Smartphone
--------------------------------------------------	*/
@media screen and (max-width:499px){

	/* index.php
	--------------------------------------------------	*/
	#idx-entrance {
		margin-bottom: 20px;
	}
	#idx-entrance p {
		width: calc(100% - 100px);
		margin: 50px;
		font-size: 16px;
		color: #000000;
	}
	#idx-entrance-choice img{
		width: 60px;
		margin: 0 20px;
	}
	#idx-entrance-button{
		width: 120px;
		height: 60px;
		margin: 0;
		border: solid 2px #ffffff;
		border-radius: 10px;
		box-shadow: 3px 3px 8px 0 #00000080;
		font-size: 16px;
		line-height: 1.4;
	}
	#idx-entrance-link{
		margin-top: 20px;
		text-align: center;
	}
	/* footer
	--------------------------------------------------	*/
	#footer-link{
		padding-top: 10px;
		font-size: 0.9em;
	}
	#footer-link > *{
		padding: 0 8px;
	}
	#footer-link span{
		font-size: 1.0em;
	}
	#footer-link ul{
		margin-top: 10px;
	}

}
