/* Extra small devices (phones, less than 768px) */
/* No media query since this is the default in Bootstrap */
body{
    font-family:"Crimson Text", serif;
    color:#fff;
    background:url("http://kings-room.com/wp-content/uploads/2025/11/PC04.jpg");
	background-attachment:fixed;
}
body a{
	color: #fff;
}
body a:hover{
    color: #fff;
    text-decoration: none;
}
h1,h2,h3,h4,h5{

    font-weight: 300;
}
span.sub_title {
    color: #9c8a72;
}

/*img {
    max-width: 100%;
    height: auto;
}*/
/*--
link
---------------------------------------*/
#top #section-page {
	padding: 0 0 4em;
}

.links {
	padding: 0;
    margin: 0 auto;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.links-wrap {
    width: 100%;
    margin: 0 auto 10%;
    height: auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

.link {
    width: calc(48% - 8px);
    height: auto;
    margin: 0 auto 2%;
    text-align: center;
}

.link-img {
    width: 100%;
    margin-bottom: 4%;
}

.link-img img {
    width: auto;
    object-fit: cover;
}

.link_textarea {
    width: 100%;
}

.textarea {
    width: 80%;
    height: 92px;
    padding: 1%;
    margin: 0 auto;
}

.link-title {
    text-align: center;
    font-size: 3rem;
	font-weight: 600;
    margin-bottom: 8%;
}

.link-size {
    font-size: 1.7rem;
    text-align: center;
}


/*--
Partner shop
---------------------------------------*/
#top .partner-section {
	padding-top: 2em;
}

.partner-wrap {
	width: 88%;
	margin: 0 auto;
}

.partner-contents {
	width: 100%;
}

.partner-name {
	font-weight: 500;
	font-size: 2rem;
	line-height: 2;
	border-top: 1px solid #926f24;
	border-bottom: 1px solid #926f24;
	margin-bottom: 4%;
	padding-left: 2%;
}

.partner-contents_flex {
	display: flex;
	width: 100%;
	justify-content: space-between;
}

.partner-img {
	width: 38%;
	height: 100%;
}

.partner-table {
	width: 60%;
}

.partner-img img {
	width: 100%;
	height: 100%
}

.partner-table {
	border: 1px solid #926f24;
	background:rgba(0, 0, 0, 0.5);
}

.partner-tableTr {
	border-bottom: 1px solid #926f24;
}

.partner-tableTitle {
	padding: 2%;
	border-right: 1px solid #926f24;
	color: #ebba53;
	font-size: 1.2rem;
	width: 14%;
}

.partner-tableContent {
	padding: 2%;
	width: auto;
}

@media only screen and (max-width: 820px) {
.pc{
	display:none !important;
}
	
/*--
tb Partner shop
---------------------------------------*/
.partner-wrap {
	width: 100%;
}
}

@media only screen and (max-width: 426px) {
/*--
sp Partner shop
---------------------------------------*/
.partner-contents_flex {
	display: block;
}
	
.partner-img {
	width: 100%;
	margin-bottom: 4%;
}

.partner-table {
	width: 100%;
	margin-bottom: 10%;
}
	
.partner-tableTitle {
	width: 16%;
	font-size: 1rem;
}
}
@media only screen and (min-width: 768px) {
.sp{
	display:none !important;
}
}
.modal { 
    position:fixed; 
    display:none; 
    z-index:9999; 
    top:64%; 
    left:50%; 
    width:400px; 
    height:200px; 
    margin:-100px 0 0 -200px; 
    padding:20px; 
    text-align:center;
}
.modal p { 
    margin-bottom:20px; 
}
.modal a { 
    margin: 10px;
    padding: 5px 10px;
    cursor:pointer; 
    border: solid 1px #fff;
    border-radius: 3px;
	color:#fff;
}
.modal a:hover{
    background: #fff;
    color:#ebba53;
}
header{
    width: 100%;
    background: #000000;
}
@media only screen and (max-width: 767px) {
	header{
    position: fixed;
    z-index:999;
		top:0;
		background: rgba(0,0,0,0.9);
}
}
#logo{

    margin-top: 1em;
}
@media only screen and (max-width: 767px) {
#logo h1{
	margin-top:10px;
}
}
#logo img{
    width: 100%;
    max-width: 100px;
}

#book{
	 position: absolute;
    top: 20px;
    right: 60px;
    border:1px solid #fff;
    padding: 5px 15px;
    border-radius: 5px;
}
#pull{
    position: absolute;
    top:20px;
    right: 10px;
    width: 45px;
    height: 45px;
    line-height: 1em;
    text-align: center;
	color:#000;
}
#pull span{
    font-size: 0.7em;
	color:#fff;
}
#pull i{
    font-size: 2em;
	color:#fff;
}
nav{
    font-weight: 300;
    font-size: 1.4em;
}
nav ul{
    display: none;
}
nav li{
    border-top: solid 1px #ebba53;
}
nav a{
    display: block;
    padding: 0.3em;
}
nav .active a{
    border-bottom: 2px solid transparent;
    border-color: #ebba53;
    padding-bottom: 4px;
}
nav a:hover{
    border-bottom: 2px solid transparent;
    border-color: #ebba53;
    color: #ebba53;
    padding-bottom: 4px;
}
#kv{
	width: 100%;
    position: relative;

	overflow: hidden;
}
@media only screen and (min-width: 768px) {
	#kv{
		background:url("http://a.lili-style.com/wp-content/uploads/2023/09/kv-bg.jpg") no-repeat;
		background-size:cover;
		background-attachment:fixed;
	}
}
#kv img{
	width:100%;
}

#kv video {
    width: 50%;
    height: auto;
    margin: 0 auto;
    display: flex;
    justify-content: center;
}
@media only screen and (max-width: 767px) {
	#kv{
	
	}
#kv video{
	width:100vw;
	object-fit:cover;
}
}
#kv #catch{
    position: absolute;
    width: 100%;
    text-align: center;
    top:30%;
}
#kv #catch h1{
    font-size: 1em;
}
#kv #catch a{
    display: none;
}
.cycle-slideshow { 
    position: relative;
	display:flex;
	justify-content:center;
    z-index: -1;
}
.cycle-slideshow img {
	width: 100%;
}
.cycle-pager {
    text-align: center;
    position: absolute;
    margin-top: -60px;
	bottom:0;
	right:44%;
}

.cycle-pager span {
    display: inline-block;  
    width: 30px; 
    height: 30px; 
    font-family: arial; 
    font-size: 60px;
    color: #ffffff;
    cursor: pointer; 
}
.cycle-pager span.cycle-pager-active{
    color: #babac0;
}
.cycle-pager > * { 
    cursor: pointer;
}
#top section{
    padding: 8em 0;
}

.welcome-play-guide {
	background-image: url(https://casanova-soapland.com/wp-content/uploads/2024/07/play-guide-top-min.png);
	background-position: left bottom;
	background-size: cover;
}

#welcome {
	background-color: rgba(255,255,255,0.6);
	width: 100%;
	height: 100%;
}

@media only screen and (max-width: 767px) {
#welcome {
	margin-top:120px !important;
}
}
h2 {
	text-align: center;
	font-size: 1em;
}

.girl-profile {
	margin-bottom: 4%;
	line-height: 2;
}

h2 span {
	font-size: 2em;
}

.h2 {
	text-align: center;
}

.h2 span{
	text-align: center;
	text-shadow: 1px 1px 3px #45607b;
    font-size: 1.5em;
    margin-bottom: 0px;
	color: #fff;
}

#girls{
    padding-bottom: 0 !important;
}

#girls li{
    float: left;
    width: 33.3333333%;
    position: relative;
    overflow: hidden;
}

#girls li img{

    -webkit-transition: 0.3 ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
	
}

#girls li img:hover{
    opacity: 1.0;
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -o-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}

#girls .girl_info{
    display: none;
    width: 100%;
    position: absolute;
    text-align: center;
    font-size: 0.8em;
    background:rgba(255,255,255,1.0);
	bottom:50px;
	color:#000;
}
@media only screen and (max-width: 767px) {

	#girls .girl_info{
		display:block;
	}

	#girls .girl_info h3,
	#girls .girl_info p{
		margin:5px;
	}
}
.reservation{
	margin-top:10px;
}
.reservation a{
	background:#866629;
	color:#fff !important;
	margin:3px;
	padding:5px 0;
	width:100%;
	text-align:center;
	display:inline-block;
	transition: 0.5s;
}
.reservation a:hover {
	color: #fff;
	background: #ebba53;
}
#girls .girl_info h3{
    font-size: 1.5em;
}
@media only screen and (min-width: 768px) {
	#schedule{
		width:90%;
		margin:0 auto;
	}
}
#schedule{
    padding-bottom: 0 !important;
	color:#fff;
}
#schedule ul{
    margin-bottom: 0;
}
#schedule li{
    float: left;
    width: 33.3333333%;
    position: relative;
    overflow: hidden;
}
@media only screen and (max-width: 767px) {
	#schedule li{
    width: 45%;
		margin:2px;
}
}
#schedule li a{
	color:#fff;
}


#schedule .amd-list #active a
{
	font-size:25px;
	border-bottom:2px solid #b8860b;
}

#schedule .amd-list a {
  padding-bottom: 2px;
  position: relative;
}
#schedule .amd-list a::before {
  background: #9c8a72;
  content: '';
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  bottom: 0;
  margin: auto;
  transform-origin: center top;
  transform: scale(0, 1);
  transition: transform .3s;
}
#schedule .amd-list #active a::before{
	background:none;
}
#schedule .amd-list a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}
#schedule li img{
    width: 100%;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}
#schedule li img:hover{
    opacity: 1.0;
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -o-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}
#schedule .time{
    width: 100%;
    position: absolute;
    text-align: center;
    font-size: 0.8em;
    bottom: 0;
    background:rgba(0,0,0,0.6);
}
#schedule .time h3{
    font-size: 1.5em;
}
#schedule .amd-list{
		display:flex;
	justify-content:center;
}
#schedule .amd-list li{
    width: 10%;
    margin-bottom: 15px;
	display:flex;
	justify-content:center;
	font-size:18px;
	flex-wrap:wrap;

}
@media only screen and (max-width: 767px) {
	#schedule .amd-list li{
    font-size:12px;
		border:1px solid;
		width:40%;
		margin:2px;
		text-align:center;
	}
	#schedule .amd-list #active a
{
	font-size:12px;
	background-color: #866629;
	color:#fff;
	width:100%;

}
	
}
#schedule .am-grid ul{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}
#schedule .am-girl-name{
	margin-top:10px;
}
#schedule .girl_info p:last-child,
#schedule .am-schedule{
	background: none;
	padding: 3px 0;
}
#schedule .girl_info p:last-child::before,
#schedule .am-schedule::before{
	content:"Work time";
	background:#866629;
	color:#fff;
	padding:4px;
	margin-right:5px;
}

.index-play-guide {
	width: 40%;
	margin: 6% auto 0;
}
.index-play-guide img {
	width: 100%;
}

@media screen and (max-width: 428px){
#top .index-play-guide {
	width: 80%;
	margin: 6% auto 8%;
}
	
}

#reservation input{
    border: solid 2px #ffffff;
    background: none;
    border-radius: 5px;
    padding: 10px;
    color: #fafafa;
    height: 50px;
    width: 100%;
    margin: 1%;
}
#reservation select{
    border: solid 2px #ffffff;
    background: none;
    border-radius: 5px;
    padding: 10px;
    color: #fafafa;
    height: 50px;
    width: 100%;
    margin: 1%;
}
#reservation textarea{
    border: solid 2px #ffffff;
    background: none;
    border-radius: 5px;
    padding: 10px;
    color: #fafafa;
    width: 100%;
    min-height: 100px;
    margin: 1%;
}
#reservation button{
    border: solid 2px #ffffff;
    background: rgba(166,20,7,0.3);
    border-radius: 5px;
    padding: 10px;
    color: #fafafa;
    height: 50px;
    width: 100%;
    margin: 1%;
}
#reservation button:hover{
    background: rgba(166,20,7,0.9);
}
::-webkit-input-placeholder {
   color: #e1e1e1;
}
:-moz-placeholder { /* Firefox 18- */
   color: #e1e1e1;  
}
::-moz-placeholder {  /* Firefox 19+ */
   color: #e1e1e1;  
}
:-ms-input-placeholder {  
   color: #e1e1e1;  
}
#page-top{
    display:none;
    width:50px;
    height:50px;
    position:fixed;
    right:10px;
    bottom:10px;
    z-index: 9999;
    border-radius: 3px;
}
 
#page-top p{
    margin:0;
    padding:0;
    text-align:center;
    background:#3b3b3b;
    -webkit-transition:all 0.3s;
    -moz-transition:all 0.3s;
    transition:all 0.3s;
    border-radius: 3px;
}
 
#page-top p:hover{
    background:#8b8b8b;
    border-radius: 3px;
}
 
#move-page-top{
    color:#fff;
    line-height:50px;
    text-decoration:none;
    display:block;
    cursor:pointer;
}
header{
	background: linear-gradient(to bottom, #000, #292418, #000, #0a0a0a);
}
footer{
	background: #000;
	background-attachment:fixed;
	background-size:cover;
    width: 100%;
    padding: 2em 0 0;
}
footer .col1 li{
    margin-bottom: 0.5em;
}
footer .col1 a{
    display: block;
}
footer .col2 li{
    margin-bottom: 0.5em;
}
footer .col2 a{
    display: block;
}
footer p{
	color:#fff;
}
@media only screen and (max-width: 767px) {
	footer .col1,
	footer .col2{
		display:none;
	}
	footer #footer_logo {
    display:flex;
		justify-content:center;
		margin:50px 0;
}
	footer .footer-tel{
		text-align: center;
    padding: 10px 0;
    background-color: #866629;
		width:100%;
		display:inline-block;
	}
	footer .footer-tel a{
		color:#fff;
	}
}
footer #footer_logo img{
    max-width: 200px;
}
footer #footer_tel{
    font-family: 'Lato', sans-serif;
    font-size: 2em;
    font-style: italic;
    font-weight: 300;
    text-align: center;
}
footer #footer_tel span{
    font-size: 0.7em;
}
footer #copy{
    text-align: center;
    font-size: 0.7em;
}

/*--
Slide
---------------------------------------*/
#slideshow {
  width: 890px;
  margin: 0 auto;
	text-align:center;
}

/*#slideshow div {
  width: 810px;
  height: 520px;
  overflow: hidden;
  position: relative;
  float: left;
}*/

#slideshow div {
  width: 40%;
  height: 420px;
  overflow: hidden;
  position: relative;
  float: left;
}

#slideshow div div {
  top: 0;
  left: 0;
  position: absolute;
}
#slideshow div img {
  display: block;
	width:100%;
}
#slideshow ul {
  display: inline-block;

}
#slideshow ul {
  display: block;
  float: left;
  /*width: 80px;
  padding: 0;*/
  width: 60%;
  padding: 0 0 17px 0;
}
#slideshow ul li {
  /*width: 80px;
  height: 53px;
  display: block;
  margin: 5px 0px 2px 5px;
  background: none;*/
  height: auto;
  display: block;
  margin: 0px 0px 2px 16px;
  background: none;
  float: left;
  padding: 0 !important;
}
#slideshow .active {
  filter: alpha(opacity=99)!important;
  -moz-opacity: 0.99!important;
  opacity: 0.99!important;
}
.clearfix {
  min-height: 1px;
}

/* キャスト個別ページ動画 */
#girlsmovie {
    width: 55% !important;
    height: auto ! important;
	margin: 0 0 0 16px;
}
#girlsmovie p {
	text-align: left;
}
#view1 {
    width: 100% !important;
}
#view2 {
    width: 100% !important;
}
#view3 {
    width: 100% !important;
}
#view4 {
    width: 100% !important;
}
#view5 {
    width: 100% !important;
}
#view6 {
    width: 100% !important;
}
#view7 {
    width: 100% !important;
}
#view8 {
    width: 100% !important;
}
#view9 {
    width: 100% !important;
}
#view10 {
    width: 100% !important;
}


/*--
schedule
---------------------------------------*/
#weekly{    
    /*width: 890px;*/
    width: 100%;
    margin: 0 auto;
}
#weekly table{
    width: 100%;
    margin: 10px auto 40px;
}
#weekly th, #weekly td{
    text-align: center;
    border: 1px solid #474747;
    padding: 8px;
    line-height: 1.428571429;
    vertical-align: top;
    border: 1px solid #474747;
}
#weekly th, .am-table th{
/*
    background: #100d05;
    background: -moz-linear-gradient(top,  #100d05 1%, #928134 92%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(1%,#100d05), color-stop(92%,#928134));
    background: -webkit-linear-gradient(top,  #100d05 1%,#928134 92%);
    background: -o-linear-gradient(top,  #100d05 1%,#928134 92%);
    background: -ms-linear-gradient(top,  #100d05 1%,#928134 92%);
    background: linear-gradient(to bottom,  #100d05 1%,#928134 92%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#100d05', endColorstr='#928134',GradientType=0 );
*/
}
.am-table th{border-top: 1px solid #474747 !important; text-align: center;}
.am-table td{vertical-align: center;}

/*--
system
---------------------------------------*/
#system{    
    width: 100%;
    margin: 0 auto;
}

/* dl{
    padding-bottom: 10px;
    border-top: 1px solid #ddd;
}

dl dt{
    float: left;
    clear: left;
    width: 120px;
    padding: 5px 0;
    font-weight: bold;
}

dl dd{
    padding: 5px 0 5px 120px;
    border-bottom: 1px solid #ddd;
} */

.system {
    margin-bottom: 4%;
}

.system-title, .play-guide-step, .play-guide-access {
    width: 48%;
    margin: auto;
    text-align: center;
    font-size: 2.4rem;
    padding: 1.6% 0;
    background: linear-gradient(to right, #292418, #866629, #292418);
    border: 1px solid #926f24;    
    color: #fff;
    text-shadow: 1px 1px 3px #243541;
    font-family: sans-serif; 
	letter-spacing: 0.2rem;
}

.system-cource {
    display: flex;
    width: 56%;
    margin: auto;
    font-size: 2rem;
    color: #666;
    border-bottom: 1px solid #e4e4e4;
    background: #fff;
    padding: 1% 0;
    align-items: center;
}

.system-cource-type {
    width: 50%;
    text-align: center;
}


.system_yen {
    font-size: 2.4rem;
}


.system_yen02 {
    font-size: 2.4rem;
    padding-left: 2%;
}

.system-fee {
    width: 48%;
    margin: auto;
    background: rgba(0, 0, 0, 0.5);
}

.system-fee-table, .system-tbody, .system-tr {
    width: 100%;
}

.system-fee-table {
    border-collapse:  collapse;
    font-size: 1.8rem;
    color: #b79508;
	font-weight: 500;
}

.system-tr {
    border-bottom: 1px solid #926f24;
}

.system-th {
    width: 50%;
    padding: 3% 2%;
    font-weight: 300;
	font-size: 2.2rem;
    text-align: center;
}

.system-td {
    text-align: center;
	font-size: 1.8rem;
}

.system-note {
	padding: 5% 2%;
	font-size: 1.3rem;
	color: #b79508;
	text-align: center;
	font-weight: 300;
	line-height: 2;
}

.system-pointCard {
	line-height: 2;
	font-size: 2rem;
}

.system-pickUpArea {
	padding: 4% 2%;
	font-size: 1.8rem;
}

.system-bookLink {
    width: 48%;
    margin: 8% auto 4%;
    text-align: center;
    font-size: 2.4rem;
    padding: 1.6% 0;
    background: linear-gradient(to right, #926f24, #CAA906, #926f24);
    text-shadow: 2px 1px 3px #2e220d;
    font-family: sans-serif; 
	letter-spacing: 0.2rem;
	box-shadow: 2px 1px 3px #111;
}

.system-bookLink a {
	color: #fff;
	display: block;
}

.system-bookLink a:hover {
	color: #fff;
	opacity: 0.7;
}

.system-fee-caution {
    text-align: right;
    color: #888;
    padding: 1% 1% 0 0;
}

.system-cource-type {
    width: 50%;
    padding-left: 4%;
    text-align: left;
}

.system-cource-typeA {
    width: 50%;
    padding-right: 4%;
    text-align: right;
}

.system-cource-type01 {
    width: 80%;
    padding-left: 4%;
    text-align: left;
}

.system-cource-type02 {
    width: 20%;
    padding-right: 4%;
    text-align: right;
}

.system-area {
    width: 56%;
    margin: 2% auto 0;
    padding: 1% 0;
    text-align: center;
    background: #E5E5E5;
}

.system-area img {
    width: 64%;
}

.sp-only {
    display: none;
}

/*--
playguide
---------------------------------------*/
.playguide {
    width: 88%;
    display: flex;
    margin: auto;
	justify-content: space-around;
}

.playguide-container {
    width: 44%;
	padding-top: 24px;
}

.play-guide_intro {
	width: 72%;
	margin: 0 auto 10%;
	text-align: center;
} 

.play-guide_title {
	margin-bottom: 4%;
}

.play-guide-step {
	width: 72%;
}

.play-guide-imgWrap {
	width: 72%;
	margin: 4% auto;
	display: flex;
	justify-content: space-between;
}

.play-guide-img {
	width: 48%;
}

.play-guide-img img {
	width: 100%;
	height: auto;
	max-height: 400px;
}

.play-guide-stepText {
	width: 64%;
	margin: 4% auto;
}

.pickUp-area {
	width: 72%;
	margin: 8% auto;
}

.pickUp-title {
	margin-bottom: 4%;
	text-align: center;
}

.pickUp-wrap {
	display: flex;
	width: 100%;
	max-width: 500px;
	margin: auto;
	flex-wrap: wrap;
}

.pickUp-line {
	width: 32%;
	border-bottom: 1px solid #999;
	padding: 2% 0 2% 2%;
}

.pickUp-st {
	width: 68%;
	border-bottom: 1px solid #999;
	padding: 2% 0;
}

.play-guide-stepNote {
	text-align: center;
	margin: 4% 0 0;
}

.access-service {
	display: flex;
	justify-content: space-between;
	width: 72%;
	margin: auto;
}

.access-serviceText {
	width: 42%;
	padding: 4% 0;
	font-size: 1.6rem;
	margin: 4% auto;
}


/*--
howto
---------------------------------------*/
.section-howto {
    width: 80%;
    margin: auto;
}

.howto-container {
    display: flex;
    justify-content: space-around;
    margin-bottom: 10%;
}

.howto-container img {
    width: 44%;
}

.howto-container-text {
    width: 50%;
    font-size: 1.8rem;
    color: #9c8a72;
}

.howto-title {
    font-size: 2rem;
    color: #9c8a72;
    padding: 0 0 2% 4%;
    border-bottom: 1px solid #9c8a72;
    margin: 0 auto 4%;
}

.section-basicplay {
    width: 80%;
    margin: 10% auto;
}

.basicplay-title {
    width: 100%;
    margin: 0 auto 4%;
    font-size: 2rem;
    padding: 2% 0 1% 4%;
    background-image: linear-gradient(to right, #292418, #866629, #292418);
    color: #fff;
    text-shadow: 2px 2px 4px #243541;
    font-family: sans-serif; 
}

.basicplay-container {
    width: 100%;
    text-align: center;
}

.basicplay-container img {
    width: 80%;
    margin-bottom: 4%;
}

.basicplay-container-text {
    width: 90%;
    text-align: left;
    margin: auto;
    color: #9c8a72;
    font-size: 1.6rem;
}

/*--
concept
---------------------------------------*/

.section-concept {
    width: 80%;
    margin: 0 auto 6%;
}

.concept-title {
    width: 100%;
    margin: 0 auto 4%;
    font-size: 3rem;
    padding: 2% 0 1% 4%;
    background-image: linear-gradient(to right, #292418, #866629, #292418);
    color: #fff;
    text-shadow: 2px 2px 4px #243541;
    font-family: sans-serif; 
    box-sizing: border-box;
}

.concept-title02 {
    width: 100%;
    margin: 0 auto 4%;
    font-size: 2rem;
    padding: 2% 0 1% 4%;
    background-image: linear-gradient(to right, #292418, #866629, #292418);
    color: #fff;
    text-shadow: 2px 2px 4px #243541;
    font-family: sans-serif; 
    box-sizing: border-box;
}

.concept-container {
    width: 100%;
}

.concept-container-text {
    width: 100%;
    margin: 0 auto 4%;
    color: #9c8a72;
    font-size: 1.6rem;
}

.concept-container-text02 {
    width: 100%;
    padding: 2% 4%;
    margin: auto;
    border: 1px solid #9c8a72;
    color: #9c8a72;
    font-size: 1.6rem;
    box-sizing: border-box;
}

.concept-fee {
    width: 100%;
    margin: 0 auto 4%;
    padding: 0;
    background: #fff;
}

.concept-fee-table, .system-tbody, .conceptsystem-tr {
    width: 100%;
}

.concept-fee-table {
    border-collapse:  collapse;
    font-size: 1.8rem;
    color: #9c8a72;
}

.conceptsystem-tr {
    border-bottom: 1px solid #9c8a72;
}

.conceptsystem-th {
    width: 20%;
    padding: 2%;
    font-weight: 300;
    text-align: center;
}

.row-th {
    width: 40%;
    font-size: 1.7rem;
}

.row-th02 {
    width: 48%;
    font-size: 1.7rem;
}

.col-th {
    width: 12%;
    font-size: 1.7rem;
}

.concept-td {
    font-size: 1.6rem;
    padding: 2%;
}

.attention-color {
    background-color: #f9eede;
}

.conceptsystem-line {
   border-left: 1px solid #9c8a72;
}

#top .section-concept {
	padding: 0;
}


/*--
Access
---------------------------------------*/
.google-map-wrap {
	width: 80%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

@media screen and (max-width: 428px){
.google-map-wrap {
	width: 100%;
}	
}

.google-map {
	width: 58%;
}

.google-map iframe {
	width: 100%;
	height: 100%;
}

.google-map-text {
	width: 38%;
}

.google-map-textTitle {
	font-weight: 800;
	font-size: 1.2rem;
}

.google-map-textComment {
	font-size: 1.4rem;
	margin-bottom: 6%;
}

@media screen and (max-width: 428px){
.google-map-textTitle {
	font-size: 1.4rem;
}

.google-map-textComment {
	font-size: 1.8rem;
	margin-bottom: 10%;
	line-height: 1.6;
}
}

.play-guide-access {
	width: 72%;
	margin: 16% auto 4%;
}

.access-contents {
	width: 80%;
	padding: 2% 0;
	margin: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.access-imageWrap {
	width: 48%;
}

.access-imageWrap img {
	width: 100%;
}

.access-imageText {
	line-height: 3.4;
}

.map-number-wrap {
    position: absolute;
    position: relative;
    top: 48px;
    left: 16px;
    width: 54px;
    height: 54px;clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
    background: #9c8a72;
}

.map-number {
    position: absolute;
    top: 2px;
    left: 2px;
    margin: auto;
    background-color: #fff;
    color: #9c8a72;
    font-size: 2rem;
    line-height: 50px;
    width: 50px;
    height: 50px;clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}

.access-map-text {
    width: 88%;
	height: 120px;
    margin: 2% auto 0;
    font-size: 1.6rem;
    color: #efefef;
    line-height: 2;
    background: #c4ac8c;
    padding: 4% 0;
}

.access-map-text02 {
    font-size: 2.1rem;
    line-height: 1.2;
    color: #fff;
}

.access-title {
    width: 100%;
    margin: 0 auto 4%;
    font-size: 3rem;
    padding: 1% 0 1% 4%;
    background-image: linear-gradient(to right, #292418, #866629, #292418);
    color: #fff;
    text-shadow: 1px 1px 3px #243541;
    font-family: sans-serif; 
    box-sizing: border-box;
}

.access-map {
    position: relative;
    width: 33%;
    background: #fff;
}

.access-map img {
    width: 88%;
}

.access-allmaps {
    margin: 4% auto;
}

.access-allmaps img {
    width: 100%;
}

/*--
FAQ
---------------------------------------*/
.faq {
	width: 64%;
	margin: auto;
}

.faq-title {
	font-size: 2.2rem;
	margin-bottom: 4%;
	color: #ebba53;
}

.faq-answer {
	font-size: 1.8rem;
	margin-bottom: 8%;
}

@media screen and (max-width: 428px){
.faq {
	width: 100%;
}

.faq-title {
	font-size: 1.8rem;
}

.faq-answer {
	font-size: 1.4rem;
}
	
}



/*--
booking
---------------------------------------*/
.form {
	width: 48%;
	margin: auto;
	font-size: 1.8rem;
}

.name input, .tel input, .email input, .date input, .time input, .requestcast input, .age input, .cast input{
	width: 100%;
	height: 40px;
	margin-bottom: 4%;
	border: 1px solid #9c8a72;
	box-shadow: inset 0px 0px 2px 0px rgba(0, 0, 0, 0.3);
}

.message textarea {
	border: 1px solid #9c8a72;
	box-shadow: inset 0px 0px 2px 0px rgba(0, 0, 0, 0.3);
}

.submit {
	font-weight: 600;
}

.countrycode select, .station select {
	width: 40%;
	height: 40px;
	margin-bottom: 4%;
}

.station select {
	width: 80%;
}

.wpcf7-list-item {
	padding-right: 3%;
}

.wpcf7-list-item input {
	transform: scale(1.2);
	margin-right: 1%;
}

.location, .course, .coursetime, .option {
	margin-bottom: 5%;
}

.message textarea {
	width: 100%;
	height: 200px;
}

.submit {
	width: 100%;
	text-align: center;
}

.submit input {
	width: 72%;
	padding: 2%;
	margin-top: 8%;
	background: #926f24;
	color: #fff;
	border: none;
	box-shadow: 1px 1px 4px #111;
	font-size: 2rem;
}

.submit input:hover {
	opacity: 0.7;
}

.section-booking {
    width: 80%;
    margin: 0 auto 6%;
}

h2 .booking-title, h2 .concept-title02 {
    width: 88%;
	display: block;
    margin: 0 auto 4%;
    font-size: 3.2rem;
    padding: 1% 0 1% 0;
    background: linear-gradient(to right, #292418, #866629, #292418);
    border: 1px solid #926f24;
    color: #fff;
    text-shadow: 1px 1px 3px #243541;
    font-family: sans-serif; 
    box-sizing: border-box;
}

h2 .concept-title02 {
	width: 100%;
}


/*--
recruit
---------------------------------------*/
.recruit-wrapper {
	width: 50%;
	margin: 0 auto;
}

.recruit-title {
	padding: 2% 4%;
	font-size: 2rem;
	background: #926f24;
	color: #fff;
	font-weight: 500;
	text-shadow: 1px 1px 3px #111;
}

.recruit-contents {
	padding: 3% 4%;
	font-size: 1.6rem;
	line-height: 2;
}

.recruit-contents img {
	width: 20%;
}

@media screen and (max-width: 428px){
.recruit-wrapper {
	width: 100%;
}

.recruit-title {
    font-size: 2rem;
}
	
}

/*@media screen and (max-width: 320px) and (max-width: 428px){*/
@media screen and (max-width: 428px){
	h2 .booking-title, h2 .concept-title02 {
    width: 88%;
    font-size: 2.6rem;
    padding: 2% 0 3% 4%;
}
   /*--
sp-kv
---------------------------------------*/

	#kv {
		padding-top: 94px;
		height: 280px;
	}
	
	.h2 {
		font-size: 1.6em;
		text-align: center;
	}
	
    #top section {
        padding: 1.6em 0;
		margin: 0;
    }
	
	#top .girl-detail {
		padding: 10em 0;
	}
			
	#top #welcome .backstretch {
		height: 88px !important;
		margin-top:40px !important;
	}
	

	
    nav .active a{
        border-bottom: none;
        border-color: none;
    }
	nav a {
		padding: 0.2em 0.3em;
	}
    nav a:hover{
        border-bottom: none;
        border-color: none;
        color: none;
    }
	
    #weekly{    
        width: 100%;
        font-size: 8px;
    }
    #weekly th, #weekly td{
        padding: 5px 0px;
        font-size:10px;
    }
    #slideshow {
        width: 100%;
    }
    #slideshow div {
        /*width: 80%;*/
        width: 100%;
        height: 400px;
    }
    #slideshow ul {
        /*width: 20%;*/
        width: 100%;
    }
    #slideshow div img{
        width:100%;
		height:100%;
		object-fit:cover;
    }
    #system{    
        width: 100%;
    }
    #schedule{
        font-size: 13px;
    }
    #schedule ul{
        margin: 0;
        padding: 0;
		display:flex;
		justify-content:center;
		flex-wrap:wrap;
    }
	#schedule .clearfix {
		margin-top: 4%;
	}
	
	#girlsmovie {
    width: 100% !important;
    height: auto ! important;
    padding-top: 10px;
	margin: 0;
	}
	.cycle-pager {
	right: 36%;
	}
	
	/*--
sp-system
---------------------------------------*/
    .system-title, .system-fee {
        width: 100%;
    }
	
    .system {
        margin-bottom: 16%;
    }

    .sp-only {
        display: block;
    }

    .system-title {
        font-size: 2.6rem;
        padding: 3% 0;
    }

    .system-fee-table {
        font-size: 1.5rem;
    }

    .system-th {
        padding: 4% 0;
    }

    .system_yen {
        font-size: 2.2rem;
    }
	
	.system-bookLink {
		width: 80%;
	}

	
	/*--
	sp-playguide
	---------------------------------------*/
	.playguide {
		width: 100%;
	}

	.playguide-container {
		width: 100%;
	}

	.playguide {
		display:  block;
	}

	.playguide-title {
		width: 100%;
		font-size: 2.6rem;
		padding: 3% 0;
		margin-bottom: 10%;
	}

	.playguide-cource {
		width: 94%;
		margin-bottom: 16%;
	}

	.playguide-cource img {
		width: 100%;
		height: 200px;
	}

	.playguide-course-text {
		width: 100%;
		height: auto;
	}

	.shopdetail-container, .shopattention-container {
		width: 100%;
	}

	.shopdetail, .shopattention {
		width: 100%;
		padding: 1% 4%;
	}

	.shopdetail-list, .shopattention-list {
		padding: 2% 4%;
		line-height: 1.5;
	}
	
	.tel_color a {
    text-decoration: none;
    color: #9c8a72;
	}
	
/*--
sp-howto
---------------------------------------*/
.section-howto {
   width: 96%;
   margin-bottom: 24%;
}

.howto-container {
    display: block;
    text-align: center;
}

.howto-container img {
    width: 100%;
}

.howto-container-text {
    width: 100%;
    text-align: left;
    font-size: 1.7rem;
}

.section-basicplay {
    width: 96%;
    margin: 20% auto;
}

.basicplay-title {
    width: 100%;
	padding: 4% 0 2% 4%;
	margin: 5% auto;
}

.basicplay-container {
    padding: 0;
}

.basicplay-container img {
    width: 100%;
	margin-bottom: 4%;
}
	
.basicplay-container-text {
    width: 100%;
}

/*--
sp-concept
---------------------------------------*/
.section-concept {
    width: 96%;
    margin: 4% auto 0;
}

.concept-title {
    width: 100%;
	font-size: 2.6rem;
    padding: 4% 0 4% 4%;
}
	
.concept-title-margin {
	margin-bottom: 8%;
}

.concept-container {
    padding-bottom: 10%;
}

.concept-container-text {
    width: 100%;
}

.row-th, .row-th02, .col-th {
    font-size: 1.2rem;
}

.concept-image-wrap {
    width: 48%;
    margin-left: 1%;
}

.profile-text {
    font-size: 0.6rem;
}


/*--
sp-access
---------------------------------------*/
.access-contents {
	width: 100%;
}

.access-imageText {
	line-height: 1.5;
	margin-top: 4%;
}

.access-imageWrap {
	margin-bottom: 4%;
}
	
.section-access {
    width: 96%;
    margin: 4% auto 20%;
}

.access-title {
    font-size: 2.6rem;
    padding: 3% 0 3% 4%;
}

.section-access-content {
    font-size: 1.8rem;
	text-align: left;
	padding-left: 4%;
}

.access-map {
    width: 47%;
}

.map-number-wrap {
    top: 32px;
    left: 0;
    width: 60px;
    height: 60px;
}

.map-number {
    width: 54px;
    height: 54px;
    line-height: 54px;
    font-size: 1.8rem;
}

.access-map img {
    width: 100%;
}

.access-map-text {
    width: 100%;
    height: 142px;
    text-align: left;
    padding-left: 4%;
    box-sizing: border-box;
	font-size: 1.3rem;
	line-height: 1.7;
}

.access-map-text02 {
    font-size: 1.5rem;
}

.access-allmaps {
    width: 100%;
}

.access-allmaps img {
    width: 100%;
}
	

/*--
sp-booking
---------------------------------------*/
.form {
	width: 88%;
	margin: auto;
}
	
.name input, .tel input, .email input, .date input, .time input, .requestcast input, .age input {
	margin-bottom: 10%;
}
	
.countrycode select {
	width: 80%;
	margin-bottom: 10%;
}

.station select {
	width: 100%;
	margin-bottom: 10%;	
}
	
.location, .course, .coursetime, .option {
	margin-bottom: 10%;
}

.submit input {
	width: 90%;
	padding: 4%;
	margin-top: 8%;
}

.wpcf7-list-item {
	padding-right: 5%;
	line-height: 2;
}
	
.wpcf7-list-item input {
	transform: scale(1);
	margin-right: 1.2%;
}
	
.section-booking {
    width: 96%;
    margin: 4% auto 0;
}

.booking-title {
    width: 100%;
    padding: 3% 0 3% 4%;
}

/*--
sp-girls recruit
---------------------------------------*/
.sp-br {
    display: block;
}

.section-recruit {
    width: 100%;
    margin: 8% auto;
}

.section-content {
    font-size: 2rem;
	text-align: left;
    margin-bottom: 8%;
}

.section-content-size {
    font-size: 3rem;
    padding-left: 2%;
}

.section-content-imagewrap {
    width: 100%;
}

.section-recruit-stepwrap {
    padding-right: 0;
    display: block;
    width: 100%;
}

.section-recruit-steptitlewrap {
    width: 100%;
}

.pc-br {
    display: none;
}

.recruit-steptitle {
    font-size: 2rem;
    padding: 6% 0;
}

.section-recruit-stepcheckwrap {
    font-size: 1.6rem;
	padding: 4% 2%;
}

.section-recruit-checklist {
    padding: 0 4% 0 2%;
    text-align: justify;
}

.section-recruit-check02 {
    padding-left: 32px;
}

.section-recruit-entrypointlist {
    background-color: #e7e7e7;
    color: #795f53;
    padding: 3%;
    width: 90%;
    margin: 0 auto 8%;
}

.section-recruit-qanda {
    width: 100%;
    margin: 0 auto 12%;
    text-align: justify;
}

.section-recruit-q {
    font-size: 1.7rem;
}

.section-recruit-a {
    font-size: 1.6rem;
}
	
.contact-formwrap {
	margin-top: 16%;
}

.recruit-title-contact {
	font-size: 2.4rem;
	margin-bottom: 6%;
	line-height: 1.3;
}

.recruit-title-contactsub {
	font-size: 1.6rem;
	margin-bottom: 8%;
	line-height: 1.6;
}
	
.recruit-contact-form {
	width: 100%;
}

.section-recruit-contactwrap {
    display: block;
	width: 100%;
	margin: 16% auto;
}

.section-recruit-contactmail {
    width: 100%;
	margin-bottom: 8%;
}

.section-recruit-contacttel {
    width: 100%;
    height: 88px;
}

.recruit-contactmail-text {
    font-size: 2.4rem;
}

.recruit-contacttel-text {
    font-size: 2.4rem;
}

.recruit-contacttel-size {
    font-size: 1.4rem;
	line-height: 2.4;
	padding-left: 12%;
}

/*--
sp-link
---------------------------------------*/
.links {
    width: 100%;
}

.links-wrap {
    width: 100%;
}

.link {
    width: 100%;
    margin: 0 auto 8%;
}

.link-bannerSize {
    width: 100%;
}

.link-bannerSize img {
    width: 100%;
}
	
.link-title {
    font-size: 2.4rem;
	margin-bottom: 12%;
}

.textarea {
    width: 100%;
	height: 128px;
}
	
	
}

/*-- tablet size--*/
@media only screen and (min-width: 768px) and ( max-width: 1024px ) {
/*--
tb-kv
---------------------------------------*/
.cycle-pager {
	right: 56%;
}	


/*--
tb-playguide
---------------------------------------*/
#top section {
	padding: 4em 0 4em;
}
	
.playguide {
    width: 100%;
}

.playguide-title {
    width: 88%;
}

.playguide-cource {
    width: 88%;
    margin-bottom: 100px;
}

.playguide-cource img {
    width: 88%;
    height: 180px;
}

.playguide-course-text {
    width: 90%;
    font-size: 1.3rem;
    height: 88px;
}

.shopdetail-container, .shopattention-container {
    width: 96%;
}

.shopdetail, .shopattention {
    width: 88%;
}

/*--
tb-howto
---------------------------------------*/
.section-howto {
    margin-bottom: 16%;
}
	
.howto-container {
    display: block;
    text-align: center;
}

.howto-container img {
    width: 80%;
    margin-bottom: 4%;
}

.howto-container-text {
    width: 90%;
    margin: auto;
    text-align: left;
    font-size: 1.3rem;
}

/*--
tb-concept
---------------------------------------*/
.concept-image-wrap {
    width: 32%;
    margin-left: 1%;
}
	
	
/*--
tb-access
---------------------------------------*/
.section-access {
    margin: 4% auto 14%;
}

.section-access-content {
    font-size: 1.8rem;
}

.access-map {
    width: 48%;
}

.map-number-wrap {
    top: 32px;
    left: 8px;
    width: 68px;
    height: 68px;
}

.map-number {
    width: 62px;
    height: 62px;
    line-height: 62px;
    font-size: 1.6rem;
}

.access-map img {
    width: 100%;
}

.access-map-text {
    width: 100%;
    height: 172px;
    text-align: left;
    padding-left: 4%;
    box-sizing: border-box;
    font-size: 1.8rem;
}

.access-map-text02 {
    font-size: 2.1rem;
}

.access-allmaps {
    width: 100%;
}

.access-allmaps img {
    width: 100%;
}

	
/*--
tb-booking
---------------------------------------*/
.form {
	width: 60%;
	margin: 10% auto 0;
}

#top .section-booking {
	padding: 0;
}


/*--
tb-girls recruit
---------------------------------------*/
.section-recruit {
    width: 88%;
    margin: 12% auto 8%;
}

.section-content {
    font-size: 2.6rem;
    margin-bottom: 8%;
}

.section-content-size {
    font-size: 3rem;
    padding-left: 2%;
}

.section-content-imagewrap {
    width: 100%;
}

.section-recruit-stepwrap {
    height: auto;
    width: 100%;
}

.section-recruit-stepwrap {
    padding-right: 0;
    display: block;
    width: 100%;
}

.section-recruit-steptitlewrap {
    width: 100%;
}

.pc-br {
    display: none;
}

.recruit-steptitle {
    font-size: 2.4rem;
    padding: 3% 0;
}

.section-recruit-stepcheckwrap {
    font-size: 2rem;
}

.section-recruit-checklist {
    padding: 2% 4%;
    text-align: justify;
}

.section-recruit-check02 {
    padding-left: 24px;
}

.section-recruit-entrypointlist {
    background-color: #e7e7e7;
    color: #795f53;
    padding: 3%;
    width: 90%;
    margin: 0 auto 8%;
}

.section-recruit-qanda {
    width: 100%;
    margin: 0 auto 10%;
    text-align: justify;
}

.section-recruit-contactwrap {
    width: 100%;
}


.section-recruit-contactmail {
    width: 48%;
}

.section-recruit-contacttel {
    width: 48%;
}

.recruit-contactmail-text {
    font-size: 2.4rem;
}

.recruit-contacttel-text {
    font-size: 2.4rem;
}

.recruit-contacttel-size {
    font-size: 1.4rem;
	line-height: 1.8;
	padding-left: 10%;
}	

	
}


/* Small devices (tablets, 768px and up) */
@media only screen and (min-width: 768px) {
    header{

        z-index: 10;
    }
    #logo{
        float:left;
    }


    nav{
        clear: both;
        padding-top: 1em;
        font-size: 1.2em;
    }
    nav ul{
        display: block;
        width: 100%;
    }
    nav li{
        display: inline-block;
        width: 19%;
        text-align: center;
        border: none;
        padding: 0;
    }
    #pull{
        display: none;
    }
	#kv img{
		width:100vw;
	}
   #kv #catch{
        position: absolute;
        top:65%;
        font-size: 2em;
    }
    #kv #catch a{
        display: inline-block;
        margin: 10px;
        padding: 5px 10px;
        border: solid 2px #DDC06F;
		color:#DDC06F;
        border-radius: 5px;
        font-size: 0.5em;
    }
    #kv #catch a:hover{
        background: rgba(221,192,111,0.7);
		color:#fff;
    }
	#page-girls li,
    #girls li{
        width: 25%;
    }

    #schedule li{
        width: 25%;
    }
    #reservation #name{
        width: 48%;
        float: left;
    }
    #reservation #tel{
        width: 48%;
    }
    #reservation #email{
        width: 98%;
    }
    #reservation .girl{
        width: 48%;
        float: left;
    }
    #reservation #duration{
        width: 48%;
    }
    #reservation #date{
        clear: both;
        width: 48%;
        float: left;
    }
    #reservation #time{
        width: 48%;
    }
    #reservation #outcall{
        width: 98%;
    }
    #reservation #message{
        width: 98%;
    }
    #reservation button{
        width: 98%;
    }
    #page-top{
        right:16px;
        bottom:16px;
    }
    footer .col1{
        width: 50%;
        float: left;
    }
    footer .col2{
        width: 50%;
        float: right;
    }
	 footer .col3{
        width: 100%;
        float: right;
    }
    footer .col4{
		width: 100%;
        clear: both;
    }
    footer #footer_logo{
        width: 50%;
        float: left;
    }
    footer #footer_logo img{
        max-width: 150px;
    }
    footer #footer_tel{
        width: 50%;
        float: right;
    }
    footer #copy{
        margin-top: 1em;
    }

}

/* Medium devices (desktops, 992px and up) */
@media only screen and (min-width: 992px) {
    #call{

    }
	
    nav{
        padding-top: 0;
		display:flex;
		justify-content:center;
		text-align:center;
    }
	
    nav li{
        width: auto;
        padding-left: 3%;
    }
    #system, #weekly{
        width: 890px;
    }
	#page-girls li,
    #girls li{
        width: 20%;
    }
    #schedule li{
        width: 25%;
    }
    footer .col1{
        width: 15%;
        float: left;
    }
    footer .col2{
        width: 15%;
        float: left;
    }
    footer .col3{
        width: 35%;
        float:left;
    }
	footer .col4{
        width: 35%;
        float:left;
        clear: none;
    }
    footer #footer_logo{
        width: 100%;
        float: none;
    }
    footer #footer_tel{
        width: 100%;
        float: none;
        margin-top: 0;
    }
    footer #copy{
        clear: both;
        margin-top: 1em;
    }
}

/* Large devices (large desktops, 1200px and up) */
@media only screen and (min-width: 1200px) {
    #girls li{
        width: 16.6666667%;
    }
    #system, #weekly{
        width: 890px;
    }
    #schedule li{
        width: 16.6666667%;
    }
    #reservation form{
        width: 80%;
        margin: 0 auto;
    }
 #kv #catch{
        font-size: 2.5em;
    }
}

.girl-slider-list{
  display: flex;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  height:300px;
  overflow: hidden;
}
.girl-slider-list ul{
	display:flex;
	padding: 0;
	margin:0;
}
.girl-slider-list li{
	width:200px;
	list-style: none;
	color:#9c8a72;
}
.girl-slider-list li a{
	color:#9c8a72;
}
.girl-slider-list li img{
	width:200px;
	height:300px;
	object-fit:cover;
}
@media only screen and (max-width: 767px) {
	.girl-slider-list li img{
	width:150px;
	height:200px;
	object-fit:cover;
}
	footer .col4{
		margin-top: 20px;
	}
}
.girl-slider-list ul:first-child {
  animation: slide1 150s -75s linear infinite;
}

.girl-slider-list ul:last-child {
  animation: slide2 150s linear infinite;
}
@keyframes slide1 {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}

@keyframes slide2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
#slider{
	width:100%;
	position:relative;
}
#slider img {
	width: 100%;
}
@media only screen and (max-width: 767px) {
#slider{
	width:100%;
	margin-top:120px;
}
#slider img{
	width:100%;
}
.play-guide{
	margin: 0 auto;
	width: 100%;
}
	
.play-guide_intro {
	width: 96%;
	margin-bottom: 16%;
}

.play-guide_title {
	margin-bottom: 8%;
}

.play-guide_text {
	text-align: left;
}
	
@media screen and (max-width: 428px){ 
.play-guide_intro, .play-guide_stepWrap, .pickUp-area {
	line-height: 1.8;
}
	
.play-guide_text, .play-guide-stepText {
	font-size: 1.5rem;
}

.play-guide-imgWrap {
    margin: 16% auto;
}
	
}
	
.play-guide-step, .play-guide-access {
	width: 100%;
}
	
.play-guide-imgWrap {
	width: 100%;
	margin: 10% auto;
}

.play-guide-stepText {
	width: 96%;	
	margin: 4% auto 10%;
}

.pickUp-title {
	margin: 14% auto 8%;
}

.pickUp-area {
	width: 96%;
}

.pickUp-st {
	padding-left: 2%;	
}
	
.pickUp-area .system-bookLink {
	width: 96%;
	font-size: 1.6rem;
	margin: 10% auto 16%;
	padding: 4% 0;
}
	
.access-service {
	width: 100%;
}

.access-serviceText {
	font-size: 1rem;
	width: 46%;
}
/* access sp */
.google-map-wrap {
	display: block;
}

.google-map {
	width: 100%;	
	margin-bottom: 8%;
}

.google-map-text {
	width: 100%;	
}
	
}

.container{
	color:#fff;
}
#girls.page-girls li img{
	width:200px;
	height:300px;
	object-fit:cover;
}
#girls.page-girls ul{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}
#girls.page-girls li{
	float:none;
	margin:3px;
}
#girls.page-girls .girl_info{
	bottom:0;
}
#girls.page-girls .girl_info a{
	color:#9c8a72;
}
/*#welcome {
	padding-bottom:0 !important;
}*/
	.event-bnr{
		background-image:url("https://casanova-soapland.com/wp-content/uploads/2024/06/event-bg.jpg");
		background-attachment:fixed;
		background-position:center;
	}
.event-bnr .container img {
	width: 100%;
	object-fit: cover;
}
@media only screen and (max-width: 767px) {

	#welcome h2{
		color:#fff;
	}
	#girls.page-girls li{
		width:48%;
	}
	#girls.page-girls .girl_info{
		display:block;
	}
	
}

.open {
	cursor:pointer;
}
#pop-up1,#pop-up2,#pop-up3 {
	display: none;
}
.overlay {
	display: none;
}
#pop-up1:checked + .overlay,
#pop-up2:checked + .overlay,
#pop-up3:checked + .overlay{
	display: block;
	position: fixed;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	z-index: 9999;
	background: rgba(0, 0, 0, 0.6);
}
.window {
	position: fixed;
	top: 50%;
	left: 50%;
	width: 90vw;
	max-width: 360px;
    padding: 20px;
	height: 240px;
	background-color: #fff;
	border-radius: 4px;
	align-items: center;
	transform: translate(-50%, -50%);
}
.close {
	position: absolute;
	top: 4px;
	right: 4px;
	cursor:pointer;
}
.header_sns{
	display:flex;
	float:right;
	align-items:end;
	color:#fff;
	margin-top:50px;
}
.header_sns li{
	list-style-type: none;
	margin-top: 30px;
	padding: 0 4px;
}
.header_sns li.lang-EN a{
	    width: 40px;
    height: 40px;
	background-color:#fff;
	color: #000;
    border: 1px solid #fff;
    align-content: center;
    text-align: center;
    font-weight: 600;
    display: block;
    border-radius: 3px;
}
.header_sns li.lang-CN a{
	    width: 40px;
    height: 40px;
    color: #fff;
    border: 1px solid #fff;
    align-content: center;
    text-align: center;
    font-weight: 600;
    display: block;
    border-radius: 3px;
}
@media screen and (max-width: 428px){ 
.header_sns li{
	padding: 2px;
}
	
}

.header_sns li i{
	font-size:20px;
	line-height: 32px;
}

.header_sns label {
	margin-bottom: 0;	
}

.header_sns #call{
    font-size: 2em;
    font-weight: 300;
	line-height: 32px;
}
.header_sns #call span{
    font-size: 0.4em;
	background-color: #866629;
    color: #fff;
    padding: 2px 5px;
}
.header_sns li img{
	    width: 200px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
}
@media only screen and (max-width: 767px) {
	header .container{
		padding: 0;
	}
	.header_sns #call{
		font-size: 16px;
		line-height: 22px;
	}
	.header_sns #call br{
		display:none;
	}
	.header_sns #call span{
		font-size:10px;
		float:right;
		background-color:transparent;
	}
	.header_sns #call span::before{
		content:"("
	}
	.header_sns #call span::after{
		content:")"
	}
	.header_sns li{
		margin: 0 4px;
		line-height: 22px;
	}
	.header_sns li i{
	font-size: 22px;
}
	.header_sns li .fa-phone {
	font-size: 14px;
	line-height: 22px;
	}
	.header_sns{
		justify-content: center;
    background-color: #866629;
    width: 100%;
		margin: 0;
		padding:2% 0;
	}
	.fa-phone:before,
	.fa-line:before,
	.fa-wechat:before,
	.fa-whatsapp:before,
	.header_sns #call a{
		color:#fff;
	}
	.header_sns label{margin-bottom:0;}
	.fa-phone:before{
		color:#fff;
	}
}

/*  top固定ページ用 */
#schedule.top ul {
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}
#schedule.top ul li {
	margin:5px;
}

/* bogo style */
.bogo-language-switcher {
	display:flex;
	justify-content:center;
	align-items:center;
	padding-left:0;
}
.header_sns li .bogo-language-switcher li {
	margin-top:0;
	padding:0;
	margin-right:10px;
	border-radius:3px;
}
.header_sns li .bogo-language-switcher li span a{
	width:40px;
	height:40px;
	color:#333;
	border:1px solid #333;
	align-content:center;
	text-align:center;
	font-weight:600;
	display:block;
	border-radius:3px;
}

.header_sns li .bogo-language-switcher li:hover {
	opacity:0.7;
	transition:0.3s;
}
.header_sns li .bogo-language-switcher li.current {
	background-color:#333;
}
.header_sns li .bogo-language-switcher li.current span a {
	color:#fff!important;	
	border-radius:3px;
}

@media screen and (max-width:768px) {
	.bogo-language-switcher {
		position:absolute;
		top:10px;
		right:130px;
		display:block;
	}
	.bogo-language-switcher li {
		list-style:none!important;
		border:1px solid #333;
		margin-bottom:4px;
		padding:2px 10px!important;
		font-size:12px;
		text-align:center;
	}
	.bogo-language-switcher li.current {
		background-color:#333;
	}
	.bogo-language-switcher li.current span a {
		color:#fff!important;	
	}
}