@charset "utf-8";
/* CSS Document */

div#homeCont{
	float:left;
	width:808px;
	padding-left:1px;
}

/* slide show
---------------*/

div#slideShow{
	width:640px;
	margin:8px auto 0;
}
div#slideCont{
	width:640px;
	height:300px;
	overflow:hidden;
}
div#slideCont ul{
	width:9999px;
}

div#slideCont li{
	float:left;
}


/* news
---------------*/

div#homeNews{
	clear:both;
	overflow:hidden;
	background:#fff;
	border-top:#ccc 1px solid;
	border-bottom:#ccc 1px solid;
	margin-bottom:20px;
}

div.homeNewsCont{
	float:left;
	width:268px;
	border-right:#ccc 1px solid;
}
div.homeNewsCont.otoko{
	border-right:none;
	width:270px;
}
div.homeNewsCont p{
	padding:2px 0;
}


div#homeNews h2{
	float:left;
	font-size:116.7%;
	height:35px;
	line-height:40px;
	padding-left:10px;
}
div#homeNews .more{
	height:35px;
	background:#FAFAF5;
	border-bottom:#ccc 1px solid;
}

div#homeNews .tenpo .more{border-bottom:#14AAAA 2px solid;}
div#homeNews .shinjin .more{border-bottom:#FED001 2px solid;}
div#homeNews .otoko .more{border-bottom:#D7172C 2px solid;}
div#homeNews .review .more{border-bottom:#D7172C 2px solid;}

.more a {
	float:right;
	margin:7px 5px;
	display:block;
	width:55px;
	height:21px;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	background-image:url(../img/more_btns.png);
}
.more.moreStyle01 a { background-position: 0px 0px}
.more.moreStyle02 a { background-position: 0px -21px}
.more.moreStyle03 a { background-position: 0px -42px}
.more.moreStyle04 a { background-position: 0px -84px}
.more.moreStyle05 a { background-position: 0px -63px}
.more.moreStyle06 a { background-position: 0px -105px}
.more.moreStyle07 a { background-position: 0px -126px}


div#homeNews div.newsContWrap{
	clear:both;
	height:300px;
	overflow-y: scroll;
}
div#homeNews .newsCont{
	font-size: 83.3%;
	border-bottom: #ccc 1px solid;
	padding: 10px;
	clear: both;
	overflow: hidden;
	line-height: 1.4;
	word-break: break-all;
}
div#homeNews .newsCont .time{
	background:url(../img/timer_s.jpg) 0 center no-repeat;
	padding-left:15px;
}
div#homeNews .newsCont .shop{
	line-height:1.4;
	margin-top:-2px;
	padding-bottom:5px;
}
div#homeNews .newsCont .shop a{
	font-size:120%;
}
div#homeNews .shinjin .newsCont .shop a {
	color:#2980b9;
	font-size:100%;
}
div#homeNews .newsCont .name a{
	font-size:120%;
}
div#homeNews .newsCont a{
	color:#FF1156;
}
div#homeNews .img{
	float:left;
}
div#homeNews .detail{
	float:right;
	width:155px;
}


div#homeNews .review .newsCont {
	position: relative;
}
div#homeNews .review .img {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%); /* Safari用 */
  transform: translateY(-50%);
}
div#homeNews .review .img img {
	height: auto;
}
div#homeNews .review .newsCont .review_ttl {
	margin-bottom: 3px;
}
div#homeNews .review .newsCont .review_ttl a {
    color: #0499BB;
    font-size: 120%;
}
div#homeNews .review .newsCont .shop {
    margin-top: 0px;
    padding-bottom: 0px;
}
div#homeNews .review .newsCont .shop a {
    color: #2980b9;
    font-size: 100%;
}

/* 星 */
.star_rating p {
	font-size: 13px;
	font-weight: bold;
	padding: 0 0 3px !important;
    line-height: 120%;
}
.star5_rating{
    position: relative;
    z-index: 0;
    display: inline-block;
    white-space: nowrap;
    color: #CCCCCC; /* グレーカラー 自由に設定化 */
    font-size: 18px;
    vertical-align: bottom;
}
.star5_rating:before, .star5_rating:after{
    content: '★★★★★';
}

.star5_rating:after{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    overflow: hidden;
    white-space: nowrap;
    color: #ffcf32; /* イエローカラー 自由に設定化 */
}

.star5_rating[data-rate="5.0"]:after{ width: 100%; }
.star5_rating[data-rate="5"]:after{ width: 100%; }
.star5_rating[data-rate="4.9"]:after{ width: 98%; }
.star5_rating[data-rate="4.8"]:after{ width: 96%; }
.star5_rating[data-rate="4.7"]:after{ width: 94%; }
.star5_rating[data-rate="4.6"]:after{ width: 92%; }
.star5_rating[data-rate="4.5"]:after{ width: 90%; }
.star5_rating[data-rate="4.4"]:after{ width: 88%; }
.star5_rating[data-rate="4.3"]:after{ width: 86%; }
.star5_rating[data-rate="4.2"]:after{ width: 84%; }
.star5_rating[data-rate="4.1"]:after{ width: 82%; }
.star5_rating[data-rate="4.0"]:after{ width: 80%; }
.star5_rating[data-rate="4"]:after{ width: 80%; }
.star5_rating[data-rate="3.9"]:after{ width: 78%; }
.star5_rating[data-rate="3.8"]:after{ width: 76%; }
.star5_rating[data-rate="3.7"]:after{ width: 74%; }
.star5_rating[data-rate="3.6"]:after{ width: 72%; }
.star5_rating[data-rate="3.5"]:after{ width: 70%; }
.star5_rating[data-rate="3.4"]:after{ width: 68%; }
.star5_rating[data-rate="3.3"]:after{ width: 66%; }
.star5_rating[data-rate="3.2"]:after{ width: 64%; }
.star5_rating[data-rate="3.1"]:after{ width: 62%; }
.star5_rating[data-rate="3.0"]:after{ width: 60%; }
.star5_rating[data-rate="3"]:after{ width: 60%; }
.star5_rating[data-rate="2.9"]:after{ width: 58%; }
.star5_rating[data-rate="2.8"]:after{ width: 56%; }
.star5_rating[data-rate="2.7"]:after{ width: 54%; }
.star5_rating[data-rate="2.6"]:after{ width: 52%; }
.star5_rating[data-rate="2.5"]:after{ width: 50%; }
.star5_rating[data-rate="2.4"]:after{ width: 48%; }
.star5_rating[data-rate="2.3"]:after{ width: 46%; }
.star5_rating[data-rate="2.2"]:after{ width: 44%; }
.star5_rating[data-rate="2.1"]:after{ width: 42%; }
.star5_rating[data-rate="2.0"]:after{ width: 40%; }
.star5_rating[data-rate="2"]:after{ width: 40%; }
.star5_rating[data-rate="1.9"]:after{ width: 38%; }
.star5_rating[data-rate="1.8"]:after{ width: 36%; }
.star5_rating[data-rate="1.7"]:after{ width: 34%; }
.star5_rating[data-rate="1.6"]:after{ width: 32%; }
.star5_rating[data-rate="1.5"]:after{ width: 30%; }
.star5_rating[data-rate="1.4"]:after{ width: 28%; }
.star5_rating[data-rate="1.3"]:after{ width: 26%; }
.star5_rating[data-rate="1.2"]:after{ width: 24%; }
.star5_rating[data-rate="1.1"]:after{ width: 22%; }
.star5_rating[data-rate="1.0"]:after{ width: 20%; }
.star5_rating[data-rate="1"]:after{ width: 20%; }
.star5_rating[data-rate="0.9"]:after{ width: 18%; }
.star5_rating[data-rate="0.8"]:after{ width: 16%; }
.star5_rating[data-rate="0.7"]:after{ width: 14%; }
.star5_rating[data-rate="0.6"]:after{ width: 12%; }
.star5_rating[data-rate="0.5"]:after{ width: 10%; }
.star5_rating[data-rate="0.4"]:after{ width: 8%; }
.star5_rating[data-rate="0.3"]:after{ width: 6%; }
.star5_rating[data-rate="0.2"]:after{ width: 4%; }
.star5_rating[data-rate="0.1"]:after{ width: 2%; }
.star5_rating[data-rate="0"]:after  { width: 0%; }


/* 写メール日記
---------------*/
div#imgDiary{
	position:relative;
	padding-top:40px;
	margin-bottom:20px;
	clear:both;
}

div#imgDiary .contHead{
	position:absolute;
	top:0;
	left:0;
	height:60px;
	background:url(../img/bar_midtitle.png) 0 0 no-repeat;
	width:808px;
}
div#imgDiary.shopPage .contHead{
	width:808px;
}

div#imgDiary div.contHead div.midTitle h3,
div#imgDiary div.contHead div.midTitle div{
	float:left;
	background:url(../img/icon_diary.png) 0 0 no-repeat;
	padding:8px 0 0 60px;
	height:43px;
	color:#fff;
	font-size:133.3%;
}
div#imgDiary div.contHead p.bnLink{
	float:right;
	border-left:#111 1px solid;
	background:#FFF;
}
div#imgDiary div.contHead p.bnLink a{
	display:block;
	width:135px;
	height:28px;
	padding-top:13px;
	padding-bottom:0;
	text-align:center;
	border-left:#777 1px solid;
	background:url(../img/bar_midtitle.png) 0 0 no-repeat;
	color:#fff;

	-webkit-transition: 0.3s ease-in-out;
	   -moz-transition: 0.3s ease-in-out;
		 -o-transition: 0.3s ease-in-out;
			transition: 0.3s ease-in-out;
}
div#imgDiary div.contHead p.bnLink a:hover{
	opacity:0.6;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
	zoom:1;
	text-decoration:none;
}
div#imgDiary div.contHead p.bnLink a span{
	background:url(../img/eject_r.png) 0 0px no-repeat;
	padding-left:20px;
}







div#imgDiaryCont,
div.slide_list{
	overflow:hidden;
	background-color: rgba(255,255,255,0.4);
}

div#imgDiaryCont ul.contList,
div.slide_list ul.contList{
	clear:both;
	overflow:hidden;
	border-top:#ccc 1px solid;
	border-bottom:#ccc 1px solid;
	width:808px;
	overflow:hidden;
}

div#imgDiaryCont ul.contList li,
div.slide_list ul.contList li{
	float:left;
	border-left:#FFF 1px solid;
	border-right:#ccc 1px solid;
	text-align:center;
	background-color:#fff;
}

div#imgDiaryCont ul.contList li,
#s_diary .slide_list .contList li{
	width:160px;
}

#s_movie .slide_list .contList li{
	width:201px;
}

#s_diary .contList,
#s_movie .contList{
	background-color:#FFFFFF;
}


div#imgDiaryCont.shopPageDiary  ul.contList li.lastIndex,
div.slide_list.shopPageDiary  ul.contList li.lastIndex{
	border-right:none;
	width:159px;
}


div#imgDiaryCont ul.contList li.new,
div.slide_list ul.contList li.new{
	background-image:url(../img/ribbon_new.png);
	background-position: 135px 15px;
	background-repeat: no-repeat;
}

div#imgDiaryCont div.time,
div.slide_list div.time{
	background:url(../img/timer_l.png) 6px center no-repeat;
	padding:0 0 0 35px;
	height:50px;
	line-height:1;
	text-align:left;
	border-bottom:#ccc 1px solid;
}
div#imgDiaryCont div.mailCont,
div.slide_list div.mailCont{
	padding:10px 0px;
}

div#imgDiaryCont .day,
div.slide_list .day{
	padding-top:10px;
	padding-bottom:5px;
}

div#imgDiaryCont .day span,
div.slide_list .day span{
	font-size:133.3%;
	padding:0 5px 0 0;
}

div#imgDiaryCont ul.contList .greeting a,
div.slide_list ul.contList .greeting a{
	color:#0499BB;
	display:block;
	padding:5px 0;
}


div#imgDiaryCont ul.contList .name a,
div.slide_list ul.contList .name a{
	color:#FF1152;
}
div#imgDiaryCont ul.contList .shop a,
div.slide_list ul.contList .shop a{
	color:#2980b9;
}


div#imgDiaryCont .img,
div.slide_list .img{
	height:103px;
	overflow: hidden;
}

div#imgDiaryCont .name,
div.slide_list .name{
	color:#FF1152;
}
div#imgDiaryCont .area,
div.slide_list .area{
	font-size:83.3%;
	color:#666;
	text-align: center;
}
div#imgDiaryCont .shop,
div.slide_list .shop{
	font-size:85%;
	color:#333;
}

/*TOP写メ・ムービー*/
#s_diary,
#s_movie{
	border-bottom:1px #ccc solid;
	margin-bottom: 20px;
}

#s_diary .contHead,
#s_movie .contHead{
	position:relative;
	margin:54px auto -10px;
}

#s_diary .contHead::before,
#s_movie .contHead::before{
	content:"";
	background-image:url(../img/icon_m_c.png);
	display:block;
	width:40px;
	height:34px;
	position:absolute;
	top:-33px;
	left:50%;
	margin-left:-20px;
}

#s_movie .contHead::before{
	background-position:0 0px;
}
#s_diary .contHead::before{
	background-position:0 -34px;
}

#s_diary .contHead a,
#s_movie .contHead a{
	position:absolute;
	display:block;
	width: 55px;
	height: 22px;
	top:50%;
	margin-top:-16px;
	right:5px;
	background: url(../img/more_btns.png);
	background-position:0 -147px;
	text-indent: 100%;
	overflow: hidden;
	white-space:nowrap;
}



/* recommend
---------------------*/
ul#recommend{
	overflow:hidden;
	margin-bottom:20px;
	width:808px;
}
ul#recommend li{
	float:left;
	width:300px;
	margin:10px 52px;
}

ul#recommend table{
	border-collapse:collapse;
	box-shadow:0px 2px 2px 0px rgba(0,0,0,0.4);
	-moz-box-shadow:0px 2px 2px 0px rgba(0,0,0,0.4);
	-webkit-box-shadow:0px 2px 2px 0px rgba(0,0,0,0.4);
}

ul#recommend tr.head{
	height:40px;
	background:url(../img/bar_rec.png) 0 0 repeat;
}
ul#recommend td{
	vertical-align:middle;
	line-height:1.3;
	color:#FFEA64;
}

ul#recommend td.shop{
	background:url(../img/arr_star.png) 0 0 no-repeat;
	padding:0 5px 0 55px;
}
ul#recommend td.link a{
	float:right;
}


/* shopNews
---------------------*/

div#shopNews{
	clear:both;
	overflow:hidden;
	background:#fff;
	border-top:#ccc 1px solid;
	border-bottom:#ccc 1px solid;
	margin-bottom:30px;
}

div.shopNewsCont{
	float:left;
	width:403px;
	border-right:#ccc 1px solid;
}
div.shopNewsCont.event{
	width:403px;
	border-right:none;
}
div.shopNewsCont p{
	padding:2px 0;
}


div#shopNews h2{
	float:left;
	font-size:116.7%;
	height:35px;
	line-height:40px;
	padding-left:10px;
}
div#shopNews .more{
	height:35px;
	background:#FAFAF5;
	border-bottom:#ccc 1px solid;
}

div#shopNews .shop .more{border-bottom:#4DA870 2px solid;}
div#shopNews .event .more{border-bottom:#13A0D2 2px solid;}

div#shopNews div.newsContWrap{
	clear:both;
	height:300px;
	overflow-y: scroll;
}
div#shopNews .newsCont{
	font-size:83.3%;
	border-bottom:#ccc 1px solid;
	padding:10px;
	clear:both;
	overflow:hidden;
}
div#shopNews .newsCont .time{
	background:url(../img/timer_s.jpg) 0 center no-repeat;
	padding-left:15px;
}

div#shopNews .newsCont a{
	color:#FF1156;
	font-size:120%;
}

div#shopNews .img{
	float:left;
}
div#shopNews .detail{
	float:right;
	width:100px;
}


/* arealist
---------------------*/
div#arealist {
	margin-bottom: 40px;
}
div#arealist h2 {
	position: relative;
	z-index: 10;
	text-align: center;
	line-height: 43px;
	font-size: 1.17em;
	color: #fff;
	background: url(../img/bar_midtitle.png) left bottom no-repeat;
	height: 51px;
	margin-top: 45px;
}
div#arealist h2:before {
	content: '';
	position: absolute;
	top: -34px;
	left: 0;
	right: 0;
	margin: auto;
	width: 40px;
	height: 34px;
	background-image: url(../img/icon_areapin.png);
	background-position: center;
	background-repeat: no-repeat;
}

div#arealist ul {
	clear: both;
	overflow: hidden;
	position: relative;
	margin-top: -10px;
	background-color: #FFF;
}
div#arealist ul:after {
	content: '';
	border-bottom: solid 1px #CCCCCC;
	height: 1px;
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
}

div#arealist ul li {
	color: #333333;
	float: left;
	position: relative;
	width: 25%;
	height: 45px;
	background-color: #FFF;
	border-bottom: solid 1px #CCCCCC;
	border-right: solid 1px #CCCCCC;
	box-sizing: border-box;
}
div#arealist ul li:nth-child(4n) {
	border-right: none;
}
div#arealist ul li.areacolor0:hover { background-color: #333333;}
div#arealist ul li.areacolor1:hover { background-color: #0499BB;}
div#arealist ul li.areacolor2:hover { background-color: #D11A30;}
div#arealist ul li.areacolor3:hover { background-color: #F8B608;}
div#arealist ul li.areacolor4:hover { background-color: #C11668;}

div#arealist ul li:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	width: 10px;
	height: 15px;
	background-image: url(../img/eject_color.png);
	background-repeat: repeat-y;
	background-position: top 15px center;
	background-size: 10px auto;
}
div#arealist ul li.areacolor0:after {background-position: top 15px center;}
div#arealist ul li.areacolor1:after {background-position: top 60px center;}
div#arealist ul li.areacolor2:after {background-position: top 75px center;}
div#arealist ul li.areacolor3:after {background-position: top 45px center;}
div#arealist ul li.areacolor4:after {background-position: top 30px center;}

div#arealist ul li:hover:after {
	background-position: top 0px center;
}

div#arealist ul li a {
	color: #333333;
	display: block;
	height: 100%;
}
div#arealist ul li:hover a {
	text-decoration: none;
	color: #FFF;
}
div#arealist ul li p {
	line-height: 1.4;
  position: relative;
  top: 50%;
	left: 15px;
	-webkit-transform: translateY(-50%); /* Safari用 */
  transform: translateY(-50%);
	width: 80%;
}


/* naviLink
---------------------*/

div#naviLink{
	padding:0 41px;
	overflow:hidden;
	margin-bottom:20px;
}

div#naviLink p.center{
	text-align: center;
}

/* bannerList
---------------------*/

ul#bannerList{
	overflow:hidden;
	margin-bottom:10px;
}
ul#bannerList li{
	float:left;
	margin:0 8px 10px;
	width:200px;
}

/* bookList
-------------------*/
div#bookList{
	margin-bottom:30px;
}
div#bookList ul{
	overflow:hidden;
	padding-top:2px;
	border-bottom:#CCC 1px solid;
}
div#bookList li{
	float:left;
	width:404px;
	position:relative;
}

div#bookList p.rebbon{
	position:absolute;
	top:-2px;
	left:7px;
}
div#bookList h2{
	font-size:116.7%;
	background:#333;
	padding-left:38px;
	border-right:#555 1px solid;
	border-left:#000 1px solid;
}
div#bookList h2 a{
	height:36px;
	line-height:36px;
	color:#fff;
	display:block;
	width:344px;
	background:url(../img/arr_book.png) right center no-repeat;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	padding-right: 12px;
}

div#bookList div.bookCont{
	padding:7px 0 25px;
	overflow:hidden;
}
div#bookList li:nth-child(odd) div.bookCont {
	border-right:#ccc 1px solid;
}
div#bookList .img{
	float:left;
	margin-left:12px;
}
div#bookList .note{
	float:right;
	width:260px;
	margin-right:15px;
}
div#bookList .img {
	box-shadow:0px 2px 2px 0px rgba(0,0,0,0.4);
	-moz-box-shadow:0px 2px 2px 0px rgba(0,0,0,0.4);
	-webkit-box-shadow:0px 2px 2px 0px rgba(0,0,0,0.4);
}
/* homeInfo
---------------------*/

div#homeInfo{
	overflow:hidden;
	background:#fff;
	border-top:#ccc 1px solid;
	border-bottom:#ccc 1px solid;
	margin-bottom:50px;
}

div#homeInfo h2{
	float:left;
	font-size:116.7%;
	height:35px;
	line-height:40px;
	padding-left:10px;
}
div#homeInfo .more{
	height:35px;
	background:#FAFAF5;
	border-bottom:#B0245D 2px solid;
}


div#homeInfo div#infoContWrap{
	height:300px;
	overflow-y: scroll;
}

div#homeInfo div#infoContWrap li{
	padding:10px;
	border-bottom:#ccc 1px solid;
}

div#homeInfo .time{
	background:url(../img/timer_s.jpg) 0 center no-repeat;
	padding-left:15px;
}
div#homeInfo .title{
	margin:5px 0;
}
div#homeInfo .title a{
	color:#FF1156;
	font-size:118%;
}
div#homeInfo .note{
	padding-left:10px;
}



/* shopNews
----------------------*/

/* news
---------------*/

div#shopPageNews{
	clear:both;
	overflow:hidden;
	background:#fff;
	border-top:#ccc 1px solid;
	border-bottom:#ccc 1px solid;
	margin-bottom:20px;
}

div.shopPageNewsCont{
	float:left;
	width:268px;
	border-right:#ccc 1px solid;
}
div.shopPageNewsCont.otoko{
	border-right:none;
	width:270px;
}


div#shopPageNews h3,
div#shopPageNews div.ntitle{
	float:left;
	font-size:116.7%;
	height:35px;
	line-height:40px;
	padding-left:10px;
}
div#shopPageNews .more {
	height:35px;
	background:#FAFAF5;
	border-bottom:#ccc 1px solid;
}
div#shopPageNews .sNews .more{border-bottom:#14AAAA 2px solid;}
div#shopPageNews .evNews .more{border-bottom:#FED001 2px solid;}
div#shopPageNews .otoko h3,
div#shopPageNews .otoko div.ntitle{
	border-bottom:#D7172C 2px solid;
	width:262px;
	background: #FAFAF5
}

div#shopPageNews div.newsContWrap{
	clear:both;
	height:300px;
	overflow-y: scroll;
}


div#shopPageNews .newsCont{
	border-bottom:#ccc 1px solid;
	padding:10px;
	clear:both;
	overflow:hidden;
}
div#shopPageNews .newsCont.non {
	border-bottom:0;
}
div#shopPageNews .newsCont .time{
	background:url(../img/timer_s.jpg) 0 center no-repeat;
	padding-left:15px;
	color:#FF1155;
}

div#shopPageNews .newsCont a{
	color:#FF1156;
	text-decoration:underline;
}
div#shopPageNews .newsCont a:hover{
	text-decoration:none;
}
div#shopPageNews .newsCont .note .title {
	display: block;
    color: #FF1156;
    font-size: 110%;
	font-weight: bold;
}

div#shopPageNews .otoko div.newsContWrap{
	height:300px;
}


div#shopPageNews .otoko .printBtn{
	text-align:center;
}

div#shopPageNews .otoko .printBtn a{
	background:url(../shop/img/btbtn_bg.gif) 0 0 repeat-x;
	display:block;
	height:40px;
	line-height:35px;
	color:#fff;
	-webkit-transition: 0.3s ease-in-out;
	   -moz-transition: 0.3s ease-in-out;
		 -o-transition: 0.3s ease-in-out;
			transition: 0.3s ease-in-out;
}
div#shopPageNews .otoko .printBtn a:hover{
	opacity:0.6;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
	zoom:1;
	text-decoration:none;
}

div#shopPageNews .otoko .printBtn a span{
	background:url(../shop/img/icon_print.png) 0 center no-repeat;
	padding-left:20px;
}


/* campaign
-----------------*/

div.campaign{
	background:#fff;
	border-bottom:#FFF 1px solid;
	margin-bottom:35px;
	position:relative;
	padding-top:40px;
}

div.campaign div.campTitle{
	position:absolute;
	top:0;
	left:0;
	height:55px;
	line-height:42px;
	width:808px;
	background:url(../img/bar_camptitle.png) 0 0 no-repeat;
}
div.campaign div.campTitle h3{
	background:url(../img/icon_pin.png) 0 0 no-repeat;
	padding:0 0 0 60px;
	font-size:133.3%;
}

div.campaign div.campCont .img{
	text-align:center;
	padding:15px 0 10px;
}
div.campaign div.campCont .note{
	padding:0 20px 15px;
}
div.campaign div.campCont ul{
	overflow:hidden;
	border-bottom:#CCC 1px solid;
}
div.campaign div.campCont li{
	float:left;
	width:808px;
}
div.campaign div.campCont.banner2 {
	background:url(../img/line1.png) top center repeat-y;
}
div.campaign div.campCont.banner3{
	background:url(../img/line2.png) top center repeat-y;
}
div.campaign div.campCont.banner2 li{
	width:404px;
}
div.campaign div.campCont.banner3 li{
	width:268px;
}
div.campaign div.campCont li.lastIndex{
	border-right:none;
}




/*TOPグレータイトル*/
#TopRanking .contHead,
#s_diary .contHead,
#s_movie .contHead,
.top_ranking h2{
	background: url(../img/bar_midtitle.png) left bottom no-repeat;
	width: 808px;
}

#TopRanking .contHead{
	position:absolute;
	top: 0;
	left: 0;
	z-index:3;
	height: 89px;
}

#s_diary .contHead,
#s_movie .contHead{
	height: 51px;
}

#TopRanking .midTitle h2,
#s_diary .contHead,
#s_movie .contHead,
.top_ranking h2{
	text-align:center;
	line-height: 43px;
	color:#fff;
}

#TopRanking .midTitle h2,
#s_movie .contHead h2,
#s_diary .contHead h2,
.top_ranking h2{
	font-size: 1.17em;
}

.top_ranking h2{
	height: 51px;
	margin-bottom:-10px;
}

/* ランキングTOP3 */
#TopRanking {
	position: relative;
	padding-top:79px;
	margin-bottom:30px;
	border-bottom:#666666 solid 1px;
}
#TopRanking .contHead:before {
	content: '';
	display:block;
	background:url(../img/king.png) 0 0 no-repeat;
	height:38px;
	width:80px;
	margin:0 auto;
}

.tabMenu {
	height:56px;
	padding-bottom:11px;
	width: 809px;
	display:block;
	position:absolute;
	top:79px;
	left:0;
	z-index:1;
	background-image:url(../img/talk/curve_bg.png);
	background-repeat: no-repeat;
	background-position: bottom center;
}
.tabMenu ul {
	height:55px;
	background-color:#f9f9f9;
	border-bottom:#ccc solid 1px;
}
.tabMenu ul li {
	width:50%;
	display:block;
	float:left;
	height:55px;
    box-sizing:border-box;
}
.tabMenu li:first-child {
	border-right:#ccc solid 1px;
}
.tabMenu li a {
	display: block;
	width:100%;
	height:50px;
	line-height:50px;
	font-size:116%;
	text-align: center;
	border-bottom:#BBB solid 2px;
	color:#bbb;
}
.tabMenu li.selected a {
	border-bottom:#FF2883 solid 2px;
	color:#535353;
}


#rankWrap {
	background-color:#f9f9f9;
	display:table;
	width:809px;
	overflow:hidden;
	margin-top:56px;
}
#rankWrap ul {}
#rankWrap ul li {
	display: flex;
	flex-flow: wrap;
	justify-content: center;
	align-items: stretch;
}
#rankWrap .rankList {
	width:201px;
	vertical-align:top;
	border-right:#999 solid 1px;
}
#rankWrap .rankList.type2{
	width:201px;
	background:#fff;
}
#rankWrap .rankList.type1 h3{
	background-color:#149D9D;
}
#rankWrap .rankList.type2 h3{
	background-color:#F3C805;
}
#rankWrap .rankList.type3 h3{
	background-color:#C31528;
}
#rankWrap .rankList.type4 h3{
	background-color:#0499BB;
}
#rankWrap .rankList h3 {
	height:60px;
	text-align: center;
	font-size:120%;
	position: relative;
}
#rankWrap .rankList h3:after {
	content:'';
	display:block;
	margin:0 auto;
	width: 0;
	height: 0;
	border: 10px solid transparent;
}
#rankWrap .rankList.type1 h4:after {
	border-top: 9px solid #149D9D;
}
#rankWrap .rankList.type2 h4:after {
	border-top: 9px solid #F3C805;
}
#rankWrap .rankList.type3 h4:after {
	border-top: 9px solid #C31528;
}
#rankWrap .rankList.type4 h4:after {
	border-top: 9px solid #0499BB;
}
#rankWrap .rankList h3 a {
	color:#fff;
	display:flex;
	justify-content:center;
	align-items:center;
	height:60px;
	line-height:1.2;
}
#rankWrap .rankList h3 a:after {
	content: '';
	position:absolute;
	top:0;
	right:0;
	width:40px;
	height:60px;
	display:block;
	background:url(../img/eject_r.png) center center no-repeat;
}

#rankWrap .rankList ul {
	padding-bottom:60px;
}
#rankWrap .rankList li {
	text-align: center;
	border-bottom:#ccc solid 1px;
	padding: 20px 10px;
	position: relative;
	height: 160px;
}
#rankWrap .rankList li:nth-child(3) {
	border-bottom:none;
}
#rankWrap .rank_1 {
	overflow:hidden;
}
#rankWrap .rank_o {
	overflow:hidden;
}
#rankWrap .rankCont {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%); /* Safari用 */
	transform: translate(-50%, -50%);
	width: 90%;
	word-break: break-all;
}

.rankList .badge {
	position: absolute;
	border-radius:50%;
	opacity: 0.9;
	z-index:1;
}
.rankList .rank1 {
	width:25px;
	height:25px;
	line-height:25px;
	background: rgba(237,183,10,1);
    background: linear-gradient(to bottom, rgba(253,205,23,1) 0%,rgba(237,183,10,1) 100%);
    color:#fff;
    border:#F4D570 solid 3px;
}
.rankList .rank2 {
	width:25px;
	height:25px;
	line-height:25px;
	background: rgba(164,164,164,1);
    background: linear-gradient(to bottom, rgba(214,214,214,1) 0%,rgba(164,164,164,1) 100%);
    color:#fff;
    border:#D4D4D2 solid 3px;
}
.rankList .rank3 {
	width:25px;
	height:25px;
	line-height:25px;
	background: rgba(213,168,115,1);
    background: linear-gradient(to bottom, rgba(228,198,156,1) 0%,rgba(213,168,115,1) 100%);
    color:#fff;
    border:#E6CAA9 solid 3px;
}
.shopCont .rank1,
.shopCont .rank2,
.shopCont .rank3 {
    top: 62px;
    left: 6px;
}
.girlCont .rank1,
.girlCont .rank2,
.girlCont .rank3,
.girlCont .rank4 {
	top: 94px;
	left: 45px;
}


.rankList li .rank1 .name{
	color:#FF1156;
	font-size:116.7%;
}
.rankList li .name a{
	color:#FF1156;
}
li.girlCont .rankList li .name a{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 39px;
	word-break: break-all;
}
.rankList li .size,
.rankList li .area{
	font-size:83.3%;
}
.rankList li .shop {
	line-height: 1.3;
}
.rankList li .shop a{
	color:#2980b9;
	font-size:83.3%;
	padding:0 10px;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	text-overflow: ellipsis;
}
.rankList li .shop a:after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    width: 30px;
    height: 1.4em;
    background: url(../img/dot/name_overlay.png) repeat-y;
}
#rankWrap .rankList.type2 li .shop a:after{
    background: url(../img/dot/white_overlay.png) repeat-y;
}
.rankList li .img{
    margin: auto;
	width: 60px;
}
.rankList li .img img {
	width: 100%;
	height: auto;
}
.shopCont .rankList li .img{
    margin: auto;
	width: 160px;
	height: 52px;
	overflow: hidden;
}
.shopCont .rankList li .img img {
	width: 100%;
	height: auto;
}

.rankList .more_btn {
	position:absolute;
	bottom:0;
	width:201px;
	background:#ccc;
	border-top:#999 solid 1px;
	overflow:hidden;
}
.rankList.type2 .more_btn {
	width:201px;
}
.rankList .more_btn a {
	text-align: center;
	margin:10px auto;
	display:block;
	line-height: 40px;
	width:104px;
	height: 38px;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	background:#fff;
	padding:1px 0;

	box-shadow:0px 2px 2px 1px rgba(0,0,0,0.4);
	-moz-box-shadow:0px 2px 2px 1px rgba(0,0,0,0.4);
	-webkit-box-shadow:0px 2px 2px 1px rgba(0,0,0,0.4);
}
.rankList .more_btn a span {
	display:block;
	width:55px;
	height:22px;
	text-align: center;
	margin:10px auto 0;
	background:url(../img/more_btns.png) center 0px no-repeat;
	text-indent:100%;
	overflow:hidden;
}
.rankList.type2 .more_btn a span {
	background-position: center -22px;
}
.rankList.type3 .more_btn a span {
	background-position: center -44px;
}

.rankList .more_btn a:hover {
	background: #fafafa;
	box-shadow:0px 3px 4px 1px rgba(0,0,0,0.6);
	-moz-box-shadow:0px 3px 4px 1px rgba(0,0,0,0.6);
	-webkit-box-shadow:0px 3px 4px 1px rgba(0,0,0,0.6);
}




/*エリア情報　ランキング*/
#TopRanking.area {}
#TopRanking.area .rankctgr {}
#TopRanking.area .rankctgr .RankTitle {
	height: 56px;
	position: relative;
	background-color: #FAFAF5;
	border-bottom: #ccc solid 1px;
}
#TopRanking.area .rankctgr .RankTitle:after {
	content: '';
	z-index: 10;
	position: absolute;
	bottom: -11px;
	left: 0;
	width: 100%;
	height: 11px;
	background-image: url(../img/talk/curve_bg.png);
	background-repeat: no-repeat;
	background-position: bottom center;
}
#TopRanking.area .rankctgr .RankTitle p {
	display: block;
	width: 100%;
	height: 50px;
	line-height: 55px;
	font-size: 116%;
	text-align: center;
	border-bottom: #4DA86E solid 2px;
	color: #333333;
}
#TopRanking.area #girl.rankctgr .RankTitle p {	border-bottom: #4DA86E solid 2px;}
#TopRanking.area #shop.rankctgr .RankTitle p {	border-bottom: #13A0D2 solid 2px;}

#TopRanking.area .rankctgr .RankTitle a {
	display: block;
	position: absolute;
	width: 55px;
	height: 22px;
	top: 14px;
	right: 5px;
	background: url(../img/more_btns.png);
	background-position: 0 -84px;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	z-index: 10;
}
#TopRanking.area #girl.rankctgr .RankTitle a {background-position: 0 -84px;}
#TopRanking.area #shop.rankctgr .RankTitle a {background-position: 0 -62px;}

#TopRanking.area #rankWrap {
	width: 809px;
	margin-top: 0;
}
#TopRanking.area #rankWrap .rankList {
    width: 100%;
    border-right: none;
}
#TopRanking.area #rankWrap .rankList ul {
	margin: 0;
	padding-bottom: 0;
	border-bottom: solid 1px #CCCCCC;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
}
#TopRanking.area #rankWrap .rankList ul li {
	border-bottom: none;
	border-right: solid 1px #CCCCCC;
	padding: 20px 20px 15px;
	width: calc(100% - 40px);
	z-index: 1;
}

#TopRanking.area .rankList li .shop {
	width: 100%;
}

#TopRanking.area .rankList .badge {
	position: absolute;
	top: 80px;
	left: 80px;
}
#TopRanking.area .shopCont { display: block !important;}

#TopRanking.area .shopCont .rank {
	top: 0;
	left: 0;
}
#TopRanking.area .shopCont .badge {
	top: 60px;
	left: 37px;
}


.shopCont .rank{
	position:absolute;
	top:90px;
	left:2px;
	z-index:112;
}
.shopCont table{
	width:auto;
	text-align:left;
	margin: 0 auto;
}
.shopCont table.name td {
    vertical-align: middle;
    padding: 0 0 10px;
}
.shopCont table.name a{
	color:#FF1154;
	width: 160px;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	text-overflow: ellipsis;
	height: calc(1.6em * 2);
	word-break: break-all;
}
.shopCont div.shopListDetail{
	position: relative;
	width: 160px;
	margin:0 auto 0;
}
.shopCont div.type{
	clear: both;
	padding: 0;
	overflow: hidden;
	height: 48px;
}
.shopCont div.type .area{
	height:24px;
	line-height:24px;
	text-align:center;
	color:#fff;
	float:left;
	font-size:inherit;
  padding: 0 10px;
}
.shopCont div.type .kind{
	line-height:24px;
	background:#888;
	color:#fff;
	float:left;
  padding: 0 10px;
}
.shopCont div.shopListDetail .shop{
	font-size:83.3%;
	color:#111;
}


/*TOP スライドバナー*/
#t_slide {
    margin-left: 4px;
    margin-bottom: 0;
    padding-bottom: 5px;
    width: 800px;
    height: 400px;
    display: block;
    overflow: hidden;
}
#t_slide + *{
	clear:both;
}
#t_slide.only {
	margin-bottom: 0 !important;
}

#t_slide .camera_thumbs_cont ul{
	overflow:hidden;
	height:77px;
	padding-bottom:0;
}

#t_slide .camera_nextThumbs,
#t_slide .camera_prevThumbs{
	bottom:-4px;
}

#t_slide .camera_thumbs_cont{
	background:transparent;
}

#t_slide .camera_prevThumbs,
#t_slide .camera_nextThumbs{
	visibility:visible;
}
#t_slide div {
    outline: 0;
    margin: 0px 5px;
    overflow: visible;
}
#t_slide img {
	max-width: 100%;
    border-radius: 5px !important;
}

#t_slide .slick-dots {
    bottom: 27px;
}
#t_slide .slick-dots li {
    position: relative;
    display: inline-block;
    width: 10px;
    height: 10px;
	margin: 0 7px;
}
#t_slide .slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 10px;
    height: 10px;
    padding: 0;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background-color: #999;
	border-radius: 50%;
	position: relative;
}
#t_slide .slick-dots li button:before {
    content: '';
	border-radius: 50%;
	background: #3C3C38;
    text-align: center;
    position: absolute;
    opacity: 0;
    top: 0;
	bottom: 0;
	right: 0;
    left: 0;
	margin: auto;
    width: 6px;
    height: 6px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
#t_slide .slick-dots li.slick-active button:before
{
    opacity: 1;
}



/*TOP 総選挙バナー*/
#banner_election{
	display:block;
	width:770px;
	margin:0 auto 20px;
}


/*TOP 現在待機中*/
#right_now{
	position:relative;
	margin-bottom:20px;
	margin-top: 20px;
}

#right_now h2{
	text-align:center;
	color:#FFFFFF;
	background-color:#65070C;
	box-shadow: inset 0 4px 4px rgba(0,0,0,.3), 0 4px 4px rgba(0,0,0,.3);
	height:50px;
	line-height:51px;
	font-size: 1.17em;
	position:relative;
	z-index:10;
}

#right_now h2::before{
	content: "";
	display: block;
	position: absolute;
	background:url(../img/icon_now.png) no-repeat center center;
	width: 56px;
	height: 54px;
	top: -15px;
	left: 250px;
}

#right_now > a{
	display:block;
	position:absolute;
	width: 55px;
	height: 22px;
	top:14px;
	right: 5px;
	background: url(../img/more_btns.png);
	background-position: 0 -147px;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	z-index:10;
}

#right_now ul{
	display: flex;
	overflow:hidden;
	box-shadow: 0 4px 4px rgba(0,0,0,.3);
	border-bottom:#FFFFFF 1px solid;
	background-color:#F5F5EA;
}

#right_now li{
	width:200px;
	flex:0 0 200px;
	padding:20px 20px 60px;
	position:relative;
}

#right_now li:nth-child(odd){
	background-color:#D2D2C9;
}

#right_now li > a{
	display:block;
}

#right_now li > a img{
	width:100%;
}

#right_now li > div,
#right_now li > span{
	position:absolute;
	height:60px;
	padding:5px;
	box-sizing:border-box;
	bottom:20px;
	display:flex;
	flex-direction:column;
	justify-content:center;
	box-shadow: 0 2px 2px rgba(0,0,0,.3);
}

#right_now li > div{
	width:160px;
	left:10px;
	background-color:rgba(255,255,255,.8);
	font-size:85%;
}

#right_now li > div > *{
	display:block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#right_now li > div a{
	color:#287FB8;
}

#right_now li > div .now_name{
	color:#FF1152;
	font-size:120%;
}

#right_now li > span{
	width:60px;
	right:10px;
	background-color:rgba(68,68,68,.8);
	text-align:center;
	line-height:1;
	color:#FFFFFF;
}


/*top BN認定グラビア*/
#top_attention{
	position:relative;
	margin: 20px 0 30px;
}

#top_attention h2{
	background-color:#C0392B;
	text-align:center;
	color:#FFFFFF;
  font-size: 1.17em;
  box-shadow: inset 0 4px 4px rgba(0,0,0,.3), 0 4px 4px rgba(0,0,0,.3);
  height: 50px;
  line-height: 51px;
	position:relative;
}

#top_attention h2::before{
	content:"";
	display:block;
	width:49px;
	height:48px;
	background:url(../img/icon_atte.png);
	position:absolute;
	left:50%;
	top:-5px;
	margin-left:-100px;
}

#top_attention > a{
	display: block;
	position: absolute;
	width: 55px;
	height: 22px;
	top: 14px;
	right: 5px;
	background: url(../img/more_btns.png);
	background-position: 0 -147px;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	z-index: 10;
}

#top_attention > ul{
	overflow: hidden;
	box-shadow: 0 4px 4px rgba(0,0,0,.3);
	border-bottom: #FFFFFF 1px solid;
	padding:0 5px;
	white-space:nowrap;
	text-align:center;
}

#top_attention > ul > li{
	padding:10px 5px;
	width:480px;
	display:inline-block;
}

#top_attention > ul > li img{
	width:100%;
}

#top_attention > ul > li > div{
	border:#CCCCCC 1px solid;
	background-color:#FFFFFF;
	position:relative;
	padding:10px 10px 10px 70px;
	text-align:justify;
}

#top_attention > ul > li > div a{
	display:block;
  color: #FF1152;
  font-size: 120%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#top_attention > ul > li > div div{
	width:60px;
	height:60px;
	border-radius:30px;
	overflow:hidden;
	box-shadow:0 2px 4px rgba(0,0,0,.4);
	position:absolute;
	top:-30px;
	left:5px;
}





/*newマーク*/
.mk_new{
	position:relative;
}

.mk_new::before{
	content:"";
	display:block;
	width:18px;
	height:20px;
	position:absolute;
	background: url(../img/ribbon_new.png) no-repeat;
	top:0;
	right:10px;
	z-index:10;
}



/*goodボタン*/
.btn_good,
.btn_g0{
	display:block;
	cursor:pointer;
}

.btn_good span,
.btn_g0 span{
	font-size:.75rem !important;
}

.btn_good img,
.btn_g0 img{
	padding:2px 3px 4px 3px;
	border-radius:50%;
	margin-right:4px;
	vertical-align:-7px;
}

.btn_good{
	color:#009999;
}

.btn_good img{
	background-color:#009999;
}

.btn_g0{
	color:#999999;
}

.btn_g0 img{
	background-color:#999999;
}

.btn_good:hover,
.btn_g0:hover{
	text-decoration:none;
}

.btn_good img:active,
.btn_g0 img:active{
	transform:rotate(10deg);
}

/*good数*/
.mailCont{
	position:relative;
}

.good_no,
.good_0{
	text-align:left;
	line-height:16px;
	height:16px;
	margin-top:5px;
}

.good_no{
	color:#009999;
}
.good_0{
	color:#999999;
}

#pubGirlList .good_no,
#pubGirlList .good_0,
.shopHomeCont .good_no,
.shopHomeCont .good_0{
	position:absolute;
	bottom:10px;
}


.good_no::before,
.good_0::before{
	content:"";
	display:inline-block;
	width:16px;
	height:16px;
	background:url(../img/icon_good.png) no-repeat;
	margin-right:5px;
	vertical-align:-1px;
}

.good_0::before{
	background-position:0 -16px;
}

.good_link:hover {
	text-decoration: none;
}

/* HOMEの求人用バナー設定*/
#recruit_top_b {
	margin: 30px 0;
	display: flex;
	justify-content: space-between;
}
#recruit_top_b > a {
	display: block;
	width: calc(50% - 7px);
}




/*TOPランキング*/
.top_ranking h2{
	position:relative;
	margin-top:38px;
}
.top_ranking h2:before{
	content: '';
	display:block;
	background:url(../img/king.png) 0 0 no-repeat;
	height:38px;
	width:80px;
	position:absolute;
	top:-38px;
	left:50%;
	margin-left:-40px;
}
.top_ranking h2 a{
	position:absolute;
	display:block;
	width: 55px;
	height: 22px;
	top:50%;
	margin-top:-16px;
	right:5px;
	background: url(../img/more_btns.png);
	background-position:0 -147px;
	text-indent: 100%;
	overflow: hidden;
	white-space:nowrap;
}

.top_ranking{
	display:flex;
	flex-wrap:wrap;
	text-align:center;
	border-bottom: #666666 solid 1px;
	margin-top:20px;
}
.top_ranking section{
	width:calc(100% / 3);
	flex:1 1 calc(100% / 3);
	min-width:0;
	box-sizing:border-box;
	background-color:#FFFFFF;
	position:relative;
	padding-bottom:59px;
}
.top_ranking section:nth-of-type(odd){
	background-color: #f9f9f9;
}
.top_ranking section:not(:first-of-type){
	border-left: #999 solid 1px;
}

.top_ranking h3{
	color: #fff;
	height: 50px;
	line-height:51px;
}
.top_ranking h3 a{
	display:block;
}

.top_ranking section > ul > li{
	border-bottom: #ccc solid 1px;
	padding:15px;
}
.top_ranking section > ul > li > a,
.top_ranking section > ul > li > span{
	display:block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.top_ranking section > ul > li > a{
	color: #2980b9;
	font-size:80%;
}
.top_ranking section > ul > li > .r_name{
	color: #FF1154;
}

.top_ranking section > ul > li > span{
	font-size:80%;
}

.top_ranking section > ul > li > a img{
	width:100%;
}
.top_ranking section > ul > li > div a{
	display:block;
	width:200px;
	height:65px;
	margin:0 auto 10px;
}
.rank_c_img{
	width:110px;
	height:110px;
	border-radius:50%;
	overflow:hidden;
	margin:10px auto;
}


.top_ranking section > div{
	position: absolute;
	bottom: 0;
	width:100%;
	background: #ccc;
	border-top:1px #999 solid;
	overflow: hidden;
	height:61px;
}
.top_ranking section > div a{
	text-align: center;
	margin: 10px auto;
	display: block;
	line-height: 40px;
	width: 104px;
	height: 38px;
	border-radius: 3px;
	background: #fff;
	padding: 1px 0;
	box-shadow: 0px 2px 2px 1px rgba(0,0,0,0.4);
	overflow: hidden;
}
.top_ranking section > div a:hover{
	background: #fafafa;
	box-shadow: 0px 3px 4px 1px rgba(0,0,0,0.6);
}
.top_ranking section > div a::before{
	content:"";
	display: block;
	width: 55px;
	height: 22px;
	text-align: center;
	margin: 10px auto;
	background: url(../img/more_btns.png) center 0px no-repeat;
	text-indent: 100%;
}
.top_ranking .central > div a::before{
	background-position:center -44px;
}
.top_ranking .western > div a::before{
	background-position:center -22px;
}

/* 2020.07.16 初めての風遊記 */
#comic_topbn {
	padding: 0px 20px;
	margin-bottom: 30px;
}
#comic_topbn .link_banner {
	height: auto;
    overflow: hidden;
}
#comic_topbn.w380 {
	display: flex;
	justify-content:center;
	gap: 0 8px;
}
#comic_topbn.w380 .link_banner {
	width: 380px;
}

#comic_topbn .link_banner h2 {
	width: 100%;
  height: 50px;
  line-height: 50px;
	padding: 0 15px;
	box-sizing: border-box;
	border: solid 1px #353535;
	background: linear-gradient(#353535 0%, #808080 100%) no-repeat 50% 50% / 100% 100%;

	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
#comic_topbn .link_banner h2 a:hover { text-decoration: underline;}
#comic_topbn .link_banner h2 .new {
	content: 'NEW';
	font-size: 12px;
	color: #FFF;
	width: 42px;
	line-height: 20px;
	text-align: center;
	background-color: #FF1153;
	border-radius: 3px;
	float: left;
	margin-top: 15px;
	margin-right: 12px;
}

#comic_topbn .link_banner h2 img {}
#comic_topbn .link_banner a {
	color: #FFF;
	font-size: 14.5px;
}


/* 2022.12 トップスペシャル広告A～E */
div#shopListBox.special_ad {
    border-bottom: solid #FFFFFF 1px;
    margin-bottom: 15px;
	position: relative;
	display: inline-block;
}
div#shopListBox.special_ad:after {
	content: '';
	width: 320px;
	height: 10px;
	margin: auto;
	background-image: url("../img/shadow_topspecial_ad.png");
	background-position: top center;
	background-repeat: none;
	position: absolute;
	bottom: -11px;
	left: 0;
	right: 0;
}
div#shopListBox.special_ad ul {
	display: flex;
}

div#shopListBox.special_ad li {
	border-top: #CCC 1px solid;
	overflow: initial;
}
div#shopListBox.special_ad li p.comment{
    box-shadow: 0 0px 7px 1px rgb(0 0 0 / 40%);
    position: absolute;
    left: -26%;
	top: 50%;
	-webkit-transform: translateY(-50%); /* Safari用 */
	transform: translateY(-50%);
	z-index: 100;
	background: linear-gradient(90deg, rgba(2,0,36,1) 0%, rgba(231,76,96,1) 0%, rgba(236,127,95,1) 100%);
    padding: 15px;
    font-size: 12px;
    transition: all 0.2s;
    opacity: 0;
    color: #FFF;
    border-radius: 5px;
    max-width: 200px;
	width: 100%;
	box-sizing: border-box;
}
div#shopListBox.special_ad li p.comment:before {
    content: "";
    position: absolute;
    left: 100%;
    top: 50%;
    margin-top: -10px;
    border: 10px solid transparent;
    border-left: 10px solid #EC7F5F;
}
div#shopListBox.special_ad li:hover p.comment {
	opacity: 1;
}
div#shopListBox.special_ad li div.shopListCont {
	width: 100%;
}
div#shopListBox.special_ad li div.shopListCont div.shopDetail {
    width: 591px;
}
div#shopListBox.special_ad li div.shopListCont .shopBanner {
    padding: 8px;
    border-right: #CCC 1px solid;
    background: #efefef;
    position: relative;
	overflow: hidden;
}
div#shopListBox.special_ad li div.shopListCont .shopBanner:before {
    content: '';
    width: 233px;
    height: 298px;
    background-image: url("../img/bg_topspecial_ad.png");
    background-repeat: no-repeat;
    position: absolute;
    top: 8px;
    right: -25px;
}
div#shopListBox.special_ad li div.shopListCont .shopBanner a {
	display: block;
	position: relative;
	z-index: 10;
}
div#shopListBox.special_ad li div.shopListCont .shopBanner .dxMark {
    top: 2px;
    right: 0px;
	z-index: 15;
}
div#shopListBox.special_ad li div.shopListCont .webyoyakuMark {
    right: 5px;
}

/* 現在待機中 */
#attend.home {
	position: relative;
	background-color: #F6F6ED;
    border-top: solid 1px #CCCCCC;
    border-bottom: solid 1px #FFF;
    margin-top: 10px;
	margin-bottom: 30px;
    box-shadow: 0 4px 4px rgb(0 0 0 / 30%);
}
#attend.home > h2 {
    text-align: center;
    color: #FFFFFF;
	border-top: solid 1px #FFF;
    border-bottom: solid 1px #CCCCCC;
    background-color: #BB0133;
    background-image: url(../img/shadow_topspecial_ad.png);
	background-position: top center;
	background-repeat: no-repeat;
    box-sizing: border-box;
    height: 50px;
    line-height: 51px;
    font-size: 1.17em;
    position: relative;
    z-index: 10;
}
#attend.home > h2::before {
    content: "";
    display: block;
    position: absolute;
    background: url("../img/icon_attend.svg") no-repeat center center;
    width: 70px;
    height: 65px;
    top: -15px;
    left: 245px;
}
#attend.home > a {
    display: block;
    position: absolute;
    width: 55px;
    height: 22px;
    top: 14px;
    right: 5px;
    background: url(../img/more_btns.png);
    background-position: 0 -147px;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    z-index: 10;
}
#attend.home .girl_list {
	border-top: solid 1px #FFF;
    border-bottom: solid 1px #CCCCCC;
	padding-top: 15px;
	padding-bottom: 15px;
    margin: 0;
}
#attend.home .girl_list ul {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    display: flex;
    column-gap: 10px;
    padding-right: 10px;
    box-sizing: border-box;
    box-shadow: none;
    border: none;
    background-color: transparent;
}
#attend.home .girl_list ul li {
    flex: 0 0 180px;
    width: 180px;
    position: relative;
    z-index: 0;
    text-align: center;
    border: none !important;
    margin-bottom: 0 !important;
    font-size: 12px;
    background-color: transparent;
    padding: 0;
}
#attend.home .girl_list ul li:first-child {
    margin-left: 10px;
}
#attend.home .girl_list ul li > a {
    display: block;
    position: relative;
    margin-bottom: 5px;
}
#attend.home .girl_list ul li img {
    max-width: 100%;
}
#attend.home .girl_list ul li .state {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    color: #FFF;
    text-align: center;
    font-size: 12px;
    height: 26px;
    line-height: 27px;
    padding: 0 10px;
    box-sizing: border-box;
	background-color:rgba(215,23,44,0.90);
}

#attend.home .girl_list ul li > span {
    height: 18px;
    display: block;
}
#attend.home .girl_list ul li .name a {
    color: #FF1152;
    font-size: 12px;
	display: block;
}
#attend.home .girl_list ul li .shop {}
#attend.home .girl_list ul li .shop a {
    color: #287FB8;
    font-size: 10px;
	display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* オススメの新人キャスト */
#freshCast {
	position: relative;
	background-color: #F6F6ED;
    border-top: solid 1px #CCCCCC;
    border-bottom: solid 1px #FFF;
	margin-top: 20px;
	margin-bottom: 30px;
    box-shadow: 0 4px 4px rgb(0 0 0 / 30%);
}
#freshCast h2 {
    text-align: center;
    color: #FFFFFF;
	border-top: solid 1px #FFF;
    border-bottom: solid 1px #CCCCCC;
    background-color: #4969AC;
    background-image: url(../img/shadow_topspecial_ad.png);
	background-position: top center;
	background-repeat: no-repeat;
    box-sizing: border-box;
    height: 50px;
    line-height: 51px;
    font-size: 1.17em;
    position: relative;
    z-index: 10;
}
#freshCast h2::before {
    content: "";
    display: block;
    position: absolute;
    background: url("../img/icon_freshCast.svg") no-repeat center center;
    width: 70px;
    height: 65px;
    top: -15px;
    left: 255px;
}
#freshCast > a {
    display: block;
    position: absolute;
    width: 55px;
    height: 22px;
    top: 14px;
    right: 5px;
    background: url(../img/more_btns.png);
    background-position: 0 -147px;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    z-index: 10;
}
#freshCast .girl_list {
	border-top: solid 1px #FFF;
    border-bottom: solid 1px #CCCCCC;
	padding-top: 15px;
	padding-bottom: 15px;
}
#freshCast .girl_list ul {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    display: flex;
    column-gap: 10px;
    padding-right: 10px;
    box-sizing: border-box;
}
#freshCast .girl_list ul li {
    flex: 0 0 180px;
    width: 180px;
    position: relative;
    z-index: 0;
    text-align: center;
    border: none !important;
    margin-bottom: 0 !important;
    font-size: 12px;
}
#freshCast .girl_list ul li:first-child {
    margin-left: 10px;
}
#freshCast .girl_list ul li > a {
    display: block;
    position: relative;
    margin-bottom: 5px;
}
#freshCast .girl_list ul li img {
    max-width: 100%;
}
#freshCast .girl_list ul li .state {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    color: #FFF;
    text-align: center;
    font-size: 12px;
    height: 26px;
    line-height: 27px;
    padding: 0 10px;
    box-sizing: border-box;
}
#freshCast .girl_list ul li .state.wait   {background-color:rgba(215,23,44,0.90)!important;}
#freshCast .girl_list ul li .state.rest   {background-color:rgba(6,192,234,0.90)!important;}
#freshCast .girl_list ul li .state.work   {background-color:rgba(248,116,7,0.90)!important;}
#freshCast .girl_list ul li .state.break  {background-color:rgba(248,182,8,0.90)!important;}
#freshCast .girl_list ul li .state.finish {background-color:rgba(141,185,215,0.90)!important;}

#freshCast .girl_list ul li .state span {
	font-size: 80%;
}
#freshCast .girl_list ul li > span {
    height: 18px;
    display: block;
}
#freshCast .girl_list ul li .name a {
    color: #FF1152;
    font-size: 12px;
	display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#freshCast .girl_list ul li .shop {}
#freshCast .girl_list ul li .shop a {
    color: #287FB8;
    font-size: 10px;
	display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}


/* 注目の女の子 */
#attentionGirl {
    position: relative;
    margin: 30px 0 30px;
	background-color: #F6F6ED;
	border-top: solid 1px #CCC;
	border-bottom: solid 1px #FFF;
}
#attentionGirl h2 {
    text-align: center;
    color: #333333;
    background-color: #FAFAF4;
    background-image: url("../img/border_rainbow.png");
	background-position: top center;
	background-repeat: no-repeat;
	border-top: solid 1px #FFF;
	border-bottom: solid 1px #CCCCCC;
    height: 50px;
    line-height: 51px;
    font-size: 1.17em;
    position: relative;
    z-index: 10;
	margin-bottom: 20px;
}
#attentionGirl h2::before {
    content: "";
    display: block;
    width: 67px;
    height: 67px;
    background: url(../img/icon_hot.svg);
    position: absolute;
    left: 36%;
    top: -15px;
    z-index: 10;
}
#attentionGirl h2::after {
    content: '';
    width: 100%;
    height: 10px;
    margin: auto;
	border-top: solid 1px #FFF;
    background-image: url("../img/shadow_topspecial_ad.png");
    background-position: top center;
	background-repeat: no-repeat;
    position: absolute;
    bottom: -12px;
    left: 0;
    right: 0;
}

#attentionGirl > a {
    display: block;
    position: absolute;
    width: 55px;
    height: 22px;
    top: 14px;
    right: 5px;
    background: url(../img/more_btns.png);
	background-position: 0 -43px;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    z-index: 10;
}
#attentionGirl .cast {
	padding-bottom: 15px;
	border-bottom: solid 1px #CCC;
	background-color: #F6F6ED;
 }
#attentionGirl .cast ul {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    display: flex;
	column-gap: 10px;
	padding-right: 10px;
	box-sizing: border-box;
}
#attentionGirl .cast ul li {
    flex: 0 0 139px;
	width: 139px;
    position: relative;
    z-index: 0;
    text-align: center;
    border: none !important;
    margin-bottom: 0 !important;
}
#attentionGirl .cast ul li:first-child { margin-left: 10px;}

#attentionGirl .cast ul li a {
    display: block;
    height: 139px;
    margin-bottom: 15px;
    border-radius: 50%;
    border: solid 4px #E64780 !important;
    box-sizing: border-box;
    overflow: hidden;
}
#attentionGirl .cast ul li:nth-child(6n+1) a  {border: solid 6px rgba(230,71,128,0.30) !important;}
#attentionGirl .cast ul li:nth-child(6n+2) a  {border: solid 6px rgba(255,163,59,0.30) !important;}
#attentionGirl .cast ul li:nth-child(6n+3) a  {border: solid 6px rgba(0,155,167,0.30) !important;}
#attentionGirl .cast ul li:nth-child(6n+4) a  {border: solid 6px rgba(0,152,140,0.30)  !important;}
#attentionGirl .cast ul li:nth-child(6n+5) a  {border: solid 6px rgba(35,118,212,0.30)  !important;}
#attentionGirl .cast ul li:nth-child(6n) a    {border: solid 6px rgba(118,83,168,0.30) !important;}

#attentionGirl .cast ul li a:before {
    content: '';
    border-radius: 50%;
    border: solid 4px #E64780 !important;
    height: 123px;
    width: 123px;
    position: absolute;
    top: 4px;
    left: 0;
    right: 0;
    margin: auto;
}
#attentionGirl .cast ul li:nth-child(6n+1) a:before {border: solid 4px #E64780 !important;}
#attentionGirl .cast ul li:nth-child(6n+2) a:before {border: solid 4px #FFA33B !important;}
#attentionGirl .cast ul li:nth-child(6n+3) a:before {border: solid 4px #009BA7 !important;}
#attentionGirl .cast ul li:nth-child(6n+4) a:before {border: solid 4px #00988C !important;}
#attentionGirl .cast ul li:nth-child(6n+5) a:before {border: solid 4px #2376D4 !important;}
#attentionGirl .cast ul li:nth-child(6n) a:before   {border: solid 4px #7653A8 !important;}

#attentionGirl .cast ul li img {
    max-width: 100%;
}
#attentionGirl .cast ul li > .state {
    position: absolute;
    top: 120px;
    left: 0;
    right: 0;
    width: 100%;
    color: #FFF;
    text-align: center;
    font-size: 12px;
    padding: 0 10px;
    line-height: 26px;
    height: 26px;
    max-width: 100px;
    margin: auto;
    overflow: hidden;
    border-radius: 50px;
}
#attentionGirl .cast ul li:nth-child(6n+1) .state { background-color: #E64780;}
#attentionGirl .cast ul li:nth-child(6n+2) .state { background-color: #FFA33B;}
#attentionGirl .cast ul li:nth-child(6n+3) .state { background-color: #009BA7;}
#attentionGirl .cast ul li:nth-child(6n+4) .state { background-color: #00988C;}
#attentionGirl .cast ul li:nth-child(6n+5) .state { background-color: #2376D4;}
#attentionGirl .cast ul li:nth-child(6n) .state { background-color: #7653A8;}

#attentionGirl .cast ul li > .state span {
	display: inline-block;
	font-size: 80%;
}

#attentionGirl .cast ul li p {
	text-align: center;
	font-size: 12px;
	color: #666;
}
