@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Cinzel&display=swap');

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 {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
body {
	font-size: 14px;/* 変更 */
	color: var(--black);
	font-family:  Times New Roman, '游明朝', 'Noto Serif JP', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
	line-height: 1.8;/* 変更 */
	letter-spacing: 2px;
	-webkit-text-size-adjust: 100%;
}
.overflow-x{
    overflow-x: hidden;
}
article,aside,details,figcaption,figure, footer,header,hgroup,menu,nav,section,main {
	display: block;
}
h1, h2, h3, h4, h5, h6, th{
	font-weight: normal;
}
ol,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; text-decoration: none;
}
/*android版クローム　フォントサイズが大きくなる不具合対策*/
p {
	max-height: 999999px;
}
ins {
	background-color: #ff9;/* 変更 */
	color: var(--black);/* 変更 */
	text-decoration: none;
}
mark {
	background-color: #ff9;/* 変更 */
	color: var(--black);/* 変更 */
	font-style: italic;
	font-weight: bold;
}
del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}
img {
	vertical-align: bottom;
}
/* form */
input, select {
	vertical-align: middle;
}
/* float解除 */
header:after,footer:after,section:after,article:after,aside:after,main:after,dl:after,ol:after,li:after {
		display: block;
		clear: both;
		height: 0;
		content: "";
}
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"],
input[type="reset"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  box-sizing: border-box;
  cursor: pointer;
  font-family:  Times New Roman, '游明朝', 'Noto Serif JP', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration,
input[type="reset"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus,
input[type="reset"]::focus {
  outline-offset: -2px;
}
select {
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
}
/****************************************

 common (共通スタイル)

****************************************/
/*ページ全体ふわっと表示*/
body {
	text-align: center;
	animation: fadeIn 3s ease 0s 1 normal;
	-webkit-animation: fadeIn 3s ease 0s 1 normal;
}
@keyframes fadeIn {
0% {opacity: 0}
100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
0% {opacity: 0}
100% {opacity: 1}
}
/*PC版769pxまでSP版786px〜*/
@media screen and (min-width: 769px) {
	.sp{
		display: none !important;
	}
}
@media screen and (max-width: 768px) {
	/*共通*/
	.pc{
		display: none !important;
	}
}
/*PC版769pxまでSP版786px〜*/
@media screen and (min-width: 321px) {
    .br_sp{
        display: none !important;
    }
}
@media screen and (max-width: 320px) {
    /*共通*/
    .br_pc{
        display: none !important;
    }
}
.inner {
	width: 95%;
    max-width: 1000px;
    margin: 0 auto;
}
.inner1200 {
	width: 95%;
    max-width: 1200px;
    margin: 0 auto;
}
.inner800 {
    width: 95%;
    max-width: 800px;
    margin: 0 auto;
}
a, a:hover{
	color: var(--black);
}
/* 見出し */
.contents_title{
    width: 100%;
    padding: 25px 10px;
    /*background: url(../images/img_bgmark.png) center no-repeat;*/
    background-size: 80px 80px;
    font-size: 3rem;
    line-height: 1.2;
    letter-spacing: 0.4rem;
    text-indent: 0.4rem;
    position: relative;
}
.contents_title,
.contents_sub_title {
    width: 95%;
    max-width: 1000px;
    font-size: 36px;
    margin: 0 auto 40px;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 4px;
}
#contents_profile .contents_sub_title {
    width: 95%;
    max-width: 1000px;
    font-size: 30px;
    margin: 0 auto 40px;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 4px;
}
.contents_title .h2_main,
.contents_sub_title .h3_main {
    line-height: 1.2;
}
.gradation{
    background: linear-gradient(to bottom, #f04400, #705a31);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.contents_title .h2_sub,
.contents_sub_title .h3_sub {
    font-size: 14px;
}
.contents_title .h2_sub.brown_txt{
    color: #705a31;
}
.contents_sub_title .h3_main,
.contents_sub_title .h3_sub{
	color: var(--blue2);
}
/*リンクページのフリースペースと、新着情報の画像伸びないための*/
#contents_link .template_box img,
#section_topics img{
	width: auto;
	max-width: 100%!important;
	height: auto!important;
}
#contents_link .template_box{
	text-align: left;
}
/*カラー*/
:root{
    --black: #1a1a1a;
    --blue: #ac5038;
    --blue2: #e0a190;
    --blue-light: #e9cec7;
    --gold: #f7df9d;
}
/*マウスカーソルで選択したテキストの色や背景色*/
::selection {background-color: var(--blue-light);}
/* 文字色 */
.fa-heart, .atten_01, .atten_01 a{color: var(--blue2);}/*メインの青*/
.atten_02, .atten_02 a{color: var(--blue-light);}/*メインの薄い青*/
.atten_03, .atten_03 a{color: #398bd0;}/*スケジュール土曜日の青*/
.atten_04, .atten_04 a{color: #c35f5f;}/*スケジュール日曜日の赤*/
.atten_05, .atten_05 a{color: #c35f5f;}/*注意書きの赤*/
/* 下線 */
.border_01 {
    background: linear-gradient(transparent 55%, var(--blue-light) 55%);
}
/* フォントサイズ */
.fs_08em{font-size: 0.8em;}
.fs_09em{font-size: 0.9em;}
.fs_15em{font-size: 1.5em;}
.fs_18em{font-size: 1.8em;}
/* マージン */
.mb_10{margin-bottom: 10px;}
.mb_20{margin-bottom: 20px;}
.mb_30{margin-bottom: 30px;}
.mb_40{margin-bottom: 40px;}
.mb_60{margin-bottom: 60px;}
.mb_80{margin-bottom: 80px;}
/*********** フォントサイズ **********/
.fs_08em{font-size: 0.8em;}
.ls_01{letter-spacing: 1px;}
/* センタリング */
.center{
	text-align: center;
}
/* リンクアクション */
.link_act_01{
	opacity: 1;
	-webkit-transition: opacity 0.4s linear 0;
	-moz-transition: opacity 0.4s linear 0;
	transition: opacity 0.4s linear 0;
}
.link_act_01:hover{
	opacity: 0.5;
}
/*共通ボタン*/
/*ピンク*/
.btn_positive {
	box-sizing: border-box;
	text-transform: uppercase;
    width: 100%;
    max-width: 300px;
    padding: 16px;
    background: #fff;
    border: 1px solid var(--blue);
    color: var(--blue);
    display: block;
    margin: 40px auto 0;
    cursor: pointer;
    transition:all 0.6s;
}
.btn_positive:hover{
    color: #fff;
    background: var(--blue);
    border: 1px solid #fff;
}
/*グレー*/
.btn_negative{
	text-transform: uppercase;
	width: 200px;
    padding: 16px;
    background: #fff;
    border: 1px solid #ccc;
    color: #ccc;
    display: block;
    margin: 20px auto 0;
    cursor: pointer;
    transition:all 0.6s;
}
.btn_negative:hover{
    color: #fff;
    background: #ccc;
    border: 1px solid #fff;
}
/* テキスト枠装飾 */
.box_blue{
	padding: 30px 20px;
	background-color: var(--blue-light);
}
.box_blue_line{
	padding: 40px 30px;
	border: 1px solid var(--blue-light);
	background-color: #fff;
}
/* テーブル 1（それぞれの表の型） */
.table_01 {
	width: 100%;
	border-spacing: 0;
	text-align: left;
}
.table_01 th, .table_01 td {
	width: 100%;
    display: block;
    padding: 16px;
    box-sizing: border-box;
}
.table_01 th {
	font-size: 16px;
	background: var(--blue-light);
	vertical-align: middle;
}
.table_01 td {
	background: #fff;
	vertical-align: middle;
	margin-bottom: 10px;
}
/* テーブル 2（フォーム） */
.table_02 {
	width: 100%;
	border-spacing: 0;
	text-align: left;
}
.table_02 th, .table_02 td {
	width: 100%;
    display: block;
}
.table_02 th {
	font-size: 16px;
	vertical-align: middle;
	margin-bottom: 4px;
}
.table_02 td {
	background: #fff;
	vertical-align: middle;
	margin-bottom: 20px;
}
/* フォーム */
form input[type="text"],
form input[type="email"],
form textarea,
form select {
	-webkit-appearance: none;
    outline: none;
    color: #666;
    border-radius: 0;
    border: 1px solid #ccc;
    -webkit-transition: all .3s;
    transition: all .3s;
    background: rgba(255,255,255,0.8);
    width: 100%;
    font-size: 14px;
}
form input,
form textarea {
    width: 100%;
    margin: 0 auto;
    padding: 15px 10px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
form select {
    padding: 15px 10px;
}
::placeholder {
  color: #ccc;
  font-family: Times New Roman, '游明朝', 'Noto Serif JP', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
}
.checkbox-input {
    display: none;
}
.checkbox-parts {
    font-size: 14px;
    cursor: pointer;
    position: relative;
    padding: 15px 33px 15px 50px;
    transition: .3s;
    border: 1px solid #ccc;
    display: inline-block;
    line-height: 1;
    margin-bottom: 10px;
    width: 16%;
}
.checkbox-input:checked+.checkbox-parts {
    background: #fff;
    border: 1px solid var(--blue);
}
.checkbox-parts::before {
    content: "";
    display: block;
    left: 20px;
    width: 14px;
    height: 14px;
    border-radius: 15px;
    border: 1px solid #ccc;
    position: absolute;
    background: #fff;
}
.checkbox-parts::after {
    content: "";
    display: block;
    position: absolute;
    top: 18px;
    left: 23px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    transition: .2s;
    display: block;
}
.checkbox-input:checked+.checkbox-parts::after {
    background: var(--blue);
}
.day_time_area{
	display: flex;
}
.day_time {
    width: 40%;
    display: flex;
    margin-top: 1rem;
}
.day_time .time_h{
	margin-right: 10px;
}
.day_time .time_h,
.day_time .time_m {
    line-height: 47px;
}
.day_time .select01.cp_sl02 {
    width: 96%;
    display: flex;
    align-items: center;
}
.select-wrap {
    position: relative;
}
.select-wrap:before {
    z-index: 1;
    position: absolute;
    top: 20px;
    right: 18px;
    display: block;
    content: "";
    width: 6px;
    height: 6px;
    border-right: 1px solid #676767;
    border-bottom: 1px solid #676767;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}
.requier {
    padding: 3px 8px;
    border-radius: 2px;
    background: #c35f5f;
    color: #fff;
    font-size: 10px;
    letter-spacing: 1px;
    vertical-align: text-bottom;
}
/* テーブル3 （システム / スケジュール表部分）*/
.table_03 {
	width: 100%;
	border: 1px solid var(--blue-light);
	border-spacing: 0;
	text-align: center;
}
.table_03 th, .table_03 td {
	padding: 16px 10px;
	vertical-align: middle;
}
.table_03 th {
	background: var(--blue-light);
	border-right: 1px solid #fff;
	vertical-align: top;
	font-size: 12px;
}
.table_03 th:last-of-type {
	border-right: 1px solid var(--blue-light);
}
.table_03 td {
	background: #fff;
	border-right: 1px solid var(--blue-light);
	text-align: center;
}
/* テキストボックス 1 */
.txt_box_01{
	padding: 20px;
	border: 1px solid var(--blue-light);
	text-align: left;
}
/* 女の子のボックス */
.cast_box{
	display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.cast_box li{
    width: calc((100% - 96px) / 3);
	margin: 0 10px 20px;
    border: 2px solid var(--gold);
    border-image: linear-gradient(30deg, rgba(112, 90, 49, 1) 0%, rgba(255, 243, 220, 1) 50%, rgba(112, 90, 49, 1) 100%);
    border-image-slice: 2;
	background-color: #fff;
	position: relative;
}
.cast_box li .img_box {
    width: 93%;
    margin: 3% auto;
    position: relative;
}
.cast_box li .img_box .cast_img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-transition: opacity 0.35s;
    transition: opacity 0.35s;
}
.cast_box li .txt_box .time{
	padding: 8px 4px;
    color: var(--gold);
    background: var(--blue);
/*    background: linear-gradient(90deg, rgba(206, 206, 206, 1) 0%, rgba(242, 242, 242, 1) 50%, rgba(206, 206, 206, 1) 100%);*/
}
.cast_box li .txt_box .time .free_text{
	border-top: 1px solid var(--gold);
    padding: 2px 4px 0;
    margin: 0 10px;
}
.cast_box li .icon_x{
	position: absolute;
	bottom: 4px;
	right: 4px;
    width: 40px;
}
.cast_box li .icon_exp{
	position: absolute;
	bottom: 4px;
	left: 4px;
    width: 40px;
}
.cast_box li .icon_new{
	width: 60px;
	position: absolute;
	top: -20px;
    left: -20px;
}
.cast_box li .txt_box{
	margin: 6% 3% 3%;
	overflow-wrap: break-word;
}
.cast_box li .name_size{
	margin-bottom: 6%;
}
.cast_box li .name_size .name{
	margin-bottom: 4px;
}
.cast_box li .name_size .name,
.cast_box li .name_size .size{
	line-height: 20px;
}
.cast_box li .img_box .hover_act {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgb(168 109 109 / 60%);
    -webkit-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
}
#section_schedule_today .img_box object,
#section_newface .img_box object,
#section_covergirl .img_box object,
#contents_cast .img_box object,
#contents_schedule .img_box object{
    font-size: 11px;
}
.hover_act .caption {
    font-size: 1.2rem;
    text-align: center;
    color: #fff;
    position: absolute;
    top: 40%;
    right: 0;
    left: 0;
    margin: auto;
    width: 80%;
    height: 3.2rem;
}
.cast_box li:hover .hover_act {
	opacity:1;
}

/*出勤店舗アイコン*/
.icon_shop{
  font-size: 14px;
  padding: 2px 0;
  color: #fff;
  margin-top: 4px;
}
@media screen and (max-width: 414px){
    .icon_shop{
      padding: 1px 0 0;
    }
}
.profile_box_schedule .icon_shop{
  padding: 5px 0 4px;
}

/* リンクボックス */
.list_link_box{
	font-size: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.list_link_box li{
	margin: 5px;
    display: inline-block;
}
.list_link_box li span{
    display: none;
}
.list_link_box li  img{
	width: 100%;
}
/*

ヘッダー

 */
header {
	width: 100%;
    position: fixed;
    top: 0;
    z-index: 100;
/*    background: rgba(255, 255, 255, 0.8);*/
    background: rgba(209,154,139,0.8);
}


/* グローバルナビ */
header nav.pc {
    height: 80px;
}
@media (max-width: 1480px){
    header nav.pc {
        height: 60px;
    }
}
header nav{
	display: flex;
	justify-content: space-between;
    align-items: center;
	padding: 0 40px;
}
header nav ul {
	display: flex;
	text-transform: uppercase;
	align-items: center;
}
header .nav_left .logo img{
	width: 100%;
	max-width: 300px;
	transition: opacity .6s;
}
header .nav_left .logo img:hover{
	opacity: 0.5;
}
header nav ul.nav_right li {
	width: 150px;
	height: 80px;
	line-height: 100px;
	/* display: table-cell; */
    display: flex;
    align-items: center;
    justify-content: center;
	font-size: 13px;
}
header nav ul.nav_right li a {
	width: 140px;
    /* height: 100%; */
    letter-spacing: 1px;
    line-height: 1.4;
    display: inline-block;
    font-size: 18px;
    color: #fff;
    text-align: center;
    transition: 0.8s ease;
    position: relative;

}
header nav .nav_twitter a {
	color: #00afcc;
}
header .nav li a span.jp {
	display: inline;
	font-size: 18px;
}
header .nav li a:hover {
	color: var(--blue2);
}
/*=========================
SP時のドロワーメニュー
=========================*/
header .nav_sp{
    display: none;
    padding: 0 20px;
    height: 60px;
    position:relative;
    z-index: 99999;
    align-items: center;
}
header .nav_sp .logo img {
    position: absolute;
    top: 5px;
    left: 12px;
    max-width: 240px;
}
#drawer .container {
    margin: 0 auto;
    width: 100%;
    max-width: 480px;
    min-height: 600px;
    position: relative;
    overflow: hidden;
    -webkit-transform: scale(1);
    display: block;
    position:absolute;
    right: 0;
    margin-top: -18px;
    pointer-events: none;
}
#drawer .u_txt{
    line-height: 20px;
    font-size: 18px;
    letter-spacing: 1.2px;
    display: inline-block;
    color: #eb0039;
}
#drawer .menu-trigger,#drawer .close-trigger {
    position: absolute;
    top: 35px;
    right: 16px;
    display: block;
    width: 55px;
    height: 38px;
    z-index: 333;
    pointer-events: auto;
    line-height: 0.8;
}
#drawer .menu-trigger:hover .menu-trigger-bar:before,
#drawer .close-trigger:hover .menu-trigger-bar:before {
    width: 100%;
}
#drawer .menu-trigger:hover .close-trigger-bar:before,
#drawer .close-trigger:hover .close-trigger-bar:before {
    width: 100%;
}
#drawer .close-trigger {
    z-index: 5;
    top: 50px;
}
#drawer .menu-trigger-bar {
    display: block;
    width: 80%;
    height: 3px;
/*    background-color: var(--black);*/
    background-color: #eb0039;
    margin-bottom: 4px;
    transform: rotate(-45deg);
    position: relative;
}
#drawer .menu-trigger-bar:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 0%;
    height: 90%;
/*    background-color: var(--blue);*/
    background-color: #fff;
    transition: all 0.3s cubic-bezier(0.55, 0, 0.1, 1);
}
#drawer .menu-trigger-bar.top {
    width: 45%;
    margin-left: 12%;
}
#drawer .menu-trigger-bar.middle:before {
    left: auto;
    right: 0;
}
#drawer .menu-trigger-bar.middle {
    margin-left: 10%;
}
#drawer .menu-trigger-bar.bottom {
    width: 45%;
    margin-left: 45%;
}
#drawer .close-trigger-bar {
    display: block;
    width: 90%;
    height: 3px;
    background-color: #d35271;
    position: relative;
}
#drawer .close-trigger-bar:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 0%;
    height: 100%;
    background-color: #d35271;
    transition: all 0.3s cubic-bezier(0.55, 0, 0.1, 1);
}
#drawer .close-trigger-bar.left {
    transform: translateX(100px) translateY(-100px) rotate(-45deg);
}
#drawer .close-trigger-bar.right {
    transform: translateX(-100px) translateY(-100px) rotate(45deg);
    top: -3px;
}
#drawer .inner-container, .menu-container {
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    pointer-events: none;
}
#drawer .inner-container {
    z-index: 20;
}
#drawer .menu-container {
    display: flex;
    align-items: flex-start;
    align-content: center;
    justify-content: center;
}
#drawer .menu {
    text-transform: uppercase;
    font-size: 16px;
    padding: 0;
    padding-top: 70px;
    max-width: 300px;
    /*↓リンククリックの範囲の関係で消しちゃダメ
    #drawer .containerの範囲と合わせる*/
    pointer-events: auto;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    align-items: center;
}
#drawer .menu li {
    padding: 9px;
    width: 100%;
}
#drawer .menu li .jp{
    font-size: 20px;
}
#drawer .menu a {
    text-decoration: none;
    color: #eb0039;
    position: relative;
    line-height: 25px;
    font-size: 18px;
    width: 150px;
    -webkit-transition: 0.6s;
    -moz-transition: 0.6s;
    -o-transition: 0.6s;
    -ms-transition: 0.6s;
    transition: 0.6s;
}
#drawer .menu a:hover{
    color: var(--blue-light);
    -webkit-transition: 0.6s;
    -moz-transition: 0.6s;
    -o-transition: 0.6s;
    -ms-transition: 0.6s;
    transition: 0.6s;
}
#drawer .menu a:hover:before {
    opacity: 1;
    transform: translateX(0px);
}
#drawer .menu-bg {
    position: absolute;
    display: block;
    width: 200%;
    left: -53%;
    top: -25%;
    height: 65%;
    background-color: rgb(229 190 190 / 90%)!important;
}
#drawer .menu-bg.top {
    left: -33%;
    top: -110px;
    transform: rotate(-45deg) translateY(-152%);
}
#drawer .menu-bg.middle {
    top: 26%;
    left: -53%;
    transform: rotate(-45deg) scaleY(0);
}
#drawer .menu-bg.bottom {
    top: 133%;
    transform: rotate(-45deg) translateY(25%);
    left: 18px;
}
/*///////*/

/*ドロワーの下の方*/
#drawer .btn_box i{
    margin-right: 3px;
}
#drawer .menu .btn1 a{
    line-height: 37px;
}
/*#drawer .d_recruit .btn1{
    border: 1px solid #fff;
    margin-bottom: 4px;
}
#drawer .d_recruit .btn_eff1{
     border: 1px solid #f8c0b9; 
     background: #fff; 
}*/
#drawer .menu .f_snsicon{
    text-align: right;
}
#drawer .menu .f_snsicon a{
    padding: 0;
    width: auto;
}
#drawer .drawer_info{
    color: #bcbcbc;
    margin: 20px 0;
    text-align: center;
}
#drawer .drawer_info span{
    font-size: 20px;
}
#drawer .drawer_info a{
    width: 100%;
    max-width: 300px;
    padding: 0;
    line-height: 35px;
}
#drawer .drawer_info .open{
    line-height: 20px;
    margin-top: 35px;
}
#drawer .drawer_info .reception{
    font-size: 14px;
}
/* パンくずリスト */
.breadcrumbs {
	text-transform: uppercase;
}
.breadcrumbs ol li {
    display: inline-block;
}
.breadcrumbs ol li:before {
	content: "\f105";
	font-family: "Font Awesome 5 Free";
  	font-weight: 900;
	display: inline;
	margin: 0 8px 0;
}
.breadcrumbs ol li:first-child:before {
	margin: 0;
	content: "";
}
.breadcrumbs ol li a:hover {
	transition: 0.6s;
}
.breadcrumbs ol li a:hover {
	color: #fff;
}
/* フッターのSNS */
#footer_sns{
    display: flex;
    justify-content: center;
    margin: 40px 0;
}
#footer_sns a img {
    width: 30px;
    margin: 0 10px;
}

/*SP版追従ボタン*/
#bottom_nav{
	display: none;
}
/*

コンテンツ

*/
main {
	margin: 0 auto;
	max-width: 1920px;
	width: 100%;
}
/*

フッター

*/
footer {
	background-color: #d19a8b;
	color: var(--gold);
	padding: 80px 0 80px;
}
footer a{
	color: var(--gold);
	transition: 0.6s;
}
footer a:hover{
	color: var(--blue-light);
}
footer .logo img{
	width: 100%;
	max-width: 250px;
}
footer .list_link_box {
	margin-bottom: 60px;
}
footer .footer_bnr{
    margin: 10px;
    font-size: 10px;
}
footer .footer_bnr img{
    width: 100%;
    height: auto;
    max-width: 468px;
}
footer .bnr_on{
    display: block;
}
footer .bnr_hide{
    display: none;
}
/* 電話番号&営業時間 */
footer .inner .info_box {
	display: flex;
    flex-direction: column;
    text-align: center;
    padding: 10px 0;
    line-height: 1.3;
    letter-spacing: 1px;
    width: 100%;
    padding: 40px 0;
}
footer .inner .info_box li {
	display: table-cell;
	line-height: 24px;
}
footer .inner .info_box li span{
	margin-right: 6px;
}
footer_link {
	text-align: center;
	font-size: 12px;
}
footer_link a {
	text-decoration: underline;
	text-decoration-color: #fff;
}
footer .inner .info_box li:hover, 
footer_link a:hover {
	color: #fff
}
footer_txt{
	margin: 10px;
}
/******************************
******************************
アニメーション
******************************
******************************/
/* ふわっ */
.fadeUp{
    animation-name:fadeUpAnime;
    animation-duration:1s;
    animation-fill-mode:forwards;
    opacity:0;
}
@keyframes fadeUpAnime{
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeUpTrigger{
    opacity: 0;
}
/*背景アニメーション*/
.bg_animation {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
}
.bg_animation:after {
    width: 100%;
    height: 100%;
    background: #fff;
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    -webkit-transition: 1.4s ease-in-out;
    transition: 1.4s ease-in-out;
}
.bg_animation.on:after {
    width: 0%;
}
/*文字アニメーション*/
.eachTextAnime span{
    opacity: 0;
}
.eachTextAnime.appeartext span{
    animation:text_anime_on 1s ease-out forwards;
}
@keyframes text_anime_on {
  0% {opacity:0;}
  100% {opacity:1;}
}
/*ローディングアニメーション*/
#splash {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 999;
    background:#fff;
    text-align:center;
}
#splash_logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 400px;
}
#splash_logo img {
    width:100%;
}
/******************************
トップページ
******************************/
/*スリック*/
.slick-dots {
    bottom: -80px;
    display: flex;
    justify-content: center;
}
.slick-dots li{
	width: auto!important;
	background-color: transparent;
	border: none;
}
#section_event .slick-slider .slick-list{
    border: 2px solid var(--gold);
    border-image: linear-gradient(30deg, rgba(112, 90, 49, 1) 0%, rgba(255, 243, 220, 1) 50%, rgba(112, 90, 49, 1) 100%);
    border-image-slice: 2;
    margin-bottom: 20px;
}
.slick-dots li.slick-active button {
    background: var(--blue);
}
.slick-dots li button {
    width: 10px;
    height: 10px;
    display: inline-block;
    border-radius: 100%;
    background: #ccc;
}
.slick-dots button {
    margin: 0;
    border: none;
    background: none;
    font-size: 0; 
    padding: 0;
}
.slick-prev:before {
    content: none;
}
#section_newface .slick-track,
#section_covergirl .slick-track {
	padding-top: 13px;
}
/* メインビジュアル */
.full div {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  height: 100vh;
  margin: 0;
}

#mainvisual{
    padding: 80px 0 0;
}
#mainvisual .main_txt{
	position: absolute;
    top: 50%;
    right: 20%;
    transform: translateY(-50%) translateX(-20%);
    -webkit- transform: translateY(-50%) translateX(-20%);
    font-size: 30px;
    z-index: 10;
    writing-mode: vertical-rl;
    text-align: left;
    height: max-content;
}
#mainvisual .main_txt .main_txt_01{
	margin-left: 8px;
}
#mainvisual .main_txt .main_txt_02{
	margin-top: 40px;
}
#mainvisual .main_txt .main_txt_02 span.pink_txt{
	color: var(--blue);
	background-color: initial;
}
#mainvisual .main_txt .main_txt_01 span.pink_back,
#mainvisual .main_txt .main_txt_02 span.pink_back{
	display: inline-block;
    background: -moz-linear-gradient(top, rgba(202, 205, 213, 0.8), rgba(22, 30, 58, 0.8));
    background: -webkit-linear-gradient(top, rgba(202, 205, 213, 0.8), rgba(22, 30, 58, 0.8));
    background: linear-gradient(to bottom, rgba(202, 205, 213, 0.8), rgba(22, 30, 58, 0.8));
    color: #fff;
  	padding: 20px 5px;
}
#mainvisual .main_txt .main_txt_02 span.pink_back{
	padding: 20px 5px 5px 5px;
}
/* サブビジュアル */
.content{
	padding-bottom: 100px;
}
.subvisual{
	width: 100%;
	height: 30vh;
	margin: 0 0 80px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.subvisual .contents_title{
	width: 100%;
	background: none;
	font-size: 40px;
	line-height: 1.2;
	margin: 0 auto;
}
.contents_title_main{
    display: inline-block;
    position: relative;
}
.subvisual .back_txt{
    position: absolute;
    display: inline-block;
    white-space: nowrap;
    font-size: 6rem;
    color: rgba(47, 60, 87, 0.2);
    letter-spacing: 2rem;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    overflow-x: hidden;
}
.subvisual .h2_main{
	letter-spacing: 18px;
	margin-left: 18px;
}
.subvisual .h2_sub{
	font-size: 20px;
    margin-top: 20px;
}
/*各ページサブビジュアル設定*/
.subvisual{
	background: url(../images/bg_subvisual.jpg) 0 0 no-repeat;
	background-size: cover;
    overflow-x: hidden;
}
/* コンセプト　*/
#section_concept{
    padding: 80px 0;
    background: url(../images/bg_01.jpg) 0 0 no-repeat;
}
#section_concept .concept_box{
    text-align: center;
    border: 2px solid var(--gold);
    border-image: linear-gradient(30deg, rgba(112, 90, 49, 1) 0%, rgba(255, 243, 220, 1) 50%, rgba(112, 90, 49, 1) 100%);
    border-image-slice: 2;
    background: #fff;
    padding: 40px;
    position: relative;
    z-index: 1;
}
#section_concept .concept_box .bg_animation{
    background: url(../images/bg_03.jpg) 0 0 no-repeat;
    background-size: cover;
    background-position: center;
}
#section_concept .concept_box .concept_txt{
    background: rgba(255,255,255,0.9);
    padding: 30px;
    letter-spacing: 1px;
    outline: solid 2px rgba(255, 255, 255, 0.9);
    outline-offset: 3px;
    font-size: 16px;
}
#section_concept .concept_box span{
	color: var(--blue2);
	font-size: 20px;
}
/*イベント*/
#section_event{
    width: 100%;
    height: 100%;
    padding: 80px 0;
    position: relative;
}
#section_event .bg_animation{
    background: url(../images/bg_02.jpg) 0 0 no-repeat;
    background-size: cover;
}
#section_event ul{
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}
#section_event button{
	margin: 10px 10px 20px;
}
#section_event .slick-slide{
	width: 800px;
}
/*スライドイベント*/
#section_slide_event{
    padding: 80px 0 40px;
    background: url(../images/bg_01.jpg) 0 0 repeat;
}
#section_slide_event ul{
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}
#section_slide_event button{
	margin: 10px 10px 20px;
}
#section_slide_event .slick-slide{
	width: 800px;
}
#section_slide_event .slick-slider .slick-list{
    margin-bottom: 20px;
}
/* 本日の出勤情報　*/
#section_schedule_today{
	padding: 40px 0 80px;
    background: url(../images/bg_01.jpg) 0 0 repeat;
	/*background: #fff;*/
}
#section_schedule_today .contents_title {
    margin: 0 auto 45px;
}
/* Twitter */
#section_twitter{
    width: 100%;
    height: 100%;
    padding: 80px 0;
    position: relative;
}
#section_twitter .bg_animation{
    background: url(../images/bg_04.jpg) 0 0 no-repeat;
    background-size: cover;
}
#section_twitter .frame {
    border: 1px solid #cecece;
    border-image: linear-gradient(to bottom, rgba(206, 206, 206, 1) 0%, rgba(242, 242, 242, 1) 50%, rgba(206, 206, 206, 1) 100%);
    border-image-slice: 1;
    background: rgba(255,255,255,0.8);
    height: 400px;
    -ms-overflow-style: none;
    overflow-y: scroll;
}
/* ピックアップ */
#section_covergirl {
	padding: 80px 0;
	background: url(../images/bg_01.jpg) 0 0 no-repeat;
}
/* ニューガールズ */
#section_newface{
    width: 100%;
    height: 100%;
    padding: 80px 0;
    position: relative;
}
#section_newface .bg_animation{
    background: url(../images/bg_02.jpg) 0 0 no-repeat;
    background-size: cover;
}
/*入店日を表示する際の記述*/
/*.cast_box li .txt_box .entry_day {
	color: #fff;
    padding: 8px 4px;
    background-color: var(--blue-light);
    margin-bottom: 4px;
}*/
/*料金*/
#section_system{
	padding: 80px 0;
    background: url(../images/bg_01.jpg) 0 0 repeat;
}
#section_system .system_img,
#contents_system .system_img{
    margin-bottom: 10px;
}
#section_system .frame,
#contents_system .frame{
	border: 2px solid var(--gold);
    border-image: linear-gradient(30deg, rgba(112, 90, 49, 1) 0%, rgba(255, 243, 220, 1) 50%, rgba(112, 90, 49, 1) 100%);
    border-image-slice: 2;
    background: #fff;
	padding: 20px 60px;
    margin-bottom: 40px;
}
#section_system .frame:last-of-type,
#contents_system .frame:last-of-type{
    margin-bottom: 0;
}
.table_system{
	width: 100%;
}
.table_system th,
.table_system td{
	width: 32%;
	text-align: center;
	font-size: 20px;
	line-height: 1.2;
	padding: 15px 0;
    vertical-align: middle;
}
.table_system td.pc{
	font-size: 16px;
	color: #626262;
}
.system_img img{
	width: 100%;
}
.border {
    display: flex;
    align-items: center;
}
.border:before,
.border:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #666;
}
.border:before {
    margin-right: 1rem;
}
.border:after {
    margin-left: 1rem;
}
.system_h4{
    color: var(--blue2);
	text-align: center;
	font-size: 28px;
}
.system_h5{
	text-align: center;
	font-size: 20px;
	color: var(--blue);
}
/* 新着情報 */
#section_topics{
    width: 100%;
    height: 100%;
    padding: 80px 0;
    position: relative;
}
#section_topics .bg_animation{
    background: url(../images/bg_02.jpg) 0 0 no-repeat;
    background-size: cover;
}
#section_topics article {
    text-align: left;
    margin-bottom: 40px;
}
#section_topics article h3{
    line-height: 1.2;
    font-size: 2em;
    font-size: 20px;
    padding: 10px 0;
    margin: 0.6em auto;
    width: 100%;
    border-bottom: 1px solid var(--gold);
    border-image: linear-gradient(90deg, rgba(112, 90, 49, 1) 0%, rgba(255, 243, 220, 1) 50%, rgba(112, 90, 49, 1) 100%);
    border-image-slice: 1;
    color: var(--blue2);
}
#section_topics article h3 time {
    font-size: initial;
    color: initial;
}
#section_topics article .topics_txt {
	display: none;
	padding: 15px;
	background: #fff;
}
#section_topics .btn_positive_area{
    display: flex;
    justify-content: center;
}
#section_topics .btn_positive {
    width: 30%;
    margin: 40px 10px 0;
}
#section_topics .topics_outer {
    background: #fff;
    padding: 10px;
}
#section_topics article h3,
#section_topics article time{
    text-align: center;
    display: block;
}
#section_topics .topics_inner {
    -webkit-box-sizing: border-box;  /*webkit系*/
    -moz-box-sizing: border-box;  /*Firefox*/
    box-sizing: border-box;
    padding: 20px;
    border: 2px solid var(--gold);
    border-image: linear-gradient(30deg, rgba(112, 90, 49, 1) 0%, rgba(255, 243, 220, 1) 50%, rgba(112, 90, 49, 1) 100%);
    border-image-slice: 2;
    width: 100%;
}
/* コンテンツの高さとオーバーレイ */
.content_more {
    height: 450px; /* 閉じている状態の初期高さ */
    width: 100%;
    overflow: hidden;
    position: relative;
    transition: height 0.5s ease-in-out;
}
.content_more.open {
    height: auto; /* 開いた状態で高さを自動に設定 */
}
.content_more .overlay {
    transition: opacity 1s ease-in-out;
    opacity: 1;
    pointer-events: none;
    background: linear-gradient(rgba(255, 255, 255, 0), #fff);
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 40%;
}
.content_more.open .overlay {
    opacity: 0;
}
/* ボタンのスタイル */
#section_topics .topics_inner #open {
    box-sizing: border-box;
    text-transform: uppercase;
    margin: 40px 10px 0;
    width: 30%;
    max-width: 40%;
    padding: 10px;
    background: #eee;
    color: var(--black);
    font-family: serif;
    border-radius: 0;
    border: 0;
    display: block;
    cursor: pointer;
    transition: all 0.6s;
}

#section_topics .topics_inner #open:hover {
    opacity: .6;
}

@media (max-width: 768px) {
    #section_topics .btn_positive,
    #section_topics .topics_inner #open {
        width: 40%;
        margin: 40px 10px 0;
    }
}

/*アクセス*/
#section_access{
	padding: 80px 0;
    background: url(../images/bg_01.jpg) 0 0 no-repeat;
}
#section_access .access_box{
	border: 1px solid var(--blue);
    background: #fff;
	padding: 20px;
}
#contents_access .shop_box_map {
    margin-bottom: 40px;
}
/*クレジット決済*/
#section_credit{
	padding: 40px 0;
	background: url(../images/bg_04.jpg) 0 0 no-repeat;
    background-size: cover;
}
#section_credit img{
	width: 100%;
	max-width: 600px;
}
#section_credit .btn_credit{
	box-sizing: border-box;
    text-transform: uppercase;
    width: 100%;
    padding: 16px;
    background: #fff;
    display: block;
    margin: 10px auto 0;
    cursor: pointer;
    transition: all 0.6s;
    position: relative;
}
#section_credit .btn_credit:after{
	width: 0.3rem;
	height: 0.3rem;
	margin-top: -0.3rem;
	border-top: 0.1rem solid var(--black);
	border-right: 0.1rem solid var(--black);
	position: absolute;
	top: 50%;
	right: 1rem;
	content: '';
	z-index: 2;
    transition: all 0.6s;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#section_credit .btn_credit:hover {
    color: #fff;
    background: var(--blue);
}
#section_credit .btn_credit:hover:after {
    border-top: 0.1rem solid #fff;
	border-right: 0.1rem solid #fff;
}
#section_credit .credit_box{
    margin-bottom: 40px;
}
/*バナー*/
#section_bnr ul.link_bnr {
	background-size: cover;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}
#section_bnr ul.link_bnr li {
	width: 25%;
	position: relative;
	overflow: hidden;
    border-bottom: 1px solid var(--gold);
}
#section_bnr ul.link_bnr li:after {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	z-index: -1;
	-webkit-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
}
#section_bnr ul.link_bnr li:nth-child(1):after {
	background: url(../images/bnr_bottom_therapist.jpg) right no-repeat;
	background-size: cover;
}
#section_bnr ul.link_bnr li:nth-child(2):after {
	background: url(../images/bnr_bottom_schedule.jpg) right no-repeat;
	background-size: cover;
}
#section_bnr ul.link_bnr li:nth-child(3):after {
	background: url(../images/bnr_bottom_recruit.jpg) center no-repeat;
	background-size: cover;
}
#section_bnr ul.link_bnr li:nth-child(4):after {
	background: url(../images/bnr_bottom_contact.jpg) right no-repeat;
	background-size: cover;
}
#section_bnr ul.link_bnr li:hover:after {
	opacity: .6;
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}
#section_bnr ul.link_bnr li a {
	padding: 20% 20% 20% 0;
	display: block;
	text-align: left;
}
#section_bnr ul.link_bnr li a .img_link {
	width: 180px;
	padding: 10px;
	background: rgba(255, 255, 255, 0.8);
	border-bottom: 3px solid var(--blue);
}
#section_bnr ul.link_bnr li a .img_link h2 {
	font-size: 1.2rem;
	line-height: 1.6rem;
	text-transform: uppercase;
}
#section_bnr ul.link_bnr li a .img_link h2 span {
	display: block;
	font-size: 0.6rem;
	line-height: 1rem;
}



/****************************************
女の子一覧ページ & スケジュールページ
****************************************/
#contents_schedule,
#contents_cast{
    padding: 80px 0;
}
/* 日付選択ボタン */
#contents_schedule .schedule_nav {
    margin: 0 auto 40px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
#contents_schedule .schedule_nav li{
	display: inline-block;
	width: calc((100% - 32px) / 5);
	height: 50px;
	border: 1px solid var(--blue-light);
	text-align: center;
	cursor: pointer;
	position: relative;
	box-sizing: border-box;
	overflow: hidden;
	margin: 0 8px 10px 0;
}
#contents_schedule .schedule_nav li:nth-of-type(5),
#contents_schedule .schedule_nav li:last-of-type{
    margin: 0 0 10px 0;
}
#contents_schedule .schedule_nav li a {
	display: inline-block;
	width: 100%;
	height: 100%;
	font-size: 14px;
	text-decoration: none;
	line-height: 50px;
	transition: all .6s ease;
	z-index: 2;
	position: relative;
}
#contents_schedule .schedule_nav li:hover a{
	background: var(--blue-light);
}
#contents_schedule .schedule_nav li.active {
	background: var(--blue-light);
	border: 2px solid var(--blue-light);
}
/****************************************
週間スケジュールページ
****************************************/
/*#contents_schedule .schedule_box{
	text-align: left;
}
#contents_schedule .schedule_box li{
	padding: 10px;
	background: linear-gradient(#ffffff, #aaaaaa);
	background: -webkit-linear-gradient(#ffffff, #aaaaaa);
	background: -moz-linear-gradient(#ffffff, #aaaaaa);
	border: 1px solid #fff;
	margin-bottom: 10px;
}
#contents_schedule .schedule_box .img_box{
	float: left;
}
#contents_schedule .schedule_box .name{
	width: 90%;
	float: right;
	font-size: 15px;
}
#contents_schedule .schedule_box table{
	width: 90%;
	height: 80px;
	float: right;
	font-size: 10px;
	text-align: center;
}
#contents_schedule .schedule_box .img_box{
	width: 80px;
	height: 120px;
	margin-bottom: 10px;
}
#contents_schedule .schedule_box .img_box img{
	max-width: 80px;
	max-height: 120px;
}*/
/****************************************
プロフィールページ
****************************************/
#contents_profile{
    padding: 80px 0 0;
}
#contents_profile .border:before,
#contents_profile .border:after,
.profile_box_schedule .border:before,
.profile_box_schedule .border:after{
    background-color: var(--blue);
}
#contents_profile .contents_sub_title,
.profile_box_schedule .contents_sub_title {
    margin: 0 auto 10px;
        width: 100%;
}
#contents_profile .profile_box_right{
	width: 100%;
    max-width: 400px;
    display: inline-block;
}
#contents_profile .profile_box_right .size_txt {
    text-align: center;
}
#contents_profile .profile_box_left{
	width: 100%;
    max-width: 390px;
    display: inline-block;
    vertical-align: top;
    position: relative;
    margin-bottom: 10px;
}
#contents_profile .profile_box_left .img_box{
	width: 300px;
	height: 450px;
	margin: 0 auto 20px;
	position: relative;
	text-align: center;
}
#contents_profile .icon_new{
	width: 60px!important;
    height: auto!important;
	position: absolute;
	top: -10px;
	left: -10px;
}
#contents_profile .icon_x{
	width: 40px;
    position: absolute;
    bottom: 4px;
    right: 4px;
}
#contents_profile .icon_exp{
	width: 40px;
    position: absolute;
    bottom: 4px;
    left: 4px;
}
#contents_profile .exp_box img {
	max-width: 300px;
    height: auto;
    margin: 20px auto 0;
}
#contents_profile .profile_twitter .txt_box_01{
	padding: 0;
	border: none;
	height: 390px;
}
.profile_box_schedule .free_text{
	background-color: var(--blue-light);
	width: 100%;
    margin-bottom: 4px;
}
.profile_box_schedule .profile_twitter .box_blue_line{
    padding: 0;
    border: 1px solid var(--blue-light);
}
#contents_profile .profile_box_right .icon_check {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: space-between;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    border: 1px dashed #ccc;
    padding: 16px 20px;
}
#contents_profile .profile_box_right .icon_check li {
    width: 50%;
    padding-bottom: 10px;
}
#contents_profile .profile_box_right .icon_check li:nth-of-type(3),
#contents_profile .profile_box_right .icon_check li:nth-of-type(4){
    padding-bottom: 0;   
}
#contents_profile .table_03 {
    border-top: 1px solid var(--blue-light);
    border-right: 1px solid var(--blue-light);
    border-bottom: 1px solid var(--blue-light);
    border-left: none;
}
#contents_profile .table_03 th{
    width: 30%;
    letter-spacing: 0;
    border-bottom: 1px solid #fff;
    background: var(--blue-light);
}
#contents_profile .table_03 th:last-of-type {
    border-right: none;
}
#contents_profile .table_03 td{
    width: 70%;
    border-right: none;
    border-bottom: 1px solid var(--blue-light);
}
/*スケジュール表部分（レスポンシブver）*/
.profile_box_schedule .profile_sch_box{
	width: 100%;
	box-sizing: border-box;
}
.profile_box_schedule .profile_sch_box .profile_sch_variable {
	flex-grow: unset;
	display: flex;
	align-items: center;
}
.profile_box_schedule .profile_sch_box .profile_sch_variable:last-child{
	border:none;
}
.profile_box_schedule .profile_sch_box .profile_sch_variable .profile_sch_date,
.profile_box_schedule .profile_sch_box .profile_sch_variable .profile_sch_check {
	padding: 0 0.5em;
	height: 90px;
	align-items: center;
	justify-content: center;
	display: flex;
	flex-direction: column;
}
.profile_box_schedule .profile_sch_box .profile_sch_variable .profile_sch_date {
	text-align: center;
	background: var(--blue-light);
	flex-basis: 50%;
	border-bottom: 1px solid #fff;
}
.profile_box_schedule .profile_sch_box .profile_sch_variable:first-of-type .profile_sch_date{
	border-top: 1px solid var(--blue-light);
}
.profile_box_schedule .profile_sch_box .profile_sch_variable:last-of-type .profile_sch_date {
	border-bottom: 1px solid var(--blue-light);
}
.profile_box_schedule .profile_sch_box .profile_sch_variable .profile_sch_date:last-of-type {
	border-bottom: 0;
}
.profile_box_schedule .profile_sch_box .profile_sch_variable .profile_sch_check {
	background: none;
	flex-basis: 50%;
	flex-wrap: wrap;
	border-right: 1px solid var(--blue-light);
	border-bottom: 1px solid var(--blue-light);
}
.profile_box_schedule .profile_sch_box .profile_sch_variable:first-of-type .profile_sch_check {
	border-top: 1px solid var(--blue-light);
}
.profile_box_schedule .profile_sch_box .profile_sch_variable .profile_sch_check .icon_shop {
	width: 100%;
	margin: 0 auto;
	line-height: 1;
}
.profile_box_schedule .profile_sch_box .profile_sch_variable .profile_sch_check .icon_shop img{
	max-width: 200px;
}
#contents_profile .img_box > img{
	max-width: 300px;
	max-height: 450px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.profile_box_schedule .table_02 {
	margin-bottom: 20px;
}
#contents_profile .profile_option_box p{
	width: 33.33%;
	padding: 5px;
	border: 1px solid #ddd;
	box-sizing: border-box;
	float: left;
	text-align: center;
	font-size: 10px;
}
/****************************************
システムページ
****************************************/
#contents_system {
    background: #fff;
    padding: 80px 0;
}
#contents_system #section_event {
    padding: 0 0 40px;
}
#contents_system .txt .box{
    padding: 15px;
    color: #b8b8b8;
    font-size: 12px;
    text-align: left;
    line-height: 2;
}
#contents_system .txt_caution{
    text-align: left;
    background: #f6f6f6;
    padding: 40px 60px;
}
#contents_system .txt_caution div{
    letter-spacing: 1px;
}
#contents_system .txt_caution .contents_title{
    margin: 0 auto 20px;
    width: 100%;
    max-width: 800px;
    background: none;
    padding: 20px 0;
}
#contents_system .caution_title{
    font-size: 20px;
    padding-left: 8px;
    border-left: 4px solid var(--blue);
}
/*
#contents_system .table_03 th{
	border-bottom: 1px solid #fff;
	width: 45%;
	font-size: 14px;
}
#contents_system .table_03 tr:last-of-type th{
	border-bottom: 1px solid var(--blue-light);
}
#contents_system .table_03 td{
	border-bottom: 1px solid var(--blue-light);
	width: 55%;
}
#contents_system .wax{
	background-color: #fff;
	padding: 8px 0;
	margin-bottom: 10px;
	color: var(--blue);
	font-size: 18px;
}
#contents_system .caution div{
	text-align: left;
	letter-spacing: 1px;
	color: #666;
	font-size: 11px;
}
#contents_system .caution div.dotted{
	padding-bottom: 8px;
	margin-bottom: 8px;
	border-bottom: 1px dashed #ccc;
}
#contents_system .caution div.dotted:first-of-type{
	padding-bottom: 20px;
}*/
/****************************************
求人情報ページ
****************************************/
#contents_recruit{
    padding: 80px 0 0;
}
#contents_entry{
    padding: 80px 0;
}
#contents_recruit .entry_btn{
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 10px;
}
/*求人ページの応募ボタン各種共通*/
#contents_recruit .btn_line,
#contents_recruit .btn_tel,
#contents_recruit .btn_mail,
#contents_recruit .btn_form{
    width: 49%;
    height: 56px;
    display: inline-block;
    padding-top: 16px;
    line-height: 20px;
    transition: 0.6s;
}
#contents_recruit .btn_tel,
#contents_recruit .btn_line{
	margin-bottom: 12px;
}
.recruit_img{
    background: url(../images/img_recruit_01.jpg) right no-repeat;
    background-size: cover;
    width: 100%;
    height: 300px;
}
/*btn_mail*/
#contents_recruit .btn_mail{
    color: #a589ba;
    text-align: center;
    border: 1px solid #a589ba;
}
#contents_recruit .btn_mail:hover{
    color: #fff;
    background-color: #bbabc7;
    border: 1px solid #bbabc7;
}
/*btn_tel*/
#contents_recruit .btn_tel{
    color: #60a2be;
    text-align: center;
    border: 1px solid #60a2be;
}
#contents_recruit .btn_tel:hover{
    color: #fff;
    background-color: #98bfd8;
    border: 1px solid #98bfd8;
}
/*btn_line*/
#contents_recruit .btn_line{
    color: #1da89e;
    text-align: center; 
    border: 1px solid #1da89e;
}
#contents_recruit .btn_line:hover{
    color: #fff;
    background-color: #8fc7c2;
    border: 1px solid #8fc7c2;
}
/*btn_form*/
#contents_recruit .btn_form{
    color: var(--blue);
    text-align: center; 
    border: 1px solid var(--blue);
    padding-top: 0px;
    line-height: 72px;
    height: 72px;
}
#contents_recruit .btn_form:hover{
    color: #fff;
    background-color: var(--blue-light);
    border: 1px solid var(--blue-light);
}
.salary_example{
    display: flex;
    justify-content: space-between;
}
.salary_example .txt_box_01{
    width: 50%;
}
.salary_example .txt_box_01 p{
    font-size: 16px;
}
.salary_example .txt_box_01 span{
    background-color: var(--blue-light);
}
.salary_example .txt_box_01:first-of-type{
    margin-right: 20px;
}
/****************************************
WEB予約ページ
****************************************/
#contents_reserve{
    padding: 80px 0;
}
/****************************************
お問い合わせページ
****************************************/
#contents_contact{
    padding: 80px 0;
}
/****************************************
アクセスページ
****************************************/
#contents_access{
    text-align: left;
    padding: 80px 0;
}
#contents_access .contents_sub_title {
    width: 100%;
    margin: 0 auto 10px;
}
#contents_access .border:before,
#contents_access .border:after {
    background-color: var(--blue);
}
#contents_access .shop_box .box_blue a{
    -webkit-transition: 0.6s ease;
    -moz-transition: 0.6s ease;
    -o-transition: 0.6s ease;
    transition: 0.6s ease;
}
#contents_access .shop_box .box_blue a:hover{
    color: var(--blue);
}
/****************************************
リンクページ
****************************************/
#contents_link{
	padding: 80px 0;
}
/****************************************
エラーページ
****************************************/
#contents_err {
    padding: 80px 0;
	margin: 0 auto;
	font-size: 15px;
}
/****************************************
英語ページ
****************************************/
/*共通部分*/
#contents_multiLanguage #section_concept,
#contents_multiLanguage #contents_schedule,
#contents_multiLanguage #section_system,
#contents_multiLanguage #contents_access,
#contents_multiLanguage #contents_attention{
    padding: 50px 10px;
}
#contents_multiLanguage #contents_attention {
    background: url(../images/bg_01.jpg) 0 0 no-repeat;
}
.wrap_box {
    max-width: min(100%, 800px);
    margin: 0 auto 40px;
    padding: 40px 40px;
    background: #fff;
    border: 1px solid var(--blue);
}
.wrap_box:last-child {
    margin: 0 auto;
}
#contents_multiLanguage .main_txt{
    font-size: 30px;
}
/*本日の出勤情報 タブ*/
#contents_multiLanguage #contents_schedule{
    min-height: 500px;
}
#contents_multiLanguage #contents_schedule .schedule_nav li {
    display: inline-block;
    font-size: 14px;
    line-height: 50px;
    transition: all .6s ease;
}
#contents_multiLanguage #contents_schedule .schedule_nav li:hover{
    background: var(--blue-light);
}
#contents_multiLanguage .schedule_day_wrap .schedule_day_box {
    display: none;
}
#contents_multiLanguage .schedule_day_wrap .schedule_day_box.active {
    display: block;
    animation: fadeIn 1s ease-out forwards;
}
/*本日の出勤情報 セラピ*/
#contents_multiLanguage .cast_box {
    display: grid;
    gap: 15px min(2%, 30px);
    grid-template-columns: repeat(3, minmax(0, 1fr))!important;
}
#contents_multiLanguage .cast_box li{
    width: 100%;
    margin: 0;
}
#contents_multiLanguage .cast_box li .img_box {
  aspect-ratio: 1 / 1;
}
#contents_multiLanguage .cast_box li .img_box:before { 
  display: none;
}
#contents_multiLanguage .img_box .img_cast{
    aspect-ratio: 2 / 3;
    object-fit: cover;
    position: absolute;
    box-sizing: border-box;
}
#contents_multiLanguage .img_box .img_cast:nth-child(1){
    width: 66.6%;
    height: auto;
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
}
#contents_multiLanguage .img_box .img_cast:nth-child(2){
    width: 33.3%;
    height: auto;
    top: 0;
    left: auto;
    bottom: auto;
    right: 0;
    padding: 0 0 2.5px 5px;
}
#contents_multiLanguage .img_box .img_cast:nth-child(3){
    width: 33.3%;
    height: auto;
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    padding: 2.5px 0 0 5px;
}
#contents_multiLanguage .img_box .icon_x {
    position: absolute;
    right: 36%;
    bottom: 5px;
}
#contents_multiLanguage .img_box .icon_exp {
    position: absolute;
    left: 5px;
    bottom: 5px;
}
@media (max-width: 500px){
    #contents_multiLanguage .cast_box li .icon_new {
        width: 60px;
        top: -20px;
        left: -20px;
    }
}
/*海外のお客様向け注意文*/
#contents_multiLanguage #contents_attention h3{
    width: 100%;
    box-sizing: border-box;
    background-color: var(--blue);
    color: var(--gold);
    font-size: 1.6em;
    line-height: 1.6;
    padding: 4px;
    margin-bottom: 6px;
}
#contents_multiLanguage #contents_attention .border:before,
#contents_multiLanguage #contents_attention .border:after {
    background-color: var(--blue);
}
#contents_multiLanguage #contents_attention .wrap_box div {
    text-align: justify;
}
#contents_multiLanguage #contents_attention .wrap_box ul li {
    padding-left: 1em;
  text-indent: -1em;
}
@media screen and (max-width: 768px){
    #contents_multiLanguage #section_concept {
        font-size: 12px;
    }
    #contents_multiLanguage .cast_box {
        grid-template-columns: repeat(2, minmax(0, 1fr))!important;
    }
}
@media screen and (max-width: 520px){
    .wrap_box {
        margin-bottom: 20px;
        padding: 20px 20px;
    }
    #contents_multiLanguage .main_txt{
        font-size: 20px;
    }
    #contents_multiLanguage .cast_box {
        grid-template-columns: repeat(1, minmax(0, 1fr))!important;
    }
}
/*他言語ボタン*/
.multiLanguage_btn{
    display: inline-block;
    width: 160px;
    height: 40px;
    line-height: 40px;
    margin: 0;
    background: #fff;
    border: 1px solid #3e4349;
    border-radius: 50px;
    opacity: 1;
    -webkit-transition: opacity 0.4s ease;
    -moz-transition: opacity 0.4s ease;
    transition: opacity 0.4s ease;
    position: fixed;
    top: 90px;
    right: 10px;
    z-index: 10;
    font-size: 14px;
}
.multiLanguage_btn:hover{
    opacity: 0.6;   
}
header .multiLanguage_btn{
    top: 20px;
}
footer .multiLanguage_btn{
    position: initial;
    margin-bottom: 20px;
}
@media (max-width: 1480px){
    .multiLanguage_btn{
        top: 70px;
    }
    header .multiLanguage_btn{
        top: 8px;
    }
}

@media screen and (max-width: 520px){
    .multiLanguage_btn{
        width: 100px;
        line-height: 40px;
        font-size: 12px;
    }
    
}




/****************************************
メディアクエリ設定
****************************************/
/****************************************
1680px以下
****************************************/
@media (max-width: 1480px) {
	header .pc{
        display: none;
    }
    header .nav_sp{
        display: block;
    }
    #mainvisual{
        padding: 60px 0 0;
    }
    #section_system,
    #contents_schedule,
    #contents_cast,
    #contents_access,
    #contents_link,
    #contents_reserve,
    #contents_contact,
    #contents_err,
    #contents_system{
        padding: 60px 0;
    }
    #contents_entry,
    #contents_recruit,
    #contents_profile{
        padding: 60px 0 0;
    }
}
/****************************************
1039px以下
****************************************/
@media (max-width: 1039px) {
    #mainvisual .main_txt {
        right: 10%;
        transform: translateY(-50%) translateX(-10%);
        -webkit- transform: translateY(-50%) translateX(-10%);
    }
	/*スケジュールページ*/
	#contents_schedule .schedule_nav {
    	flex-wrap: wrap;
    	margin: 0 0 40px;
	}
	#contents_schedule .schedule_nav li {
	    width: calc((100% - 10px) / 2);
	}
    #contents_schedule .schedule_nav li:nth-of-type(even) {
        margin: 0 0 10px 0; 
    }
	#contents_schedule .schedule_nav li:nth-of-type(odd) {
	    margin: 0 10px 10px 0; 
	}
	/*プロフィールページ*/
	#contents_profile .profile_box_right {
	    max-width: 1000px;
	}
	#contents_profile .profile_box_right {
	    margin-top: 40px;
	}
    #contents_profile .profile_box_right .icon_check li {
        width: 25%;
        padding-bottom: 0;
    }
    #section_bnr ul.link_bnr li a .img_link {
        width: 150px;
    }
    .cast_box li .name_size .name,
    .cast_box li .name_size .size,
    .cast_box li .txt_box .time .free_text {
        letter-spacing: 0.5px;
    }
    .cast_box li .icon_new {
        top: -18px;
        left: -16px;
    }
}
/****************************************
768px以下
****************************************/
@media (max-width: 768px) {
    #mainvisual .main_txt {
        top: 80%;
        right: 10%;
        transform: translateY(-80%) translateX(-10%);
        -webkit- transform: translateY(-80%) translateX(-10%);
    }
	.btn_positive,
	.btn_negative {
	    padding: 12px 16px;
	    margin: 20px auto 0;
	}
	footer {
		padding: 60px 0 110px;
	}
	/*SP版追従ボタン*/
	#bottom_nav.fade {
		position: fixed;
	    right: 0;
	    left: 0;
	    bottom: 0;
	    width: 100%;
	    margin: 0 auto;
	    display: block !important;
        border-top: 1px solid var(--gold);
        background: #d09586;
        color: var(--gold);
	    animation-duration: 2.6s;
	    -webkit-animation-duration: 2.6s;
	    animation-name: fade;
	    z-index: 999;
	}
	@keyframes fade {
		0% {
			opacity: 0;
			transform: translateY(-100px);
			}
		100% {
			opacity: 1;
			transform: translateY(0);
			}
		}
	@-webkit-keyframes fade {
		0% {
			opacity: 0;
			transform: translateY(-100px);
		}
		100% {
			opacity: 1;
			transform: translateY(0);
		}
	}
	#bottom_nav a {
		width: 30%;
	    margin: 12px 0px;
	    z-index: 5;
	    color: var(--gold);
	    border-right: 1px solid var(--gold);
	    letter-spacing: 1px;
	    text-decoration: none;
	    text-align: center;
	    display: inline-block;
	    font-feature-settings: "palt";
	    line-height: 2rem;
	    font-size: 16px;
	}
	#bottom_nav a:last-child {
		border-right: none;
	}
	#bottom_nav a i {
	    font-size: 1.2rem;
	    color: #c20000;
	}
    #bottom_nav a i.fa-line {
        color: #c20000;
    }
    #bottom_nav a i.fa-heart {
        color: #c20000;
    }
    #bottom_nav a span{
        margin-bottom: 2px;
    }
	.slick-dots li button:before {
	    font-size: 16px;
	 }
	.cast_box li{
	    width: calc((100% - 66px) / 2);
	}
	.cast_box li .txt_box .time,
	.cast_box li .txt_box .entry_day {
	    padding: 4px;
	}
	.slick-dots li {
	    width: auto;
	}
    /*トップー共通*/
    #section_schedule_today .contents_title {
        margin: 0 auto 30px;
    }
    .contents_title, .contents_sub_title {
        margin: 0 auto 20px;
    }
    
    .contents_title, .contents_sub_title {
        font-size: 28px;
    }
    /*トップー料金*/
    #section_system .frame,
    #contents_system .frame{
        padding: 20px;
        margin-bottom: 20px;
    }
    #section_system .system_h4,
    #contents_system .system_h4 {
        font-size: 20px;
    }
    .table_system th, .table_system td {
        width: 32%;
        font-size: 16px;
        line-height: 1.2;
        padding: 10px 0;
    }
    /*トップー新着情報*/
    /*#section_topics article h3 {
        padding: 10px;
    }
    #section_topics article h3 time {
        padding: 5px 10px;
        font-size: 10px;
        margin-right: 0;
    }*/
	/*トップー誘導バナー*/
	#section_bnr .link_bnr li a{
		padding: 40px 0;
	}
    #section_bnr ul.link_bnr li {
        width: 100%;
    }
    #section_bnr ul.link_bnr li a {
        padding: 12% 20% 12% 0;
    }
    #section_bnr ul.link_bnr li a .img_link {
        padding: 6px 10px;
    }
	/*下層ページ メインビジュアル*/
	.subvisual {
	    margin-bottom: 60px;
	}
	/*求人ページ*/
	#contents_recruit .btn_line,
    #contents_recruit .btn_tel,
    #contents_recruit .btn_mail,
    #contents_recruit .btn_form {
	    width: 100%;
	   	margin: 0 0 10px;
	}
	#contents_recruit tr:last-of-type td{
	    display: block;
	}
	/*アクセスページ*/
	#contents_access .inner .shop_box {
	    display: block;
	}
	#contents_access .shop_box_map {
	    width: 100%;
	    padding: 0;
	}
	#contents_access .shop_box_txt {
	    width: 100%;
	}
	/*プロフィールページ*/
	.profile_box_schedule .profile_sch_box{
		display: block;
		font-size: .9rem;
	}
    /*料金*/
    #contents_system .txt_caution{
        padding: 40px;
    }
    #contents_system #section_event .slick-slider .slick-list {
        margin-bottom: 10px;
    }
}
/****************************************
500px以下
****************************************/
@media (max-width: 500px) {
	.cast_box li .icon_twitter {
	    padding: 6px;
	}
	#section_schedule_today .img_box object,
	#section_newface .img_box object,
	#section_covergirl .img_box object,
	#contents_cast .img_box object,
	#contents_schedule .img_box object{
		font-size: 10px;
	}
	.cast_box li .icon_new {
	    width: 40px;
	    top: -16px;
    	left: -10px;
	}
    #contents_profile .profile_box_right .icon_check li {
        width: 50%;
        padding-bottom: 10px;
    }
    #section_concept .concept_box {
        padding: 20px;
    }
}
/****************************************
414px以下
****************************************/
@media (max-width: 414px) {
    #mainvisual .main_txt {
        font-size: 16px;
    }
    #drawer .menu-bg.middle {
        top: 20%;
    }
	.hover_act .caption {
	    font-size: 0.8rem;
	}
	.subvisual .contents_title {
	    font-size: 32px;
	}
    .subvisual .back_txt {
        font-size: 4rem;
        letter-spacing: 0.6rem;
    }
	.subvisual .h2_main {
	    letter-spacing: 10px;
	    margin-left: 10px;
	}
	.subvisual .h2_sub {
	    font-size: 12px;
        margin-top: 12px;
	}	
    .cast_box li .name_size .name,
    .cast_box li .name_size .size,
    .cast_box li .txt_box .time .free_text {
        font-size: 13px;
    }
	/*トップー誘導バナー*/
	#section_bnr .link_bnr li.bnr_schedule,
	#section_bnr .link_bnr li.bnr_system{
		width: calc((100% / 2) - 10px);
	}
	#section_bnr .link_bnr li.bnr_schedule .item_title,
	#section_bnr .link_bnr li.bnr_system .item_title{
		padding: 10px 0px 4px;
	}
	#section_bnr .link_bnr li.bnr_schedule .item_title p,
	#section_bnr .link_bnr li.bnr_system .item_title p{
		line-height: 16px;
	}
    #section_bnr ul.link_bnr li a .img_link {
        border-bottom: 2px solid var(--blue);
    }
	.cast_box li {
	    width: calc((100% - 32px) / 2);
        margin: 0 6px 20px;
	}
    .cast_box li .txt_box .time,
    .cast_box li .txt_box .entry_day {
        padding: 2px;
    }
	.cast_box li .name_size {
	    margin: 10px auto;
	}
	/* コンセプト　*/
    #section_concept .concept_box .concept_txt{
        font-size: 14px;
        line-height: 1.6;
    }
    #section_concept .concept_box span{
        font-size: 18px;
    }
    /*スライダードット*/
    .slick-dots {
        max-width: 360px;
        flex-wrap: wrap;
    }
    /*プロフィールページ*/
    #contents_profile .table_03 th {
        width: 35%;
    }
    #contents_profile .table_03 td {
        width: 65%;
    }
    /*求人ページ*/
    .recruit_img {
        height: 160px;
    }
    .salary_example {
        display: block;
    }
    .salary_example .txt_box_01 {
        width: 100%;
        box-sizing: border-box;
    }
    .salary_example .txt_box_01:first-of-type {
         margin-right: 0;
         margin-bottom: 20px;
    }
    /*料金*/
    #contents_system .txt_caution{
        padding: 20px;
    }
    #contents_system .txt_caution .contents_title {
        margin: 0 auto;
    }
}
/****************************************
320px以下
****************************************/
@media (max-width: 320px){
    #mainvisual .main_txt {
        font-size: 14px;
    }
    #drawer .menu {
        padding-top: 50px;
    }
    #drawer .container {
        min-height: 500px;
    }
    #drawer .menu li {
        padding: 6px;
    }
    #drawer .menu-bg.top {
        top: -90px;
        left: -30%;
    }
    #drawer .menu-bg.middle {
        top: 10%;
    }
    #drawer .menu-bg.bottom {
        top: 120%;
    }
    #section_concept .concept_box {
        font-size: 11px;
    }
    #section_concept .concept_box span {
        font-size: 13px;
    }
	.contents_title .h2_sub, .contents_sub_title .h3_sub {
	    font-size: 12px;
	}
	.cast_box li .icon_new {
	    left: -12px;
	}
	.cast_box li .txt_box{
		font-size: 12px;
	}	
	.subvisual .contents_title {
	    font-size: 26px;
	}
	.hover_act .caption {
	    font-size: 0.6rem;
	}
}