@charset "utf-8";
/*
CSS Information
 File name:      top.css
 Author:         Administratorｎ
 Style Info:     /sp/top.html
----------------------------------------------------- */

/* CSS override and Class setting
********************************** */

p.favorite_shop a{
    display: block;
    margin: 0 0 3px;
    height: 26px;
    line-height: 26px;
    border: solid 1px #abadac;
    background: #fff;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
    -o-border-radius: 15px;
    -ms-border-radius: 15px;
    color: #36958a;
    font-size: 139%;
}

/* #headline
********************************** */
#headline {
	margin:10px auto;
	padding: 5px;
	background:#FFFFFF;
	color: #FF0000;
}
.marquee_new li.color1.marquee-showing div {
	display: block;
	color: #FF0000;
	background: #FFFFFF;

}
.marquee_new li.color1 {
	margin: 0;
	position: absolute;
	top: -999em;
	left: 0;
	display: block;
	white-space: nowrap;
	color: #FF0000;
}
/*.marquee_new li.color1, .marquee_new li.color1 a {
	color: #FF0000;
	background: #FFFFFF;
	margin: 0;
	display: block;
	width: 100%;
	padding: 5px;
	box-sizing: border-box;
}
.marquee_new li.color1.marquee-showing div {
	display: block;
	background: #FFFFFF;
	color: #FF0000;
	width: 100%;

}*/

/* #pickUp
********************************** */

#content #pickUp li {
	float: left;
	margin-bottom: 10px;
	width: 32%;
	text-align: center;
}

#content #pickUp li a {
	display: block;
	font-size: 85%;
	color: #000000;
}

#content #pickUp li a span {
	display: block;
	text-align: center;
	overflow: hidden;
	margin-bottom: 5px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#content #pickUp li a img {
	width: auto;
	height: auto;
	max-width: 93px;
	max-height: 131px;
}

#content #pickUp li em {
	display: block;
	margin-bottom: 2px;
	text-align: center;
	font-style: normal;
	font-size: 100%;
	font-weight: bold;
	color: #000066;
}

/* #whatsNew #event
********************************** */

#content #whatsNew a > span,
#event a > span {
	display: block;
	float: left;
	margin-right: 10px;
	overflow: hidden;
	width: 60px;
}

#content #whatsNew img,
#event img{
	width: auto;
	height: auto;
	max-width: 60px;
	max-height: 80px;
}

#content #whatsNew div, #content #event div {
	flex: 1;
}

#content #whatsNew a,
#content #event a {
	display: flex;
	padding: 10px 15px 10px 10px;
	font-size: 85%;
	color: #000000;
}

#content #whatsNew div h2,
#content #event div h2 {
	margin-bottom: 5px;
	font-size: 100%;
	color: #000066;
}

#content #whatsNew div span,
#content #event div span {
	display: block;
	margin-bottom: 5px;
}

/* #underWari
********************************** */

#content #underWari ul li {
	border-bottom: solid 1px #000099;
}

#content #underWari ul li:last-of-type{
	border: none;
	font-weight: bold;
}

#content #underWari ul li a {
	display: block;
	padding: 9px;
	color: #000066;
}

/* プロフィール枠
********************************** */

#content ul.profile {
	margin: 0 auto;
	width: 95%;
}

#content ul.profile li {
	position: relative;
	float: left;
	margin: 0 5px 10px 0;
	padding-bottom: 28px;
	width: 31.5%;
	border: solid 1px #000099;
}

#content #schedule ul.profile li{
	padding-bottom: 45px;
}

#content #realtime ul.profile li {
	padding-bottom: 5px;
}

#content ul.profile li span.size {
	margin: 0 1px;
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}

#content ul.profile li:nth-of-type(3n) {
	margin-right: 0;
}

#content ul.profile li a{
	display: block;
	text-align: center;
	font-size: 85%;
	color: #000000;
}

#content ul.profile li span.photo {
	display: block;
	margin: 4px auto 2px;
	overflow: hidden;
	height: 112px;
}

#content ul.profile li img {
	width: auto;
	height: auto;
	max-width: 84px;
	max-height: 112px;
}

#content ul.profile li em {
	display: block;
	margin-bottom: 4px;
	font-weight: bold;
	font-style: normal;
	color: #000066;
}

#content #schedule ul.profile li span.cap {
	position: absolute;
	bottom: 5px;
	left: 4px;
	width: 92%;
	display: block;
	padding: 3px 0;
	text-align: center;
}
#content #schedule ul.profile li span.cap .comment {
	display: block;
	width: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-weight: normal;
}

#content #realtime ul.profile li span.cap{
	width: 92%;
	display: block;
	margin: 3px auto 0;
	padding: 3px 0;
	text-align: center;
}

#content #ranking h2 {
	font-weight: bold;
	text-align: center;
	margin-bottom: 5px;
	font-size: 100%;
}

#content #ranking ul.profile li span.cap {
	position: absolute;
	bottom: 5px;
	left: 4px;
	right: 4px;
	display: block;
	padding: 3px 0;
	color: #000066;
	text-align: center;
}

#content #newFace ul.profile li span.cap,
#content #lady ul.profile li span.cap {
	position: absolute;
	bottom: 5px;
	left: 4px;
	width: 92%;
	display: block;
	padding: 3px 0;
	color: #000000;
	text-align: center;
}

#content .more {
	margin: 0 auto 10px;
	width: 95%;
	height: 24px;
	text-align: center;
	font-weight: bold;
	line-height: 24px;
	background: #d0d0d0;
}

#content .more a {
	display: block;
	color: #fff;
}

body#top #photoDiary .more,
body#top #whatsNew .more,
body#top #event .more,
body#top #movie .more,
body#top #specialmovie .more {
	width: 95% !important;
	height: 24px;
	float: none !important;
	clear: both;
	margin: 0px auto 10px;
	text-align: center;

}
body#top #photoDiary .more a,
body#top #whatsNew .more a,
body#top #event .more a,
body#top #movie .more a,
body#top #specialmovie .more a {
	display: block !important;
	color: #fff !important;
	font-size: 13px !important;
	font-weight: bold;
	height: 24px;
	line-height: 24px;
	padding: 0 !important;
}

/* #movie
********************************** */

#content #movie a,
#content #specialmovie a {
	display: block;
	margin: 0 auto;
	padding-bottom: 10px;
	font-size: 85%;
}

#content #movie a span.photo,
#content #specialmovie a span.photo {
	display: block;
	float: left;
	text-align: center;
	width: 136px;
	margin: 0 10px;
	overflow: hidden;
}

#content #movie a span.size,
#content #specialmovie a span.size,
#content #movie a div.size {
	text-align: left;
	color: #000000;
}

#content #movie img,
#content #specialmovie img {
	width: auto;
	height: auto;
	max-width: 136px;
	max-height: 74px;
}

#content #movie div h2,
#content #photoDiary div h2,
#content #specialmovie div h2 {
	margin-bottom: 7px;
	font-weight: bold;
	font-size: 116%;
	color: #000000;
}

#content #movie div em,
#content #specialmovie div em {
	display: block;
	margin-bottom: 7px;
	text-decoration: none;
	font-style: normal;
	color: #000066;
}
.movie_list {
	margin-bottom: 10px;
}
#content #specialmovie .movie_list li {
	padding-top: 10px;
	border-bottom: 1px solid #000099;
}

#content #movie.v_layout .photo {
	width: 35%;
	margin: 0 10px 0 0;
	float: none;
	height: 80px;
	display: flex;
	align-items: center;
	background: #000;
	justify-content: center;
}
#content #movie.v_layout > a {
	display: flex;
	padding: 0 10px 15px 10px;
}
.detail {
	flex: 1;
}
#content #movie.v_layout img {
	width: auto;
	height: auto;
	max-width: inherit;
	max-height: inherit;
}
#content #movie.v_layout .size-3 {
	margin-bottom: 0;
}
/* #photoDiary
********************************** */

#content #photoDiary a {
	display: flex;
	margin: 0 auto;
	padding: 10px 15px 10px 10px;
	font-size: 85%;
	color: #000000;
}

#content #photoDiary a > span {
	display: block;
	margin-right: 10px;
	width: 100px;
	position: relative;
}
#content #photoDiary a > span .play {
    position: absolute;
    width: 2.5rem;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

#content #photoDiary img{
	width: auto;
	height: auto;
	max-width: 100px;
	max-height: 133px;
}

#content #photoDiary div {
	flex: 1;
}
#content #photoDiary div .lady_name {
	padding: 5px 0;
}
#content #photoDiary div span.time {
	display: block;
	margin-bottom: 7px;
	font-size: 93%;
}

/* #coverGallary
********************************** */

#content #coverGallary {
	width: 320px;
	margin: 0 auto 10px auto;
}

#content #coverGallary ul li {
	width: 320px;
	height: 300px;
	overflow: hidden;
	display: block;
	margin: 0 auto;
	text-align: center;
}

#content #coverGallary ul li img{
	margin:0 auto;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 300px;
}

/* .topFree
********************************** */
.topFree > div {
	padding:5px 0;
}

/* .topBnr
***********************************/
.topBanner img {
	max-width: 100% !important;
}

/* #premium
***********************************/
#premium ul li p {
	padding: 5px 0;
	text-align: center;
	color: #000000;
}
#premium .slick-slider {
	margin-bottom: 10px;
}
#premium .slick-dots {
	position: relative;
	bottom: 0;
}
.slick-dots li button:before {
	font-size: 20px;
}

#premium.wide ul li .photo {
	width: auto !important;
    max-width: 100%;
    max-height: 164px;
    display: block;
    margin: 0 auto 1px;
}
#premium.wide ul li .photo.debug01 {
	/*width: auto !important;
    max-width: 100%;
    max-height: 164px;*/
    width: 100% !important;
    max-width: none;
    max-height: none;
    display: block;
    margin: 0 auto 1px;
}

#premium.wide .name,
#premium.wide .age {
	font-weight: bold;
}
#premium.wide .prof {
	font-size: 77%;
}


#covergallary {
	margin-bottom: 10px;
}

ul.marquee {
    display: block;
    margin: 10px auto auto;
    padding: 0;
    line-height: 1;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 26px;
}
ul.marquee li {
    position: absolute;
    top: -999em;
    left: 0;
    margin: 0;
    padding: 6px 4px 6px 0;
    display: block;
    white-space: nowrap;
    overflow: visible;
}
ul.marquee li div {
    display: none;
    height: 21px;
    position: absolute;
    width: 9999px;
    z-index: -1;
}
ul.marquee li a {
    margin-left: 55px;
    padding: 4px 4px 4px 0;
    display: block;
    white-space: nowrap;
}
ul.marquee li a span {
    text-decoration: underline;
}
ul.marquee li a span:hover,
ul.marquee li a:hover {
    text-decoration: none;
}

/* スタンプポップアップ
----------------------------------------------------------*/
.stampPopupContainer, .stampPopupContainer * {
	box-sizing: border-box;
	color: #333333;
}
.stampPopupContainer img {
	max-width: 100%;
}

.stampPopupContainer {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  padding: 4vw;
  z-index: 9999;
}
.stampPopup {
  position: relative;
  padding: 3vw 4vw;
  border-radius: .5em;
  border: 1px solid #cccccc;
  background-color: #fff;
}
.stampPopupClose {
  position: absolute;
  right: -2vw;
  top: -2vw;
  width: 8vw;
}
.stampPopupHeading {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2em;
  font-weight: bold;
}
.stampPopupHeading img {
  height: 1em;
  margin-right: .25em;
}
.stampPopupBody {
  margin-top: .5em;
  line-height: 1.6;
  font-size: 1em;
}

/*
-----------------------------------------------*/
#headline.reset_bg {
    margin: 7px auto;
    padding: 0px;
    background: none;
    color: #333333;
}
#headline.reset_bg ul.marquee {
    height: 33px;
}
#headline.headline_new {
    background: none;
    padding: 0px;

}

#marquee.marquee_new li a {
	margin-left: 0;
	padding: 0;
	display: block;
	white-space: nowrap;
	text-decoration:none;
}

#marquee.marquee_new li span {
	display: block;
	text-decoration:none;
	line-height: 40px;
	padding-left:5px;
	position:relative;
}
#marquee.marquee_new {
	height: 40px;
	display: block;
	margin: 10px auto auto;
	padding: 0;
	line-height: 1;
	position: relative;
	overflow: hidden;
	width: 100%;
}
#marquee.marquee_new li div {
	height: 100%;
	position: absolute;
	width: 9999px;
}
#marquee.marquee_new li {
	position: absolute;
	top: -999em;
	left: 0;
	margin: 0;
	padding: 0;
	display: block;
	white-space: nowrap;
	overflow: visible;
}
#marquee.marquee_new li:not(.marquee-showing) {
	display: none;
	opacity: 0;
}
/*topもっとみるボタンサイズ
-----------------------------------------------*/
#top #content .more.more-c {
	height: auto !important;
}
#top #content .more.more-c a {
	padding: 10px !important;
	font-size: 100% !important;
}
/******待機中
*************************************/
.comment.elps {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
	width: 100%;
	display: block;
}
.cap_realtime > span {
	margin-bottom: 3px;
	display: inline-block;
}

.guide_movie-video {
	width: 95%;
	margin: 0 auto;
}


/************************************************

赤字割

************************************************/

.defict_img-item img {
	height: auto;
	max-width: 61%;
}
.defict_img {
	background: url(https://img.undernavi.com/front/pc/area/pref/watched/sp_no_login.jpg) no-repeat;
	position: relative;
	background-position: center top;
	background-size: contain;
	margin: 5px;
}
.defict_img::before {
	content: "";
	display: block;
	padding-top: 84%;
}
.defict_img-item {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	width: 80%;
}
.defict_img-item .defict_login-btn {
	display: block;
	width: 100%;
	padding: 3vw 0;
	margin: 2vw auto 4vw;
	background: #c90037;
	border: none;
	color: #fff;
	font-size: 4.5vw;
	font-weight: bold;
	text-align: center;
	border-radius: 5px;
}
.defict_login-regist a {
	color: #c90037;
	text-decoration: underline;
}
.defict_login-regist {
	text-align: center;
}
.defict_img-item .defict_regist-btn {
	display: block;
	width: 100%;
	padding: 3vw 0;
	border: 1px solid #c90037;
	font-size: 4.5vw;
	font-weight: bold;
	text-align: center;
	border-radius: 5px;
	color: #c90037;
	background: #fff;
}
.deficitInner {
	padding: 10px;
	background: repeating-linear-gradient(-45deg, rgb(251, 232, 236), rgb(251, 232, 236) 8px, rgb(255, 255, 255) 0, rgb(255, 255, 255) 10px);
}
.deficit {
	margin-bottom: 20px;
}
.deficitList {
  padding: 2.5vw;
}
.deficitListItem {
  position: relative;
  margin-bottom: 10vw;
  padding: 2.5vw;
  border: 2px solid #c80037;
  background-color: #eeeeee;
}
.deficitListItem.dx {
  background-color: #fff9d3;
  box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.15);
}

.deficitTitle {
	position: relative;
	display: block;
	background: #000;
	border-top: 5px solid #000;
	color: #fff;
	margin-bottom: 0;
	padding: .25em .5em;
	font-size: 4.5vw;
	font-weight: bold;
	text-shadow: none;
	text-align: left;
	line-height: 1.2;
}
.deficitTitle span {
  color: #ff9;
  font-weight: bold;
}

.deficitFee {
	font-size: 0;
	display: flex;
	justify-content: space-between;
}
.deficitComment .comment {
	line-height: 1.2;
}
.usege {
	font-weight: bold;
	text-align: right;
}
.deficitFee .usege {
	display: flex;
	align-items: center;
	justify-content: right;
}
.usage_period02 {
	line-height: 1.4;
}
.usage_period {
	background: #c80037;
	color: #fff;
	padding: 5px 12px;
	border-radius: 5px;
	font-weight: normal;
	margin-right: 2vw;
	display: flex;
	align-items: center;
	justify-content: center;
}
.deficitAfter .deficitAfter_minute {
	font-size: 5vw;
	color: initial;
	margin-right: 1vw;
}
.deficitAfter .deficitAfter_yen {
	color: initial;
	font-size: 5vw;
}
.deficitFee_priceTime img {
	height: auto;
	max-width: 100%;
}
.deficitFee_priceTime {
	width: 25%;
	margin-right: 5%;
}
.denial {
	text-decoration: line-through;
}
.deficitFee_detail {
	flex: 1;
}

.deficitFee .difference {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: 80%;
	text-align: center;
	color: #c80037;
	font-size: 4.5vw;
}
.deficit_note {
	padding: 8vw 0vw 4vw;
	border-bottom: 1px solid #b5b5b5;
	margin: 0 4vw 0vw;
	font-weight: bold;
	line-height: 2;
	text-align: center;
}
.deficitFee_detail .label {
  display: inline-block;
  padding: .125em .5em;
  font-size: .76rem;
  color: #ffffff;
}
.deficit_note span {
	background: #fffa06;
	line-height: 2;
	padding: 5px 10px;
	margin: 0 5px 0;
	border-radius: 5px;
	color: #c80037;
	display: block;
	font-size: 17px;
}
.deficitLady_detail {
	padding: 4vw 4vw 0;
}
.label01 {
  
}
.label02 {
  background-color: #93b7c9;
}
.label03 {
  background-color: #93c9a2;
}
.label04 {
  background-color: #c9ac93;
}
.label05 {
  background-color: #de279b;
}

.shopArea {
  margin-bottom: .25em;
}
.shopName {
  font-weight: bold;
  color: #c80037;
}

.shopInfo .info {
  margin-bottom: 2.5vw;
}
.shopInfo .info span {}
.shopInfo .info span:first-child {
  margin-right: .25em;
}
.shopInfo .info span img {
  height: 1em;
}
.shopInfo .info span:last-child img {
  margin-right: .25em;
}

.telShop {
  padding: 0 5vw;
}

/* deficit */

.deficitBox {
  position: relative;
  margin-bottom: 10vw;
  border: 2px solid #c80037;
}


.discountListItem1 .deficitTitle {
	position: relative;
	display: block;
	background: #c80037;
	border-top: 5px solid #c80037;
	color: #fff;
	margin-bottom: 0;
	padding: .25em .5em;
	font-size: 4.5vw;
	font-weight: bold;
	text-shadow: none;
	text-align: left;
}

.deficitTitle:after {
  content:"";
  display:block;
  position:absolute;
  top:-2px;
  left:0;
  width:100%;
  border-bottom:2px dashed #fff;
}

.deficitTitle span {
  color: #ff9;
  font-weight: bold;
}

.feeSort{
  margin:2vw;
  text-align:center;
  font-size:4.5vw;
  font-weight:bold;
}

.deficitListItemMain{
}



.deficitListItem1.dx .deficitListItemMain{
  background:#fff9d3;
}

.deficitFee {
	font-size: 0;
	background: #eee;
	padding: 4vw;
	position: relative;
}
.deficitFee p {
	font-size: 4vw;
	text-align: right;
	line-height: 2;
}
.deficitFee .deficitOrigin {
	font-size: 3.5vw;
}
.deficitAfter{
  font-size:4vw;
  font-weight:bold;
}



.difference{
  padding:1vw;
  margin-bottom:10px;
  background:#fff;
  border:1px solid #999;
  border-radius:100px;
  color:#999;
  font-size:5vw;
  font-weight:bold;
  text-align:center;
}

.difference span{
  font-size:1rem;
}

.deficitShop {
	font-size: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.deficitShop figure {
	width: 25%;
	margin-right: 3vw;
}

.deficitShop .shopInfo {
	font-size: 3vw;
	flex: 1;
}
.deficitShop .shopInfo h4 a{
  color:#c80037;
  font-size:4vw;
}

.discountListItem1 .discountShop .shopToday span{
  color:#c80037;
  font-size:4vw;
}

.deficitShop .shopToday span{
  color:#c80037;
  font-size:5vw;
	font-weight:bold;
}
.deficitComment {
	border-radius: 5px;
	padding: 3px 5px;
	margin-bottom: 10px;
}
.deficitComment marquee {
	display: inline-block;
	vertical-align: middle;
	width: 92%;
}
.deficitComment img {
	width: 8%;
	vertical-align: middle;
}

.deficitAfter span {
	color: #c80037;
	font-size: 8vw;
}

.deficitBody {
	border: 2px solid #000;
	position: relative;
}
.deficit01 {
	margin-bottom: 20px;
}

.deficit01::before {
	left: 5px;
	top: -85px;
}
#deficit .ttl_red {
	margin-bottom: 2vw;
}
.deficitLady_detail .comment {
	font-size: 3.5vw;
}
.deficit_ttl {
	display: flex;
	align-items: center;
	margin: 0 auto 2vw;
	width: 96%;
}
.deficit_ttl img {
	max-width: 33%;
	margin-right: 2vw;
}
.member_ex {
	background: #ff0;
	color: #c80037;
	padding: 2px 10px;
	font-weight: bold;
	font-size: 3.5vw;
}
.modal_deficit {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border: solid 4px #c90037;
	padding: 15px 5%;
	background: #fff;
	width: 80%;
	height: auto;
	z-index:999;
}
.deficit_report-close {
	position: absolute;
	right: -15px;
	top: -5.5%;
	font-size: 22px;
	font-weight: bold;
	cursor: pointer;
}
.deficit_report-btn {
	text-align: right;
	width: 100%;
	margin: 10px auto;
}
.mdl_ttl {
	text-align: center;
	font-size: 18px;
	color: #e60e7b;
	font-weight: bold;
	margin-bottom: 5px;
}
.type {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 10px;
	color: #333;
}
#deficit_report_form .type_check {
	font-weight: bold;
	color: #c80037 !important;
	margin-left: 10px;
	background-color: transparent !important;
}
.status_box::after {
	content: '';
	display: inline-block;
	border: 6px solid transparent;
	border-top-color: transparent;
	border-top-style: solid;
	border-top-width: 6px;
	border-top: 11px solid #000;
	position: absolute;
	right: 10px;
	top: 40%;
	pointer-events: none;
}
.status_box {
	position: relative;
	width: 100%;
	height: 30px;
	margin-bottom: 20px;
}
.status_box > select {
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	width: 100%;
	padding: 5px;
	font-size:13px;
}
.txtbox {
	margin-bottom: 20px;
}
.txtbox > textarea {
	width: 100%;
	height: 100px;
}
.submit {
	text-align: center;
}
.submit button {
	border: none;
	font-size: 14px;
	background: #7e4d7c;
	color: #fff;
	width: 85%;
	height: 33px;
	line-height: 33px;
	border-radius: 5px;
}
.submit button:hover {
	opacity:0.7;
}
.cp_box *, .cp_box *:before, .cp_box *:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.cp_box {
	position: relative;
	overflow: hidden;
	border-radius: 10px;
	border: solid 1px #c9c9c9;
}
.cp_box .labelFire {
	position: absolute;
	z-index: 1;
	bottom: 0;
	width: 100%;
	height: 120px; /* グラデーションの高さ */
	cursor: pointer;
	text-align: center;
	/* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
	/*background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 252, 252, 0.95) 90%);*/
    background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 252, 252, 1) 57%);
}
.cp_box input:checked + label {
	background: inherit; /* 開いた時にグラデーションを消す */
}
.labelFire::after {
	line-height: 2.5rem;
	position: absolute;
	z-index: 2;
	bottom: 20px;
	left: 50%;
	content: '続きをよむ';
	transform: translate(-50%, 0);
	letter-spacing: 0.05em;
	color: #000;
	border-radius: 10px;
	width: 80%;
	border: solid 1px #cfcfcf;
	background: url(https://img.undernavi.com/dxplan/sp/underArrow.png) 98% center no-repeat #fff !important;
	background-position: 80% 50% !important;
	background: rgba(255,255,255,0.7);
}
.cp_box input {
	display: none;
}
.cp_box .cp_container {
	overflow: hidden;
	transition: all 0.5s;
	background: #fff;
	padding: 5px;
	height:120px;
}
.i_comment {
	line-height: 1.5;
	height: calc(100% - 20px);
	overflow-x: auto;
}
.cp_box input:checked + label {
	/* display: none ; 閉じるボタンを消す場合解放 */
}
.cp_box input:checked + label:after {
	content: '閉じる';
	background: url(https://img.undernavi.com/dxplan/sp/topArrow.png) 98% center no-repeat !important;
	background-position: 80% 50% !important;
}
.cp_box input:checked ~ .cp_container {
	height: auto;
	padding-bottom: 70px; /* 閉じるボタンのbottomからの位置 */
	transition: all 0.5s;
}

#qa ul.qaList>li {
	border-bottom:solid 1px #9900FF;
}
#qa .accordion_head,
#qa .close {
	cursor:pointer;
}
#qa ul.qaList>li>p {
	display:block;
	padding:10px 25px 10px 2em;
	position:relative;
	color:#000000;
	line-height:1.2;
}
#qa ul.qaList>li>p:before {
	content:"Q.";
	color:#9900FF;
	position:absolute;
	left:0.5em;
}
#qa ul.qaList>li>p span {
	padding:2px 5px;
	position:absolute;
	right:5px;
	top:7px;
}
#qa ul.qaList>li div {
	position:relative;
	padding-bottom:40px;
	display:none;
}
#qa ul.qaList>li div p {
	margin:0 auto;
	padding:10px 10px 10px 2em;
	position:relative;
	line-height:1.4;
}
#qa ul.qaList>li div p:before {
	content:"A.";
	color:#9900FF;
	position:absolute;
	left:0.5em;
}
#qa ul.qaList>li div>span {
	background:#48B8C5;
	color:#FFFFFF;
	display:block;
	-moz-border-radius:2px;
	-webkit-border-radius:2px;
	-o-border-radius:2px;
	-ms-border-radius:2px;
	border-radius:2px;
	text-align:center;
	width:20%;
	font-size:93%;
	position:absolute;
	bottom:15px;
	right:3%;
	padding:3px;
}
#qa .more {
	margin-top:10px !important;
}
.slick_container img {
	max-width: 100%;
	margin: 0 auto;
	display: block;
}
#covergallary.max-width img {
	width: 100%;
}
#coverGallary.fix_width {
	width: 100% !important;
}
#content #coverGallary.fix_width {
	width: 320px !important;
}

.discount .inner {
	padding: 10px;
}
.discount h3 {
	color: #c90037;
	margin-bottom: 10px;
	font-size: 5vw;
}
.discountFee {
	overflow: hidden;
	position: relative;
	background: #fefbee;
	padding: 10px 0px 10px 20px;
	box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.4);
	margin-bottom: 10px;
}
.discountFee::before {
	content: "";
	display: inline-block;
	background: url('https://img.undernavi.com/front/sp/area/pref/coupon_bg.png') no-repeat;
	background-size: auto;
	background-size: auto;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-size: contain;
}
.discountOrigin {
	display: inline-block;
	vertical-align: middle;
	font-size: 4vw;
	margin-right: 5px;
	color: #000;
}
.pricebox {
	display: flex;
	align-items: center;
	font-weight: bold;
}
.discountAfter {
	display: inline-block;
	vertical-align: middle;
	font-size: 4vw;
	margin-right: 5px;
	color: #000;
}
.discountAfter .after_time {
	font-size: 7vw;
	color: #f00;
}
.discountAfter .after_price {
	font-size: 9vw;
	color: #f00;
}
.circle.circle2 {
	margin-left: 1vw;
}
.circle {
	position: relative;
	width: 14%;
	height: 0;
	padding-top: 14%;
	overflow: hidden;
	border-radius: 50%;
	display: inline-block;
	background: #f00;
	font-style: normal;
	color: #000;
	font-weight: bold;
	top: -10px;
}
.price_off, .extend_time {
	font-size: 3vw;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	color: #fff;
	text-align: center;
	bottom: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1.2;
}
.discountAfter em {
	font-style: normal;
}
.usable_condition {
	background: #f2f2f2;
	padding: 10px;
	line-height: initial;
	margin-bottom: 10px;
}
.usable_condition span {
	font-weight: bold;
}
.usable_condition p {
	line-height: 1.5;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}