@charset "utf-8";
/*
Theme Name: RipeLove Original Theme
Description: RipeLove Original Theme
*/

#siteframe {
  margin: 0 auto;
  overflow:hidden;
  background: #fff;
  min-height: 100vh;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
}
#container {
	margin-top: 60px;
	min-height: calc( 100vh - 60px);
}
@media ( min-width: 768px ) {
	#container {
		margin-top: 88px;
		min-height: calc( 100vh - 88px);
	}	
}
#contents {
	max-width: 1440px;
	margin: 0 auto;
}
#main-contents-area-wtap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
	padding: 0 0;
}
@media (min-width: 576px) {
	#main-contents-area-wtap {
		padding: 0 0;
	}
}
@media ( min-width: 992px ) {
	#main-contents-area-wtap {
		padding: 2rem 1rem;
	}
}
@media ( min-width: 1200px ) {
	#main-contents-area-wtap {
		padding: 2rem;
	}
}
#main {
	width: 100%;
}
#side {
	width: 100%;
}
@media ( min-width: 992px ) {
	#main {
		-webkit-flex: 1;
		flex: 1;
		max-width: calc( 100% - 330px );
		padding-right: 1.5rem;
		padding-bottom: 0;
	}
	#side {
		width: 330px;
	}
}
.setsumei > p:last-child {
	margin-bottom: 0!important;
}
/*******************************
 * utilities etc
********************************/
/* read more */
#tileList {
  list-style: none;
}
#tileList > div {
  display: none;
}
#tileList > .readMoreBtn {
  display: none;
  z-index: 100;
}
#tileList > .readMoreBtn-style {
	color: #fff;
	background: -webkit-gradient(
		linear, left top, left bottom,
		from(#a3a3a3),
		color-stop(0.50, #3b3b3b),
		color-stop(0.49, #242424),
		to(#000000));
	background: linear-gradient(
		top,
		#a3a3a3 0%,
		#3b3b3b 50%,
		#242424 49%,
		#000000);
	border-radius: 2px;
	border: 1px solid #000000;
	box-shadow:
		1px 1px 3px rgba(000,000,000,0.5),
		inset 0px 0px 1px rgba(255,255,255,0.6);
	text-shadow:
		0px -1px 0px rgba(000,000,000,1),
		0px 1px 0px rgba(255,255,255,0.2);
}
/* レスポンシブイメージの正方形化  */
.thumbs {
  width: 100%;
  height: 100%;
  max-width: 300px;
  position: relative;
}
.thumbs::before{
  content: "";
  display: block;
  padding-top: 100%;
}
.thumbs a ,
.thumbs > div {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.thumbs figcaption {
	position: absolute;
	padding: 0.2rem;
	left: 0;
	bottom: 0;
	width: 100%;
	text-align: center;
	color: #fff;
	background-color: rgba(26, 26, 26, 0.75);
}
.thumbs_wrap:nth-child(odd) figcaption {
	background-color: rgba(232, 62, 141, 0.75);
}
.thumbs img{
  width: 100%;
  height: auto;
  line-height: 0;
  position: absolute;
  top: 0;
}
.object-fit {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.pr {
	position: relative;
}
.pr > .pr-text {
	position: absolute;
	display: inline-block;
	top: 0;
	left:0;
	padding: 0.1rem 0.5rem;
	font-size: 0.6rem;
	color: #fff;
	background: #373a3c;
}
#page_top {
  display: none;
  position: fixed;
  padding: 0.2rem 1rem;
	bottom: 10px;
	right: 10px;
	font-size: 1.5rem;
	line-height: 1;
  color: #fff;
  background-color: rgba(232, 62, 141, 0.75);
  border: none;
	outline: none;
  cursor: pointer;
	z-index: 99;
}
@media (min-width:768px){
	#page_top.sp { /*スマホ用ボタン表示時*/
		bottom: 10px!important;
	}	
}
@media (max-width:767px){
	#page_top.sp { /*スマホ用ボタン表示時*/
		bottom: 90px!important;
	}
}
#page_top:hover {
  background-color: rgba(232, 62, 141, 0.95);
}
#page_top span {
	display: block;
	font-size: 12px;
}

/* スマホ用電話ボタン（下部固定）*/
@media (min-width:768px){
	.sp_menu_bottom {
		display: none;
	}	
}
@media (max-width:767px){
	.sp_menu_bottom {
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		background-color: rgba( 0, 0, 0, 0.6 );
		z-index: 10000;
	}
}

a img {
	transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
	-webkit-transition: 0.3s ease-in-out;
	backface-visibility: hidden;
}
a:hover img, a:focus img {
	opacity: 0.7;
}
a.decoration-none:hover {
	text-decoration: none;
}

.text-underline {
	text-decoration: underline;
}

.row-eq-height {
    display: flex;
    flex-wrap: wrap;
}
/* swiper design customize */
.swiper-button-prev, .swiper-button-next, .swiper-pagination {
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
}
.font-size-normal {
	font-size: 0.875rem;
}
.font-size-small {
	font-size: 0.75rem;
}
.font-size-90 {
	font-size: 90%;
}
.text-justify {
  text-align-last: justify;
  text-justify:inter-ideograph; 
}
.bg-lattice-pink {
	background-color: #e83e8c;
	-webkit-background-size: 20px 20px;
	-moz-background-size: 20px 20px;
	background-size: 20px 20px;
	background-image: -webkit-linear-gradient(45deg,  #ff6cb1 25%, #ff6cb1 25%, transparent 25%, transparent 75%, #ff6cb1 75%, #ff6cb1 75%),
										-webkit-linear-gradient(-45deg, #ff6cb1 25%, #ff6cb1 25%, transparent 25%, transparent 75%, #ff6cb1 75%, #ff6cb1 75%);
	background-image: -moz-linear-gradient(45deg,  #ff6cb1 25%, #ff6cb1 25%, transparent 25%, transparent 75%, #ff6cb1 75%, #ff6cb1 75%),
										-moz-linear-gradient(-45deg, #ff6cb1 25%, #ff6cb1 25%, transparent 25%, transparent 75%, #ff6cb1 75%, #ff6cb1 75%);
	background-image: -ms-linear-gradient(45deg,  #ff6cb1 25%, #ff6cb1 25%, transparent 25%, transparent 75%, #ff6cb1 75%, #ff6cb1 75%),
										-ms-linear-gradient(-45deg, #ff6cb1 25%, #ff6cb1 25%, transparent 25%, transparent 75%, #ff6cb1 75%, #ff6cb1 75%);
	background-image: -o-linear-gradient(45deg,  #ff6cb1 25%, #ff6cb1 25%, transparent 25%, transparent 75%, #ff6cb1 75%, #ff6cb1 75%),
										-o-linear-gradient(-45deg, #ff6cb1 25%, #ff6cb1 25%, transparent 25%, transparent 75%, #ff6cb1 75%, #ff6cb1 75%);
	background-image: linear-gradient(45deg,  #ff6cb1 25%, #ff6cb1 25%, transparent 25%, transparent 75%, #ff6cb1 75%, #ff6cb1 75%),
										linear-gradient(-45deg, #ff6cb1 25%, #ff6cb1 25%, transparent 25%, transparent 75%, #ff6cb1 75%, #ff6cb1 75%);
}
.bg-lattice-blue {
	background-color: #68a6ee;
	-webkit-background-size: 20px 20px;
	-moz-background-size: 20px 20px;
	background-size: 20px 20px;
	background-image: -webkit-linear-gradient(45deg,  #2780E3 25%, #2780E3 25%, transparent 25%, transparent 75%, #2780E3 75%, #2780E3 75%),
										-webkit-linear-gradient(-45deg, #2780E3 25%, #2780E3 25%, transparent 25%, transparent 75%, #2780E3 75%, #2780E3 75%);
	background-image: -moz-linear-gradient(45deg,  #2780E3 25%, #2780E3 25%, transparent 25%, transparent 75%, #2780E3 75%, #2780E3 75%),
										-moz-linear-gradient(-45deg, #2780E3 25%, #2780E3 25%, transparent 25%, transparent 75%, #2780E3 75%, #2780E3 75%);
	background-image: -ms-linear-gradient(45deg,  #2780E3 25%, #2780E3 25%, transparent 25%, transparent 75%, #2780E3 75%, #2780E3 75%),
										-ms-linear-gradient(-45deg, #2780E3 25%, #2780E3 25%, transparent 25%, transparent 75%, #2780E3 75%, #2780E3 75%);
	background-image: -o-linear-gradient(45deg,  #2780E3 25%, #2780E3 25%, transparent 25%, transparent 75%, #2780E3 75%, #2780E3 75%),
										-o-linear-gradient(-45deg, #2780E3 25%, #2780E3 25%, transparent 25%, transparent 75%, #2780E3 75%, #2780E3 75%);
	background-image: linear-gradient(45deg,  #2780E3 25%, #2780E3 25%, transparent 25%, transparent 75%, #2780E3 75%, #2780E3 75%),
										linear-gradient(-45deg, #2780E3 25%, #2780E3 25%, transparent 25%, transparent 75%, #2780E3 75%, #2780E3 75%);
}
.ttl {
  padding: 0.8rem;
  margin-bottom: 1rem;
  font-size: 1.2rem;
  color: #fff;
  -webkit-background-size: 20px 20px;
  -moz-background-size: 20px 20px;
  background-size: 20px 20px;
  background-color: #1a1a1a;
  background-image: -webkit-gradient(linear, 0 0, 100% 100%, color-stop(.25, #333333), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #333333),color-stop(.75, #333333), color-stop(.75, transparent),to(transparent));
  background-image: -webkit-linear-gradient(-45deg, #333333 25%, transparent 25%,transparent 50%, #333333 50%, #333333 75%,transparent 75%, transparent);
  background-image: -moz-linear-gradient(-45deg, #333333 25%, transparent 25%,transparent 50%, #333333 50%, #333333 75%,transparent 75%, transparent);
  background-image: -ms-linear-gradient(-45deg, #333333 25%, transparent 25%,transparent 50%, #333333 50%, #333333 75%,transparent 75%, transparent);
  background-image: -o-linear-gradient(-45deg, #333333 25%, transparent 25%,transparent 50%, #333333 50%, #333333 75%,transparent 75%, transparent);
  background-image: linear-gradient(-45deg, #333333 25%, transparent 25%,transparent 50%, #333333 50%, #333333 75%,transparent 75%, transparent);
  border-bottom: 5px solid #e83e8c;
}
.ttl-bg {
  -webkit-background-size: 20px 20px;
  -moz-background-size: 20px 20px;
  background-size: 20px 20px;
  background-color: #1a1a1a;
  background-image: -webkit-gradient(linear, 0 0, 100% 100%, color-stop(.25, #333333), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #333333),color-stop(.75, #333333), color-stop(.75, transparent),to(transparent));
  background-image: -webkit-linear-gradient(-45deg, #333333 25%, transparent 25%,transparent 50%, #333333 50%, #333333 75%,transparent 75%, transparent);
  background-image: -moz-linear-gradient(-45deg, #333333 25%, transparent 25%,transparent 50%, #333333 50%, #333333 75%,transparent 75%, transparent);
  background-image: -ms-linear-gradient(-45deg, #333333 25%, transparent 25%,transparent 50%, #333333 50%, #333333 75%,transparent 75%, transparent);
  background-image: -o-linear-gradient(-45deg, #333333 25%, transparent 25%,transparent 50%, #333333 50%, #333333 75%,transparent 75%, transparent);
  background-image: linear-gradient(-45deg, #333333 25%, transparent 25%,transparent 50%, #333333 50%, #333333 75%,transparent 75%, transparent);
  border-bottom: 5px solid #e83e8c;
}

.gradient_gold {
	background: rgb(252,244,0);
	background: -moz-linear-gradient(-45deg,  rgb(216,187,41) 0%, rgb(252,244,0) 51%, rgb(216,187,41) 100%);
	background: -webkit-linear-gradient(-45deg,  rgb(216,187,41) 0%,rgb(252,244,0) 51%,rgb(216,187,41) 100%);
	background: linear-gradient(135deg,  rgb(216,187,41) 0%,rgb(252,244,0) 51%,rgb(216,187,41) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d8bb29', endColorstr='#d8bb29',GradientType=1 );
}
.gradient_silver {
	background: rgb(184,186,198);
	background: -moz-linear-gradient(-45deg,  rgb(245,246,246) 0%, rgb(219,220,226) 21%, rgb(184,186,198) 49%, rgb(221,223,227) 80%, rgb(245,246,246) 100%);
	background: -webkit-linear-gradient(-45deg,  rgb(245,246,246) 0%,rgb(219,220,226) 21%,rgb(184,186,198) 49%,rgb(221,223,227) 80%,rgb(245,246,246) 100%);
	background: linear-gradient(135deg,  rgb(245,246,246) 0%,rgb(219,220,226) 21%,rgb(184,186,198) 49%,rgb(221,223,227) 80%,rgb(245,246,246) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5f6f6', endColorstr='#f5f6f6',GradientType=1 );
}
.gradient_bronze {
	background: rgb(182,141,76);
	background: -moz-linear-gradient(-45deg,  rgb(243,226,199) 0%, rgb(182,141,76) 51%, rgb(233,212,179) 100%);
	background: -webkit-linear-gradient(-45deg,  rgb(243,226,199) 0%,rgb(182,141,76) 51%,rgb(233,212,179) 100%);
	background: linear-gradient(135deg,  rgb(243,226,199) 0%,rgb(182,141,76) 51%,rgb(233,212,179) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f3e2c7', endColorstr='#e9d4b3',GradientType=1 );
}
.gradient_light {
  color: #787878;
  background: #f6f6f6;
  background: -moz-linear-gradient(top,  #ffffff 0%, #f6f6f6 47%, #ededed 100%);
  background: -webkit-linear-gradient(top,  #ffffff 0%,#f6f6f6 47%,#ededed 100%);
  background: linear-gradient(to bottom,  #ffffff 0%,#f6f6f6 47%,#ededed 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ededed',GradientType=0 );
}
.boxshadow {
	box-shadow:
		3px 3px 5px rgba(000,000,000,0.2),
		inset 0px 0px 3px rgba(255,255,255,1);
}
.blinking{
	-webkit-animation:blink 1.5s ease-in-out infinite alternate;
    -moz-animation:blink 1.5s ease-in-out infinite alternate;
    animation:blink 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
.average {
	background: #fffacf;
	letter-spacing: -0.1em;
}
.average .active_star, .average .disable_star {
	font-size: 1.1rem;
}
.average .active_star {
	color: #ff387a;
}
.average .disable_star {
	color: #ccc;
}

.area_choice_button {
	color:#fff;
	width:100%;
	padding:.7rem .5rem;
	font-size:1rem;
	background-color:#26bfa1;
	background:-moz-linear-gradient(top,#009fe3 0,#00daa4);
	background:-webkit-gradient(linear,left top,left bottom,from(#009fe3),to(#00daa4));
	border-radius:.2rem;
	border:0 solid #dbdbdb
}
.area_choice_button, .area_choice_button:focus, .area_choice_button:hover{
	-moz-box-shadow:0 0 0 rgba(161,50,161,0),inset 0 0 0 hsla(0,0%,100%,0);
	-webkit-box-shadow:0 0 0 rgba(161,50,161,0),inset 0 0 0 hsla(0,0%,100%,0);
	box-shadow:0 0 0 rgba(161,50,161,0),inset 0 0 0 hsla(0,0%,100%,0);
	text-shadow:0 0 0 transparent,0 1px 0 #fff;
}
.area_choice_button:focus, .area_choice_button:hover {
	cursor:pointer;
	background-color:#26bfa1;
	background:-moz-linear-gradient(top,#00b7ff 0,#00fabc);
	background:-webkit-gradient(linear,left top,left bottom,from(#00b7ff),to(#00fabc));
}

.skip_link {
	position: absolute;
	top: -60px;
}
@media screen and (min-width:768px){
	.skip_link {
		position: absolute;
		top: -90px;
	}
}

.btn-tel {
	color: #ffa200;
	background-color: #ffffff;
	background: -webkit-gradient(
		linear, left top, left bottom,
		from(#ffffff),
		color-stop(0.50, #ffffff),
		to(#d6d6d6));
	background: linear-gradient(
		top,
		#ffffff 0%,
		#ffffff 50%,
		#d6d6d6);
	border-radius: 10px;
	border: 3px solid #ffbf00;
	box-shadow:
		0px 1px 3px rgba(000,000,000,0.5),
		inset 0px 0px 3px rgba(255,255,255,1);
	text-shadow:
		0px -1px 0px rgba(000,000,000,0.1),
		0px 1px 0px rgba(255,255,255,1);
}
.btn-tel:hover, .btn-tel:focus {
	color: #ffa200;
	background-color: #ffffff;
	background: -webkit-gradient(
		linear, left top, left bottom,
		from(#ffffff),
		color-stop(0.50, #ffffff),
		to(#c2c2c2));
	background: linear-gradient(
		top,
		#ffffff 0%,
		#ffffff 50%,
		#c2c2c2);
	border-radius: 10px;
	border: 3px solid #ffbf00;
	box-shadow:
		0px 1px 3px rgba(000,000,000,0.5),
		inset 0px 0px 3px rgba(255,255,255,1);
	text-shadow:
		0px -1px 0px rgba(000,000,000,0.1),
		0px 1px 0px rgba(255,255,255,1);
}

/*******************************
 * header
********************************/
/* descrition */
#header .site-description {
	position: fixed;
	display: flex;
	visibility: visible;
	align-items: center;
	padding: 0 1rem;
	width: 100%;
	height: 28px !important;
	font-size: 0.78rem;
	color: #fff;
	background: #eb5b9d;
	z-index: 100;
}
/* navigation */
@media ( min-width: 768px ) {
	#header .navbar {
		top: 28px;
	} 
}
/* nav button area */
#header .navbar .navbar-btn-area {
	padding: 0 1rem;
}
@media ( min-width: 992px ) {
	#header .navbar .navbar-btn-area {
		padding: 0;
	}
}

/*******************************
 * footer
********************************/
#footer {
	padding: 1rem;
	color: #fff;
	background: #373a3c;
	z-index: 10;
}

/*******************************
 * contents
********************************/
/*------------------------------
 * top
--------------------------------*/
/* ライプラブからのお知らせ */
#rl-news .card-body {
	padding: 0.7rem 1rem !important;
}
#rl-news .title {
	padding-bottom: 0.3rem;
	margin-bottom: 0.3rem;
	border-bottom: 1px dashed #8b8b8b;
}
#rl-news dl, #rl-news dl dt, #rl-news dl dd {
	margin: 0;
	padding: 0;
}
#rl-news dl dt {
	width: 100%;
	font-weight: 400;
	font-size: 0.78rem;
	color: #ccc;
	padding-top: 0.3rem;
}
#rl-news dl dd {
	width: 100%;
}
@media ( min-width: 576px ) {
	#rl-news dl dt {
		width: 140px;
		font-weight: 400;
		font-size: 0.875rem;
		padding-top: 0.3rem;
	}
	#rl-news dl dd {
		width: calc( 100% - 140px );
		padding-top: 0.3rem;
	}
}
#rl-news dl dd a {
	color: #fff;
	text-decoration: underline;
}
#rl-news dl dd a:hover, #rl-news dl dd a:focus {
	color: #eb5b9d;
}
/* オススメ店 */
#rl-osusume h2 {
	position: relative;
	display: inline-block;
	padding: 0 0;
	margin-bottom: 0.5rem;
	font-size: 1.25rem;
}
#rl-osusume h2:before, #rl-osusume h2:after {
	content: '';
	position: absolute;
	top: 0;
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 4px 0 4px;
	border-color: #f0ad4e transparent transparent transparent;
}
#rl-osusume h2:before {
	left: -20px;
	-moz-transform: rotate(-30deg);
	-webkit-transform: rotate(-30deg);
	-ms-transform: rotate(-30deg);
	transform: rotate(-30deg);
}
#rl-osusume h2:after {
	right: -20px;
	-moz-transform: rotate(30deg);
	-webkit-transform: rotate(30deg);
	-ms-transform: rotate(30deg);
	transform: rotate(30deg);	
}
#rl-osusume .osusume-shop-box {
	position: relative;
}
#rl-osusume .osusume-shop-box a {
	display: block!important;
}
#rl-osusume .osusume-shop-box a:hover,
#rl-osusume .osusume-shop-box a:focus {
	text-decoration: none;
	border-color: #f6b0d0;
  outline: 0;
  -webkit-box-shadow: 0 0 0 0.2rem rgba(232, 62, 140, 0.5);
  box-shadow: 0 0 0 0.2rem rgba(232, 62, 140, 0.5);		
}
#rl-osusume .osusume-shop-box .osusume-stamp-img {
	position: absolute;
	top: -10px;
	left: -5px;
	width: 45px;
	z-index: 10;
}
#rl-osusume .osusume-shop-box a:hover .osusume-stamp-img,
#rl-osusume .osusume-shop-box a:focus .osusume-stamp-img {
	opacity: 1;
}
#rl-osusume .title {
	border-bottom: 1px dotted #ccc;
}
#rl-osusume .title .area,
#rl-osusume .title .business-type,
#rl-osusume .title .new-entry {
	padding: 0.2rem 0.4rem;
	margin-right: 0.15rem;
	display: inline-block;
	font-size: 0.65rem;
	font-weight: 400;
	color: #fff;
	border-radius: 3px;
}
#rl-osusume .title .area {
	background-color: #2780E3;
}
#rl-osusume .title .business-type {
	background-color: #9954BB;
}
#rl-osusume .title .new-entry {
	background-color: #da002f;
}
#rl-osusume .title .shop-name {
	display: block;
	margin: 0.5rem 0;
	font-size: 0.85rem;
	background-color: transparent;
}
/* オススメ嬢 */
#osusume-cast h2 {
	position: relative;
	display: inline-block;
	padding: 0 0;
	margin-bottom: 0.5rem;
	font-size: 1.25rem;
}
#osusume-cast h2:before, #osusume-cast h2:after {
	content: '';
	position: absolute;
	top: 0;
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 4px 0 4px;
	border-color: #f0ad4e transparent transparent transparent;
}
#osusume-cast h2:before {
	left: -20px;
	-moz-transform: rotate(-30deg);
	-webkit-transform: rotate(-30deg);
	-ms-transform: rotate(-30deg);
	transform: rotate(-30deg);
}
#osusume-cast h2:after {
	right: -20px;
	-moz-transform: rotate(30deg);
	-webkit-transform: rotate(30deg);
	-ms-transform: rotate(30deg);
	transform: rotate(30deg);	
}
#osusume-cast .swiper-container {
	padding-bottom: 20px!important;
}
#osusume-cast a {
	text-decoration: none;
}
#osusume-cast .castimage {
	position: relative;
}
#osusume-cast .castimage .syukkin {
	position: absolute;
	display: inline-block;
	width: 50px;
	height: 50px;
	right: 10px;
	bottom: 10px;
	white-space: pre;
	background: #2780E3;
	border-radius: 50%;
	z-index: 10;
}
#osusume-cast .castimage .syukkin:before {
	position: absolute;
	display: block;
	left: 13px;
	top:7px;
	color: #fff;
	content: '本日\A出勤';
	font-size: 12px;
}

/* 新規掲載店 */
#NewArrivals h2 {
	position: relative;
	display: inline-block;
	padding: 0 0;
	margin-bottom: 0.5rem;
	font-size: 1.25rem;
}
#NewArrivals h2:before, #NewArrivals h2:after {
	content: '';
	position: absolute;
	top: 0;
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 4px 0 4px;
	border-color: #f0ad4e transparent transparent transparent;
}
#NewArrivals h2:before {
	left: -20px;
	-moz-transform: rotate(-30deg);
	-webkit-transform: rotate(-30deg);
	-ms-transform: rotate(-30deg);
	transform: rotate(-30deg);
}
#NewArrivals h2:after {
	right: -20px;
	-moz-transform: rotate(30deg);
	-webkit-transform: rotate(30deg);
	-ms-transform: rotate(30deg);
	transform: rotate(30deg);	
}
#NewArrivals .swiper-container {
	padding-bottom: 30px;
}
#NewArrivals .swiper-wrapper {
  display: -webkit-flex;
	display: flex;
}
#NewArrivals .swiper-slide {
	flex: 1 0 auto;
	justify-content: center;
}
#NewArrivals .box {
 background: #fff;
}
#NewArrivals .box a:hover, #NewArrivals .box a:focus {
	text-decoration: none;
}
#NewArrivals .shop-image {
	width: 100%;
	background: #eb5b9d;
}
#NewArrivals .shop-image:before {
	position: absolute;
  content: '';
	height: 0;
	width: 0;
  top: 0;
  left: 0;		
	border-color: #ffd358 transparent transparent transparent;
  border-style: solid;
	border-width: 3.5rem 3.5rem 0 0;
	z-index: 2;
}
#NewArrivals .shop-image:after {
	position: absolute;
	content: '新着店';
	white-space: pre;
	line-height: 1;
  top: 14px;
  left: 4px;
	text-align: center;
	font-size: 0.75rem;
	color: #4e0000;
	transform: rotate(-45deg);
	z-index: 3;
}
#NewArrivals .shop-image img {
	width: 100%;
	max-width: 300px;
}
#NewArrivals .shop-name {
	font-size: 0.8rem;
	padding-top: 0.2rem;
	margin: 0;
	font-weight: 500;
}
#NewArrivals .departure {
	display: block;
  padding: 0.4em 0.5em;
  font-size: 80%;
  font-weight: 400;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
	vertical-align: center;
	color: #fff;
	background: #20c997;
}

/* 新着女性 */
#recent_added_casts h2 {
	position: relative;
	display: inline-block;
	padding: 0 0;
	margin-bottom: 0.5rem;
	font-size: 1.25rem;
}
#recent_added_casts h2:before, #recent_added_casts h2:after {
	content: '';
	position: absolute;
	top: 0;
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 4px 0 4px;
	border-color: #f0ad4e transparent transparent transparent;
}
#recent_added_casts h2:before {
	left: -20px;
	-moz-transform: rotate(-30deg);
	-webkit-transform: rotate(-30deg);
	-ms-transform: rotate(-30deg);
	transform: rotate(-30deg);
}
#recent_added_casts h2:after {
	right: -20px;
	-moz-transform: rotate(30deg);
	-webkit-transform: rotate(30deg);
	-ms-transform: rotate(30deg);
	transform: rotate(30deg);	
}

/* リアルタイム速報 & 割引情報 */
#realtime, #coupon-info {
	padding: 1rem;
	color: #fff;
}
#realtime h2, #coupon-info h2 {
	position: relative;
	display: inline-block;
	padding-top: 10px;
	margin-top: -15px;
	font-size: 1.25rem;
	color: #fff	
}
#realtime h2:before, #realtime h2:after,
#coupon-info h2:before, #coupon-info h2:after {
	content: '';
	position: absolute;
	top: 10px;
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 4px 0 4px;
	border-color: #fffb2b transparent transparent transparent;
}
#realtime h2:before, #coupon-info h2:before {
	left: -20px;
	-moz-transform: rotate(-30deg);
	-webkit-transform: rotate(-30deg);
	-ms-transform: rotate(-30deg);
	transform: rotate(-30deg);
}
#realtime h2:after, #coupon-info h2:after {
	right: -20px;
	-moz-transform: rotate(30deg);
	-webkit-transform: rotate(30deg);
	-ms-transform: rotate(30deg);
	transform: rotate(30deg);	
}
#realtime .newslists, #realtime .newslists li,
#coupon-info .newslists, #coupon-info .newslists li {
	margin: 0;
	padding: 0;
	list-style: none;
}
#realtime .newslists li, #coupon-info .newslists li {
	border-top: 1px dashed #ccc;
}
#realtime .newslists li:first-child, #coupon-info .newslists li:first-child {
	border-top: 1px solid #ccc;
}
#realtime .newslists li:last-child, #coupon-info .newslists li:last-child {
	border-bottom: 1px solid #ccc;
}
#realtime .newslists li:nth-child(odd), #coupon-info .newslists li:nth-child(odd) {
	background: #f1feff;
}
#realtime .newslists li:nth-child(even), #coupon-info .newslists li:nth-child(even) {
	background: #fff;
}
#realtime .newslists li a, #coupon-info .newslists li a {
	display: block;
	padding: 0.3rem 0.7rem;
}
#realtime .newslists li a:hover, #realtime .newslists li a:focus,
#coupon-info .newslists li a:hover, #coupon-info .newslists li a:focus {
  text-decoration: none;
}
#realtime .newslists li .post-title, #coupon-info .newslists li .post-title {
	margin: 0;
	padding: 0;
	font-weight: 400;
	font-size: 90%;
	text-decoration: underline;
}
#realtime .newslists li .shop, #coupon-info .newslists li .shop {
	font-size: 90%;
}

/* 新着女性 */
@media( max-width: 991px ) {
	#recent_added_casts {
		padding-left: 0.7rem;
		padding-right: 0.7rem;		
	}
}
#recent_added_casts a:hover,
#recent_added_casts a:focus {
	text-decoration: none;
}
#recent_added_casts .media {
	padding: 0.3rem;
	height: 100%;
}
#recent_added_casts a:hover .media,
#recent_added_casts a:focus .media {
	background: rgba(232, 62, 141, 0.089);
}
#recent_added_casts .media-body .shopname {
	border-top: 1px dashed #ccc;
	padding-top: 0.2rem;
	margin-top: 0.3rem;
}
#recent_added_casts .contain {
    display: inline-block;
    background-color: #ccc;
    background-position: top center;
    background-repeat: no-repeat;
    margin: 5px;
    width: 75px;
    height: 75px;
    border: 1px solid #ccc;
    background-size: cover;
}
#recent_added_casts .contain-noimage {
    display: inline-block;
    background-color: #ccc;
    background-position: center center;
    background-repeat: no-repeat;
    margin: 5px;
    width: 75px;
    height: 75px;
    border: 1px solid #ccc;
    background-size: cover;
}
/* 週間・月間アクセスランキング */
#Ranking ul li a:hover, #Ranking ul li a:focus{
	text-decoration: none!important;
}
#Ranking ul li {
	position: relative;
}
#Ranking ul li .rank-color-wrap {
	position: absolute;
	display: inline-block;
	width: 26px;
	height: 26px;
	line-height: 26px;
	top: 0;
	left: 0;
	font-size: 0.875rem;
	font-weight: 600;
	text-align: center;
	z-index: 10;
}

/*------------------------------
 * category
--------------------------------*/
#category ul li a:hover, #category ul li a:focus {
	text-decoration: none;
}
#category ul li .contain {
    display: inline-block;
    background-color: #ccc;
    background-position: top center;
    background-repeat: no-repeat;
    margin: 5px;
    width: 75px;
    height: 75px;
    border: 1px solid #ccc;
    background-size: cover;
}
/*------------------------------
 * single
--------------------------------*/
#recent-news-lists h2 {
  position: relative;
  text-align: center;
}
#recent-news-lists h2 span {
  position: relative;
  z-index: 2;
  display: inline-block;
  margin: 0 2rem;
  padding: 0 1rem;
  background-color: #fff;
  text-align: left;
}
#recent-news-lists h2::before {
  position: absolute;
	top: 50%;
	left: 25%;
  z-index: 1;
  content: '';
  display: block;
  width: 50%;
  height: 1px;
  background-color: #ccc;
}

#recent-news-lists .media .contain {
    display: inline-block;
    background-color: #ccc;
    background-position: center center;
    background-repeat: no-repeat;
    margin: 5px;
    width: 75px;
    height: 75px;
    border: 1px solid #ccc;
    background-size: cover;	
}
#recent-news-lists ul li:hover,
#recent-news-lists ul li:focus {
		text-decoration: none;
		background: #f7f7f7;
}
#recent-news-lists ul li a:hover,
#recent-news-lists ul li a:focus {
		text-decoration: none;
		background: #ccc;
}
/*------------------------------
 * single-shopinfo
--------------------------------*/
#shop-page .shop-page-body {
	padding: 0;
}
@media (min-width: 768px){
	#shop-page .shop-page-body {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		padding: 0 0.5rem;
	}
}
@media (min-width: 992px){
	#shop-page .shop-page-body {
		padding: 0;
	}
}
#shop-page .shopimage, #shop-page .shop-details {
	width: 100%;
}
#shop-page .shopimage {
	text-align: center;
}
@media (min-width: 768px){
	#shop-page .shopimage {
		width: 255px;
	}
}
@media (min-width: 992px){
	#shop-page .shopimage {
		width: 200px;
	}
}
@media (min-width: 1200px){
	#shop-page .shopimage {
		width: 300px;
	}
}
#shop-page .shopimage img {
	width: 255px;
}
@media(min-width: 768px) {
	#shop-page .shopimage img {
		width: 100%;
	}
}
@media(min-width: 768px) {
	#shop-page .shop-details {
		flex: 1;
		padding-left: 1rem;
	}	
}
#shop-page .shop-details dl dt, #shop-page .shop-details dl dd {
	font-size: 90%;
}	
#shop-page .tabnavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
	list-style: none;
	border-bottom: 2px solid #e83e8c;
}
#shop-page .tabnavi li {
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
#shop-page .tabnavi li a {
  display: block;
	padding: 1rem 0.5rem;
	text-align: center;
	font-weight: 600;
	border: 1px solid rgba(232, 62, 141, 0.137);
}
#shop-page .tabnavi li a:hover, #shop-page .tabnavi li a:focus {
  text-decoration: none;
  -webkit-transition: all .3s;
	transition: all .3s;
	background-color: rgba(232, 62, 141, 0.137);
}
#shop-page .tabnavi li.active a {
	color: #fff;
  background-color: #e83e8c;
}
#shop-page .tabnavi li.disabled a {
	color: #868e96;
	background: #e9e9e9; 
  pointer-events: none;
  cursor: default;
}
#shop-page .cast-image figure {
	position: relative;
}						
#shop-page .cast-image figure > figcaption {
	position: absolute;
	display: block;
	width: 100%;
	padding: 0.3rem 0.2rem;
	left:0;
	bottom: 0;
	background-color: rgba(0,0,0,0.5);
	color: #fff;
}
#shop-page .cast-list-col > div {
  position: relative;
  background: #fff;
}

#shop-page .cast-list-col .ribbon-content {
  position: absolute;
  top: -6px;
  right: -6px;
  width: 89px;
  height: 91px;
  overflow: hidden;
}

#shop-page .cast-list-col .ribbon {
  display: inline-block;
  position: absolute;
  padding: 7px 0;
  left: -23px;
  top: 22px;
  width: 156px;
  text-align: center;
  font-size: 0.75rem;
  line-height: 0.75rem;
  color: #fff;
  letter-spacing: 0.05em;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

#shop-page .cast-list-col .ribbon:before, #shop-page .cast-list-col .ribbon:after {
  position: absolute;
  content: "";
  border-top: 4px solid #b2751b;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  bottom: -4px;
}

#shop-page .cast-list-col .ribbon:before {
  left: 14px;
}

#shop-page .cast-list-col .ribbon:after {
  right: 18px;
}
#shop-page .cast-list-col .syukkin-time {
  background-color: #2780E3;
  color: #fff;
}

#shop-page .kuchikomi-form-box .evaluation {
  display: flex;
  flex-direction: row-reverse;
	justify-content: center;
}
#shop-page .kuchikomi-form-box .evaluation input[type='radio']{
	display: none;
}
#shop-page .kuchikomi-form-box .evaluation label{
  position: relative;
  padding: 0;
  color: gray;
  cursor: pointer;
	font-size: 2rem;
	line-height: 1;
}
#shop-page .kuchikomi-form-box .evaluation label:hover,
#shop-page .kuchikomi-form-box .evaluation label:hover ~ label,
#shop-page .kuchikomi-form-box .evaluation input[type='radio']:checked ~ label{
  color: #ffcc00;
}

#shop-page .kuchikomi-form-box .stepBar {
  position: relative;
  list-style: none;
  margin: 0 0 1em;
  padding: 0;
  text-align: center;
  width: 100%;
  overflow: hidden;
  *zoom: 1;
}
#shop-page .kuchikomi-form-box .stepBar .step {
  position: relative;
  float: left;
  display: inline-block;
  line-height: 40px;
	padding: 0 40px 0 20px;
  width: 33.333333%;
  background-color: #eee;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#shop-page .kuchikomi-form-box .stepBar .step:before,
#shop-page .kuchikomi-form-box .stepBar .step:after {
  position: absolute;
  left: -15px;
  display: block;
  content: '';
  background-color: #eee;
  border-left: 4px solid #FFF;
  width: 20px;
  height: 20px;
}
#shop-page .kuchikomi-form-box .stepBar .step:after {
  top: 0;
  -moz-transform: skew(30deg);
  -ms-transform: skew(30deg);
  -webkit-transform: skew(30deg);
  transform: skew(30deg);
}
#shop-page .kuchikomi-form-box .stepBar .step:before {
  bottom: 0;
  -moz-transform: skew(-30deg);
  -ms-transform: skew(-30deg);
  -webkit-transform: skew(-30deg);
  transform: skew(-30deg);
}
#shop-page .kuchikomi-form-box .stepBar .step:first-child {
  -moz-border-radius-topleft: 4px;
  -webkit-border-top-left-radius: 4px;
  border-top-left-radius: 4px;
  -moz-border-radius-bottomleft: 4px;
  -webkit-border-bottom-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
#shop-page .kuchikomi-form-box .stepBar .step:first-child:before, 
#shop-page .kuchikomi-form-box .stepBar .step:first-child:after {
  content: none;
}
#shop-page .kuchikomi-form-box .stepBar .step:last-child {
  -moz-border-radius-topright: 4px;
  -webkit-border-top-right-radius: 4px;
  border-top-right-radius: 4px;
  -moz-border-radius-bottomright: 4px;
  -webkit-border-bottom-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
#shop-page .kuchikomi-form-box .stepBar .step.current {
  color: #FFF;
  background-color: #26bfa1;
}
#shop-page .kuchikomi-form-box .stepBar .step.current:before, 
#shop-page .kuchikomi-form-box .stepBar .step.current:after {
  background-color: #26bfa1;
}
#shop-page .course_ttl_bg {
	background-color: #870073;
	background: -moz-linear-gradient( top, #fff2fd 0%, #870073 50%, #fc46e1);
	background: -webkit-gradient( linear, left top, left bottom, from(#fff2fd), color-stop(0.50, #870073), to(#fc46e1));
}
#shop-page .course_detail_body_bg {
	background: #fff7fe;
}
#shop-page .coupon_ttl_bg {
	background-color: #ff2819;
	background: -moz-linear-gradient( top, #ff2819 0%, #ab0000);
	background: -webkit-gradient( linear, left top, left bottom, from(#ff2819), to(#ab0000));
}

#shop-page .ttl-wrap {
    color: #787878;
    background: #f6f6f6;
    background: -moz-linear-gradient(top,  #ffffff 0%, #f6f6f6 47%, #ededed 100%);
    background: -webkit-linear-gradient(top,  #ffffff 0%,#f6f6f6 47%,#ededed 100%);
    background: linear-gradient(to bottom,  #ffffff 0%,#f6f6f6 47%,#ededed 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ededed',GradientType=0 );
}
#shop-page .shop-navi > li > .nav_btn {
display: block;
padding: 0.6rem 0.45rem; 
text-align: center;
font-size: 0.875rem;
font-weight: 400;
letter-spacing: 0.1rem;
text-decoration: none;
color: #444;
	background: -webkit-gradient(
		linear, left top, left bottom,
		from(#ffe3ff),
		to(#ffffff));
	background: linear-gradient(
		top,
		#ffe3ff 0%,
		#ffffff);
	border-radius: 0.25rem;
	border: 1px solid #d1136f;
	box-shadow:
		0px 0px 5px rgba(000,000,000,0.1),
		inset 0px 0px 0px rgba(255,255,255,0);
}
#shop-page .shop-navi > li > .nav_btn:hover, #shop-page .shop-navi > li > .nav_btn:focus {
	color: #e83e8c;
}
#shop-page .shop-navi > li.active > .nav_btn {
  color: #fff;
  background: #e83e8c;
}
#shop-page .shop-navi > li.disabled > .nav_btn {
    color: #a3a3a3;
	background: -webkit-gradient(
		linear, left top, left bottom,
		from(#ebebeb),
		to(#ffffff));
	background: linear-gradient(
		top,
		#ebebeb 0%,
		#ffffff);
    border-color: #b5b5b5;    
    cursor: default;
}
/*------------------------------
 * single-casts
--------------------------------*/
#cast-personal .details {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 0 0.5rem;
}
@media ( min-width: 992px ) {
	#cast-personal .details {
		padding: 0;
	}
}
#cast-personal .cast-images {
	width: 100%;
}
@media ( min-width: 768px ) {
	#cast-personal .cast-images {
		width: 204px;
	}
}
@media ( min-width: 1200px ) {
	#cast-personal .cast-images {
		width: 248px;
	}
}
#cast-personal .cast-image-box {
	width: 204px;
	margin: 0 auto;
}
@media ( min-width: 1200px ) {
	#cast-personal .cast-image-box {
		width: 248px;
		margin: 0 auto;
	}
}
#cast-personal .cast-image-box .main img {
	width: 100%;
	max-width: 248px;
}
#cast-personal .thumbsnails {
	font-size: 0;
	margin-top: 0.2rem;
}
#cast-personal .thumb-item {
	display: inline-block;
	padding: 0;
	margin: 0;
  background-color: #ccc;
  background-position: top center;
  background-repeat: no-repeat;
  width: 51px;
	height: 51px;
	background-size: cover;
	opacity: 0.7;
}
@media ( min-width: 1200px ) {
	#cast-personal .thumb-item {
  	width: 62px;
		height: 62px;
	}
}
#cast-personal .thumb-item:active,
#cast-personal .thumb-item:hover,
#cast-personal .thumb-item:focus {
	opacity: 1;	
}
#cast-personal .cast-info {
	width: 100%;
	padding: 0;
}
@media ( min-width: 768px ) {
	#cast-personal .cast-info {
		flex: 1;
		padding: 0 0 0 1.5rem;
	}	
}
#cast-personal .cast-info table {
	border: 1px solid #e83e8c;
			width: 100%;
}
#cast-personal .cast-info table tr {
	border-top: 1px solid #e83e8c;
}
#cast-personal .cast-info table tr:first-child {
	border-top: none;
}
#cast-personal .cast-info table th,
#cast-personal .cast-info table td {
	padding: 0.4rem 0.7rem;
}
#cast-personal .cast-info table th {
	color: #fff;
	background: rgba(232, 62, 141, 0.753);
}
#cast-personal .cast-info table td .row {
	padding: 0 0.5rem!important; 
}

@media ( max-width: 1199px ) {
	#cast-personal .cast-info table th,
	#cast-personal .cast-info table td {
		display: block;
	}
}
@media ( min-width: 1200px ) {
	#cast-personal .cast-info table th {
		width: 160px;
	}
}
/*------------------------------
 * single-coupon
--------------------------------*/
/* background gradient */
/* ショップページの割引情報modalと共通 */
.course-detail {
    width: 100wh;
    height: 100%;
    color: #fff;
    background: linear-gradient(-45deg, #EE7752, #E73C7E, #a82ff8, #003cff);
    background-size: 400% 400%;
    -webkit-animation: Gradient 15s ease infinite;
    -moz-animation: Gradient 15s ease infinite;
    animation: Gradient 15s ease infinite;
}
@-webkit-keyframes Gradient {
  0% { background-position: 0% 50% }
  50% { background-position: 100% 50% }
  100% { background-position: 0% 50% }
}
@-moz-keyframes Gradient {
	0% { background-position: 0% 50% }
  50% { background-position: 100% 50% }
  100% { background-position: 0% 50% }
}
@keyframes Gradient {
  0% { background-position: 0% 50% }
  50% { background-position: 100% 50% }
  100% { background-position: 0% 50% }
}
.course-detail .c_ttl {
	padding-bottom: 0.5rem;
	border-bottom: 3px solid #fff;
}
/*------------------------------
 * archive
--------------------------------*/
/* shopinfo */
#archive-shops .mark {
	display: inline-block;
	padding: 0.25rem 0.5rem;
	margin-bottom: 0.2rem;
	font-weight: 600;
	font-size: 0.7rem;	
	border: 1px solid transparent;
	border-radius: 3px;	
}
#archive-shops .newmark {
	color: #b63370;
	background: #ffdded;
	border: 1px solid #ff94c6;
}
#archive-shops .coupon {
	color: #fff;
	background: #e40000;
	border: 1px solid #ce0000;
}
#archive-shops .shopimage {
	width: 35%;
	max-width: 150px;
}
#archive-shops .shopimage img {
	width: 100%;
	max-width: 150px;
}
#archive-shops .shop-cmt {
	color: #77244b;
	background: rgba(232, 62, 141, 0.1);
}
#archive-shops .detail-table th, #archive-shops .detail-table td {
	vertical-align: top;
	font-weight: normal;
	padding: 0.2rem;
}
#archive-shops .detail-table td {
	padding: 0.4rem 0.2rem;
}
#archive-shops .detail-table th span {
	display: block;
	padding: 0.2rem;
  text-align-last: justify;
	text-justify:inter-ideograph;
	color: #fff;
	background: #e83e8c;
}
#archive-shops .course-box {
	padding: 0.4rem;
	margin: 0.2rem 0.2rem 0;
	background: #ff0084;
	background: -moz-linear-gradient(-45deg, #ff0084 0%, #b2003e 100%);
	background: -webkit-linear-gradient(-45deg, #ff0084 0%,#b2003e 100%);
	background: linear-gradient(135deg, #ff0084 0%,#b2003e 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff0084', endColorstr='#b2003e',GradientType=1 );
}
#archive-shops .course-box h6 {
	color: #fff;
	text-align: center;
}
#archive-shops .course-box h6:before, #archive-shops .course-box h6:after {
	content: '\f004';
	font-family: 'Font Awesome 5 Free';
	padding: 0 0.4rem;
}
#archive-shops .course-box-inner {
	padding: 0.5rem;
	background: #fff;
}
#archive-shops .course-name {
	margin-bottom: 0;
	line-height: 1.2;
}
#archive-shops .course_ttl_bg {
	background: -moz-linear-gradient( top, #fff2fd 0%, #870073 50%, #fc46e1);
	background: -webkit-gradient( linear, left top, left bottom, from(#fff2fd), color-stop(0.50, #870073), to(#fc46e1));
}
#archive-shops .course_detail_body_bg {
	background: #fff7fe;
}

/* casts */
#archive-casts .archive-casts-body {
	padding: 0 1rem;
}
@media ( min-width: 992px ) {
	#archive-casts .archive-casts-body {
		padding: 0;
	}
}
#archive-casts .card {
	height: 100%;
}
#archive-casts .card a {
	text-decoration: none;
}

#archive-casts .card .new {
	position: absolute;
	padding: 0.2rem 0.4rem;
	left: 0;
	top: 0;
	color: #fff;
	font-size: 65%;
	background: rgba(255, 0, 0, 0.75);
}
#archive-casts .card-body {
	font-size: 85%;
}
#archive-casts .cast-image figure {
	position: relative;
}						
#archive-casts .cast-image figure > figcaption {
	position: absolute;
	display: block;
	width: 100%;
	padding: 0.3rem 0.2rem;
	left:0;
	bottom: 0;
	background-color: rgba(0,0,0,0.5);
	color: #fff;
}
#archive-casts .cast-image figure {
	position: relative;
}						
#archive-casts .cast-image figure > figcaption {
	position: absolute;
	display: block;
	width: 100%;
	padding: 0.3rem 0.2rem;
	left:0;
	bottom: 0;
	background-color: rgba(0,0,0,0.5);
	color: #fff;
}
#archive-casts .cast-list-col > div {
  position: relative;
  background: #fff;
}

#archive-casts .cast-list-col .ribbon-content {
  position: absolute;
  top: -6px;
  right: -6px;
  width: 89px;
  height: 91px;
  overflow: hidden;
}

#archive-casts .cast-list-col .ribbon {
  display: inline-block;
  position: absolute;
  padding: 7px 0;
  left: -23px;
  top: 22px;
  width: 156px;
  text-align: center;
  font-size: 0.75rem;
  line-height: 0.75rem;
  color: #fff;
  letter-spacing: 0.05em;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

#archive-casts .cast-list-col .ribbon:before, #archive-casts .cast-list-col .ribbon:after {
  position: absolute;
  content: "";
  border-top: 4px solid #b2751b;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  bottom: -4px;
}

#archive-casts .cast-list-col .ribbon:before {
  left: 14px;
}

#archive-casts .cast-list-col .ribbon:after {
  right: 18px;
}
#archive-casts .cast-list-col .syukkin-time {
  background-color: #2780E3;
  color: #fff;
}

/* coupon & realtime */
#coupon-archive .coupon-lists .contain,
#realtime-archive .realtime-lists .contain {
    display: inline-block;
    background-color: #ccc;
    background-position: top center;
    background-repeat: no-repeat;
    width: 60px;
    height: 60px;
    border: 1px solid #ccc;
    background-size: cover;
}
#coupon-archive .coupon-lists a:hover,
#coupon-archive .coupon-lists a:focus,
#realtime-archive .realtime-lists a:hover,
#realtime-archive .realtime-lists a:focus {
	text-decoration: none;
	background-color: rgba(32, 201, 150, 0.115)!important;
}
/*******************************
 * banners
********************************/
#TopBnrArea {
	padding: 1rem 0 0;
	background: #f7f7f7;
}
#TopBnrArea .swiper-wrapper {
	margin-bottom: 1.8rem;
}
#TopBnrArea .swiper-wrapper {
  display: -webkit-flex;
  display: flex;
}
#TopBnrArea .swiper-slide {
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
	justify-content: center;
	align-items: center
}
#TopBnrArea .swiper-slide a {
	text-align: center;
	display: block;
}

#CenterBnrArea {
	padding: 0;
}
#CenterBnrArea .swiper-slide {
	display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
	justify-content: center;
}
@media (min-width: 576px) {
  #CenterBnrArea  .swiper-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
	}
  #CenterBnrArea  .swiper-slide {
    padding: 0 0.5rem;
  }	
  #CenterBnrArea  .swiper-button-prev,
  #CenterBnrArea  .swiper-button-next,
  #CenterBnrArea  .swiper-pagination {
    display: none;
  }	
}
@media (min-width: 576px) {
  #CenterBnrArea  .swiper-slide {
    width: 50%;
  }
}
@media (min-width: 768px) {
  #CenterBnrArea  .swiper-slide {
    width: 33.333333%;
  }
}
@media (min-width: 992px) {
  #CenterBnrArea  .swiper-slide {
    width: 33.333333%;
  }
}
@media (min-width: 1280px) {
  #CenterBnrArea  .swiper-slide {
    width: 25%;
  }
}
#CenterBnrArea figure, #CenterBnrArea figcaption {
	margin: 0;
	padding: 0;
}
/*******************************
 * サイドバー
********************************/
/*新規掲載店＆新規掲載女性*/
#NewArrival-shops ul li a:hover, #NewArrival-shops ul li a:focus, 
#NewArrival-casts ul li a:hover, #NewArrival-casts ul li a:focus {
	text-decoration: none!important;
}
/*******************************
 * アフィリエイト広告箇所
********************************/
#side [class^="afibox-"] {
	position: relative;
	padding:  2rem 15px 15px;
	margin-top: 1rem;
	background-color: #f7f7f7;
}
#side [class^="afibox-"]:first-child {
	margin-top: 0;
}
#side [class^="afibox-"]:before {
	position: absolute;
	top: 0;
	left: 0;
	content: 'PR';
	padding: 0.1rem 0.5rem;
	font-size: 0.6rem;
	color: #fff;
	background-color: #373a3c;
}
#side [class^="afibox-"] .tag {
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
	justify-content: center;
	margin-top: 1rem;
}
#side [class^="afibox-"] .tag:first-child {
	margin-top: 0;
}



/*
     FILE ARCHIVED ON 23:41:02 Aug 02, 2025 AND RETRIEVED FROM THE
     INTERNET ARCHIVE ON 10:38:12 Aug 19, 2026.
     JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE.

     ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C.
     SECTION 108(a)(3)).
*/
/*
playback timings (ms):
  captures_list: 0.358
  exclusion.robots: 0.042
  exclusion.robots.policy: 0.034
  esindex: 0.007
  cdx.remote: 22.912
  LoadShardBlock: 1323.569 (3)
  PetaboxLoader3.datanode: 1361.234 (5)
  PetaboxLoader3.resolve: 90.205 (2)
  load_resource: 156.157
  loaddict: 37.156
*/