@charset "utf-8";
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■　出勤のあるお店へボタン
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
.read_more {width: 100%;display: flex;justify-content: center;align-items: center;margin-bottom: 8px;}
.read_more i {margin-right: 5px;margin-bottom: 1px; font-size: 1rem;}
.read_more a {display: block;font-size: 1rem;text-decoration: none;font-weight: 600;color: #333;border: 1px solid #333;padding: 4px 10px 2px;border-radius: 3px;}
.read_more a:hover {color: #ccc;}
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■　1～3枠共通
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
.contract-list {max-width: 768px;margin: 0 auto;padding: 90px 2px 0;}
.newmark{position: absolute;top: -16px;left: 5px;background: #ff0000;color: #fff;padding: 2px 10px 1px 5px;border-top-right-radius: 10px;font-size: 90%;font-weight: 700;}
.newmark i {font-weight: normal;}
.newmark span {font-size: 80%;font-weight: normal;margin-left: 5px;}
/* 光る */
.newmark {overflow: hidden;}
.newmark:before {content: "";background-color: rgba(255, 255, 255, .4);height: 100%;width: 100%;display: block;position: absolute;top: 0;left: -160%;transform: skewX(-45deg) translateX(0);}
.newmark:before {animation: bright 4s ease-in-out 2s infinite;}
@keyframes bright {
  0% {transform: skewX(-45deg) translateX(0);}
  15% {transform: skewX(-45deg) translateX(320%);}
  100% {transform: skewX(-45deg) translateX(320%);}
}
.newmark2 {border: 1px solid #ff0000!important;margin-top: 20px}
/*.ptrn-Plaid {margin-top: 0!important;}*/
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■　1枠用
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ 
.OneBox-list {position: relative;width: 100%;padding: 5px;margin-bottom: 20px;border: 1px solid #CCC;}
.OneBox-list .shop-title{position: relative;width: 100%;display: flex;flex-direction: column;padding: 10px;border-bottom: 1px solid rgba(255, 224, 240, 1.00);background: repeating-linear-gradient(0deg, white, white 20%, #ffe0f0 100%);}
.OneBox-list .shop-title span{width:100%;font-size:10px;margin-bottom: 5px;color: #333;}
.OneBox-list .shop-title h3{width:calc(100% - 125px);font-size:115%;font-weight:700;white-space: wrap;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;}
.OneBox-list .shop-title h3 a {color: #ff7696;}
.OneBox-list .shop-title span i{margin-right:2px}
.OneBox-list .enrollment {position: absolute;top: 2px;right: 5px;width: 120px; height:50px;overflow:hidden;display:flex;justify-content:flex-end;gap:2px}
.OneBox-list .enrollment img {width:calc(100% / 3 - 2px);height:auto;margin:5px 0;border-radius:50%;border:1px #303030 solid;object-fit:cover}
.OneBox-list .shop-notice{background:#FFF;height:30px;line-height:30px;padding-left:5px;box-shadow:inset -1px -2px 3px 2px rgba(255,255,255,0.5),inset 2px 2px 2px 0 rgba(0,0,0,0.3)}
.OneBox-list .shop-notice .info-inner{display:flex;justify-content:flex-start;flex-wrap:nowrap}
.OneBox-list .shop-notice .info-inner i{width:24px;height:24px;margin-right:5px;color:red;position:relative;top:6px}
.OneBox-list .shop-notice .info-inner span{width: 100%; font-size:85%;font-weight:700}
.OneBox-list .banner-info {display: flex;}
.OneBox-list .shop-banner{height: auto;}
.OneBox-list .shop-banner img{width: 220px; height: 34px;}
.OneBox-list .cast-info {width: calc(100% - 220px);height: 34px;}
.OneBox-list .cast-info .girls-capa {width: 100%;height: 34px; display: flex;justify-content: center;align-items: center;}
.OneBox-list .cast-info .girls-capa p {margin: 0;padding: 0;color: #333;}
.OneBox-list .cast-info .girls-capa p span {font-size: 120%;font-weight: 700; color: #ff0000;margin: 0 2px;}
.OneBox-list .main-event {position: absolute;top: 7px;left: 170px;display: flex;font-size: 90%;z-index: 3;height: 24px;line-height: 24px}
.OneBox-list .main-event a {padding: 0 4px 3px;margin-right: 1px;text-decoration: none;color: #FFF;cursor: auto;border-radius: 50%;}
.OneBox-list .delivery {left: 120px!important;}
.OneBox-list .delivery-k {left: 130px!important;}
.OneBox-list .soap {left: 120px!important;}
.OneBox-list .health {left: 120px!important;}
.OneBox-list .aroma {left: 150px!important;}
.OneBox-list .aroma-k {left: 160px!important;}
.OneBox-list .mens-esthe {left: 180px!important;}
.event-campaign {background: #FFA900;border: #FFA900 1px solid;}
.event-shame {background: #FF7696;border: #FF7696 1px solid;}
.event-line {background: #1B9A11;border: #1B9A11 1px solid;}
@media screen and (min-width:576px) {
 .OneBox-list .shop-banner img{width: 320px; height: 50px;}
 .OneBox-list .cast-info {width: calc(100% - 320px);height: 50px;}
 .OneBox-list .cast-info .girls-capa {width: 100%;height: 50px;}
}*/
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■　1枠用（NEW）
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
.OneBox-contract{position:relative;width:100%;border:1px solid #CCC;margin-top: 20px;margin-bottom:20px;padding:5px}
.OneBox-contract .list-head{position:relative;width:100%;display:flex;flex-direction: column;border-bottom:1px solid #ffe0f0ff;background:repeating-linear-gradient(0deg,white,white 20%,#ffe0f0 100%)}
.OneBox-contract .list-head .list-title{width:100%;height:50px;text-align:left;padding:7px 10px;color:#FF2DA0;font-size:0.9rem;font-weight:700;line-height:1.7;border-bottom:1px solid #ffe0f0ff;background:repeating-linear-gradient(0deg,white,white 20%,#ffe0f0 100%);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.OneBox-contract .list-head a{color:#ff7696;text-decoration:none}
.OneBox-contract .list-head .list-title p{margin:0;padding:0;font-size:.7rem;color:#333;font-weight:400}
.OneBox-contract .list-banner{width:50%;height:auto;}
.OneBox-contract .list-banner a{display:block}
.OneBox-contract .list-banner img{width:calc(100% / 2);height:auto;position: absolute;top: 0;right: 0}
.OneBox-contract .list-inner{width:100%;padding-top:10px;display:flex;background: #fff}
.OneBox-contract .list-inner .main-img{width:60%;display:flex;justify-content:flex-start}
.OneBox-contract .list-inner .main-img img{width:calc(100% / 3);height:auto;max-height:70px;min-height:70px;object-fit:cover;margin:0 2px;border-radius:20px;border:1px solid #434343}
.OneBox-contract .list-inner .main-info{width:40%;display:flex;justify-content:center;padding-left:20px;gap:5px}
.OneBox-contract .list-inner .main-info .main-event{display:flex;justify-content:flex-start;flex-wrap:nowrap;overflow:hidden;margin-top:5px;min-height:20px}
.OneBox-contract .list-inner .main-info .main-event a{width:26px;height:26px;line-height:27px;text-align:center;display:block;margin-right:5px;text-decoration:none;color:#FFF;cursor:auto;border-radius:50%}
.OneBox-contract .cast-info{position:absolute;bottom:10px;right:24px;display:flex;gap:10px}
.OneBox-contract .cast-info .girls-capa{font-weight:700}
.OneBox-contract .cast-info .girls-capa span{color:red;font-size:120%;margin:0 2px}
.OneBox-contract .cast-info .girls-today{font-weight:700}
.OneBox-contract .cast-info .girls-today span{color:red;font-size:120%;margin:0 2px}
.event-campaign{background:#FFA900;border:#FFA900 1px solid}
.event-shame{background:#FF7696;border:#FF7696 1px solid}
.event-line{background:#1B9A11;border:#1B9A11 1px solid}
@media (min-width: 480px) {
.OneBox-contract .list-head .list-title{width: calc(100% - 210px);}
.OneBox-contract .list-banner img{max-width: 210px;max-height: 33px;top: 5px;}
.OneBox-contract .list-inner .main-img img{min-height:80px;}
.OneBox-contract .cast-info{right: 11%;}
}
@media (min-width: 576px) {
.OneBox-contract .list-head .list-title{}
.OneBox-contract .list-banner img{top: 0;}
.OneBox-contract .list-inner .main-img{gap:10px}
.OneBox-contract .list-inner .main-img img{min-height:90px;}
.OneBox-contract .cast-info{right: 11%;}
}
@media (min-width: 767px) {
.OneBox-contract .list-head .list-title{}
.OneBox-contract .list-banner img{top: 0;}
.OneBox-contract .list-inner .main-img{gap:10px}
.OneBox-contract .list-inner .main-img img{min-height:120px;}
.OneBox-contract .cast-info{right: 13%;}
}
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■　3枠用
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
.ThreeBox-list {position: relative;width:100%;padding: 5px;margin-top: 20px; margin-bottom: 20px;border: 1px solid #CBB508;background: #FFF8C0;}
.ThreeBox-list .shop-title{position: relative;width:100%;display:flex;flex-direction: column;padding: 10px;border-bottom: 1px solid rgba(255, 224, 240, 1.00);background: repeating-linear-gradient(0deg, #FFF8C0, #FFF8C0 20%, #CBB508 100%);}
.ThreeBox-list .shop-title span{width:100%;font-size:10px;margin-bottom: 5px;color: #333;}
.ThreeBox-list .shop-title h3{width:100%;font-size:115%;font-weight:700;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}
.ThreeBox-list .shop-title h3 a {color: #1D110E;}
.ThreeBox-list .shop-title span i{margin-right:2px}
.ThreeBox-list .shop-banner{width:100%;height: auto;}
.ThreeBox-list .shop-banner img{width:100%;height:auto;min-height: 44px; max-height: 100px;}
.ThreeBox-list .shop-notice{background:#FFF;height:30px;line-height:30px;padding-left:5px;box-shadow:inset -1px -2px 3px 2px rgba(255,255,255,0.5),inset 2px 2px 2px 0 rgba(0,0,0,0.3)}
.ThreeBox-list .shop-notice .info-inner{display:flex;justify-content:flex-start;flex-wrap:nowrap}
.ThreeBox-list .shop-notice .info-inner i{width:24px;height:24px;margin-right:5px;color:red;position:relative;top:6px}
.ThreeBox-list .shop-notice .info-inner span{width: 100%; font-size:85%;font-weight:700}
.ThreeBox-list .cast-info {position: absolute;top: -15px;right: 8px; display: flex;justify-content: center;padding: 10px 0;margin-top: 10px;margin-bottom: 5px;text-shadow: 1px 1px 2px #fff;}
.ThreeBox-list .cast-info .girls-capa {display: flex;margin-right: 5px;}
.ThreeBox-list .cast-info .girls-capa p {margin: 0;padding: 0;font-weight: 700;color: #333;}
.ThreeBox-list .cast-info .girls-capa p span {font-size: 150%;color: #ff0000;margin: 0 2px;}
.ThreeBox-list .cast-info .girls-today {display: flex;margin-left: 5px;}
.ThreeBox-list .cast-info .girls-today p {margin: 0;padding: 0;font-weight: 700;color: #333;}
.ThreeBox-list .cast-info .girls-today p span {font-size: 150%;color: #ff0000;margin: 0 2px;}
.ThreeBox-list .enrollment {position: relative;width:100%;height:88px;overflow:hidden;display:flex;justify-content:space-between;}
.ThreeBox-list .enrollment img {width:calc(100% / 5 - 2px);height:auto;margin:5px 0;border-radius:20px;border:1px #303030 solid;object-fit:cover}
.ThreeBox-list .main-event {display: flex;justify-content: flex-end;font-size: 90%;z-index: 3;height: 24px;line-height: 24px}
.ThreeBox-list .main-event a {padding: 0 10px;margin-right: 1px;text-decoration: none;color: #FFF;cursor: auto;border-radius: 10px;}

@media screen and (min-width:576px) {
 .ThreeBox-list .enrollment {height:120px;}
}
@media screen and (min-width:767px) {
 .ThreeBox-list .enrollment {height:140px;}
}
.ThreeBox-list .under-add {position: relative;width: 100%;min-height: 98px; margin-top: 5px;z-index: 0;}
.ThreeBox-list .pickup-pic {position: absolute;top: -10px;left: -8px; width: 60px;height: 60px;border-radius: 50%;border: 3px solid #609FFF;overflow: hidden;z-index: 1;}
.ThreeBox-list .pickup-pic img {width: 100%;height: auto;}
.ThreeBox-list .shop-add {width: 100%; padding: 10px 10px 8px;background-image: linear-gradient(-45deg, #fff 25%, #D0F3FF 25%, #D0F3FF 50%, #fff 50%, #fff 75%, #D0F3FF 75%, #D0F3FF);background-size: 4px 4px;}
.ThreeBox-list .shop-add:hover, .ThreeBox-list .shop-add:active {background-image: linear-gradient(-45deg, #fff 25%, #FDC6FF 25%, #FDC6FF 50%, #fff 50%, #fff 75%, #FDC6FF 75%, #FDC6FF);background-size: 4px 4px;}
.ThreeBox-list .shop-add a {display: block;text-decoration: none}
/*.ThreeBox-list .shop-add p {width: calc(100% - 50px);margin-left: auto;font-weight: 700;color: #000FFF;height: 36px;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;}*/
.ThreeBox-list .shop-add p {width: calc(100% - 50px);margin-left: auto;font-weight: 700;color: #000FFF;height: auto;}
.ThreeBox-list .shop-add .discount-rates {display: flex;justify-content: center;align-items: center;padding: 10px 15px 6px;background: #fff;border: 2px solid #ff0000;border-radius: 8px;gap: 10px;}
.ThreeBox-list .shop-add .discount-rates .rates-before {color: #999;text-decoration: line-through;}
.ThreeBox-list .shop-add .discount-rates .rates-after {color: #ff0000;font-weight: 700;}
.ThreeBox-list .shop-add .discount-rates div span {font-size: 150%;}
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■　無料店
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
.free-store {
  width: 100%;
  max-width: 768px;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin: 0 auto 20px;
  padding-left: 1px;
  gap: 10px 1px
}
.shop-info-free {
  width: calc((100% / 2) - 1px);
  border: 1px solid #CCC;
  padding: 2px
}
.list-head-free {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  flex-direction: column
}
.list-banner-free {
  width: 100%;
  height: 40px;
  margin: 0;
  padding: 0
}
.list-banner-free img {
  width: 100%;
  height: 40px;
  max-height: 50px
}
.list-title-free {
  width: 100%;
  height: 40px;
  text-align: left;
  padding: 5px;
  margin-bottom: 5px;
  color: #333;
  font-size: 0.8rem;
  font-weight: 700;
  border-bottom: 1px solid rgba(218, 218, 218, 1.00);
  background: repeating-linear-gradient(0deg, white, white 60%, #ccc 100%);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  line-height: 1.4
}
.list-title-free p {
  margin: 0;
  padding: 0;
  font-size: .6rem;
  font-weight: normal;
  color: #333
}
.list-title-free a {
  color: #444;
  text-decoration: none;
}
.list-title-free a:hover {
  color: #ccc;
}
.list-inner-free {
  width: 100%;
  padding-bottom: 5px;
  display: flex
}
.list-inner-free .pickup {
  text-align: center;
  color: #FFCE00;
  background: rgba(0, 0, 0, 0.45);
  position: relative;
  top: -24px
}
.main-info-free {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding-left: 0;
  gap: 10px
}
.info-inner-free {
  line-height: 1.4rem;
  padding: 8px 0;
  border-top: 1px solid #434343;
  border-bottom: 1px solid #434343
}
.info-inner-free span {
  display: block;
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #000;
  font-weight: 700
}
.info-inner-free span i {
  margin-right: 5px;
  color: red
}
.sub-img-free {
  display: flex;
  justify-content: space-between;
  margin: 0
}
.sub-img-free > span {
  width: calc(100% / 3);
  margin: 0 5px;
  border-radius: 10px;
  border: 1px solid #434343;
  overflow: hidden
}
.sub-img-free img {
  width: 56px;
  height: 56px;
  object-fit: cover;
  margin: 0 1px;
  border-radius: 50%;
  border: 1px solid #434343
}
@media (min-width: 480px) {
  .sub-img-free img {
  width: 70px;
  height: 70px;
}
}
@media (min-width: 767px) {
  .shop-info-free {
  width: calc((100% / 3) - 1px);
}
}
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■　無料店　※90日未ログイン
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
.free-90over {
  width: 100%;
  max-width: 768px;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin:0 auto 20px;
  gap: 10px 1px;
}
.shop-info-90over {
  width: calc((100% / 2) - 1px);
  background: #FCFCFC;
  border: 1px solid #CCC;
  padding: 2px;
}
.list-head-90over {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  flex-direction: column
}
.list-title-90over {
  width: 100%;
  height: 40px;
  text-align: left;
  padding: 5px;
  margin-bottom: 5px;
  color: #333;
  font-size: 0.8rem;
  font-weight: 700;
  /*border-bottom: 1px solid rgba(218, 218, 218, 1.00);
  background: repeating-linear-gradient(0deg, white, white 60%, #ccc 100%);*/
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  line-height: 1.6
}
.list-title-90over p {
  margin: 0;
  padding: 0;
  font-size: .6rem;
  font-weight: normal;
  color: #333
}
.list-title-90over a {
  color: #444;
  text-decoration: none;
}
.list-title-90over a:hover {
  color: #ccc;
}
@media (min-width: 768px) {
  .shop-info-90over {
  width: calc((100% / 3) - 1px);
}
}
/* ==========================================================================
	TOPへボタン　2024.3.8 追加
========================================================================== */
#page-top{position:fixed;bottom:60px;right:8px;z-index: 99;}
#page-top a{background-color:#0006;color:#fff;text-align:center;text-decoration:none;padding:10px 15px;display:flex;flex-direction:column;border-radius:50%;transition: all .3s ease;}
#page-top a:hover{background-color:#666;text-decoration:none}
#page-top i{font-size:1.2rem;font-weight:400}
#page-top .is_active {opacity: 1;}
/* ==========================================================================
	アイコン（キャンペーン・写メ日記・LINE）　2024.3.11 追加
========================================================================== */
.OneBox-list .main-event p {width: 22px;height: 22px;line-height: 22px;text-align: center;color: #fff;border-radius: 50%}
.ThreeBox-list .main-event p {height: 100%; padding: 0 10px;margin-right: 1px;text-decoration: none;color: #FFF;cursor: auto;border-radius: 10px}
/* ==========================================================================
	各アイコンの説明　2024.4.12 追加
========================================================================== */
.icon-setsumei {width: 100%;display: flex;justify-content: center;align-items: flex-end;font-size: 80%;margin-bottom: 8px;color: #333;}
.icon-setsumei span {width: 18px;height: 18px;line-height: 18px;font-size: 65%;text-align: center;display: block;margin-right: 3px;text-decoration: none;cursor: auto;border-radius: 50%;margin-left: 5px}
.event-campaign {color: #FFF!important;background: #FFA900;border: #FFA900 1px solid;}
.event-shame {color: #FFF!important;background: #FF7696;border: #FF7696 1px solid;}
.event-line {color: #FFF!important;background: #1B9A11;border: #1B9A11 1px solid;}