@charset "UTF-8";

/**
 * キャストページ用css
 */
main {
	overflow:unset;
}
main .wrapContents section[id^=freeContents_] {
	padding-top: 0px;
	padding-bottom: 0px;
}
main > .responsiveBg1{
	margin-top:0px;
	margin-bottom:0px;
}

#item {
}

#itemPhotoSlide.sticky{
	position: sticky;
}

.attributeIconTd > div {
	text-align:left !important;
}
.attributeIconTd > div > span{
	margin-right:5px !important;
}

/*-- itemページ bs-slider ------------------------------*/
#item .bx-prev,
#item .bx-next{
	background-image:linear-gradient(0deg, rgba(159, 197, 255, 1) 0%,rgba(106, 183, 236, 1) 100%);
	color:#FFFFFF;
}
#item .bx-wrapper .bx-controls-direction a {
	width: 35px;
	height: 80px;
	line-height: 80px;
}
#item .bx-wrapper .bx-controls-direction a.bx-prev {
	top: 0;
	bottom: 0;
	margin:auto;
	left: 0px;
}
#item .bx-wrapper .bx-controls-direction a.bx-next {
	top: 0;
	bottom: 0;
	margin:auto;
	right: 0px;
}
#item .bx-wrapper .bx-pager.bx-default-pager a:hover,
#item .bx-wrapper .bx-pager.bx-default-pager a.active {
	background-image:linear-gradient(0deg, rgba(159, 197, 255, 1) 0%,rgba(106, 183, 236, 1) 100%);
}

#item .bx-wrapper .bx-pager.bx-default-pager a {
	background: rgba(231, 225, 197, 0.8);
}

/** pbox **/

.pbox {
	text-align: left;
}

.pbox:last-of-type {
	margin-bottom: 0;
}
.layoutColSpanNum2 section {
	margin-top: var(--contents-pc-marginTop);
	margin-bottom: var(--contents-pc-marginBottom);
}
.layoutColSpanNum2 section:not(#fdc_reserveLink, #blockItemReviewList, #blockPhotoMailDiaryList, #blockUpdateInfo) {
			backdrop-filter: var(--parts3-bgEffectFilter0, none);
	}
@media screen and (max-width: 640px) {
	.layoutColSpanNum2 section:not(#fdc_reserveLink, #blockItemReviewList, #blockPhotoMailDiaryList, #blockUpdateInfo) {
					backdrop-filter: var(--parts3-bgEffectFilter0, none);
			}
	}
.aboutBlock {
	padding: 20px;
		background-color:rgba(255,255,255, 1);
	border-top:0px solid rgba(166,183,209,0);
	border-right:0px solid rgba(166,183,209,1);
	border-bottom:0px solid rgba(166,183,209,1);
	border-left:0px solid rgba(166,183,209,1);
	position: relative;
	border-radius: 20px 20px 20px 20px;
	overflow: hidden;
}

	@media screen and (min-width:641px){
		.aboutBlock {
											box-shadow: 0px 0px 10px 0px  rgba(233,216,255,1);
											}
							h2 + .aboutBlock {
				clip-path: inset(0 -100% -100%);
			}
			}
	@media screen and (max-width:640px){
		.aboutBlock {
											box-shadow: 0px 0px 10px 0px  rgba(233,216,255,1);
											}
							h2 + .aboutBlock {
				clip-path: inset(0 -100% -100%);
			}
			}
section > .aboutBlock{
	border-radius: 0px 0px 20px 20px;
		overflow: hidden;
	}
section:not(.baseProfile) > h2 {
	padding:10px;
	background-image:url(/img/design/texture/texture_706_alpha.png);
	background-repeat:repeat-x;
	background-size: contain;
		background-color:rgba(144,152,255, 1);
	text-align:left;
	font-size:18px;
	font-weight:bold;
	border-top:0px solid rgba(166,183,209,1);
	border-right:0px solid rgba(166,183,209,1);
	border-bottom:0px solid rgba(166,183,209,0);
	border-left:0px solid rgba(166,183,209,1);
	border-radius: 20px 20px 0px 0px;
}
section:not(.baseProfile) > h2 > span {
	color:#FFFFFF;
	padding: 0;
  	margin: 0;
}
	@media screen and (min-width:641px){
		section:not(.baseProfile) > h2 {
											box-shadow: 0px 0px 10px 0px  rgba(233,216,255,1);
											}
	}
	@media screen and (max-width:640px){
		section:not(.baseProfile) > h2 {
											box-shadow: 0px 0px 10px 0px  rgba(233,216,255,1);
											}
	}



.aboutBlock.baseProfile  {
	position:relative;
			}
.aboutBlock.baseProfile:before {
	position:absolute;
	display:block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 50px 50px 0 0;
	border-color: #333333 transparent transparent transparent;
	top:0;
	left:0;
}
.baseProfile h2{
	font-size:28px;
		color:#333333;
			font-weight:normal;
	}
.baseProfile .catchCopy{
	display:block;
	width: auto;
	padding:7px;
	margin-bottom: 20px;
	font-size:17px;
	font-weight:normal;
		background-color:rgba(111,200,223, 1);
			color:#FFFFFF;
	}
.baseProfile .age{
	display:inline-block;
	font-size:18px;
}
.baseProfile .shortProf,
.baseProfile .shortStyle{
		color:#ED5197;
	}
/** profileTop **/

.profileTop {
	display: flex;
	width: 100%;
	margin-bottom:30px;
}
.profileTop > div {
	box-sizing: border-box;
}

.profileTop > .profileTopLeft {
	width: 40%;
	padding-right:var(--contents-gapColumns, 20px);
	box-sizing: border-box;
}
.profileTop > .profileTopRight {
	width: 60%;
	padding-left:var(--contents-gapColumns, 20px);
	box-sizing: border-box;
}
.profileTop > .profileTopRight > section:last-child > div{
	margin-bottom: 0px !important;
}
.shortProf {
	padding:13px 0px 0px;
	margin-top:5px;
}
.shortStyle {
	padding:0px 0px 6px;
	margin-top:5px;
}
.shortProf > span,
.shortStyle > span {
	display:inline-block;
	margin-right:0.5em;
}
.shortProf > span:last-child,
.shortStyle > span:last-child {
	margin-right:0;
}
/**	prof slider start **/

#itemPhotoSlide {
	width:100%;
	position: sticky;
	top:10px;
	font-size: 0;
	line-height: 0;
	box-sizing: border-box;
	transition: .8s;
}
#itemBody:has([data-islayoutcontents1="1"]) #itemPhotoSlide[data-sticky="1"].isFixed {
	transform: translateY(20px);
}
#itemPhotoSlideBox {
	width: 100%;
	height: auto;
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
		border:1px solid #A6B7D1;
	}
#itemPhotoSlideBox img{
	width:100%;
}
#itemPhotoSlideBox .noImage img{
	height:100%;
}
ul#slider {
	margin-left: 0;
	width: 1950px;
	/*height: 520px;*/
	height:auto;
	overflow: hidden;
	position: relative;
}

ul#slider li {
	float: left;
	width: 390px;
	position: relative;
}

ul#slider li img {
	width: 100%;
	/*height: 520px;*/
	height:auto;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

ul#slideIcon {
	width: 390px;
	height: 0;
}

ul#slideIcon li {
	display: inline-block;
	width: 25px;
	/* no change */
	height: 50px;
	/* no change */
	position: absolute;
	font-size: 11px;
	line-height: 50px;
	text-align: center;
	cursor: pointer;
}

ul#slideIcon li#prev {
	left: 0;
	top: calc(50% - 25px);
	border-radius: 0 5px 5px 0;
}

ul#slideIcon li#next {
	right: 0;
	top: calc(50% - 25px);
	border-radius: 5px 0 0 5px;
}

#item .itemPhotoListWrap .noImage{
	width:100%;
	height:100%;
	position:re;
	display:inline-block;
	left: 0;
	background: rgba(0,0,0,.2);
	line-height:100%;
	box-sizing:border-box;
	z-index: 0;
	min-height:240px;
}
#item .itemPhotoListWrap .noImage:after{
	position:absolute;
	font-size:30px;
	display:block;
	content:'No Image';
	width:100%;
	height:20px;
	color:#FFFFFF;
	line-height: 100%;
	text-align: center;
	margin: auto;
	top: 0;
	bottom: 0;
}
#item .thumbListBox {
	margin-top: 10px;
	max-width: 100%;
	overflow: hidden;
}
#item .thumbListBox ul {
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	align-items: center;
	justify-content: flex-start;
	margin-left: -5px;
    min-width: calc(100% + 5px);
}
#item .thumbListBox ul li {
	width: 20%;
	height: auto;
	display: inline-block;
	overflow: hidden;
	box-sizing: border-box;
	padding-left: 5px;
	padding-bottom: 5px;
}
#item .thumbListBox ul li div {
	display: block;
	background-color: #999;
	box-sizing: border-box;
	cursor: pointer;
	width: auto;
	height: auto;
	background-repeat: no-repeat;
	background-size: cover;
}
#item .thumbListBox ul li div img {
	opacity: .7;
	box-sizing: border-box;
	width: 100%;
}
#item .thumbListBox ul li div img.active {
		border:1px solid #A6B7D1;
		opacity: 1;
}
#item #itemPhotoSlide .photo-swiper-wrap {
	position: relative;
}
#item .itemPhotoListWrap .thumbListBox .noImage:after{
	width: 51px;
	height: 68px;
	max-height: 68px;
	overflow: hidden;
	min-height: 68px;
	text-indent: 0px;
	font-size: 14px;
	color: #fff;
	padding-top: 19px;
}

/*-- option play ------------------------------*/
.optionPlayWrap {
	font-size: 0;
	text-align: left;
}
.optionPlayWrap h3{
	font-size:16px;
	font-weight:bold;
	margin:5px 0 5px 0;
}
.optionPlayWrap ul{
	display:flex;
	flex-wrap:wrap;
	align-items: center;
	justify-content: left;
	align-self:stretch;
	align-items: center;
}
.playStatus {
	align-self:stretch;
	width: calc(100% / 2 - 6px);
	font-size: 14px;
	line-height: 110%;
	margin: 0 3px 8px 3px;
	box-sizing: border-box;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	border-width: 1px;
	border-style: solid;
	border-radius: 3px;
	box-sizing: border-box;
	position:relative;
}
div.playStatus {
	margin-bottom: 3px;
}
.playStatus > span {
	padding:5px 5px 5px 30px;
	position:relative;
	display:block;
	width:calc(100% - 35px);
}
.playStatus > span > em{
	display:inline-block;
	white-space:nowrap;
}
.playStatus:before {
	position:absolute;
	display:block;
	content:'';
	border-radius: calc(3px - 1px) 0 0 calc(3px - 1px);
	width:22px;
	height:100%;
	left:0;
	top:0;
	bottom:0;
	background-size:74%;
	background-repeat:no-repeat;
	background-position:center center;
}
.playStatus.isTogglePc [data-playComment='true'] {
	cursor:pointer;
}
.playStatus [data-playComment='true']:after{
	position:absolute;
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	top:-5px;
	right:0;
	content:'\f27a';
	display:none;
	width:20px;
	height:10px;
	font-size:20px;
}
.playComment{
	display:none;
	background: #FFFFFF;
	padding: 5px;
	border-radius: 5px;
	line-height: 110%;
	margin-top: 5px;
	border:1px dotted;
}
.basicPlayUl .playStatus [data-playComment="true"]:after {
		display:block;
	}
.basicPlayUl .playComment {
		display:none;
	}
.freeOptionPlayUl .playStatus [data-playComment="true"]:after {
		display:block;
	}
.freeOptionPlayUl .playComment {
		display:none;
	}
.optionPlayUl .playStatus [data-playComment="true"]:after {
		display:block;
	}
.optionPlayUl .playComment {
		display:none;
	}

@media screen and (max-width: 640px) {
	.playStatus.isTogglePc [data-playComment='true'] {
		cursor:unset;
	}
	.playStatus.isToggleSp [data-playComment='true'] {
		cursor:pointer;
	}
	.basicPlayUl .playStatus [data-playComment="true"]:after {
				display:block;
			}
	.basicPlayUl .playComment {
				display:none;
			}
	.freeOptionPlayUl .playStatus [data-playComment="true"]:after {
				display:block;
			}
	.freeOptionPlayUl .playComment {
				display:none;
			}
	.optionPlayUl .playStatus [data-playComment="true"]:after {
				display:block;
			}
	.optionPlayUl .playComment {
				display:none;
			}
}

/*---- オプションプレイ ---------------------------------*/
/*-- Ng --*/
.playStatus.statusNg {
			border: 1px solid #B71D1D;
				color:#B71D1D;
				background-color:rgba(238,238,238,1);
	}
.playStatus.statusNg:not(.noOptionPlayIcon):before {
			background-color:rgba(255,228,228,1);
				background-image: url(/s/img/fdc_playNgIcon_alpha.png);
	}
.playStatus.statusNg:not(.noOptionPlayIcon) [data-playComment='true']:after{
			color:#B71D1D;
	}
.playStatus.statusNg:not(.noOptionPlayIcon) [data-playComment='true'] .playComment{
			border:1px dotted #B71D1D;
				background-color:rgba(0, 0, 0, 0);
	}
/*-- Vague --*/
.playStatus.statusVague {
			border: 1px solid #DAA907;
				color:#DAA907;
				background-color:rgba(255,255,255,1);
	}
.playStatus.statusVague:not(.noOptionPlayIcon):before {
			background-color:rgba(255,255,206,1);
				background-image: url(/s/img/fdc_playVagueIcon_alpha.png);
	}
.playStatus.statusVague:not(.noOptionPlayIcon) [data-playComment='true']:after{
			color:#DAA907;
	}
.playStatus.statusVague:not(.noOptionPlayIcon) [data-playComment='true'] .playComment{
			border:1px dotted #DAA907;
				background-color:rgba(0, 0, 0, 0);
	}
/*-- Ok --*/
.playStatus.statusOk {
			border: 1px solid #0C61E0;
				color:#0C61E0;
				background-color:rgba(255,255,255,1);
	}
.playStatus.statusOk:not(.noOptionPlayIcon):before {
			background-color:rgba(224,236,255,1);
				background-image: url(/s/img/fdc_playOkIcon_alpha.png);
	}
.playStatus.statusOk:not(.noOptionPlayIcon) [data-playComment='true']:after{
			color:#0C61E0;
	}
.playStatus.statusOk:not(.noOptionPlayIcon) [data-playComment='true'] .playComment{
			border:1px dotted #0C61E0;
				background-color:rgba(0, 0, 0, 0);
	}
/*-- Good --*/
.playStatus.statusGood {
			border: 1px solid #62BD0F;
				color:#62BD0F;
				background-color:rgba(255,255,255,1);
	}
.playStatus.statusGood:not(.noOptionPlayIcon):before {
			background-color:rgba(226,255,203,1);
				background-image: url(/s/img/fdc_playGoodIcon_alpha.png);
	}
.playStatus.statusGood:not(.noOptionPlayIcon) [data-playComment='true']:after{
			color:#62BD0F;
	}
.playStatus.statusGood:not(.noOptionPlayIcon) [data-playComment='true'] .playComment{
			border:1px dotted #62BD0F;
				background-color:rgba(0, 0, 0, 0);
	}
.playStatus.playExplanation {
	line-height:normal;
	width:100%;
	padding:5px;
	border:1px solid #A6B7D1;
	background-color: #FFFFFF;
}
.playStatus.playExplanation > span{
	padding:0px;
}
.playStatus.noOptionPlayIcon > span {
	padding-left:5px;
	width: calc(100% - 10px);
}
.playStatus.statusOk.noOptionPlayIcon,
.playStatus.statusGood.noOptionPlayIcon,
.playStatus.statusVague.noOptionPlayIcon,
.playStatus.statusNg.noOptionPlayIcon {
	border:1px solid #A6B7D1;
	color:#A6B7D1;
	background-color: #FFFFFF;
}
.noOptionPlayIcon .playComment {
	border-color: #A6B7D1;
	color: #333333;
}

/*-- week schedule -------------------------------------*/
.aboutBlock.weekSchedule{
}
.aboutBlock.weekSchedule h3{
	padding:0 10px 5px 0px;
	text-align:left;
	font-weight:bold;
	font-size:18px;
}
.aboutBlock.weekSchedule ul {
	font-size: 0;
	line-height: 0;
	width:100%;
}
.aboutBlock.weekSchedule li {
	display:table-cell;
	width: calc(100% / 7);
	text-align: center;
}
.aboutBlock.weekSchedule .day {
	font-size: 14px;
	line-height: 100%;
	padding: 10px 0;
	vertical-align:middle;
	text-align:center;
}
.aboutBlock.weekSchedule .time {
	height: 100%;
	font-size: 14px;
	line-height: 100%;
	vertical-align:top;
	padding-top:10px;
	padding-bottom:10px;
}
.aboutBlock.weekSchedule .time > span{
	display:block;
}
.aboutBlock.weekSchedule .time > span > span{
	display:block;
}

#weekScheduleBlock .th{
	background-color: #;
	color: #;
	border: 1px solid #;
	margin-bottom:-1px;
	margin-right:-1px;
}
#weekScheduleBlock li .td{
	border-color:#;
	background-color: #;
	color: #;
}
#weekScheduleBlock .sat .th{
	background-color: #;
	color: #;
}
#weekScheduleBlock li .sat .td{
}
#weekScheduleBlock .sun .th{
	background-color: #;
	color: #;
}
#weekScheduleBlock li .sun .td{
}

/*-- スケジュールステータスアイコン -------------------------------------------------------*/
.statusIcon {
	display:block;
}
.statusIcon > span{
	display:inline-block;
	border-radius:20px;
	padding: 2px 10px;
	margin: 3px auto;
	line-height: 100%;
	font-size:12px;
}
.statusIcon.workIcon > span{
	background-color:#CCCCCC;
	color:#0000FF;
}
.statusIcon.reserveIcon > span{
	background-color:#CCCCCC;
	color:#FF8C00;
}
.statusIcon.checkIcon > span{
	background-color:#CCCCCC;
	color:#DC143C;
}
.statusIcon.breatheIcon > span{
	visibility: hidden;
}


/*-- 出勤アイコン -------------------------------------------------------*/
#weekScheduleBlock .scheduleIconWrap {
	padding: 0px 5px 5px 5px;
	width:auto;
	text-align: center;
	position: static;
}
.scheduleIconWrap .scheduleIcon{
	position:static;
}
/*-- プロフィール下部 ---------------------------------------------*/
#profileBottom {
	display:flex;
	flex-wrap:wrap;
	justify-content: flex-start;
}

/*-- block ----------------------------------------------------------*/
/*---- block common ----------------------------------------------------------*/
#profileBottom > section{
	margin-bottom:20px;
	border:1px solid #EC329E;
	background-color:rgba(255,255,255,1);
	position: relative;
	border-radius: 10px;
	display:flex;
	flex-wrap:wrap;
	width: 48%;
	box-sizing: border-box;
}
#profileBottom > section > div{
	padding: 20px;
	width:100%;
}
#profileBottom > section:nth-child(odd){
	margin-right: 2%;
}
#profileBottom > section:nth-child(even){
	margin-left:2%;
}

/*---- block profile ----------------------------------------------------------*/
#profileBlock table{
	box-sizing:border-box;
	width:100%;
}
#profileBlock .plofileFlex{
	display:flex;
	flex-wrap:wrap;
		border: solid #A6B7D1;
		border-width: 1px 0 0 1px;
	box-sizing:border-box;
}
#profileBlock .th,
#profileBlock th{
	font-size:16px;
	text-align:left;
		border:1px solid #A6B7D1;
		vertical-align:top;
	padding:10px;
	width: 150px;
	min-width: 150px;
			background-color:#E7E7FF;
			color:#7373D5;
		box-sizing:border-box;
}
#profileBlock .td,
#profileBlock td{
	font-size:16px;
	text-align:left;
		border:1px solid #A6B7D1;
		width:calc(100% - 150px);
	padding:10px;
		background-color:#FFFFFF;
			color:#555555;
		box-sizing:border-box;
}
#profileBlock .th,
#profileBlock .td{
	border-width: 0 1px 1px 0;
}
#profileBlock [data-layoutpc=type1] .th,
#profileBlock [data-layoutpc=type1] .td{
	width:100%;
}
@media screen and (max-width: 640px) {
	#profileBlock [data-layoutsp=type0] .th{
		width:150px;
	}
	#profileBlock [data-layoutsp=type0] .td{
		width:calc(100% - 150px);
	}
	#profileBlock [data-layoutsp=type1] .th,
	#profileBlock [data-layoutsp=type1] .td{
		width:100%;
	}
}
/*---- block shop comment ----------------------------------------------------------*/
#shopCommentBlock .shopCommentData {
			color:#333333;
		text-align:left;
		}
#shopCommentBlock .shopCommentData .editorHtml{
	text-align:left;
}
/*---- block item comment ----------------------------------------------------------*/
#itemCommentBlock .itemCommentData {
			color:#333333;
		text-align:left;
		}

/*---- block item movie ----------------------------------------------------------*/
#itemMovieBlock .fdc_itemMoviePlayer {
	margin:0px auto;
	border:1px solid #;
}

#itemMovieBlock .movieThumb {
	margin:0 auto;
	width:100%;
}
#itemMovieBlock .movieThumb li {
	display: flex;
	margin-bottom: 1px;
	padding:10px;
	background: #FFFFFF;
	background: -moz-linear-gradient(top, #FFFFFF 0%, #FFFFFF 50%, #F2F2F2 50%, #F2F2F2 100%);
	background: -webkit-linear-gradient(top, #FFFFFF 0%, #FFFFFF 50%, #F2F2F2 50%, #F2F2F2 100%);
	background: linear-gradient(to bottom, #FFFFFF 0%, #FFFFFF 50%, #F2F2F2 50%, #F2F2F2 100%);
}
#itemMovieBlock .movieThumb li:hover {
	background: #D6D6D6;
	background: -moz-linear-gradient(top, #D6D6D6 0%, #969696 100%);
	background: -webkit-linear-gradient(top, #D6D6D6 0%, #969696 100%);
	background: linear-gradient(to bottom, #D6D6D6 0%, #969696 100%);
}
#itemMovieBlock .movieThumb li img {
	display: inline-block;
	vertical-align: top;
	width:100px;
	cursor: pointer;
}
#itemMovieBlock .movieThumb .movieText {
	display: inline-block;
	overflow: hidden;
	vertical-align: top;
	padding: 0 0 4px 5px;
	width: calc(100% - 105px);
	font-size: 11px;
	line-height: 1.5;
	color: #000000;
	box-sizing: border-box;
}
#itemMovieBlock .movieThumb .movieText .title {
	display: block;
	/*
	overflow: hidden;
	height: 1.8em;
	*/
	font-size: 14px;
	font-weight: bold;
	line-height: 1.2;
	text-align:left;
}
#itemMovieBlock .movieThumb .movieText .comment {
	display: block;
	margin-top: 3px;
	width: 100%;
	text-align:left;
	height:6em;
	overflow-y:auto;
}

/*---- block item item review ----------------------------------------------------------*/
#itemReviewBlock .itemReviewData{
	text-align: left;
	color:#333333;
	border-bottom:1px dotted #A6B7D1;
	padding-bottom:10px;
	font-size:16px;
}
#itemReviewBlock .itemReviewData:nth-child(n + 2){
	padding-top:10px;
}
#itemReviewBlock .itemReviewData:last-child{
	padding-bottom:0px;
	border-bottom:0px dotted #A6B7D1;
}
#itemReviewBlock .date,
#itemReviewBlock .title,
#itemReviewBlock .star,
#itemReviewBlock .customerName,
#itemReviewBlock .reviewFreeSelect{
	margin-bottom:10px;
}
#itemReviewBlock .reviewFreeSelect{
	text-align:left;
	font-size:15px;
}
#itemReviewBlock .star > span{
	position:relative;
	color:#FFBF00;
	display:inline-block;
	line-height:100%;
}
#itemReviewBlock .star > span:after{
	display:block;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	width:100%;
	height:10px;
}
#itemReviewBlock .star > .star1:after{
	content:'★';
}
#itemReviewBlock .star > .star2:after{
	content:'★★';
}
#itemReviewBlock .star > .star3:after{
	content:'★★★';
}
#itemReviewBlock .star > .star4:after{
	content:'★★★★';
}
#itemReviewBlock .star > .star5:after{
	content:'★★★★★';
}
#itemReviewBlock .reviewComment{
	border:1px solid #CCCCCC;
	background-color:#EFEFEF;
	color:#333333;
	border-radius:0px;
	padding:10px;
	text-align:left;
	margin-bottom:30px;
}
#itemReviewBlock .recommentWrap{
    padding-top:10px;
    margin-top:10px;
    border-top:1px solid #CCCCCC;
	padding-left:16px;
}
#itemReviewBlock .recommentTitle{
	position:relative;
}
#itemReviewBlock .recommentTitle i{
	position:absolute;
	left:-20px;
	top:-2px;
}
#itemReviewBlock .replyComment{
	border:1px solid #CCCCCC;
	background-color:#EFEFEF;
	border-radius:10px;
	padding:10px;
	margin-top:10px;
}
#itemReviewBlock .replyComment .subTitle{
	display:block;
	width:100%;
	text-decoration: underline;
	margin-bottom:5px;
}

	#itemReviewBlock .subInfo{
	margin-top: 15px;
	display: flex;
	flex-direction: row;
	justify-content: center;
	width: 360px;
	margin: 0 auto;
}
#itemReviewBlock .subInfo > div {
	padding:10px;
	box-sizing:border-box;
}
#itemReviewBlock .subInfo.sortType0 > div {
	width:180px;
}
#itemReviewBlock .subInfo.sortType0 > div:first-child {
	text-align:right;
}
#itemReviewBlock .subInfo.sortType0 > div:last-child {
	text-align:left;
}
#itemReviewBlock .subInfo.sortType1 > div {
	width:180px;
}
#itemReviewBlock .subInfo.sortType1 > div:first-child {
	text-align:left;
}
#itemReviewBlock .subInfo.sortType1 > div:last-child {
	text-align:right;
}
#itemReviewBlock .data .info em {
	font-weight:bold;
	font-size:18px;
}
#itemReviewBlock .reviewCommentWrap .reviewTitleWrap{
	display:flex;
	width: 100%;
	justify-content:space-between;
}
#itemReviewBlock .linkWrap {
	padding-top: 10px;
}
#itemReviewBlock .linkWrap + .linkWrap .btnToWriteReview{
	margin-top:0px;
}
#itemReviewBlock .info {
    margin-bottom: 10px;
}

/*---- block item photo mail diary -------------------------------------------------*/
#photoDiaryBlock .photoMailDiaryGood{
	letter-spacing: -1em;
	white-space: nowrap;
	width: 80px;
}
#photoDiaryBlock .photoMailDiaryGood a{
	display: inline-block;
	padding-top: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
	letter-spacing: normal;
	white-space: normal;
}
#photoDiaryBlock .goodButton{
	text-decoration:none;
	vertical-align: top;
	margin-left: 8px;
}
#photoDiaryBlock .goodButton > i{
	display: table-cell;
	color:#999999;
}
#photoDiaryBlock .goodButton > i.lastAdd{
	color:#F0375F;
}
#photoDiaryBlock .goodButton > i:hover {
	color:#F0375F;
}
#photoDiaryBlock .goodButton > span {
	display: table-cell;
	padding-left: 3px;
	padding-top: 0px;
	vertical-align: top;
	color:#999999;
}
#photoDiaryBlock .goodButton > span.lastAdd{
	color:#000000;
}
#photoDiaryBlock img{
    width:auto;
    max-width:100%;
}

/*---- block reserve link ----------------------------------------------------------*/
#fdc_reserveLink{
	width:100%;
	padding:8px 0px;
	text-align:center;
}

/*sp*/
body.sp #weekScheduleBlock .scheduleIconWrap {
	text-align: left;
	margin:0 auto 0 0;
}
body.sp .playStatus {
	width: 100%;
	margin: 0 0 8px 0;
}
body.sp div.playStatus {
	margin-bottom: 0;
}
body.sp .profileTop > .profileTopLeft {
	width: 100%;
	margin:0 auto 20px auto;
}
body.sp .profileTop > .profileTopRight {
	width: 100%;
	margin: 0 auto;
}
body.sp #item {
	width: auto;
}
body.sp .statusIcon{
	display:inline-block;
}
body.sp .profileAboutBlock {
	border-left: none;
	border-right: none;
	padding: 10px 0 0 0;
}
body.sp .profileTop,
body.sp .profileTop_l,
body.sp .profileTop_r {
	width: auto;
	display: block;
	padding: 0;
}
body.sp #sliderContainer {
	display: block;
	width: auto;
	height: auto;
	text-align: center;
	margin: 0;
	padding: 10px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body.sp ul#slider {
	width: 1000px;
}
body.sp ul#slider li {
	width: 260px;
}
body.sp ul#slideIcon {
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body.sp ul#slideIcon li {
	display: inline-block;
	width: 20px;
	height: 50px;
	position: absolute;
	font-size: 11px;
	line-height: 50px;
	text-align: center;
	color: #fff;
	cursor: pointer;
}
body.sp .aboutBlock {
	padding: 8px;
}
body.sp .layoutColSpanNum2 section {
	margin-top: var(--contents-pc-marginTop);
	margin-bottom: var(--contents-pc-marginBottom);
}
body.sp .aboutBlock.profile{
	padding:auto;
}
body.sp .aboutBlock.profile > div{
	margin:auto;
}
body.sp .aboutBlock.weekSchedule {
	margin: 0 0 10px 0;
}
body.sp .aboutBlock.weekSchedule ul {
	display:block;
	padding:0px;
	padding-bottom:0px;
}
body.sp .aboutBlock.weekSchedule ul li{
	display:flex;
	flex-wrap: wrap;
	width: 100%;
	font-size: 0;
	line-height: 0;
	margin: 0 0 -1px 0;
	padding-bottom:0px;
}
body.sp .aboutBlock.weekSchedule li br {
	display: none;
}
body.sp .aboutBlock.weekSchedule .week,
body.sp .aboutBlock.weekSchedule .day,
body.sp .aboutBlock.weekSchedule .time {
	vertical-align: middle;
	font-size: 16px;
	padding:5px;
	/*min-height:28px;*/
	display:block;
	box-sizing:border-box;
}
body.sp .aboutBlock.weekSchedule .time {
	text-align:left;
	width:calc(100% - 130px);
}
body.sp .aboutBlock.weekSchedule .day {
	width: 100px;
	border-bottom: none;
}
body.sp .shortProf,
body.sp .shortStyle {
	white-space: unset;
}
body.sp .aboutBlock.weekSchedule .time > span{
	display:inline-block;
}
body.sp .aboutBlock.weekSchedule .time > span > span{
	display:inline-block;
}
body.sp #weekScheduleBlock .th{
	margin-bottom:0px;
	margin-right: 0;
	flex-basis: 35%;
	box-sizing: border-box;
}
body.sp #weekScheduleBlock .td{
	margin-right: 0;
	flex-basis: 65%;
	box-sizing: border-box;
}
body.sp .optionPlayWrap h3{
	margin:5px 0 5px 0;
}
@media screen and (max-width: 640px) {
	#contents{
		width: 100%;
		padding-top: 40px;
		padding-bottom: 40px;
	}
	#weekScheduleBlock .scheduleIconWrap {
		text-align: left;
		margin:0 auto 0 0;
	}
	.playStatus {
		width: 100%;
		margin: 0 0 8px 0;
	}
	div.playStatus {
		margin-bottom: 0;
	}
	.layoutColSpanNum2 section {
		margin-top: var(--contents-sp-marginTop);
		margin-bottom: var(--contents-sp-marginBottom);
	}
	.profileTop > .profileTopLeft {
		width: 100%;
		padding-right: 0;
		padding-top: var(--contents-sp-marginTop);
		padding-bottom: var(--contents-sp-marginBottom);
		box-sizing: border-box;
		margin: 0;
	}
	.profileTop > .profileTopRight {
		width: 100%;
		padding-left: 0;
		box-sizing: border-box;
		margin: 0;
	}
	#item {
		width: auto;
	}
	.statusIcon{
		display:inline-block;
	}
	.profileAboutBlock {
		border-left: none;
		border-right: none;
		padding: 10px 0 0 0;
	}
	.profileTop,
	.profileTop_l,
	.profileTop_r {
		width: auto;
		display: block;
		padding: 0;
	}
	#sliderContainer {
		display: block;
		width: auto;
		height: auto;
		text-align: center;
		margin: 0;
		padding: 10px 0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

	ul#slider {
		width: 1000px;
	}
	ul#slider li {
		width: 260px;
	}
	ul#slideIcon {
		width: 100%;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	ul#slideIcon li {
		display: inline-block;
		width: 20px;
		height: 50px;
		position: absolute;
		font-size: 11px;
		line-height: 50px;
		text-align: center;
		color: #fff;
		cursor: pointer;
	}
	.aboutBlock {
		padding: 8px;
	}
	.aboutBlock.profile{
		padding:auto;
	}
	.aboutBlock.profile > div{
		margin:auto;
	}
	.aboutBlock.weekSchedule {
		margin: 0 0 10px 0;
	}
	.aboutBlock.weekSchedule ul {
		display:block;
		padding:0px;
	    padding-bottom:0px;
	}
	.aboutBlock.weekSchedule ul li{
		display:flex;
        flex-wrap: wrap;
		width: 100%;
		font-size: 0;
		line-height: 0;
		margin: 0 0 -1px 0;
		padding-bottom:0px;
	}
	.aboutBlock.weekSchedule li br {
		display: none;
	}
	.aboutBlock.weekSchedule .week,
	.aboutBlock.weekSchedule .day,
	.aboutBlock.weekSchedule .time {
		vertical-align: middle;
		font-size: 16px;
		padding:5px;
		box-sizing:border-box;
	}
	.aboutBlock.weekSchedule .time {
		text-align:left;
		width:calc(100% - 130px);
	}
	.aboutBlock.weekSchedule .day {
		width: 100px;
			}
	.shortProf,
	.shortStyle  {
		white-space: unset;
	}
	.aboutBlock.weekSchedule .time > span{
		display:inline-block;
	}
	.aboutBlock.weekSchedule .time > span > span{
		display:inline-block;
	}
	#weekScheduleBlock .th{
		margin-bottom:0px;
		margin-right: 0;
		flex-basis: 35%;
		box-sizing: border-box;
	}
	#weekScheduleBlock .td{
		margin-right: 0;
		flex-basis: 65%;
		box-sizing: border-box;
	}
	.aboutBlock.weekSchedule .week,
	.aboutBlock.weekSchedule .day,
	.aboutBlock.weekSchedule .time {
		/*min-height:28px;*/
		display:block;
	}
	.optionPlayWrap h3{
		margin:0 0 5px 0;
	}
}

/*ページタイトル*/
.pageTitle:after{
										}




/*-- table ------------------------------*/
	table{
	display:table;
	border-collapse:collapse;
	box-sizing: border-box;
}
table th{
	border:1px solid #A6B7D1;
	background-color:#E7E7FF;
	color: #7373D5;
}
table td{
	border:1px solid #A6B7D1;
	background-color: #FFFFFF;
	color: #555555;
}
table th.sat {
	background-color:#8AAAF4;
	color: #FFFFFF;
}
table th.sun {
	background-color:#F682DC;
	color: #FFFFFF;
}
body.sp .weekScheduleWrap table > tbody{
	display:flex;
	flex-wrap:nowrap;
}
body.sp .weekScheduleWrap tr{
	display:block;
}
body.sp .weekScheduleWrap tr:first-child{
	width:35%;
}
body.sp .weekScheduleWrap tr.pcTr{
	display:none;
}
body.sp table.weekSchedule tr.pcSpTr td{
	display:block;
	width: calc(65% + 1px) !important;
	margin-left: -1px;
}
body.sp .weekScheduleWrap th{
	display:block;
	width:100% !important;
	margin-bottom:-1px;
	box-sizing:border-box;
}
body.sp .weekScheduleWrap th .day{
	display:block;
	width:100% !important;
}
body.sp .weekScheduleWrap td{
	display:block;
	width:100% !important;
	height:unset !important;
	box-sizing:border-box;
	margin-bottom:-1px;
}
@media screen and (max-width: 640px) {
	.weekScheduleWrap table > tbody{
		display:flex;
		flex-wrap:nowrap;
	}
	.weekScheduleWrap tr.pcTr{
		display:none;
	}
	.weekSchedule tr.pcSpTr td{
		display:block;
		width: calc(65% + 1px) !important;
		margin-left: -1px;
	}
	.weekScheduleWrap tr:first-child{
		width:35%;
	}
	.weekScheduleWrap tr:last-child{
		width:65%;
	}
	.weekScheduleWrap th{
		display:block;
		width:100% !important;
		margin-bottom:-1px;
		position:relative;
	}
	#itemBody .weekScheduleWrap td,
	#itemBody .weekScheduleWrap th {
		margin-bottom: -1px;
	}
	.weekScheduleWrap th > div{
		position:absolute;
		margin:auto;
		top:0;
		bottom:0;
		height:calc(16px + 10px);/*font-size + padding*/
	}
	.weekScheduleWrap th .day{
		display:block;
		width:100% !important;
	}
	.weekScheduleWrap td{
		display:block;
		width:100% !important;
		height:unset !important;
		box-sizing:border-box;
		margin-bottom:-1px;
	}
}
table.weekSchedule tr.pcSpTr td{
	display:none;
}
body.sp table.weekSchedule {
	display:block;
}
body.sp table.weekSchedule tbody{
	display:block;
}
body.sp table.weekSchedule tr.psSpTr {
	display:flex;
	flex-wrap:wrap;
	width:100% !important;
}
body.sp table.weekSchedule tr.pcSpTr th{
	display:block;
	width:35% !important;
	box-sizing:border-box;
}

body.sp table.weekSchedule tr.pcSpTr td{
	display:block;
	width:calc(65% + 1px) !important;
	margin-left:-1px;
}
body.sp table.weekSchedule tr:last-child td{
	display:none;
}
@media screen and (min-width: 641px) {
	tr.spNumWeekTr{
		display:none;
	}
}
@media screen and (max-width: 640px) {
	table.weekSchedule {
		display:block;
	}
	table.weekSchedule tbody{
		display:block;
	}
	.weekScheduleWrap tr{
		display:block;
	}
	.weekScheduleWrap th {
		display: block;
		width: 100% !important;
		margin-bottom: -1px;
		box-sizing: border-box;
	}
	table.weekSchedule tr.pcSpTr {
		display:flex;
		flex-wrap:wrap;
		width:100% !important;
	}
	table.weekSchedule tr.pcSpTr th{
		display:block;
		width:35% !important;
		box-sizing:border-box;
	}
	table.weekSchedule tr.pcSpTr td{
		display:block;
		width:calc(65% + 1px) !important;
		margin-left:-1px;
	}
	table.weekSchedule tr.pcTr td{
		display:none;
	}
}


/*1カ月週ボタン*/
.weekWrap {
	text-align: left;
	margin-bottom: 10px;
}
.weekWrap a.active{
	pointer-events:none;
}
.weekWrap a.active > span{
	color:#FFFFFF;
}
.weekWrap a{
	display:inline-block;
	margin-right:5px;
	margin-left:0px;
}
#weekScheduleBlock .aboutBlock.weekSchedule{
	position:relative;
}

/* ajax loading*/
#scheduleDataWrap .contents{
	position:relative;
	width:100%;
	min-height:200px;
}
#weekScheduleBlock .aboutBlock.weekSchedule #ajaxLoading{
	position:absolute;
	width:100%;
	height:100%;
	z-index:9;
}

.btn.webReserveBtn{
	background-color:#;
	color:#;
	margin: 5px 5px 0px 5px;
	display: inline-block;
	padding: 3px 5px;
	border-radius: 4px;
}
body.sp .btn.webReserveBtn{
	margin: 0px 5px 0px 5px;
}
@media screen and (max-width: 640px) {
	.btn.webReserveBtn{
		margin: 0px 5px 0px 5px;
	}
}

.fdc_shopCourseIconImage {
	padding-bottom: 5px;
}
.fdc_shopCourseIconImage img{
	width:auto;
	max-width:100%;
}
/*画像がある時、テキストコースアイコンを非表示*/
.iconWrap .icon.fdc_shopCourseIconText{
	display:none;
	border-radius:3px;
}
/*画像がない時、テキストコースアイコンを表示*/
.iconWrap .icon.fdc_shopCourseIconText.shopCourseIconNoImage{
	display:inline-block;
}
@media screen and (max-width: 640px) {
	.fdc_shopCourseIconImage {
		display:none;
	}
	.iconWrap .icon.fdc_shopCourseIconText{
		display: inline-block;
	}
}

/* icon position */
.iconPosition > .newFaceIcon,
.iconPosition > .newFaceIconImage {
							left:0%;
							top:0%;
			bottom:unset;
					}
.iconPosition > .newFaceIconImage {
	object-fit: unset;
	width: unset;
}
.iconPosition > .newFaceIcon.triangle {
	border-width: 0px;
				border-color: #DB3E3E transparent transparent transparent;
	}
.iconPosition > .newFaceIcon.triangle > span {
	display: none;
				color: #FFFFFF;
	}

.baseProfile h2 ruby,
.baseProfile h2 ruby rt{
	text-align:center;
}
.baseProfile h2 ruby{
	position:relative;
	display:inline-block;
}
.baseProfile h2 ruby rt{
	position:relative;
	top:0;
	font-size:14px;
	line-height:1;
	width: 100%;
	left: 0;
	display: block;
}
.baseProfile h2 ruby .rt{
	font-size:14px;
	line-height:1;
}
.baseProfile h2 ruby + span{
	display:inline-block;
}

#weekScheduleBlock .scheduleIconWrap.noText{
	height:0px;
	padding:0px;
}
.scheduleFreeText{
	padding: 0 5px;
	box-sizing: border-box;
}
body.sp .scheduleFreeText{
	padding: 0;
}
@media screen and (max-width: 640px) {
	.scheduleFreeText{
		padding: 0;
	}
}
.itemAttributeWrap .itemAttribute.itemAttributeDisplayModeR{
	margin:0px 5px 5px 5px;
}