@charset "utf-8";
body {
  color: #333;
  font: 14px/1.5 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック",
    "MS PGothic", sans-serif;
  background: url(../images/common/bg_side.jpg) repeat-y center 0 #000000;
  background-attachment: fixed;
	overflow-wrap: anywhere;
  word-break: normal;
}
* {
  border: none;
  vertical-align: baseline;
  outline: 0;
  margin: 0;
  padding: 0;
}
img,
video {
  border: 0;
  vertical-align: top;
}
ol,
ul {
  list-style: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
.cf:before,
.cf:after {
  content: "";
  display: table;
}
.cf:after {
  clear: both;
}
.cf {
  zoom: 1;
}
a {
  color: #333;
}
a:link,
a:visited {
  text-decoration: none;
}

/*------------------------------------------------------------
　レイアウト
-------------------------------------------------------------*/
.wrapper {
  width: 1320px;
  margin: 0 auto;
}
.contents_wrap {
  background: url(../images/common/bg.png);
  padding: 0 60px 60px;
}
.left {
  float: left;
  width: 880px;
}
.right {
  float: right;
  width: 300px;
}
.right > * + * {
  margin-top: 20px;
}
/*------------------------------------------------------------
　共通
-------------------------------------------------------------*/
.header_logo {
  width: 520px;
  height: 41px;
}
.float_logo {
  width: 208px;
  height: 42px;
}
div[class^="content_"] {
  background: #fff;
}
.shadow {
  box-shadow: 0 0 7px rgba(0, 0, 0, 0.2);
}
.cast_silver,
.cast_gold,
.cast_platinum {
  position: relative;
}
.cast_silver::after,
.cast_gold::after,
.cast_platinum::after {
  position: absolute;
  z-index: 1;
  width: 96px;
  height: 22px;
  background-image: url(../images/common/rank.png);
  background-repeat: no-repeat;
  content: "";
}
.cast_silver:not(.img_box)::after,
.cast_gold:not(.img_box)::after,
.cast_platinum:not(.img_box)::after {
  bottom: 0;
  left: 0;
}
.cast_silver.img_box::after,
.cast_gold.img_box::after,
.cast_platinum.img_box::after,
.cast_silver.girls-item_img::after,
.cast_gold.girls-item_img::after,
.cast_platinum.girls-item_img::after {
  bottom: 4px;
  left: 4px;
}
.cast_silver.img_schedule::after,
.cast_gold.img_schedule::after,
.cast_platinum.img_schedule::after {
  bottom: 5px;
  left: 5px;
}
.cast_gold:after {
  background-position: 0 -22px;
}
.cast_platinum:after {
  background-position: 0 -44px;
}
.em_txt {
  color: #ff0000;
}
.c_red {
  color: #ff0000;
}
.f_l {
  float: left;
}
.f_r {
  float: right;
}
.d_t {
  display: table;
}
.d_tc {
  display: table-cell;
}
.seiretsu {
  display: inline-block;
  vertical-align: middle;
}
.hO {
  transition: opacity 0.5s ease-out;
}
.hO:hover {
  cursor: pointer;
  opacity: 0.8;
}
.img_box {
  padding: 4px;
  position: relative;
}
.new:before {
  content: "";
  width: 54px;
  height: 31px;
  background: url(../images/common/new.png) no-repeat;
  position: absolute;
  top: -2px;
  right: 10px;
  z-index: 2;
}
div[class*="ranking_"]:before {
  content: "";
  width: 23px;
  height: 23px;
  overflow: hidden;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 1;
  background-image: url(../images/common/rank/rank2.png);
  background-repeat: no-repeat;
}
.ranking_flat:before {
  background-position: 0 -23px;
}
.ranking_down:before {
  background-position: 0 -46px;
}
[class*="rank_icon"]::before {
  content: "";
  width: 49px;
  height: 50px;
  overflow: hidden;
  position: absolute;
  top: -20px;
  right: -8px;
  z-index: 1;
  background-image: url(../images/common/rank/rank1.png);
  background-repeat: no-repeat;
}
.rank_icon2:before {
  background-position: 0 -50px;
}
.rank_icon3:before {
  background-position: 0 -100px;
}
.rank_icon4:before {
  background-position: 0 -150px;
}
.rank_icon5:before {
  background-position: 0 -200px;
}
.wrap_tit {
  padding: 30px 30px 20px;
}
.barrier:before,
.barrier:after {
  content: "";
  width: 40px;
  height: 108px;
  position: absolute;
  top: 50%;
  margin-top: -54px;
  z-index: 2;
}
.side-pick .barrier:before,
.side-pick .barrier:after {
  width: 20px;
  height: 101px;
  top: 320px;
  margin-top: 0;
}
.barrier:before {
  left: 0;
}
.barrier:after {
  right: 0;
}
.bottom-slider .barrier:before,
.bottom-slider .barrier:after {
  width: 40px;
  height: 100%;
  top: 0;
  margin-top: 0;
}
.arrow_gray_10:before {
  content: "";
  width: 0;
  height: 0;
  border: 5px solid transparent;
  border-left: 10px solid #acacac;
  position: absolute;
}
.arrow_gray_10:hover {
  cursor: pointer;
}
.c-h-bBorder {
  position: relative;
}
.c-h-bBorder::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #b60401;
  opacity: 0;
  transition: opacity 0.5s ease-out;
  content: "";
}
.customBanner-mw100 img {
  max-width: 100%;
  height: auto;
}

.close-button {
  position: absolute;
  top: 10px;
  right: 10px;
  aspect-ratio: 1;
  width: 20px;
  border-radius: 50%;
  background-color: #ddcd96;
  transition: background-color 0.5s ease-out;
  cursor: pointer;
}
.close-button:hover {
  background: #962314;
}
.close-button::before,
.close-button::after {
  display: block;
  position: absolute;
  inset: 0;
  width: 14px;
  height: 1px;
  margin: auto;
  background-color: #fff;
  content: "";
}
.close-button::before {
  rotate: 55deg;
}
.close-button::after {
  rotate: -55deg;
}
/*------------------------------------------------------------
　ヘッダー
-------------------------------------------------------------*/
header {
  position: relative;
  background-color: #fff;
  padding-bottom: 12px;
}
header::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 12px;
  background-size: auto auto;
  background-color: rgba(221, 205, 150, 1);
  background-image: repeating-linear-gradient(
    0deg,
    transparent,
    transparent 2px,
    rgba(255, 255, 255, 1) 2px,
    rgba(255, 255, 255, 1) 5px
  );
  content: "";
}
.header_box1 {
  display: flex;
  padding: 0 60px;
}
.header_box1L {
  display: grid;
  grid-template-columns: 1fr;
  place-content: start;
  row-gap: 13px;
  width: 669px;
  background: url(../images/common/header/bg.png) no-repeat 267px 5px;
  padding-block: 16px;
  padding-right: 10px;
  box-sizing: border-box;
}
.header_delivery_area {
  font-size: 11px;
  font-weight: normal;
  line-height: initial;
  background-color: #f5f0df;
  padding: 5px 10px;
}
.header_box1R {
  width: 531px;
  background-color: #fcfaf4;
  padding: 10px;
  position: relative;
  border-left: 1px dashed #ddcd96;
  box-sizing: border-box;
}
.header_tit {
  font-size: 12px;
  font-weight: normal;
  width: 210px;
  margin-bottom: 10px;
}
.bnr_header_shopData {
  position: absolute;
  top: 0;
  right: 0;
}

.nav1 ul {
  display: flex;
  column-gap: 13px;
	line-height: 1.3;
}
.nav1 li a {
	display: block;
	column-gap: 8px;
  color: #483934;
  font-weight: bold;
  height: 30px;
  position: relative;
	padding-left: 38px;
	font-size: 13px;
  transition: color 0.5s ease-out;
}
.nav1 li span {
  color: #8d8d8d;
  font-size: 10px;
  font-weight: normal;
  display: block;
}
.nav1 li a:hover {
  color: #962314;
}
.nav1 li a::before {
  content: "";
	position: absolute;
	inset-block: 0;
	left: 0;
  aspect-ratio: 1;
  width: 30px;
	margin-block: auto;
  border-radius: 50%;
  display: block;
  background-image: url(../images/common/nav1.png);
  background-repeat: no-repeat;
}
.nav1_schedule a:before {
  background-color: #6ac9ec;
}
.nav1_weeklySchedule a:before {
  background-color: #d482ef;
	background-position: -30px 0;
}
.nav1_girls a:before {
  background-color: #fa8d9f;
  background-position: -60px 0;
}
.nav1_newface a:before {
  background-color: #8cd259;
  background-position: -90px 0;
}
.nav1_system a:before {
  background-color: #ffd325;
  background-position: -120px 0;
}
.nav1_play a:before {
  background-color: #ec6262;
  background-position: -150px 0;
}

.nav2_wraper {
  display: flex;
  align-items: center;
  height: 44px;
  background: #fff;
  border-top: 2px solid #ddcd96;
  padding-inline: 60px;
}
.nav2 ul {
  display: flex;
  align-items: center;
  column-gap: 20px;
}
.nav2 li {
  display: flex;
  align-items: center;
  column-gap: 5px;
  cursor: pointer;
}
.nav2 li a {
  color: #333;
  font-size: 12px;
  font-weight: bold;
  text-decoration: none;
  position: relative;
}
.nav2 li:before {
  content: "";
  width: 25px;
  height: 25px;
  background-image: url(../images/common/nav2.png);
  background-repeat: no-repeat;
}
.nav2_event:before {
  background-position: -25px 0;
}
.nav2_ticket:before {
  background-position: -50px 0;
}
.nav2_rank:before {
  background-position: -75px 0;
}
.nav2_movie:before {
  background-position: -100px 0;
}
.nav2_play:before {
  background-position: -125px 0;
}
.nav2_enquete:before {
  background-position: -150px 0;
}
.nav2 li a:after {
  content: "";
  width: 100%;
  height: 1px;
  background: #962314;
  opacity: 0;
  position: absolute;
  right: 0;
  bottom: 0;
  transition: 0.5s ease-out;
}
.nav2 li:hover a {
  color: #962314;
}
.nav2 li:hover a:after {
  opacity: 1;
}
/*------------------------------------------------------------
　フロートメニュー
-------------------------------------------------------------*/
.float_menu {
  display: none;
  position: fixed;
  top: 0;
  inset-inline: 0;
  z-index: 3;
  width: 1320px;
  margin-inline: auto;
  background-color: #fff;
  border-bottom: 1px solid #ccc;
}
.float_box1 {
  display: flex;
  align-items: center;
  column-gap: 20px;
  height: 67px;
  padding-inline: 60px;
}
.float_box1 .logo {
  width: 208px;
  height: 42px;
}
.bnr_float_shopData {
  position: absolute;
  top: 0;
  right: 60px;
}

/*------------------------------------------------------------
　ニュース
-------------------------------------------------------------*/
.news_cat {
  width: fit-content;
  color: #fff;
  font-weight: bold;
  height: 26px;
  line-height: 26px;
  background: #894d45;
  border-radius: 3px;
  padding-inline: 10px;
}
/*------------------------------------------------------------
　パンくず
-------------------------------------------------------------*/
.breadcrumb ul {
  display: flex;
  flex-wrap: wrap;
  padding-block: 20px;
}
.breadcrumb li {
  display: flex;
  font-size: 12px;
}
.breadcrumb li:not(:last-child)::after {
  content: ">";
  margin-inline: 10px;
}
.breadcrumb a {
  color: #b60401;
}
.breadcrumb a:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}
/*------------------------------------------------------------
　見出し
-------------------------------------------------------------*/
.tit_wrap {
	display: grid;
	grid-template-columns: 20px auto 1fr;
	align-items: center;
	column-gap: 10px;
}
.tit_wrap::before,
.tit_wrap::after {
  width: 100%;
  height: 12px;
  background-image: linear-gradient(180deg, #ddcd96 8.33%, #ffffff 8.33%, #ffffff 20.83%, #ddcd96 20.83%, #ddcd96 29.17%, #fff 29.17%, #fff 41.67%, #ddcd96 41.67%, #ddcd96 50%, #ddcd96 50%, #ddcd96 58.33%, #ffffff 58.33%, #ffffff 70.83%, #ddcd96 70.83%, #ddcd96 79.17%, #fff 79.17%, #fff 91.67%, #ddcd96 91.67%, #ddcd96 100%);
  background-size: 24.00px 24.00px;
	content: "";
}
.tit_wrap > * {
  display: flex;
	align-items: baseline;
	column-gap: 10px;
  color: #5d3b30;
}
.tit_type1 {
  font-size: 22px;
}
.tit_type2 {
  font-size: 20px;
}
.tit_type3 {
  font-size: 16px;
}
.written_in_english {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E",
    "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  color: #8d8d8d;
  font-size: 14px;
  font-weight: normal;
}
.tit_esthe {
  height: 47px;
  line-height: 47px;
  background: url(../images/common/bg/tit.png) no-repeat right top;
  border-top: 1px solid #ddcd96;
  border-bottom: 2px solid #ddcd96;
  box-shadow: 0 -1px 0 #fff inset, 0 -2px 0 #ddcd96 inset;
}
.heading-sideBorder {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  column-gap: 10px;
  font-family: Georgia, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  font-size: 20px;
  font-weight: bold;
  color: #493934;
}
.heading-sideBorder::before,
.heading-sideBorder::after {
  height: 7px;
  background-image: repeating-linear-gradient(
    0deg,
    #ddcd96,
    #ddcd96 1px,
    #ffffff 1px,
    #ffffff 3px,
    #ddcd96 3px,
    #ddcd96 4px,
    #ffffff 4px,
    #ffffff 6px,
    #ddcd96 6px,
    #ddcd96 7px
  );
  content: "";
}
/*------------------------------------------------------------
　キャスト
-------------------------------------------------------------*/
.wrap_girls {
  padding-inline: 30px;
}
.girls-items {
  display: grid;
  grid-template-columns: repeat(var(--girlsItems-repeat, 5), 1fr);
  gap: var(--girlsItems-gap, 10px);
}
.girls-item {
  border: 1px solid #ddcd96;
  background: url(../images/common/bg/girls.png) no-repeat right bottom;
  position: relative;
  cursor: pointer;
}
.girls-item_img {
  position: relative;
  padding: 4px;
}
.girls-item_img:not(.-full) {
  aspect-ratio: 4/3;
}
.girls-item_img.-full {
  aspect-ratio: 3/4;
}
.girls-item_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.girls_data {
  padding: 10px 15px 20px;
}
.girls_name a {
  color: #b60401;
  font-size: 20px;
  font-weight: bold;
  text-decoration: none;
}
.girls_name span {
  font-size: 16px;
}
.girls_size {
  margin-top: 5px;
}
.girls_time {
  color: #26b480;
  font-weight: bold;
  text-align: center;
  height: 23px;
  line-height: 23px;
  border: 2px solid #0caf73;
  margin-top: 10px;
}
.girls_time:before {
  content: "";
  aspect-ratio: 1;
  width: 15px;
  background: url(../images/common/icon/icon_clock3.png) no-repeat;
  display: inline-block;
  vertical-align: middle;
  margin: -2px 10px 0 0;
}
.girls_schedule {
  color: #fff;
  font-weight: bold;
  text-align: center;
  height: 25px;
  line-height: 25px;
  background: #ccb771;
  margin-top: 10px;
}
.girls_comment {
  margin-top: 10px;
}
.girls_size + .girls_comment {
  border-top: 1px solid #999;
  padding-top: 10px;
  margin-top: 10px;
}
.girls_type {
  display: flex;
  place-content: flex-start;
  flex-wrap: wrap;
  gap: 5px;
}
.girls_type li {
  color: #fff;
  font-size: 12px;
  text-align: center;
  background: #7e5449;
  border-radius: 3px;
  padding: 3px 10px;
}
/*------------------------------------------------------------
　サイド ピックアップガール
-------------------------------------------------------------*/
.side-pick {
  background-color: #fff;
}
.side-pick-items {
  opacity: 0;
  transition: opacity 0.5s ease-out;
}
.side-pick .bx-viewport .side-pick-items {
  opacity: 1;
}
.side-pick-item {
  cursor: pointer;
}
.side-pick-item:hover img {
  opacity: 0.8;
}
.side-pick-item:hover .c-h-bBorder::before {
  opacity: 1;
}
.side-pick-item_img {
  aspect-ratio: 1;
  width: 300px;
}
.side-pick-item_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity 0.5s ease-out;
}
.side-pick-item_body {
  display: grid;
  row-gap: 8px;
  margin-top: 20px;
  padding-inline: 30px;
  text-align: center;
}
.side-pick-item_name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.side-pick-item_name a {
  color: #962314;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
}
.side-pick-item_name span {
  font-size: 20px;
}
.side-pick-item_date {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 5px;
  height: 28px;
  border: 1px solid #9f9f9f;
  border-radius: 3px;
}
.side-pick-item_date::before {
  content: "";
  aspect-ratio: 1;
  width: 15px;
  background: url(../images/common/icon/icon_clock1.png) no-repeat;
}
.side-pick .bx-wrapper {
  box-sizing: border-box;
  min-height: 469px;
  padding-bottom: 48px;
}
.side-pick .bx-pager {
  bottom: 18px;
}
.side-pick .bx-controls-direction a {
  width: 20px;
  height: 100px;
  background: rgb(72, 56, 51);
  background: linear-gradient(to bottom, rgb(72, 56, 51) 0%, rgb(136, 77, 69) 100%);
  top: 320px;
}
.side-pick .bx-controls-direction a:before {
  position: absolute;
  inset: 0;
  content: "";
  width: 8px;
  height: 8px;
  margin: auto;
  background-color: #fff;
}
.side-pick .bx-controls-direction a.bx-prev:before {
  clip-path: polygon(0 50%, 100% 0, 100% 100%);
}
.side-pick .bx-controls-direction a.bx-next:before {
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
/*------------------------------------------------------------
　サイド ランキング
-------------------------------------------------------------*/
.side-rank {
  background: #fff;
  padding-block: 30px 20px;
}
.side-rank-items {
  display: grid;
  row-gap: 20px;
  width: 240px;
  margin-top: 20px;
  margin-inline: auto;
}
.side-rank-item {
  position: relative;
  cursor: pointer;
}
.side-rank-item .slide_img::after {
  bottom: 0;
  left: 0;
}
.side-rank-item_img img {
  transition: opacity 0.5s ease-out;
}
.side-rank-item:hover img {
  opacity: 0.8;
}
.side-rank-item:hover .c-h-bBorder::before {
  opacity: 1;
}
.side-rank-item_name {
  overflow: hidden;
  margin-top: 10px;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.side-rank-item_name a {
  color: #b60401;
  font-size: 20px;
  font-weight: bold;
  text-decoration: none;
}
.side-rank-item_name span {
  font-size: 16px;
}
.side-rank-item_size {
  margin-top: 5px;
}
.read_more {
  text-align: center;
}
.read_more a {
  color: #894d45;
  text-decoration: underline;
  background: #fff;
  border: 2px solid #ddcd96;
  border-radius: 3px;
  display: block;
  padding-block: 10px;
  position: relative;
  text-underline-offset: 3px;
  transition: color 0.5s ease-out;
}
.read_more a:before {
  content: "";
  top: 50%;
  right: 20px;
  margin-top: -5px;
}
.read_more a:hover {
  color: #b60401;
  text-decoration: none;
}
/*------------------------------------------------------------
　求人情報
-------------------------------------------------------------*/
.side-recruit {
  background: #fff;
}
.side-recruit-items {
  padding: 20px;
}
.side-recruit-items > * + * {
  margin-top: 20px;
}

/*------------------------------------------------------------
　キャンペーン
-------------------------------------------------------------*/
.sub-campaign-item {
  width: 260px;
}
.sub-campaign-item a {
  display: block;
}
.sub-campaign-item img,
.sub-campaign-item_text {
  transition: 0.5s ease-out;
}
.sub-campaign-item_text {
  margin-top: 10px;
}
.sub-campaign-item a .sub-campaign-item_text {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.sub-campaign-item a:hover img {
  opacity: 0.8;
}
.sub-campaign-item a:hover .sub-campaign-item_text {
  color: #b60401;
  text-decoration: none;
}

/*------------------------------------------------------------
　イベント
-------------------------------------------------------------*/
.side-event {
  background: #fff;
}
.side-event-items {
  padding: 20px;
}
.side-event-items .sub-campaign-item + .sub-campaign-item {
  margin-top: 20px;
}

/*------------------------------------------------------------
　右カラム共通
-------------------------------------------------------------*/
.side-sec {
  overflow: hidden;
  background: #fff;
  padding-block: 30px 20px;
}
.side-sec .tit_wrap {
  margin-bottom: 20px;
}
.side-sec_inner {
  padding-inline: 20px;
}

/*------------------------------------------------------------
　ツイッター
-------------------------------------------------------------*/
.side-twitter {
  background-color: #fff;
  padding-block: 30px 20px;
}
.side-twitter_contents {
  margin-top: 20px;
  padding-inline: 20px;
}
/*------------------------------------------------------------
　新人入店情報、おすすめの女の子スライダー
-------------------------------------------------------------*/
.bottom-slider {
  background: #fff;
  padding: 30px 0 88px;
}
.new-slider-items {
  overflow: hidden;
}
.new-slider-item {
  display: grid;
  row-gap: 10px;
  float: left;
  width: 232px;
  text-align: center;
  cursor: pointer;
}
.new-slider-item_img {
  aspect-ratio: 4/3;
}
.new-slider-item_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity 0.5s ease-out;
}
.new-slider-item:hover img {
  opacity: 0.8;
}
.new-slider-item:hover .c-h-bBorder::before {
  opacity: 1;
}
.new-slider-item_date {
  border: 1px solid #b6b6b6;
  padding-block: 5px;
}
.new-slider-item_name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.new-slider-item_name a {
  color: #962314;
  font-size: 20px;
  font-weight: bold;
  text-decoration: none;
}
.new-slider-item_name span {
  font-size: 16px;
}
.new-slider-item_size {
  text-align: center;
  border-top: 1px solid #b6b6b6;
  border-bottom: 1px solid #b6b6b6;
  padding-block: 5px;
}
.new-slider-item_title {
  text-align: left;
}

.recommend-slider-items {
  overflow: hidden;
}
.recommend-slider-item {
  float: left;
  width: 291px;
}

.bottom-slider ul {
  padding-inline: 60px;
  opacity: 0;
}
.bottom-slider .bx-viewport ul {
  opacity: 1;
}
.bottom-slider .bx-wrapper {
  padding-inline: 60px;
  margin-top: 20px;
}
.bottom-slider .bx-pager {
  bottom: -50px;
}
.bottom-slider .bx-controls-direction a {
  width: 40px;
  height: 100%;
  background: rgb(72, 56, 51);
  background: linear-gradient(to bottom, rgb(72, 56, 51) 0%, rgb(136, 77, 69) 100%);
  top: 0;
}
.bottom-slider .bx-controls-direction a:before {
  content: "";
  width: 12px;
  height: 12px;
  background-color: #fff;
  position: absolute;
  inset: 0;
  margin: auto;
}
.bottom-slider .bx-controls-direction a.bx-prev:before {
  clip-path: polygon(0 50%, 100% 0, 100% 100%);
}
.bottom-slider .bx-controls-direction a.bx-next:before {
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}

/*------------------------------------------------------------
　お知らせ
-------------------------------------------------------------*/
.info,
.bottom-info {
  background: #fff;
  padding-bottom: 60px;
}
.bottom-info + .bottom-info {
  padding-top: 60px;
  border-top: 1px solid #d3d3d3;
}
.bottom-info_box {
  box-sizing: border-box;
  width: 1200px;
  border: 8px solid #f9f7f0;
  padding: 27px;
  margin: 0 auto;
}
.bottom-info-items {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}

/*------------------------------------------------------------
　グループリンク
-------------------------------------------------------------*/
.group-link {
  position: relative;
  background: #424242;
  padding-block: 60px;
}
.group-link::before {
  position: absolute;
  top: -20px;
  left: 0;
  width: 100%;
  height: 20px;
  background: linear-gradient(45deg, #424242 10px, transparent 0), linear-gradient(315deg, #424242 10px, transparent 0);
  background-size: 20px 20px;
  content: "";
}
.group-link_heading {
  text-align: center;
}
.group-link_heading span {
  display: block;
  margin-top: 10px;
  color: #fff;
}
.group-link_wrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 30px;
  width: 1050px;
  margin-top: 80px;
  margin-inline: auto;
}
.group-link_box {
  display: flex;
  flex-direction: column;
  row-gap: 20px;
}
.group-link_category {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  column-gap: 10px;
  position: relative;
  color: #fff;
  font-size: 16px;
  text-shadow: 2px 2px 0 #000;
}
.group-link_category::before,
.group-link_category::after {
  height: 9px;
  background: repeating-linear-gradient(
    0deg,
    rgba(139, 139, 139, 1),
    rgba(139, 139, 139, 1) 1px,
    rgba(255, 255, 255, 0) 0,
    rgba(255, 255, 255, 0) 4px
  );
  content: "";
}

.group-link-items {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-content: flex-start;
  gap: 20px 30px;
  flex: 1;
  padding: 30px;
  background-color: #5b5b5b;
}
.group-link-item {
  width: 210px;
  height: 260px;
}
.group-link-item a {
  display: block;
  color: #fff;
}
.group-link-item img,
.group-link-item_shop {
  transition: 0.5s ease-out;
}
.group-link-item_type {
  display: block;
  margin-top: 10px;
  font-size: 11px;
  white-space: nowrap;
}
.group-link-item_shop {
  position: relative;
  font-weight: bold;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.group-link-item_text {
  margin-top: 8px;
  font-size: 12px;
}
.group-link-item a:hover img {
  opacity: 0.8;
}
.group-link-item a:hover .group-link-item_shop {
  color: #fb3790;
  text-decoration: none;
}

.group-link-bottom {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  width: 1050px;
  margin-top: 30px;
  margin-inline: auto;
}

/*------------------------------------------------------------
　フッター
-------------------------------------------------------------*/
.footer {
  background-color: #fff;
  background-image: url(../images/common/footer/bg.png);
  background-repeat: repeat-x;
}
.footer_inner {
  width: 1200px;
  margin-inline: auto;
  padding-block: 40px 30px;
}
.footer_box1 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.footer_shopData {
  max-width: 400px;
}
.footer_logo {
  display: block;
  width: fit-content;
  margin-bottom: 10px;
}
.footer_shopData p {
  font-size: 12px;
}
.footer_delivery_area {
  display: grid;
  grid-template-columns: auto 1fr;
  margin-top: 10px;
  font-size: 12px;
}
.footer_delivery_area dd {
  display: flex;
  flex-wrap: wrap;
}
.footer-nav-items {
  display: flex;
	align-items: start;
  column-gap: 15px;
}
.footer_nav {
  display: grid;
  row-gap: 8px;
  max-width: 120px;
}
.footer_nav li a {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: baseline;
  column-gap: 0.5em;
  font-size: 12px;
  text-decoration: none;
  transition: color 0.5s ease-out;
}
.footer_nav li a:hover {
  color: #b60401;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.footer_nav li a:before {
  aspect-ratio: 1/1;
  width: 8px;
  background: #acacac;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  content: "";
}
.footer_contact {
  text-align: center;
  width: 285px;
  background: #fff;
}
.footer_contact dd {
  display: grid;
  row-gap: 10px;
  padding-block: 10px;
  border-right: 1px solid #d6d6d3;
  border-bottom: 1px solid #d6d6d3;
  border-left: 1px solid #d6d6d3;
}
.number_wrap {
  padding-block: 8px;
  background: #f5f5f5;
}
.footer_box2 {
  display: flex;
  align-items: center;
  column-gap: 10px;
  margin-top: 30px;
}
.sns-link {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  width: 40px;
  background: #ddcd96;
  border-radius: 50%;
  transition: background-color 0.5s ease-out;
}
.sns-link:hover {
  background: #b60401;
}
.sns-link_x {
  aspect-ratio: 400/409;
  width: 21px;
}
.page_top {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 68px;
  background: #f5f5f5;
  transition: background-color 0.5s ease-out;
}
.page_top:hover {
  background-color: #eee;
}
.page_top::before {
  rotate: -45deg;
  aspect-ratio: 1;
  width: 28px;
  margin-top: 14px;
  border-top: 2px solid #acacac;
  border-right: 2px solid #acacac;
  content: "";
}
/*------------------------------------------------------------
　フロート下部お知らせ
-------------------------------------------------------------*/
.float-bottomInfo {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  padding-block: 20px;
  background-color: rgb(0 0 0 / 0.3);
  opacity: 0;
  transition: opacity 0.5s ease-out 0.3s;
}
.float-bottomInfo.isActive {
  opacity: 1;
}
.float-bottomInfo_inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  position: relative;
  width: min(100%, 1320px);
  margin-inline: auto;
}

/*------------------------------------------------------------
　口コミ
-------------------------------------------------------------*/
.side-sec .review {
  overflow: hidden;
  height: 642px;
}
