@charset "UTF-8";
/*
Template: xeory_base
Theme Name: xeory_base-child 子テーマ

Version: 0.2.2
*/

/* 
html5doctor.com Reset Stylesheet

*/

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,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video, .post-content p {
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}
body {line-height:1;}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {display:block;}
nav ul {list-style:none;}
blockquote, q {quotes:none;}
blockquote:before, blockquote:after,
q:before, q:after {content:'';content:none;}
a {margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}
/* change colours to suit your needs */
ins {background:#ff9;color:#000;text-decoration:none;}
/* change colours to suit your needs */
table {
  border-collapse:collapse;
  border-spacing:0;
}

/* all display
-------------------------------------------------- */

.grecaptcha-badge {
	display:none!important;
}
#side {
	display: none;
}


/* ----------------------------------------
* all
---------------------------------------- */

body {
    margin: 0;
    font-size: 100%;
    font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
    overflow-wrap: break-word;
    word-break: normal;
}

.wrapper {
	position: relative;
  　color: #222;
	background: rgb(255 136 133 / 5%);
	background-image: url(/wp-content/uploads/bg-1.jpg);
	background-size: cover;
}

a {
  text-decoration: none;
  color: #020202;
}
a:hover {
 ?text-decoration: none;
}

.c_both {
	clear: both;
	*font-size: 1%;
	*line-height: 1%;
	*height: 1%;
	*width: 1%;
}
img {
	width: 100%;
}
.flex {
	display: flex;
	flex-wrap: wrap;
}

.wrap {
  position: relative;	
  box-sizing: border-box;
  margin: 0 auto;
  *zoom: 1;
}

.wrap:before {
  display: inline-table;
}
.wrap:after {
  content: "";
  display: block;
  clear: both;
}
#top_img {
	width:100%;
	height:500px;
}

#main {
  width: 100%;
  float: left;
}
.main-inner {
  box-sizing: border-box;
}
#side {
  width: 25%;
  float: left;
  margin-left: -100%;
	background: #fff;
}

.one-column #content .wrap #main {
  width: 100%;
  float: none;
}
.one-column #content .wrap #main .main-inner {
  width: 100%;
  margin: 0;
}
.one-column #content .wrap #side {
  display: none;
}
em {
    font-style: normal;
}
/* h1,h2,h3,h4,
---------------------------------------- */

.post-content h1, .post-content h2, .post-content h3, .post-content h4, .post-content h5, .post-content h6 {
    font-weight: normal;
    line-height: 1.4;
	font-size: 13px;
	margin: 0;
	border: none!important;
}

/* form
---------------------------------------- */
.reserve {
	padding: 20px 20px 30px;
}
.reserve p{
	margin-bottom: 20px;
	line-height: 1.4;
}
.reserve form p{
	margin-bottom: 0px;
}
form input[type="submit"],
form button {
  background: #222;
  color: #fff;
	padding: 12px 20%;
    margin: 20px 24%;
}
form input[type="submit"]:hover,
form button:hover {
  cursor: pointer;
}

.age-gate__challenge {
	margin-bottom: 15px;
}
select, input, button {
    -webkit-appearance: none; /* デフォルトスタイルを無効化 */
    appearance: none;
    background-color: #fff; /* 背景色を明示 */
    border: 1px solid #ccc; /* ボーダーを明示 */
}
/* header
---------------------------------------- */

#header {
	margin: 0 calc(50% - 50vw);
  　width: 100vw;
	background-image: url(/wp-content/uploads/header_bg.jpg);
	background-position: center top;
	background-repeat: no-repeat;
    /*box-shadow: 1px 1px 1px rgba(0,0,0,0.1);*/
}
.header_inner {
	position: relative;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0px 10px 0px 10px;
	color: #fff;
    line-height: 1.5;
	display: block;
}
.header_inner .head {
	display: flex;
	justify-content: space-between;
}
#h1_text {
	color: #f00;
    text-indent: -999px;
}
#h1_text a{
	color: #fff!important;
}
#header #logo {
    /*position: absolute;
    left: 1%;
    bottom: 5px;*/
}
#header #logo img {
    height: 60px!important;
	width: auto;
}
.header_tel {
	text-align: right;
    padding-right: 1%;
	padding-top: 20px;
    line-height: 1.2;
	letter-spacing: 1.2px;
	color: #000;
}
.header_tel a{
	color:#fff;
	text-decoration: none;
	font-size: 24px;
    color: #f52549;
}
.header_tel span{
	font-size: small;
	margin-left: 7px;
	margin-right: 10px;
}

#header_img {
	height: 200px;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    overflow: hidden;
    position: relative;
    background-image: url(/wp-content/uploads/bg01.jpg);
    background-position: center bottom;
    background-size: cover;
}
#header_img h4 {
	position: absolute;
    bottom: 20%;
    right: 10%;
	font-size: 24px;
    border-bottom: 1px double #fff;
    padding: 0px 20px;
    line-height: 1.2;
	color: #fff;
    text-shadow: 1px 1px 1px #ccc;
}
#header_menu {
	position: relative;
	transform:translateZ(0);/* 回避手段 */
	background: linear-gradient(to bottom, #f6617b 0%, #ff5472 50%, #ff6775 51%, #f52549 100%);
	color: #fff;
	margin: 0 calc(50% - 50vw);
  　width: 100vw;
}
#header_menu a {
	color: #fff;
}
.opentime {
	display: none;
}
.home .header_inner {
    display: none;
}
/* ----------------------------------------
* gloval nav
---------------------------------------- */

.header_wra {
	display: none;
}
#gnav {
    font-size: 14px;
    width: 100%;
}
#gnav-container {
    max-width: 1100px;
    margin: 0 auto;
}
#gnav .sub-menu {
    z-index: 10;
    font-size: 14px;
    margin: 0;
}

#gnav ul {
    margin: 0;
    padding: 0;
	display: flex;
	justify-content: center;
	text-align: center;
}
#gnav li {
	width: calc(100% / 8);
	padding: 5px 0;
}


#gnav li.menu-item a {
  position: relative;
  display: inline-block;
  text-decoration: none;
  padding: 10px 10px;
  font-size: 1.1em;	
}
#gnav li.menu-item a::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #cd3f65;
  transform: scale(0, 1);
  transform-origin: center top;
  transition: transform .3s;
}
#gnav li.menu-item a:hover::after {
  transform: scale(1, 1);
}


#gnav li a {
  display: block;
  padding: 20px 0px;
 ?color: #222!important;
  text-decoration: none;
}


#gnav li a:hover {
  color: #cd3f65;
}
#gnav li a:hover .sub-menu {
  display: block;
}
#gnav li .sub-menu {
  display: none;
  position: absolute;
  width: 200px;
  background: #fff;
  border: none;
  border-bottom: none;
  margin: 0;
}
#gnav li .sub-menu li {
  float: none;
  margin-right: 0;
  padding: 0;
}
#gnav li .sub-menu li:list-child {
}
#gnav li .sub-menu li a {
  color: #fff;
  background: #2b2b2b;
  font-size: 12px;
  padding: 14px 18px;
  margin-top: 0;
  border: none;
  overflow: hidden;
}
#gnav li .sub-menu li a:hover {
  background: #373B3B;
  color: #fff;
}
#gnav li .sub-menu li a:after {
  content: "\f105";
  float: right;
  font-family: 'FontAwesome';
}
#gnav li .sub-menu .sub-menu {
  left: 100%;
  top: 0;
}





/*  menu
----------------------------------------------*/
	
@import url('https://fonts.googleapis.com/css?family=Varela+Round');
html, body {
    overflow-x: hidden;
    /* height: 100%; */
}
.menu {
	position:relative;
	z-index: 9000!important;
	display: block;
}
#sidebarMenu {
    height: 100%;
    position: fixed;
	top: 0;
    width: 100%;
    transform: translateX(250%);
    transition: transform 250ms ease-in-out;
	background: #fff;
	opacity:0.9;
	z-index:9000;
}
.sidebarMenuInner, menu-global-menu{
    margin:0;
    padding: 20px 20px 30px;
}
.sidebarMenuInner li, menu-global-menu li{
    list-style: none;
    color: #000;
    text-transform: uppercase;
    cursor: pointer;
	font-size: 110%;
    margin: 0 auto;
    border-bottom: 1px solid #000;
}
.sidebarMenuInner li a, menu-global-menu li a{
	display: block;
    padding: 15px;
    color: #000;
    text-transform: uppercase;
    cursor: pointer;
    text-decoration: none;
}

.sidebarMenuInner li span{
    display: block;
    font-size: ;
}
.sidebarMenuInner .li_title {
	border:none;
	padding:15px 20px 5px;
	margin-bottom:20px;
	text-align: center;
}
.sidebarMenuInner li i {
    margin: 0 10px;
    font-size: large;
}
input, textarea, input[type="button"], input[type="submit"] {
    -webkit-appearance: none;/* iOSのデフォルトスタイルを無効化 */
    border-radius: 0; /* ボーダーの角丸も初期化されるため必要に応じて追加 */
}
input[type="checkbox"]:checked ~ #sidebarMenu {
    transform: translateX(10%);
}
input[type=checkbox] {
    transition: all 0.3s;
    box-sizing: border-box;
    display: none;
}


.sidebarIconToggle {
    position: fixed;
    top: 10px;
    right: 10px;
    transition: all 0.3s;
    box-sizing: border-box;
    cursor: pointer;
    display: block!important;
    height: 65px;
    width: 60px;
    padding: 17px 8px 8px;
    background: #ffd64d;
    z-index: 9909!important;
}
.home .sidebarIconToggle,
.home #content {
	animation: menu 6s ease-in-out 0s 1 normal forwards;
}
@keyframes menu {
	0% {
		opacity: 0;
	}

	80% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}




.sidebarIconToggle p {
	display: none;
	font-size:11px;
	letter-spacing: 1.2px;
    text-align: center;
	line-height: 1.8;
	color:#fff;
}
.spinner {
    transition: all 0.3s;
    box-sizing: border-box;
    position: absolute;
    height: 2px;
    width: 100%;
    background: #fff;
}
.horizontal {
    transition: all 0.3s;
    box-sizing: border-box;
    position: relative;
    float: left;
    margin-top: 12px;
}
.diagonal.part-1 {
    position: relative;
    transition: all 0.3s;
    box-sizing: border-box;
    float: left;
}
.diagonal.part-2 {
    transition: all 0.3s;
    box-sizing: border-box;
    position: relative;
    float: left;
    margin-top: 12px;
	margin-bottom: 1px;
}
input[type=checkbox]:checked ~ .sidebarIconToggle > .horizontal {
    transition: all 0.3s;
    box-sizing: border-box;
    opacity: 0;
}
input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-1 {
    transition: all 0.3s;
    box-sizing: border-box;
    transform: rotate(135deg);
    margin-top: 12px;
}
input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-2 {
    transition: all 0.3s;
    box-sizing: border-box;
    transform: rotate(-135deg);
    margin-top: -14px;
}
/*  
--------------- */

#navshop {
    width: 100%;
    height: 80px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    justify-content: flex-start;
    text-align: left;
    padding: 0 75px 0 15px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	background: rgba(170,147,106, 0.1);
}
#navshop h1 {
    width: 100%;
    font-size: 20px;
    line-height: 24px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
}
#navshop p {
    width: 100%;
    font-size: 11px;
    line-height: 14px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
}



.navinfo {
    text-align: left;
	padding: 20px 0;
}
.navarea {
    line-height: 18px;
    padding: 0 20px 20px 20px;
}

.nav_contact > a, .nav_contact > div {
    width: 100%;
    display: flex;
    margin: 0 0 10px 0;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}
.nav_contact span {
    width: 25px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.nav_contact span i {
    width: 25px;
    height: 25px;
    border-radius: 50%;
    font-size: 16px!important;
    line-height: 25px;
    text-align: center;
	color: rgba(255,255,255, 1);
	background-color: #f52549;
}
.nav_contact p {
    line-height: 22px;
    text-align: left;
    padding: 2px 0 2px 5px;
}




/* ----------------------------------------
* breadcrumb パンくずリスト
---------------------------------------- */
.breadcrumb {
  margin: 0 0 15px;
  overflow: hidden;
  font-size: 12px;
  line-height: 22px;
  padding: 0;
	display: none;
}
.breadcrumb li {
  float: left;
  margin-left: 10px;
}
.breadcrumb li a {
  text-decoration: none;
}
.breadcrumb li a:hover {
  text-decoration: underline;
}


/*  content
---------------------------------------- */
#content {
	max-width: 1100px;
    margin: 0 auto;
	background: rgba(255,255,255, 0.4);
	padding-bottom: 120px;
}
.post-content{
    padding: 0 0 0px;
}

/* title
---------------------------------------- */
.title {
    margin: 30px 0 30px!important;
    padding: 5px;
    text-align: center;
    font-weight: 300;
    background-image: url(/wp-content/uploads/bg_title.jpg);
    background-size: cover;
}
.title01 {
    background-image: url(/wp-content/uploads/bg_title01.jpg);
}
.title02 {
    background-image: url(/wp-content/uploads/bg_title02.jpg);
}
.title03 {
    background-image: url(/wp-content/uploads/bg_title03.jpg);
}
.title04 {
    background-image: url(/wp-content/uploads/bg_title04.jpg);
}
.title04 em{
    color: #fff!important;
}
.title em {
    display: block;
    font-size: 21px;
    line-height: 26px;
	color: #f52549;
}
.title span {
    display: inline-block;
    vertical-align: top;
    position: relative;
    font-size: 16px;
    font-weight: normal;
    line-height: 18px;
	color: #424242;
}
.s_title span:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: attr(title);
}
.post-title {
	display: none;
}
/*---*/
.page_title {
	text-align: center;
    padding: 15px 0;
	margin: 0 0 30px!important;
	padding-left: 0px!important;
}
.page_title em {
    position: relative;
    display: inline-block;
    vertical-align: top;
    font-size: 36px;
    line-height: 36px;
    padding: 0 0 10px 0;
	color: #f52549;
}
.page_title em:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: attr(title);
    color: rgba(170,147,106,1);
    -webkit-mask-image: -webkit-linear-gradient(top, rgba(170,147,106,0) 20%, rgba(170,147,106,1) 40%, rgba(170,147,106,0) 80%);
}
.page_title em:after {
    content: '';
    width: 30px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    position: absolute;
    bottom: 6px;
    left: calc(50% - 15px);
	border-color: rgba(222,215,202, 1);
}

.page_title span {
    display: block;
    font-size: 16px;
    line-height: 20px;
	color: rgba(51,51,51, 1);
}

.page_title em, .s_title span, .list .cbox .rankno, #page-top .fbt_top, footer #copyright {
        font-family: system-ui;
}



/*--------------------------------------------  top page  ---------------------------------------------*/

.box {
    padding: 0 20px 30px 20px;
}
/* shutter
--------------------------*/
.shutter,
.shutter2
{
	display: none;
}
.home .shutter {
	display: block;
	position:fixed;
	top:0;
	bottom: 0;
	left: 0;
	right: 0;
	margin:0 auto;
	width:1100px;
	height:100vh;
	animation: shutter 8s ease-in-out 0s 1 normal forwards;
	z-index:-10;
	background: url(/wp-content/uploads/shutter_pc.png) center center/ cover no-repeat;
}
@keyframes shutter {
	0% {
		z-index:9999;
		transform: scale(1);
	}
	20% {
		z-index:9999;
		transform: scale(1);
	}
	40% {
		z-index:9999;
		opacity: 1;
	}
	60% {
		z-index:9999;
	}
	100% {
		background:none;
		display: none;
		opacity: 0;
		z-index:-10;
		transform: scale(12);
	}
}
.home .shutter2 {
	display: block;
	position:fixed;
	top:0;
	bottom: 0;
	left: 0;
	right: 0;
	margin:0 auto;
	width:100vw;
	height:100vh;
	animation: cloud 16s ease-in-out 0s 1 normal forwards;
	z-index:-11;
	background: url(/wp-content/uploads/cloud_pc.png) center center/ cover no-repeat;
}
@keyframes cloud {
	0% {
		z-index:9910;
		transform: scale(1);
	}
	20% {
		z-index:9910;
		transform: scale(1);
	}
	40% {
		z-index:9000;
	}
	50% {
		z-index:8;
		opacity: 1;
	}
	100% {
		background:none;
		display: none;
		z-index:-10;
		opacity: 0;
		transform: scale(20);
	}
}

.cloud_bg {
	display: none;
}
.home .cloud_bg {
	display: block!important;
}
.cloud_left,
.cloud_left1,
.cloud_left2,
.cloud_right,
.cloud_right1,
.cloud_right2 {
	width: 25%;
    position: fixed;
}
.cloud_left {
	top: -60%;
	left: -10%;
    transform: rotate(34deg);
}
.cloud_right {
	top: -60%;
	right: 0;
    transform: rotate(-34deg);
}
.cloud_left1 {
	top: 0;
	left: -10%;
}
.cloud_right1 {
	bottom: 0;
    right: -10%;
	height: 90vh;
}
.cloud_left2 {
	bottom: -50%;
	left: -10%;
    transform: rotate(-34deg);
}
.cloud_right2 {
	bottom: -50%;
	right: -10%;
    transform: rotate(34deg);
}


/* top_menu
-------------------------- */ 
.home #header {
	background-image: none;
}
.home .top_menu_wra {
	display: block;
}
.sp {
	display: none!important;
}

.top_menu_wra {
	position: relative;
	background: url(/wp-content/uploads/bg01.jpg) center top no-repeat;
    background-size: cover;
	height: 900px;
	max-width: 1100px;
	margin: 0 auto;
	display: none;
}
.top_menu {
	position: absolute;
	top: 8%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	padding: 0 8% 0;
}
.top_menu01 {
	transform-origin: left top;
}
.top_menu02 {
	transform-origin: right top;
}
.top_menu03 {
	transform-origin: left bottom;
}
.top_menu04 {
	transform-origin: right bottom;
}
.top_menu01,
.top_menu02,
.top_menu03,
.top_menu04 {
	width: calc(100%/2 - 5px);
	height: auto;
}
.top_menu01 a,
.top_menu02 a,
.top_menu03 a,
.top_menu04 a {
	display: block;
	width: 100%;
	height: 100%;
}
.top_menu01:hover,
.top_menu02:hover,
.top_menu03:hover,
.top_menu04:hover {
	opacity: 1!important;
	transform:scale(1.5,1.5);
	transition-duration: 0.5s;
	z-index:calc(infinity);
}
.top_menu img {
	border-radius: 20px;
}


/* metaslider
-------------------------- */ 
.metaslider .flex-control-nav {
    bottom: 5px!important;
	color: #000;
}
.metaslider .flexslider {
    margin: 0 0 0px !important;
}
.bx-controls-direction {
	display: none;
}
.bx-wrapper .bx-pager, {
    bottom: -42px;
}
.nivo-controlNav {
	display: none;
}


/* topics
---------------------------------------- */
.news {
    background-image: url(/wp-content/uploads/.jpg);
}
.news .whatsnew {
	line-height: 1.5;
	margin: 0;
}
.news .whatsnew a {
	color: #222;
	padding: 0;
    pointer-events: none;
}
.news .whatsnew hr {
	display: none;
}
.news .whatsnew .newmark {
    padding: 3px 5px 1px;
	background: #222;
}
.news .whatsnew dl {
    width: 100%;
    margin: 20px auto;
    border-bottom: 1px solid #ccc;
}
.news .whatsnew h2 {
    display: none;
}
.whatsnew dt {
    color: #222!important;
}
/*-- リンク先 --*/
.news_wra {
    text-align: left;
    padding: 20px;
}
.news_wra .news_title{
    font-size: 120%;
	line-height: 1.4;
}
.news_wra .news_date{
    font-size: 12px;
    line-height: 18px;
    margin: 5px 0 15px 0;
    padding: 0 0 15px 0;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}
.news_wra .news{
	padding: 20px 10px;
	line-height: 1.4;
}
.news_wra .news img{
	width: initial;
}


/* top_sche
---------------------------------- */ 
.top_sche {
	padding: 0 0 0px!important;
	background: rgba(255,255,255, 0.1);
}
 
/* new_staff
---------------------------------- */ 
.new_staff {
	overflow: hidden;
	padding: 0 0 30px!important;
	background-image: url(/wp-content/uploads/.jpg);
}
.new_staff .slider{
	margin-left: 50%;
	overflow: hidden;
}

/*  sns
-----------------------------------*/

.sns_info {
	text-align: center;
}
.sns_info .title {
}
.sns_info p {
    line-height: 1.6;
    margin: 0 0 15px 0;
}
.sns_info .bg {
}
.sns_info h4 {
    position: relative;
    z-index: 2;
    display: inline-block;
    vertical-align: top;
    width: 110px;
    font-size: 16px;
    font-weight: bold;
    line-height: 24px;
    text-align: center;
    border-radius: 12px;
    margin: 0 0 15px 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.sns_info h4:before, .sns_info h4:after {
    content: '';
    width: 85px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-color: currentColor;
    position: absolute;
    top: 12px;
}
.sns_info .bd:before {
    border-color: rgba(51,51,51, 0.1);
	left: -85px;
}
.sns_info .bd:after {
    border-color: rgba(51,51,51, 0.1);
	right: -85px;
}
.linksite_bt {
	display: flex;
    justify-content: center;
    width: 50%;
    font-size: 0;
    line-height: 0;
    text-align: center;
    margin: 0 auto;
    padding: 0 0 15px 0;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border-color: rgba(51,51,51, 0.1);
}
.linksite_bt > a {
    display: inline-block;
    vertical-align: top;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    margin: 0 10px;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.linksite_bt1 {
    background: url(/wp-content/uploads/sns_bt1.png) no-repeat top center #000;
    background-size: 60px auto;
}
.linksite_bt4 {
    background: url(/wp-content/uploads/sns_bt2.png) no-repeat top center #00b900;
	/*background: url(/wp-content/uploads/sns_bt2.png) no-repeat top center #7f7f7f;*/
    background-size: 60px auto;
}
.linksite_bt2 {
    background: url(/wp-content/uploads/bsky_icon.png) no-repeat top center;
    background-size: 60px auto;
	
}

/* twitter
-----------------------------------*/
.x_cover {
	width: 80%;
	margin: 0 auto;
}
.x_cover img {
	border-radius: 15px;
}

/* shop
-----------------------------------*/


.shopinfo {
	background: rgba(255,255,255, 0.1);
}
.shopinfo h3 {
    font-size: 20px;
    line-height: 24px;
    padding: 30px 0;
	text-align: center;
}
.shopinfo p{
	line-height: 1.5;
    padding: 5%;
}
.shopinfo　.tx {
    color: #C030C0;
}
.shopinfo dl:first-of-type {
    border-top: 1px solid #ccc;
}
.shopinfo dl {
    border-bottom: 1px solid #ccc;
	padding: 0.5rem 1rem;
}
.shopinfo dt, .shopinfo dd {
    display: table-cell;
    vertical-align: top;
    text-align: left;
    font-size: 14px;
    line-height: 18px;
    padding: 10px 0;
}
.shopinfo dt {
    width: 75px;
}
/* report
---------------------------------------- */
/* 口コミ体験談 */

.readmore{
    position: relative;
    box-sizing: border-box;
    /*以下お好み*/
    /* ボーダーを付ける場合 */
    margin-top: 120px;
}
.readmore input[type="checkbox"] {
    display: none;
}
.readmore-content{
    position: relative;
    overflow: hidden;
    /*以下お好み*/
    /*高さの初期値*/
    height: 100px;
    /*width: fit-content;*/
	margin-bottom: 50px;
}
.readmore-content::before {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    content: "";
    /*以下お好み グラデーションの色と高さ 高さはreadmoreのheight以下にすること*/
    height: 50px;
    background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.8) 50%, rgba(255,255,255,0.8) 50%, #fff 100%);
    background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.8) 50%, rgba(255,255,255,0.8) 50%, #fff 100%);
}

/* 続きを読むボタン */
.readmore-label{
    display: table;
    bottom: 5px;
    position: absolute;
    bottom: 0px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    margin: 0 auto;
    z-index: 2;
    padding: 2% 5%;
    border-radius: 5px;
    background-color: #f52549;
    color: #FFF;
}
.readmore-label:before{
    content: 'もっと見る';
}

.readmore-check{
    display: none;
}
/*チェック時にボタンを非表示*/
.readmore-check:checked ~ .readmore-label{
    position: static;
    transform: translateX(0);
    -webkit-transform: translateX(0);
    /* 「続きを読む」を押した後、元に戻す必要がない場合は、上のオプションを消してこの1行だけにする */
    /* display: none; */
}
.readmore-check:checked ~ .readmore-label:before{
    content: '閉じる';
}
/*チェック時に高さを自動に戻す*/
.readmore-check:checked ~ .readmore-content{
    height: auto;
}
/*チェック時グラデーション等を削除*/
.readmore-check:checked ~ .readmore-content::before {
    display: none;
}
.report {
    width: calc(100%/4 - 10px);
    float: left;
    margin: 10px 5px 0;
	font-size: 13px;
}

/* モバイル */
@media screen and (max-width:768px){
.readmore-label{left: 50%;}
}



/* top end -----*/


/* system
---------------------------------------- */

.sys01,
.sys02 {
    width: 80%;
    margin: 0 auto;
}
.step {
	padding-top: 30px;
}
.sbox {
    display: table;
    table-layout: auto;
    width: 100%;
    font-size: 0;
    line-height: 0;
    border-bottom: 1px solid rgba(51,51,51, 0.1);
}
.sbox dt:first-child {
	line-height: 1;
}
.sbox dt, .sbox dd {
    min-width: 110px;
	    width: 50%;
    display: table-cell;
    vertical-align: middle;
	font-size: 30px;
    line-height: 1.5;
	text-align: center;
    padding: 15px 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.sbox dt span {
	font-size: 21px;
}
.sbox dt span .br {
	display: none;
}

.notes_in {
	padding: 20px 20px 30px;
	line-height: 1.4;
}

.sys02 ul{
	padding: 0;
}
.sys02 ul li{
	line-height: 1.4;
    margin: 0;
    padding: 4px 0;
}

.rbox {
	margin: 20px 0;
}
.rbox h4 {
    font-size: 20px;
    line-height: 24px;
    margin: 0 0 10px 0;
	color: rgb(147 68 187 / 1);
}
.rbox p {
    line-height: 1.4;
    padding: 0;
	margin: 0;
}
.rbox h4 span {
    display: inline-block;
    vertical-align: top;
    font-size: 22px;
    margin-top: -2px;
}
.material-icons {
    font-family: 'Material Icons';
    font-weight: normal;
    font-style: normal;
    font-size: 24px!important;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: 'liga';
    -webkit-font-smoothing: antialiased;
	margin: 0px 5px 0 0;
}
.tokutei {
    line-height: 2.5;
	font-size: 18px;
}
.tokutei th{
    width: 30%;
}
.card {
	width: 60%;
	margin: 60px auto 30px;
}
.card p {
	text-align: center;
	padding: 15px 0 0;
}

/* access page
---------------------------------------- */
.access {
	padding: 0 5%;
}
.access .ansa {
	padding: 30px;
}



/* recruit
---------------------------------------- */
.rec_wra {
	padding: 0 20px;
}

.rec_wra .div_top_block {}
#wpcf7-f597-p59-o1 {padding: 20px;border: 1px solid silver;background: #ffffffb3;border-radius: 10px;}
#wpcf7-f597-p59-o1 input:not(.wpcf7-submit),#wpcf7-f597-p59-o1 select,#wpcf7-f597-p59-o1 textarea {
background: white;
border: 1px solid gray;
}
.rec_wra .thef {font-size:18px;margin: 20px 0 40px 0;}
.rec_wra dl {margin: 0 20px 20px 20px;
    border: 1px #f1ce54 double;
    padding: 10px;
    background: #ffffff26;
    color: white;
}
.rec_wra dt {display:inline-block;width:150px;vertical-align: top;text-align: center;font-size: 16px;}
.rec_wra dd {display:inline-block;width:calc(100% - 255px);}
.rec_wra dl ul {margin: 0 0 0 20px;}
.rec_wra h1,h2,h3,h4,h5 {font-feature-settings: normal;color:#f52549!important;}
.rec_wra h2 {width:auto;margin:0 0 20px 0;max-width:100%; border-bottom:1px solid goldenrod;color:#777777;line-height: 2;font-size: 28px;color:#f52549;padding:0;}
.rec_wra h3 {padding:0;margin:0;font-size:30px;}
.r_box {border: 1px solid #e6e6e6;background: #ffffff9c;padding:10px 10px 10px 20px;border-radius: 10px;margin: 0 0 50px 0;color:#525252;}
.rec_wra h5 {font-size:20px;color: #886309!important;;}
.rec_wra .contacts {margin: 0 0 0 36px;}
.rec_wra .contacts li {display:inline-block;width:234px;margin: 15px 10px 20px 0;vertical-align: top;text-align: center;color:white;}
.rec_wra .contacts2 {margin: 0 0 30px 70px;color: white;}
.rec_wra .the_box {
background: #252525;border: 3px #f1ce54 double;padding: 10px;margin:0 0 70px 0;overflow: hidden; line-height: 1.4;}
.rec_wra .the_box h3 {background: linear-gradient(to bottom,#49250B,#653c1f 50%,#49250B);
    color: white!important;
    text-align: center;
    width: 90%;
    margin: 10px auto 20px;
    border: 1px solid #f1ce54;
    border-radius: 6px;
    font-size: 24px;}
.rec_wra .the_box h5 {color: #f1ce54!important;
    padding: 0 0 0 0;
    border-bottom: 1px solid #f1ce54;
    width: 90%;
    margin: 0 auto;}
.rec_wra .the_box div:first-of-type {
    display: inline-block;
    width: 250px;
    margin: 30px 10px 20px 20px;
    vertical-align: top;
}
.the_box div:first-of-type img {border:1px solid #ab923d;}
.the_box div:last-of-type {display: inline-block;width:calc(100% - 288px);}
.the_box div:last-of-type ul {margin: 28px 0 15px 30px;color: white;}
.the_box div:last-of-type .ss5 {margin: 28px 0 15px 30px;color: white;}
.smn {width: 96%!important;
    margin: 20px auto 20px!important;
    border: 1px solid silver;
    padding: 10px;
    border-radius: 6px;
    background: #ffffff1c;
    min-height: 210px;
    display: block!important;}
.smn h6 {margin: 0 0 10px 10px;
    color: white;
    font-size: 20px;
    width: 400px;
    background: #ffffff61;
    padding: 4px 10px;
    border-radius: 6px;}
.smn p {margin:10px!important;}
.contactslm {margin: 0 0 60px 0;width:100%:}
.contactslm .slm1 img {width:38%;}
.contactslm .slm2 img {width:62%;}
@media screen and (max-width:450px){
#right-sidebar {display:none;}
.contactslm {margin: 0 0 30px 0;}
.the_box h5 {text-align:center;}
.the_box div:last-of-type .ss5 {margin:10px;line-height: 1.8!important;}
.smn {width: 100%!important;padding: 0;}
.smn h6 {width: 100%;margin: 0;border-radius: 0;font-size: 19px;}
.smn p img {width:100px!important;}
.pc {display:none;}
.rec_wra header {display:none;}
.rec_wra .mobile_header {width:100%;padding-top: 50%;height: 0;background:url(http://aroma-este.jp/wp-content/uploads/showa_title_req_mobile.jpg);background-size: cover;display:block;}
.rec_wra h5 {font-size:16px;}
.rec_wra .r_box {padding:6px;}
.rec_wra .thef {font-size:16px;}
.rec_wra .contacts {margin:0;}
.rec_wra .contacts li {width:48%;margin:15px 0 0 0;vertical-align:top;text-align: center;color:white;}
.rec_wra .contacts2 {margin: 0 6px;line-height: 1.6;}
.rec_wra .contacts2 li {margin:10px 0 0 0;list-style: none;}
#wpcf7-f597-p59-o1 {padding:10px;}
.rec_wra .thef {margin:0 0 40px 0;}
.rec_wra .the_box div:first-of-type {display:block;width: 80%;
    margin: 10px auto;}
.rec_wra .the_box div:last-of-type {display:block;width:100%;}
.rec_wra .the_box div:last-of-type ul {
    margin: 20px 8px 20px 21px;
    color: white;
    line-height: 1.3;
}
.the_box div:last-of-type ul li {margin: 0 0 10px 0;}
.rec_wra dl {margin:0;}
.rec_wra dt {display:block;width:100%;border-bottom: 1px solid white;}
.rec_wra dd {display:block;width:100%;padding:10px 0 0 0;}
}


/* link
 --------------------------------------------*/
.link_box { 
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	padding: 20px 10px;
    background-image: url(/wp-content/uploads/.jpg);
    font-size: 12px;
    text-align: center;
}
.link_box .banner { 
	max-width: 320px;
    margin-bottom: 5px;
}
.link_box p {margin:0!important;}

/*@media screen and (max-width: 770px) {
.link_box { display: block;}
.link_box .banner { 
	width: 90%;
    margin: 10px auto;;}
}*/

/* 在籍・出勤・新人女性記述
------------------------------------------------ girl --------------------------------- */

.top_sche .cssgrid,
.allCast,
.schedule-wrapper .castsc{
	width: 100%;
	display: flex;
    flex-wrap: wrap;
}

.girls {
	position: relative;
    width: calc(100%/4 - 2px)!important;
	margin-left: 2px;
	margin-bottom: 2px;
	overflow: hidden;
}

/*-------- toppage  ---------------*/
.newface {
    white-space: nowrap;
    overflow-y: hidden;
    overflow-x: auto!important;
	padding-left: 4px;
	-webkit-overflow-y: hidden;
    -webkit-overflow-x: auto!important;
	-webkit-overflow-scrolling: touch;
}
.newface .girls{
    display: inline-block;
    width: calc(90% / 4 - 2px)!important;
	margin-left: -4px!important;
	margin-bottom: 2px;
}
.newface .girls .cast-icon {
}
/* スクロールバーの幅と高さを設定する */
.scrollbar::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
/* スクロールバーの形を設定する */
.scrollbar-thumb-rounded::-webkit-scrollbar-thumb {
  border-radius: 0.25rem;
}
/* スクロールバーの色を設定する */
.scrollbar-thumb-black::-webkit-scrollbar-thumb {
  --bg-opacity: 1;
  background-color: gray;
}

.top_sche .cssgrid .girls .cast-icon {
    bottom: 62px;
}
.top_sche .cssgrid .girls .cast-icon02 {
    bottom: 62px;
}

/*--- grade -----------------*/
section .cast-grade {
	text-align: center;
	line-height: 1.4;
    padding: 0 3% 7%;
}
.cast-grade ul {
	list-style: none;
	width: 80%;
    margin: 0 auto;
	padding: 0;
}
.cast-grade ul::after {
	content: "";
	display: block;
	clear: both;
}
.cast-grade ul li {
	display: inline-block;
    width: calc(100% / 5 - 5px);
    float: none;
    border: 1px solid #ccc;
    margin: 0 0px;
}
.cast-grade ul li a {
	display: block;
	padding: 0.6em 0.6em;
	text-decoration: none;
	color: #333;
	background: #fff;
	text-align: center;
}
.cast-grade ul li a:hover {
	color: #fff;
}
.cast-grade ul li .all_cast:hover,
.cast-grade ul li .all_cast:active {
	background: #faa9a9;
}
.cast-grade ul li .a18:hover,
.cast-grade ul li .a18:active {
	background: #49bef1;
}
.cast-grade ul li .a28:hover,
.cast-grade ul li .a28:active {
	background: #9bc01c;
}
.cast-grade ul li .a48:hover,
.cast-grade ul li .a48:active {
	background: #ffd64d;
}
.cast-grade ul li .atits:hover,
.cast-grade ul li .atits:active {
	background: #f52549;
}
.age18-27 {
	border: 5px solid #49bef1;
}
.age28-47 {
	border: 5px solid #9bc01c;
}
.over48 {
	border: 5px solid #ffd64d;
}
.big-tits {
	border: 5px solid #f52549;
}

.term-age18-27 .a18 {
	background: #49bef1;
	color: #fff;
}
.term-age28-47 .a28 {
	background: #9bc01c;
	color: #fff;
}
.term-over48 .a48 {
	background: #ffd64d;
	color: #fff;
}
.term-big-tits .atits {
	background: #f52549;
	color: #fff;
}

/*---------------*/

.post-loop-wrap article p {
  margin-top: 0;
}
.post-loop-wrap .post-thumbnail {
  width: 304px;
  height: 215px;
  margin-left: 20px;
  margin-bottom: 20px;
  float: right;
}
.post-loop-wrap .post-thumbnail img {
  max-width: 100%;
  height: auto;
}

/* icon 
---------------------------------*/ 

.cast-new {
    display: inline-block;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    line-height: 5.9;
    width: 108px;
    height: 53px;
    transform: rotate(40deg);
    position: absolute;
    top: -21px;
    right: -42px;
    color: #ffffff;
    background-color: #49bef1;
    z-index: 9;
}
.age18-27 .cast-new {
    background-color: ;
}
.age28-47 .cast-new {
    background-color: #9bc01c;
}
.over48 .cast-new {
    background-color: #ffd64d;
}
.big-tits .cast-new {
    background-color: #f52549;
}

.cast-icon {
    position: absolute;
    bottom: 0;
    right: 5px;
    z-index: 9;
	width: 30%;
    display: flex;
    flex-wrap: wrap-reverse;
	flex-direction: row-reverse;
}
.cast-foreigner,
.cast-twitter, 
.cast-report,
.cast-beginner,
.cast-bsky {
    width: 50%;
}


/*.schedule-wrapper .cast-icon {
    display: none;
}*/

.cast-meta {
    line-height: 1.6;
	background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,0.7) 20%,rgba(255,255,255,1) 100%);
    position: absolute;
    bottom: 0;
    width: 100%;
	padding: 30px 0 8px 0;
}
.cast-name {
	padding-left: 10px;
}
.cast-size {
	font-size: 14px;
	padding-left: 10px;
}
.cast-enter {
	padding-left: 10px;
}

/*------------- shedule ------------*/

#schedule_title {
	border-bottom: 1px solid #222;
}
.schedule-wrapper header {
    margin-top: 50px;
    text-align: center;
}
.cat-content .cat-header {
    display: none;
    padding: 0;
}
.top_sche .cssgrid .girls .cast-meta,
.castsc .girls .cast-meta {
    padding: 30px 0 0px;
}
.cast-sc {
    background: rgb(245 37 73 / 20%);
	padding: 10px 0 8px;
	text-align: center;
	margin-top: 5px;
}
.castsc .girls .cast-icon {
	bottom: 70px;
}
.castsc .girls .cast-icon02 {
	bottom: 70px;
}

.schedule-wrapper .reserve_btn {
    width: 68%;
}

	
/*----------- 個別ページ ------------*/
.single-cast #header_img {
	display: none;
}	
.col-md-10 .post-content {
	padding: 0 0 0px;
}
.col-md-10 .girl {
}
.col-md-10 .girl .page_title {
    margin: 30px 0 60px !important;
}
.col-md-10 .girl .cast-top {
	position: relative;
	display: flex;
}
.col-md-10 .girl .cast-photo {
	position: relative;
	width: 60%;
	padding: 0 10% 3%;
	margin: 0% auto;
}
.col-md-10 .girl img {
	width: 100%;
}
/* icon
 -------------------------------------*/ 

.cast-icon00 {
    position: absolute;
    z-index: 9;
    bottom: 20px;
    right: 0;
	display: flex;
    flex-direction: row-reverse;
	width: 100%;
}
.cast-icon00 .cast-foreigner,
.cast-icon00 .cast-twitter, 
.cast-icon00 .cast-report,
.cast-icon00 .cast-beginner,
.cast-icon00 .cast-bsky {
    margin: 3px;
	width: 15%;
}

/* meta
 -------------------------------------*/ 
.col-md-10 .girl .cast-new {
    font-size: 21px;
    line-height: 4.5;
    width: 212px;
    height: 71px;
    top: -15px;
    right: -80px;
}

.col-md-10 .girl .cast-pro {
    width: 38%;
    margin-left: 2%;
	padding: 0 0 3%;
}
.col-md-10 .girl .cast-meta {
	position: inherit;
	text-align: center;
	margin: 0px auto 0;
	padding: 7% 0;
	background-image: url(/wp-content/uploads/bg02.jpg);
}
.col-md-10 .girl .cast-name {
	font-size: 20px;
}
.col-md-10 .girl .cast-size {
	font-size: 18px;
}	
.col-md-10 .girl  .cast-coment {
	width: 100%;
	max-height: 394px;
    padding: 5% 2% 5% 5%;
    margin: 0 auto;
	background-color: rgb(235 235 235 / 30%);
}
.col-md-10 .girl  .cast-coment .cast-tx {
	overflow-y: scroll;
	max-height: 288px;
}
.col-md-10 .girl .cast-title {
	text-align: center;
    font-size: 18px;
    padding: 20px 0 30px;
}
.col-md-10 .girl h3 {
	text-align: center;
}
.cast_mess {
	position: relative;
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: flex-start;
    width: 100%;
    padding: 4% 0 10%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.cast_mess .cimg {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    overflow: hidden;
    margin-right: 10px;
}
.cast_mess .cimg img {
    width: 40px;
    height: auto;
}
.cast_mess .ctxt {
    line-height: 18px;
}

/* icon 
---------------*/ 
.cast_mess .cast-icon {
     position: initial;
}
.cast_mess .cast-twitter,
.cast_mess .cast-report,
.cast_mess .cast-movie {
    margin: 3px;
    float: left;
}
.cast_mess .cast-twitter img,
.cast_mess .cast-report img {
    width: 30px!important;
}


.swiper-button-prev {
    left: 0px!important;
	border-radius: 0 5px 5px 0;
}
.swiper-button-next {
    right: 0px!important;
	border-radius: 5px 0 0 5px;
}
.swiper-button-next:after, .swiper-button-prev:after {
    font-size: x-large!important;
}

/*---------- 個別ページ予約 ----------*/

.reserve_btn {
    display: block;
    background: linear-gradient(to bottom, #f6617b 0%, #ff5472 50%, #ff6775 51%, #f52549 100%);
    color: #fff;
    width: 60%;
	margin: 30px auto;
    line-height: 60px;
    text-align: center;
    border-radius: 5px;
	font-size: x-large;
    font-weight: bold;
    position: relative;
    overflow: hidden;
}

.cast-twi_form {
	display: block;
	width: 100%;
    padding: 7% 0 0 0;
}


.profile_twitter_box,
.cast-form {
	width: calc(100%/1 - 10px);
	position: relative;
}
.cast-form p{
	padding: 0px 10px 20px;
}
.cast-form_title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 2em;
	clear: both;
    border-left: 5px solid #e5e5e5;
    padding: 0 13px;
}
.cast-form .your-course .wpcf7-validates-as-required {
	padding: 8px 13px;
}
.cast-form .your-cast .wpcf7-validates-as-required {
	padding: 8px 13px;
}
.cast-form .your-day .wpcf7-validates-as-required {
}
.cast-form .your-time .wpcf7-validates-as-required {
	padding: 8px 13px;
}

/* 予約ページ */
.wpcf7 .your-course .wpcf7-validates-as-required {
	padding: 8px 13px;
}
.wpcf7 .your-cast .wpcf7-validates-as-required {
	padding: 8px 13px;
}
.wpcf7 .your-time .wpcf7-validates-as-required {
	padding: 8px 13px;
}
.wpcf7-textarea {
	height: 120px;
}
select .menu-739 {
	padding: 8px 13px;
}
/*---- twitter ----*/

.profile_twitter_box .cast_mess{
    position: absolute;
    top: 18%;
	right: 5%;
    justify-content: end;
    color: #fff;
    font-weight: bold;
    padding: 0;
}

.profile_twitter_box .x_bn img{
	border-radius: 2%;
}

/*---- cast-banner ----*/
.cast_banner {
	background-image: url(/wp-content/uploads/bg02.jpg);
	overflow: hidden;
}	
.cast_banner_img {
    margin: 10px;
    display: inline-block;
	width: 300px!important;
}

/*============= swiper ==============*/ 

.swiper-pagination-bullet-active {
    background: #999 !important;
}
.swiper-pagination-bullet {
    width: 10px !important;
    height: 10px !important;
    background: #fff !important;
}
.swiper-container-horizontal>.swiper-pagination-bullets {
    bottom: 10px;
}
.swiper-button-next, .swiper-button-prev {
    color: #fff !important;
	background: #f52549;
    padding: 6% 3%;
}

/*-------------- 出勤 -----------------*/

.col-md-8 .girl .krc_calendar {
    width: 95%;
    clear: both;
    margin: 10% 5%;
}
.col-md-8 .girl .krc_calendar h2 {
	font-size: 18px;
	margin: 0px;
}
.col-md-8 .girl .calendar_wra	{
   border-left: 2px solid #C030C0
	height: 140px;
	font-size: 18px;
}
.col-md-8 .girl .krc_calendar dl {
	width: 14.2%;
   float: left;
	border-right: 2px solid #C030C0
}
.col-md-8 .girl .krc_calendar dt {
	height: 70px;
	border-top: 2px solid #C030C0
	border-bottom: 2px solid #C030C0
	text-align: center;
	padding: 10px;
	display: -webkit-flex;
 display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; /* 横方向中央揃え */
}
.col-md-8 .girl .krc_calendar dd {
	border-bottom: 2px solid #C030C0
	text-align: center;
	height: 70px;
	padding: 10px;
	display: -webkit-flex;
 display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; /* 横方向中央揃え */
}

/* ｋｒｃ-cast-manager
---------------------------------------- */
.schedule-wrapper header {
	margin-top: 50px;
}

.schedule-wrapper .dayschedule {
    margin: 30px;
	font-size: 18px;
    letter-spacing: 2px;
}
.krc_calendar {
	margin: 0 auto;
}
.krc_calendar ul { 
	width: calc(100% - 10px);
    display: flex;
    justify-content: center;
    margin: 0 auto 20px auto;
	text-align: center;
	padding: 0;
}
.krc_calendar li {
	width: calc(100vw / 7 - 3px);
    height: calc(100vw / 7 - 5px);
    max-width: 60px;
    max-height: 60px;
    min-width: 36px;
    min-height: 36px;
    font-size: 80%;
    line-height: 1.2;
	background: #fff;
	border-radius: 50%;
	margin: 0 2px;
}
.krc_calendar li a{
	display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    justify-content: center;
    line-height: 1.2;
    text-decoration: none;
    width: 100%;
    height: 100%;
	border-radius: 50%;
}
.krc_calendar .target {
	background: rgb(245 37 73 / 60%);
}
.krc_calendar .target a {
    color: #fff;
}
.krc_calendar .sat a, .krc_calendar .sat a:visited{
	color:#0000aa;
}
.krc_calendar .sun a, .krc_calendar .sun a:visited{
	color:#aa0000;
}
.krc_calendar li a:hover {
    color: #fff;
	background: #bbb;
	border-radius: 50%;
}
.krc_calendar .sat a:hover {
    color: #fff;
	background: #0000aa;
	border-radius: 50%;
}
.krc_calendar .sun a:hover {
    color: #fff;
	background: #aa0000;
	border-radius: 50%;
}
.krc_calendar .sat a{
    color: #fff!important;
	background: #0099ff;
    border-radius: 50%;
}
.krc_calendar .sun a{
    color: #fff!important;
	background: #ff5964;
    border-radius: 50%;
}
/*-- 個別ページカレンダー --*/
.col-md-10 .girl .krc_calendar .sat{
	color: #00a;
}
.col-md-10 .girl .krc_calendar .sun{
	color: #a00;
}
/*------ 個別出勤 ------*/	
	
.col-md-10 .girl .krc_calendar {
    width: 100%;
    padding-bottom: 20px;
	background: rgba(255,255,255, 0.1);
}	
.col-md-10 .girl .calendar_wra	{
    display: flex;
    width: 94%;
    margin: 0 auto;
}
.col-md-10 .girl .krc_calendar dl {
	width: calc(100% / 7);
    padding: 0 1%;
	line-height: 2.2em;
	text-align: center;
}
.col-md-10 .girl .krc_calendar dt {
	padding: 2% 5% 0%;
	height: 50px;
}	
.col-md-10 .girl .krc_calendar dd {
	padding: 2% 12% 0%;
	min-height: 72px;
}

/*-------------------------------------------------  girl 終わり ----------------*/




/*footer
---------------------------------------- */
#footer {
	background: rgb(255 255 255 / 90%);
    margin: 0 auto;
	border-top: 1px #efefef solid;
}
#footer #logo {
	width: 30%;
    margin: 0 auto;
}

#footer .wrap {
  padding: 30px 0 100px;
	line-height: 1.4;
	text-align: center;
	border-top: 1px #efefef solid;
}
.footer_menu {
	max-width: 1100px;
	margin: 0 auto;
}
.footer_menu ul {
    overflow: hidden;
    text-align: center;
    font-size: 16px;
}
.footer_menu ul li {
    display: inline-block;
    margin-top: 1px;
	padding: 1rem;
	background: #fff;
}

/*--------------- tel reserve _footer ----------*/
/*メニューをページ下部に固定*/
#sp-fixed-menu{
	display: block;
	width: 100%;
    vertical-align: top;
    line-height: 1.4;
    text-align: center;
    position: fixed;
    z-index: 997;
    bottom: 5px;
}
.pagetop.show {
    visibility: visible;
    opacity: 1;
}
/*メニューを横並びにする*/
#sp-fixed-menu ul{
    display: flex;
    justify-content: space-between;
   list-style: none;
   padding:0;
   margin:0;
   width: 100%;
}

#sp-fixed-menu li{
    justify-content: center;
    align-items: center;
    width: calc(100%/2 - 3px);
    padding:0;
    margin:0;
	border-radius: 5px;
}

/*左側メニューを色に*/
#sp-fixed-menu li:first-child{
       background: #fa6775;
}

/*右側メニューを色に*/
#sp-fixed-menu li:last-child{
   background: #9bc01c;
}

/*ボタンを調整*/
#sp-fixed-menu li a{
   color: #fff!important;
   display:block;
   width: 100%;
   padding: 8px 3px 3px;
}

/*-----  Android  /-----*/
.Android #sp-fixed-menu{
	display: block;
   position: fixed;
   width: 83%;
   bottom: 3px;
	left: 3px;
   font-size: 0;
   opacity: 0.9;
   z-index: 99;
}

/*メニューを横並びにする*/
.Android #sp-fixed-menu ul{
   display: flex;
   list-style: none;
   padding:0;
   margin:0;
   width:100%;
}

.Android #sp-fixed-menu li{
   justify-content: center;
   align-items: center;
   width: 50%;
   padding:0;
   margin:0;
   font-size: 14px;
   border-right: 1px solid #fff;
}

/*左側メニューを緑色に*/
.Android #sp-fixed-menu li:first-child{
   background: #005E15;
	width: 65%;
}

/*左側メニューを色に*/
.Android #sp-fixed-menu li:last-child{
   background: #005E15;
	width: 35%;
}

/*ボタンを調整*/
.Android #sp-fixed-menu li a{
   color: #fff!important;
   text-align: center;
   display:block;
   width: 100%;
   padding:3px;
}

/*---------  page-top  ------------*/

.pagetop.show {
    z-index: 999;
}
.pagetop {
    visibility: hidden;
    opacity: 0;
    position: fixed;
    bottom: 68px;
    right: 5px;
    color: #fff;
}
.pagetop span {
    display: block;
    border-radius: 5px;
    background: #5e5e5e;
    width: 50px;
    height: 50px;
    text-align: center;
    line-height: 55px;
    font-size: 36px;
}

/* --------------------------------------------------------------------------------------------------------------
* ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?  レスポンシブ  max-width: 650px
-------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width: 767px) {
.post-content table{
    width: 100%;
    -webkit-overflow-scrolling: touch;
    white-space: normal;
    margin-bottom: 0;
}

}
/*---------  650px  ------------*/

@media screen and (max-width: 650px) {
	
.wrap {
	width:100%;
	overflow-x: hidden;
}
#sidebarMenu {
	right: 0;
    width: 100%;
    transform: translateX(100%);
}
	
	
#content {
    padding-top: 10px
}	
article.page{
    border:none !important;
}
.home .sidebarIconToggle {
    right: 10px;
}
#sp-fixed-menu{
    width: 100%;
    left: 0;
}	
#header_img {
	height: 80px;
}
#header_img h4 {
    bottom: 18%;
    font-size: large;
}	
.title {
    padding: 30px 0 25px;
}
.title img {
    width: 200px;
}

#gnav,
.header_tel {
	display: none;
}

	
.footer_menu ul {
	display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
}
.footer_menu ul li {
    display: inline-block;
    width: calc(100% / 2 - 2px);
}
#footer #logo {
    width: 60%;
}	
	
/*------- top --------*/
	
.home .shutter {
	width:100%;
	background: url(/wp-content/uploads/shutter.png) center center/ cover no-repeat;
}	
.home .shutter2 {
	width:100%;
	animation: cloud 15s ease-in-out 0s 1 normal forwards;
	background: url(/wp-content/uploads/cloud_sp.png) center center/ cover no-repeat;
}	
.top_menu_wra {
    height: 700px;
	background: url(/wp-content/uploads/bg01_sp.jpg) center top no-repeat;
	background-size: cover;
}
.top_menu {
    padding: 0 5% 0;
	top: 12%;
}
.top_menu01 a:active,
.top_menu02 a:active,
.top_menu03 a:active,
.top_menu04 a:active {
	opacity: 0.7;
}
.top_menu img {
    border-radius: 10px;
}	

.cloud_left {
	top: -18%;
    transform: rotate(40deg);
}
.cloud_right {
	top: -18%;
	right: 0;
    transform: rotate(-40deg);
}
.cloud_left1 {
	top: 0;
	left: -10%;
	height: 100vh;
}
.cloud_right1 {
	bottom: 0;
    right: -14%;
	height: 80vh;
}
.cloud_left2 {
	bottom: -18%;
    transform: rotate(-40deg);
}
.cloud_right2 {
	bottom: -18%;
	right: 0;
    transform: rotate(40deg);
}	

.top_sche .cssgrid .girls .cast-icon02 {
    bottom: 138px;
}		
/* newface icon
-----------------------------------*/	

.cast-icon {
    right: 2px;
	width: 20%;
}
.cast-foreigner,
.cast-twitter, 
.cast-report,
.cast-beginner,
.cast-bsky {
    width: 100%;
}
/* twitter
-----------------------------------*/
.linksite_bt {
    width: 90%;
}	
	
.x_cover {
	width: 100%;
}
.x_cover img {
	border-radius: 10px;
}	
	
	
.readmore {
    margin-top: 0;
}
.report {
    width: 80%;
    float: none;
    margin: 10px auto 0;
}
.link_box .banner { 
	width: calc(100%/2 - 2px);
}	
	

/*   system system_top
---------------------------------------- */
	
.sys02 {
    width: 94%;
}	
.title em {
    font-size: 18px;
}	
.sbox dt span .br {
	display: block;
}
.sbox dt span {
	font-size: 18px;
}
.system_con .strong {
    font-size: 1.5em;
	margin-right: 0.2rem;
}	
.system .item {
    padding: 25px 25px;
}
.option .item {
    padding: 25px 20px;
}
.system_con .title img {
    margin: -59px auto 0;
}
.course-list .item.label {
    width: 25%;
}
.card {
	width: 100%;
}
.card p {
	text-align: left;
}	
.system_text p {
		padding: 10px 0%;
	}	
.tokutei {
    width: 100%;
	font-size: 16px;
}
.tokutei tr{
    border-bottom: 1px solid #DDD;
}	
.tokutei th,
.tokutei td	{
	display: block;
    width: 100%;
}

/*--------  girl ---------*/

.girls {
    width: calc(100%/3 - 2px)!important;
}
.newface .girls{
    width: calc(90% / 3 - 2px)!important;
}

.cast-grade ul {
	width: 100%;
}
.cast-grade ul li {
    width: calc(100% / 3 - 5px);
	margin: 5px 0px;
	font-size: 90%;
}
.cast-grade ul li a {
    padding: .6em .5em;
}	
.age18-27 {
	border: 2px solid #49bef1;
}
.age28-47 {
	border: 2px solid #9bc01c;
}
.over48 {
	border: 2px solid #ffd64d;
}
.big-tits {
	border: 2px solid #f52549;
}
.cast-new {
    font-size: 14px !important;
    line-height: 4.2 !important;
    width: 115px !important;
    height: 41px !important;
    top: -9px !important;
    right: -40px !important;
}
	
.cast-icon00 .cast-foreigner,
.cast-icon00 .cast-twitter, 
.cast-icon00 .cast-report,
.cast-icon00 .cast-beginner,
.cast-icon00 .cast-bsky {
	width: 20%;
}
	
/*---------- ?個別ページ -------------*/

.col-md-10 .post-title {
	font-size: 18px;
    font-weight: unset;
	padding-left:10px;
	border-bottom:1px solid #000;
}
.col-md-10 .post-title .title_name {
	float: left;
}
.col-md-10 .post-title .title_text {
	float: left;
    font-size: 14px;
    padding-top: 4px;
}	

.col-md-10 .girl .page_title {
    margin: 10px 0 20px !important;
}	
.col-md-10 .girl .cast-top {
	display: block;
}	
.col-md-10 .girl .cast-photo {
	width: 100%;
	padding: 0 15%;
}
.col-md-10 .girl .cast-pro {
    width: 100%;
    margin-left: 0%;
    padding: 0 0 3%;
}	
.col-md-10 .girl .cast-coment,
.col-md-10 .girl .cast-coment .cast-tx {
    height: initial;
}	
.col-md-10 .girl .cast-meta {
	padding: 5% 0;
}	
.col-md-10 .girl .cast-name {
	font-size: 18px;
	padding: 0;
}
.col-md-10 .girl .cast-size {
	font-size: 18px;
	padding: 0;
}
	
.cast-icon03 .cast-foreigner, .cast-icon03 .cast-twitter, .cast-icon03 .cast-report, .cast-icon03 .cast-beginner {
    width: 36px;
}	
	
/*------ 個別出勤 ------*/	

.col-md-10 .girl .calendar_wra {
    display: block;
    width: 90%;
}	
.col-md-10 .girl .krc_calendar h2 {
	font-size: 18px;
	margin: 0px;
}
.col-md-10 .girl .krc_calendar dl {
	width: 100%;
    margin: 0 0%;
	border-bottom: 1px solid #ccc;
	height: 50px;
	line-height: 2.2em;
}
.col-md-10 .girl .krc_calendar dt {
	padding: 2% 5% 0%;
	float: left;
	height: 50px;
}	
.col-md-10 .girl .krc_calendar dd {
	padding: 2% 0% 0%;
	height: 50px;
}
	
	
.reserve_btn {
    font-size: large;
}	
	
/*------- form  -------*/	
.cast-twi_form {
	display: block;
}
.profile_twitter_box,
.cast-form {
	width: 100%;
}

/*------- twitter --------*/
.profile_twitter_box, .cast-form {
        width: 80%;
        margin: 0 auto;
    }	
	
	
.cast_banner_img {
    margin: 10px auto;
    display: block;
	width: 80%!important;
}
.post-content table{
    width: 100%;
    -webkit-overflow-scrolling: touch;
    white-space: normal;
    margin-bottom: 0;
  }	
	
}/*---------  END 650px  ------------*/


/*=======================================  450px =============================================*/

@media screen and (max-width: 450px) {


.top_menu_wra {
    height: 700px;
}
.top_menu {
}
/*  在籍・出勤・新人　スマホ
=============================================*/
 
.girls {
    width: calc(100%/2 - 2px)!important;
}
.newface .girls{
    width: calc(90% / 2 - 2px)!important;
}
.col-md-10 .new_staff .girls .cast-meta {
	font-size: 16px;
	margin-top: 5%;
}
.col-md-10 .girls .cast-meta {
    font-size: 16px;
}
.col-md-10 .girls .cast-name {
	font-size: 16px;
}

	
.post-loop-wrap .post-thumbnail {
    height: 215px;
    float: none;
    margin-left: 0;
    margin-right: 0;
    text-align: center;
  }
  .post-loop-wrap .post-thumbnail img {
    max-width: 100%;
    height: auto;
    margin: 0 auto;
  }
  .post-loop-wrap .post-title {
    margin-bottom: 0;
  }
  .post-loop-wrap .post-content {
    
  }
  .post-loop-wrap .post-footer {
    display: none;
  }
.post-8 .girls .cast-meta .cast-sc {

}	
/*-------------  schedule ---------------*/	

.krc_calendar ul {
}
.krc_calendar li {
}	
.krc_calendar li a {
}	

	

	
	
  .post-content h2 {
    font-size: 20px;
    margin-top: 30px;
  }
  .post-content h3 {
	  width: 100%;
  }
  .post-content h4 {
    font-size: 18px;
  }
 .post-content table{
    width: 100%;
    -webkit-overflow-scrolling: touch;
    white-space: normal;
    margin-bottom: 0;
  }



	

	
}
