@CHARSET "UTF-8";

.clear:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	line-height: 0;
	visibility: hidden;
}

.m-t-0 {
	margin-top: 0 !important;
}

.m-t-5 {
	margin-top: 5px;
}

.m-t-10 {
	margin-top: 10px;
}

.m-t-15 {
	margin-top: 15px;
}

.m-t-20 {
	margin-top: 20px;
}

.m-t-25 {
	margin-top: 25px;
}

.m-t-30 {
	margin-top: 30px;
}

.m-t-35 {
	margin-top: 35px;
}

.m-t-40 {
	margin-top: 40px;
}

.m-t-45 {
	margin-top: 45px;
}

.m-t-50 {
	margin-top: 50px;
}

.m-t-55 {
	margin-top: 55px;
}

.m-t-60 {
	margin-top: 60px;
}

.m-t-65 {
	margin-top: 65px;
}

.m-t-70 {
	margin-top: 70px;
}

.m-t-75 {
	margin-top: 75px;
}

.m-t-80 {
	margin-top: 80px;
}

.m-b-0 {
	margin-bottom: 0 !important;
}

.m-b-5 {
	margin-bottom: 5px;
}

.m-b-10 {
	margin-bottom: 10px;
}

.m-b-15 {
	margin-bottom: 15px;
}

.m-b-20 {
	margin-bottom: 20px;
}

.m-b-25 {
	margin-bottom: 25px;
}

.m-b-30 {
	margin-bottom: 30px;
}

.m-b-35 {
	margin-bottom: 35px;
}

.m-b-40 {
	margin-bottom: 40px;
}

.m-b-45 {
	margin-bottom: 45px;
}

.m-b-50 {
	margin-bottom: 50px;
}

.m-b-55 {
	margin-bottom: 55px;
}

.m-b-60 {
	margin-bottom: 60px;
}

.m-b-65 {
	margin-bottom: 65px;
}

.m-b-70 {
	margin-bottom: 70px;
}

.m-b-75 {
	margin-bottom: 75px;
}

.m-b-80 {
	margin-bottom: 80px;
}

.m-l-0 {
	margin-left: 0 !important;
}

.m-l-5 {
	margin-left: 5px;
}

.m-l-10 {
	margin-left: 10px;
}

.m-l-15 {
	margin-left: 15px;
}

.m-l-20 {
	margin-left: 20px;
}

.m-l-25 {
	margin-left: 25px;
}

.m-l-30 {
	margin-left: 30px;
}

.m-l-35 {
	margin-left: 35px;
}

.m-l-40 {
	margin-left: 40px;
}

.m-l-45 {
	margin-left: 45px;
}

.m-l-50 {
	margin-left: 50px;
}

.m-l-100 {
	margin-left: 100px;
}

.m-r-0 {
	margin-right: 0 !important;
}

.m-r-5 {
	margin-right: 5px;
}

.m-r-10 {
	margin-right: 10px;
}

.m-r-15 {
	margin-right: 15px;
}

.m-r-20 {
	margin-right: 20px;
}

.m-r-25 {
	margin-right: 25px;
}

.m-r-30 {
	margin-right: 30px;
}

.m-r-35 {
	margin-right: 35px;
}

.m-r-40 {
	margin-right: 40px;
}

.m-r-45 {
	margin-right: 45px;
}

.m-r-50 {
	margin-right: 50px;
}

.m-r-100 {
	margin-right: 100px;
}

.m-l-auto {
	margin-left: auto;
}

.m-r-auto {
	margin-right: auto;
}

.m-t-auto {
	margin-top: auto;
}

.m-b-auto {
	margin-bottom: auto;
}

.m-0 {
	margin: 0 !important;
}

.p-0 {
	padding: 0 !important;
}

.p-l-0 {
	padding-left: 0 !important;
}

.p-r-0 {
	padding-right: 0 !important;
}

.p-t-0 {
	padding-top: 0 !important;
}

.p-b-0 {
	padding-bottom: 0 !important;
}

.w-p-100 {
	width: 100%;
}

.w-p-95 {
	width: 95%;
}

.w-p-90 {
	width: 90%;
}

.w-p-85 {
	width: 85%;
}

.w-p-80 {
	width: 80%;
}

.w-p-75 {
	width: 75%;
}

.w-p-70 {
	width: 70%;
}

.w-p-65 {
	width: 65%;
}

.w-p-60 {
	width: 60%;
}

.w-p-55 {
	width: 55%;
}

.w-p-50 {
	width: 50%;
}

.w-p-45 {
	width: 45%;
}

.w-p-40 {
	width: 40%;
}

.w-p-35 {
	width: 35%;
}

.w-p-30 {
	width: 30%;
}

.w-p-25 {
	width: 25%;
}

.w-p-20 {
	width: 20%;
}

.w-p-15 {
	width: 15%;
}

.w-p-10 {
	width: 10%;
}

.w-p-5 {
	width: 5%;
}

.mw-p-100 {
	max-width: 100%;
}

.mw-p-95 {
	max-width: 95%;
}

.mw-p-90 {
	max-width: 90%;
}

.mw-p-85 {
	max-width: 85%;
}

.mw-p-80 {
	max-width: 80%;
}

.mw-p-75 {
	max-width: 75%;
}

.mw-p-70 {
	max-width: 70%;
}

.mw-p-65 {
	max-width: 65%;
}

.mw-p-60 {
	max-width: 60%;
}

.mw-p-55 {
	max-width: 55%;
}

.mw-p-50 {
	max-width: 50%;
}

.mw-p-45 {
	max-width: 45%;
}

.mw-p-40 {
	max-width: 40%;
}

.mw-p-35 {
	max-width: 35%;
}

.mw-p-30 {
	max-width: 30%;
}

.mw-p-25 {
	max-width: 25%;
}

.mw-p-20 {
	max-width: 20%;
}

.mw-p-15 {
	max-width: 15%;
}

.mw-p-10 {
	max-width: 10%;
}

.mw-p-5 {
	max-width: 5%;
}

.h-p-100 {
	height: 100%;
}

.h-p-95 {
	height: 95%;
}

.h-p-90 {
	height: 90%;
}

.h-p-50 {
	height: 50%;
}

.v-a-t {
	vertical-align: top;
}

.v-a-m {
	vertical-align: middle;
}

.v-a-b {
	vertical-align: bottom;
}

.v-a-tb {
	vertical-align: text-bottom;
}

.p-0 {
	padding: 0 !important;
}

.p-t-0 {
	padding-top: 0 !important;
}

.p-b-0 {
	padding-bottom: 0 !important;
}

.p-l-0 {
	padding-left: 0 !important;
}

.p-r-0 {
	padding-right: 0 !important;
}

.flex {
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}

.flex-wrap {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.flex.center {
	-webkit-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
}

.flex.left {
	-webkit-justify-content: flex-start;
	-ms-justify-content: flex-start;
	justify-content: flex-start;
}

.flex.right {
	-webkit-justify-content: flex-end;
	-ms-justify-content: flex-end;
	justify-content: flex-end;
}

.flex.space-between {
	-webkit-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
}

.flex.space-around {
	-webkit-justify-content: space-around;
	-ms-justify-content: space-around;
	justify-content: space-around;
}

.flex.top {
	-webkit-align-items: flex-start;
	-ms-align-items: flex-start;
	align-items: flex-start;
}

.flex.middle {
	-webkit-align-items: center;
	-ms-align-items: center;
	align-items: center;
}

.flex.bottom {
	-webkit-align-items: flex-end;
	-ms-align-items: flex-end;
	align-items: flex-end;
}

.flex.baseline {
	-webkit-align-items: baseline;
	-ms-align-items: baseline;
	align-items: baseline;
}

.flex.column {
	flex-direction: column;
}

.flex.row {
	flex-direction: row;
}

a {
	color: inherit;
	text-decoration: none;
}

a.text {
	text-decoration: underline;
}

a.hover {
	transition: all 0.3s;
}

a.hover:hover {
	opacity: 0.8;
}

.align-center {
	text-align: center;
}

.align-left {
	text-align: left;
}

.align-right {
	text-align: right;
}

.italic {
	font-style: italic;
}

.bold {
	font-weight: bold;
}

.inline {
	display: inline;
}

.block {
	display: block;
}

.inline-block {
	display: inline-block;
}

input[type="checkbox"].trigger {
	display: none;
}

.border-bottom {
	border-bottom: 1px solid #a0a0a0;
}

.br {
	display: block;
}

.pc-only {

}

.md-only {
	display: none;
}

.sp-only {
	display: none;
}

button {
	cursor: pointer;
}

button.style-reset {
	border: none;
	background: none;
	box-shadow: none;
	padding: 0;
}

html, body, #wrapper {
	width: 100%;
	max-width: 1920px;
	min-width: 1440px;
	margin-left: auto;
	margin-right: auto;
}

html {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 62.5%;
	background-color: #fff;
	box-sizing: border-box;
	word-break: break-all;
}

*, *::before, *::after {
	box-sizing: inherit;
	word-break: inherit;
}

.maru-text {
	font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO";
	font-weight: bold;
}

.section {
	padding-top: 50px;
	padding-bottom: 50px;
}

.container {
	margin: 0 auto;
	max-width: 1440px;
}

.section .container .contents {
	margin: 50px auto 0;
}

.section .container .contents .contents-inner {
	width: 1200px;
	margin: 30px auto 0;
	padding: 30px;
	border-radius: 20px;
}

.section .container .contents .contents-inner-full {
	width: 100%;
	margin: 30px auto 0;
}

.contents-bg {
	padding: 20px;
	border: 2px solid #ff488a;
	border-radius: 20px;
	background: #fff;
}

.contents-bg .contents-bg-inner {
	background: url("../img/base/content_bg.png");
	border-radius: 20px;
	padding-top: 30px;
	padding-bottom: 30px;
}

.bg-pink {
	background-image: url("../img/base/bg1.png"), url("../img/base/bg_pink.png");
	background-position: center top;
}

.bg-green {
	background-image: url("../img/base/bg2.png"), url("../img/base/bg_green.png");
	background-position: center top;
}

.bg-yellow {
	background-image: url("../img/base/bg1.png"), url("../img/base/bg_yellow.png");
	background-position: center top;
}

.section .container h2.title {
	margin: 0 auto;
	text-align: center;
}

.section .container h3.title {
	margin: 0 auto;
	text-align: center;
}

.section .container h4.title {
	margin: 0 auto;
	text-align: center;
}

/****header****/
#header .header-bg {
	background-image: url("../img/base/menu_bg.png");
	box-shadow: 0px 3px 3px 0px rgba(4, 0, 0, 0.35);
	position: relative;
	background-position: center top;
}

#header .header-bg .header-top-bg {
	background-image: url("../img/base/header_bg.png");
	background-position: center top;
	background-repeat: repeat-x;
	padding-top: 10px;
	height: 160px
}

#header .header-bg .header-top-bg .header-cont {
	padding: 0 20px;
}

#header .header-bg .header-top-bg .logo {
	background-image: url("../img/base/header_logo_bg.png");
	background-size: 100% 100%;
	background-repeat: no-repeat;
}

#header .pc-menu .container .menu-list {
	padding-top: 10px;
	padding-bottom: 20px;
}

/****footer****/

/**footer-menu**/
#footer .footer-menu-bg {
	background: url("../img/base/menu_bg.png");
}

#footer .footer-menu-bg .container .contents .menu-list .item {
	width: 48%;
	margin: 1%;
}

/**footer**/
#footer .footer-bg {
	background: url("../img/base/footer_bg.png") center top;
	padding-top: 30px;
	padding-bottom: 10px;
	line-height: 2;
	box-shadow: 0px -3px 3px 0px rgba(4, 0, 0, 0.35);
}

#footer .footer-bg .footer-logo, #footer .footer-bg .info {
	margin: 0 20px;
}

#footer .footer-bg .caution {
	font-size: 14px;
}

#footer .footer-bg .copy {
	font-size: 12px;
}

#footer .footer-bg .footer-menu {
	font-size: 14px;
}

#footer .footer-bg .footer-menu .item::after {
	content: " | ";
	margin-right: 6px;
}

#footer .footer-bg .footer-menu .item:last-child::after {
	content: "";
}

/****cast****/
.cast-list .cast {
	margin: 10px 1% 10px;
	width: 18%;
	padding: 15px;
	background-image: url("../img/top/schedule_girl_bg.png");
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.cast-list .cast .time-wrap .time {
	padding: 5%;
	font-size: 24px;
	font-weight: bold;
	background-image: url("../img/top/schedule_girl_time_bg.png");
	background-repeat: no-repeat;
	background-size: 100% 100%;
	color: #fff;
}

.cast-list .cast .photo {
	width: 80%;
	margin: 20px auto;
}

.cast-list .cast .photo img {
	box-shadow: 5px 5px 0px 0px rgba(1, 1, 1, 0.2);
	border: 4px solid #fff;
}

.cast-list .cast .profile {
	background-image: url("../img/top/schedule_girl_name_bg.png");
	background-size: 100% 100%;
	background-repeat: no-repeat;
	margin: 10px auto 0;
	padding: 16px;
}

.cast-list .cast .profile .name {
	font-size: 24px;
	font-weight: bold;
	color: #ff367f;
}

.cast-list .cast .profile .size {
	font-size: 18px;
	margin-top: 10px;
}

.page {
	min-height: 500px;
}
/****page-index****/
.page-index .main-bg {
	background-image: url("../img/index/main_bg.jpg");
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
	height: 920px;
	padding: 70px 0;
}

.page-index .main-bg .contents {
	width: 1000px;
	margin: 0 auto;
}

.page-index .main-bg .logo .logo-bg {
	background: url("../img/index/main_logo_bg.png") left top/cover no-repeat;
	width: 515px;
	height: 187px;
	margin: 0 auto;
}

.page-index .main-bg  .contents .mens-cont {
	position: relative;
	min-height: 200px;
	margin-top: 20px;
}

.page-index .main-bg  .contents .mens-cont .mens-enter {
	position: absolute;
	max-width: 210px;
	width: 100%;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
}

.page-index .main-bg  .contents .mens-cont .exit {
	position: absolute;
	top: 100px;
	right: 270px;
}

.page-index .main-bg  .contents .attention {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.5;
}

.page-index .main-bg  .contents .attention .attention-icon {
	width: 6%;
	margin: 0 auto;
}

.page-index .main-bg  .contents .girls-cont {
	margin-top: 10px;
}

.page-index .main-bg  .contents .girls-cont .girls-enter, .page-index .main-bg  .contents .girls-cont .girls-entry {
	margin: 0 30px;
}

/****page-top****/
.page-top .pickup .container .contents {
	width: 500px;
	padding-top: 20px;
	padding-bottom: 30px;
	border: 10px solid #fff;
	box-shadow: 0 0 0 2px #ff367f;
	border-radius: 20px;
	background-image: url("../img/top/pickup_girl_bg2.png"), url("../img/top/pickup_girl_bg1.png");
}

.pickup .profile {
	width: 450px;
	height: 100px;
	margin: 0 auto;
	background-image: url("../img/top/pickup_name_bg.png");
	background-repeat: no-repeat;
	background-size: 100% 100%;
	padding: 22px;
}

.page-top .pickup .photo {
	position: relative;
	background-image: url("../img/top/pickup_girl_bg3.png");
	background-repeat: no-repeat;
	background-size: 100% 100%;
	width: 271px;
	height: 340px;
	margin: 30px auto;
}

.page-top .pickup .photo::after {
	position: absolute;
	top: -20px;
	content: '';
	background: url("../img/top/pickup_girl_ov.png") center top/100% 100% no-repeat;
	width: 120%;
	height: 120%;
	pointer-events: none;
}

.page-top .pickup .photo .inner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	width: 80%;
}

.page-top .pickup .photo img {
	box-shadow: 5px 5px 0px 0px rgba(1, 1, 1, 0.2);
	border: 4px solid #fff;
}

.page-top .pickup .profile .name {
	font-size: 24px;
	font-weight: bold;
	color: #ff367f;
}

.page-top .pickup .profile .size {
	font-size: 18px;
	margin-top: 10px;
}

/****page-schedule****/
.page-schedule .date {
	margin-bottom: 30px;
}

.page-schedule .date-list .item {
	width: calc(100%/ 7 - 1%);
	height: 47px;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	color: #ff367f;
}

.page-schedule .date-list .item a {
	width: 100%;
	height: 100%;
	margin-top: -2px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.page-schedule .date-list .item {
	background-image: url("../img/schedule/date_bg_off.png");
	background-size: 100% 100%;
}

.page-schedule .date-list .item.on {
	background-image: url("../img/schedule/date_bg_on.png");
	background-size: 100% 100%;
	color: #fff;
}

.page-schedule .message {
	font-size: 18px;
	padding: 30px;
	background: #fff;
	border-radius: 30px;
	box-shadow: 0px 3px 3px 0px rgba(4, 0, 0, 0.35);
}
/****system****/
.page-system .course {
	font-size: 18px;
	text-align: center;
	line-height: 1.5;
	font-weight: bold;
}

.page-system .course .contents-inner .text {
	margin-top: 20px;
}

.page-system .course .contents-inner .price-list {
	margin-top: 30px;
}

.page-system .course .contents-inner .price-list .item {
	width: 31%;
	height: 50px;
	padding: 0 30px;
	border-radius: 25px;
	background-color: #fff;
}

.page-system .course .contents-inner .price-list .item .value {
	text-align: right;
}

.page-system .course .contents-inner .price-list .item .l-text {
	font-size: 30px;
}

.page-system .course .contents-inner .price-list .item .s-text {
	font-size: 18px;
}

/**course-1**/
.page-system .course .course-1 {
	background: url("../img/system/course1_bg.png");
	border: 2px solid #ff488a;
}

.page-system .course .course-1 .item {
	border: 2px solid #ff488a;
}

.page-system .course .course-1 .value {
	color: #ff367f;
}

/**course-2**/
.page-system .course .course-2 {
	background: url("../img/system/course2_bg.png");
	border: 2px solid #07b7f1;
}

.page-system .course .course-2 .item {
	border: 2px solid #07b7f1;
}

.page-system .course .course-2 .value {
	color: #07b7f1;
}

/**course-3**/
.page-system .course .course-3 {
	background: url("../img/system/course3_bg.png");
	border: 2px solid #1aaf4b;
}

.page-system .course .course-3 .item {
	border: 2px solid #1aaf4b;
}

.page-system .course .course-3 .value {
	color: #1aaf4b;
}

/**other**/
.page-system .other-inner {
	text-align: left;
	border: 2px solid #ff488a;
	border-radius: 20px;
	background: #fff;
}

.page-system .other-inner .text {
	font-size: 18px;
	line-height: 1.5;
}

.page-system .other-inner .text .l-text {
	color: #ff005d;
	font-size: 24px;
}

.page-system .other-inner .caution-list {
	font-size: 18px;
	line-height: 2;
}

.page-system .other-inner .caution-list .item::before {
	content: "";
	display: block;
	width: 23px;
	height: 20px;
	margin-right: 10px;
	background-image: url("../img/system/credit_caution_icon.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top left;
}

/****link****/
.page-link .linkbanner .text {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.5;
}

.link-text {
	color: #0042ff;
	text-decoration: underline;
}

.page-link .linkbanner .banner-list .item {
	margin: 0 30px;
}

.page-link .recmmend-linkbanner .banner-list .item {
	margin: 0 10px;
}

.page-link .banner-list {
	margin-top: 30px;
}

/****contact****/
button.style-reset {
	border: none;
	background: 0 0;
	box-shadow: none;
}

.page-contact .text {
	font-size: 18px;
	line-height: 1.5;
}

.page-contact .table-cont {
	width: 900px;
	margin: 0 auto;
}

.page-contact .table-cont .form-list .item {
	vertical-align: top;
}

.page-contact .table-cont .form-list .label, .page-contact .table-cont .form-list .value {
	text-align: left;
	border: 1px solid #ff488a;
	vertical-align: middle;
}

.page-contact .table-cont .form-list .label {
	width: 35%;
	padding: 25px;
	font-size: 18px;
	font-weight: bold;
	text-align: left;
	white-space: nowrap;
	background: #ffe1ec;
	vertical-align: middle;
}

.page-contact .table-cont .form-list .value {
	width: 65%;
	padding: 15px;
	font-size: 18px;
	line-height: 1.5;
	background: #fff;
}

.page-contact .table-cont .form-list input, .page-contact .table-cont .form-list select {
	padding: 2px;
	min-height: 40px;
	font-size: 18px;
}

.page-contact .table-cont .form-list textarea {
	padding: 2px;
}

.page-contact .table-cont .form-list input, .page-contact .table-cont .form-list select, .page-contact .table-cont .form-list textarea {
	border: 1px solid #ff488a;
	font-size: 18px
}

.page-contact button {
	margin: 0 30px;
}

.page-contact .table-cont .form-list .label::before {
	content: "";
	display: inline-block;
	width: 31px;
	height: 30px;
	margin-right: 10px;
	background-image: url("../img/contact/form_icon.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top left;
	vertical-align: middle;
}