@CHARSET "UTF-8";

.clear:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	line-height: 0;
	visibility: hidden;
}

.font-mincho {
	font-family: "Hiragino Mincho Pro", "HG明朝E", "MS 明朝", serif;
}

.font-marugo {
	font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", sans-serif;
}

.m-t-5 {
	margin-top: 5px;
}

.m-t-10 {
	margin-top: 10px;
}

.m-t-15 {
	margin-top: 15px;
}

.m-t-20 {
	margin-top: 20px;
}

.m-t-25 {
	margin-top: 25px;
}

.m-t-30 {
	margin-top: 30px;
}

.m-t-35 {
	margin-top: 35px;
}

.m-t-40 {
	margin-top: 40px;
}

.m-t-45 {
	margin-top: 45px;
}

.m-t-50 {
	margin-top: 50px;
}

.m-t-55 {
	margin-top: 55px;
}

.m-t-60 {
	margin-top: 60px;
}

.m-t-65 {
	margin-top: 65px;
}

.m-t-70 {
	margin-top: 70px;
}

.m-t-75 {
	margin-top: 75px;
}

.m-t-80 {
	margin-top: 80px;
}

.m-l-5 {
	margin-left: 5px;
}

.m-l-10 {
	margin-left: 10px;
}

.m-l-15 {
	margin-left: 15px;
}

.m-l-20 {
	margin-left: 20px;
}

.m-l-25 {
	margin-left: 25px;
}

.m-l-30 {
	margin-left: 30px;
}

.m-l-100 {
	margin-left: 100px;
}

.m-l-a {
	margin-left: auto;
}

.m-r-a {
	margin-right: auto;
}

.m-t-a {
	margin-top: auto;
}

.m-b-a {
	margin-bottom: auto;
}

.w-p-100 {
	width: 100%;
}

.w-p-95 {
	width: 95%;
}

.w-p-90 {
	width: 90%;
}

.w-p-85 {
	width: 85%;
}

.w-p-80 {
	width: 80%;
}

.w-p-75 {
	width: 75%;
}

.w-p-70 {
	width: 70%;
}

.w-p-65 {
	width: 65%;
}

.w-p-60 {
	width: 60%;
}

.w-p-55 {
	width: 55%;
}

.w-p-50 {
	width: 50%;
}

.w-p-45 {
	width: 45%;
}

.w-p-40 {
	width: 40%;
}

.w-p-35 {
	width: 35%;
}

.w-p-30 {
	width: 30%;
}

.w-p-25 {
	width: 25%;
}

.w-p-20 {
	width: 20%;
}

.w-p-15 {
	width: 15%;
}

.w-p-10 {
	width: 10%;
}

.w-p-5 {
	width: 5%;
}

.h-p-100 {
	height: 100%;
}

.h-p-95 {
	height: 95%;
}

.h-p-90 {
	height: 90%;
}

.h-p-50 {
	height: 50%;
}

.v-a-t {
	vertical-align: top;
}

.v-a-m {
	vertical-align: middle;
}

.v-a-b {
	vertical-align: bottom;
}

.v-a-tb {
	vertical-align: text-bottom;
}

.flex {
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}

.flex-wrap {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

a {
	color: inherit;
	text-decoration: none;
}

a.text {
	text-decoration: underline;
}

.align-center {
	text-align: center;
}

.align-left {
	text-align: left;
}

.align-right {
	text-align: right;
}

.italic {
	font-style: italic;
}

.bold {
	font-weight: bold;
}

.inline {
	display: inline;
}

.block {
	display: block;
}

.inline-block {
	display: inline-block;
}

.border-bottom {
	border-bottom: 1px solid #cacac9;
}

html, body, #wrapper, #header, #nav, #main, #footer {
	width: 100%;
	min-width: 1440px;
	max-width: 1920px;
	box-sizing: border-box;
	position: relative;
	margin-left: auto;
	margin-right: auto;
}

#header, #header *, #nav, #nav *, #footer, #footer *, #main .page, #main .page>* {
	z-index: 1;
	position: relative;
}

html {
	font-size: 10px;
	background-color: #000000;
	box-sizing: border-box;
}

*, *::before, *::after {
	box-sizing: inherit;
}

body {
	text-align: left;
	font-size: 14px;
	color: #fff;
	font-family: メイリオ, Meiryo, "ヒラギノ角ゴ pro w3", "hiragino kaku gothic pro", "century gothic", Arial, "ＭＳ Ｐゴシック", sans-serif;
	background: url("../img/base/background.jpg") center top repeat-y;
}

.container {
	width: 1440px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}

.container.relative {
	position: relative;
}

h2.title {

}

#wrapper {

}

#header {
	text-align: center;
	position: relative;
}

#header .video-wrap {
	padding: 30px 30px 30px;
	background: rgba(107, 107, 107, 0.6);
	margin-bottom: 15px;
}

#header .header-comment {
	width: 100%;
	height: 50px;
	padding: 5px 2px;
	max-width: 1920px;
	right: 0;
	margin: 0 auto;
}

#header .header-text1 {
	position: absolute;
	top: 160px;
	left: 410px;
	z-index: 1;
}

#header .header-text2 {
	position: absolute;
	top: 680px;
	left: 0;
	z-index: 1;
	width: 100%;
}

#header .container {

}

#header .movie-bg {
	background: url("../img/base/header_movie_bg.jpg") center top/100% 100% no-repeat;
	width: 880px;
	height: 506px;
	padding: 20px;
	position: absolute;
	top: 80px;
	left: 0;
	right: 0;
	margin: 0 auto;
}

#header h1.title {
	top: 500px;
	left: 0;
	right: 0;
	margin: 0 auto;
}

#header .shop-info {
	position: absolute;
	top: 510px;
	left: 560px;
	width: 600px;
}

#header .header-left {
	position: absolute;
	top: 100px;
	left: -200px;
}

#header .header-right {
	position: absolute;
	top: 20px;
	right: -40px;
}

#footer {
	padding: 15px 0 15px;
	box-sizing: border-box;
	background: url("../img/base/footer_bg.jpg") center top no-repeat;
	height: 209px;
	color: #fff;
	font-size: 16px;
	text-align: center;
	position: relative;
}

#footer .container {

}

#footer .footer-nav-list {

}

#footer .footer-nav-list .item {
	display: inline-block;
}

#footer .footer-nav-list .item:after {
	content: '|';
	display: inline;
	margin: 0 10px;
}

#footer .footer-nav-list .item:last-child:after {
	content: none;
}

#footer .copyright {
	font-size: 16px;
}

#nav {
	background: url("../img/base/menu_bg.png") center top no-repeat;
	width: 100%;
	height: 91px;
}

#nav .nav-list {

}

#nav .nav-list .item {
	width: 158px;
	height: 98px;
	margin: -23px 1px 0;
	background-position: center top;
	background-repeat: no-repeat;
}

#nav .nav-list .item a, #nav .nav-list .item img {
	display: block;
}

#nav .nav-list .item a, #nav .nav-list .item img {

}

#nav .nav-list .item a:hover {
	opacity: 0;
	animation: 1s;
}

.text-bg {
	background: url("../img/base/text_bg.jpg") center top repeat;
}

.bottom-contents {
	padding: 60px 0;
}

.bottom-contents .banner-item {
	margin: 0 2px;
}

.cast-list .cast {
	background: url("../img/top/schedule_girl_bg.png") center top no-repeat;
	width: 250px;
	height: 500px;
	padding: 15px 13px;
	margin: 0 19px 30px;
}

.cast-list .cast .time {
	border: 1px solid red;
	height: 48px;
	line-height: 48px;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}

.cast-list .cast .photo {
	position: relative;
	width: 100%;
	margin-top: 10px;
	overflow: hidden;
}

.cast-list .cast .photo a {
	height: 100%;
	width: 100%;
	display: block;
}

.cast-list .cast .photo img {
	display: block;
}

.cast-list .cast .photo .icon-movie {
	position: absolute;
	right: 5px;
	bottom: 5px;
	width: 25%;
}

.cast-list .cast .profile {
	margin-top: 10px;
	border: 1px solid red;
	color: #fff;
	padding: 7px 0;
	text-align: center;
	line-height: 1.5;
	font-size: 16px;
}

.cast-list .cast .name {
	font-weight: bold;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.cast-list .cast .size {
	font-size: 15px;
}

#movie {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 100%;
	z-index: 0;
	min-width: 1440px;
	max-width: 1920px;
}

#movie .video-wrap {
	width: 100%;
	position: relative;
	/*padding-top:56.4%;*/
	/*overflow:hidden;*/
}

#movie video {
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

.page-top {
	position: relative;
	margin-top: -11px;
	z-index: 1;
}

.page-top .top-slider, .page-top .top-slider2 {
	width: 48%;
}

.page-top .top-banner2 .top-banner2-list {
	margin-left: -0.5%;
	margin-right: -0.5%;
}

.page-top .top-banner2 .top-banner2-list .item {
	width: 48%;
	margin: 0 1% 15px;
}

.page-top .flex-control-nav {
	width: 100%;
	position: static;
	margin-top: 15px;
}

.page-top .flex-control-paging li a {
	background: #fff;
	background: rgba(255, 255, 255, 0.5);
	width: 18px;
	height: 18px;
}

.page-top .flex-control-paging li a.flex-active {
	background: #fff;
	background: rgba(255, 255, 255, 0.9);
}

.page-top .top-banner .flex-control-paging li a:hover {
	background: #f00;
	background: rgba(255, 255, 255, 0.7);
}

.page-top .bg:last-child {
	margin-bottom: 0;
}

.page-top .bg>div {
	padding: 60px 0;
}

.page-top .top-nav {
	background: url("../img/top/nav_bg.png") center top repeat-x;
	height: 50px;
	z-index: 9 !important;
	position: sticky !important;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 100%;
	min-width: 1440px;
	max-width: 1920px;
	/* visibility: hidden; */
	display: none;
}

.page-top .top-nav.is_stuck {
	visibility: visible;
}

.page-top .top-nav .top-nav-list {
	justify-content: center;
}

.page-top .top-nav .top-nav-list .item {
	margin: 0 0;
	cursor: pointer;
}

.page-top .pickup {
	width: 460px;
	margin-left: auto;
	margin-right: auto;
}

.page-top .pickup-bg {
	background: url("../img/top/pickup_bg.png") center top no-repeat;
	height: 993px;
	padding: 30px 0;
}

.page-top .pickup .photo {
	background: url("../img/top/pickup_girl_bg.png") center top no-repeat;
	width: 430px;
	margin-left: 20px;
	padding: 20px 20px;
	position: relative;
}

.page-top .pickup .photo .inner {
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.page-top .pickup .photo .icon-movie {
	position: absolute;
	right: 5px;
	bottom: 5px;
	width: 25%;
}

.page-top .pickup .cast {
	background: url(../img/top/pickup_girl_bg.png) center top/100% 100% no-repeat;
	padding: 30px 80px;
}

.page-top .pickup .cast .photo {
	margin: 0 auto;
	padding: 0;
	background: none;
	width: 100%;
}

.page-top .pickup .cast .photo a {
	display: block;
	position: relative;
	overflow: hidden
}

.page-top .pickup .cast .photo a::before {
	content: '';
	display: block;
	padding-top: 133.3%;
}

.page-top .pickup .cast .photo a img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

.page-top .pickup .profile {
	width: 620px;
}

.page-top .pickup .profile .name-group {
	border: 2px solid red;
	height: 98px;
	padding: 20px 15px;
	position: relative;
}

.page-top .pickup .profile .name-group .button {
	position: absolute;
	right: 15px;
	top: 13px;
}

.page-top .pickup .profile .name-group .name {
	font-size: 26px;
}

.page-top .pickup .profile .name-group .size {
	font-size: 20px;
	margin-top: 10px;
}

.page-top .pickup .profile .owner-comment {
	border: 2px solid red;
	height: 530px;
	padding: 5px 5px 5px 15px;
	font-size: 16px;
	line-height: 1.6;
}

.page-top .pickup .profile .owner-comment .inner {
	width: 100%;
	height: 100%;
	overflow-y: auto;
	padding: 10px 0;
	padding-right: 5px;
}

.page-top .pickup .cast .profile {
	text-align: center;
	padding: 7px 0;
	line-height: 1.5;
	font-size: 16px;
	border: 1px solid white;
	background: rgba(255, 255, 255, 0.5);
	color: #000;
	width: 100%;
	margin-top: 30px;
}

.page-top .pickup .cast .profile .name {
	font-weight: bold;
}

.page-top .info-bg {
	padding: 60px 0;
}

.page-top .info .info-list {
	width: 1000px;
	height: 620px;
	border: 2px solid red;
	margin-left: auto;
	margin-right: auto;
	overflow-y: auto;
	padding: 15px 10px;
}

.page-top .info .info-list .item {
	border-bottom: 1px solid red;
	padding-bottom: 30px;
	margin-bottom: 30px;
}

.page-top .info .info-list .item:last-child {
	border-bottom: none;
}

.page-top .info .info-list .item .photo {
	width: 30%;
}

.page-top .info .info-list .item .body {
	width: 70%;
	padding-left: 15px;
}

.page-top .info .info-list .item .head {
	background: red;
	color: #fff;
	font-weight: bold;
	padding: 10px 15px;
}

.page-top .info .info-list .item .head .date {
	font-size: 16px;
	line-height: 1.6;
}

.page-top .info .info-list .item .head .title {
	font-size: 15px;
	line-height: 1.6;
}

.page-top .info .info-list .item .body .detail {
	line-height: 1.6;
	overflow-y: auto;
	padding-top: 15px;
}

.page-top .widget {
	height: 856px;
}

.page-top .widget .widget-list {
	text-align: center;
}

.page-top .widget .widget-list .item {
	width: 430px;
	display: inline-block;
	margin: 0 15px;
	vertical-align: top;
}

.page-top .widget .widget-list .item .widget-wrap {
	border: 1px solid red;
	padding: 5px 5px;
	background: #fff;
	margin: 0 auto;
	height: 380px;
	width: 100%;
}

.page-top .widget .widget-list .item .widget-wrap iframe {
	width: 100%;
	height: 100%;
}

.page-top .slick-dots {
	position: static;
	margin-top: 15px;
}

.page-top .slick-dots li {
	width: 20px;
	height: 20px;
}

.page-top .slick-dots li button {
	color: #000;
	width: 100%;
	height: 100%;
	background: #fff;
	border-radius: 100px;
	opacity: 0.5;
}

.page-top .slick-dots li.slick-active button {
	opacity: 1;
}

.page-top .slick-dots li button:before {
	content: none;
}

.page-top .slick-arrow {
	zoom: 2;
}

.page-top .ranking-list .cast {
	background: url(../img/top/ranking_bg.png) center top/100% 100% no-repeat;
	width: 24%;
	padding: 15px;
	margin: 0 0.5%;
	height: auto;
}

.page-top .ranking-list .cast .photo {
	position: relative;
}

.page-top .ranking-list .cast .photo a {
	display: block;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.page-top .ranking-list .cast .photo a::before {
	content: '';
	display: block;
	padding-top: 133.3%;
	width: 100%;
}

.page-top .ranking-list .cast .photo a>img {
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
}

.page-top .ranking-list .cast .photo a .icon-movie {
	position: absolute;
	right: 5px;
	bottom: 5px;
	width: 25%;
	display: block;
}

.page-top .ranking-list .cast .photo a .icon-ranking {
	position: absolute;
	left: 5px;
	bottom: 5px;
	width: 25%;
	display: block;
}

.page-top .ranking-list .cast .profile {
	width: 100%;
	text-align: center;
	padding: 7px 0;
	line-height: 1.5;
	font-size: 16px;
	margin-top: 10px;
	border: 1px solid white;
	background: rgba(255, 255, 255, 0.5);
	color: #000;
}

.page-top .ranking-list .cast .profile .name {
	font-weight: bold;
}

.page-top .newface {

}

.page-top .newface-list {
	text-align: center;
}

.page-top .newface-list .cast {
	background: url(../img/top/newface_girl_bg.png) center top/100% 100% no-repeat;
	width: 24%;
	height: auto;
	padding: 15px;
	margin: 0 0.5%;
}

.page-top .newface-list .cast .date {
	height: 50px;
	font-weight: bold;
	text-align: center;
	border: 1px solid white;
	background: rgba(255, 255, 255, 0.5);
	color: #000;
	font-size: 18px;
	line-height: 1;
}

.page-top .newface-list .cast .date img {
	vertical-align: text-bottom;
}

.page-top .newface-list .cast .photo {
	margin-top: 10px;
	position: relative;
}

.page-top .newface-list .cast .photo a {
	display: block;
	overflow: hidden;
	position: relative;
}

.page-top .newface-list .cast .photo a::before {
	content: '';
	display: block;
	padding-top: 133.3%;
}

.page-top .newface-list .cast .photo a>img {
	position: absolute;
	top: 0;
	left: 0;
}

.page-top .newface-list .cast .photo a .icon-movie {
	position: absolute;
	right: 5px;
	bottom: 5px;
}

.page-top .newface-list .cast .profile {
	width: 100%;
	text-align: center;
	padding: 7px 0;
	line-height: 1.5;
	font-size: 16px;
	margin-top: 10px;
	border: 1px solid white;
	background: rgba(255, 255, 255, 0.5);
	color: #000;
}

.page-top .newface-list .cast .profile .name {
	font-weight: bold;
}

.page-top .schedule h2.title {
	position: relative;
}

.page-top .schedule h2.title:before {
	content: '';
	background: url("../img/top/schedule_img.png") no-repeat;
	width: 245px;
	height: 318px;
	position: absolute;
	top: 0;
	left: 0;
}

.page-top .schedule .date-list {
	text-align: center;
}

.page-top .schedule .date-list .item {
	display: inline-block;
	margin: 0 5px;
	background: url("../img/top/schedule_date_bg_on.png") center top no-repeat;
	width: 186px;
	height: 58px;
	line-height: 58px;
	color: #fff500;
	font-weight: bold;
	font-size: 18px;
}

.page-top .schedule .date-list .item a {
	display: block;
	background: url("../img/top/schedule_date_bg_off.png") center top no-repeat;
	width: 100%;
	height: 100%;
}

.page-top .schedule .date-list .item a:hover {
	background: none;
	color: red;
}

/* other page */
.page-system .text-shadow {
	text-shadow: 2px 2px 1px #000, 2px -2px 1px #000, -2px 2px 1px #000, -2px -2px 1px #000, 2px 0px 1px #000, -2px 0px 1px #000, 0px 2px 1px #000, 0px -2px 1px #000;
}

.page-system .container {
	width: 1200px;
}

.page-system .price-bg {
	background: url("../img/system/price_bg.png") center 20px no-repeat;
}

.page-system .price-list {
	margin-left: auto;
	margin-right: auto;
	table-layout: fixed;
}

.page-system .price-list .item {
	text-align: right;
	padding: 15px 30px;
	vertical-align: bottom;
}

.page-system .price-list .label {
	color: #fff;
	font-weight: bold;
	font-size: 30px;
}

.page-system .price-list .value {
	color: #fffd00;
	font-weight: bold;
	font-size: 32px;
}

.page-system .other-price-list {
	margin-left: auto;
	margin-right: auto;
	table-layout: fixed;
}

.page-system .other-price-list .item {
	text-align: left;
	padding: 15px 30px;
	vertical-align: bottom;
}

.page-system .other-price-list .label {
	color: #fff;
	font-weight: bold;
	font-size: 28px;
}

.page-system .other-price-list .value {
	color: #fffd00;
	font-weight: bold;
	font-size: 32px;
}

.page-system .play-list {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.page-system .play-list .item {
	display: inline-block;
	text-align: center;
	margin: 5px;
}

.page-system .play .course-80 {
	padding-bottom: 60px;
	background: url("../img/system/basic-play_bg.png") center bottom no-repeat;
	background-color: transparent;
	height: 520px;
}

.page-system .play .course-80 .text {
	color: #fff;
	font-size: 18px;
	line-height: 4;
	font-weight: bold;
}

.page-system .play .course-80 img.text {
	vertical-align: middle;
	margin: 0 10px;
}

.page-system .free-option .option-list {
	text-align: center;
}

.page-system .free-option .option-list .item {
	display: inline-block;
	margin: 10px;
}

.page-system .option .option-list {
	text-align: center;
	width: 85%;
	margin-left: auto;
	margin-right: auto;
}

.page-system .option .option-list .item {
	margin: 0 auto 15px;
	width: 31%;
}

.page-system .option .option-list .item .label {
	background: deeppink;
	border: 2px solid red;
	padding: 7px 0;
	height: 50px;
}

.page-system .option .option-list .item .value {
	border: 2px solid red;
	border-top: none;
	background: #fff;
	color: #000;
	font-size: 30px;
	font-weight: bold;
	line-height: 50px;
}

.page-system .option .option-list.other .item .label {
	background: #c51dbf;
}

.page-system .rule-list {
	list-style-type: square;
}

.page-system .rule-list .item {
	margin: 15px 0;
	font-size: 16px;
}

.page-system .card {
	font-size: 16px;
	line-height: 1.8;
	font-weight: bold;
}

.page-concept .concept1 {
	background: url('../img/concept/concept_bg1.png') center top no-repeat;
}

.page-concept .concept2 {
	background: url('../img/concept/concept_bg2.png') center 270px no-repeat;
	margin-top: -100px;
	padding-top: 100px;
}

.page-concept .concept3 {
	background: url('../img/concept/concept_bg3.png') center 150px no-repeat;
}

.page-concept .concept4 {
	background: url('../img/concept/concept_bg4.png') center top no-repeat;
}

.page-concept .concept3 .concept3-list {
	text-align: center;
}

.page-concept .concept3 .concept3-list .item {
	display: inline-block;
	margin: 15px;
}

/* guide */
.page-guide p.text1 {
	color: #fff;
	font-size: 24px;
	line-height: 2.2;
	font-weight: bold;
}

.page-guide p.text2 {
	color: #fffd0a;
	font-size: 24px;
	line-height: 2.2;
	font-weight: bold;
}

.page-guide .message {
	font-size: 18px;
	line-height: 2.2;
	text-align: center;
}

.page-guide .message .tel {
	font-size: 40px;
	font-weight: bold;
}

.page-guide .message .tel img {
	vertical-align: sub;
}

.page-guide .step-list {

}

.page-guide .step-list .item {
	margin-bottom: 30px;
}

.page-guide .step-list .item .body {
	margin-top: 15px;
}

.page-guide .step-list .item .body .text {
	color: #fff;
	font-size: 22px;
	line-height: 1.8;
	font-weight: bold;
	padding-right: 15px;
	width: 600px;
}

.page-guide .step-list .item .body .img {
	width: 400px;
}

.page-schedule h2.title {
	position: relative;
}

.page-schedule h2.title:before {
	content: '';
	background: url("../img/top/schedule_img.png") no-repeat;
	width: 245px;
	height: 318px;
	position: absolute;
	top: 0;
	left: 0;
}

.page-schedule .date-list {
	text-align: center;
	position: relative;
}

.page-schedule .date-list .item {
	display: inline-block;
	margin: 0 5px;
	background: url("../img/top/schedule_date_bg_on.png") center top no-repeat;
	width: 186px;
	height: 58px;
	line-height: 58px;
	color: #fff500;
	font-weight: bold;
	font-size: 18px;
}

.page-schedule .date-list .item a {
	display: block;
	background: url("../img/top/schedule_date_bg_off.png") center top no-repeat;
	width: 100%;
	height: 100%;
}

.page-schedule .date-list .item a:hover {
	background: none;
	color: red;
}

.page-recruit {

}

.page-recruit .text {
	font-size: 18px;
	line-height: 2.2;
}

.page-recruit .recruit1 {
	padding-top: 40px;
	padding-left: 350px;
	position: relative;
}

.page-recruit .recruit1 h3.title {
	margin-left: 140px;
}

.page-recruit .entry-list {
	border-collapse: separate;
	border-spacing: 10px 10px;
	width: 1000px;
	margin-left: auto;
	margin-right: auto;
}

.page-recruit .entry-list .item {
	font-size: 18px;
	font-weight: bold;
	vertical-align: middle;
	padding: 15px;
	line-height: 1.8;
}

.page-recruit .entry-list .label {
	background: #fa59b2;
	color: #fff;
	width: 25%;
}

.page-recruit .entry-list .value {
	color: #fa59b2;
	background: #fff;
	width: 85%;
}

.page-profile {

}

.page-profile .container {
	width: 1000px;
}

.page-profile .profile1 .photo-bg {
	background: url("../img/profile/girl_bg.png") center top no-repeat;
	width: 330px;
	height: 630px;
	padding: 15px 15px;
}

.page-profile .profile1 .photo-bg .photo {

}

.page-profile .profile1 .photo-bg .photo-list {
	margin: 5px -5px 0;
}

.page-profile .profile1 .photo-list .item {
	width: 100px;
	margin: 0 5px;
}

.page-profile .profile {
	padding-left: 40px;
	width: 660px;
}

.page-profile .profile .comment {
	height: 55px;
	color: yellow;
	background: red;
	border: 2px solid yellow;
	width: 100%;
	font-size: 20px;
	line-height: 55px;
	padding: 0 2px;
}

.page-profile .profile .name-group {
	border: 2px solid red;
	height: 100px;
	padding: 20px 15px;
	position: relative;
}

.page-profile .name-group .name {
	font-size: 26px;
}

.page-profile .name-group .size {
	font-size: 18px;
}

.page-profile .schedule-list {
	width: 100%;
}

.page-profile .schedule-list .item {
	border: 2px solid red;
	color: yellow;
	font-size: 18px;
	height: 40px;
	width: 50%;
	text-align: center;
	vertical-align: middle;
}

.page-profile .schedule-list .label {
	background: #b219ac;
}

.page-profile .schedule-list .value {
	font-weight: bold;
	background: #000;
}

.page-profile .owner-comment {
	width: 1000px;
	margin-left: auto;
	margin-right: auto;
}

.page-profile .owner-comment .detail {
	box-sizing: border-box;
	font-size: 16px;
	line-height: 1.8;
	text-align: left;
	color: #fff;
	padding: 10px;
	background: #000;
	border: 2px solid #c50718;
}

.page-profile .qa-list {
	width: 100%;
}

.page-profile .qa-list .item {
	border: 2px solid red;
	color: yellow;
	font-size: 16px;
	width: 50%;
	text-align: left;
	vertical-align: middle;
	line-height: 1.6;
	padding: 10px 15px;
}

.page-profile .qa-list .label {
	background: #b219ac;
}

.page-profile .qa-list .value {
	background: #000;
	color: #fff;
}

.page-profile .option-list {

}

.page-profile .option-list .item {
	font-size: 16px;
	text-align: left;
	height: 45px;
	margin: 10px 1%;
	width: 48%;
	display: flex;
	border: 2px solid #c50718;
}

.page-profile .option-list .label {
	text-align: left;
	width: 85%;
	background: #b219ac;
	color: yellow;
	line-height: 45px;
	padding: 0 15px;
}

.page-profile .option-list .value {
	width: 15%;
	font-size: 26px;
	background: #000;
	color: #fff;
	text-align: center;
	line-height: 45px;
}

.page-info .info-list {
	width: 1000px;
	border: 2px solid red;
	margin-left: auto;
	margin-right: auto;
	padding: 15px 10px;
}

.page-info .info-list .item {
	border-bottom: 1px solid red;
	padding-bottom: 30px;
	margin-bottom: 30px;
}

.page-info .info-list .item:last-child {
	border-bottom: none;
}

.page-info .info-list .item .photo {
	width: 30%;
}

.page-info .info-list .item .body {
	width: 70%;
	padding-left: 15px;
}

.page-info .info-list .item .head {
	background: red;
	color: #fff;
	font-weight: bold;
	padding: 10px 15px;
}

.page-info .info-list .item .head .date {
	font-size: 16px;
	line-height: 1.6;
}

.page-info .info-list .item .head .title {
	font-size: 15px;
	line-height: 1.6;
}

.page-info .info-list .item .body .detail {
	width: 65%;
	line-height: 1.6;
	overflow-y: auto;
	padding-top: 15px;
}

.page-newface .newface-list {
	text-align: center;
	width: 1140px;
	margin-left: auto;
	margin-right: auto;
}

.page-newface .newface-list .cast {
	box-sizing: border-box;
	width: 19%;
	margin: 0 0.5% 20px;
	text-align: center;
	position: relative;
}

.page-newface .newface-list .cast .icon-course {
	border: 1px solid #ff6123;
	border-radius: 30px;
	padding: 3px 0;
	height: 30px;
}

.page-newface .newface-list .cast .icon-course img {
	width: 80px;
}

.page-newface .newface-list .cast .icon-course.vip {
	border-color: #8d051b;
}

.page-newface .newface-list .cast .date {
	margin-top: 10px;
	border: 1px solid #fda2c1;
	border-radius: 10px;
	line-height: 30px;
	display: flex;
	height: 30px;
}

.page-newface .newface-list .cast .date .label {
	border-radius: 7px;
	background: #fda2c1;
	color: #fff;
	font-weight: bold;
	font-size: 15px;
	text-align: center;
	width: 35%;
}

.page-newface .newface-list .cast .date .value {
	font-size: 14px;
	text-align: center;
	width: 65%;
	font-weight: bold;
}

.page-newface .newface-list .cast .photo {
	position: relative;
	height: 318px;
	border: 7px solid #e684a7;
	border-radius: 20px;
	overflow: hidden;
	margin-top: 10px;
}

.page-newface .newface-list .cast .photo .inner {
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
}

.page-newface .newface-list .cast .photo img {
	display: block;
}

.page-newface .newface-list .cast .profile {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	text-align: center;
	padding: 7px 10px;
	color: #fff;
	line-height: 1.3;
	font-size: 16px;
	background: rgba(223, 94, 138, 0.7);
}

.page-newface .newface-list .cast .profile .name {
	font-weight: bold;
}

.page-newface .newface-list .cast .profile .icon-new {
	position: absolute;
	top: -78%;
	left: 1px;
	width: 20%;
}

.page-movie .movie-list .item {
	width: 48%;
	margin: 0 1% 40px;
}

.page-movie .movie-list .item .title {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}

.page-movie .movie-list .item .movie {
	margin-top: 20px;
	background: #000;
	width: 100%;
	height: 330px;
	position: relative;
}

.page-link {

}

.page-link .container {
	width: 1000px;
}

.page-link .message {
	font-size: 16px;
	line-height: 2.2;
	text-align: center;
}

.page-link .shop-info {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

.page-link .shop-info .item {
	border: 1px solid red;
	background: #fff;
	color: #000;
	font-size: 26px;
	padding: 15px;
}

.page-link .shop-info .label {
	text-align: center;
}

.page-link .shop-info .value {
	text-align: left;
}

.page-link .link-banner-list {
	width: 100%;
	border-spacing: 20px 0;
	border-collapse: separate;
}

.page-link .link-banner-list thead th {
	border-bottom: 5px solid red;
	font-size: 26px;
	line-height: 1.4;
	color: #fff;
	font-weight: bold;
}

.page-link .link-banner-list tbody td {
	font-size: 22px;
	color: #fff;
	font-weight: bold;
	padding-bottom: 20px;
	padding-top: 20px;
	width: 50%;
}

.page-link .link-banner-list .size {
	margin-top: 10px;
	font-size: 18px;
	font-weight: bold;
	color: #fff;
}

.page-link .link-banner-list .banner {
	padding: 10px 0;
	vertical-align: top;
}

.page-link .link-banner-list .banner img {
	max-width: 100%;
}

.page-link .link-banner-list .tag {
	line-height: 1.6;
	text-align: left;
	font-size: 16px;
	padding: 15px;
	border-radius: 10px;
	border: 1px solid #a0a0a0;
}

.page-link .link-title {
	font-size: 22px;
	color: #fff;
	font-weight: bold;
	border-bottom: 5px solid red;
	margin-bottom: 15px;
	line-height: 1.6;
}

.page-event .event-list {
	width: 1000px;
	margin: 0 auto;
}

.page-event .event-list .item {
	box-sizing: border-box;
	width: 100%;
	text-align: left;
	padding: 30px 0;
	margin-bottom: 60px;
}

.page-event .event-list .item .head {
	background: #fda2c1;
	padding: 15px 30px;
	border-radius: 10px;
}

.page-event .event-list .item .head .date {
	font-size: 16px;
}

.page-event .event-list .item .head .title {
	box-sizing: border-box;
	font-size: 18px;
	line-height: 1.6;
	margin-top: 5px;
	font-weight: bold;
}

.page-event .event-list .item .body {
	padding: 15px 0;
}

.page-event .event-list .item .body>.photo {
	text-align: center;
	margin-top: 40px;
}

.page-event .event-list .item .body>.photo img {
	max-width: 100%;
}

.page-event .event-list .item .detail {
	margin-top: 40px;
	padding: 0 100px;
	text-align: left;
}

.page-event .event-list .item .detail * {
	line-height: 160%;
}

.page-cast .cast-list .cast {
	background-size: 100% 100%;
	height: 440px;
}

.page-cast .cast-list .cast .photo {
	margin-top: 0;
}

.page-contact {

}

.page-contact .message {
	font-size: 16px;
	line-height: 2;
	text-align: center;
}

.page-contact .form-list {
	/*border-collapse:separate;
	border-spacing:5px;*/
	width: 900px;
	margin: 20px auto;
}

.page-contact .form-list .label, .page-contact .form-list .value {
	font-size: 18px;
	text-align: left;
	line-height: 150%;
	padding: 15px;
	vertical-align: top;
	border: 1px solid red;
}

.page-contact .form-list .label {
	box-sizing: border-box;
	font-weight: bold;
	width: 30%;
	background: #000;
}

.page-contact .form-list .label .required {
	color: red;
}

.page-contact .form-list .value {
	box-sizing: border-box;
	padding: 2%;
	width: 70%;
	background: #313131;
}

.page-contact .form-list input[type="text"], .page-contact .form-list input[type="email"], .page-contact .form-list input[type="tel"] {
	width: 100%;
	box-sizing: border-box;
	height: 40px;
	padding: 5px;
	font-size: 16px;
	border: 1px solid #fd77a5;
}

.page-contact .form-list select {
	box-sizing: border-box;
	height: 40px;
	padding: 5px;
	font-size: 16px;
	border: 1px solid #fd77a5;
}

.page-contact .form-list textarea {
	width: 100%;
	box-sizing: border-box;
	font-size: 16px;
	border: 1px solid #fd77a5;
}

.page-contact .submit {
	padding: 0;
	border: none;
	background: none;
}

.page-enquete .container {
	width: 1000px;
}

.page-enquete .message {
	font-size: 18px;
	line-height: 1.8;
	text-align: center;
}

.page-enquete .form-list {
	/*border-collapse:separate;
	border-spacing:5px;*/
	width: 100%;
}

.page-enquete .form-list .label, .page-enquete .form-list .value {
	padding: 15px;
	font-size: 18px;
	text-align: left;
	line-height: 1.8;
	vertical-align: top;
	border: 1px solid red;
}

.page-enquete .form-list .label {
	box-sizing: border-box;
	font-weight: bold;
	width: 30%;
	background: #000;
}

.page-enquete .form-list .value {
	box-sizing: border-box;
	width: 70%;
	color: yellow;
	background: #313131;
}

.page-enquete .enquete-form input[type="text"], .page-enquete .enquete-form input[type="email"], .page-enquete .enquete-form input[type="tel"] {
	width: 100%;
	box-sizing: border-box;
	height: 40px;
	padding: 5px;
	border: 1px solid #a5a5a5;
}

.page-enquete .enquete-form input[type="date"], .page-enquete .enquete-form select {
	box-sizing: border-box;
	height: 40px;
	padding: 5px;
	border: 1px solid #a5a5a5;
}

.page-enquete .enquete-form select {
	width: 100px;
}

.page-enquete .enquete-form textarea {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #a5a5a5;
	height: 160px;
}

.page-enquete .enquete-form label {
	display: inline-block;
}

.page-enquete .enquete-form .discription {
	color: red;
}

.page-enquete .enquete-form .submit {
	padding: 0;
	border: none;
	background: none;
}

.page-costume {

}

.page-costume .costume-list {
	padding: 0 19px;
}

.page-costume .costume-list .item {
	background: url("../img/costume/costume_bg.png") center top no-repeat;
	width: 250px;
	height: 420px;
	padding: 15px;
	margin: 15px;
}

.page-costume .costume-list .item .photo {

}

.page-costume .costume-list .item .name {
	border: 1px solid red;
	color: #fff;
	font-weight: bold;
	font-size: 18px;
	height: 50px;
	line-height: 50px;
	margin-top: 10px;
	text-align: center;
}

@CHARSET "UTF-8";

#main_contents .container {
	max-width: 1000px;
}

#main_contents .top-nav .container {
	max-width: 1440px;
}

h2.title img {
	transform: scale(0.7);
	transform-origin: 50% 100%;
	max-width: 100%;
}

.w-p-100 {
	width: 100%;
}

.mw-p-100 {
	max-width: 100%;
}

.p-t-0 {
	padding-top: 0 !important;
}

.p-b-0 {
	padding-bottom: 0 !important;
}

.flex.center {
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.flex.left {
	-webkit-box-pack: start;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}

.flex.right {
	-webkit-box-pack: end;
	-webkit-justify-content: flex-end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.flex.space-between {
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.flex.space-around {
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
}

.flex.top {
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}

.flex.bottom {
	-webkit-box-align: end;
	-webkit-align-items: flex-end;
	-ms-flex-align: end;
	align-items: flex-end;
}

.flex.middle {
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

.flex.baseline {
	-webkit-box-align: baseline;
	-webkit-align-items: baseline;
	-ms-flex-align: baseline;
	align-items: baseline;
}

body {
	background-image: url("../img/base/background.jpg");
}

#header .container {
	height: auto;
}

#header .header-comment {
	background: #fe0000;
	border-top: 3px solid #fdfd02;
	border-bottom: 3px solid #fdfd02;
	padding: 2px;
}

#header .title-group {
	position: absolute;
	top: 60px;
	left: 0;
}

#header .text3 {
	position: absolute;
	bottom: 30px;
	left: 0;
}

#header .shop-info {
	position: absolute;
	bottom: 50px;
	right: 0;
	top: auto;
	left: auto;
}

#header .headerslider {
	overflow: hidden;
	position: relative;
	height: auto;
	margin-bottom: 0;
}

#header .headerslider .header-list {
	width: 100%;
}

#main {
	background: url(../img/base/background.jpg) center 50px repeat-y;
}

#nav .nav-list .item.top {
	background-image: url("../img/base/menu_top_on.png");
}

#nav .nav-list .item.concept {
	background-image: url("../img/base/menu_concept_on.png");
}

#nav .nav-list .item.system {
	background-image: url("../img/base/menu_system_on.png");
}

#nav .nav-list .item.movie {
	background-image: url("../img/base/menu_movie_on.png");
}

#nav .nav-list .item.cast {
	background-image: url("../img/base/menu_cast_on.png");
}

#nav .nav-list .item.schedule {
	background-image: url("../img/base/menu_schedule_on.png");
}

#nav .nav-list .item.guide {
	background-image: url("../img/base/menu_guide_on.png");
}

#nav .nav-list .item.recruit {
	background-image: url("../img/base/menu_recruit_on.png");
}

#nav .nav-list .item.enquete {
	background-image: url("../img/base/menu_enquete_on.png");
}

#nav .nav-list .item.link {
	background-image: url("../img/base/menu_link_on.png");
}

.page-top .top-nav {
	z-index: 99999 !important;
}

.page-top .bg {
	background: none;
	margin-bottom: 0;
}

.page-top .bg>div {
	padding-top: 0;
	padding-bottom: 0;
}

.page-top .event-banner-list .item {
	margin-bottom: 15px;
}

.page-top .banner .flex-control-paging li a {
	background: #f00;
	background: rgba(255, 0, 0, 0.5);
	width: 20px;
	height: 20px;
}

.page-top .banner .flex-control-paging li a.flex-active {
	background: #f00;
	background: rgba(255, 0, 0, 0.9);
}

.page-top .banner .flex-control-paging li a:hover {
	background: #f00;
	background: rgba(255, 0, 0, 0.7);
}

.page-top .top2 .movie {
	width: 570px;
	flex: 0 0 auto;
}

.page-top .top2 .movie-banner {
	width: 420px;
}

.page-top .top2 .movie-banner .movie-banner-list .item {
	margin-bottom: 15px;
}

.page-top .top2 .movie .movie-bg {
	background: url("../img/top/movie_bg.jpg") center top no-repeat;
	padding: 5px 10px;
	width: 100%;
}

.page-top .top2 .movie .movie-bg .video-wrap {
	background: #000;
	padding-top: 56.25%;
	position: relative;
}

.page-top .top2 .movie .movie-bg .video-wrap video {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	margin: auto;
}

.page-top .top2 .review {
	width: 464px;
	height: 695px;
	background: url("../img/top/review_bg.png");
	padding: 10px;
	margin-left: 30px;
}

.page-top .top2 .review .review-list {
	background: white;
	padding: 15px;
	height: calc(100% - 76px);
	overflow-y: scroll;
	margin-top: 15px;
}

.page-top .top2 .review .review-list .item {
	margin-bottom: 15px;
}

.page-top .top2 .review .review-list .item .icon {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background-size: cover;
	background-position: center center;
	margin-right: 15px;
	flex: 0 0 auto;
}

.page-top .top2 .review .review-list .item .body {
	flex: 1 1 auto;
	text-align: left;
}

.page-top .top2 .review .review-list .item .body .head {
	font-size: 14px;
	line-height: 1.5;
}

.page-top .top2 .review .review-list .item .body .head .title {
	color: #000;
	margin-right: 15px;
}

.page-top .top2 .review .review-list .item .body .head .time {
	color: #868686;
}

.page-top .top2 .review .review-list .item .body .detail {
	color: #000;
	font-size: 15px;
	line-height: 1.2;
}

.page-top .info {
	max-width: 1000px;
	flex: 1 1 auto;
	margin-right: 30px;
}

.page-top .info .info-list {
	width: 100%;
	height: 555px;
}

.page-top .info .info-list .item .body {
	width: 100%;
}

.page-top .skitter .focus_button, .page-top  .skitter .next_button, .page-top  .skitter .prev_button, .page-top  .skitter .play_pause_button {
	display: none !important;
}

.page-top .widget {
	height: auto;
}

.page-top .widget .widget-list .item {
	width: 310px;
	margin: 0;
}

.page-top .widget .widget-list .item .widget-wrap {
	border: 2px solid red;
}

.page-top .schedule h2.title:before {
	content: none;
}

.page-top .schedule .osoban h2.title:before {
	content: none;
}

.page-top .schedule .date-list .item {
	background-size: 100% 100%;
	height: 50px;
	line-height: 50px;
}

.page-top .schedule .date-list .item a {
	background: url(../img/top/schedule_date_bg_off.png) center top/100% 100% no-repeat;
	color: #481b00;
}

.page-top .schedule .date-list .item:first-child a, .page-top .schedule .date-list .item a:hover {
	background: url(../img/top/schedule_date_bg_on.png) center top/100% 100% no-repeat;
	color: #fff;
}

.cast-list .cast {
	background: url(../img/top/schedule_girl_bg.png) center top/100% 100% no-repeat;
	height: auto !important;
	width: calc(100%/ 5 - 1%);
	margin: 0 0.5% 15px;
}

.cast-list .cast .photo a {
	overflow: hidden;
	position: relative;
}

.cast-list .cast .photo a::before {
	content: '';
	display: block;
	padding-top: 133.3%;
}

.cast-list .cast .photo a img {
	position: absolute;
	top: 0;
	left: 0;
}

.cast-list .cast .time {
	border: 1px solid white;
	background: rgba(255, 255, 255, 0.5);
	color: #000;
}

.cast-list .cast .profile {
	border: 1px solid white;
	background: rgba(255, 255, 255, 0.5);
	color: #000;
}

.page-schedule h2.title:before {
	content: none;
}

.page-schedule .osoban h2.title:before {
	content: none;
}

.page-schedule .date-list .item {
	background-size: 100% 100%;
	height: 50px;
	line-height: 50px;
}

.page-schedule .date-list .item a {
	background: url(../img/top/schedule_date_bg_off.png) center top/100% 100% no-repeat;
	color: #481b00;
}

.page-schedule .date-list .item a:hover {
	background: url(../img/top/schedule_date_bg_on.png) center top/100% 100% no-repeat;
	color: #fff;
}

.page-profile .profile1 .photo-bg {
	background-size: 100% 100%;
	height: auto;
}

.page-profile .profile .comment {
	color: white;
	border: 2px solid black;
	font-weight: bold;
}

.page-profile .qa-list .item {
	color: #fff;
}

.page-profile .option-list .label {
	color: white;
}

.page-link, .page-link .link-banner-list .size, .page-link .link-banner-list thead th, .page-link .link-title {
	color: #fff;
}