@charset "UTF-8";
/**************************************
 Fun！Castの基本CSS
---------------------------------------
 ※ このCSSは変更しないでください。
 ※ funcast_user.css にCSSを書けば、このCSSが上書きされます。 
  		plugins/free2live_funcastEx/cssExディレクトリ
**************************************/


/**************************************
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■　ページ別
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
**************************************/


/**************************************
* 女性一覧ページ
*
* flex row 20% スマホでは 33.3%
*
**************************************/

/* 女性一覧 */
.cast_list
{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
/* 女性一覧 一人分 */
.cast_list .item
{
	width: calc(20% - 10px);

	margin-bottom: 1.5rem;
	text-align: center;
}
/* スマホでは３人並び */
@media screen and (max-width:480px)
{
	.cast_list .item{
		width: calc(33.3% - 10px);
	}
}

/* 店舗名 */
.cast_list .item .shop_name
{
	padding: 0.25em 0;
	margin-bottom: 2px;
}
/* 画像 */
.cast_list .item img
{
	width: 100%;
}
/* 名前 */
.cast_list .item .name
{
	text-align:center;	
	padding: 0.5rem 0;
}
/* サイズ */
.cast_list .item .size
{
	text-align: left;
}
/* リアルタイムご案内状況 */
.cast_list .item .wait_message
{
	color: pink;
	color: #ee6666;
	padding: 0.25rem 0;
}
/* アイコン */
.cast_list .item .cast_icon img
{
	margin-bottom: 0.15rem;
}
/* 女性のコメント */
.cast_list .item .cast_memo
{
	display: none;
}
/* 運営のコメント */
.cast_list .item .manager_memo
{
	display: none;
}

/* リアルタイムご案内状況は、基本的に非表示 */
.cast_list .item .wait_message
{
	display: none;
}
/* リアルタイムご案内状況 */
.cast_list.mati .item .wait_message
{
	display: block;
}
.cast_list.mati .item .size,
.cast_list.mati .item .cast_memo,
.cast_list.mati .item .cast_icon,
.cast_list.mati .item .name .age,
.cast_list.mati .item .name .new,
.cast_list.mati .item .name .pickup,
.cast_list.mati .item .name .upd
{
	display: none;
}






/**************************************
* 出勤予定ページ
**************************************/
/* 出勤日一覧 */
.date_list ul
{
	list-style-type: none;
}
/* 出勤日の一日 */
.date_list li
{
	display: inline-block;
	margin: 0;
}
.date_list li a{
	display: block;
	padding: 0.5rem 1rem;
	text-decoration: none;
	border-right:1px solid #333;
}
.date_list li a:hover{
	text-decoration:underline;
}

/* 非表示の項目 */
.cast_list.schedule .item .new,
.cast_list.schedule .item .upd,
.cast_list.schedule .item .pickup,
.cast_list.schedule .item .wait_message,
.cast_list.schedule .item .size,
.cast_list.schedule .item .is_today_work,
.cast_list.schedule .item .cast_memo,
.cast_list.schedule .item .manager_memo
{
	display: none;
}



/**************************************
* ランキングページ
**************************************/
/* ランキング一覧 */
.cast_ranking_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 1rem 0;
}
/* 一人分の枠 */
.cast_ranking_list .item
{
	width: calc(20% - 10px);
	margin-bottom: 1rem;
	text-align: center;
}
/* スマホでは横３列に */
@media screen and (max-width:480px)
{
	.cast_ranking_list .item{
		width: calc(33.3% - 5px);
	}
}

/* 順位 */
.cast_ranking_list .ranking_no
{
	padding: 0 0 0.5rem;
}
/* キャスト名 */
.cast_ranking_list .name
{
	padding: 0.5rem 0 0;
}
/* 「過去のランキング一覧」リンク */
.ranking_link
{
	text-align: right;
	font-size: 120%;
}



/**************************************
* 女性詳細ページ
**************************************/

/*-------------------------------------
 名前、アイコンのボックス 
-------------------------------------*/
/* 名前 */
.cast_icons .name
{
	padding: 0.5rem 0;
	font-size: 120%;
}
/* ピックアップ、新着、更新 */
.cast_icons .name span{
	display: inline-block;
	padding: 0 0.125rem;
	font-weight: normal;
}
.cast_icons .pickup{
	color: yellow;
}
.cast_icons .new{
	color: red;
}
.cast_icons .upd{
	color: orange;
}

/* アイコン */
.cast_detail .cast_icons .icon
{
	width: auto!important;
	height: auto!important;
}
.cast_detail .cast_icons .icon img
{
	max-height: 100px;
	padding: 0.25rem 0;
}




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

/* 全体 */
.profile
{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
/* 左（写真）と右（プロフィール、コメント） */
/* 左右50%幅 */
.profile_left,
.profile_right
{
	width: calc(50% - 10px);
	padding-bottom: 1rem;
}
/* タブレット以下は100%幅 */
@media screen and (max-width:767px)
{
	.profile_left,
	.profile_right
	{
		width: 100%;
	}
}

.funcast_table th
{
	white-space: nowrap;
}
.funcast_table td
{
	width: 100%;
}


/*-------------------
 プロフィールの左（写真）
-------------------*/
.profile .imgs .main img
{
	width: 100%;
}
.profile .imgs .thumb
{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
/* 画像は２５％幅 */
.profile .imgs .thumb img
{
	width: calc(25% - 2px);
	padding: 2px 0 0;
	cursor: pointer;
}
.profile .imgs .thumb .dummy
{
	width: calc(25% - 2px);
	height: 0px;
}


/*-------------------
 プロフィールの右（プロフィール、コメント）
-------------------*/

/* 店舗名 */
.profile .shop_name
{
	text-align: center;
	padding: 0.25rem;
	margin-bottom: 1rem;
}


/*-------------------
 スケジュール表
-------------------*/

.schedule_table{
	width: 100%;
}

.schedule_table th a{
	text-decoration: none;
}
.schedule_table th a:hover{
	text-decoration: underline;
}

/*-------------------
 口コミ
-------------------*/

/* 口コミ一つの枠 */
.report_list .item
{
	padding: 1rem;
	margin: 0.25rem 0;

	background-color: hsla(0, 0%, 15%, 0.5);

	border-radius: 0.5rem;
}
/* キャスト名 */
.report_list .item .cast_name
{
	color: white;
}
.cast_detail .report_list .item .cast_name
{
	display: none;
}
/* 日付 */
.report_list .item .date
{
	padding: 0.5rem 0;
	font-size: 90%;

	color: hsla(0, 0%, 45%, 1);
}


/*-------------------
 週間予定表
-------------------*/
/*
 「◎クリックで予約できます」
 「← 横スクロールできます →」
 の表示
*/
.booking_week .messages
{
	margin: 1rem 0;
}

/* ボタン */
.booking_week .buttons
{
	text-align: center;
}

/*
 週間予定表TABLE
	.work 	勤務時間の枠
 	.sales	予約済みの枠
	※予約済みの枠にはwork,sales両クラスが付きます
*/
.booking_table_week
{
	margin-bottom: 0!important;
}



/* 勤務枠 */
td.work
{
	cursor: pointer!important;
}
/* 勤務枠　予約済み */
td.work.sales
{
	cursor: default!important;
}
/* ◎ （予約可のマーク） */
td.work:not(.sales)
{
	font-size: 120%;
}
/* ✕ （予約不可のマーク） */
td.work .batten
{
	font-size: 180%;
}

/*-------------------
 キャストのリンク
 （写メ日記、Twitter など）
-------------------*/
.cast_links .link
{
	display: flex;
	flex-direction: column-reverse;

	text-align: center;

	margin: 0.5rem 0;	
}
.cast_links .link .name
{
	margin: 0.5rem 0;
}
.cast_links a
{
	text-decoration: none;
}
.cast_links img
{
	display: inline-block;
}

























/**************************************
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■　ウィジェット別
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
**************************************/

.widget_content.today .time_str
{
	display: none;
}

/*-------------------------------------
* 女性一覧ウィジェット
-------------------------------------*/

/* キャスト一人分の枠 */
/* 横５列 */
.widget_content .cast_list .item
{
	width: calc(20% - 10px);
}
/* スマホの場合は、横３列にする */
@media screen and (max-width:480px)
{
	.widget_content .cast_list	 .item{
		width: calc(33.3% - 5px);
	}
}


/**************************************
* 新人ウィジェット
**************************************/
.widget_content .cast_list.new .name .pickup,
.widget_content .cast_list.new .name .new,
.widget_content .cast_list.new .name .upd,
.widget_content .cast_list.new .size,
.widget_content .cast_list.new .cast_icon,
.widget_content .cast_list.new .cast_memo,
.widget_content .cast_list.new .wait_message
{
	display: none;
}
/* 本日出勤アイコン */
.widget_content .cast_list.new .cast_icon.is_today_work
{
	display: block;
}

/**************************************
* ピックアップ女性ウィジェット
**************************************/
.widget_content .cast_list.new .name .pickup,
.widget_content .cast_list.new .name .new,
.widget_content .cast_list.new .name .upd,
.widget_content .cast_list.new .size,
.widget_content .cast_list.new .cast_icon,
.widget_content .cast_list.new .cast_memo,
.widget_content .cast_list.new .wait_message
{
	display: none;
}
/* 本日出勤アイコン */
.widget_content .cast_list.new .cast_icon.is_today_work
{
	display: block;
}
/* ピックアップマーク、運営メッセージ */
.widget_content .cast_list.pickup .manager_memo
{
	display: block;
	text-align: left;
	margin-bottom: 0.5rem;
	font-size: 85%;
}


/**************************************
* 稼働表ウィジェット
**************************************/
/* 稼働表 */
#funcast_widget_booking
{
	margin: 2rem 0;
}
/* 稼働表TABLE */
#funcast_widget_booking table
{
	margin-bottom: 0;
}
#funcast_widget_booking th
{
	white-space: nowrap;
	padding: 0;
}

/*-----------------
 TABLEヘッダ
-------------------*/
#funcast_widget_booking .table_head th
{
	text-align: center!important;
	vertical-align: bottom!important;
}

/* 女性名 */
#funcast_widget_booking th.col_cast_name
{
	text-align: center;
}
/* 0分 */
#funcast_widget_booking th.col_head_0
{
	border-right: 0 none!important;

	padding: 3px!important;
}
/* 30分 */
#funcast_widget_booking th.col_head_30
{
	border-left: 0 none!important;
	border-right: 0 none!important;

	font-size: 80%!important;
	padding: 3px!important;
}
/* 45分 */
#booking_table th.col_head_45
{
	border-left: 0 none!important;
}


/* キャスト写真 */
#funcast_widget_booking .cast_img img
{
	width: 50px;
	max-width: 50px;
}
/* キャスト名、出勤時刻 */
#funcast_widget_booking .cast_info
{
}
/* キャスト名 */
#funcast_widget_booking .cast_name
{
}

/*-----------------
 データ領域
-------------------*/
#funcast_widget_booking tbody td
{
	padding: 0;
}

/* 空き時間の枠 */
#funcast_widget_booking .work
{
	cursor: pointer!important;
	font-size: 1rem;
}

/* 予約済みの枠 */
#funcast_widget_booking .work.sales
{
	cursor: default!important;
	font-size: 1rem;
}
/* 予約時間帯の表示（13:00〜15:30　予約済） */
#funcast_widget_booking tbody td.course_name
{
	font-size: 70%;
	padding: 4px;
	line-height: 1.1;
}





/* 上部説明 */
#funcast_widget_booking .msg
{
	margin: 0 0 1rem;
}


#funcast_widget_booking .msg table,
#funcast_widget_booking table#desc
{
	width: auto;
	border: none;
	margin: 1rem 0;
}
#funcast_widget_booking .msg table td,
#funcast_widget_booking table#desc td
{
	border: none;
	padding: 0 0.5rem;
	line-height: 1.3;
}
#funcast_widget_booking .msg table td.work,
#funcast_widget_booking table#desc td.work,
#funcast_widget_booking table#desc td.sales
{
	width: 1.5rem;
	cursor: default!important;
}





















/**************************************
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■　共通CSS
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
**************************************/



/**************************************
 FUN タブ
**************************************/

/* タブ */
.fun_tab_wrap
{
	display: flex;
	
	background: linear-gradient(hsla(0, 0%, 40%, 1), hsla(0, 0%, 40%, 0.3));
	border-radius: 0.25rem;

	padding: 0.125rem 0.25rem 0;
	margin-bottom: 0.25rem;

	width: 100%;
}

.fun_tab
{
	display: inline-block;

	border: 1px solid #444;
	border-bottom: none!important;
	border-radius: 6px 6px 0 0;

	color: white;
	background: linear-gradient(hsla(0, 0%, 20%, 1), hsla(0, 0%, 20%, 0.3));

    order: -1;
	cursor: pointer;	
	text-align: center;

	padding: 0.3rem 1rem;
	margin-right: -0.25rem;
}
.fun_tab.active
{
	border: 1px solid #c39;

	background: linear-gradient(#c39,#603);
}

/* タブコンテンツ */
.fun_tab_content
{
	display: none;

	width: 100%;
}

.fun_tab_content.active
{
	display: block;
}



/**
 * 稼働表細のタブはタブを中央寄せにする
 */
#booking_container .fun_tab_wrap
{
	justify-content: center;
}
/**
 * キャスト詳細のタブには枠線をつける
 */
.cast_detail .fun_tabs
{
	border: 1px solid #eee;
	border-radius: 0.5rem;

	padding: 0.3rem; 
}
.cast_detail .fun_tab_content_wrap
{
	padding: 0.3rem; 
}

/**************************************
 ページング
**************************************/
ul.fc_pagination
{
	display: flex;
	flex-wrap: wrap;

	justify-content: center;

	padding-left: 0!important;
	list-style: none!important;

	padding: 1rem 0;
	margin: 0;
}

.fc_pagination a,
.fc_pagination span
{
	display: block;

	background-color: #fff;
	color: #666!important;
	font-size: 80%;

	width: 1.5rem;
	line-height: 1.65rem;
	text-align: center;
	margin: 0.25rem;

	border-radius: 0.25rem;

	text-decoration: none;
}

/* アクティブ */
.page-item.active .page-link
{
	background-color: #666;
	color: #fff!important;

	font-weight: bold;
}

/**************************************
 その他
**************************************/


/*-------------------
  ボタン
-------------------*/
.btn{
    line-height: 1.42857143;
    display: inline-block;
    padding: 0.5rem 1rem;
	border: 1px solid transparent;
    border-radius: 0.25rem;
}

.btn.btn-primary{
    color: #ffffff;
    border-color: #2e6da4;
    background-color: #337ab7;
}


/* ラベル */
.fc_label{
  padding: 0.5rem 0 0.125rem;
  font-weight: bold;
}

/* タイトル１ */
.fc_title
{
	padding: 0.5rem 1rem;
	color:#fff;
	font-weight: bold;

	background: linear-gradient(hsla(0, 0%, 30%, 1), hsla(0, 0%, 30%, 0.3));

	border-radius: 5px;
	margin-bottom: 1rem;
}

/* エラーが有りますBOX */
.error_box
{
	background-color: yellow;
	color: red;
	padding: 1rem;
	margin: 0 0 1rem;
	border-radius: 0.25rem;
}
.error_box .title
{
	font-size: 130%;
	font-weight: bold;
	padding-bottom: 0.25rem;
}

/* ガイドメッセージBOX */
.guide_message_box
{
	background-color: green;
	color: yellow;
	padding: 1rem;
	margin: 0 0 1rem;
	border-radius: 0.5rem;
}
.guide_message_box .title
{
	font-size: 130%;
	font-weight: bold;
	padding-bottom: 0.25rem;
}
.guide_message_box b
{
	color: white;
}


/*-------------------
 色
-------------------*/
/* 土日の文字色 */
th.saturday,
th.saturday a,
td.saturday,
td.saturday a,
th.weekday_6,
span.saturday
{
	color: #3399ff!important;
}
th.sunday,
th.sunday a,
td.sunday,
td.sunday a,
th.weekday_0,
span.sunday
{
	color: red!important;
}

/* ガイドメッセージ色 */
.fc_color_guide{
	color: lightpink;
	padding: 0.5rem 0;
}
/* 赤色 */
.fc_color_red{
	color: red;
}
/* ガイドメッセージ */
.gmsg
{
	color: lightgreen;
}
/* エラーメッセージ */
.emsg
{
	color: red;
	padding: 0.5rem 0;
}