@charset "utf-8";
/* Cast用 CSS Document */
.slick--optionset--cast-slide{

  margin-left:-15px;
  margin-right:-15px;
}
.slide__thumbnail img{
  width:100%;
  height: auto;
  object-fit: contain;
}
.cast-list .cast-list-box-img img{
  width:100%;
  height:auto;
  object-fit: cover;
}
.cast-list .views-col .cast-list-box {
  padding:10px;
  background:#fff;
  text-align: center;
  box-shadow: rgba(14, 63, 126, 0.04) 0px 0px 0px 1px, rgba(42, 51, 69, 0.04) 0px 1px 1px -0.5px, rgba(42, 51, 70, 0.04) 0px 3px 3px -1.5px, rgba(42, 51, 70, 0.04) 0px 6px 6px -3px, rgba(14, 63, 126, 0.04) 0px 12px 12px -6px, rgba(14, 63, 126, 0.04) 0px 24px 24px -12px;
  margin-bottom:30px;
}
.cast-list .views-col .cast-list-box-title{
  padding-bottom:8px;
  border-bottom:1px solid #ddd;
  padding-top:5px;
}
.cast-list .views-col .cast-list-box-shop{
  padding-top:8px;
}
/**** キャストグリッド *****/
.cast.grid{
  margin-bottom:20px;
}
.cast-grid-item {
  position: relative;
}
.cast-grid-info h3{
  font-size:14px;
  font-weight: 600;
  text-align: center;
  margin-top:10px;
}
.cast-grid-image a{
  border-radius: 10px;
  
}
.cast-grid-image img{
  width:100%;
  height:auto;
  object-fit: cover;
  border-radius: 10px;
}


/****　キャスト詳細ページ ****/
.cast-banner img{
    width: 100%;
    height: auto;
    margin-top: 30px;
    object-fit: contain;
}
.page-node-type-cast {
  background: #fff;
}
.page-node-type-cast .maincontent {
  max-width:500px;
}
.cast-detail-image img{
  max-width: 767px;
  height:auto;
  object-fit: cover;
  width:100%;
  
}
.cast-details-side {
  padding:15px;
  background:#fff;
  box-shadow: rgba(14, 63, 126, 0.04) 0px 0px 0px 1px, rgba(42, 51, 69, 0.04) 0px 1px 1px -0.5px, rgba(42, 51, 70, 0.04) 0px 3px 3px -1.5px, rgba(42, 51, 70, 0.04) 0px 6px 6px -3px, rgba(14, 63, 126, 0.04) 0px 12px 12px -6px, rgba(14, 63, 126, 0.04) 0px 24px 24px -12px;
}
.cast-details-side .cast-detail-shop-info-image img{
  width:100%;
  height: auto;
  object-fit: cover;
}
.page-node-type-cast .cast-detail-image{
  margin-bottom:15px;
}
.page-node-type-cast .field_castex_introduction{
  font-size:14px;
}
.page-node-type-cast .cast-profile .field__label{
  font-size:14px;
  font-weight: 600;
  width:50%;
  height:35px;
  line-height: 35px;
  border-bottom:solid 1px var(--main-color-3);
  text-align: center;
}
.page-node-type-cast .cast-profile .field__item{
  font-size:14px;
  width:50%;
  height:35px;
  line-height: 35px;
  border-bottom:solid 1px var(--waku);
  text-align: center;
}
.page-node-type-cast .cast-profile .field {
  display: flex;
}
.page-node-type-cast .cast-qa .field__label{
  height:60px;
  line-height: 60px;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap:10px;
}
.page-node-type-cast .cast-qa .field__item{
  height:60px;
  line-height: 60px;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap:10px;
  
}
#block-onerise-front-shop-footer div.shop-footer-wrap div.hashtug-me{
  background:#E6E6E6;
  padding:5px;
  height:auto;
}
.hashtug-me a{
  text-indent: -99999px;
  background:url("../img/banner/me_banner.png") no-repeat center;
  background-size:contain;
  width:100%;
  height:69px;
  display: block;
}


.cast-qa .field {
  margin-bottom:10px;
}
.cast-qa .cast-qa-item .field__item {
    line-height: 1.15;
}
.cast-qa .cast-question .field__item:before{
  content:"";
  display: inline-block;
  background:url(../img/q.webp) no-repeat;
  width:45px;
  height:45px;
  min-width: 45px;
}
.cast-qa .cast-answer{
  margin-left:0px;
}
.cast-qa .cast-answer .field__item:before{
  content:"";
  display: inline-block;
  background:url(../img/a.webp) no-repeat;
  width:45px;
  height:45px;
  min-width: 45px;
}
.cast-me-banner a{
  display: block;
  width:100%;
  box-sizing: border-box;
  max-width:382px;
  height:86px;
  margin-left:auto;
  margin-right:auto;
  background:url("../img/me_banner.webp") no-repeat;
  color:#fff;
  position: relative;
  background-size: contain;
  margin-top:40px;
}
.cast-me-banner a .me_name{
  font-size:14px;
  font-weight: 600;
  position: absolute;
  left:135px;
  top:12px;
}
.cast-me-banner a .me_more{
  font-size:24px;
  font-weight: 600;
  left:135px;
  top:30px;
  position: absolute;
}





/****** gravure *******/
body.page-node-type-gravure .container.w900.maincontent{
  background:#000;
  
}




.gravure-bn .view-content{
  display: flex;
  gap:20px;
  flex-direction: column;
  
}
.gravure-bn .view-content a{
  display: block;
  max-width: 100%;
  width:100%;
  overflow: hidden;
}
.gravure-bn .view-content a img{
  width:100%;
  height:auto;
  object-fit: contain;
}
.content-list  .view-content{
  max-width:100%;
  margin-left: auto;
  margin-right: auto;
}

.content-list  .view-content .node--type-gravure.node--view-mode-teaser{
  position: relative;
}
.content-list  .view-content .node--type-gravure.node--view-mode-teaser .field--name-field-gravure-prefectures{
  position: absolute;
  background:rgb(255,255,255,0.6);
  border-radius:25px;
  height:22px;
  line-height: 22px;
  font-size:10px;
  padding:0px 10px;
  bottom:10px;
  right:10px;
}
/****** gravure 詳細 *******/
.gravure-detail.node--type-gravure{
  max-width:672px;
  margin-left: auto;
  margin-right: auto;
}
.gravure-title{
  font-size:20px;
  font-weight: 600;
  margin-top:20px;
  color:#fff;
  margin-bottom:10px;
}
.gravure-shopname a .field--name-field-gravure-shop-name{
  font-size:12px;
  color:#fff;
}
.gravure-url{
  display: flex;
  gap:20px;
  justify-content: left;
  margin-top:50px;
}
.gravure-url a.me_link{
  line-height: 40px;
}
.gravure-url .btn.btn-primary{
  margin-top:0px;
}
  .page-node-type-gravure .col.layout-content{
    padding:0px;
  }

  .gravure-info{
    padding-left:15px;
    padding-right:15px;
  }
  .view .field--type-image.field--name-field-gravure-banner a img{
    height:auto;
  }
  .gravure-bn .view-content{
    flex-direction: column;
  }
  

/***** MOMENT *****/
.content-list.moment-list .view-content{
  display: flex;
  gap:20px;
  flex-wrap: wrap;
}
.content-list.moment-list .view-content .views-row{
  width: calc( 50% - 10px );
}
.field--name-field-moment-code{
  position: relative;
  clear: both;
  overflow: hidden;
}
iframe.instagram-media{
  width:100%;
  box-sizing: border-box;
}
.field--name-field-moment-movie video{
  width:100% !important;
  height: auto !important;
  border-radius: 10px;
}
.moment-video{ position:relative; }

.moment-video video{
  width:100%;
  height:auto;
  display:block;
  pointer-events:none; /* 重要：動画自体をタップしても反応させない */
  border-radius: 10px;
}

.moment-play{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(0,0,0,.15);
  border:0;
  cursor:pointer;
}

.moment-play__icon{
  width:64px;
  height:64px;
  border-radius:999px;
  background:rgba(0,0,0,.55);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:26px;
}
.moment-video video{
  width:100%;
  height:auto;
  object-fit: cover;
}
.page-node-type-prefecturestop .slick--view--front-shop-gravure .slide__content .slide__media{
  display: none;
}
.node--type-prefecturestopfirstview img,
.field--name-field-pkcast-image img{
  width:100%;
  height: auto;
  object-fit: cover;
}
.node--type-prefecturestopfirstview .field--name-field-pfirstview-desc{
  padding: 5px 15px;
}
.pickupcast-detail-image {
  position: relative;
}
.pickupcast-detail-image .pickupcast-name{
  position: absolute;
  right:15px;
  bottom:15px;
}
.pickupcast-detail .field_pkcast_text{
  padding-left:15px;
  padding-right:15px;
  padding-top:20px;
  padding-bottom:40px;
  font-size:16px;
  line-height: 150%;
}

.path-short .views-row .moment-item{
  margin-bottom:10px;
}
.path-short .views-row .moment-title{
  margin-bottom:10px;
  font-size:10px;
  font-weight: 700;
}
.path-short .views-row .moment-list-shopname{
  margin-bottom:10px;
  font-size:14px;
  font-weight: 700;
}


/***** 都道府県別お知らせ******/






.content-list.area-news .node--type-area-news.teaser {
  background:#E6E6E6;
  border-radius:5px;
  padding:10px;
  box-shadow: rgba(14, 63, 126, 0.04) 0px 0px 0px 1px, rgba(42, 51, 69, 0.04) 0px 1px 1px -0.5px, rgba(42, 51, 70, 0.04) 0px 3px 3px -1.5px, rgba(42, 51, 70, 0.04) 0px 6px 6px -3px, rgba(14, 63, 126, 0.04) 0px 12px 12px -6px, rgba(14, 63, 126, 0.04) 0px 24px 24px -12px;
  margin-bottom:10px;
 
}
.content-list.area-news .node--type-area-news.teaser .areanews-detail-item{
  display: flex;
  flex-wrap: wrap;
  gap:10px;
}
.content-list.area-news .node--type-area-news.teaser .areanews-detail-image{
  order:1;
  width: calc( 30% - 10px );
}
.content-list.area-news .node--type-area-news.teaser .areanews-tag-date{
  display: flex;
  width:100%;
}
.content-list.area-news .node--type-area-news.teaser .areanews-tag-date{
  order:0;
  align-items: center;
  justify-content: space-between;
}
.content-list.area-news .node--type-area-news.teaser .areanews-tag-date .areanews-date {
  color:#88C7CC;
}
.field--name-field-arenews-tag {
  display: flex;
  gap:15px;
}
.field--name-field-arenews-tag .field__item{
  border-bottom:3px solid #88C7CC;
}
.field--name-field-arenews-tag .field__item:before{
  content:"#";
  display: inline-block;
  font-size:16px;
}
.content-list.area-news .node--type-area-news.teaser .areanews-info{
  order:2;
  width:70%;
}
.content-list.area-news.first-big .views-row:nth-child(1) .node--type-area-news.teaser .areanews-detail-item{
  display: block;
}
.content-list.area-news.first-big .views-row:nth-child(1) .node--type-area-news.teaser .areanews-detail-item .areanews-detail-image,
.content-list.area-news.first-big .views-row:nth-child(1) .node--type-area-news.teaser .areanews-detail-item .areanews-info{
  width:100%;
}
.content-list.area-news.first-big .views-row:nth-child(1) .node--type-area-news.teaser .areanews-detail-item .areanews-info{
  margin-top:10px;
  margin-bottom:5px;
}
.content-list.area-news.first-big .views-row:nth-child(1) .node--type-area-news.teaser .areanews-detail-item .areanews-info .areanews-title{
  font-size:16px;
}








.content-list.area-news .field--name-field-arenews-thumbnail img{
  border-radius: 5px;
  margin-bottom:10px;
  width:100%;
  height:auto;
  object-fit: cover;
}
.content-list.area-news .node--type-area-news.teaser .areanews-title {
  font-size:14px;
  color:#333333;
  font-weight: 600;
}
.views-field.views-field-field-gravure-banner img{
  width:100%;
  height: auto;
  object-fit: cover;
}
.about-nights-gen{
  max-width:950px;
  margin-left:auto;
  margin-right:auto;
}
.node--type-event .field--name-field-event-image img{
  width:100%;
  height: auto;
  object-fit: cover;
}
/***** ランキング *****/

.block-views-blockshop-list-block-1  .slick-list { overflow: visible; }


/*** グラビア のスライド ***/
.node.gravure-detail.node--type-gravure {
  background:#000;
}
/* メイン画像スライダーだけ対象にする */
body.page-node-type-gravure .slick__slider[id^="slick-"]:not([id$="-nav"]) {
  background: #000;
}

/* メイン表示エリアの高さ */
body.page-node-type-gravure .slick__slider[id^="slick-"]:not([id$="-nav"]) .slick-list,
body.page-node-type-gravure .slick__slider[id^="slick-"]:not([id$="-nav"]) .slick-track,
body.page-node-type-gravure .slick__slider[id^="slick-"]:not([id$="-nav"]) .slick__slide,
body.page-node-type-gravure .slick__slider[id^="slick-"]:not([id$="-nav"]) .slide__content,
body.page-node-type-gravure .slick__slider[id^="slick-"]:not([id$="-nav"]) .media {
  height: calc(100dvh - 67px - 58px);
  background:#000;
}

/* 画像を上下左右中央に配置 */
body.page-node-type-gravure .slick__slider[id^="slick-"]:not([id$="-nav"]) .slide__content,
body.page-node-type-gravure .slick__slider[id^="slick-"]:not([id$="-nav"]) .media {
  display: flex;
  align-items: center;
  justify-content: center;
  background:#000;
  width:100%;
}

/* 縦画像も横画像も枠内に収める */
body.page-node-type-gravure .slick__slider[id^="slick-"]:not([id$="-nav"]) img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center center;
  background:#000;
}



/*** cast のスライド ***/


/* メイン表示エリアの高さ */
body.page-node-type-cast .slick__slider[id^="slick-"]:not([id$="-nav"]) .slick-list,
body.page-node-type-cast .slick__slider[id^="slick-"]:not([id$="-nav"]) .slick-track,
body.page-node-type-cast .slick__slider[id^="slick-"]:not([id$="-nav"]) .slick__slide,
body.page-node-type-cast .slick__slider[id^="slick-"]:not([id$="-nav"]) .slide__content,
body.page-node-type-cast .slick__slider[id^="slick-"]:not([id$="-nav"]) .media {
  /*height: calc(100dvh - 67px - 210px);*/
  height: calc(100svh - 67px - 210px);
}

/* 画像を上下左右中央に配置 */
body.page-node-type-cast .slick__slider[id^="slick-"]:not([id$="-nav"]) .slide__content,
body.page-node-type-cast .slick__slider[id^="slick-"]:not([id$="-nav"]) .media {
  display: flex;
  align-items: center;
  justify-content: center;
  width:100%;
}

/* 縦画像も横画像も枠内に収める */
body.page-node-type-cast .slick__slider[id^="slick-"]:not([id$="-nav"]) img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  /*object-fit: cover;*/
  object-fit: contain;
  object-position: center center;
}
.cast-detail-label{
  color:#fff;
  background:#88c7cc;
  line-height: 55px;
  height:55px;
  font-size:32px;
  font-weight: 700;
  padding-left:15px;
  padding-right:15px;
  margin-top:10px;
  margin-bottom:10px;
  margin-left:-15px;
  margin-right:-15px;
}

/* ピックアップキャスト スライダーボタン**/
.pickupcast-detail-item .slick .slick__arrow .slick-arrow{
    width:45px;
    height:45px;
    pointer-events: auto;
    z-index: 10;
}

/*キャスト一覧*/
.view-shop-detail-girllist-list .view-content {
    display: flex;
    flex-wrap: wrap;
    padding:10px 0;
}
.view-shop-detail-girllist-list .view-content .girllist-item {
    padding-right: calc(var(--bs-gutter-x) * .5);
    padding-left: calc(var(--bs-gutter-x) * .5);
}
