@charset "UTF-8";
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: 13px;
  /* 変更 */
/*  font-family: 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;*/
  font-family: ArialMT, 'Hiragino Kaku Gothic ProN', "ヒラギノ角ゴ ProN W3", メイリオ, sans-serif;
  /* 変更 */
  line-height: 1.5em;
  /* 変更 */
  -webkit-text-size-adjust: 100%;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {
  display: block;
}

h1, h2, h3, h4, h5, h6, strong, th {
  font-weight: normal;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

/*android版クローム　フォントサイズが大きくなる不具合対策*/
p{  max-height: 99999px;}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
}

ins {
  background-color: #ff9;
  /* 変更 */
  color: #000;
  /* 変更 */
  text-decoration: none;
}

mark {
  background-color: #ff9;
  /* 変更 */
  color: #000;
  /* 変更 */
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: separate;
  border-spacing: 2px;
  border-color: grey;
}

hr {
  margin: 0;
}



img {
/*  vertical-align: bottom;*/
vertical-align: baseline;
}
/* Retinaディスプレイ対応 width指定のないimg要素は半分の大きさに */
img:not([width]) {
  zoom: .5;
}

.corona img:not([width]) {
  max-width: 100%!important;
  zoom: 1;
}

/* form */
input, select {
  vertical-align: middle;
}

/* float解除 */
header:after, footer:after, section:after, article:after, aside:after, main:after, div:after, dl:after, ul:after, ol:after, ul li:after, ol li:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}

/****************************************
 common (共通スタイル)
****************************************/
body {
  background-color: #fff;
}

a {
}

a:active{
  color: #FF1100;
}
 /*訪問済みのリンク*/
a:visited {
  color: rgb(85, 26, 139);
}
/*タップ時のカラー*/
a {
  -webkit-tap-highlight-color: rgba(200,200,555,.6);
}

h2{
  width: auto;
  padding: 4px 4px 4px 14px;
  font-size: 16px;
  font-weight: bold;
  color: #2B060F;
  text-shadow: 0px -1px #fff, 1px 0px #fff, 0px 1px #fff, -1px 1px #fff;
  border: 1px solid #fef0f3;
  border-bottom: none;
  border-radius: 3px 3px 0px 0px / 3px 3px 0px 0px;
  -webkit-border-radius: 3px 3px 0px 0px / 3px 3px 0px 0px;
  background-image: -moz-linear-gradient(50% 0% -90deg, rgb(255, 221, 220) 0%, rgb(255, 160, 171) 100%);
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0, rgb(255, 221, 220)), color-stop(1, rgb(255, 160, 171)));
  background-image: -webkit-linear-gradient(-90deg, rgb(255, 221, 220) 0%, rgb(255, 160, 171) 100%);
  background-image: linear-gradient(180deg, #ffdddc 0%, #ffa0ab 100%);
}

h3
{
  width: auto;
  margin: 8px auto;
  padding: 4px;
  font-size: 16px;
  font-weight: bold;
  color: #2B060F;
  text-shadow: 0px -2px #fff, 2px 0px #fff, 0px 2px #fff, -2px 2px #fff;
  background-image: -moz-linear-gradient(50% 0% -90deg, rgb(255, 221, 220) 0%, rgb(255, 160, 171) 100%);
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0, rgb(255, 221, 220)), color-stop(1, rgb(255, 160, 171)));
  background-image: -webkit-linear-gradient(-90deg, rgb(255, 221, 220) 0%, rgb(255, 160, 171) 100%);
  background-image: linear-gradient(180deg, #ffdddc 0%, #ffa0ab 100%);
  border-radius: 3px;
  -webkit-border-radius: 3px;
  border: 1px solid #fef0f3;
  text-align: center;
}

.icon_new{
  margin: 0px 0px 6px 4px;
}

/* 文字サイズ */
.fs_10 {
  font-size: 10px;
}

/* 文字色 */

.pink{
  color: #E7228D;
}
.red{
  color: #FF1100;
}
.blue{
  color: rgb(0, 0, 238);
}
.point{
  font-weight: bold;
  color: #FF0099;
}
.atten_01, .atten_01 a {
  color: #000000;
}
.atten_02, .atten_02 a {
  color: #ffff00;
}
/*3.4プロフィールのカレンダーに使用↓*/
.atten_03, .atten_03 a {
  color: rgb(0, 228, 255);
}
.atten_04, .atten_04 a {
  color: rgb(0, 250, 12);
}



.inner {
  width: 100%;
/*  max-width: 640px;*/
  margin: 0 auto;
}

.wrap {
  padding: 0 10px;
}

/* 画像横幅100% */
.width_100 {
  width: 100%;
  max-width: 600px;
}

/* センタリング */
.center{
  text-align: center;
}
.center_m{
  margin: 0 auto;
}

/* マージン */
.mb_5 {
  margin-bottom: 5px;
}
.mb_10 {
  margin-bottom: 10px;
}

.mb_20 {
  margin-bottom: 20px;
}

.corona {
  text-align: center;
}




/* ボタン 1 */
/*フッター使用*/
.btn_one_01 {
    padding: 5px 0px;
    width: 100%;
/*    border: solid #f7faf5 4px;*/
    box-shadow: 0px 1px 2px #000;
    -webkit-box-shadow: 0px 1px 2px #000;
    border-radius: 2px;
    background: linear-gradient(to bottom, rgba(249,252,247,1) 0%, rgba(245,249,240,1) 100%);
    box-sizing: border-box;
    display: block;
    text-align: center;
    text-shadow: 1px 1px 1px white;
    font-weight: bold;
    font-size: 15px;
    -webkit-border-radius: 6px;
    margin: 5px 0px;
    color: #000;
}

.btn_one_01 img {
  vertical-align: middle;
}

.btn_one_01 li a {
    display: inline-table;
    margin: 5px 0;
    float: left;
    width: 100%;
    padding: 5px 0;
}
/* ボタン 2 */
.btn_one_02 {
  width: 50%;
  margin: 0 auto 10px auto;
  padding: 6px;
  border: 2px solid #ccc;
  border-bottom: 2px solid #ccc;
  color: #555;
  text-align: center;
  text-shadow: 1px 1px 1px white;
  font-weight: bold;
  cursor: pointer;
  background: linear-gradient(to bottom, rgba(249,252,247,1) 0%, rgba(245,249,240,1) 100%);
  background-image: -webkit-linear-gradient(bottom, rgb(219,219,219) 0%, rgb(232,232,232) 34%, rgb(255,255,255) 70%);
  box-sizing: border-box;
  display: block;
  -webkit-border-radius: 6px;
}

/* ボタン2カラム 1 */
.btn_two_01 li {
/*  padding: 5px 0px;*/
  width: 48%;
  margin: 5px 2% 18px 0;
  border: solid #ffa0ab 4px;
  box-shadow: 0px 1px 2px #000;
    -webkit-box-shadow: 0px 1px 2px #000;
  border-radius: 2px;
    background-image: -moz-linear-gradient(50% 0% -90deg, rgb(255, 221, 220) 0%, rgb(255, 160, 171) 100%);
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0, rgb(255, 221, 220)), color-stop(1, rgb(255, 160, 171)));
    background-image: -webkit-linear-gradient(-90deg, rgb(255, 221, 220) 0%, rgb(255, 160, 171) 100%);
    background-image: linear-gradient(180deg, #ffdddc 0%, #ffa0ab 100%);
  box-sizing: border-box;
  display: block;
  text-align: center;
  text-shadow: 1px 1px 1px white;
  font-weight: bold;
  font-size: 12px;
  float: left;
    -webkit-border-radius: 6px;
}

.btn_two_01 li:nth-of-type(2n) {
  margin-right: 0;
}

.btn_two_01 a {
  display: block;
  color: #000;
}
/* ボタン2カラム 2 */
/*プロフ欄のインナー*/
.btn_two_02 li {
    float: left;
    width: 50%;
    margin: 0px;
}
.btn-2_inner li a {
    float: none;
    width: 90%;
    height: auto;
    padding: 5px 0px;
    margin-top: 5px;
    overflow: hidden;
    color: #000;
}



#section_covergirl{
  text-align: center;
    padding: 14px 4px 8px 4px;
    background: #fff;
    border: 1px solid #D3C8A8;
    border-radius: 0px 0px 6px 6px / 0px 0px 6px 6px;
    -webkit-border-radius: 0px 0px 6px 6px / 0px 0px 6px 6px;
    margin-bottom: 14px;
}
#section_covergirl ul{
    margin: 0 auto;
}
#section_covergirl .img_box{
  aspect-ratio: 3 / 4;
  overflow: hidden;
}


/*本日のおすすめセラピスト（ランキング機能）*/
#section_ranking{
  text-align: center;
  padding: 14px 10px 8px;
  background: #fff;
  border: 1px solid #febdbb;
  border-radius: 0px 0px 6px 6px / 0px 0px 6px 6px;
  -webkit-border-radius: 0px 0px 6px 6px / 0px 0px 6px 6px;
  margin-bottom: 14px;
}
#section_ranking .comment{
  background: #ef5490;
  color: #fff;
  padding: 2px 4px;
  line-height: normal;
}

/* セクションボックス */
.section_box {
    padding: 4px 4px 8px 4px;
    background: #fff;
    border: 1px solid #febdbb;
    border-radius: 0px 0px 6px 6px / 0px 0px 6px 6px;
    -webkit-border-radius: 0px 0px 6px 6px / 0px 0px 6px 6px;
    text-align: left;
    margin-bottom: 14px;
}



/* リストボックス 1 */
.list_box_01 li {
  display: block;
  position: relative;
}
.list_box_01 li:last-child {
  border-bottom: none;
}
.list_box_01 li a{
  display: block;
  clear: both;
  padding: 5px;
  background: url(../images/list_arrow.png) 100% 50% no-repeat;
  border-top: 1px solid #febdbb;
  color: #FC428D;
  font-size: 12px;
  text-overflow: ellipsis;
  vertical-align: middle;
}

/* リストボックス 2 */


/* テキストボックス 1 */
.txt_box_01 {
  margin-bottom: 10px;
  padding: 8px;
  border: 1px solid #ddd;
  border-radius: 2px;
  box-shadow: 1px 1px 2px #eee inset;
  text-align: left;
}
.txt_box_03{
    max-width: 640px;
    border: 1px solid #820223;
    color: #820223;
    border-radius: 10px;
    background-color: #ffffffcc;
    margin: 30px auto;
    display: grid;
    grid-template-columns: 90px 1fr;
    gap: 0px min(2%, 40px);
    text-align: left;
    padding: 10px 10px;
    align-items: center;
    font-size: 14px;
    font-weight: bold;
    box-sizing: border-box;
}
#contents .txt_box_03{
    margin: 0 auto;
}
#contents .txt_box_03 img {
    max-width: 200px;
    width: 100%;
}
.txt_box_04{
    /* background: #ef5490; */
    color: #ef5490;
    /* padding: 6px; */
    margin: 0px auto 10px;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
}


/* 女の子ボックス */
.section_cast_box{
  background: #fff;
  border: 1px solid #febdbb;
  border-top: none;
  border-radius: 0px 0px 6px 6px / 0px 0px 6px 6px;
  -webkit-border-radius: 0px 0px 6px 6px / 0px 0px 6px 6px;
  text-align: left;
  margin-bottom: 14px;
  padding: 14px 10px 0;
}
.cast_box li h3 {
  padding: 4px;
  background: #222;
  text-align: center;
  color: #000;
}

.cast_box .photo{
  float: left;
  width: auto;
  margin: 0 6px 6px 0;
  padding: 8px 0 0 0;
}

.cast_box .txt{
  float: left;
  line-height: 1.6;
  margin-top: 14px;
  white-space: inherit;
  width: 150px;
}
.cast_box .icon_new {
  margin-left: 4px;
  margin-bottom: 5px;
}
.cast_box .name{
  font-size: 14px;
  font-weight: bold;
}
.cast_box .size,
.cast_box .time,
.cast_box .time{
  font-size: 12px;
  letter-spacing: 0.05em;
}
.text_red_bold{
  color: red;
  font-weight: bold;
}

.cast_box li{
  display: block;
  clear: both;
  height: 200px;
}
.cast_box li a{
  display: block;
  clear: both;
  height: 200px;
  padding: 5px;
  background: url(../images/list_arrow.png) 100% 50% no-repeat;
  border-top: 1px solid #febdbb;
  color: #FC428D;
  font-size: 12px;
  text-overflow: ellipsis;
  vertical-align: middle;
}
.cast_box li a .img_cast {
  float: left;
  margin: 0 6px 6px 0;
}
.cast_box li a .img_cast + div {
  padding: 0 20px 0 100px;
}

/* 女の子ボックス 2カラム */
.cast_box_2column{
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  justify-content: space-between;
}
.cast_box_2column li{
  width: calc((100% / 2) - 5px );
  text-align: center;
  margin-bottom: 20px;
}
.cast_box_2column a:nth-of-type(2n) li{
  margin-right: 0;
}
.cast_box_2column li a{
  color: #FC428D;
  font-size: 13px;
}
.cast_box_2column .img_cast {
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}
.cast_box_2column li .photo{
  width: 100%;
  margin: 0 auto;
  position: relative;
}
.cast_box_2column li .img_box > img{
  width: 100%;
}
.cast_box_2column li .icon_new{
  width: 30px;
  vertical-align: middle;
}
.cast_box_2column li .tokutyo{
  /* border: 1px #222222 solid; */
  /* background-color: #321218; */
  /* padding: 3px; */
  margin-top: 5px;
  color: #a942fc;
  overflow: hidden;
}
.cast_box_2column li .tokutyo p{
  display: inline-block;
  padding-left: 100%;
  font-family: "M PLUS Rounded 1c", sans-serif;
  white-space: nowrap;
  animation: scrollComment 8s linear infinite;
}
@keyframes scrollComment{
	0% { transform: translateX(0)}
	100% { transform: translateX(-100%)}
}
.cast_box_2column li .time{
  border: 1px #222222 solid;
  padding: 3px;
  margin-top: 5px;
}
/* 女の子ボックス 3カラム */
.cast_box_3column{
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 8px;
  margin: 10px 0;
}
.cast_box_3column li{
  text-align: center;
}
.cast_box_3column li a{
  color: #FC428D;
  font-size: 13px;
}
.cast_box_3column .img_cast {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
}
.cast_box_3column li .photo{
  width: 100%;
  margin: 0 auto;
  position: relative;
}
.cast_box_3column li .img_box > img{
  width: 100%;
}
.cast_box_3column li .icon_new{
  width: 30px;
  vertical-align: middle;
}

/* 女の子の画像装飾 */
.img_cast {
  border: 3px solid #ffa0ab;
  box-shadow: 1px 1px 0 #ddd;
  border-radius: 6px;
  aspect-ratio: 3 / 4;
  object-fit: cover;
}

/* 電話番号 / 営業時間 */
.info_box {
  text-align: center;
/*  margin-bottom: 10px;*/
}

.info_box li {
  padding: 0 10px;
/*  border-right: 1px solid #333;*/
  display: inline-block;
  color: #fff;
}

.info_box li a {
  display: inline-block;
  color: #fff;
}

.info_box li:last-child {
  border: none;
}
.tel {
  width: auto;
  margin: 0 10px;
  text-align: center;
}
.tel a {
  display: block;
  overflow: hidden;
  line-height: 50px;
  margin: 0 auto 14px auto;
  padding: 2px 0 0 0;
  font-size: 14px;
  font-weight: bold;
  color: #2B060F;
  text-shadow: 0px -2px #fff, 2px 0px #fff, 0px 2px #fff, -2px 2px #fff;
  border: 2px solid #eee;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  box-shadow: 0px 1px 2px #000;
  -webkit-box-shadow: 0px 1px 2px #000;
  background-image: -moz-linear-gradient(50% 0% -90deg, rgb(255,235,208) 0%, rgb(255,235,208) 44%, rgb(245,227,199) 53%, rgb(245,227,199) 100%);
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0, rgb(255,235,208)), color-stop(0.44, rgb(255,235,208)), color-stop(0.53, rgb(245,227,199)), color-stop(1, rgb(245,227,199)));
  background-image: -webkit-linear-gradient(-90deg, rgb(255,235,208) 0%, rgb(255,235,208) 44%, rgb(245,227,199) 53%, rgb(245,227,199) 100%);
  background-image: linear-gradient(180deg, rgb(255,235,208) 0%, rgb(255,235,208) 44%, rgb(245,227,199) 53%, rgb(245,227,199) 100%);
}
.tel a img {
  margin-right: 20px;
  vertical-align: middle;
}
.change {
    padding: 12px;
    text-align: center;
    margin-bottom: 14px;
}
.change a{
  color: #000;
}

/* 小見出し */
.item {
    background: #F4EDDA;
    border: 1px solid #000;
    border-bottom: 1px solid #333;
    border-right: 1px solid #333;
    margin: 10px 4px 0px 0px;
    padding: 2px;
    color: #000;
}


/*テーブル*/


/* テーブル 1 */
.table_01 {
  width: 100%;
  margin-bottom: 10px;
/*  border: 1px solid #ddd;*/
  box-sizing: border-box;
  text-align: left;
}

.table_01 th, .table_01 td {
  padding: 4px;
  border-bottom: 1px solid #fff;
  box-sizing: border-box;
}

.table_01 th {
  width: 30%;
  border-right: 1px solid #fff;
  background: #ddd;
  vertical-align: middle;
}

.table_01 td {
/*  background: #eee;*/
}


/*料金表とホテルリストに使ってるテーブル*/
.table_dot{
  width: 100%;
  margin: 10px auto;
}
.table_dot th{
  font-weight: bold;
}
.table_dot th, .table_dot td {
  width: 33%;
  border-bottom: 1px dotted #febdbb;
  text-align: left;
  padding: 2px;
}


/* フォーム */
.form_box input[type="text"], .form_box textarea, .form_box input[type="tel"], .form_box input[type="email"] {
  width: 100%;
  padding: 4px;
  border: 1px solid #aaa;
  border-radius: 2px;
  background: #fcfcfc;
  -webkit-box-shadow: rgba(255, 255, 255, 0.4) 0 1px 0, inset rgba(0, 0, 0, 0.2) 0 1px 1px;
  -moz-box-shadow: rgba(255, 255, 255, 0.4) 0 1px 0, inset rgba(0, 0, 0, 0.2) 0 1px 1px;
  box-shadow: rgba(255, 255, 255, 0.4) 0 1px 0, inset rgba(0, 0, 0, 0.2) 0 1px 1px;
  box-sizing: border-box;
  color: #666;
}

.form_box select {
  width: 100%;
  padding: 4px;
  border: 2px solid #eee;
  border-bottom: 2px solid #ccc;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(1, #fff), color-stop(0.53, #d3d3d3), color-stop(0.04, #fff));
  background: -webkit-linear-gradient(top, #fff 4%, #d3d3d3 53%, #fff 100%);
  background: linear-gradient(to bottom, #fff 4%, #d3d3d3 53%, #fff 100%);
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
}

.form_box select:after {
  margin-top: -0.7em;
  display: inline-block;
  font-family: FontAwesome;
  content: "\f054";
  position: absolute;
  top: 50%;
  right: 0;
}

.form_box textarea {
  height: 100px;
}

/* ラベル */
.form_box label {
  vertical-align: middle;
  cursor: pointer;
}

/*ヘッダー*/

header h1 {
    text-align: center;
    font-size: 10px;
    background: #ffa0ab;
    color: #fff;
    border-bottom: 3px solid #fff;
    outline: 1px solid #ffa0ab;
}

header .inner {
  color: #fff;
  text-align: center;
}

header .headline {
  width: 100%;
    height: 15px;
    margin: 5px 0;
    background: #fff;
    border-bottom: 1px solid #888;
    font-size: 12px;
    padding: 4px 0px;
    color: #000;
    overflow:hidden;
}

header .headline span {
  margin-right: 20px;
  display: inline-block;
}

header .logo{
    max-width: 100%;
    height: auto;
}

/* グローバルメニュー */
#gnav > p {
  margin-bottom: 10px;
  padding: 6px;
  border-bottom: 1px solid #444;
  background: #333;
  display: block;
  text-align: center;
  color: #fff;
}
#gnav{
  width: auto;
  margin: 0 auto 10px auto;
  text-align: center;
  padding: 0 8px;
}
#gnav p{
  font-size: 12px;
}
#gnav ul{
    width: auto;
    padding: 0;
    margin: 0;
}

#gnav ul li{
  float: left;
  width: 30%;
  height: auto;
  margin: 0px 0px 15px 2.5%;
/*  padding: 5px 0;*/
  -webkit-box-shadow: 0px 1px 2px #000;
  background: linear-gradient(to bottom, rgba(249,252,247,1) 0%, rgba(245,249,240,1) 100%);
  background-image: -webkit-linear-gradient(bottom, rgb(219,219,219) 0%, rgb(232,232,232) 34%, rgb(255,255,255) 70%);
  box-sizing: border-box;
  display: block;
  -webkit-border-radius: 6px;
}

#gnav ul li a{
  float: none;
  width: 100%;
  height: auto;
  overflow: hidden;
  font-size: 11.5px;
  font-weight: bold;
  -webkit-border-radius: 6px;
  padding: 5px 0;
  display: block;
  text-overflow: ellipsis;
  text-align: center;
  text-shadow: 0px 2px 0px #fff;
  color: #000;
}


/* パンくずリスト */
.breadcrumbs {
  background: #fff;
  font-size: 10px;
  color: #000;
  margin: 0 10px 10px;
}
.breadcrumbs li {
  font-size: 10px;
  float: left;
}
.breadcrumbs li:before {
/*  content: "\f105";
  font-family: FontAwesome;*/
  display: inline;
  margin: 0 2px 0;
  content: " > ";
}
.breadcrumbs li:first-child:before {
  content: none;
  font-family: none;
  display: inline;
  margin: 0 8px 0;
}


/*

フッター

*/
footer {
  width: 100%;
  height: auto;
  padding-bottom: 70px;
  background: #ffa0ab;
  color: #fff;
  border-top: 3px solid #fff;
  outline: 1px solid #ffa0ab;
  text-align: center;
}
footer.index {
  padding-bottom: 0;
}

footer a {
  color: #fff;
}

footer a:hover {
  color: #ddd;
}

/* 店舗名 / エリア */
footer .name {
    width: auto;
  height: auto;
  font-size: 13px;
  text-shadow: 1px 1px 0 #000;
  padding: 6px;
  text-align: center;
/*  padding: 8px 0;
  border-bottom: 1px solid #333;
  background: #e8be3d;*/
}

/* コピーライト */
footer small div{
  width: auto;
  height: auto;
  font-size: 13px;
  color: #fff;
  text-align: center;
  padding: 10px;
}
footer small a{
  color: #fff;
}
footer .info_box{
}

/*
電話番号追従 フッター
*/
div.info_nav ul {
  width: 98%;
  white-space: nowrap;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(1, #fff), color-stop(0.53, #d3d3d3), color-stop(0.04, #fff));
  background: -webkit-linear-gradient(top, #fff 4%, #d3d3d3 53%, #fff 100%);
  background: linear-gradient(to bottom, #fff 4%, #d3d3d3 53%, #fff 100%);
  border-radius: 3px;
  box-shadow: 0 3px 0 #888;
  color: #ffffff;
  display: block;
  text-shadow: 1px 1px 1px black;
  font-weight: bold;
  text-align: center;
  padding: 2px 0;
  margin: 5px auto;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 10000;
}

div.info_nav li {
  padding: 3px 0;
}

div.info_nav li p {
  color: #fff;
}

div.info_nav li p img{
  vertical-align: middle;
}

div.info_nav li a {
  color: #fff;
  display: block;
}

div.info_nav li:last-child {
  border: none;
}

div.info_nav {
  opacity: 1;
  animation-duration: 0.5s;
  animation-name: fade-in;
  -moz-animation-duration: 0.5s;
  -moz-animation-name: fade-in;
  -webkit-animation-duration: 0.5s;
  -webkit-animation-name: fade-in;
}
/*フッタートップに戻る*/

.go_top {

  margin: 0 10px;
}
.go_top a{
  display: block;
  overflow: hidden;
  line-height: 40px;
  margin: 0 auto 14px auto;
  padding: 2px 0 0 0;
  font-size: 14px;
  font-weight: bold;
  color: #2B060F;
  text-shadow: 0px -2px #fff, 2px 0px #fff, 0px 2px #fff, -2px 2px #fff;
  border: 2px solid #eee;
  background-image: linear-gradient(180deg, rgb(255,235,208) 0%, rgb(255,235,208) 44%, rgb(245,227,199) 53%, rgb(245,227,199) 100%);
}
.go_top a img {
  margin-right: 20px;
  vertical-align: middle;
}





/*フェードイン*/
@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }
    1% {
        display: block;
        opacity: 0;
    }
    100% {
        display: block;
        opacity: 1;
    }
}
@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }
    1% {
        display: block;
        opacity: 0;
    }
    100% {
        display: block;
        opacity: 1;
    }
}
@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }
    1% {
        display: block;
        opacity: 0;
    }
    100% {
        display: block;
        opacity: 1;
    }
}

/****************************************
認証
****************************************/
.sp{
  margin: 0 auto 10px auto;
  text-align: center;
}
.sp img{
  vertical-align: middle;
  margin: 0 4px 4px 0;
}
.card {
  width: auto;
  margin: 0 10px;
  text-align: center;
}
.card a {
  display: block;
  overflow: hidden;
  line-height: 40px;
  margin: 0px auto 14px auto;
  padding: 2px 0 0 0;
  font-size: 14px;
  font-weight: bold;
  color: #2B060F;
  text-shadow: 0px -2px #fff, 2px 0px #fff, 0px 2px #fff, -2px 2px #fff;
  border: 2px solid #eee;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  box-shadow: 0px 1px 2px #000;
  -webkit-box-shadow: 0px 1px 2px #000;
}
.card a img {
  vertical-align: middle;
}
/****************************************
トップページ
****************************************/
/* カバーガール */
.covergirl_box{
  padding-top: 14px;
  text-align: center;
}
.covergirl_box .wrap {
    width: 200px;
    margin: 0 auto;
    display: block;
    text-align: center;
}

/* イベント画像 */
.event_box ul {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.event_box ul:first-child {margin-bottom: 20px;}
.event_box div:after,
.event_box dl:after,
.event_box ul:after,
.event_box ol:after,
.event_box ul li:after,
.event_box ol li:after {
  content: none;
}

/* 漫画 */
.manga_box{ text-align: center; }

/* 新着情報 */
#info_box {
  padding-top: 50px;
  margin-top: -50px;
  margin-bottom: 20px;
}
.topics_box_top {
    background: #fff;
    border: 1px solid #febdbb;
    border-top: none;
    border-radius: 0px 0px 6px 6px / 0px 0px 6px 6px;
    text-align: left;
    /* margin-bottom: 14px; */
    font-size: 12px;
}
.topics_box_top .list_box_01 li:first-of-type {
  padding: 5px;
}
.topics_box_top .list_box_01 li:first-of-type .title {
  margin-bottom: 10px;
  color: #FC428D;
}
.topics_box_top .list_box_01 li:first-of-type img {
  max-width: 100%;
  height: auto;
}

/* ページネーション */
#info_box .btn_page_info {
	padding: 0 1.0rem;
	display: flex;
	flex-direction: row;
	justify-content: center;
	gap: 10px;
  padding-top: 10px;
	margin-bottom: 20px;
}
#info_box .btn_page_info .btn_one_02 {
	max-width: 160px;
	width: 100%;
	font-size: 0.9rem;
	text-align: center;
	position: relative;
  margin: 0;
}
#info_box .btn_page_info .btn_one_02.btn_prev:before {
    position: absolute;
    left: 10px;
    top: 50%;
    margin-top: -5px;
    content: "";
    width: 6px;
    height: 6px;
    border-bottom: 2px solid #222;
    border-left: 2px solid #222;
    transform: rotate(45deg);
}
#info_box .btn_page_info .btn_one_02.btn_next:before {
    position: absolute;
    right: 10px;
    top: 50%;
    margin-top: -5px;
    content: "";
    width: 6px;
    height: 6px;
    border-top: 2px solid #222;
    border-right: 2px solid #222;
    transform: rotate(45deg);
}

/****************************************
新着情報ページ
****************************************/
.topics_box article {
    margin-bottom: 10px;
    padding: 8px 0;
    border-bottom: 1px dashed #e8be3d;
}
.topics_box article strong {
  font-weight: bold;
}
/*貫通防止*/
.topics_box article p { word-wrap: break-word }
.topics_box article p img { max-width: 100% }
/****************************************
プロフィールページ
****************************************/
.profile_box .name,
.profile_box .size,
.profile_box .short_comment,
.profile_box .icon {
/*    text-align: center;*/
    font-size: 13px;
}
.profile_box h3{
  font-size: 16px;
}

/* サムネイル */
.profile_thumb {
    width: 300px;
    margin: 0 auto;
}
.profile_thumb .flexslider li img{
    width: 290px;
    height: auto;
    box-sizing: border-box;
    margin: 0 auto;
}
.profile_thumb .img_cast{
  background-color: #ffa0ab;
  border: 1px solid #ccc;
  -webkit-border-radius: 6px;
  padding: 12px;
  border: 0;
}


.btn5s li {
    width: 50px;
    padding: 0px;
}
.btn5s li a {
    display: inline-block;
    width: 40px;
}
/* 項目 */
.profile_box table{
  margin: 10px auto;
  width: 100%;
}
.profile_box th {
  width: auto;
  background: #fef0f3;
  font-size: 13px;
  text-align: left;
  vertical-align: top;
  padding: 4px 4px 4px 10px;
  border: 1px solid #febdbb;
  border-bottom: 1px solid #febdbb;
  border-right: 1px solid #febdbb;
  color: #2B030F;
  font-weight: bold;
}
.profile_box td {
  width: auto;
  padding: 3px 5px 5px 5px;
}

/* 項目 */
.param_box dt,
.param_box dd {
    width: 50%;
    padding: 8px 0;
    border-bottom: 1px dashed #e8be3d;
    box-sizing: border-box;
    font-size: 12px;
    font-weight: bold;
    float: left;
}
/* 動画 */
#movie_wrapper { margin: 0 auto 10px auto }
/* オプション */
.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;
}
.profile_option_box .can { background: #ff007e }
.profile_option_box .normal { background: #fca3cf }
.profile_option_box .cant {
    background: #333333;
    color: #ffffff;
}
.mov_up #movie,
.mov_up #movie_jwplayer_display,
.mov_up #movie_displayarea,
.mov_up #movie_wrapper {
  width: 290px !important;
  height: 166px !important;
  margin: 0 auto;
}
#site_nav{
  margin: 0 auto;
  text-align: center;
  margin-bottom: 5px;
}
#site_nav ul {
  list-style-type: none;
  padding: 0px;
  width: auto;
  padding: 0;
  margin: 0;
}
#site_nav ul li a {
  display: inline-block;
  overflow: hidden;
  width: 90%;
  height: auto;
  font-size: 15px;
  font-weight: bold;
  text-overflow: ellipsis;
  text-align: center;
  text-decoration: none;
  text-shadow: 0px 2px 0px #fff;
  margin-bottom: 3px;
  color: #000;
  padding: 5px 0px;
  margin-top: 5px;
  -webkit-border-radius: 6px;
  box-shadow: 0px 1px 2px #000;
  -webkit-box-shadow: 0px 1px 2px #000;
  background: #ffffff; /* Old browsers */
  background: rgb(249,252,247); /* Old browsers */
  background: -moz-linear-gradient(top, rgba(249,252,247,1) 0%, rgba(245,249,240,1) 100%); /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(249,252,247,1)), color-stop(100%, rgba(245,249,240,1))); /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, rgba(249,252,247,1) 0%, rgba(245,249,240,1) 100%); /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, rgba(249,252,247,1) 0%, rgba(245,249,240,1) 100%); /* Opera 11.10+ */
  background: -ms-linear-gradient(top, rgba(249,252,247,1) 0%, rgba(245,249,240,1) 100%); /* IE10+ */
  background: linear-gradient(to bottom, rgba(249,252,247,1) 0%, rgba(245,249,240,1) 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f9fcf7', endColorstr='#f5f9f0', GradientType=0 ); /* IE6-9 */
}

/****************************************
料金ページ
****************************************/
.system_top{
  margin: 0px -10px 13px -10px;
}
.system_inner{
  padding: 4px 4px 8px 4px;
}

/*TELボタン左右のマージン打ち消し*/
.m_0{
  margin: 0px;
}
/****************************************
ホテルページ
****************************************/
.hotel_box dt{
    padding: 10px 0 5px 4px;
    font-size: 14px;
    font-weight: bold;
    color: #000;
    background-color: #fef0f3;
    border-top: 1px solid #febdbb;
}
.hotel_list h3{
  margin: 30px auto 8px;
}
.hotel_box dd{
    padding: 2px 0 2px 5px;
    font-size: 14px;
  }

.hotel_box .title_room span {
  font-weight: normal;
  font-size: 0.75em;
}
/****************************************
求人
****************************************/
.rec{
  width: 100%;
  margin: 10px auto;
}
.rec th {
  width: 60px;
  border-right: 1px #333 solid;
  border-bottom: 1px #333 solid;
  font-size: 14px;
  text-align: center;
  vertical-align: top;
  padding: 2px;
  font-weight: normal;
}
.rec td {
  width: auto;
  font-size: 14px;
  border-bottom: 1px dotted #febdbb;
  padding: 2px;
}
/*追加した内容の装飾*/
.recruit_txt_box {
  max-width: 800px;
  margin: 20px auto 40px;
  padding: 30px 20px;
  background: #fffafc;
  border: 1px solid #f2b6c6;
  border-radius: 12px;
  line-height: 1.8;
}
.recruit_txt_box .recruit_txt_box .recruit-catch {
  text-align: center;
  font-size: 1.4rem;
  text-align: center;
  box-shadow:none;
  line-height:normal;
  padding: 14px;
}
.recruit_txt_box .recruit-catch {
  position: relative;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: bold;
  padding: 24px 20px 20px;
  background: linear-gradient(135deg, #fff5f8, #ffe6ef);
  border-radius: 12px;
  box-shadow: 0 6px 20px rgba(0,0,0,0.08);
}
.recruit_txt_box .recruit-catch .badge_outer{display: flex;align-items: center;justify-content: center;}
.recruit_txt_box .recruit-catch .badge {
  display: block;
  padding: 6px 14px;
  font-size: 0.8rem;
  color: #fff;
  background: #d6336c;
  border-radius: 999px;
  letter-spacing: 0.05em;
  text-shadow:none;
  margin-right: 5px;
}
.recruit_txt_box .recruit-catch .price {
  display: inline-block;
  font-size: 1.7rem;
  color: #d6336c;
  background: linear-gradient(transparent 60%, #fff 60%);
  padding: 0 5px;
}
.recruit_txt_box .recruit-catch .present {
  display: inline-block;
  font-size: 1.5rem;
  color: #d6336c;
}
.recruit_txt_box .recruit-catch,
.recruit_txt_box .recruit-title{
  border: 1px solid #D3C8A8;
  font-weight: bold;
  color: #d6336c;
  text-shadow: 0px -2px #fff, 2px 0px #fff, 0px 2px #fff, -2px 2px #fff;
  background-image: -moz-linear-gradient(50% 0% -90deg, rgb(250,249,245) 0%, rgb(206,197,156) 100%);
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0, rgb(250, 249, 245)), color-stop(1, rgb(206, 197, 156)));
  background-image: -webkit-linear-gradient(-90deg, rgb(250, 249, 245) 0%, rgb(206, 197, 156) 100%);
  background-image: linear-gradient(180deg, rgb(250, 249, 245) 0%, rgb(206, 197, 156) 100%);
  border-radius: 3px;
  -webkit-border-radius: 3px;
}
.recruit_txt_box .recruit-catch {
  border: 1px solid #d6336c;
  font-size: 16px;
  padding-left: 10px;
  text-align: center;
  box-shadow:none;
  background-image: -moz-linear-gradient(50% 0% -90deg, rgb(250,250,250) 0%, rgb(242,183,198) 100%);
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0, rgb(250, 250, 250)), color-stop(1, rgb(242, 183, 198)));
  background-image: -webkit-linear-gradient(-90deg, rgb(250, 250, 250) 0%, rgb(242, 183, 198) 100%);
  background-image: linear-gradient(180deg, rgb(250, 250, 250) 0%, rgb(242, 183, 198) 100%);
}
.recruit_txt_box .recruit-title {
  margin-top: 30px;
  font-size: 18px;
  color: #d6336c;
  font-weight: bold;
/*  border-left: 4px solid #d6336c;*/
  padding-left: 10px;
}
.recruit_txt_box .recruit-points,
.recruit_txt_box .recruit-age,
.recruit_txt_box .recruit-check {
  margin: 20px 0;
  padding-left: 20px;
}
.recruit_txt_box .recruit-points li,
.recruit_txt_box .recruit-check li{
  display: flex;
  align-items: center;
}
.recruit_txt_box .recruit-points li,
.recruit_txt_box .recruit-age li,
.recruit_txt_box .recruit-check li {
  margin-bottom: 4px;
}
.recruit_txt_box .recruit-text {
  margin-top: 15px;
}
.recruit_txt_box .recruit-message {
  margin: 0 0 20px;
  padding: 20px;
  text-align: center;
  background: #fff;
  border: 1px dashed #f2b6c6;
  border-radius: 10px;
  font-size: 15px;
}
.recruit_txt_box .recruit-message span{
  font-size: 14px;
  margin-bottom: 10px;
  display: block;
}
.recruit_txt_box .recruit-salary {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}
.recruit_txt_box .recruit-salary p{
  padding: 20px;
  background: #ffe3ec;
  border-radius: 10px;
}
.recruit_txt_box img{
  width: 100%;
  height: auto;
  margin-bottom: 20px;
}
.recruit_txt_box .recruit-points img,
.recruit_txt_box .recruit-check img{
  width: 12px;
  margin-bottom: 0;
}
.txt_pink{color: #d6336c;}

/****************************************
プレイページ
****************************************/
#play_story {
  margin: 20px 0;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  color: #1b1b1b;
  text-shadow: 0 0 25px #edf8ff, 0 0 20px #edf8ff, 0 0 0.4px #edf8ff;
}

.play_story {
  width: auto;
	max-width: 100%;
	height: auto;
}

.play_inner{
  margin: 0 10px 14px 10px;
}

.play_inner img{
  width: 100%;
  min-width: 200px;
  max-width: 100%;
}
.play_inner .text_box{
    border-top: 1px solid #ddd;
    margin-top: 10px;
    padding-top: 10px;

}
/****************************************
ドロワーメニュー
****************************************/
/* #header {
  margin-top: 45px;
} */

/*

上部メニューバー
（ドロワーが閉じている状態）

*/
#header_menu {
  width: 100%;
  height: 72px;
  background: #ff96a2;
  position: fixed;
  bottom: 0;
  left:0;
  z-index: 9999;
}
#header_menu button {
  margin: 0;
  background: #ff0000;
}
#header_menu nav ul {
  width: 260px;
  margin: 0 auto;
}
#header_menu .header_right {
  margin-right: 72px;
  padding: 14px 0;
  text-align: center;
}
#header_menu .header_right a {
  width: 33%;
  border-right: 1px solid #ffffff;
  float: left;
  color: #ffffff;
  display: block;
  font-size: 18px;
  line-height: 1.4;
}
#header_menu .header_right a:last-of-type {
  border-right: none;
}
#header_menu .header_right a p {
  font-size: 0.75em;
}
/*

以下ドロワーが開いたときの設定

*/
/* 文字メニュー */
#drawer-nav > div{
  overflow: scroll;
}
#header_menu nav ul {
  margin: 0 auto 20px;
  padding: 20px 0 40px;
}
#header_menu nav ul .menu_t {
  width: 49%;
  border-bottom: 1px solid #ffffff;
  text-align: center;
  float: left;
}
#header_menu nav ul .menu_t:nth-of-type(odd) {
  border-right: 1px solid #ffffff;
}
#header_menu nav ul .menu_t:nth-of-type(1) {
  width: 98%;
  margin-bottom: 20px;
  border: none;
  font-weight: bold;
  letter-spacing: 4px;
}
#header_menu nav ul .menu_t:nth-of-type(2) {
  width: 98%;
  border-top: 1px solid #ffffff;
}
#header_menu nav ul .menu_t a {
  padding: 13px 10px;
  font-size: 1.2em;
}
/* アイコンメニュー */
#header_menu nav ul .menu_i {
  margin-bottom: 20px;
  float: left;
}
#header_menu nav ul .menu_i a {
  width: 50px;
  height: 35px;
  margin-right: 20px;
  padding-top: 15px;
  border-radius: 4px;
  background: #ffffff;
  color: #000000;
  text-align: center;
  display: block;
}
.mr_0 {
  margin-right: 0!important;
}
#header_menu nav ul .menu_i p {
  width: 50px;
  color: #ffffff;
  font-size: 0.75em;
  text-align: center;
}
/* 店舗情報 */
#header_menu nav ul {
  width: 260px;
  margin: 0 auto;
  text-align: center;
  display: block;
}
#header_menu nav ul .menu_d {
  margin-bottom: 8px;
  color: #ffffff;
}
#header_menu nav ul .menu_s {
  padding-bottom: 8px;
  border-bottom: 1px solid #ffffff;
  font-size: 1.1em;
  clear: both;
}
.btn_sq {
  width: 160px;
  margin: 0 auto;
  padding: 10px 0;
  border: 1px solid #ffffff;
  border-radius: 4px;
  color: #ffffff;
  text-align: center;
  display: block;
}

/****************************************
ドロワーメニュー 上書き設定
****************************************/
/* バーガーボタンの色 */
.drawer-hamburger-icon,
.drawer-hamburger-icon:after,
.drawer-hamburger-icon:before {
  background-color: #ffffff;
}
.drawer--left .drawer-hamburger {
  top: auto;
  bottom: 0;
  left: auto;
  right: 0;
  padding: 16px 16px 44px;
  width: 40px;
}
/* ドロワー */
.drawer--left .drawer-nav {
  width: 100%;
  /*padding-top: 60px;*/
  background-color: #ff96a2;
  left: -100%;
}
.drawer--left.drawer-open .drawer-hamburger {
  /* left: 84%; */
  left: auto;
  right: 0;
}
/* 項目 */
.drawer-menu-item {
  padding: 0;
  color: #ffffff;
}
/*メニュー*/
button .drawer-toggle{
  position: relative;
}

.drawer_txt{
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 10px;
  color: #fff;
  font-size: 14px;
}
.drawer-menu li a:visited{
    color: #fff;
}
.drawer-menu li a:hover{
    color: #555;
}


/****************************************
CSS Modal
****************************************/
.myModal_popUp,
input[name="myModal_switch"],
#myModal_open + label ~ label {
  display: none;
}
#myModal_open + label,
#myModal_close-button + label {
  cursor: pointer;
}

.myModal_popUp {
  animation: fadeIn 1s ease 0s 1 normal;
  -webkit-animation: fadeIn 1s ease 0s 1 normal;
}
#myModal_open:checked ~ #myModal_close-button + label{
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
}
@keyframes fadeIn {
  0% {opacity: 0;}
  100% {opacity: 1;}
}
@-webkit-keyframes fadeIn {
  0% {opacity: 0;}
  100% {opacity: 1;}
}

#myModal_open:checked + label ~ .myModal_popUp {
  background: #fff;
  display: block;
  width: 90%;
  height:75%;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  z-index: 998;
}

#myModal_open:checked + label ~ .myModal_popUp > .myModal_popUp-content {
  width: calc(100% - 40px);
  height: calc(100% - 20px - 44px );
  padding: 10px 20px;
  overflow-y: auto;
  -webkit-overflow-scrolling:touch;
}

#myModal_open:checked + label + #myModal_close-overlay + label {
  background: rgba(0, 0, 0, 0.70);
  display: block;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 100%;
  z-index: 997;
}

#myModal_open:checked ~ #myModal_close-button + label {
  display: block;
  background: #fff;
  text-align: center;
  font-size: 25px;
  line-height: 44px;
  width: 90%;
  height: 44px;
  position: fixed;
  bottom: 10%;
  left: 5%;
  z-index: 999;
}
#myModal_open:checked ~ #myModal_close-button + label::before {
  content: '×';
}
#myModal_open:checked ~ #myModal_close-button + label::after {
  content: 'CLOSE';
  margin-left: 5px;
  font-size: 80%;
}

@media (min-width: 768px) {
  #myModal_open:checked + label ~ .myModal_popUp {
    width: 800px;
    height: 700px;
    text-align: center;
  }
  #myModal_open:checked + label ~ .myModal_popUp > .myModal_popUp-content {
    height: calc(100% - 20px);
  }
  #myModal_open:checked ~ #myModal_close-button + label {
    width: 44px;
    height: 44px;
    left: 50%;
    top: 50%;
    margin-left: 356px;
    margin-top: -350px;
    overflow: hidden;
  }
  #myModal_open:checked ~ #myModal_close-button + label::after {
    display: none;
  }
}

.flee_img img{
  max-width:100%!important;
  zoom:1;
}

/****************************************
言語選択プルダウン（日本語/英語/中国語）
メインコンテンツの右端（.wrap padding 10px）に揃えて固定表示
****************************************/
.select_lang_wrap {
	display: block;
	width: 80px;
	height: 28px;
	position: fixed;
	top: 23px;
	right: 10px; /* .wrap の padding に揃える */
	z-index: 9999;
}
.select_lang_wrap::before {
	content: "\f0ac"; /* fa-globe (FontAwesome 4) */
	font-family: FontAwesome;
	position: absolute;
	top: 50%;
	left: 6px;
	transform: translateY(-50%);
	font-size: 12px;
	color: #3e4349;
	pointer-events: none;
	z-index: 1;
}
.select_lang_wrap::after {
	content: "";
	position: absolute;
	right: 8px;
	top: 50%;
	width: 5px;
	height: 5px;
	border-top: 1px solid #3e4349;
	border-left: 1px solid #3e4349;
	transform: translateY(-75%) rotate(-135deg);
	pointer-events: none;
}
.select_lang {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin: 0;
	border-radius: 4px;
	outline: none;
	cursor: pointer;
	width: 100%;
	height: 100%;
	border: 1px solid #3e4349;
	padding: 4px 18px 4px 22px;
	background: rgba(255, 255, 255, 0.95);
	color: #3e4349;
	font-family: sans-serif;
	font-size: 11px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

/****************************************
多言語版（英語版・中国語版）共通スタイル（SP）
****************************************/
#contents_lang_sp {
	text-align: left;
	color: #24040c;
}
#contents_lang_sp .lang_title {
	display: block;
	margin: 16px 0 8px;
	padding: 6px 10px;
	background: linear-gradient(to right, #ff5298, #ff85b8);
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0.05em;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
#contents_lang_sp .lang_title:first-of-type {
	margin-top: 0;
}
#contents_lang_sp .lang_subtitle {
	margin: 12px 0 8px;
	padding: 5px 8px;
	border-left: 4px solid #ff007e;
	background-color: rgba(255, 215, 215, 0.6);
	color: #820223;
	font-size: 14px;
	font-weight: bold;
}
#contents_lang_sp .lang_text {
	font-size: 12px;
	line-height: 1.7;
}
#contents_lang_sp .lang_text p {
	margin-bottom: 8px;
}
#contents_lang_sp .lang_text p:last-child {
	margin-bottom: 0;
}
#contents_lang_sp .lang_text ul {
	margin: 0;
	padding: 0;
	list-style: none;
  text-align: left;
}
#contents_lang_sp .lang_text li {
	margin-bottom: 5px;
	line-height: 1.4;
  position: relative;
  padding-left: 0.8em;
}
#contents_lang_sp .lang_text li::before {
  content: "●";
  position: absolute;
  left: 0;
  top: 4px;
  font-size: 0.4em;
}
#contents_lang_sp .lang_caution {
	margin: 0 0 12px;
	padding: 0;
	list-style: none;
	font-size: 11px;
	line-height: 1.6;
	color: #820223;
}
#contents_lang_sp .lang_date_list {
	margin: 0 0 12px;
	padding: 0;
	list-style: none;
}
#contents_lang_sp .lang_date_list li {
	display: block;
	padding: 8px 20px 8px 8px;
	background: url(../images/list_arrow.png) 100% 50% no-repeat;
	border-top: 1px solid #febdbb;
	color: #FC428D;
	font-size: 12px;
	cursor: pointer;
	text-align: left;
}
#contents_lang_sp .lang_date_list li:last-child {
	border-bottom: 1px solid #febdbb;
}
#contents_lang_sp .lang_date_list li.select {
	background-color: #ffe1ec;
	font-weight: bold;
}
#contents_lang_sp .lang_no_schedule {
	margin: 8px 0 16px;
	padding: 16px;
	border: 1px dashed #ffc2c2;
	background-color: rgba(255, 255, 255, 0.6);
	text-align: center;
	font-size: 12px;
	color: #820223;
}
#contents_lang_sp .lang_table {
	width: 100%;
	margin-bottom: 8px;
}
#contents_lang_sp .lang_table th {
	white-space: nowrap;
}
#contents_lang_sp .lang_unit {
	font-size: 10px;
}
#contents_lang_sp .lang_map {
	width: 100%;
	height: 220px;
	margin-bottom: 8px;
	border: 1px solid #ffc2c2;
}
#contents_lang_sp .lang_access_list {
	margin: 12px 0;
	padding: 0;
	list-style: none;
}
#contents_lang_sp .lang_access_list li {
	margin-bottom: 12px;
	padding: 8px;
	background-color: rgba(255, 255, 255, 0.8);
	border: 1px solid #ffc2c2;
	font-size: 12px;
	line-height: 1.5;
	text-align: center;
}
#contents_lang_sp .lang_access_list li p {
	margin-bottom: 6px;
	text-align: left;
}
#contents_lang_sp .lang_access_list li img {
	max-width: 100%;
	height: auto;
}
#contents_lang_sp .cast_box_2column {
	margin-bottom: 16px;
}
#contents_lang_sp .cast_box_2column .name {
	font-size: 12px;
  color: #FC428D;
}
#contents_lang_sp .cast_box_2column .size {
  color: #FC428D;
}
#contents_lang_sp .cast_box_2column li .time {
    border: 1px #222222 solid;
    padding: 3px;
    margin-top: 5px;
    color: #FC428D;
}

#contents_lang_sp .img_concept {
  width: auto;
  max-width: 100%;
  height: auto;
}
#contents_lang_sp .section_box {
    padding: 8px;
    background: #fff;
    border: 1px solid #febdbb;
    border-radius: 0px 0px 6px 6px / 0px 0px 6px 6px;
    -webkit-border-radius: 0px 0px 6px 6px / 0px 0px 6px 6px;
    text-align: left;
    margin-bottom: 14px;
}
#contents_lang_sp .access_txt,
#contents_lang_sp .access_txt a {
  color: #820223;
  font-size: 15px;
}