@charset "utf-8";

/* =========================================================
 パーソナルページ
========================================================= */
/* fullContents
--------------------------------------------------------- */
/* personalFullBlock
--------------------------------------------------------- */
#personalFullBlock {
  /* background-color: #a2d1ad; */
  background-image: url("/img/common/bg_body02.jpg");
  background-size: 100px 100px;
  height: 594px;
  margin: 0 auto 30px;
  position: relative;
  width: 980px;
  /* border-radius: 9px; */
}

/* ----- personalLeft ----- */
.personalLeft {
  float: left;
  height: 595px;
  position: relative;
  width: 770px;
}

/* ----- 女の子名・スリーサイズ等 ----- */
.personalHeadingBlock {
  background-repeat: no-repeat;
  box-sizing: border-box;
  bottom: -6px;
  height: 147px;
  left: 20px;
  position: absolute;
  width: 300px;
  z-index: 0;
  background-image: url("/img/personal/bg_personal_heading.png");
}

.fullContents h3.personalName {
  background-color: transparent;
  box-shadow: none;
  box-sizing: border-box;
  color: #323232;
  /* text-shadow: -0.5px -1px 0 #e39e8f; */
  font-family: yu-mincho-pr6n, sans-serif;
  font-size: 29px;
  font-weight: bold;
  height: auto;
  letter-spacing: 0;
  line-height: 1;
  margin: 0;
  padding: 25px 0 0 23px;
  margin-bottom: 4px;
  text-indent: 0;
  border: none;
  background-image: none;
}

.fullContents h3.personalName:after,
.fullContents h3.personalName:before {
  content: none;
}

.personalName span {
  font-weight: bold;
  font-size: 24px;
}

.personalHeadingBlock .cupIcon {
  position: absolute;
  right: 16px;
  top: 8px;
}

.personalHeadingBlock .cupIcon img {
  height: auto;
  width: 50px;
}

.personalSize {
  font-size: 16px;
  font-weight: bold;
  letter-spacing: -0.02em;
  width: 90%;
  margin: 5px auto 0;
  padding-top: 7px;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
}

.personalHeadingBlock .personalSize {
  margin-top: 19px;
  width: 83%;
  font-size: 17px;
}

.personalState {
  display: flex;
  margin: 0;
  position: absolute;
  top: 57px;
  left: 25px;
  z-index: 1;
}

.personalHeadingBlock .personalState {
  top: auto;
  bottom: 21px;
}

.personalState li {
  background-image: url("/img/common/icon_girls_state.png");
  background-repeat: no-repeat;
  display: block;
  height: 17.5px;
  /* position: absolute; */
  text-indent: -9999px;
  /* top: 0; */
  width: 54px;
  background-position: 0 1px;
}

.personalHeadingBlock .personalState li {
  top: 5px;
}

.personalState li.todayIcon {
  background-image: url("/img/personal/icon_personal_today.png");
}

.personalState li:first-of-type {
  left: 0;
}

.personalState li:nth-of-type(2) {
  left: 56px;
}

/* ----- 女の子情報（メイン） ----- */
.personalMainInfoBlock {
  background: url("/en/img/personal/bg_personal_info_main01.png?v=191122") no-repeat;
  height: 556px;
  margin: 20px;
  position: relative;
  width: 294px;
}

/* 女の子詳細 */
.mainDetailBox {
  height: 183px;
  margin: 35px auto 6px;
  padding-top: 11px;
  overflow-x: hidden;
  overflow-y: auto;
  width: 248px;
}

.mainDetailBox li {
  border-bottom: 1px dashed;
  font-size: 12px;
  letter-spacing: 0.03em;
  line-height: 1.25;
  padding: 4px 0;
  box-sizing: border-box;
}

.mainDetailBox li span {
  font-size: 100%;
  color: #ca0000;
}

/* 女の子メッセージ */
.messageBox {
  color: #ffffff;
  font-size: 12px;
  height: 148px;
  letter-spacing: 0.03em;
  line-height: 1.3;
  margin: 0 auto;
  width: 254px;
  word-break: break-word;
  padding: 30px 12px 18px 18px;
  box-sizing: border-box;
}

.messageBox>div {
  height: 100%;
  overflow-y: scroll;
}

.messageBox a {
  color: #ffffff;
}

.messageBox img {
  height: auto;
  max-width: 98%;
}

/* QRコード */
.qrBox {
  height: 78px;
  width: 78px;
  /* margin: 18px auto 0; */
  background-image: url(/img/personal/img_qr_comment.png);
  /* background-size: 151px; */
  background-repeat: no-repeat;
  background-position-x: right;
  position: absolute;
  border: 1px solid #565656;
  bottom: 24px;
  left: 25px;
}

.qrBox img {
  display: block;
  width: 78px;
  border: 1px solid #565656;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
}

/* ----- 女の子情報（サブ） ----- */
.personalSubInfoBlock {
  box-sizing: border-box;
  height: 121px;
  width: 415px;
  position: absolute;
  color: #3b1919;
  bottom: 19px;
  left: 334px;
  background-image: url("/img/personal/bg_personal_info_sub.png");
}

.subDetailBox {
  height: 81px;
  margin: 20px 25px 0;
  overflow-x: hidden;
  overflow-y: auto;
}

.subDetailBox p,
.subDetailBox li {
  border-bottom: 1px dashed #323232;
  font-size: 12px;
  letter-spacing: 0.03em;
  line-height: 1.3;
  padding: 4px 0;
}

.subDetailBox p span,
.subDetailBox li span {
  color: #ca0000;
  font-size: 100%;
}

.subDetailBox li {
  width: 47%;
}

.subDetailBox li:nth-of-type(odd) {
  clear: both;
  float: left;
}

.subDetailBox li:nth-of-type(even) {
  float: right;
}

/* ----- 女の子写真・動画 ----- */
.personalImgBlock {
  position: absolute;
  right: 20px;
  top: 24px;
}

.personalImgBlock input {
  display: none;
}

.personalImgBlock ul {
  display: block;
  position: absolute;
  top: -4px;
  left: 0;
}

.personalImgBlock li {
  display: none;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  height: 556px;
  overflow: hidden;
}

video {
  background-color: #10100e;
  display: block;
  height: 427px;
}

video p {
  color: #fff;
  padding: 4px;
  width: 413px;
}

/* ----- personalRight ----- */
.personalRight {
  float: left;
  height: 594px;
  position: relative;
  width: 210px;
  right: 0;
}

.personalRight .border {
  left: -1px;
  position: absolute;
  top: 20px;
  height: 555px;
  overflow: hidden;
}

.personalThumbnailBlock {
  width: 190px;
  height: 594px;
  margin: 0 auto;
  overflow-x: hidden;
  overflow-y: auto;
  position: relative;
}

.thumbnailList {
  left: 0;
  position: absolute;
  top: 0;
  bottom: auto;
  z-index: 1;
}

.thumbnailList>div:first-child {
  margin-top: 20px;
}

/* お気に入り追加ボタン */
.favoriteBtn {
  width: 186px;
}

.like-wrap {
  padding: 0 !important;
  background: none !important;
  border: none !important;
}

.favoriteBtn .cc-favorite .like-wrap button,
.favoriteBtn .like-wrap a.cc-fav-girl {
  height: 37px;
  color: #fb5668;
}

/* 写真サムネイル */
.photoThumbnailBox li {
  display: table;
  float: left;
  height: 122px;
  margin: 0 4px 4px 0;
  overflow: hidden;
  width: 91px;
}

.photoThumbnailBox li label {
  cursor: pointer;
  display: block;
  overflow: hidden;
  height: 122px;
  text-align: center;
  vertical-align: middle;
}

.photoThumbnailBox li label img,
.photoThumbnailBox li>img {
  max-height: 136px;
  max-width: 91px;
  width: 100%;
}

/* 動画サムネイル */
.videoThumbnailBox li {
  background-color: #1d1e1f;
  height: 136px;
  margin: 0 0 4px;
  overflow: hidden;
  width: 186px;
  position: relative;
}

.videoThumbnailBox li label {
  cursor: pointer;
  display: block;
  height: 136px;
  position: relative;
  text-align: center;
  vertical-align: middle;
}

.videoThumbnailBox li label:after {
  background: url("/img/personal/icon_video.png") no-repeat;
  content: "";
  height: 32px;
  left: 66px;
  position: absolute;
  top: 52px;
  width: 54px;
}

.videoThumbnailBox li label img,
.videoThumbnailBox li>img {
  width: 100%;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}

.videoThumbnailBox li>img {
  margin: 18px 0 0;
}

/* 上下ボタン */
#personalFullBlock p#prevBtn,
#personalFullBlock p#nextBtn {
  background-image: url("/img/personal/btn_personal_carousel_vertical.png");
  background-repeat: no-repeat;
  cursor: pointer;
  display: block;
  height: 41px;
  margin: 0;
  position: absolute;
  right: 20px;
  width: 41px;
  z-index: 2;
}

#personalFullBlock p#prevBtn.hide,
#personalFullBlock p#nextBtn.hide {
  display: none;
}

#personalFullBlock p#prevBtn {
  top: -12px;
}

#personalFullBlock p#prevBtn:hover {
  top: -17px;
}

#personalFullBlock p#nextBtn {
  background-position: 0 bottom;
  bottom: -12px;
}

#personalFullBlock p#nextBtn:hover {
  bottom: -17px;
}

#personalFullBlock p#prevBtn,
#personalFullBlock p#nextBtn {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
}

/* 女の子画像の切り替え
--------------------------------------------------------- */
/* 切り替え処理 */
.personalImgBlock>input:nth-of-type(1):checked~ul li:nth-of-type(1),
.personalImgBlock>input:nth-of-type(2):checked~ul li:nth-of-type(2),
.personalImgBlock>input:nth-of-type(3):checked~ul li:nth-of-type(3),
.personalImgBlock>input:nth-of-type(4):checked~ul li:nth-of-type(4),
.personalImgBlock>input:nth-of-type(5):checked~ul li:nth-of-type(5),
.personalImgBlock>input:nth-of-type(6):checked~ul li:nth-of-type(6),
.personalImgBlock>input:nth-of-type(7):checked~ul li:nth-of-type(7),
.personalImgBlock>input:nth-of-type(8):checked~ul li:nth-of-type(8),
.personalImgBlock>input:nth-of-type(9):checked~ul li:nth-of-type(9),
.personalImgBlock>input:nth-of-type(10):checked~ul li:nth-of-type(10) {
  display: block;
  opacity: 1;
  animation-duration: 0.5s;
  animation-name: fadeIn;
  -moz-animation-duration: 0.5s;
  -moz-animation-name: fadeIn;
  -webkit-animation-duration: 0.5s;
  -webkit-animation-name: fadeIn;
}

/* 切り替えアニメーション */
@keyframes fadeIn {
  0% {
    display: none;
    opacity: 0;
  }

  1% {
    display: block;
    opacity: 0;
  }

  100% {
    display: block;
    opacity: 1;
  }
}

@-moz-keyframes fadeIn {
  0% {
    display: none;
    opacity: 0;
  }

  1% {
    display: block;
    opacity: 0;
  }

  100% {
    display: block;
    opacity: 1;
  }
}

@-webkit-keyframes fadeIn {
  0% {
    display: none;
    opacity: 0;
  }

  1% {
    display: block;
    opacity: 0;
  }

  100% {
    display: block;
    opacity: 1;
  }
}

/* rightContents
--------------------------------------------------------- */
/* ----- scheduleBlock ----- */
#scheduleBlock {
  margin: 0 auto;
}

#scheduleBlock table,
#scheduleBlock th,
#scheduleBlock td {
  border: 1px solid #656355;
  border-collapse: collapse;
  font-size: 14px;
  text-align: center;
  vertical-align: middle;
}

#scheduleBlock th,
#scheduleBlock td {
  height: 32px;
  width: calc(760px / 7);
}

#scheduleBlock th {
  background-color: #494949;
  color: #ffffff;
  font-weight: bold;
}

#scheduleBlock th:last-of-type {
  border-right: none;
}

#scheduleBlock td {
  background-color: #ffffff;
  color: #565656;
}

/* 予約ボタン欄 */
#scheduleBlock tr:last-child td {
  height: 40px;
}

#scheduleBlock button {
  -webkit-appearance: none;
  border: none;
  background: none;
  cursor: pointer;
}

#scheduleBlock button div {
  width: 75px;
  height: 30px;
  border-radius: 8px;
  font-weight: bold;
  font-size: 90%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  background-color: #dddddd;
  border: 1px solid #333333;
  background: linear-gradient(0deg, #cfcece, #ffffff);
  position: relative;
  overflow: hidden;
}

#scheduleBlock button div:before {
  background-color: rgba(255, 255, 255, 0.5);
  content: "";
  display: block;
  height: 100%;
  left: -100%;
  position: absolute;
  width: 70%;
  transform: skewX(-45deg);
  transition: all .25s linear;
  -webkit-transition: all .25s linear;
  -moz-transition: all .25s linear;
  -ms-transition: all .25s linear;
  -o-transition: all .25s linear;
  -webkit-transform: skewX(-45deg);
  -moz-transform: skewX(-45deg);
  -ms-transform: skewX(-45deg);
  -o-transform: skewX(-45deg);
}

#scheduleBlock button:hover div:before {
  left: 200%;
}

.notPost {
  margin-top: 45px;
  margin-bottom: 40px;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  color: #565656;
}

/* ----- 写メサムネ ----- */
.box01:nth-of-type(5) {
  margin-right: 0;
}

.syameAnchor {
  padding: 4px;
}

/* ----- syameBalloonBlock ----- */
#syameBalloonBlock {
  margin: 0 auto 43px;
  position: relative;
  width: 100%;
}

#syameBalloonIcon {
  display: none;
  position: absolute;
  top: -18px;
}

.syameBalloonBox {
  padding: 10px;
  float: left;
  margin: 0 20px 0 0;
  width: 155px;
}

.syameBalloonBox:last-of-type {
  margin-right: 0;
}

.balloonTitle {
  color: #ffffff;
  font-size: 16px;
  font-weight: bold;
  padding: 0 0 5px;
  line-height: 1.1;
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  -webkit-text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
}

.balloonTitle a {
  color: #ffffff;
}

.balloonTitle a:hover {
  text-decoration: none;
}

.syameBalloonFrame {
  background: #ffffff;
  height: 357px;
  overflow: auto;
}

.balloonText {
  color: #565656;
  font-size: 14px;
  letter-spacing: 0.05em;
  line-height: 1.4;
  padding: 5px;
}

.postDiary {
  margin: 0 auto 10px;
}

.postDiary img {
  vertical-align: middle;
  max-width: 128px;
}

.mainSyameBlock {
  margin-bottom: 12px;
  position: relative;
}

#rightContents .mainSyameBlock .moreReadLargeWrap,
#rightContents .mainSyameBlock .moreReadSmallWrap a {
  height: 35px;
  width: 150px;
  line-height: 35px;
}

/* chargedOptionWrapper/有料オプション
--------------------------------------------------------- */
.chargedOptionBox {
  border-collapse: collapse;
  font-size: 14px;
  vertical-align: middle;
  width: 100%;
  text-align: left;
}

.chargedOptionBox table {
  width: 100%;
  /* border: 1px solid #565656; */
  box-sizing: border-box;
  border-spacing: 0 5px;
  border-collapse: separate;
}

.chargedOptionBox tr {
  box-sizing: border-box;
  margin: 0;
  border: 1px solid #565656;
  background-color: #ffffff;
  height: 50px;
}

.chargedOptionBox tr:nth-of-type(3n) {
  margin-right: 0;
}

.chargedOptionBox th {
  background: #494949;
  font-weight: bold;
  line-height: 32px;
  height: 50px;
  vertical-align: middle;
  box-sizing: border-box;
  text-indent: 18px;
  color: #ffffff;
  width: 100%;
  border-right: 1px solid #565656;
  font-size: 16px;
  text-align: center;
}

.chargedOptionBox th span:not(.addOptionPersonal) {
  display: inline-block;
  font-weight: inherit;
}

.chargedOptionBox td {
  /* color: #565656; */
  text-align: center;
  vertical-align: middle;
  width: 49px;
  /* line-height: 32px; */
  box-sizing: border-box;
  font-weight: bold;
  background-color: #ffffff;
  border: 1px solid #565656;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.chargedOptionBox td img {
  width: 80%;
  height: auto;
}

.chargedOptionBox.basicPlay tr:nth-of-type(3n) {
  margin-right: 0;
}

.chargedOptionBox.basicPlay tr:last-child {
  margin-right: auto;
}

.chargedOptionBox.basicPlay th {
  height: 37px;
  line-height: 1.1;
  padding-top: 0;
  text-indent: 0;
  box-sizing: border-box;
  text-align: center;
}

.chargedOptionBox.basicPlay td {
  width: 36px;
}

/* personalLeftContents
--------------------------------------------------------- */
#personalLeftContents {
  float: left;
  width: 370px;
}

/* ----- profileBlock ----- */
.profileBox table {
  width: 100%;
}

.profileBox table,
.profileBox th,
.profileBox td {
  border: 1px solid #925932;
  border-collapse: collapse;
  font-size: 14px;
  vertical-align: middle;
}

.profileBox th {
  background: #feffdd;
  height: 32px;
  font-weight: bold;
}

.profileBox td {
  background: #fff;
}

/* smCheck */
.smCheck th {
  text-align: center;
}

/* profileDetails */
.profileDetails th,
.profileDetails td {
  text-align: left;
  padding: 0 0 0 15px;
}

.profileDetails th {
  width: 104px;
}

.profileDetails td {
  background: #ffffff;
  color: #686868;
}

/* ----- storeCommentBlock ----- */
.storeCommentBox {
  border: 1px solid;
  margin: 0 auto 20px;
}

.storeCommentBox p {
  background: #ffffff;
  letter-spacing: 0.05em;
  line-height: 1.3;
  padding: 20px;
  /* color: #565656; */
}

/* ----- enqueteBlock ----- */
.enqueteBox table,
.enqueteBox th,
.enqueteBox td {
  border: 1px solid #323232;
  border-collapse: collapse;
  font-size: 14px;
  vertical-align: middle;
  width: 100%;
  text-align: left;
}

.enqueteBox th,
.enqueteBox td {
  padding: 9px 5px 9px 0;
  text-indent: -25px;
}

.enqueteBox th {
  background-color: #494949;
  color: #ffffff;
  font-weight: bold;
  padding-left: 45px;
}

.enqueteBox td {
  background-color: #ffffff;
  /* color: #ff4c62; */
  padding-left: 65px;
}

.enqueteBox th:before,
.enqueteBox td:before {
  background-image: url("/img/personal/icon_personal_qa.png");
  display: inline-block;
  height: 17px;
  vertical-align: top;
  width: 20px;
  margin-right: 3px;
  background-size: 200%;
}

.enqueteBox td:before {
  background-position: right 0;
}

/* personalRightContents
--------------------------------------------------------- */
#personalRightContents {
  float: right;
  width: 370px;
}

/* ----- playBlock ----- */
#playBlock h3 span {
  font-size: 17px;
}

.playBox {
  margin: 0 auto 20px;
}

.playBox table,
.playBox th,
.playBox td {
  color: #ffffff;
  font-size: 14px;
  vertical-align: middle;
  text-align: center;
}

.playBox table {
  width: 100%;
}

.playBox th.longText {
  height: 54px;
  padding: 0;
}

.playBox th,
.playBox td {
  border: 1px solid #323232;
  border-collapse: collapse;
  display: block;
  float: left;
  line-height: 1.3;
  margin: 0 12px 0 0;
  padding: 6px 0;
  width: 113px;
}

.playBox th:last-of-type,
.playBox td:last-of-type {
  margin-right: 0;
}

.playBox th {
  background: #f8ffd5;
  height: auto;
  font-weight: bold;
}

#basicPlay th span {
  font-size: 100%;
  font-weight: bold;
  letter-spacing: -0.06em;
}

#payOption table span.addOptionPersonal {
  display: block;
  text-align: center;
  font-weight: bold;
  color: #ffffff;
  background-color: #494949;
  /* border-bottom: 1px solid #B9BDC2; */
  padding: 3px 0;
  margin-bottom: 2px;
  width: 100%;
  height: 18px;
  line-height: 18px;
}

#payOption span span {
  display: initial;
  font-size: 100%;
  letter-spacing: -0.06em;
}

.playBox td {
  background: #fff none repeat scroll 0 0;
  border-top: medium none;
  font-size: 17px;
  height: 30px;
  line-height: 30px;
  margin-bottom: 10px;
  padding: 0;
}

.playBox tr:last-of-type td {
  margin-bottom: 0
}

.playNotesBox {
  margin-top: 10px;
}

.playNotes {
  font-size: 12px;
  line-height: 1.5;
  margin: 0 auto 5px;
  letter-spacing: 1px;
  color: #565656;
}

/* playCourse */
#playCourse.playBox th {
  line-height: 1.1;
}

/* ----- personalTelBlock ----- */
.personalTelBlock {
  background-color: #ffffff;
  margin: 20px auto;
  text-align: center;
  border: 1px solid;
}

.telText00 {
  color: #ffffff;
  background: url("/img/personal/bg_personalTelBlock_caption.jpg");
  font-size: 14px;
  font-weight: bold;
  height: 38px;
  line-height: 38px;
  font-family: initial;
}

.personalTelText {
  width: 94%;
  height: 81px;
  margin: 0 auto;
  border-radius: 3px;
  padding-top: 10px;
  box-sizing: border-box;
  font-family: initial;
  text-align: left;
}

.telText01 {
  font-size: 15px;
  font-weight: bold;
}

.telText01>span {
  font-size: 22px;
}

.telText02 {
  color: #644d19;
  font-size: 34px;
  font-weight: bold;
  margin: 8px 0 0 0;
  transform: scaleX(1.08);
  text-indent: 12px;
}

.personalTelText p span {
  font-size: 100%;
  font-weight: inherit;
}

.personalTelText p.telText02 span {
  font-size: 25px;
}

/* ----- webReserve ----- */
/* ----- commonTodayGirls ----- */
.slideFrame ul.clearfix li img {
  border: 4px solid #ffffff;
  border-radius: 4px;
}

.commonTodayGirls .sokuhime .sokuhimeFrame p {
  bottom: 1px;
}

.sokuhime .sokuhimeFrame::after {
  bottom: 2px;
}

/* ----- 口コミ ----- */
.noReview {
  display: none;
}

.reviewBox {
  max-height: 466px;
  overflow: auto;
  border: 1px solid #656355;
}

.reviewContentBox .reviewContent {
  background-color: #ffffff;
  padding: 20px;
}

.reviewContentBox .reviewContent:nth-child(even) {
  background-color: #e5e2d6;
}

.reviewContentBox .reviewContent div {
  /* color: #565656; */
  font-size: 14px;
  line-height: 1.45em;
}

.reviewContentBox .reviewContent p.customerName {
  color: #323232;
  font-size: 14px;
  line-height: 1.45em;
  text-align: right;
}

.linkReview .linkReviewBtn {
  background: url('/img/personal/btn_linkReview.png') no-repeat;
  background-color: #c08e30;
  margin: 0px auto;
  border-radius: 2px;
  box-shadow: 0 4px 0 #795b21;
}

.linkReview .linkReviewBtn a {
  color: #ffffff;
  text-decoration: none;
  display: block;
  height: 100%;
  width: 100%;
  text-align: center;
}

/* ----- 特集 ----- */
.feature .externalSyameBox {
  color: #323232;
  padding: 20px;
  line-height: 1.3;
  letter-spacing: 0.05em;
  border: 1px solid #11b877;
  background-color: #ffffff;
}

.feature .externalSyameBox img {
  display: block;
  max-width: 100%;
}

.feature .externalSyameBox dt {
  font-weight: bold;
}

.feature .externalSyameBox dt:not(:first-of-type),
.feature .externalSyameBox dd {
  margin: 10px 0 0;
}

/* ----- ランクバナー ----- */
#bnRank {
  position: absolute;
  top: 12px;
  right: 12px;
}

.personalMainInfoBlock-bnRank {
  position: absolute;
  right: 19px;
  top: 17px;
  width: 110px;
}

/* 姉妹店紹介
--------------------------------------------------------- */
/* ----- 見出し ----- */
.sisterStore iframe {
  margin-bottom: 20px;
  width: 100%;
  height: 250px;
}

/* ----- 外枠 ----- */
.sisterStore .shopScheduleBox {
  margin-bottom: 20px;
  position: relative;
  background-color: #ffffff;
}

.sisterStore .shopScheduleHeading {
  height: 74px;
  margin-bottom: 25px;
  box-shadow: 1px 3px 3px 0px rgb(152, 149, 149);
  background: url(/img/personal/bg_sisterBox_since.png) no-repeat;
  border-radius: 5px;
}

.sisterStore .shopScheduleImg {
  height: auto;
  padding: 10px 19px 8px;
}

.sisterStore .shopScheduleImg a {
  display: block;
  width: 233px;
  height: 51px;
}

.sisterStore .aromaPuren .shopScheduleHeading {
  background: url(/img/personal/bg_sisterBox_shinbashi.jpg) no-repeat;
}

.sisterStore .granEsthe .shopScheduleHeading {
  background: url(/img/personal/bg_sisterBox_shinagawa.jpg) no-repeat;
}

.sisterStore .estheGotanda .shopScheduleImg {
  width: 235px;
  height: auto;
  padding: 6px 15px 8px;
  box-sizing: border-box;
}

.sisterStore .aromaPuren .shopScheduleImg {
  width: 235px;
  height: auto;
  padding: 15px 15px 8px;
  box-sizing: border-box;
}

.sisterStore .granEsthe .shopScheduleImg {
  width: 240px;
  height: auto;
  padding: 6px 17px 8px;
}

.sisterStore .shopScheduleImg:hover {
  opacity: 0.5;
}

.sisterStore .shopScheduleImg img {
  width: 100%;
  height: auto;
}

/* ----- 出勤一覧 ----- */
.sisterStore .shopScheduleContents {
  position: relative;
}

/* ----- スライドボタン ----- */
.sisterStore .slideBtn li button {
  width: 48px;
  height: 47px;
  cursor: pointer;
  text-indent: -9999px;
  background-color: transparent;
  border: none;
  outline: none;
  padding: 0;
  position: absolute;
  bottom: 38%;
}

/*青ボタン*/
.sisterStore .aromaPuren .slideBtn li button {
  background: url(/img/personal/bg_allow_blue.png) no-repeat;
}

/*黒ボタン*/
.sisterStore .granEsthe .slideBtn li button {
  background: url(/img/personal/bg_allow_black.png) no-repeat;
}

/*左ボタン*/
.sisterStore .slideBtn li button.previewBtn {
  left: -4px;
  background-position: 0 0;
}

/*右ボタン*/
.sisterStore .slideBtn li button.nextBtn {
  right: 0;
  background-position: -48px 0;
}

/* ----- 店舗リンク ----- */
.sisterStore .slideBtn p.shopViewBtn {
  background-image: url(/img/personal/btn_sisterBox.jpg);
  background-repeat: no-repeat;
  height: 29px;
  width: 760px;
  text-align: center;
  line-height: 29px;
  font-size: 15px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "メイリオ", Meiryo, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", sans-serif;
}

.sisterStore .slideBtn p.shopViewBtn:hover {
  opacity: 0.8;
}

.sisterStore .slideBtn p.shopViewBtn a {
  color: #ffffff;
  text-decoration: none;
  display: block;
}

.cc-favorite p {
  color: #565656;
  line-height: 1.7;
}

.sisterStoreBlockInner {
  height: 100%;
  width: max-content;
  overflow: hidden;
  padding-top: 0;
  padding-left: 0;
  border-top: none;
  margin-top: 0;
}

@media all and (-ms-high-contrast: none) {
  .sisterStoreBlockInner {
    width: 6750px;
  }
}

.sisterBox {
  width: 123px;
  box-sizing: border-box;
  background: #ff96c3 none repeat scroll 0 0;
  height: auto;
  width: auto;
}

.sisterBox:nth-of-type(5n) {
  margin-right: 12px;
}

.sisterBox img {
  width: 100%;
  height: auto;
}

.sisterBox a {
  color: #ffffff;
  text-decoration: none;
}

.sisterBox a:hover {
  text-decoration: underline;
}

.sisterName {
  font-size: 12px;
  font-weight: bold;
  padding: 10px 10px 0;
  white-space: pre;
  overflow: hidden;
  line-height: 1.1em;
}

.sisterAge {
  font-weight: bold;
}

.sisterSize {
  font-size: 11px;
  padding: 5px 0 0 10px;
}

.sisterDate {
  font-size: 11px;
  padding: 5px 0 6px 10px;
}

.shopScheduleContents {
  position: relative;
}

.slider {
  margin: 100px auto;
  width: 85%;
  height: 221px;
}

.slider img {
  height: auto;
  width: 100%;
}

/*slick setting*/
.slick-prev:before,
.slick-next:before {
  color: #000;
}

.slick-slide {
  margin-right: 10px;
}

.slick-slide:last-of-type {
  margin-right: 0;
}

.slick-prev.slick-arrow {
  background: url(/img/personal/bg_allow_black.png) no-repeat;
  width: 48px;
  height: 47px;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
  position: absolute;
  text-indent: -9999px;
  border: none;
}

.slick-next.slick-arrow {
  background: url(/img/personal/bg_allow_black.png) no-repeat;
  background-position: -48px 0;
  width: 48px;
  height: 47px;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  position: absolute;
  text-indent: -9999px;
  border: none;
}

.slick-prev:before,
.slick-next:before {
  content: "" !important;
}

.shopScheduleBox .slider {
  margin: 45px auto;
  overflow: hidden;
}

button:focus {
  outline: none;
}

/* ----- 即姫情報装飾 ----- */
.sokuInfoBox.animatedParent {
  position: absolute;
  left: -417px;
  top: -4px;
  z-index: 5;
}

.sokuInfo p {
  transform: rotate(-45deg);
  position: absolute;
  top: 22px;
  left: -3px;
  color: #624A15;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 3px;
  font-size: 16px;
  text-align: center;
  /* font-family: heisei-mincho-std, serif; */
}

.sokuInfo p span {
  font-weight: inherit;
}

.sokuInfo:before {
  content: "";
  display: inline-block;
  border-top: 60px solid #E8D17A;
  border-left: 60px solid #E8D17A;
  border-bottom: 60px solid transparent;
  border-right: 60px solid transparent;
}

/*本日の出勤*/
.underGirlsBox .girlsBox .girlsName:after,
.underGirlsBox .girlsStateWrapVideoSyame {
  width: 127px;
}

.underGirlsBox .girlsBox .girlsAnchor:hover:after {
  width: 144px;
  height: 275px;
}

.underGirlsBox .girlsBox .girlsDate span {
  width: auto;
}

.underGirlsBox .girlsBox .girlsPhoto {
  height: 189px;
  width: 144px;
}

.underGirlsBox .girlsAnchor {
  height: 275px;
}

.underGirlsBox .girlsAnchor li.newfaceInfo:nth-last-of-type(1) {
  top: 186px;
}

.underGirlsBox .girlsStateWrap {
  height: 70px;
  width: 142px;
}

.underGirlsBox .girlsDescription {
  width: 142px;
  margin-left: 0px;
  height: 16px;
}

.underGirlsBox .sokuhime .sokuhimeFrame {
  background-image: url("/img/common/img_sokuhime_frame01.png?v=170316");
  padding-top: 207px;
  position: absolute;
  top: 15px;
  width: 144px;
  font-size: 13px;
  text-align: center;
  height: 13px;
  background-size: cover;
  left: 0;
}

.underGirlsBox .sokuhime .sokuhimeFrame p {
  line-height: 16px;
}

.underGirlsBox .girlsStateWrapVideoSyame p.syameIcon,
.underGirlsBox .girlsStateWrapVideoSyame p.videoIcon {
  background-repeat: no-repeat;
  background-size: contain;
  width: 62px;
  height: 18px;
  text-indent: -99999px;
}

/****************************************
本日の出勤余白埋めバナー用**/
.banner .girlsDescription {
  display: block;
}

.banner .girlsDescription p {
  letter-spacing: -1px;
}

.banner.girlsBox p img {
  display: block;
  margin: 0 auto;
}

.banner.girlsBox .girlsSize {
  overflow: hidden;
  height: 33px;
  margin: 0 auto;
  width: 95%;
}

/***動画用モーダル**/
.videoMode {
  align-items: center;
  display: none;
  flex-wrap: wrap;
  background-color: rgba(0, 0, 0, 0.8);
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  z-index: 100;
}

.videoMode.fadeInM {
  display: flex;
  transition: all .5s linear;
  -webkit-transition: all .5s linear;
  -moz-transition: all .5s linear;
  -ms-transition: all .5s linear;
  -o-transition: all .5s linear;
}

.videoMode div {
  margin: auto;
  padding: 6.25px;
  background: #9E1347;
}

.videoMode div video {
  background-color: #9E1347;
  height: auto;
  max-width: 95vw;
  max-height: 95vh;
}

#js-modalwindow {
  cursor: pointer;
  font-weight: bold;
  text-decoration: underline;
}

.modalwindowTel {
  display: none;
  width: 460px;
  height: 80px;
  border: 4px solid #ce9b2c;
  position: absolute;
  background-color: #ffffff;
  padding: 15px 5px;
  box-sizing: border-box;
  z-index: 5;
}

.modalwindowTel p:nth-child(2) {
  margin-top: 10px;
}

.modalwindowTel .telNum {
  font-weight: bold;
  color: #ce9b2c;
  font-size: 120%;
}

.modalwindowTel .closeBtn {
  position: absolute;
  width: 30px;
  height: 30px;
  border: 1px solid;
  border-radius: 50%;
  right: -18px;
  top: -18px;
  background: #ffffff;
  cursor: pointer;
}

.modalwindowTel .closeBtn span {
  width: 24px;
  height: 3px;
  background: #333333;
  display: block;
  position: absolute;
  transform: rotate(45deg);
  left: 3px;
  top: 14px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
}

.modalwindowTel .closeBtn span:nth-child(2) {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
}

.after_a_week_syukkin {
  color: #565656;
  font-size: 20px;
  font-weight: bold;
  margin: 10px auto 0;
  width: 96%;
}

/* ----- ヘブン写メウィジェット ----- */
.heaven_syame_widget_wrap .contentsBlock {
  width: 100%;
}

.heaven_syame_widget_wrap .subHeading {
  background: initial;
  margin: 0;
}

.heaven_syame_widget_wrap .forPc iframe {
  background-color: white;
  width: 100%;
}

.ccReviewBtn {
  position: absolute;
  bottom: 30px;
  height: 54px;
  width: 233px;
  left: 0;
  right: 0;
  margin: 0 auto;
  border: 2px solid #ff6376;
  border-radius: 5px;
  background-color: #ffffff;
}

.ccReviewBtn a {
  text-decoration: none;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  cursor: pointer;
  color: #000000;
  font-size: 3.6vw;
}

.ccReviewBtn span {
  font-weight: 900;
}

.ccReviewKuchikomi {
  color: #ff6376;
}

.ccReviewBtnText {
  position: absolute;
  left: 16px;
  top: 8px;
  text-align: right;
  font-size: 15px;
  line-height: 1.3;
  color: #333;
}

.noCcReview .ccReviewBtnText {
  text-align: center;
  left: 0;
  right: 0;
  margin-left: 0;
  margin-right: 0;
  font-size: 17px;
  line-height: 1.3;
  top: 7px;
}

.ccReviewKuchikomi::before {
  content: '\A';
  white-space: pre;
}

.noCcReview .ccReviewBtnText::after {
  content: 'を見る';
}

.ccReviewBtnNum {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translate(0, -50%);
  font-size: 18px;
  line-height: 1;
  min-width: 4em;
  text-align: center;
  vertical-align: top;
  color: #333;
}

.ccReviewBtnNum span.number {
  font-size: 1.6em;
  vertical-align: baseline;
  color: #ff6376;
}

.ccReviewBtnNum span.new {
  display: block;
  font-size: 75%;
}

.ccReviewBtn:hover {
  background-color: #ffffdd;
}

/* ----- /ヘブン写メウィジェット ----- */
@media screen and (min-width: 769px) {
  .syameBlockChild {
    box-sizing: border-box;
    background-color: #ffffff;
    transform: none !important;
  }

  .notPost+.syameBlockChild {
    background-color: transparent;
    border: none;
  }

  .personalImgBlock li.landscape div {
    width: 730px;
    height: 427px;
    position: relative;
  }

  .personalImgBlock li.landscape div img {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    height: 100%;
  }
}

/* =========================================================
 PC用
========================================================= */
@media screen and (min-width: 769px) {

  .mainSyameBlock .moreReadBtn:hover {
    background-color: #ffffff;
  }

  .swipeBlock {
    overflow: hidden;
  }

  .swipeBox {
    width: auto !important;
  }

  .syameBox {
    width: 144px;
    /* margin-right: 10px; */
  }

  .swipeBox:nth-of-type(4) .syameBox {
    margin-right: 0
  }

  .syameBox a {
    text-decoration: none;
  }

  .syameAnchor {
    border: 1px solid #aaa595;
    width: 142px;
    height: auto;
    overflow: hidden;
  }

  .syamePhoto {
    width: 100%;
    height: calc(132px/3*4);
  }

  .syameInfo {
    width: 175px;
    height: auto;
    border: none;
    background-color: transparent;
  }

  .syameName {
    bottom: 35px;
    font-family: initial;
    font-weight: bold;
    color: #432400;
  }

  .syameText {
    margin: 20px 9px 12px;
  }

  .fullContents .personalHeadingBlock h3.personalName {
    font-size: 24px;
    padding-top: 24px;
    letter-spacing: -0.06em;
  }

  .linkReview {
    background-color: #e4c492;
    height: 61px;
    padding-top: 20px;
    border: 1px solid;
    border-top: none;
  }

  .linkReview .linkReviewBtn {
    height: 42px;
    width: 316px;
  }

  .linkReview .linkReviewBtn a {
    font-size: 14px;
    line-height: 42px;
  }

  .webReserve {
    margin-bottom: 30px;
  }

  .girlsStateWrapVideoSyame {
    width: 123px;
  }

  .girlsBox .syameIcon,
  .girlsBox .videoIcon {
    width: 59px;
    height: 20px;
    line-height: 20px;
    font-size: 13px;
    background-position: 3px center;
    background-size: 14px;
  }

  .girlsBox .twitterIcon {
    width: 20px;
    height: 20px;
  }

  #personalHalfWrapper {
    margin-bottom: 20px;
  }

  #personalHalfWrapper h3 {
    width: 100%;
    background-image: url("/img/personal/personalHalfWrapper_title_new.png");
  }

  .swipeArea.area03 {
    transform: none !important;
    width: 100% !important;
  }

  .commonTodayGirls .girlsBox {
    margin: 0 10px 10px 0;
  }

  .swipeBox.box03:nth-of-type(5n) .girlsBox {
    margin-right: 0;
  }

  #reviewBannerArea {
    background: url('/img/personal/bg_linkReview.jpg') no-repeat;
    padding-top: 20px;
    height: 61px;
    border: 1px solid #656355;
    border-top: 0;
  }

  .reviewBanner {
    background: url('/img/personal/btn_linkReview.png') no-repeat;
    width: 316px;
    height: 42px;
    margin: 0 auto;
  }

  .reviewBanner a {
    line-height: 42px;
    color: #ffffff;
    text-decoration: none;
    text-align: center;
    width: 100%;
    height: 100%;
    display: block;
  }

  .girlsNumber {
    position: absolute;
    top: 20px;
    right: 61px;
    z-index: 2;
  }

  .personalHeadingBlock .girlsNumber {
    top: 96px;
    left: 209px;
  }

  .girlsNumber::before {
    content: "";
    background: linear-gradient(to top, #a97e39 0%, #d5d5a2 60%, #c39955 100%);
    width: 61px;
    height: 32px;
    display: block;
    position: absolute;
    z-index: -1;
    top: -1px;
    left: -1px;
  }

  .girlsNumber span {
    background: url(/en/img/common/bg_namber.jpg);
    color: #fff8aa;
    font-family: 'Oswald', sans-serif;
    font-size: 20px;
    width: 59px;
    height: 30px;
    position: absolute;
    line-height: 30px;
    text-align: center;
    display: block;
  }

  .priceBox {
    width: 760px;
    padding: 14px 0 10px;
    background-color: #d0c9a6;
    box-sizing: border-box;
    margin-bottom: 10px;
  }

  .price_table {
    width: 740px;
    margin: 0 auto 10px;
  }

  .price_table th {
    border: 1px solid #333333;
    background-color: #494949;
    color: #ffffff;
    font-weight: bold;
    text-align: center;
    font-size: 14px;
    line-height: 1;
    padding: 10px 0;
    vertical-align: middle;
  }

  .price_table td {
    border: 1px solid #333333;
    background-color: #ffffff;
    text-align: center;
    font-size: 16px;
    line-height: 1;
    padding: 25px 0;
    vertical-align: middle;
  }

  .priceList {
    width: 740px;
    margin: 0 auto;
    display: flex;
  }

  .priceList li {
    letter-spacing: -0.3px;
  }

  #scheduleBlock tr:last-child td:first-of-type,
  #scheduleBlock tr:last-child td:nth-of-type(5),
  #scheduleBlock tr:last-child td:nth-of-type(6),
  #scheduleBlock tr:last-child td:nth-of-type(7) {
    background: linear-gradient(-20deg, white, white 50%, #6a6f73 51%, white 52%, white);
  }

  #credit {
    border: dotted 2px #7e7e7e;
    margin: 20px auto 0;
  }

  .paymentBox {
    width: 347px;
    margin: 10px auto 0;
  }

  .paymentBox h5 {
    margin-bottom: 10px;
    font-size: 18px;
    line-height: 1.3em;
    font-weight: bold;
  }

  .paymentBox li {
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.5em;
    margin-bottom: 5px;
    letter-spacing: -0.2px;
  }

  .creditCardBOX {
    width: 347px;
    padding: 10px 0;
    margin: 0 auto;
    background: #f3f3f3;
  }

  .creditCardBOX ul {
    width: 240px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
  }

  .area01 {
    width: 100% !important;
    transform: none !important;
  }

  .box01 {
    width: 144px !important;
    float: left;
    margin-right: 10px;
  }

}

/* =========================================================
 スマホ用
========================================================= */
@media screen and (max-width: 768px) {
  #personalFullBlock {
    background: none;
    height: auto;
    width: 100%;
    margin: 0 auto 8vw;
    box-shadow: none;
    border-radius: 0;
  }

  .personalLeft {
    height: auto;
    width: 100%;
    float: none;
  }

  .personalHeadingBlock {
    display: block !important;
    width: 100%;
    height: auto;
    position: static;
    margin: 4vw auto 3vw;
    border: none;
    border-bottom: 2vw solid #dbc692;
    background-image: none;
  }

  .personalHeadingBlock .personalSize {
    font-size: 3.6vw;
    font-weight: normal;
    margin: 0 auto 2%;
    letter-spacing: 0.5pt;
    width: 94%;
    color: #333333;
    border-top: none;
    padding-top: 0;
  }

  .workDate {
    margin: 0 auto 2%;
    width: 94%;
    height: 6vw;
    line-height: 6vw;
    box-sizing: border-box;
  }

  .workDate span {
    border: 1px solid #929292;
    padding: 0 3%;
    min-width: 22%;
    display: inline-block;
  }

  .girlsNameWrapper {
    display: flex;
    width: 94%;
    margin: 0 auto 2%;
    height: 6vw;
  }

  .girlsNumber {
    height: 6vw;
    width: 13%;
    margin-right: 3%;
    position: relative;
  }

  .girlsNumber::before {
    content: "";
    background: linear-gradient(to top, #a97e39 0%, #d5d5a2 60%, #c39955 100%);
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    display: block;
    position: absolute;
    z-index: -1;
    top: -2px;
    left: -2px;
  }

  .girlsNumber span {
    display: block;
    background: url(/en/s/img/common/bg_namber.jpg);
    color: #fff8aa;
    font-family: 'Oswald', sans-serif;
    height: 6vw;
    line-height: 5.8vw;
    box-sizing: border-box;
    width: 100%;
    text-align: center;
    font-size: 4.3vw;
  }

  .personalState li {
    text-indent: 0;
  }

  .personalMainInfoBlock {
    display: block !important;
    background: none;
    width: 100%;
    height: auto;
    position: static;
    margin: 0;
  }

  .fullContents h3.personalName {
    padding: 0;
    font-size: 5vw;
    margin: 0;
    width: 75%;
    height: 6vw;
    line-height: 6.5vw;
  }

  .personalName span {
    font-weight: inherit;
    font-family: inherit;
    font-size: inherit;
  }

  .personalMainInfoBlock-bnRank {
    /* position: static; */
    top: 2vw;
    right: 34vw;
    width: 20vw;
  }

  .mainDetailBox {
    position: static;
    width: 94%;
    height: auto;
    margin: 0 auto;
    border: 1px solid #393939;
    /* border-top: none; */
    border-bottom: none;
    padding-top: 0;
    box-sizing: border-box;
  }

  .mainDetailBox li {
    /* color: #333333; */
    background-color: #ffffff;
    height: 9vw;
    line-height: 9vw;
    font-size: 3.44vw;
    padding: 0;
    border-bottom-style: solid;
  }

  .mainDetailBox li>span {
    color: #ffffff;
    font-weight: bold;
    background-color: #494949;
    display: inline-block;
    width: 30%;
    height: 100%;
    margin-right: 2vw;
    padding-left: 2vw;
    box-sizing: border-box;
    border-right: 1px solid #393939;
  }

  .mainDetailBox li span span {
    display: none;
  }

  .messageBox {
    position: static;
    width: 100%;
    margin: 0;
    height: auto;
    word-break: unset;
    font-size: 3.44vw;
    line-height: 1.7;
    padding: 0;
    background-image: none;
  }

  .messageBox>div {
    width: 94%;
    margin: 0 auto 5vw;
    color: #565656;
    line-height: 1.3;
  }

  .qrBox {
    position: static;
    display: none;
  }

  .personalImgBlock {
    position: relative;
    top: 0;
    right: 0;
    width: 94%;
    margin: 0 auto;
    overflow: hidden;
  }

  .personalImgBlock ul {
    position: static;
    height: 121vw;
    width: 100%;
    overflow: hidden;
  }

  .personalImgBlock li {
    display: block;
    opacity: 1;
    width: 100%;
    position: absolute;
    left: 0;
    top: auto;
    height: 121vw;
    background-color: #1d1e1f;
  }

  .personalImgBlock li div {
    height: 100% !important;
    position: relative;
  }

  .personalImgBlock li img {
    width: 100%;
    height: auto;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translate(0, -50%);
    margin: 0 auto;
  }

  .personalRight {
    width: 100%;
    margin: 4vw auto 4%;
    float: none;
    position: static;
    height: auto;
    background-color: transparent;
  }

  .personalThumbnailBlock {
    width: 100%;
    margin: 0 auto;
    height: 100%;
    overflow: visible !important;
  }

  .thumbnailList {
    width: 100%;
    position: static;
    display: flex;
    flex-direction: column;
  }

  .photoThumbnailBox ul {
    display: flex;
    flex-wrap: wrap;
    width: 94%;
    margin: 0 auto;
  }

  .photoThumbnailBox li {
    display: block;
    float: none;
    width: 18.4%;
    height: 22.7vw;
    margin: 0 2% 2% 0;
    /* background-color: #1d1e1f; */
    position: relative;
    overflow: visible;
  }

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

  .photoThumbnailBox li label {
    height: 22.7vw;
    position: relative;
    overflow: visible;
  }

  .photoThumbnailBox li label img,
  .photoThumbnailBox li>img {
    max-height: none;
    max-width: none;
    position: absolute;
    display: block;
    top: 50%;
    left: 0;
    right: 0;
    margin: 0 auto;
    transform: translate(0, -50%);
  }

  #personalFullBlock:after {
    content: none;
  }

  #scheduleBlock {
    margin-bottom: 7vw;
  }

  #scheduleBlock table {
    width: 96%;
    margin: 0 auto;
    border: none;
  }

  .notPost {
    font-size: 3.44vw;
    text-align: center;
    margin: 10vw auto 11vw;
  }

  #rightContents .mainSyameBlock .moreReadLargeWrap,
  #rightContents .mainSyameBlock .moreReadSmallWrap a {
    width: 100%;
    height: 10vw;
    line-height: 10.5vw;
    font-size: 3.8vw;
    font-family: initial;
    font-weight: bold;
  }

  #personalLeftContents {
    width: 100%;
    float: none;
  }

  .storeCommentBox {
    width: 94%;
    margin: 0 auto;
    border: none;
  }

  .storeCommentBox p {
    background: none;
    padding: 0;
    font-size: 3.44vw;
  }

  .reviewBox {
    width: 96%;
    margin: 0 auto 3vw;
    border: none;
    max-height: none;
  }

  #personalRightContents {
    width: 100%;
    float: none;
  }

  .chargedOptionBox table {
    width: 94%;
    margin: 0 auto 3vw;
    font-size: 3.44vw;
  }

  .chargedOptionBox th {
    width: 87%;
    height: 11.5vw;
    font-size: 3.44vw;
    line-height: 11.5vw;
    text-align: left;
    text-indent: 2vw;
  }

  #payOption th {
    font-size: 3.2vw;
    padding-bottom: 3%;
    border: none;
    border-right: 1px solid #6a6f73;
  }

  #payOption table span.addOptionPersonal {
    text-align: left;
    padding: 1.5% 0;
    margin-bottom: 3%;
  }

  .chargedOptionBox th span:not(.addOptionPersonal) {
    display: inline;
  }

  .chargedOptionBox.basicPlay th {
    border-right: 1px solid #6a6f73;
    height: 11.5vw;
    /* line-height: 11.5vw; */
  }

  #payOption.chargedOptionBox td {
    line-height: 15vw;
  }

  .chargedOptionBox th span {
    font-size: 3vw;
  }

  .chargedOptionBox td {
    width: 100%;
    /* margin-bottom: 0; */
    height: 11.5vw;
    line-height: 11.5vw;
    text-align: center;
  }

  .chargedOptionBox.basicPlay table tbody {
    border-left: 1px solid;
    border-top: 1px solid;
  }

  .chargedOptionBox.basicPlay tr {
    width: 50%;
    margin: 0;
    border-bottom: 1px solid;
    border-right: 1px solid;
  }

  .chargedOptionBox.basicPlay tr:nth-of-type(even) {
    margin-right: 0;
  }

  .chargedOptionBox.basicPlay tr:last-child {
    border-bottom: 1px solid;
  }

  .chargedOptionBox.basicPlay th {
    width: 75%;
    border-width: 0 1px 0 0;
    justify-content: normal;
    padding-left: 0.75em;
    text-align: left;
  }

  .chargedOptionBox.basicPlay td {
    width: 25%;
    border: none;
    margin: 0;
  }

  .playNotesBox {
    width: 94%;
    margin: 3vw auto 5vw;
  }

  .playNotes {
    font-size: 3.2vw;
    line-height: 1.7;
    margin: 0 auto;
    letter-spacing: 0.1vw;
  }

  .enqueteBox table,
  .enqueteBox th,
  .enqueteBox td {
    font-size: 3.44vw;
    text-indent: 0;
    padding: 0;
  }

  .enqueteBox table {
    width: 94%;
    margin: 0 auto;
  }

  .enqueteBox th,
  .enqueteBox td {
    height: auto;
    padding: 3% 0;
    padding-left: 2.7vw;
  }

  .enqueteBox .twitterAnswer td {
    height: auto;
    line-height: 1.5;
    padding-top: 2%;
    padding-bottom: 2%;
  }

  .enqueteBox th:before,
  .enqueteBox td:before {
    background: none;
    width: auto;
    height: auto;
    margin-right: 1.5vw;
  }

  .enqueteBox th:before {
    content: "Q.";
  }

  .enqueteBox td:before {
    content: "A.";
  }

  #rightContents .sisterStore h3 {
    z-index: 0;
  }

  .sisterStore .shopScheduleHeading {
    height: 17vw;
    margin-bottom: 4vw;
    position: relative;
  }

  .sisterStore .aromaPuren .shopScheduleHeading {
    background: none;
    position: relative;
  }

  .sisterStore .aromaPuren .shopScheduleImg {
    width: 55%;
    padding: 0;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: 0 auto;
    transform: translate(0, -50%);
  }

  .sisterStore .granEsthe .shopScheduleHeading {
    background: none;
    position: relative;
  }

  .sisterStore .granEsthe .shopScheduleImg {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: 0 auto;
    transform: translate(0, -50%);
    width: 55%;
  }

  .cc-favorite #cc-login-description {
    width: 96%;
    margin: 0 auto;
    max-width: none;
    display: block;
    border-color: #d4d4d4;
    /* border-left: none; */
    /* border-right: none; */
    background-color: #f1f1f2;
  }

  .cc-favorite #cc-login-description>div {
    box-sizing: border-box;
    padding: 5%;
    line-height: 2;
    width: 100%;
  }

  .cc-favorite #cc-login-description strong {
    font-weight: bold;
  }

  .cc-favorite #cc-login-description img {
    display: none;
  }

  .cc-favorite #cc-login-description>div .like-wrap {
    margin: 4vw auto 1vw;
    width: 96%;
  }

  .cc-favorite #cc-login-description>div.cin-visible-large {
    padding: 0;
  }

  .cc-favorite .like-wrap button {
    font-size: 4vw;
    padding: 0;
    height: 11vw;
    line-height: 11vw;
  }

  .cc-favorite #cc-login-description-footer {
    width: 96%;
    margin: 3vw auto;
  }

  .mainSyameBlock .moreReadBtn {
    width: 94%;
    height: auto;
    padding: 0;
    position: static;
  }

  .reviewBanner {
    width: 94%;
    margin: 0 auto 4vw;
  }

  .webReserve,
  .lineBooking {
    width: 94%;
    margin: 0 auto 4vw;
  }

  .cc-favorite p {
    font-size: 3.44vw;
    line-height: 1.7;
  }

  #scheduleBlock tr {
    display: flex;
    flex-wrap: wrap;
  }

  #scheduleBlock th {
    font-size: 3.8vw;
    border-color: #393939;
  }

  #scheduleBlock td {
    font-size: 3.8vw;
    border-color: #393939;
  }

  #scheduleBlock table:last-of-type tr:last-of-type td {
    display: flex;
    align-items: center;
    padding: 0;
  }

  #scheduleBlock table:last-of-type tr:last-of-type td form {
    width: 90%;
    margin: 0 auto;
  }

  #scheduleBlock table:last-of-type tr:last-of-type td form select {
    width: 100%;
    height: 4.3vw;
    font-size: 2.8vw;
    margin-bottom: 3%;
  }

  #scheduleBlock table:last-of-type tr:last-of-type td form input {
    width: 85%;
    height: 4.3vw;
    line-height: 4.3vw;
    font-size: 2.8vw;
  }

  #scheduleBlock table:first-of-type {
    margin-bottom: 3vw;
    /* border: none; */
  }

  #scheduleBlock table:first-of-type tbody {
    display: flex;
    flex-wrap: wrap;
  }

  #scheduleBlock table:first-of-type tr {
    flex-direction: column;
  }

  #scheduleBlock table:first-of-type tr:first-of-type {
    width: 40%;
  }

  #scheduleBlock table:first-of-type tr:last-of-type {
    width: 60%;
  }

  #scheduleBlock table:first-of-type th {
    width: 100%;
    height: 11vw;
    line-height: 11vw;
  }

  #scheduleBlock table:first-of-type th:first-of-type {
    /* border-bottom: 1px solid #b9bdc2; */
    border-bottom: none;
  }

  #scheduleBlock table:first-of-type td {
    width: 100%;
    height: 11vw;
    line-height: 11vw;
    position: relative;
    /* text-align: left; */
    /* text-indent: 10vw; */
  }

  #scheduleBlock table:last-of-type tr th:last-of-type,
  #scheduleBlock table:last-of-type tr td:last-of-type {
    border-right: 1px solid #6a6f73;
  }

  #scheduleBlock table:first-of-type td:first-of-type {
    border-bottom: none;
  }

  #scheduleBlock table:last-of-type tr:first-of-type {
    background-color: #fae7eb;
  }

  #scheduleBlock table:last-of-type th {
    width: calc(100% / 5);
    box-sizing: border-box;
    height: 13vw;
    line-height: 1.3;
    padding-top: 1.6%;
    border-right: none;
  }

  #scheduleBlock table:last-of-type th:last-of-type {
    border-right: 1px solid;
  }

  #scheduleBlock table:last-of-type td {
    width: calc(100% / 5);
    box-sizing: border-box;
    height: 13vw;
    line-height: 1.2;
    padding-top: 0.5vw;
    position: relative;
    border-top: none;
    border-right: none;
  }

  #scheduleBlock table:last-of-type td span {
    display: block;
    font-size: 60%;
  }

  .cc-favorite .subHeading {
    background-image: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
  }

  .cc-favorite p {
    font-size: 3.44vw;
  }

  .sisterStore iframe {
    height: 61vw;
    min-height: 202px;
    margin-bottom: 0;
  }

  .sisterStore .estheGotanda .shopScheduleImg {
    width: 54%;
    padding: 0;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: 0 auto;
    transform: translate(0, -50%);
  }

  .workDate.today span {
    background-color: #b99c72;
    color: #ffffff;
  }

  .workDate>span>span {
    display: block;
    overflow: hidden;
    width: 100%;
    text-align: right;
  }

  .buttons {
    position: absolute;
    bottom: 20%;
    width: 100%;
    height: 8vw;
  }

  .buttons label {
    background-color: #484848;
    border-radius: 50%;
    width: 10vw;
    height: 10vw;
    position: absolute;
    top: 0;
    text-align: center;
    font-size: 5vw;
    box-sizing: border-box;
  }

  .buttons label.prev {
    left: 0.5vw;
  }

  .buttons label.next {
    right: 0.5vw;
  }

  .buttons label p {
    text-indent: -99999px;
    border-top: 0.6vw solid #ffffff;
    border-left: 0.6vw solid #ffffff;
    height: 2vw;
    width: 2vw;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: 0 auto;
  }

  .buttons label.prev p {
    transform: translate(0, -50%) rotate(-45deg);
    left: 1.2vw;
  }

  .buttons label.next p {
    transform: translate(0, -50%) rotate(135deg);
    right: 1.2vw;
  }

  #scheduleBlock button {
    padding: 1vw 0 0;
    width: 87%;
    box-sizing: border-box;
  }

  #scheduleBlock button div {
    width: 100%;
    height: auto;
    font-size: 3vw;
    padding: 0.8vw 1.5vw 0.2vw;
    box-sizing: border-box;
    border-radius: 4px;
  }

  #scheduleBlock table:first-of-type td a {
    position: absolute;
    top: 50%;
    right: 6.4vw;
    transform: translate(0, -50%);
    text-indent: 0;
    text-align: center;
    color: inherit;
    width: 21%;
  }

  #scheduleBlock table:first-of-type td form {
    position: absolute;
    top: 47%;
    right: 1.5vw;
    transform: translate(0, -50%);
    width: 30%;
    text-indent: 0;
  }

  #scheduleBlock table:first-of-type td button {
    width: 100%;
    padding: 0;
  }

  #scheduleBlock table:first-of-type td button div br.forSp {
    display: none !important;
  }

  #s_heaven_syame_widget {
    margin-bottom: 7vw;
  }

  .frameWrap.contentsBlock {
    height: 200px;
    margin: 0;
    overflow-x: hidden;
    overflow-y: hidden;
  }

  .personalState.preOpen li.todayIcon::before {
    content: "12/4\A出勤";
  }

  .after_a_week_syukkin {
    font-size: 3.44vw;
    line-height: 1.5;
    margin: 3% auto 0;
  }

  .profileBox {
    width: 94%;
    margin: 0 auto;
    /* border: 1px solid #545454; */
    border-bottom: none;
    box-sizing: border-box;
  }

  .smCheck th {
    font-size: 4vw;
    height: 9vw;
  }

  .mGraph,
  .sGraph {
    line-height: 1;
    padding: 4vw 4%;
  }

  .smMeter {
    float: left;
    width: 74%;
  }

  .smMeter>div {
    box-sizing: border-box;
    float: left;
    height: 12vw;
    line-height: 1;
    margin: 0 2% 0 0;
    text-indent: -9999px;
    width: 8%;
  }

  .mGraph .smMeter>div {
    border: 1px solid #ff396f;
  }

  /* M度 01 */
  .mGraph.degree01 .smMeter>div:nth-of-type(1),
  .mGraph.degree02 .smMeter>div:nth-of-type(1),
  .mGraph.degree03 .smMeter>div:nth-of-type(1),
  .mGraph.degree04 .smMeter>div:nth-of-type(1),
  .mGraph.degree05 .smMeter>div:nth-of-type(1),
  .mGraph.degree06 .smMeter>div:nth-of-type(1),
  .mGraph.degree07 .smMeter>div:nth-of-type(1),
  .mGraph.degree08 .smMeter>div:nth-of-type(1),
  .mGraph.degree09 .smMeter>div:nth-of-type(1),
  .mGraph.degree10 .smMeter>div:nth-of-type(1) {
    background: #ff9cb7;
    border: none;
  }

  /* M度 02 */
  .mGraph.degree02 .smMeter>div:nth-of-type(2),
  .mGraph.degree03 .smMeter>div:nth-of-type(2),
  .mGraph.degree04 .smMeter>div:nth-of-type(2),
  .mGraph.degree05 .smMeter>div:nth-of-type(2),
  .mGraph.degree06 .smMeter>div:nth-of-type(2),
  .mGraph.degree07 .smMeter>div:nth-of-type(2),
  .mGraph.degree08 .smMeter>div:nth-of-type(2),
  .mGraph.degree09 .smMeter>div:nth-of-type(2),
  .mGraph.degree10 .smMeter>div:nth-of-type(2) {
    background: #ff92b0;
    border: none;
  }

  /* M度 03 */
  .mGraph.degree03 .smMeter>div:nth-of-type(3),
  .mGraph.degree04 .smMeter>div:nth-of-type(3),
  .mGraph.degree05 .smMeter>div:nth-of-type(3),
  .mGraph.degree06 .smMeter>div:nth-of-type(3),
  .mGraph.degree07 .smMeter>div:nth-of-type(3),
  .mGraph.degree08 .smMeter>div:nth-of-type(3),
  .mGraph.degree09 .smMeter>div:nth-of-type(3),
  .mGraph.degree10 .smMeter>div:nth-of-type(3) {
    background: #ff88a9;
    border: none;
  }

  /* M度 04 */
  .mGraph.degree04 .smMeter>div:nth-of-type(4),
  .mGraph.degree05 .smMeter>div:nth-of-type(4),
  .mGraph.degree06 .smMeter>div:nth-of-type(4),
  .mGraph.degree07 .smMeter>div:nth-of-type(4),
  .mGraph.degree08 .smMeter>div:nth-of-type(4),
  .mGraph.degree09 .smMeter>div:nth-of-type(4),
  .mGraph.degree10 .smMeter>div:nth-of-type(4) {
    background: #ff7ea1;
    border: none;
  }

  /* M度 05 */
  .mGraph.degree05 .smMeter>div:nth-of-type(5),
  .mGraph.degree06 .smMeter>div:nth-of-type(5),
  .mGraph.degree07 .smMeter>div:nth-of-type(5),
  .mGraph.degree08 .smMeter>div:nth-of-type(5),
  .mGraph.degree09 .smMeter>div:nth-of-type(5),
  .mGraph.degree10 .smMeter>div:nth-of-type(5) {
    background: #ff749a;
    border: none;
  }

  /* M度 06 */
  .mGraph.degree06 .smMeter>div:nth-of-type(6),
  .mGraph.degree07 .smMeter>div:nth-of-type(6),
  .mGraph.degree08 .smMeter>div:nth-of-type(6),
  .mGraph.degree09 .smMeter>div:nth-of-type(6),
  .mGraph.degree10 .smMeter>div:nth-of-type(6) {
    background: #ff6b93;
    border: none;
  }

  /* M度 07 */
  .mGraph.degree07 .smMeter>div:nth-of-type(7),
  .mGraph.degree08 .smMeter>div:nth-of-type(7),
  .mGraph.degree09 .smMeter>div:nth-of-type(7),
  .mGraph.degree10 .smMeter>div:nth-of-type(7) {
    background: #ff618c;
    border: none;
  }

  /* M度 08 */
  .mGraph.degree08 .smMeter>div:nth-of-type(8),
  .mGraph.degree09 .smMeter>div:nth-of-type(8),
  .mGraph.degree10 .smMeter>div:nth-of-type(8) {
    background: #ff5784;
    border: none;
  }

  /* M度 09 */
  .mGraph.degree09 .smMeter>div:nth-of-type(9),
  .mGraph.degree10 .smMeter>div:nth-of-type(9) {
    background: #ff4c7d;
    border: none;
  }

  /* M度 10 */
  .mGraph.degree10 .smMeter>div:nth-of-type(10) {
    background: #ff396f;
    border: none;
  }

  .sGraph .smMeter>div {
    border: 1px solid #3ba1dc;
  }

  /* S度 01 */
  .sGraph.degree01 .smMeter>div:nth-of-type(1),
  .sGraph.degree02 .smMeter>div:nth-of-type(1),
  .sGraph.degree03 .smMeter>div:nth-of-type(1),
  .sGraph.degree04 .smMeter>div:nth-of-type(1),
  .sGraph.degree05 .smMeter>div:nth-of-type(1),
  .sGraph.degree06 .smMeter>div:nth-of-type(1),
  .sGraph.degree07 .smMeter>div:nth-of-type(1),
  .sGraph.degree08 .smMeter>div:nth-of-type(1),
  .sGraph.degree09 .smMeter>div:nth-of-type(1),
  .sGraph.degree10 .smMeter>div:nth-of-type(1) {
    background: #9dd0ed;
    border: none;
  }

  /* S度 02 */
  .sGraph.degree02 .smMeter>div:nth-of-type(2),
  .sGraph.degree03 .smMeter>div:nth-of-type(2),
  .sGraph.degree04 .smMeter>div:nth-of-type(2),
  .sGraph.degree05 .smMeter>div:nth-of-type(2),
  .sGraph.degree06 .smMeter>div:nth-of-type(2),
  .sGraph.degree07 .smMeter>div:nth-of-type(2),
  .sGraph.degree08 .smMeter>div:nth-of-type(2),
  .sGraph.degree09 .smMeter>div:nth-of-type(2),
  .sGraph.degree10 .smMeter>div:nth-of-type(2) {
    background: #93cbec;
    border: none;
  }

  /* S度 03 */
  .sGraph.degree03 .smMeter>div:nth-of-type(3),
  .sGraph.degree04 .smMeter>div:nth-of-type(3),
  .sGraph.degree05 .smMeter>div:nth-of-type(3),
  .sGraph.degree06 .smMeter>div:nth-of-type(3),
  .sGraph.degree07 .smMeter>div:nth-of-type(3),
  .sGraph.degree08 .smMeter>div:nth-of-type(3),
  .sGraph.degree09 .smMeter>div:nth-of-type(3),
  .sGraph.degree10 .smMeter>div:nth-of-type(3) {
    background: #89c7ea;
    border: none;
  }

  /* S度 04 */
  .sGraph.degree04 .smMeter>div:nth-of-type(4),
  .sGraph.degree05 .smMeter>div:nth-of-type(4),
  .sGraph.degree06 .smMeter>div:nth-of-type(4),
  .sGraph.degree07 .smMeter>div:nth-of-type(4),
  .sGraph.degree08 .smMeter>div:nth-of-type(4),
  .sGraph.degree09 .smMeter>div:nth-of-type(4),
  .sGraph.degree10 .smMeter>div:nth-of-type(4) {
    background: #7fc2e8;
    border: none;
  }

  /* S度 05 */
  .sGraph.degree05 .smMeter>div:nth-of-type(5),
  .sGraph.degree06 .smMeter>div:nth-of-type(5),
  .sGraph.degree07 .smMeter>div:nth-of-type(5),
  .sGraph.degree08 .smMeter>div:nth-of-type(5),
  .sGraph.degree09 .smMeter>div:nth-of-type(5),
  .sGraph.degree10 .smMeter>div:nth-of-type(5) {
    background: #75bde6;
    border: none;
  }

  /* S度 06 */
  .sGraph.degree06 .smMeter>div:nth-of-type(6),
  .sGraph.degree07 .smMeter>div:nth-of-type(6),
  .sGraph.degree08 .smMeter>div:nth-of-type(6),
  .sGraph.degree09 .smMeter>div:nth-of-type(6),
  .sGraph.degree10 .smMeter>div:nth-of-type(6) {
    background: #6cb9e6;
    border: none;
  }

  /* S度 07 */
  .sGraph.degree07 .smMeter>div:nth-of-type(7),
  .sGraph.degree08 .smMeter>div:nth-of-type(7),
  .sGraph.degree09 .smMeter>div:nth-of-type(7),
  .sGraph.degree10 .smMeter>div:nth-of-type(7) {
    background: #62b5e4;
    border: none;
  }

  /* S度 08 */
  .sGraph.degree08 .smMeter>div:nth-of-type(8),
  .sGraph.degree09 .smMeter>div:nth-of-type(8),
  .sGraph.degree10 .smMeter>div:nth-of-type(8) {
    background: #58b0e2;
    border: none;
  }

  /* S度 09 */
  .sGraph.degree09 .smMeter>div:nth-of-type(9),
  .sGraph.degree10 .smMeter>div:nth-of-type(9) {
    background: #4eabe0;
    border: none;
  }

  /* S度 10 */
  .sGraph.degree10 .smMeter>div:nth-of-type(10) {
    background: #3ba2dd;
    border: none;
  }

  .smMeter>div:last-of-type {
    margin-right: 0;
  }

  .smValue {
    display: table;
    float: right;
    margin: 0 2% 0 0;
  }

  .mGraph .smValue {
    color: #ff396f;
  }

  .sGraph .smValue {
    color: #3ba1dc;
  }

  .smLabel {
    display: table-cell;
    font-size: 4vw;
    font-weight: bold;
  }

  .smNumber {
    display: table-cell;
    font-size: 13vw;
    font-weight: bold;
    letter-spacing: -0.15em;
    padding: 0;
    line-height: 12vw;
  }

  .favoriteBtn {
    width: 100%;
    height: 100%;
    margin: 4vw auto 5vw;
    background-color: rgba(0, 0, 0, 0.1);
    padding: 2.5% 0;
    box-sizing: border-box;
  }

  .favoriteBtn .like-wrap {
    margin-bottom: 0;
  }

  .favoriteBtn .cc-favorite .like-wrap button {
    font-size: 3.6vw;
    height: 9vw;
    line-height: 9vw;
  }

  .videoThumbnailBox li {
    width: 94%;
    height: 55vw;
    margin: 0 auto 5vw;
  }

  .videoThumbnailBox li label {
    height: inherit;
  }

  .videoThumbnailBox li label:after {
    content: none;
  }

  .personalImgBlock li.videoThumb {
    display: none;
    width: 0 !important;
  }

  .storeCommentBox iframe {
    display: none;
  }

  .profileBox table,
  .profileBox th,
  .profileBox td {
    border: 1px solid #6a6f73;
  }

  #groupLogo a {
    display: block;
    width: 100%;
    height: 100%;
    line-height: 12vw;
    text-align: center;
    font-size: 5vw;
    color: #ffffff;
    text-decoration: none;
    position: relative;
    padding-left: 12vw;
  }

  #groupLogo a::before {
    content: "";
    background: url(/img/common/s/icon_header_tel.png) no-repeat center;
    background-size: 60%;
    display: inline-block;
    width: 12vw;
    height: 12vw;
    position: absolute;
    left: 0;
    border-right: 1px solid #ffffff;
  }

  .reviewBlock {
    margin-bottom: 5vw;
  }

  .linkReview .linkReviewBtn {
    /* background: url('/img/personal/btn_linkReview.png') no-repeat; */
    background-color: #c08e30;
    height: 13vw;
    width: 94%;
    margin: 0px auto;
    border-radius: 2px;
    box-shadow: 0 1vw 0 #795b21;
  }

  .linkReview .linkReviewBtn a {
    color: #ffffff;
    font-size: 4.5vw;
    font-weight: bold;
    line-height: 13.5vw;
    text-decoration: none;
    display: block;
    height: 100%;
    width: 100%;
    text-align: center;
  }

  .reviewContentBox .reviewContent {
    padding: 3%;
    width: 94%;
    margin: 0 auto;
    box-sizing: border-box;
  }

  .reviewContentBox .reviewContent div {
    font-size: 3.44vw;
    line-height: 1.65;
  }

  .bnRankSp {
    position: absolute;
    bottom: 9%;
    width: 30%;
    margin: 0 auto 3vw;
    z-index: 1;
  }

  .fa-mobile-alt {
    margin-right: 5%;
  }

  /* 横長写真のときの回転表示 */
  #full_screen_box {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, .8);
    z-index: 999;
    display: none;
    overflow-y: scroll;
  }

  #full_screen_box_close {
    width: 13vw;
    height: 13vw;
    position: fixed;
    right: 3%;
    top: 3%;
    z-index: 1000;
  }

  #full_screen_box_wrapper {
    width: 100%;
    height: 0;
    position: relative;
    top: 50%;
    transform: rotate(90deg);
  }

  #full_screen_box_img {
    position: absolute;
    top: 50%;
    left: 50%;
    max-width: none;
    height: 100vw;
    transform: translate(-50%, -50%);
    pointer-events: none;
    overflow-x: hidden;
  }

  #photoArea li .full_screen {
    position: absolute;
    top: 6%;
    left: 3%;
    width: 10vw;
  }

  #photoArea li .full_screen img {
    height: 100%;
    width: 100%;
    object-fit: contain;
    position: static;
  }

  .messageBox {
    color: #2c2c2c;
  }

  .ccReviewBtnWrap {
    background-color: rgba(0, 0, 0, 0.1);
    padding: 2.5% 0;
  }

  .ccReviewBtn {
    position: relative;
    bottom: auto;
    width: 90%;
    height: 9vw;
    line-height: 9vw;
  }

  .ccReviewBtn a {
    text-align: center;
  }

  .ccReviewBtnText {
    position: static;
    font-size: 1em;
    vertical-align: middle;
    line-height: 0;
    transform: none;
  }

  .noCcReview .ccReviewBtnText {
    position: static;
    text-align: center;
    display: block;
    line-height: 9vw;
    font-size: 3.6vw;
  }

  .ccReviewKuchikomi::before {
    content: none;
  }

  .photoThumbnailBox {
    width: 100%;
  }

  .thumbnailList>div:first-child {
    margin: 2% auto 0;
  }

  .favoriteBtn .cc-favorite {
    width: 90%;
    margin: 0 auto;
  }

  .ccReviewBtnNum {
    position: static;
    vertical-align: middle;
    font-size: 110%;
    line-height: 0;
  }

  .sokuInfoBox.animatedParent {
    position: static;
  }

  .sokuInfoBox.animatedParent .sokuInfo {
    background-color: #E8D17A;
    color: #624A15;
    height: 8vw;
    position: relative;
    width: 92%;
    margin: 0 auto 1.5%;
    padding-left: 22%;
    box-sizing: border-box;
  }

  .sokuInfoBox.animatedParent .flip.go {
    animation: none;
  }

  .sokuInfo:before {
    content: "即姫";
    border: none;
    display: inline-block;
    position: absolute;
    left: 0;
    width: 19%;
    height: 100%;
    line-height: 8vw;
    border-right: 0.7vw solid;
    text-align: center;
    font-size: 3.8vw;
    font-weight: bold;
  }

  .sokuInfo p {
    transform: none;
    position: static;
    line-height: 8vw;
    text-align: left;
    width: auto;
    display: inline-block;
    font-size: 3.8vw;
  }

  #syameBlock,
  #profile,
  #cc-i,
  #enqueteBlock,
  #storeCommentBlock,
  .commonTodayGirls {
    margin-bottom: 7vw;
  }

  .swipeBlock .girlsBox {
    height: 0;
    padding-bottom: 205%;
  }

  .girlsDate,
  #personalHeading .girlsDate {
    font-size: 3.2vw;
  }

  .girlsPhoto {
    height: auto;
  }

  .girlsName {
    font-size: 3.6vw;
    height: 5vw;
    line-height: 5.5vw;
    /* margin-bottom: 2%; */
  }

  .girlsSize {
    font-size: 3vw;
    text-align: left;
    width: 86%;
    margin: 0 auto;
    line-height: 1.5;
  }

  .today .girlsDate:before {
    line-height: 1.2;
    background-color: #030305;
    color: #CECECD;
    height: 100%;
    padding: 3%;
    font-size: 3vw;
  }

  .reviewContentBox {
    background-color: #c1bcaf;
    padding: 4% 0;
  }

  .reviewBanner {
    background-image: url("/s/img/common/bg_subTitle.png");
    background-repeat: no-repeat;
    background-position: center;
    height: 15vw;
  }

  .reviewBanner a {
    display: block;
    width: 100%;
    height: 100%;
    line-height: 15vw;
    color: #d0c9a6;
    text-decoration: none;
    text-align: center;
    font-size: 4.5vw;
    font-weight: bold;
  }

  .reviewContentBox .reviewContent div font {
    font-size: inherit;
  }

  .reviewContentBox .reviewContent p.customerName {
    font-size: 3.44vw;
  }

  .price_table {
    width: 96%;
    margin: 0 auto;
  }

  .price_table tbody {
    display: flex;
    flex-wrap: wrap;
  }

  .price_table tr {
    width: 50%;
    display: flex;
    flex-wrap: wrap;
  }

  .price_table th {
    width: 100%;
    border: 1px solid;
    margin-bottom: 2%;
    height: 12vw;
    line-height: 1.3;
    display: flex;
    align-items: center;
    padding-left: 5%;
    background-color: #494949;
    color: #ffffff;
    font-weight: bold;
    border: solid 1px #494949;
  }

  .price_table td {
    width: 100%;
    border: 1px solid;
    margin-bottom: 2%;
    height: 12vw;
    line-height: 1.3;
    display: flex;
    align-items: center;
    padding-left: 5%;
    background-color: #ffffff;
    /* color: #ffffff; */
    font-weight: bold;
    border: solid 1px #494949;
    justify-content: center;
    padding: 0;
  }

  .priceList {
    width: 96%;
    margin: 3% auto;
  }

  .priceList li {
    line-height: 1.35;
    text-indent: -1em;
    padding-left: 1em;
  }

  #credit {
    border: dotted 2px #7e7e7e;
    width: 96%;
    margin: 3% auto;
  }

  .paymentBox {
    padding: 3%;
    line-height: 1.35;
  }

  .paymentBox h5 {
    font-weight: bold;
    margin-bottom: 3%;
  }

  .paymentBox li {
    margin-bottom: 2%;
  }

  .creditCardBOX {
    background-color: #f0f0f0;
    width: 94%;
    margin: 0 auto 3%;
    padding: 3% 0;
  }

  .creditCardBOX ul {
    display: flex;
    justify-content: space-between;
    width: 55%;
    margin: 0 auto;
  }

  .creditCardBOX li {
    width: 45%;
  }

  .creditCardBOX li img {
    width: 100%;
    height: auto;
  }

  .dateBanner {
    width: 96%;
    border: solid 1px #9e8856;
    margin: 0 auto 4%;
  }

  .dateBanner .price {
    height: 11vw;
    line-height: 11vw;
    text-align: center;
    font-weight: bold;
    font-size: 4vw;
  }

  #scheduleBlock tr:last-child td:nth-of-type(5),
  #scheduleBlock tr:last-child td:nth-of-type(6),
  #scheduleBlock tr:last-child td:nth-of-type(7) {
    background: linear-gradient(-35deg, white, white 50%, #6a6f73 51%, white 52%, white);
  }

  .frame01 {
    margin-left: 4%;
  }

  .box01 {
    float: left;
    margin: 0;
  }

  .syamePhoto {
    position: relative;
    height: 39vw;
    background-image: url("/en/img/common/bg_syame.jpg");
    background-size: 100% auto;
    overflow: hidden;
  }

  .syamePhoto img {
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: none;
    width: 100%;
  }

  .girlsNumber-new {
    font-size: 3vw;
  }

  .girlsSize {
    text-align: center;
  }

  .girlsSize br.forSoku:first-of-type {
    display: block;
  }

  .swipeArea {
    overflow: hidden;
  }

  .videoThumbnailBox li::after {
    background: url(/img/personal/icon_video.png) no-repeat;
    background-size: contain;
    content: "";
    height: calc(32vw * 0.25);
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translate(0, -50%);
    margin: 0 auto;
    width: calc(54vw * 0.25);
    z-index: 1;
    pointer-events: none;
  }

  .movieAccordion {
    display: none;
  }

  .videoThumbnailBox .moreReadBtn {
    width: 91%;
    height: 15vw;
    line-height: 15vw;
    font-size: 4.5vw;
    font-weight: bold;
    color: #D0C9A7;
    font-family: source-han-sans-cjk-ja, sans-serif;
  }

  .ccReviewBtnNum span.new {
    background-color: #ff5366;
    position: absolute;
    top: -19%;
    right: 3%;
    color: #ffffff;
    line-height: 1.2;
    padding: 0 2%;
    border-radius: 0.8vw;
  }

  #personalFullBlock p#prevBtn, #personalFullBlock p#nextBtn {
    display: none!important;
  }

}