@charset "utf-8";

/* CSS Document */
.mainVisualWrap{
	-moz-box-shadow: #8f8f8f 0 1px 3px;
	-webkit-box-shadow: #8f8f8f 0 1px 3px;
	box-shadow: #8f8f8f 0 1px 3px;
	margin: 0 auto 16px;
	background-color:#FFF;
}

@media only screen and (max-width: 768px) {
	.mainVisualWrap{
		-moz-box-shadow:none;
		-webkit-box-shadow:none;
		box-shadow:none;
		background-color:transparent;
		margin:0 -10px 10px;
	}
	.mainVisualWrap .modNav01{
		margin-bottom:0;
	}
}

.tabletP .mainVisualWrap {
	margin:0 -10px 10px;
}


.tabletP .mainVisualWrap .modNav01 {
	margin-bottom:0;
}


#mainVisual {
	position: relative;
	text-align: center;
	overflow:hidden;
}


#mainVisual .slides li { display: none; }
#mainVisual a{
	display:block;
}
#mainVisual .inner{
	position:relative;
}
#mainVisual .flex-direction-nav a {
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	width: 36px;
	height: 65px;
	margin: auto;
	background-position: center;
	background-repeat: no-repeat;
	text-indent: -9999px;
}

#mainVisual .flex-nav-prev a {
	background-image: url(//image.apps.rakuten.co.jp/img/assets/img/arrow03_l.png);
	left: 20px;
}

#mainVisual .flex-nav-next a {
	background-image: url(//image.apps.rakuten.co.jp/img/assets/img/arrow03_r.png);
	right: 20px;
}

#mainVisual .sliderNav{
	padding:0 0 10px 10px;
	margin:0 0 0 -138px;
}

#mainVisual .slides{
}
#mainVisual .sliderNav .flex-viewport{
}

#mainVisual .sliderNav .slides li{
	margin:0 10px 0 0;
	padding:14px 0 0;
	cursor:pointer;
}
#mainVisual .sliderNav .slides span{
	position:relative;
	display:block;
}
#mainVisual .sliderNav .active span{
}
#mainVisual .sliderNav .slides span:after{
	content:"";
	display:none;
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border:solid 4px #EB2F2F;
	-webkit-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	transition: all 0.1s linear;
}

#game #mainVisual .sliderNav .slides span:after{
	border-color:#00AEE7;
}
#adult #mainVisual .sliderNav .slides span:after{
	border-color:#DF00F9;
}

#mainVisual .sliderNav .slides span:before{
	content:"";
	display:none;
	position:absolute;
	top:-16px;
	left:0;
	right:0;
	width:0;
	margin:auto;
    border: 8px solid transparent;
    border-bottom: 8px solid #EB2F2F;
}

#game #mainVisual .sliderNav .slides span:before{
	border-bottom-color:#00AEE7;
}

#adult #mainVisual .sliderNav .slides span:before{
	border-bottom-color:#DF00F9;
}

#mainVisual .sliderNav .active span:after{
	display:block;
}

#mainVisual .sliderNav .active span:before{
	display:block;
}

#mainVisual .mainVisual {
    position: relative;
}

#mainVisual .flex-control-nav{

	text-align:center;
	height:12px;
	line-height:1;
	margin-top:10px;
}

#mainVisual .flex-control-nav li{
  display: inline-block;
  *display: inline;
  *zoom: 1;
  margin:0 5px;
  height:12px;
  line-height:1;
}

#mainVisual .flex-control-nav a{
  width:9px;
  height:9px;
  line-height:1;
  background-color:#CCC;
  border-radius:50%;
  display: inline-block;
  *display: inline;
  *zoom: 1;
  text-indent:-9999px;
  cursor:pointer;
}

#mainVisual .flex-control-nav .flex-active{
  background-color:#EB2F2F;
}

#game #mainVisual .flex-control-nav .flex-active{
  background-color:#00AEE7;
}

#adult #mainVisual .flex-control-nav .flex-active{
  background-color:#DF00F9;
}


.modNav01{
	margin-bottom:0;
}


.modAppList02{
	margin:0 -2%;
}

.modAppList02 li{
  width: 46%;
  margin: 0 2%;
  display:table;
  table-layout:fixed;
}
.modAppList02 .image{
	display:table-cell;
	width:174px;
	vertical-align:top;
}

.modAppList02 .detail{
	display:table-cell;
	padding:0 0 0 12px;
	position:relative;
	vertical-align:top;
}

.modAppList02 .txt{
	height: 66px;
	line-height: 22px;
}

.modAppList02 .txt span{
	-webkit-line-clamp:3;
}

.bannerBlock{
	margin:0 0 20px;
	text-align:center;
	background-color: #ffffff;
}
.bannerBlock img{
	-webkit-box-shadow: #999 0px 0px 5px;
	-moz-box-shadow: #999 0px 0px 5px;
	box-shadow: #999 0px 0px 5px;
}
@media only screen and (max-width: 768px) {

#mainVisual { margin-bottom: 10px; }

#mainVisual .flex-direction-nav a {
	background-size: 15px auto;
	width: 15px;
}

#mainVisual .flex-nav-prev a { left: 5px; }

#mainVisual .flex-nav-next a { right: 5px; }



.modAppList01 {
}

.modAppList01 li{
	display:block;
}

.modAppList01 .image{
	display:block;
	width:auto;
}

.modAppList01 .detail{
	display:block;
	padding:0;
}

.modAppList01 .txt{
	height: 36px;
	line-height: 18px;
}

.modAppList01 .txt span{
	-webkit-line-clamp:2;
}
.modAppList01 .price{
	position:static;
}

.modAppList02 {
}

.modAppList02 li{
	display:block;
}

.modAppList02 .image{
	display:block;
	width:auto;
}

.modAppList02 .detail{
	display:block;
	padding:0;
}

.modAppList02 .txt{
	height: 54px;
	line-height: 18px;
}


}



.tabletP #mainVisual { margin-bottom: 10px; }

.tabletP #mainVisual .flex-direction-nav a {
	background-size: 15px auto;
	width: 15px;
}

.tabletP #mainVisual .flex-nav-prev a { left: 5px; }

.tabletP #mainVisual .flex-nav-next a { right: 5px; }


@media only screen and (max-width: 768px) {
	#footer .fNav ul{
		border-top:none;
	}
}

.tabletP #footer .fNav ul{
	border-top:none;
}

.btnGenre{
	display:none;
	position:absolute;
	top: 13px;
	right:10px;
	background-image:url(//image.apps.rakuten.co.jp/img/assets/img/responsive/btn_genre01_02.png);
	background-position:center top;
	background-repeat:no-repeat;
	background-size:24px auto;
	width:46px;
	padding:22px 0 0;
	color:#333333;
	font-size:10px;
	font-size:1rem;
	text-align:center;
}

@media only screen and (max-width: 768px) {
.btnGenre{
	display:block;
}
}

.tabletP .btnGenre{
	display:block;
}

body.headFixed #membership{
  font-size: 10px;
  font-size: 1rem;
}


#membership .memberName {
 	max-width: 65px;
	width:65px;
	font-size: 11px;
}


#memberAction{
	width:45px;
}