@charset "UTF-8";

/*--------------------------
* kv
*--------------------------*/
.kv__img {
	width: 100vw;
	aspect-ratio: 1/1;
	object-fit: cover;
}
.kv .slick-prev,
.kv .slick-next {
	display: flex;
	align-items: center;
	justify-content: center;
}
.kv .slick-prev {
	left: 2.667vw;
	z-index: 1;
}
.kv .slick-next {
	left: auto;
	right: 3.2vw;
	z-index: 1;
}
.kv .slick-prev:before,
.kv .slick-next:before {
	position: absolute;
	content: "";
	display: block;
	width: 6.667vw;
	height: 6.667vw;
	background: rgba(0,0,0,0.8);
	border-radius: 50%;
	z-index: -1;
}
.kv .slick-prev:after,
.kv .slick-next:after {
	font-family: var(--font-awesome);
	font-weight: 600;
	font-size: 14px;
	line-height: 1;
	color: white;
}
.kv .slick-prev:after {
	content: "\f053";
}
.kv .slick-next:after {
	content: "\f054";
}
.kv .slick-dots li.slick-active button:before {
	color: var(--main-color);
}
.kv .slick-dotted.slick-slider {
	margin-bottom: 10.667vw;
}

/*--------------------------
* nav
*--------------------------*/
.topNav {
	margin-top: 4vw;
}
.topNav__items {
	display: flex;
	padding: 0 1.333vw;
	gap: 2.667vw;
}
.topNav__item {
	width: calc((100% - 8vw) / 4);
	height: 24.123vw;
	background: black;
	border-radius: 5px;
	border: 1px solid #c8c8c8;
	background: linear-gradient(to right bottom, #ffffff, #f4f1ec, #ffffff);
}
.topNav__link {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	width: 100%;
	height: 100%;
	text-decoration: none;
	font-size: 3.733vw;
	font-family: var(--font-notoserif);
	font-weight: 700;
	color: var(--main-color_dark);
}
.topNav__link:before {
	content: "";
	display: block;
	background-size: cover;
}
.topNav__link--newface:before {
	width: 13.8667vw;
	height: 13.8667vw;
	background-image: url('../img/top/icon_newface.png');
}
.topNav__link--system:before {
	width: 13.8667vw;
	height: 13.8667vw;
	background-image: url('../img/top/icon_system.png');
}
.topNav__link--girlslist:before {
	width: 15.0667vw;
	height: 14.6667vw;
	margin-left: 2vw;
	background-image: url('../img/top/icon_girlslist.png');
}
.topNav__link--ranking:before {
	width: 15.3333vw;
	height: 13.4667vw;
	background-image: url('../img/top/icon_rank.png');
}
.topNav__text {
	font-size: 3.733vw;
}

/*--------------------------
* changeFontSize
*--------------------------*/
.changeFontSize {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	padding: 4vw 1.333vw 4vw 0;
}
.changeFontSize__items {
	display: flex;
	align-items: flex-end;
	gap: 1.333vw;
}
.changeFontSize__btn {
	all: unset;
	background: #ccc;
	font-weight: bold;
	border-radius: 4px;
	padding: 1.333vw;
}
.changeFontSize__btn.active {
	color: white;
	background: var(--main-color);
}
.changeFontSize__item:first-child .changeFontSize__btn {
	font-size: 3.2vw;
}
.changeFontSize__item:nth-child(2) .changeFontSize__btn {
	font-size: 3.733vw;
}
.changeFontSize__item:nth-child(3) .changeFontSize__btn {
	font-size: 4.267vw;
}
.changeFontSize__text {
	margin-right: 2.667vw;
	font-size: 3.733vw;
	color: var(--text-color);
}

/*--------------------------
* schedule
*--------------------------*/
.schedule {
	margin-bottom: 5.333vw;
}
.schedule__tab {
	margin-bottom: 2.667vw;
}
.schedule__tab__items {
	display: flex;
	gap: 2.667vw;
	padding: 1.333vw;
	border-bottom: 1px solid var(--main-color);
	overflow-x: auto;
}
.schedule__tab__item {
	width: calc(100% / 4);
	border: 1px solid var(--main-color);
	border-radius: 5px;
	background: linear-gradient(var(--main-color07) , var(--main-color));
}
.schedule__tab__link {
	display: flex;
	align-items: center;
	justify-content: center;
	padding-inline: 3vw;
	text-decoration: none;
	font-size: 3.2vw;
	line-height: 1.2;
	text-align: center;
	color: white;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, .4);
	white-space: nowrap;
}
.schedule__girls__items {
	display: flex;
	flex-wrap: wrap;
	gap: 1.3335vw;
	margin-bottom: 12vw;
	padding: 0 3.25vw;
	max-height: 380vw;
	transition: max-height 0.5s cubic-bezier(0, 1, 0, 1);
	overflow: hidden;
}
.schedule__girls__items.active {
	max-height: 9999px;
	transition: max-height 1s ease-in-out;
}
.schedule__girls__item {
	width: calc((100% - 2.667vw) / 2);
}
.schedule__girls__tmb {
	position: relative;
	margin-bottom: 1.333vw;
	aspect-ratio: 3/4;
	overflow: hidden;
}
.schedule__girls__tmb__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.schedule__girls__link {
	text-decoration: none;
}
.scheudle__girls__name {
	margin-bottom: 0.533vw;
	text-align: center;
	color: var(--text-color);
	font-size: 3.2vw;
	font-weight: bold;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
}
.scheudle__girls__size {
	margin-bottom: 0.533vw;
	font-size: 3.2vw;
	color: var(--text-color);
	text-align: center;
}
.scheudle__girls__worktime {
	font-size: 3.2vw;
	text-align: center;
}
.scheudle__girls__worktime {
	margin: 0 1vw;
	padding: 1.067vw 0;
	color: white;
	background: var(--main-color_dark);
	border-radius: 25px;
}
.schedule__girls__flg {
	position: absolute;
	top: 2.667vw;
	left: -17.6vw;
	padding: 0.533vw 0;
	font-size: 3.2vw;
	font-weight: bold;
	text-align: center;
	color: white;
	background: var(--main-color_dark);
	transform: rotate(320deg);
	width: 100%;
}
.schedule__girls__diamond {
	position: absolute;
	bottom: 1.333vw;
	right: 1.333vw;
}
.schedule__girls__diamond__icon {
	width: 12.267vw;
	height: 13.067vw;
}
.schedule__more {
	margin-top: 5.333vw;
}
.schedule__notFound {
	text-align: center;
	padding: 10.667vw 0;
	font-size: 3.733vw;
}
.moreBtn {
	text-align: center;
}
.moreBtn__link {
	display: inline-block;
	width: 60vw;
	padding: 3vw;
	font-size: 3.2vw;
	color: white;
	background: var(--main-color_dark);
	text-decoration: none;
	text-align: center;
	border-radius: 4px;
}
.moreBtn__link:after {
	padding-left: 2.667vw;
	content: "\f054";
	font-family: var(--font-awesome);
	font-weight: 600;
}
.openBtn {
	text-align: center;
} 
.openBtn__link {
	all: unset;
	width: 60vw;
	padding: 3vw;
	text-align: center;
	color: white;
	font-size: 3.2vw;
	background: var(--main-color);
	box-sizing: border-box;
	border-radius: 4px;
}
.groupBnr {
	margin-bottom: 5.333vw;
	padding: 0 1.333vw;
}
.groupBnr__items {
	display: flex;
	gap: 1.333vw;
}
.groupBnr__img {
	width: 100%;
}
.groupBnr__item:first-child .groupBnr__text {
	color: #ff0038;
}
.groupBnr__item:last-child .groupBnr__text {
	color: #b48f48;
}
.groupBnr__link {
	text-decoration: none;
}
.groupBnr__img {
	display: block;
	margin-bottom: 1.333vw;
}
.groupBnr__text {
	font-size: 3.2vw;
	text-align: center;
}

/*--------------------------
* blog
*--------------------------*/
.blog {
	margin-bottom: 5.333vw;
}
.blog .blog__items {
	display: flex;
	overflow-x: scroll;
	margin-bottom: 5.333vw;
	gap: 1.333vw;
}
.blog .blog__contents {
	background: var(--main-color005);
	margin: 1.333vw;
	padding: 2.667vw 0 2.667vw 2.667vw;
}
.blog .blog__item {
	width: 29.333vw;
	min-width: 29.333vw;
	background: white;
	border: 1px solid #ccc;
}
.blog .blog__link {
	display: block;
	padding: 1.333vw;
	text-decoration: none;
}
.blog .blog__title,
.blog .blog__info__name {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
}
.blog .blog__info__name {
	font-size: 2.5vw;
	text-align: center;
	margin-bottom: 0.33vw;
}
.blog .blog__info__publish {
	font-size: 2.5vw;
	text-align: center;
}
.blog .blog__tmb {
	position: relative;
	aspect-ratio: 87/103;
}
.blog .blog__tmb__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top;
}
.blog .blog__title {
	margin-bottom: 1.333vw;
	font-size: 3.0vw;
	color: var(--secondary-color);
	text-align: center;
}
.blog .blog__info {
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	background: rgba(0,0,0,0.5);
	color: white;
	word-break: break-all;
	padding: 0.533vw;
	line-height: 1.2;
}
.blog .blog__more {
}


/*--------------------------
* news
*--------------------------*/
.news__btn {
	all: unset;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 11.2vw;
	padding: 0 2.667vw;
	font-size: 3.4667vw;
	font-weight: bold;
	color: var(--secondary-color);
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	background: linear-gradient( #fefefe,#f2f2f2 );
	box-sizing: border-box;
	cursor: pointer;
}
.news__btn:after {
	content: "";
	display: block;
	width: 6.667vw;
	height: 6.667vw;
	border-radius: 50%;
	background: var(--main-color_dark);
}
.news__btn:before {
	position: absolute;
	right: 4.267vw;
	content: "\f078";
	font-family: var(--font-awesome);
	font-weight: 600;
	color: white;
}
.news__btn--open:before {
	content: "\f077";
}
.news__btn--text {
	width: 84vw;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.news__tmb {
	width: 100%;
	margin-bottom: 5.333vw;
}
.news__tmb__img {
	width: 100%;
}
.news__contents {
	display: none;
	padding: 2.667vw 2.667vw 5.333vw;
}
.news .news__item:nth-child(-n+2) .news__contents {
	display: block;
}
.news__contents.active {
	display: block;
}
.news__text {
	margin-bottom: 5.333vw;
	color: var(--text-color);
	font-size: 3.4667vw;
	line-height: 1.2;
}

/*--------------------------
* movie
*--------------------------*/
.movie {
	margin-bottom: 5.333vw;
}
.movie .movie__items {
	display: flex;
	padding: 1.333vw;
	gap: 1.333vw;
	overflow-x: scroll;
}
.movie .movie__item {
	min-width: 70.667vw;
}
.movie .movie__tmb {
	display: block;
	aspect-ratio: 16/9;
	margin-bottom: 2.667vw;
}
.movie .movie__tmb__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.movie .movie__link {
	text-decoration: none;
}
.movie .movie__name {
	font-size: 3.2vw;
	color: var(--main-color_dark);
}
.movie .movie__last {
	display: flex;
	align-items: center;
	justify-content: center;
}
.movie .movie__last__more {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24.5333vw;
	height: 26.1333vw;
	color: #ffffff;
	background: var(--main-color_dark);
	text-align: center;
	text-decoration: none;
	border-radius: 5px;
	line-height: 1.2;
}

/*--------------------------
* font
*--------------------------*/
.js_font__small .schedule__tab__link {
	font-size: 2.933vw;
}
.js_font__small .scheudle__girls__name {
	font-size: 2.933vw;
}
.js_font__small .scheudle__girls__size {
	font-size: 2.933vw;
}
.js_font__small .scheudle__girls__worktime {
	font-size: 2.933vw;
}
.js_font__small .moreBtn__link {
	font-size: 2.933vw;
}
.js_font__small .groupBnr__text {
	font-size: 2.933vw;
}
.js_font__small .blog__title {
	font-size: 2.933vw;
}
.js_font__small .blog__info__name {
	font-size: 2.933vw;
}
.js_font__small .blog__info__publish {
	font-size: 2.933vw;
}
.js_font__small .news__btn--text {
	font-size: 3.2vw;
}
.js_font__small .news__text {
	font-size: 3.2vw;
}
.js_font__small .blog__more {
	font-size: 3.2vw;
}
.js_font__small .movie__name {
	font-size: 3.2vw;
}

.js_font__big .schedule__tab__link {
	font-size: 3.467vw;
}
.js_font__big .scheudle__girls__name {
	font-size: 3.733vw;
}
.js_font__big .scheudle__girls__size {
	font-size: 3.733vw;
}
.js_font__big .scheudle__girls__worktime {
	font-size: 3.733vw;
}
.js_font__big .moreBtn__link {
	font-size: 3.733vw;
}
.js_font__big .groupBnr__text {
	font-size: 3.733vw;
}
.js_font__big .blog__title {
	font-size: 3.733vw;
}
.js_font__big .blog__info__name {
	font-size: 3.733vw;
}
.js_font__big .blog__info__publish {
	font-size: 3.733vw;
}
.js_font__big .news__btn--text {
	font-size: 3.733vw;
}
.js_font__big .news__text {
	font-size: 3.733vw;
}
.js_font__big .blog__more {
	font-size: 3.733vw;
}
.js_font__big .movie__name {
	font-size: 3.733vw;
}