@import url(https://fonts.googleapis.com/css?family=Sawarabi+Mincho);
@import url(https://use.fontawesome.com/releases/v5.6.3/css/all.css);
/*-------------------------------------
■ reset
-------------------------------------*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,caption,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;font-weight:normal;vertical-align:baseline;background:transparent}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section{display:block}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}ins{text-decoration:none}mark{font-style:italic;font-weight:bold}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}hr{display:block;height:1px;border:0;padding:0}input,select{vertical-align: middle}img{vertical-align:top;font-size:0;line-height:0}th{text-align:left}iframe{vertical-align:bottom}video{display:block}strong{font-weight:bold}
/*-------------------------------------
■ common
-------------------------------------*/
body{color:#fff;font-family:'Sawarabi Mincho','メイリオ', Meiryo,'ヒラギノ角ゴ ProN','Hiragino Kaku Gothic ProN',sans-serif;font-size:14px;background:#232323 url(../img/bg.gif) repeat center top}
ins,mark{background:#ff9;color:#000}
p{line-height:1.8em}
img{width:auto;max-width:100%;height:auto}
hr{margin:1em 0;border-top:1px solid #ccc}
a{-webkit-tap-highlight-color:rgba(0,0,0,0);text-decoration:none;overflow:hidden;outline:none;color:#e4007f}
a:hover{text-decoration:none;color:#e40050}
input,textarea,select,textarea,button{outline:none;border-radius:0;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}
.clear{clear:both}
.clearfix{zoom:100%}
.clearfix:after{content:"";clear:both;display:block}
.f_10{font-size:72%}.f_12{font-size:86%}.f_13{font-size:93%}.f_14{font-size:100%}.f_16{font-size:115%}.f_18{font-size:129%}.f_20{font-size:143%}.f_p{color:#ff71b8}
.i_100 img,img.w_100{width:100%;height:auto}
.box{-webkit-box-sizing:border-box;box-sizing:border-box}

#gnav_btn,.sp_h_menu_icon,.sp_h_menu,.conversion{display:none}
.bg_b{background:#000 url(../img/bg_b.gif) repeat center top}
.content{
	margin:0 auto;
	max-width:1200px;
}

/*-------------------------------------
■ header
-------------------------------------*/
header{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	overflow:hidden;
	border-top:2px solid #e4007f;
	height:80px;
	box-shadow:0 1px 4px rgba(0,0,0,.5);
	background:#000;
	z-index:1000;
}

.header_inner{
	position:relative;
}
.h_logo{
	margin-left:10px;
	display:table;
	float:left;
	height:80px;
	width:250px;
}
@media screen and (max-width:1150px){
	.h_logo{width:155px}
	.hm_inner li{font-size:12px}
}

.h_logo a{
	display:table-cell;
	vertical-align:middle;
}

.h_menu{
	margin-right:135px;
	float:right;
}
.hm_inner{
	display:table;
	height:80px;
}
.hm_inner li{
	display:table-cell;
	padding-right:12px;
	vertical-align:middle;
}
.hm_inner li a{
	color:#fff;
	transition:color .3s;
}
.hm_inner li a:hover{color:#e4007f}

.hm_inner li a span{
	display:block;
	padding-top:5px;
	font-size:10px;
	text-align:center;
}

.h_reservation{
	position:absolute;
	top:0;
	right:0;
	width:130px;
	height:80px;
}
.h_reservation a{
	display:block;
	height:100%;
	line-height:80px;
	color:#fff;
	text-align:center;
	background:#e4007f;
	transition:background .3s;
}

.h_reservation a:hover{background:#e40050}
.h_reservation a span{
	display:inline-block;
	font-weight:bold;
}
.h_reservation a span:first-child{
	margin-right:10px;
}
.h_reservation a span:first-child img{
	vertical-align:middle;
}

/*-------------------------------------
■ content
-------------------------------------*/
h1.top_main_title{
	text-align:center;
	padding:10px;
	background:#202020;
}
main{
	padding-top:82px;
	padding-bottom:100px;
}

.top_box{
	overflow:hidden;
	height:158px;
	background:#000 url(../img/c_top_bg.webp) no-repeat center center;
	background-size:cover;
}
.wrapper{
	padding:20px;
}
.main_c{
	float:left;
	width:100%;
	margin-right:-300px;
	padding-right:300px;
}
.side_c{
	float:right;
	width:300px;
	padding-left:20px;
}

/* side content
--------------------------------*/
/* girl */
.sc_schedule{
	margin-bottom:20px;
}
.scs_box li{
	overflow:hidden;
	margin-bottom:5px;
	height:110px;
}
.scs_box li:last-child{
	margin-bottom:0;
}
.scs_box li a{
	display:block;
	color:#fff;
	background:rgba(0,0,0,.5);
	transition:opacity .3s;
}
.scs_box li a:hover{
	opacity:.75;
}
.scsb_img{
	position:relative;
	float:left;
	width:40%;
}
.scsb_w{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-position:center center;
	background-size:cover;
}
.scsb_img .icon_new{
	position:absolute;
	top:0;
	left:0;
	width:50px;
}
.scsb_img .icon_black,
.scsb_img .icon_ken{
	position:absolute;
	top:0;
	right:0;
	width:50px;
}
.scsb_img .icon_syu{
	position:absolute;
	top:0;
	right:0;
	width:50px;
}
.scsb_img .icon_black + .icon_syu,
.scsb_img .icon_ken + .icon_syu{
	top:17.8px;
}


.scsb_info{
	float:right;
	width:55%;
}
.scsbi_name{
	overflow:hidden;
	padding-top:5px;
	height:30px;
	line-height:30px;
	font-size:16px;
}
.scsbi_name span{
	margin-left:5px;
	font-size:12px;
}
.scsbi_3{
	overflow:hidden;
	height:22px;
	line-height:20px;
	font-size:11px;
}
.scsbi_time{
	margin-top:10px;
	overflow:hidden;
	height:22px;
	line-height:20px;
	margin-right:10%;
	padding:0 5px;
	background:#a6005c
}

/* banner */
.sc_banner ul li{
	margin-bottom:10px;
}
.sc_banner ul li:last-child{
	margin-bottom:0;
}
.sc_banner ul li a{
	display:block;
	transition:opacity .3s;
}
.sc_banner ul li a:hover{
	opacity:.75;
}
.sc_banner ul li a img{
	filter:grayscale(65%);
	width:100%;
}
/*
.sc_banner ul li:last-child a img{
	filter:grayscale(55%);
}
.sc_banner ul li:last-child span{
	display:block;
	padding:5px 0;
	text-align:center;
}
*/

.card_s_link{
	display:block;
	margin-top:10px;
	transition:opacity .3s;
}
.card_s_link:hover{
	opacity:.8;
}
.card_s_link img{
	width:100%;
	height:auto;
}


/* title
--------------------------------*/
.c_title{
	padding:40px 0 30px;
	text-align:center;
}
.ct_b{
	display:inline-block;
	padding:0 10px 8px;
	line-height:1.4em;
	font-size:28px;
	font-weight:bold;
	letter-spacing:3px;
	border-bottom:5px solid #e4007f;
}
.ct_s{
	display:block;
	padding:10px;
	font-size:16px;
}

.s_title{
	margin-bottom:10px;
	padding:10px 0;
	height:24px;
	color:#e4007f;
	font-size:22px;
	text-align:center;
	border-top:1px solid #e4007f;
	border-bottom:1px solid #e4007f;
	background:rgba(0,0,0,.5);
}

/* link button
--------------------------------*/
.link_btn{
	position:relative;
	display:block;
	width:80%;
	max-width:245px;
	height:50px;
	line-height:50px;
	text-align:center;
	color:#e4007f;
	font-size:16px;
	border:1px solid #e4007f;
	background:#fff;
	transition:color .3s,background .3s;
}
.link_btn:after{
	content:"";
	position:absolute;
	top:1px;
	right:1px;
	width:0;
	height:0;
	border-left:3px solid transparent;
	border-bottom:3px solid transparent;
	border-top:3px solid #e4007f;
	border-right:3px solid #e4007f;
	transition:border .3s;
}

.link_btn:hover{
	color:#fff;
	background:#e4007f;
}
.link_btn:hover:after{
	border-top:3px solid #fff;
	border-right:3px solid #fff;
}

/*-------------------------------------
■ footer
-------------------------------------*/
.pagetop{
	padding:20px 0;
	background:#000;
}
.pagetop a{
	display:block;
	margin:0 auto;
	width:150px;
	height:50px;
	line-height:50px;
	text-align:center;
	border:1px solid #e4007f;
	background:#000;
	transition:color .3s , background .3s;
}
.pagetop a:hover{
	color:#fff;
	background:#e4007f;
}

.footer_box{
	background:#333;
}
.fb_inner{
	padding:40px 20px;
}

.fbi_l,
.fbi_r{
	float:left;
	width:50%;
}

.fbi_l{
	padding-right:10px;
	text-align:center;
}
.f_logo{
	display:inline-block;
	margin-bottom:10px;
	transition:background .3s;
}
.f_logo:hover{background:#000}

.fbil_text{
	max-width:430px;
	margin:0 auto;
}

.fbi_r{
	padding-left:10px;
}
.fbir_title{
	padding:0 10px 10px;
	font-size:20px;
	border-bottom:1px solid #fff;
}
.f_menu_box{
	margin-bottom:30px;
	padding:0 10px;
}
.f_menu_box ul{
	width:33.33333333333%;
	float:left;
}
.f_menu_box ul li{
	margin-top:25px;
}
.f_menu_box ul li a{
	color:#fff;
	transition:color .3s;
}
.f_menu_box ul li a:hover{color:#e4007f}

.f_menu_box_under{
	padding:10px;
	border-top:1px solid #fff;
}
.fmbu_text{
	font-size:16px;
}
.fmbu_text span:first-child{
	padding-right:30px;
}
.fmbu_text_under{
	color:#f5a;
	font-size:16px;
}

.footer_icon_box{
	text-align:center;
	background:#000;
}
.fib_inner{
	display:inline-block;
	padding:25px 0 10px;
	border-bottom:1px solid #393939;
}
.fib_inner a{
	display:inline-block;
	margin:0 5px;
	transition:opacity .3s;
}
.fib_inner a:hover{
	opacity:.85;
}

footer small{
	display:block;
	padding:25px 20px;
	text-align:center;
	background:#000;
}

/* footer banner */
.ff_link_box{
	padding-top:20px;
	text-align:center;
}
.ff_link{
	display:inline-block;
	width:210px;
	font-size:10px;
	vertical-align:top;
}










@media screen and (max-width:970px){
	.h_menu,
	.h_reservation{
		display:none
	}
	#gnav_btn,
	.sp_h_menu_icon,
	.sp_h_menu,
	.conversion{
		display:block
	}
/* menu button ////////////////////////////////////////////*/
	.gnav_menuBtn{position:absolute;right:0;top:0;width:70px;height:70px;background-size:contain;border:none}
	.gnav_menuBtn button{position:relative;width:100%;height:100%;border:0;background:#333;padding:0}
	#drawer_hamburger_icon{display:block;position:absolute;top:25px;left:0;right:0;margin:0 auto;width:36px;height:1px;background:#fff;transition:.2s}
	#drawer_hamburger_icon:before,#drawer_hamburger_icon:after{content:"";display:block;position:absolute;top:20px;left:0;width:36px;height:1px;background:#fff;transition:.3s}
	#drawer_hamburger_icon:after{margin-top:-11px}
	#drawer_hamburger_icon:before{margin-top:-2px}
	#gnav_btn .active{background:#000}
	#gnav_btn .active #drawer_hamburger_text{color:#fff}
	#drawer_btn_wrap .closed{background:transparent}
	#drawer_btn_wrap .closed:before{-webkit-transform:rotate(-45deg);transform:rotate(-45deg);margin-top:-11px;background:#fff}
	#drawer_btn_wrap .closed:after{-webkit-transform:rotate(-135deg);transform:rotate(-135deg);background:#fff}
/* menu content ////////////////////////////////////////////*/
	.sp_h_menu_icon{
		float:right;
		margin-right:70px;
	}
	.sp_h_menu_icon ul{
		display:table;
		height:70px;
	}
	.sp_h_menu_icon ul li{
		display:table-cell;
		padding-right:10px;
		text-align:center;
		vertical-align:middle;
	}
	.sp_h_menu_icon ul li a{
		display:block;
	}

	.sp_h_menu{
		position:fixed;
		top:0;
		left:100%;
		width:100%;
		height:100%;
		background:rgba(0,0,0,.8);
		transform:translateX(0);
		transition:transform .3s;
		z-index:100;
	}
	.shm_open{
		overflow:auto;
		transform:translateX(-100%)
	}
	.sp_h_menu_inner{
		margin-top:72px;
	}
	.sp_h_menu_inner ul{
		padding:50px 20px 20px;
	}
	.sp_h_menu_inner ul li{
		padding:20px 10px;
		text-align:center;
	}
	.sp_h_menu_inner ul li a{
		padding:10px;
		display:inline-block;
		color:#fff;
		font-weight:bold;
		font-size:30px;
		text-shadow:0 1px 5px rgba(0,0,0,1)
	}
	.sp_h_menu_inner ul li a span{
		padding-top:7px;
		display:block;
		font-size:16px;
		text-align:center;
	}

/*-------------------------------------
■ header
-------------------------------------*/
	header{
		height:70px;
	}
	.h_logo,
	.h_reservation{
		height:70px;
	}
	.h_logo{
		width:300px;
	}
	.h_reservation{
		right:70px;
	}
	.h_reservation a{
		line-height:70px;
	}
	
/*-------------------------------------
■ content
-------------------------------------*/
	main{
		padding-top:72px;
	}
	.top_box{
		height:138px;
	}

	.main_c{
		margin-right:-250px;
		padding-right:250px;
	}
	.side_c{
		width:250px;
	}

/* title
--------------------------------*/
	.c_title{
		padding:30px 0 20px;
	}

/*-------------------------------------
■ footer
-------------------------------------*/
.conversion{
	position:fixed;
	bottom:0;
	width:100%;
	z-index:99;
	display:flex;
	align-items:stretch;
	justify-content:center;
	flex-wrap:wrap;
	background:rgba(0,0,0,.8);
	padding:5px;
}
.conversion .telbox{
	width:calc(50% - 5px);
	height:45px;
	line-height:45px;
	color:#fff;
	display:flex;
	justify-content:center;
	font-weight:bold;
	border-radius:5px;
	background:linear-gradient(5deg, #ff5ea0, #ff8f92);
	box-shadow:0.3vw 0.3vw 0.3vw rgba(0, 0, 0, 0.2);
}
.conversion .telbox p{
	line-height:1.2;
	margin-top:6px;
	font-size:15px;
	font-weight:bold;
}
.conversion .telbox p span{
	font-size:0.7rem;
	padding-top:2px;
	padding-bottom:3px;
	display:block;
}
.conversion .telbox i{
	font-size:1.8rem;
	line-height:45px;
	padding-right:10px;
	padding-top:12px;
}
.conversion i:before,
.conversion i:after{
	display:none;
}
.conversion .telbox i img{
	width:25px;
	height:auto;
}
.conversion .mailbox,
.conversion .totop{
	margin-left:5px;
	height:45px;
	text-align:center;
	color:#fff;
	display:block;
	padding:5px 0;
	font-size:.9rem;
	font-weight:bold;
	background-image:linear-gradient(5deg, #d60077, #e4007f);
	box-shadow:0.3vw 0.3vw 0.3vw rgba(0, 0, 0, 0.2);
	border-radius:5px;
}
.conversion .mailbox{width:calc(25%)}
.conversion .totop{width:calc(25% - 5px)}

.conversion .mailbox i,
.conversion .totop i{
	display:block;
	padding-top:2px;
	margin-bottom:3px;
}
.conversion .mailbox i img{
	width:20px;
	height:auto;
}

	.f_menu_box ul{
		width:50%;
	}
	.fmbu_text span:first-child{
		padding-right:0;
	}
	.fmbu_text span{
		display:block;
	}
}










@media screen and (max-width:767px){
	.h_reservation a span:first-child{display:none}
	.h_reservation a span:last-child{
		padding-top:8px;
		line-height:1.2;
	}
/* menu button ////////////////////////////////////////////*/
	.gnav_menuBtn{width:50px;height:50px}
	#drawer_hamburger_icon{top:15px}
/* menu content ////////////////////////////////////////////*/
	.sp_h_menu_icon{
		margin-right:50px;
	}
	.sp_h_menu_icon ul{
		height:50px;
	}
	.sp_h_menu_icon ul li{
		width:30px;
	}
	.sp_h_menu_icon ul li a{
		
	}

	.sp_h_menu_inner{
		margin-top:50px;
	}
	.sp_h_menu_inner ul li{
		padding:10px;
	}
	.sp_h_menu_inner ul li a{
		font-size:20px;
	}
	.sp_h_menu_inner ul li a span{
		font-size:12px;
	}

/*-------------------------------------
■ header
-------------------------------------*/
	header,
	.h_logo,
	.h_reservation{
		height:50px;
	}
	.h_logo{
		margin-left:5px;
		width:40%;
		max-width:210px;
	}
	.h_reservation{
		right:50px;
		width:50px;
	}
	.h_reservation a{
		line-height:50px;
	}
	.h_reservation a span:first-child{
		margin-right:0;
		width:20px;
	}

/*-------------------------------------
■ content
-------------------------------------*/
	h1.top_main_title{
		font-size:10px;
	}
	main{
		padding-top:52px;
		padding-bottom:50px;
	}
	.top_box{
		height:105px;
	}

	.wrapper{
		padding:20px 10px 0;
	}
	.main_c,
	.side_c{
		float:none;
		width:100%;	
	}
	.main_c{
		margin-right:0;
		padding-right:0;
	}
	.side_c{
		padding:40px 0 0 0;
	}

/* side content
--------------------------------*/
/* girl */
	.scs_box{
		overflow:hidden;
	}
	.scs_box li{
		width:50%;
		height:auto;
		float:left;
	}
	.scsbi_name{
		height:25px;
		font-size:12px;
	}

/* title
--------------------------------*/
	.c_title{
		padding:20px 0 10px;
	}
	.ct_b{
		padding:0 10px 5px;
		font-size:24px;
		border-bottom:2px solid #e4007f;
	}
	.ct_s{
		font-size:14px;
	}

/*-------------------------------------
■ footer
-------------------------------------*/
	.fbi_l,
	.fbi_r{
		float:none;
		padding:0;
		width:100%;
	}
	.fbi_l{
		margin-bottom:40px;
	}
	.fbi_r{
		text-align:center;
	}
	.f_menu_box ul{
		width:100%;
	}
	.f_menu_box ul li{
		margin-top:13px;
		padding-bottom:10px;
		border-bottom:1px solid #444;
	}
	.f_menu_box ul li a{
		display:block;
		padding:10px 0;
	}
	.f_menu_box_under{
		border-top:0;
	}
}










@-webkit-keyframes fluffy1{
	0%{transform:translateY(0)}
	5%{transform:translateY(0)}
	10%{transform:translateY(0)}
	20%{transform:translateY(-15px)}
	25%{transform:translateY(0)}
	30%{transform:translateY(-15px)}
	50%{transform:translateY(0)}
	100%{transform:translateY(0)}
}
@keyframes fluffy1{
	0%{transform:translateY(0)}
	5%{transform:translateY(0)}
	10%{transform:translateY(0)}
	20%{transform:translateY(-15px)}
	25%{transform:translateY(0)}
	30%{transform:translateY(-15px)}
	50%{transform:translateY(0)}
	100%{transform:translateY(0)}
}
.fluffy{animation:fluffy1 3s ease infinite}