@charset "UTF-8";

*::after,
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/* 月間スケジュールページ */
.girls-select-wrapper {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  background: #fff;
}
.profile-pic {
  width: 109px;
  height: 145px;
  overflow: hidden;
  padding: 10px;
}
.profile-pic img {
  width: 100%;
  height: auto;
  max-height: 121px;
  object-fit: cover;
}
.girls-select {
  width: calc(100% - 109px)!important;
  padding: 0 30px 15px 15px!important;
}
.schedule-prof {
  width: calc(100% - 120px);
  position: absolute;
  top: 20%;
  left: 124px;
  display: flex;
  flex-direction: column;
}
.schedule-prof span {
  margin: 2px 0;
}
.schedule-prof .condition {
  width: 80px;
  background: #00A724;
  padding: 2px 10px;
  color: #fff;
}
.schedule-prof .sc-name {
  width: 100%;
  font-size: 1.1em;
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #444;
}
.calendar-row {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  background: #fff;
  border-top: 1px solid #666;
}
.calendar-row a {
  display: block;
  color: #4E7DFF;
}
.next-back {
  font-size: 1.2em;
  margin-top: 10px;
}
.next-back:first-child {
  margin-left: 5px;
}
.next-back:last-child {
  margin-right: 5px;
}
.next-back-under {
  font-size: 1.2em;
  margin: 10px 0
}
.next-back-under:first-child {
  margin-left: 5px;
}
.next-back-under:last-child {
  margin-right: 5px;
}
#mini-calendar {
  background: #fff;
}
@media screen and (min-width: 48.0625em) {
  .profile-pic {
    width: 200px;
    height: 240px;
  }
  .profile-pic img {
    width: 100%;
    max-height: 220px;
  }
  .girls-select {
    width: calc(100% - 200px)!important;
    padding: 0 50px 15px 0!important;
  }
  .schedule-prof {
    width: calc(100% - 190px);
    top: 34%;
    left: 200px;
  }
  .schedule-prof span {
    margin: 4px 0;
  }
  .schedule-prof .condition {
    font-size: 1.05em;
    width: 90px;
    height: 34px;
    line-height: 23px;
    text-align: center;
    padding: 5px 0;
  }
  .schedule-prof .sc-name {
    font-size: 1.4em;
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .next-back:first-child {
    margin-left: 10px;
  }
  .next-back:last-child {
    margin-right: 10px;
  }
  .next-back-under:first-child {
    margin-left: 10px;
  }
  .next-back-under:last-child {
    margin-right: 10px;
  }
}

/* ========================================
 * #mini-calendar
 * ========================================*/
#mini-calendar .calendar-year-month {
	text-align: center;
	font-size: 32px;
	margin-bottom: 20px;
	font-weight: bold;
}
#mini-calendar table {
	width: 100%;
	border-spacing: 0;
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
	margin-bottom: 0;
	line-height: 1.5;
	border-collapse: separate;
}
#mini-calendar th,
#mini-calendar td {
	background: #fff;
	padding: 7px;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
}
#mini-calendar th {
	color: #fff;
	background: #4F616B;
	vertical-align: top;
	padding-top: 7px;
	padding-bottom: 7px;
}



/*
#mini-calendar th.calendar-sun {
	color: #DF0D2D;
	background: #F8E4E4;
}
#mini-calendar th.calendar-sat {
	color: #2574D3;
	background: #E2F3FC;
}
*/
#mini-calendar td {
	width: 14.3%;
	height: 100px;
	vertical-align: top;
}
#mini-calendar td.calendar-day-off {
	background: #F4F3F2;
	color: #555;
}
#mini-calendar td.calendar-holiday,
#mini-calendar td.calendar-sun {
	color: #CE2727;
	background: #FCF3F3;
}
#mini-calendar td.calendar-sat {
	color: #54AFC8;
	background: #F5FBFE;
}

#mini-calendar .calendar-day-number {
	font-style: normal;
	font-family: "Helvetica Neue", Arial, sans-serif;
	font-weight: bold;
	font-size: 16px;
	display: block;
	padding: 0 3px;
	line-height: 1.2;
}
#mini-calendar td.calendar-holiday .day,
#mini-calendar td.calendar-sun .day {
	color: #DF0D2D;
}
#mini-calendar td.calendar-sat .day {
	color: #2574D3;
}
#mini-calendar td span {
	font-size: 11px;
	line-height: 1.3;
	display: block;
}
#mini-calendar [class*=calender-label] {
	font-size: 11px;
	line-height: 1.3;
	color: #000;
	background: #FCEBCF;
	border: solid 1px #D2AC8E;
	display: block;
	padding: 3px;
	margin-top: 3px;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-o-border-radius: 4px;
	-ms-border-radius: 4px;
}
#mini-calendar td span.calender-label-red {
	background-color: #FCCFD1;
	border-color: #D28EA6;
}
#mini-calendar td span.calender-label-blue {
	background-color: #CFE4FC;
	border-color: #8E9BD2;
}
#mini-calendar td span.calender-label-green {
	background-color: #E5FCCF;
	border-color: #99C170;
}
/* 何もない日 */
#mini-calendar td.calendar-none {
	background: #FBFAF7;
}
#mini-calendar td.calendar-today {
	background: #FEFBDA;
}

@media screen and (max-width: 600px) {
	#mini-calendar thead {
		display: none;
	}
	#mini-calendar th,
	#mini-calendar td {
		display: block;
		width: 100%;
		padding: 0;
	}
	#mini-calendar td {
		height: auto;
		display: -webkit-flex;
		display: flex;
	}
	#mini-calendar .calendar-none {
		display: none
	}

	#mini-calendar .calendar-labels {
		padding: 5px;
	}
	#mini-calendar [class*=calender-label] {
		display: inline-block;
		padding: 5px;
		margin-top: 0;
		margin-right: 5px;
		font-size: 12px;
	}

	/* 日付 */
	#mini-calendar td .calendar-day-number {
		font-weight: normal;
		padding: 7px;
		font-size: 18px;
		display: block;
		background: #f2e6cd;
		margin-bottom: 0;
		width: 75px;
		height: auto;
	}
	#mini-calendar td.calendar-holiday .calendar-day-number,
	#mini-calendar td.calendar-sun .calendar-day-number {
		background: #f8c7c7;
	}

	#mini-calendar td.calendar-sat .calendar-day-number {
		background: #c8ebfe;
	}

	/* モバイル用曜日を追加 */
	#mini-calendar td i:after {
		font-size: 12px;
		position: relative;
		left: -5px;
	}
	#mini-calendar td:nth-child(1) i:after {
		content: "（日）";
	}
	#mini-calendar td:nth-child(2) i:after {
		content: "（月）";
	}
	#mini-calendar td:nth-child(3) i:after {
		content: "（火）";
	}
	#mini-calendar td:nth-child(4) i:after {
		content: "（水）";
	}
	#mini-calendar td:nth-child(5) i:after {
		content: "（木）";
	}
	#mini-calendar td:nth-child(6) i:after {
		content: "（金）";
	}
	#mini-calendar td:nth-child(7) i:after {
		content: "（土）";
	}
}