/* --------------------------------------------------
 * index.html
 *
-------------------------------------------------- */
.index {
	position: relative;
	color: #fff;
}
.index-wrapper {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	overflow: auto;
	width: 100vw;
	height: 100vh;
	background: url(/img/index_bg.jpg) no-repeat center / cover rgba(0, 0, 0, 0.75);
	background-size: cover;
	background-blend-mode: darken;
}
.index-header {
	position: absolute;
	top: 60%;
	width: 100%;
}
.index-header__title {
	width: 20%;
	max-width: 339px;
	min-width: 240px;
	margin: 0 auto;
	transform: translateY(-100%);
}
.index-main {
	position: absolute;
	top: 62%;
	z-index: 3;
	width: 100%;
	margin: 0;
}
.index-button {
	display: flex;
	width: 990px;
	max-width: 90%;
	margin: 0 auto;
	padding: 0;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
}
.index-button__item {
	margin-bottom: 20px;
}
.index-button__item--text {
	width: 100%;
	order: 2;
}
.index-button__item--small {
	width: 46%;
	order: 0;
	text-align: right;
}
.index-button__item--large {
	width: 52%;
	order: 1;
}
.index-button__text {
	display: flex;
	min-height: 50px;
	margin: 0;
	justify-content: center;
	align-items: center;
}
.index-button__text--img {
	width: 50px;
}
.index-button__text--text {
	width: calc(100% - 60px);
	max-width: 280px;
	margin: 0;
	padding-left: 10px;
	font-size: 12px;
}
.index-footer {
	position: absolute;
	bottom: 10px;
	z-index: 3;
	width: 100%;
	text-align: center;
}
.index-footer__copy {
	font-size: 12px;
	margin-bottom: 0;
}
.index-footer__link {
	color: #fff;
}
.index-medium {
	position: relative;
	top: 100%;
	margin-top: -50px;
	padding-top: 80px;
	padding-bottom: 60px;
	background: rgba(0, 0, 0, 0.75);
}
.index-medium::before {
	position: absolute;
	top: 0;
    display: block;
	width: 259px;
    height: 0;
    max-width: 26%;
	padding-top: 33.12741312%;
    background: url(/img/index_bg-left.png) no-repeat left bottom;
    background-size: contain;
	content: "";
	transform: translateY(-71%);
}
.index-medium::after {
	position: absolute;
	top: 0;
	right: 0;
    display: block;
	width: 426px;
    height: 0;
    max-width: 42%;
	padding-top: 62.21126759%;
    background: url(/img/index_bg-right.png) no-repeat right bottom;
    background-size: contain;
	content: "";
	transform: translateY(-72%);
}
.index-wigets {
	display: flex;
	max-width: 588px;
	margin: 0 auto 20px;
	padding: 0;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
.index-wigets__item {
	width: 90%;
	margin: 0 auto 20px;
}
.index-fujoho__wrapper {
	overflow: hidden;
	border: 1px solid #54AD64;
}
.index-fujoho__wrapper--violet {
	border-color: #7449CF;
}
.index-fujoho__wrapper--red {
	border-color: #FF4E4E;
}
.index-fujoho__wrapper iframe {
	width: 100%;
	height: 40vh;
	display: block;
	border: none;
	box-sizing: border-box;
}
.index-banners {
	width: 90%;
	margin: 0 auto;
	padding: 0;
}
.index-banners__item {
	margin-bottom: 20px;
}
@media (min-width: 1000px) {
	.index-header {
		top: 50%;
	}
	.index-main {
		top: 54%;
	}
	.index-button__item--text {
		width: auto;
		order: 0;
	}
	.index-button__item--small {
		width: auto;
		order: 0;
	}
	.index-button__item--large {
		width: auto;
		order: 0;
	}
	.index-button__text--text {
		width: auto;
		padding-left: 10px;
	}
	.index-button__text--text {
		font-size: 14px;
	}
	.index-footer__copy {
		font-size: 14px;
	}
	.index-medium {
		padding-top: 120px;
	}
	.index-medium::before {
		height: 330px;
		padding-top: 0;
		transform: translateY(-240px);
	}
	.index-medium::after {
		height: 631px;
		padding-top: 0;
		transform: translateY(-450px);
	}
	.index-wigets__item {
		width: calc((100% - 8px) / 3);
		min-width: 190px;
	}
	.index-fujoho__wrapper iframe {
		width: calc(100% + 17px);
		height: 377px;
	}
}
@media (max-width:519px) {
	.resban {
		width: 100% !important;
	}
}

/* --------------------------------------------------
 * top.html
 *
-------------------------------------------------- */
.content-left {
	clear: both;
	float: left;
	width: 100%;
}
.content-right {
	float: left;
	width: 100%;
}
.content-left50 {
	clear: both;
	float: left;
	width: 100%;
}
.content-right50 {
	float: right;
	width: 100%;
}
.content-subst {
	margin-bottom: 10rem;
}
@media(min-width:769px){
	.content-left {
		width: calc(100% - 360px);
		padding-right: 2.4rem;
		padding-bottom: 0;
	}
	.content-right {
		width: 360px;
	}
	.content-left50, .content-right50 {
		width: calc(50% - 1.2rem);
	}
}
/*topNav*/
.content-left .topNav {
	margin-left: -2%;
}
.topNav>ul {
	list-style-type: none;
	font-size: 0;
}
.topNav li {
	display: inline-block;
	width: 23%;
	max-width: 170px;
	text-align: center;
	border: 5px solid #e5e0d6;
	background: #fff;
	margin-left: 2%;
	margin-bottom: 3%;
	padding: 0;
	font-size: 1.8rem;
	font-weight: bold;
}
@media(min-width:760px) and (max-width:768px) {
	.topNav>ul {
		margin-right: -2%;
		margin-left: 2%;
	}
	.topNav li {
		margin-left: 0;
		margin-right: calc(25% - 170px);
	}
}
@media(min-width:1230px) {
	.topNav>ul {
		margin-right: calc(-1 * (25% - 170px));
		margin-left: 2%;
	}
	.topNav li {
		margin-left: 0;
		margin-right: calc(25% - 170px);
	}
}
@media(min-width:1400px) {
	.topNav>ul {
		margin-right: calc(-1 * (20% - 170px));
	}
	.topNav li {
		margin-right: calc(20% - 170px);
	}
}
@media(min-width:1600px) {
	.topNav>ul {
		margin-right: calc(-1 * (100% / 6 - 170px));
	}
	.topNav li {
		margin-right: calc(100% / 6 - 170px);
	}
}
@media(min-width:1800px) {
	.topNav>ul {
		margin-right: calc(-1 * (100% / 7 - 170px));
	}
	.topNav li {
		margin-right: calc(100% / 7 - 170px);
	}
}
@media(min-width:2000px) {
	.topNav>ul {
		margin-right: calc(-1 * (12.5% - 170px));
	}
	.topNav li {
		margin-right: calc(12.5% - 170px);
	}
}
.topNav_icon {
	display: block;
	font-size: 4rem;
}
/*top-slider*/
.top-slider {
	position: relative;
	width: 100%;
	height: auto;
	margin-bottom: 6rem;
}
.slick-arrow, .slick-dots {
	position: absolute;
}
.slick-prev, .slick-next {
	top: 50%;
	width: 40px;
	height: 40px;
	border: none;
	outline: none;
	padding: 0;
	background: transparent;
	color: transparent;
	font-size: 0;
	transform: translate(0, -50%);
	cursor: pointer;
	z-index: 2;
}
.slick-prev {
	left: 5px;
}
.slick-next {
	right: 5px;
}
.slick-prev:before, .slick-next:before {
	display: block;
	border-radius: 20px;
	background: #333;
	font-family: 'slick';
	font-size: 30px;
	line-height: 40px;
	text-align: center;
	opacity: .1;
	color: white;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-family: 'aicon' !important;
}
.slick-prev:before {
	content: "\e916";
}
.slick-next:before {
	content: "\e917";
}
.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before {
	opacity: .75;
}
.slick-dots {
	position: absolute;
	bottom: -25px;
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
	text-align: center;
}
.slick-dots li {
	position: relative;
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 5px;
	padding: 0;
	cursor: pointer;
}
.slick-dots li button {
	font-size: 0;
	line-height: 0;
	display: block;
	width: 36px;
	height: 36px;
	padding: 5px;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	background: transparent;
}
.slick-dots li button:before {
	font-family: 'slick';
	font-size: 36px;
	line-height: 36px;
	position: absolute;
	top: 0;
	left: 0;
	width: 36px;
	height: 36px;
	content: '•';
	text-align: center;
	opacity: .25;
	color: black;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
	opacity: .75;
	color: black;
}
.slick-dots li button:hover, .slick-dots li button:focus {
	outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
	opacity: 1;
}
/*swiper*/
.slider_wrapper {
	overflow: hidden;
	padding-bottom: 4rem;
}
.event_slider {
	overflow: visible;
}
.swiper-pagination {
	bottom: -30px !important;
}
.swiper-pagination-bullet {
	width: 12px;
	height: 12px;
	background: #999;
}
.swiper-pagination-bullet-active {
	background: #ccc;
}
/**/
.top_title {
	font-size: 2.4rem;
	font-weight: normal;
	color: #fff;
}
.top_title span:not(.page_title_note) {
	margin-right: 1.2rem;
}
.page_title_note {
	font-weight: 500;
	font-size: 1.2rem;
}
.exnote {
	line-height: 1;
	padding-top: 0.9rem;
}
.exnote .page_title_note {
	margin-top: 1.6rem;
}
/*pickup*/
.pickup_box {
	overflow-y: auto;
	width: 100%;
	height: 40rem;
	padding: 1.6rem;
	border: 1px solid #ab9353;
	background: #101;
}
.pickupImg, .update_cast01 {
	display: inline-block;
	width: 100%;
	margin-bottom: 1rem;
	padding: 0 30%;
	vertical-align: top;
}
.pickupImg a, .update_cast01 a {
	display: block;
	width: 132px;
	max-width: 100%;
	text-align: center;
}
.pickupNotes, .update_cast02 {
	display: inline-block;
	width: 100%;
}
.pickuptitle {
	color: #f264a5;
}
.pickupInfo {
	list-style-type: none;
	font-size: 1.6rem;
	font-weight: bold;
	min-height: 2.4rem;
	margin-bottom: 1rem;
}
.updatetitle {
	margin-bottom: 1rem;
	color: #f264a5;
	font-weight: 700;
	font-size: 1.6rem;
}
.pickuptitle, .pickupInfo {
	text-align: center;
}
@media(min-width:415px){
	.pickupImg, .update_cast01 {
		width: auto;
		padding: 0;
	}
	.pickupNotes, .update_cast02 {
		width: calc(100% - 138px);
		padding-left: 1.6rem;
	}
	.pickuptitle, .pickupInfo {
		text-align: left;
	}
}
.pickupName, .pickupSize, .pickupDate {
	display: inline-block;
	margin-right: 1rem;
}
/*news*/
.update_box {
	overflow-y: auto;
	width: 100%;
	height: 40rem;
}
.update_cast+.update_cast {
	margin-top: 4rem;
	border-top: 1px solid #ab9353;
	padding-top: 4rem;
}
.update_inner {
	margin: 1px;
	background: #fff;
}
.update_inner iframe {
	height: 40rem!important;
	vertical-align: bottom;
}
@media(min-width:769px) {
	.top_news {
		width: calc(50% + 12px);
	}
	.update_inner iframe {
		height: 948px!important;
	}
}
/*pdiary*/
.top_news+.content-right {
	min-width: calc(50% - 12px);
}
.top_pdiary {
	width: 100%;
	height: 240px;/*40rem要確認*/
	overflow: hidden;
}
.top_pdiary iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: none;
	overflow: scroll;
}
@media(min-width:769px) {
	.top_pdiary {height:960px}
	.top_pdiary iframe {height:950px}
}
/*newface*/
.newface {
	clear: both;
}
.new_btn {
	padding-top: 2rem;
	text-align: center;
	transition: 0.3s;
}
.new_more {
	display: block;
	border: #ab9353 1px solid;
	border-radius: 2.2rem;
	padding: 1rem 4rem 1rem 3rem;
	background: #101;
	box-shadow: 1px 1px 2px rgba(0,0,0,0.2);
	text-align: center;
	font-size: 1.6rem;
	position: relative;
	transition: 0.3s;
	color: #ab9353;
}
.new_more:after {
	position: absolute;
	right: 1rem;
	content: "＞";
}
a.new_more:hover {
	color: #970000;
	text-decoration: none;
	transform: translateY(-3px);
}
@media(max-width:480px) {
	.new_more:hover {
		border-color: #c60202;
		color: #c60202;
	}
}
@media(min-width:768px) {
	.new_btn {
		text-align: right;
	}
	.new_more {
		display: inline-block;
	}
}
/*schedule*/
/*ranking*/
.ranking_wrapper {
	width: 100%;
	margin-bottom: -8rem;
}
.ranking_box {
	display: block;
	margin: 0 1vw;
	padding: 1rem 0 8rem;
	font-size: 1.4rem;
}
.ranking_title {
	font-size: 1.6rem;
}
@media(min-width:768px) {
	.ranking_title {
		font-size: 2rem;
	}
}
.ranking_cast_box {
	display: inline-block;
	width: calc((100% - 180px) / 4)!important;/*150px;*/
	height: 100%;
/*	margin: 0 1rem;*/
	background: #212529;
	font-size: 0;
}
@media(max-width:1259px) {
	.ranking_cast_box {
		width: calc((100% - 160px) / 3)!important;
	}
}
@media(max-width:1023px) {
	.ranking_cast_box {
		width: calc((100% - 140px) / 2)!important;
	}
}
@media(max-width:479px) {
	.ranking_cast_box {
		width: calc(100% - 120px)!important;
	}
}

.ranking_castImg {
	display: inline-block;
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-bottom: 100%;
	position: relative;
}
.ranking_castImg img {
	vertical-align: bottom;
}
.ranking_box ul {
	list-style-type: none;
}
.ranking_box .ranking_castNote {
	display: inline-block;
	width: 100%;
	padding: 1rem 0.3rem 1.5rem;
	font-size: 1.2rem;
	vertical-align: top;
}
.ranking_castNote li {
	text-align: center;
}
.ranking_castNote .type_icon {
	font-size: 1.2rem;
}
.ranking_castNote .ranking_castName {
	line-height: 1em;
	margin-bottom: 0.5rem;
	font-size: 1.8rem;
	font-weight: bold;
}
.ranking_castPrice {
	color: #f264a5;
	font-size: 1.8rem;
}
.ranking_castTime {
	margin-bottom: 0.25rem;
	font-weight: bold;
}
.ranking_cast_box .ranking_castImg:before {
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	margin: 0 0.4rem 0 0;
	content: "\f005";
	font-family: 'FontAwesome';
	font-size: 8rem;/**/
	line-height: 1;
	color: #f264a5;
}
.ranking_cast_box .ranking_castImg:after {
	position: absolute;
	top: 4rem;/*1.6*/
	right: 4.1rem;/*2.6*/
	display: block;
	font-size: 3rem;/*3.6*/
	color: #fff;
	font-weight: 700;
	transform: translate(50%,-50%);
}
.ranking01 .ranking_castImg:before {
	color: #febf01;
}
.ranking01 .ranking_castImg:after {
	content: "1";
}
.ranking02 .ranking_castImg:before {
	color: #999;
}
.ranking02 .ranking_castImg:after {
	content: "2";
}
.ranking03 .ranking_castImg:before {
	color: #8C4841;
}
.ranking03 .ranking_castImg:after {
	content: "3";
}
.ranking04 .ranking_castImg:after {
	content: "4";
}
.ranking05 .ranking_castImg:after {
	content: "5";
}

/* --------------------------------------------------
 * movie.html
 *
-------------------------------------------------- */
.modal{
	display: none;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	width: 100%;
}
.modal__bg{
	background: rgba(0,0,0,0.8);
	height: 100vh;
	position: absolute;
	width: 100%;
}
.modal__content{
	background: #fff;
	left: 50%;
	padding: 40px;
	position: absolute;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 96%;
}
.close-button {
	display: inline-block;
	border-radius: 2px;
	padding: 2px 4px;
	background: #261b21;
	color: #fff;
	transition: .3s;
}
.close-button:hover {
	background: #261b21;
	color: #fff;
	text-decoration: none;
}
@media(min-width:600px) {
	.modal__content {
		width: 80%;
	}
}
@media(min-width:1080px) {
	.modal__content {
		width: 50%;
		max-width: 1000px;
	}
}

/* --------------------------------------------------
 * profile.html
 *
-------------------------------------------------- */
.profile_inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	font-size: 0;
}
.profile_inner>* {
	font-size: 1.4rem;
}
.profile_photo {
	display: inline-block;
	width: 49%;
	min-width: 400px;
	margin-bottom: 4rem;
	vertical-align: top;
}
.profile_castImg {
	width: 100%;
	height: 0;
	padding-bottom: calc(100% * 4 / 3);
	overflow: hidden;
}
.profile_thumb {
	margin-top: 2rem;
}
.profile_thumb li {
	float: left;
	width: 19%;
	height: 0;
	padding-bottom: calc(19% * 4 / 3);
	overflow: hidden;
}
.profile_thumb li+li {
	margin-left: 1.25%;
}

.profile_note {
	display: inline-block;
	width: 49%;
	min-width: 400px;
	max-width: 100%;
	margin-bottom: 4rem;
	padding: 1rem 2rem 2rem;
	border: 5px solid #ab9353;
	background: #101;
	vertical-align: top;
}
.profile_name {
	font-size: 4.6rem;
}
.profile_age {
	font-size: 3rem;
}
.profile_size {
	margin-bottom: 1.2rem;
	font-size: 2rem;
}
.profile_real {
	margin-bottom: 1.2rem;
	color: #970000;
	font-size: 2rem;
	font-weight: bold;
}
.profile_real_title, .profile_real_wait {
	display: block;
}
.profile_real_wait {
	font-size: 1.6rem;
	color: #57652a;
}
.profile_real_time {
	display: inline-block;
	color: #155765;
}
.profile_box_title {
	font-size: 2.4rem;
	font-weight: normal;
}
.profile_box_title:first-letter {
	color: #ab9353;
	font-size: 3.7rem;
}
.k-small {
	font-size: 1.7rem;
}
.profile_content {
	margin-top: 2rem;
}
.profile_content dl {
	display: table;
	width: 100%;
	border: 1px solid #101;
	border-bottom-width: 0;
}
.profile_content dl:last-of-type {
	border-bottom-width: 1px;
}
.profile_content dt {
	display: table-cell;
	width: 35%;
	height: 30px;
	border-right: 1px solid #101;
	background: #ab9353;
	color: #fff;
	text-align: center;
	vertical-align: middle;
}
.profile_content dd {
	display: table-cell;
	width: 65%;
	background: #261b21;
	text-align: center;
	vertical-align: middle;
}
.profile_movie {
	width: 100%;
	margin-top: 2rem;
	position: relative;
	overflow: hidden;
}
.movie_full, .movie_small {
	height: 100%;
	text-align: center;
}
.movie_small video {
	max-width: 100%;
	max-height: 90vw;
}
@media(min-width:768px) {
	.movie_small video {
		max-height: 49vw;
	}
}
.pc .movie_small {
	display: none;
}
.mobile .movie_full {
	display: none;
}
.pc.profile_movie:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.6);
	content: "";
	pointer-events: none;
}
.pc.profile_movie:after {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	color: #fff;
	font-size: 60px;
	transform: translate(-50%,-50%) rotate(90deg);
	content: '▲';
	opacity: 0.6;
	pointer-events: none;
}
.profile_movie.empty {
	display: none;
}
.profile_message {
	margin-top: 2rem;
}
.profile_message_box {
	clear: left;
	overflow-y: auto;
	max-height: 90vh;
}
@media(min-width:1024px){
	.profile_movie {
		height: calc((96vw * 0.49 - 4rem - 10px) / 27 * 9);
	}
	.profile_message_box {
		height: calc(47.038vw * 4 / 3 + 2rem + 47.038vw * 0.19 * 4 / 3 - 4.6rem * 1.5 - 2rem * 1.5 - 1.2rem - 1.4rem * 1.5 - 0.3rem - 2.4rem * 1.5 - 20px - 6rem - 23.8rem - ((96vw * 0.49 - 4rem - 10px) / 27 * 9) - 1.8rem * 1.5 * 2 - 1.2rem);
		max-height: 200vw;
	}
	.empty+.profile_message .profile_message_box {
		height: calc(47.038vw * 4 / 3 + 2rem + 47.038vw * 0.19 * 4 / 3 - 4.6rem * 1.5 - 2rem * 1.5 - 1.2rem - 1.4rem * 1.5 - 0.3rem - 2.4rem * 1.5 - 20px - 6rem - 23.8rem - 1.8rem * 1.5 * 2 - 1.2rem);
	}
}
@media(min-width:1080px) {
	.profile_movie {
		height: calc(((100vw - 17px) * 0.441 - 4rem - 10px) / 27 * 9);
	}
	.profile_message_box {
		height: calc(((100vw - 17px) * 0.52479 * 4 / 3 + 2rem) - (10px + 3rem + (4.6rem * 1.5) + (2rem * 1.5 + 1.2rem) + ((2rem + 1.6rem) * 1.5 + 1.2rem) + (0.8rem + 1px + (1px + 30px) * 5)) - (2rem + ((100vw - 17px) * 0.441 - 4rem - 10px) / 27 * 9) - (2rem + 3.7rem * 1.2 + 0.5rem));
	}
	.empty+.profile_message .profile_message_box {
		height: calc(((100vw - 17px) * 0.52479 * 4 / 3 + 2rem) - (10px + 3rem + (4.6rem * 1.5) + (2rem * 1.5 + 1.2rem) + ((2rem + 1.6rem) * 1.5 + 1.2rem) + (0.8rem + 1px + (1px + 30px) * 5)) - (2rem + 3.7rem * 1.2 + 0.5rem));
	}
/* 写真縦 (100vw - 17px)[全体-スクロールバー] * 0.9[90%content_width@min-width:1080px] * 0.49[49%section] * 4 / 3[photo縦] + 2rem[margin-top:thumb] + (100vw - 17px) * 0.9 * 0.49 * 0.19[thumb横幅] * 4 / 3[thumb縦] */
/* ↑計算 (100vw - 17px) * 0.52479 * 4 / 3 + 2rem */
/* 要素   10px[border5*2] + 3rem[padding] + (4.6rem[profile_name] * 1.5[line-height])[name] + (2rem[profile_size] * 1.5[line-height] + 1.2rem[margin-bottom])[size] + ((2rem[profile_real_title] + 1.6rem[profile_real_wait]) * 1.5[line-height] + 1.2rem[margin-bottom])[リアルタイム] + (0.8rem[margin-top差分] + 1px[border] + (1px[border] + 30px[height]) * 5[dl個数])[プロフィール] + (2rem[margin-top] + ((100vw - 17px)[全体-スクロールバー] * 0.9[90%content_width@min-width:1080px] * 0.49[49%section] - 4rem[padding*2] - 10px[border*2]) / 27 * 9)[ビデオ] + (2rem[margin-top] + 3.7rem[first-letter] * 1.2[line-height] + 0.5rem[margin-bottom])[messageタイトル] */
}
.profile_pdiary {
	display: inline-block;
	width: 49%;
	min-width: 400px;
	max-width: 100%;
	margin-bottom: 4rem;
	padding: 1rem 2rem 2rem;
	border: 5px solid #ab9353;
	background: #101;
	vertical-align: top;
}
.profile_pdiary_box {
	overflow: hidden;
	width: 100%;
	height: 352px;/*352px要確認*/
}
.profile_pdiary_box iframe {
	overflow: scroll;
	display: block;
	width: 100%;
	height: 100%;
	border: none;
}
.profile_schedule {
	display: inline-block;
	width: 49%;
	min-width: 400px;
	max-width: 100%;
	margin-bottom: 4rem;
	padding: 1rem 2rem 8rem;
	border: 5px solid #ab9353;
	background: #101;
	vertical-align: top;
	position: relative;
}
.profile_schedule .profile_box_title {
	position: relative;
}
.profile_schedule_table {
	font-size: 2.4rem;
}
.profile_schedule_table dl {
	border-bottom: 1px solid #666;
}
.profile_schedule_table dt, .profile_schedule_table dd {
	display: inline-block;
}
.profile_schedule_table dt {
	margin-right: 1rem;
	padding-left: 0.5rem;
}
.movie {
	width: 100%;
	margin: 0 auto;
}
.profile_play {
	display: inline-block;
	width: 49%;
	min-width: 400px;
	max-width: 100%;
	margin-bottom: 4rem;
	padding: 1rem 2rem 2rem;
	border: 5px solid #ab9353;
	background: #101;
	vertical-align: top;
}
.play_list {
	font-size: 0;
	margin-bottom: 0;
}
.play_list>li {
	display: inline-block;
	width: 32%;
	margin-right: 1%;
	margin-bottom: 1%;
	font-size: 1.4rem;
}
.play_list>li>span {
	display: block;
	width: 100%;
	padding: 4px 0;
	border: 1px solid #666;
	border-radius: 4px;
	background: #888;
	color: #fff;
	text-align: center;
}
.play_list>li>.play_ok {
	border: 1px solid #261b21;
	background: #57652a;
}
.play_list>li>.play_case {
	border: 1px solid #261b21;
	background: #ab9353;
}
.play_list>li>.play_ng {
	border: 1px solid #261b21;
	background: #888;
}
.star_on {
	color: #ff6;
}
.star_off {
	color: #ff6;
}
.profile_enquete {
	display: inline-block;
	width: 100%;
	min-width: 400px;
	max-width: 100%;
	margin-bottom: 4rem;
	padding: 1rem 2rem 2rem;
	border: 5px solid #ab9353;
	background: #101;
	vertical-align: top;
}
.prof_enq_wrap {
	border: 1px solid #101;
}
.prof_enq_cont:not(:last-child) {
	border-bottom: 1px solid #101;
}
.prof_enq_cont:nth-child(odd) {
	background-color: #261b21;
}
.prof_enq_items {
	padding: 1.4rem 0;
}
.prof_enq_items dl {
	width: 100%;
	padding: 0.4rem;
}
.prof_enq_items dt, .prof_enq_items dd {
	padding: 0 0.4rem;
	vertical-align: top;
}
.prof_enq_item2 dt, .prof_enq_item2 dd {
	display: inline-block;
}
.prof_enq_item2:first-child dl:first-child {
	padding-bottom: 0;
}
.prof_enq_item dl, .prof_enq_iteml dl {
	border-top: 1px dotted #101;
}
.prof_enq_iteml dl {
	border-bottom: 1px dotted #101;
}
.prof_enq_item:nth-child(2) dl:first-child {
	border-top: 1px solid #101;
}
@media(min-width:600px) {
	.prof_enq_item dt, .prof_enq_item dd {
		display: inline-block;
	}
	.prof_enq_item dt {
		width: 160px;
	}
	.prof_enq_item dd {
		width: calc(100% - 164px);
	}
}
@media(min-width:1080px) {
	.prof_enq_iteml dt, .prof_enq_iteml dd {
		display: inline-block;
	}
	.prof_enq_iteml dt {
		width: 160px;
	}
	.prof_enq_iteml dd {
		width: calc(100% - 164px);
	}
	.prof_enq_item2 dt{
		width: 160px;
	}
	.prof_enq_item2 dd {
		width: calc(100% - 164px);
	}
}
.profile_impBox {
	display: inline-block;
	width: 100%;
	min-width: 400px;
	max-width: 100%;
	margin-bottom: 4rem;
	padding: 1rem 2rem 2rem;
	border: 5px solid #ab9353;
	background: #101;
	vertical-align: top;
}
.prof_review_wrap {
	margin-bottom: -60px;
}
.profile_enqheader {
	width: calc(100% + 4rem);
	max-width: 604px;
	margin: 0 -2rem;
	text-align: center;
}
.prof_chart {
	position: relative;
	display: inline-block;
	width: 100%;
	max-width: 400px;
	height: 85vw;
	max-height: 400px;
	margin: 2rem auto;
	text-align: right;
	vertical-align: middle;
}
.prof_average {
	display: inline-block;
	width: 100%;
	max-width: 200px;
	padding: 0 0 4rem;
	text-align: center;
	vertical-align: middle;
}
@media(min-width:680px) {
	.profile_enqheader {
		margin: 0 auto;
	}
	.prof_chart {
		height: 45vh;
	}
	.prof_average {
		padding: 4rem 0;
	}
}
.prof_avetit {
	display: block;
	padding: 0.4rem;
	border: 1px solid #ab9353;
	background: #ad9e71;
	color: #FFF;
}
.prof_ave {
	display: block;
	border: 1px solid #ab9353;
	border-top-width: 0;
	font-size: 2.4rem;
	font-weight: bold;
}
.point_small {
	font-size: 1.4rem;
	font-weight: 500;
}
@media(max-width:768px) {
	.profile_inner>section {
		width: 100%;
		min-width: auto;
	}
	.play_list>li {
		width: 49%;
	}
}

/* --------------------------------------------------
 * schedule.html
 *
-------------------------------------------------- */
.schedule_week {
	font-size: 0;
	margin-left: 1%;
	margin-bottom: 2rem;
}
.schedule_week>li {
	display: inline-block;
	width: 14%;
	border: 1px solid #101;
	background: #261b21;
	word-break: break-all;
	text-align: center;
	font-size: 1.4rem;
}
.schedule_week>li a {
	display: block;
	padding: 0.5rem 0;
	color: #fff;
}
.schedule_week>.wd-sat a {
	color: #80c8e9;
}
.schedule_week>.wd-sun a {
	color: #f264a5;
}
.schedule_week .active {
	background: #444;
	pointer-events: none;
}
.schedule_box_title {
	font-size: 2rem;
	font-weight: normal;
	color: #fff;
}
.schedule_box_title:first-letter {
	color: #ab9353;
	font-size: 1.5em;
}

/* --------------------------------------------------
 * search.html
 *
-------------------------------------------------- */
.sort {
	float: right;
	margin: 2rem 1.6rem;
}

/* --------------------------------------------------
 * system.html
 *
-------------------------------------------------- */
.system_price {
	width: 96%;
	margin: 4rem auto 6rem;
	padding: 4rem 3%;
	border: 3px solid #ab9353;
	background-color: #101;
	text-align: center;
	font-weight: bold;
}
.system_table_title {
	display: inline-block;
	width: auto;
	margin: 0 auto;
	padding: 7px 12px;
	background: linear-gradient(transparent 33%, rgba(230,145,204,.75) 33%, rgba(230,145,204,.75) 57%, transparent 57%, transparent 80%, rgba(230,145,204,.75) 80%);
	text-align: center;
	color: #f96;
	font-size: 40px;
	line-height: 1;
}
.banner_heading {
	margin: 4rem 0 0;
	text-align: center;
}
.banner_heading img {
	max-width: 640px;
}
.price_class_toku {
	text-shadow: -2px -2px 0 #ff71ab,
				 -2px  0   0 #ff71ab,
				 -2px  2px 0 #ff71ab,
				  0    2px 0 #ff71ab,
				  2px  2px 0 #ff71ab,
				  2px  0   0 #ff71ab,
				  2px -2px 0 #ff71ab,
				  0   -2px 0 #ff71ab;
}
.price_class_regu {
	text-shadow: -2px -2px 0 #33cbf7,
				 -2px  0   0 #33cbf7,
				 -2px  2px 0 #33cbf7,
				  0    2px 0 #33cbf7,
				  2px  2px 0 #33cbf7,
				  2px  0   0 #33cbf7,
				  2px -2px 0 #33cbf7,
				  0   -2px 0 #33cbf7;
}
.price_class_shin {
	color: #f60;
}
.price_list {
	display: flex;
	max-width: 1100px;
	margin: 2% auto 0;
	text-align: center;
	flex-wrap: wrap;
	justify-content: space-between;
}
.price_cont dt, .price_cont dd {
	display: inline-block;
}
.price_cont {
	padding-bottom: 3%;
	color: #666;
}
.price_cont dl {
	width: auto;
	margin: 0 auto;
	font-size: 0;
}
.price_cont dt {
	width: 11rem;
	padding-right: 1rem;
	font-size: 1.8rem;
	text-align: right;
}
.price_cont dt:after {
	margin-left: 0.5rem;
	content: "...";
}
.price_cont dd {
	width: 11rem;
	font-size: 2.4rem;
	color: #ab9353;
	text-align: right;
}
.price_cont .taxin {
	width: 22rem;
}
.fs_18 {
	font-size: 1.4rem;
}
.price_notice li {
	padding: 0.9rem 0;
	font-size: 1.4rem;
	text-align: center;
}
.price_caution li {
	color: #fff;
	text-shadow: -2px -2px 0 #666,
				 -2px  0   0 #666,
				 -2px  2px 0 #666,
				  0    2px 0 #666,
				  2px  2px 0 #666,
				  2px  0   0 #666,
				  2px -2px 0 #666,
				  0   -2px 0 #666;
}
@media(min-width:768px) {
	.system_table_title {
		background: linear-gradient(transparent 60%, rgba(230,145,204,.75) 60%);
	}
	.price_cont {
		padding: 0 1rem 3%;
	}
	.price_cont dt {
		width: 14rem;
		font-size: 2.4rem;
	}
	.price_cont dd {
		width: 16rem;
		font-size: 3.6rem;
	}
	.price_cont .taxin {
		width: 30rem;
	}
	.fs_18 {
		font-size: 1.8rem;
	}
	.price_notice li {
		font-size: 1.6rem;
	}
}
.ios .price_cont dd {
	width: 18rem;
	font-size: 3.4rem;
}
.ios .price_cont .taxin {
	width: 29rem;
}
.ios .price_cont dt, .ios .price_cont .taxin {
	text-shadow: -1px -1px 2px #fff,
				 -1px  0   2px #fff,
				 -1px  1px 2px #fff,
				  0    1px 2px #fff,
				  1px  1px 2px #fff,
				  1px  0   2px #fff,
				  1px -1px 2px #fff,
				  0   -1px 2px #fff;
}
.ios .price_caution li {
	text-shadow: -1px -1px 1px #666,
				 -1px  0   1px #666,
				 -1px  1px 1px #666,
				  0    1px 1px #666,
				  1px  1px 1px #666,
				  1px  0   1px #666,
				  1px -1px 1px #666,
				  0   -1px 1px #666;
}
/**/
.system_newface {
	margin: 0 0 4rem;
	padding: 0 3%;
	text-align: center;
}
.system_special {
	padding: 2rem 3vw;
	margin-top: calc(1rem + 1vw);
	border: #FFE4EC 5px solid;
	background: #fff;
	font-size: 1.4rem;
}
.system_special dt {
	margin: 2% 0 3%;
	padding-bottom: 2%;
	border-bottom: #FFE4EC 1px dashed;
	color: #f264a5;
	font-size: 1.8rem
}
.system_special li{
	padding: 2% 0;
}
.system_special .system_magazine {
	padding-top: 2rem;
	font-size: 1.8rem;
}
.system_vertical {
	margin: 0;
	padding: 0 3%;
	vertical-align: top;
	text-align: center;
}
.system_card {
	margin: 0 0 4rem;
	position: relative;
	font-size: 1.4rem;
}
.system_card a:hover {
	text-decoration: none;
}
.system_card_box {
	width: 100%;
	margin-top: calc(1rem + 1vw);
	padding-top: 0.9rem;
	transition: 0.5s;
}
.system_card_box dt {
	position: relative;
	color: #fff;
}
.card_wrap {
	display: inline-block;
	min-height: 4rem;
	margin-top: -3rem;
	padding: 4rem 2rem 2.6rem;
	border-radius: 5px;
	background: #ab9353;
	box-shadow: 1px 1px 2px rgba(0,0,0,.2);
	vertical-align: top;
}
@media(min-width:769px) {
	.system_tile {
		font-size: 0;
	}
	.system_newface, .system_vertical {
		width: 49%;
		display: inline-block;
	}
	.system_card a:hover dl {
		transform: scale(1.1);
	}
	.system_card_box {
		position: absolute;
	}
	.card_wrap {
		display: block;
	}
	.system_hotel {
		margin-top: calc(14.2rem + 2.8vw);
	}
}
@media(max-width:480px) {
	.card_wrap {
		padding: 4rem 16% 2.6rem;
	}
}
.card_cont {
	display: inline-block;
	width: 8rem;
	height: 4rem;
	margin-right: 1rem;
	padding: 1rem 2rem;
	border-radius: 5px;
	box-sizing: border-box;
	background: #fff;
	text-align: center;
	color: #ff9bbf;
	font-weight: 700;
	position: relative;
}
.card_inner {
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	line-height: 1;
	position: absolute;
	z-index: 5;
}
.card_visa {
	font-size: 1.6rem;
}
.card_master:before, .card_master:after {
	position: absolute;
	top: 0.5rem;
	display: block;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	background: #ff9bbf;
	content: "";
}
.card_master:before {
	left: 2.4rem;
}
.card_master:after {
	left: 4rem;
}
.card_master .card_inner {
	top: 3.2rem;
	font-size: 1rem;
}
.card_jcb {
	letter-spacing: 1.6rem;
	color: #fff;
}
.card_jcb .card_inner {
	transform: translate(-38%,-50%);
}
.card_jcb:before, .card_jcb:after, .card_jcb .card_inner:before {
	position: absolute;
	top: 0.3rem;
	display: block;
	width: 2rem;
	height: 3.4rem;
	border-radius: 4px 0;
	background: #ff9bbf;
	content: "";
	transform: skewX(-5deg);
}
.card_jcb:before {
	left: 0.6rem;
}
.card_jcb:after {
	left: 3rem;
}
.card_jcb .card_inner:before {
	left: 4.2rem;
	top: -1rem;
	z-index: 0;
}
.card_jcb .card_inner:after {
	position: absolute;
	left: 4.7rem;
	content: "B";
}
.card_amex {
	font-size: 1.2rem;
}
.card_wrap + dd {
	margin-top: -2.4rem;
	color: #fff;
}
.system_hotel {
	margin-bottom: 8rem;
}
.system_hotel_box {
	margin-top: calc(1rem + 1vw);
	border: #ab9353 5px solid;
	padding: 2rem 3vw;
	background: #101;
	font-size: 1.4rem;
	position: relative;
}
.system_plays {
	width: 100%;
	overflow: hidden;
	margin: 0 0 6rem;
	padding: 4rem 0 0;
	background: url(/img/system-play_bg.jpg) no-repeat center center;
	background-size: cover;
	text-align: center;
	position: relative;
	text-shadow: 0 3px 8px rgba(0,0,0,.15)
}
.system_play {
	margin-bottom: calc(2rem + 2vw);
	padding: 0 3%;
	vertical-align: top;
	position: relative;
	z-index: 1;
}
.system_play_list {
	margin-top: calc(1rem + 1vw);
	font-size: 0;
}
.system_play_list li {
	display: inline-block;
	margin: 0 1.8rem 1.8rem 0;
	border-radius: calc(1.8rem * 1.5 / 2 + 0.8rem);
	padding: 0.8rem 2rem;
	background: rgba(0,153,255,.75);
	font-size: 1.6rem;
	color: #fff;
	text-shadow: none;
}
.system_option {
	margin-bottom: calc(2rem + 2vw);
	vertical-align: top;
	position: relative;
	z-index: 1;
}
.option_list {
	margin-top: calc(1rem + 1vw);
	margin-bottom: -1.8rem;
	margin-right: -1.8rem;
	font-size: 0;
}
.option_price {
	display: inline-block;
	margin: 0 1.8rem 1.8rem 0;
	padding: 0.8rem 2rem;
	border-radius: 3.2rem / 50%;
	background: rgba(255,0,102,.5);
	color: #fff;
	font-size: 1.6rem;
	vertical-align: top;
	text-shadow: none;
}
.option_price dt {
	font-weight: 500;
}
.opt_4 {
	border-radius: 5.6rem / 50%;
}
.opt_2 {
	border-radius: 4.4rem / 50%;
}
.option_price dd span:not(:last-of-type):after {
	content: '・';
}
.system_play_list, .option_list {
	display: flex;
	flex-wrap: wrap;
	margin-right: -1.8rem;
}
.system_play_list li, .option_price {
	flex-grow: 1;
}
.system_costume {
	margin-top: calc(2rem + 2vw);
	margin-bottom: calc(2rem + 2vw);
	font-size: 1.6rem;
	position: relative;
	z-index: 1;
}
.system_costume_inner {
	width: 640px;
	max-width: 96%;
	margin: calc(1rem + 1vw) auto 0;
	position: relative;
	transition: 0.3s ease-in-out;
}
.system_costume_inner:after {
	position: absolute;
	top: 50%;
	right: 1rem;
	transform: translateY(-50%);
	font-weight: 700;
	font-size: 1.6rem;
	color: #ff9bbf;
	text-shadow: none;
	content: "＞";
}
.system_costume_inner a {
	display: block;
	border-radius: 3.3rem;
	border: #ff9bbf 1px solid;
	padding: 0.8rem 2rem;
	background: rgba(255, 255, 255, 0.5);
	box-shadow: 1px 1px 2px rgba(0,0,0,.2);
	color: #f06;
	text-shadow: none;
	transition: 0.3s ease-in-out;
}
.system_costume_inner:hover a {
	box-shadow: 1px 4px 5px rgba(0,0,0,.1);
	text-decoration: none;
}
.system_costume_inner:hover {
	transform: translateY(-5px);
}
.cos_list {
	padding: 1rem 1rem 4rem;
	font-size: 0;
}
.cos_box {
	display: inline-block;
	width: 100%;
	padding: 0 0.5rem 1rem;
	box-sizing: border-box;
	text-align: center;
	vertical-align: top;
	font-size: 1.8rem;
}
.cos_name {
	position: relative;
	z-index: 1;
	margin-top: -3.3rem;
	padding: 0.3rem 0;
	background: rgba(255,0,102,.5);
	color: #fff;
	font-weight: 700;
}
@media(min-width:600px) {
	.system_costume_inner:after {
		right: 1.6rem;
		font-size: 3rem;
	}
	.cos_box {
		width: 50%;
		font-size: 1.4rem;
	}
	.cos_long {
		letter-spacing: -1px;
	}
	.cos_name {
		margin-top: -2.7rem;
	}
}
@media(max-width:1024px) {
	.bubbly {
		height: 100%;
	}
}
@media(min-width:768px) {
	.system_play_list li, .option_price {
		font-size: 1.8rem;
	}
	.option_price, opt_3, .opt_2 {
		border-radius: 3.5rem / 50%;
	}
	.opt_4 {
		border-radius: 4.8rem / 50%;
	}
}
@media(min-width:769px) {
	.system_plays {
		background-image: url(/img/system-play_bg-v.jpg);
	}
	.system_play {
		width: 49%;
		display: inline-block;
	}
	.system_option {
		margin-bottom: calc(1rem + 0.8vw);
	}
	.system_opt {
		width: 50%;
		display: inline-block;
	}
	.opt_4 {
		border-radius: 6.2rem / 50%;
	}
}
@media(min-width:1060px) {
	.opt_4 {
		border-radius: 4.8rem / 50%;
	}
}
/**/
.system_fare {
	font-size: 0;
}
.system_station, .system_deliver {
	display: inline-block;
	width: 100%;
	margin: 0 0 4rem;
	padding: 0 3%;
	text-align: center;
	vertical-align: top;
}
.system_deliver {
	margin-bottom: 0;
}
.price_table {
	width: 100%;
	max-width: 1200px;
	margin: calc(1rem + 1vw) auto 0;
	border: #e5e0d6 1px solid;
	border-top-width: 0;
	font-size: 0;
}
.price_header {
	background: rgba(128,200,233,.75);
}
.price_header, .price_time {
	border-top: #e5e0d6 1px solid;
}
.price_header dt, .price_header dd, .price_time dt, .price_time dd {
	display: inline-block;
	padding: 2% 1%;
	font-size: 1.6rem;
	text-align: center;
	vertical-align: top;
}
.price_time {
	background: #fff;
}
.price_table dt {
	width: 18rem;
	border-right: #e5e0d6 1px solid;
	font-weight: 500;
}
.price_table dd {
	width: calc(100% - 18rem);
	border-left: #e5e0d6 1px solid;
	margin-left: -1px;
}
.price_time dt, .price_time dd {
	background: #fff;
}
.price_header dt, .price_header dd {
	padding: 1% 0 1% 1%;
	font-weight: 500;
	color: #fff;
}
.price_time dd {
	text-align: left;
}
@media(max-width:375px) {
	.price_table {
		position: relative;
	}
	.price_header {
		display: none;
	}
	.price_table dt, .price_table dd {
		border: none;
	}
	.price_time dt, .price_time dd {
		width: 100%;
	}
	.price_time dt {
		background: rgba(255,0,102,.5);
		color: #fff;
	}
	.price_time dt br {
		display: none;
	}
	.price_time dd {
		text-align: center;
	}
}
@media(min-width:768px) {
	.price_time {
		margin-top: 1px;
	}
	.price_header dt, .price_header dd, .price_time dt, .price_time dd {
		font-size: 1.8rem;
	}
}
@media(min-width:1025px) {
	.system_station, .system_deliver {
		width: 50%;
	}
}
