/* 画面幅が768px以上のPC向け */
.sp {
display: none!important;
}.pc {
display: block!important;
}

/* 画面幅が768px以下のSP向け */
@media screen and (max-width: 768px) {
.pc {
display: none!important;
}.sp {
display: block!important;
}
}
html{
    scroll-padding-top: 7vw;
   /* font-family: 'Yantramanav'; */
           font-family: ui-monospace!important;

}

img{
width:100%
}

html {
scroll-behavior: smooth;
}

section {
scroll-margin-top: 5vw;
}

#header {
position: sticky;
top: 0;
z-index: 10;
display: grid!important;
grid-template-columns: 2fr 5.8fr;
width: 100%;
background: #fff;
box-shadow: 0px 0px 15px -5px #777777;
align-items: center;
}#header logo {
margin: 0.3vw 1vw;
}
#header logo img {
width: 10vw;
}
#header nav ul {
display: grid;
grid-template-columns: 1.4fr 1fr 1fr 1fr 1fr;
gap: 0;
color: #152D6D;
font-size: 1.6vw;
font-weight: bold;
text-align: center;
}#header nav ul li {
padding: 1.2vw 0;
cursor: pointer;
}#header nav ol li{
padding: 0;
}
div#enter_area sub {
    font-size: 1vw;
}
/* ハンバーガー */
div#search_result_contents {
display: grid;
grid-template-columns: 0.8fr 3.3fr;
}
div#search_result_contents div#search_contents {
    background: #ccc;
    height: 87.7vh;
    overflow-y: scroll;
    position: sticky;
    top: 5vw;
}
div#search_result_contents div#search_contents.open{
display:block
}
div#search_result_contents div#search_area .search_card {
background: #bfbfbf;
margin: 1vw;
color: #575555;
border-radius: 10px;
padding: 1vw 1.5vw;
line-height: 1.6;
font-size: 1.2vw;
font-weight: 400;
}div#categories {
background: #e9e9e9;
padding: 1vw;
font-size: 1vw;
text-align: center;
margin:0 auto;
margin-bottom: 1vw;
width: 73vw;
}#search_sort_area ul {
display: flex;
gap: 0.8vw;
margin: 0 auto 1.3vw;
justify-content: center;
}#search_sort_area ul li {
background: #ccc;
text-align: center;
font-size: 1vw;
width: 18vw;
font-size: 1vw;
padding: 1vw 0;
border-radius: 5px;
letter-spacing: 1px;
display: flex;
align-items: center;
justify-content: center;color:#8c8c8c
}#search_sort_area ul li.sort_select {
background: #FD629C;
color: #fff;
}
#seach_cnt_btn button {
text-align: center;
}section#newface {
background: #fff;
}footer .link_logo img {
width: 100%;
}div#search_result_contents div#search_area p {
font-size: 1.1vw;
margin-bottom: 1vw;
border-bottom: .5px solid #575555;
padding-bottom: 1vw;    font-weight: 500;
}div#search_result_contents div#search_area ul li label {
display: flex;
font-size: 1.1vw;
align-items: center;
}div#search_result_contents div#search_area ul li input {
font-size: 0.9vw;
width: 1vw;
margin-right: 0.5vw;
}img.lazy {
opacity: 0;
transition: opacity 0.3s;
}
img.lazy[src] {
opacity: 1;
}
.pagination {
margin: 1vw 0;
}.pagination nav ul {
display: flex;
justify-content: center;
}
.search_card.heavy label input {
margin-right: 0.8vw;
}.search_card.heavy label {
display: flex
;
}#page_gravure .gravure_grid {
width: auto;
margin: 0 2vw;
}.cast_list h2 {
text-align: center;
color: #43A9FE;
font-size: 1.6vw;
margin-bottom: 1vw;
font-weight: 400;
}

div#enter_area sub a {
text-decoration: underline;
color: red;
}
section#mv-slider {
margin-bottom: 2.4vw;
}
section#machihime,
section#newface {
background: #FFEBF0;
}
section.contents h2 {
text-align: center;
color: #031568;
font-weight: bold;
font-size: 2vw;
padding: 0 0px 2.9vw;
}
section.contents h2 img {
width: auto;
margin-right: 0.2vw;
height: 2vw;
}
section.contents h2 sub {
display: block;
color: #FFAED7;
margin-top: 1vw;
font-size: 1.2vw;
font-weight: bold;
}.cast_list {
width: 100%;
margin: 0 auto;
padding: 0 3.6vw 2.4vw 3.6vw;
background: none;
box-shadow: none;
border-radius: 0;
}.cast_list ul {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1vw;
text-align: left;

}.cast_list ul li p.entering_day {
position: absolute;
bottom: 0.7vw;
background: #FD629C;
left: 0;
color: #fff;
font-size: 1.3vw;
padding: 0.3vw 1.1vw 0.4vw 0.8vw;
border-radius: 0 30px 30px 0;
text-align: center;
box-shadow: 0px 0px 15px -5px #777777;
font-weight: bold;
}
.cast_list ul li {
box-shadow: 0px 0px 15px -5px #777777;
text-align: left;
background: #fff;
padding: 1.4vw 1vw;
position: relative;
}.cast_list ul li .cast_grid {
display: grid;
grid-template-columns: 3fr 3.1fr;
gap: 1vw;    
text-align: left;
}.cast_list dl.schedule {
display: grid;
grid-template-columns: 1fr 1.5fr;
align-items: center;
/* font-size: 1.2vw; */
text-align: center;
}.cast_list dl.schedule dt {
background: #FD629C;
color: #fff;
padding: 0.4vw 0;
font-size: 1.2vw;
}.cast_list dl.schedule dd {
color: #FD629C;
background: #ECECEC;
font-size: 1.2vw;
padding: 0.4vw;
}.cast_list ul li .pr {
color: #FD629C;
background: none;
font-size: 1.2vw;
padding: 0.4vw 0 0.3vw;
font-weight: bold;
letter-spacing: 1px;
width: 17vw;
}
.cast_list ul li .pr span {
display: inline-block;
max-width:  100%;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}.cast_list ul li .cast_grid .left p.entering_day {
position: absolute;
top: 0;
}
.cast_list ul li .comment_shop {
font-size: 0.9vw;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 5;
overflow: hidden;
margin-bottom: 1.2vw;
line-height: 1.5;
width: 17vw;
height: 6.7vw;
}
.cast_list ul li .comment_shop *{
color: #000!important;
}

.cast_list ul li .name {
margin: 0.4vw 0 0.5vw;
font-size: 1.5vw;
font-weight: bold;
color: #041867;
}.cast_list ul li .size {
margin: 0 0 0.6vw;
font-size: 1.2vw;
color: #041867;
letter-spacing: 0.1px;
}
.cast_list ul li .labels {
display: flex;
gap: 0.4vw;
padding: 0.5vw 0;
border-top: 1px solid #041867;
border-bottom: 1px solid #041867;
}

.cast_list ul li .labels span.label.diary.on {
background: #FFA32C;
}

.more_read_btn {
text-align: center;
box-shadow: 0px 0px 15px -5px #777777;
border-radius: 30px;
width: 29vw;
margin: 3.1vw auto 0;
font-size: 1.3vw;
padding: 1vw 0;
border: 1px solid #000;
color: #041770;
font-weight: bold;
background: #FFF;letter-spacing: 1px;
}section.contents {
padding: 2.6vw 0;
}
section#honshi_ranking {
background: #F2EBB4;
}
section#kuchikomi_ranking {
background: #ECECEC;
}
.rank_list ul {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1.5vw;
}
.rank_list ul li.ranking-card {
background: #fff;
border: none;
box-shadow: 0px 0px 15px -5px #777777;
padding: 1.3vw 0.9vw;
}
.rank_list ul li.ranking-card .card-inner {
display: grid;
grid-template-columns: 1fr 1fr;
text-align: center;
gap: 1vw;
align-items: stretch;
}
.rank_list ul li.ranking-card.shop .card-inner{
grid-template-columns: 1.2fr 1fr;
}
.rank_list ul li.ranking-card .card-inner .info .rank {
width: 10.7vw;
margin: 0 auto;
margin-bottom: 1.2vw;
aspect-ratio: 107 / 91;
background: url(../img/rank_frame_0.png);
position: relative;
background-size: cover !important;
}
.rank_list ul li.ranking-card .card-inner .info .rank.rank-1 {
background: url(../img/rank_frame_1.png);
}
.rank_list ul li.ranking-card .card-inner .info .rank.rank-2 {
background: url(../img/rank_frame_2.png);
}
.rank_list ul li.ranking-card .card-inner .info .rank.rank-3 {
background: url(../img/rank_frame_3.png);
}

.rank_list ul li.ranking-card .card-inner .info .rank p {
text-align: center;
width: 99%;
position: absolute;
left: 0;
right: 0;
bottom: 8%;
margin: auto;
color: #a2044f;
font-family: "Yantramanav", sans-serif;
font-size: 5.1vw;
font-weight: 600;
letter-spacing: -0.2vw;
}
.rank_list ul li.ranking-card .card-inner .info .rank.rank-1 p {
color: #d9b03e;
}
.rank_list ul li.ranking-card .card-inner .info .rank.rank-2 p {
color: #a6a6a6;
}
.rank_list ul li.ranking-card .card-inner .info .rank.rank-3 p {
color: #d3802e;
}
.rank_list ul li.ranking-card .card-inner .info h3.name {
font-weight: bold;
color: #FD629C;
font-size: 1.8vw;
margin-bottom: 0.4vw;
}
.rank_list ul li.ranking-card.shop .card-inner .info h3.name {
font-size: 1.1vw;
height: 2.2vw;
display: grid;
justify-content: center;
align-items: center;
}
.rank_list ul li.ranking-card .card-inner .info p.kuchikomi_count {
background: #ECECEC;
font-size: 1.1vw;
padding: 0.3vw 0;
margin-bottom: 0.5vw;
}.rank_list ul li.ranking-card .card-inner .info p.kuchikomi_count span {
color: #FE629D;
}
.rank_list ul li.ranking-card .card-inner .info .sizes {
color: #051868;
font-size: 1vw;
margin-bottom: 0.5vw;
}.rank_list ul li.ranking-card .card-inner .info .labels {
border-top: 1px solid #051868;
border-bottom: 1px solid #051868;
width: 12vw;
margin: 0 auto;
display: flex;
gap: 0.5vw;
padding: 0.4vw 0;
justify-content: center;
margin-bottom: 0.6vw;
}.cast_list ul li .labels span.label{
display: block;
background: #808080;
text-align: center;
color: #fff;
padding: 0.25vw 0.7vw;
border-radius: 13px;
font-size: 0.9vw;
}
.rank_list ul li .labels span.label{
display: block;
background: #808080;
text-align: center;
color: #fff;
padding: 0.25vw 0.7vw;
border-radius: 13px;
font-size: 0.9vw;
}

.cast_list ul li .labels span.label.diary_on,
.rank_list ul li .labels span.label.diary_on{
background: #FFA32C;
}

.cast_list ul li .labels span.label.new_on,
.rank_list ul li .labels span.label.new_on{
background: #59C609;
}
.cast_list ul li .labels span.label.movie_on,
.rank_list ul li .labels span.label.movie_on{
background: #0C96C5;
}
.cast_list ul li .labels span.label.isMikeiken_on,
.rank_list ul li .labels span.label.isMikeiken_on{
background: #FD629C;
}

.cast_list ul li .shop_name {
color: #041867;
font-weight: 500;
font-size: 1.1vw;
margin: 0.2vw 0;
}
.rank_list ul li.ranking-card .card-inner .shop_name {
color: #152D6D;
font-size: 1vw;
font-weight: 600;
border-top: 1px solid #152D6D;
border-bottom: 1px solid #152D6D;
padding: 0.2vw 0;
}

.rank_list ul li.ranking-card .schedule {
display: grid;
grid-template-columns: 1fr 1.7fr;
align-items: center;
margin-top: 0.6vw;
}.rank_list ul li.ranking-card .schedule span.status.today {
background: #FE629D;
color: #fff;
font-size: 1vw;
padding: 0.3vw 0;
}.rank_list ul li.ranking-card .schedule span.status.today.off {
    grid-column: 1 / -1;
    background: #2978d4;
}

.rank_list ul li.ranking-card .schedule span.time {
background: #ECECEC;
color: #FE629D;
font-size: 1vw;
padding: 0.3vw 0;
}
section#group_info {
margin: 0 auto;
background: #FFEBF0;
}

section#group_info h3 {
background: #FF9CDC;
font-size: 1.8vw;
padding: 1vw 1vw;
color: #fff;
font-weight: bold;
margin-bottom: 2vw;
}div#page_kuchikomi_ranking .kuchikomi_banner_area {
width: 61.6vw;
margin: 0 auto 1.5vw;
}div#page_kuchikomi_ranking section#kuchikomi_ranking {
background: none;
}
section#group_info #event ul{
display: grid; grid-template-columns: repeat(3, 1fr); gap: 1vw;
}
section#group_info #gravure,
section#group_info #event,
section#group_info #kuchikomi_blog,
section#group_info #twitter,
section#group_info #news_staff_blog{
width: 65vw;
margin: 0 auto 3.5vw;
}

.rank_list ul li.ranking-card .link_rank_btn {
border: 1px solid #FD629C;
color: #FD629C;
font-size: 1.2vw;
padding: 0.5vw 0;
font-weight: 600;
margin: 0.8vw 0 0;
}
div#enter_area {
text-align: center;
margin-bottom: 1.8vw;
margin-top: -8vw;
z-index: 10;
position: sticky;
}
div#enter_area button {
display: block;
width: 29.1vw;
background: #CD2E71;
color: #fff;
margin: 1.2vw auto 0.9vw;
padding: 1vw;
font-size: 2.5vw;
font-weight: 500;
box-shadow: 0px 0px 15px -5px #777777;
}
#kuchikomi_blog ul li .kuchikomi-card {
display: grid;    
grid-template-columns: 14vw 1fr;
gap: 1vw;
align-items: normal;
background: #fff;
box-shadow: 0 0.3vw 0.8vw rgba(0, 0, 0, 0.1);
overflow: hidden;
padding: 1vw;
}


#kuchikomi_blog ul {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1vw;
}

#kuchikomi_blog ul li .kuchikomi-card img {
width: 100%;
height: auto;
object-fit: contain;
}


#kuchikomi_blog ul li .kuchikomi-card .date {
font-size: 1.3vw;
color: #0070c0;
border-bottom: 0.2vw dotted #0070c0;
display: inline-block;
margin-bottom: 0.3vw;
font-weight: bold;
width: 100%;
padding-bottom: 0.5vw;
}

#kuchikomi_blog ul li .kuchikomi-card .title {
font-size: 1.1vw;
font-weight: bold;
margin-bottom: 1.2vw;
color: #333;
line-height: 1.5;
}
#kuchikomi_blog ul li .kuchikomi-card .evaluation {
color: #1a4fa3;
font-size: 1.1vw;
font-weight: bold;
margin-bottom: 1vw;
}
#kuchikomi_blog ul li .kuchikomi-card .shop {
display: inline-block;
background: #1a4fa3;
color: #fff;
font-size: 1vw;
padding: 0.3vw 1vw;
border-radius: 4px;
}#kuchikomi_blog ul li .kuchikomi-card .name {
font-size: 1.6vw;
margin-bottom: 0.4vw;
color: #1a4fa3;
font-weight: bold;
}

section#group_info #news h3,
section#group_info #staff_blog h3{
margin-bottom: 0
}

section#group_info #news_staff_blog #news ul {
background: #fff;
padding: 1.7vw 0.9vw 1.7vw 4.7vw;
height: 21vw;
overflow-y: scroll;
}

section#group_info #news_staff_blog #news ul li {
margin-bottom: 1.6vw;
}

section#group_info #news_staff_blog #news ul li:first-of-type{
position: relative;
}

section#group_info #news_staff_blog #news ul li:first-of-type:before {
content: '';
position: absolute;
left: -4vw;
top: 1.6vw;
transform: translateY(-50%);
width: 3.6vw;
height: 4vw;
background-repeat: no-repeat;
background-size: contain;
}

section#group_info #news_staff_blog #news ul li .news-#header {
color: #A2A2A2;
font-size: 1vw;
margin-bottom: 0.1vw;
}

section#group_info #news_staff_blog #news ul li .news-title {
font-size: 1.2vw;
font-weight: bold;
line-height: 1.3;
}

section#group_info #news_staff_blog #news ul li .news-title a {
text-decoration: underline;
color: red;
}

section#group_info #news_staff_blog {
display: grid;
grid-template-columns: 2fr 1.02fr;
gap: 3vw;
}

section#category_search ul {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1vw;
text-align: center;
width: 27vw;
margin: 0 auto;
}section#category_search ul li {
background: #ccc;
}section#category_search ul li img {
width: 1vw;
}section#category_search ul li.search_map {
background: #82B9FC;
border-bottom: 5px solid #508FDE;
border-top: 4px solid #C0DBFD;
}
section#category_search ul li.search_category {
background: #8DD661;
border-bottom: 5px solid #438E24;
border-top: 4px solid #C8EAAD;

}section#category_search ul {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1vw;
text-align: center;
width: 68vw;
margin: 0px auto 1vw;
margin-top: 0.6vw;
}
section#category_search ul li {
background: #ccc;
font-size: 3vw;
font-weight: bold;
padding: 4.1vw 0;
border-radius: 30px;
color: #fff;
}
section#category_search ul li.search_map {
background: #82B9FC;
border-bottom: 5px solid #508FDE;
border-top: 4px solid #C0DBFD;
}

section#category_search ul li img {
width: 2vw;
}
section#mv-slider .splide__pagination {
bottom: -1.5vw;
}
section#mv-slider .splide__pagination__page.is-active{
background:#7a7a7a
}
section#group_info #twitter {
background: #ccc;
padding: 1vw;
}

section#group_info #twitter .twitter_area_content_box {
text-align: center;
background: #fff;
padding: 1vw;
border-radius: 13px;
}
section#group_info #twitter .twitter_area_content_image img {
height: 8vw;
width: auto;
margin-bottom: 0.8vw;
}

/* event */
section#event ul {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 0.6vw;
margin: 0 6vw;
}

/* ranking */
section#honshi_ranking .rank_list,
section#kuchikomi_ranking .rank_list{
margin: 0px 8.7vw;
}

div#page_kuchikomi_ranking .rank_list,
div#page_honshi_ranking .rank_list{
width: auto;
margin: 0 auto;
margin: 0px 8.7vw;
}

#page_concept_search section#concept_search #concept_search_area {
width: 70vw;
margin: 0 auto;
box-shadow: 0px 0px 15px -5px #777777;
padding: 3vw 4vw;
}

div#page_kuchikomi_ranking .rank_list ul,
div#page_honshi_ranking .rank_list ul{
grid-template-columns: repeat(2, 1fr);
}
.shop_ranking .shop_list {
margin: 2vw auto 0.6vw;
position: relative;
width: 25vw;
}.shop_ranking .shop_list select {
background: #2978D4;
color: #fff;
padding: 0.8vw 0;
font-size: 1.4vw;
border-radius: 30px;
font-weight: bold;
margin-bottom: 1vw;
cursor: pointer;
width: 25vw;
box-shadow: 0px 0px 15px -5px #777777;
/* border-radius: 10px; */
}

.shop_ranking .shop_list::after {
content: '▼';
position: absolute;
right: 1.6vw;
top: 0.8vw;
color: #fff;
font-size: 1.4vw;
}
.shop_ranking .shop_list select option {
margin-bottom: 1vw;
background: #fff;
color: #838383;
}
#page_concept_search section#concept_search #concept_search_area {
width: 70vw;
margin: 0 auto;
box-shadow: 0px 0px 15px -5px #777777;
padding: 2.8vw 4vw;
}

#page_concept_search section#concept_search #concept_search_area h3 {
color: #152D6D;
font-weight: bold;
font-size: 1.6vw;
letter-spacing: 4px;
padding-bottom: 1.4vw;
margin-bottom: 0.6vw;
border-bottom: 1px solid #152D6D;
}

#page_concept_search section#concept_search #concept_search_area ul {
display: grid;
/* grid-template-columns: repeat(2, 1fr); */
gap: 0 0.6vw;
margin-bottom: 3vw;
}
section#shop_detail {
color: #152D6D;
padding: 2vw 3vw;
background: #FFF;
border: 3px solid #FE629D;
/* margin-top: -0.7vw; */
}
#page_concept_search section#concept_search #concept_search_area ul li {
background: #ccc;
color: #fff;
padding: 1vw;
font-size: 1.8vw;
box-shadow: 0px 0px 15px -5px #777777;
font-size: 1.6vw;
font-weight: 500;
cursor: pointer;    margin-top: 1vw;
}

#page_concept_search section#concept_search #concept_search_area ul li.genle_bg_1 {
background: #FE629D;
}

#page_concept_search section#concept_search #concept_search_area ul li.genle_bg_2 {
background: #B91BC7;
}

#page_concept_search section#concept_search #concept_search_area ul li.genle_bg_3 {
background: #62C5FE;
}

#page_concept_search section#concept_search #concept_search_area ul li.genle_bg_4 {
background: #75DD17;
}

#page_concept_search section#concept_search #concept_search_area ul li.genle_bg_5 {
background: #FFAF32;
}section#shop_detail article.info dl {
margin-bottom: 1.5vw;
font-size: 1.6vw;
letter-spacing: 1px;
border-bottom: 1px solid #152D6D;
padding-bottom: 0.7vw;
display: grid
;
grid-template-columns: 1fr 3.6fr;
}section#shop_detail .cast_list {
width: auto;
box-shadow: none;
padding: 0;
}#page_concept_search section#concept_search #concept_search_area ul section#shop_detail .cast_list ul#concept_target {
grid-template-columns: repeat(4, 1fr);
margin-bottom: 0;
}#page_concept_search section#concept_search #concept_search_area ul section#shop_detail .cast_list ul#concept_target li {
padding: 0;
background: none;
}section#recruit article {
width: 78.5vw;
margin: 0 auto;
}section#recruit article ul {
display: grid;
grid-template-columns: repeat(2, 1fr);
}section#recruit article ul li h3 {
background: #CD2E71;
text-align: center;
color: #fff;
font-size: 2.1vw;
padding: 0.7vw 0;
}section#recruit article ul li em {
display: block;
background: #FFD8F3;
padding: 2vw 3.3vw;
font-style: normal;
}section#recruit article ul li em p {
border: 3px solid #7B3B5A;
text-align: center;
margin: 1.5vw 0 0;
width: 100%;
border-radius: 40px;
font-size: 1.6vw;
color: #7B3B5A;
padding: 0.5vw 0;
box-shadow: 0px 0px 15px -5px #777777;
}section#recruit article ul li.mens_recruit_banner h3{
background:#113EBD;
}section#recruit article ul li.mens_recruit_banner em{
background:#D8F2FF;
}section#recruit article ul li em p {
border: 3px solid #0E2351;
color: #0E2351;
}section#kuchikomi_post div {
width: 60vw;
margin: 0 auto;
box-shadow: 0px 0px 15px -5px #777777;
}
.genre_bg_1 #shop_detail{
border: 3px solid #FE629D;
}

.genre_bg_2 #shop_detail{
border: 3px solid #B91BC7;
}

.genre_bg_3 #shop_detail{
border: 3px solid #62C5FE;

}

.genre_bg_4 #shop_detail{
border: 3px solid #75DD17;
}

.genre_bg_5 #shop_detail{
border: 3px solid #FFAF32;
}


#page_concept_search section#concept_search #concept_search_area ul .cast_list ul {
margin-bottom: 0;
}#page_concept_search section#concept_search #concept_search_area ul section#shop_detail .cast_list li {
padding: 0;
background: #fff;
}


#page_gravure .gravure_grid {
width: 67.5vw;
margin: 0 auto;
}
#page_gravure .gravure_grid ul {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1vw;
}#page_gravure .gravure_grid ul li .main {
margin-bottom: 0.5vw;
}#page_gravure .gravure_grid ul li {
box-shadow: 0px 0px 15px -5px #777777;
border-radius: 10px;
padding: 1.4vw 1vw;
margin-bottom: 1vw;
}
#page_gravure .gravure_grid ul li .thumnails {
margin-bottom: 0.5vw;
}
#page_gravure .gravure_grid ul li .info {
padding: 0.9vw 0.6vw;
display: grid;
grid-template-columns: repeat(2, 1fr);
}
#page_gravure .gravure_grid ul li .info .cast_name {
font-size: 1.8vw;
font-weight: 500;
color: #FE629D;
margin-bottom: 0.4vw;
}
#page_gravure .gravure_grid ul li .info .shop_name {
font-size: 1.1vw;
font-weight: 600;
color: #152D6D;
margin-bottom: 0.6vw;
}
#page_gravure .gravure_grid ul li .info .three_size {
color: #152D6D;
font-size: 1.2vw;
letter-spacing: 2px;
font-weight: 400;
}
.link_area a:first-of-type {
margin-bottom: 0.5vw;
}.link_area a:last-of-type {
margin-top: 0.5vw;
}
.link_area a{
position:relative;
background: #152D6D;
width: 100%;
display: block;
color: #fff;
text-align: center;
font-size: 1.4vw;
padding: 0.5vw 0;
border-radius: 16px;
}
.link_area a:before {
content: '〉';
position: absolute;
left: 1.1vw;
top: 0.6vw;
font-size: 1.2vw;
font-weight: bold;
}
#page_gravure .gravure_grid ul li .thumnails dl {
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: 10px 5px;
}
div#gravure_detail_area {
box-shadow: 0px 0px 15px -5px #777777;
border-radius: 10px;
padding: 1.4vw 3vw;
margin: 0 2vw;
}div#gravure_detail_area ul {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 0.5vw;
margin-bottom: 22px;
}.link_area.grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 10px 5px;
width: 50vw;
margin: 0 auto;
}

/* result */

#loading {
display: flex;
justify-content: center;
align-items: center;
gap: 6px;
height: 60px;
}

#loading span {
width: 10px;
height: 10px;
background: #333;
border-radius: 50%;
animation: bounce 0.6s infinite alternate;
}

#loading span:nth-child(2) {
animation-delay: 0.2s;
}

#loading span:nth-child(3) {
animation-delay: 0.4s;
}

@keyframes bounce {
from {
opacity: 0.4;
transform: translateY(0);
}
to {
opacity: 1;
transform: translateY(-8px);
}
}


/* profike */
#page_profole section#pro_wrapp {
background: #FFEBF0;
}
#page_profole section#pro_img {
margin-bottom: 2.2vw;
}
#page_profole section#pro_wrapp section#pro_info article iframe {
/* width: 100%; */
}
#page_profole section#pro_wrapp section#pro_info article#infomation {
text-align: center;
}#page_profole section#pro_wrapp section#pro_info article#infomation pr {
display: block;
color: #FD629C;
font-weight: bold;
font-size: 1.3vw;
letter-spacing: 1px;
margin-bottom: 1.2vw;
}#page_profole section#pro_wrapp section#pro_info article#infomation name {
display: block;
color: #FD629C;
font-weight: bold;
font-size: 2.6vw;
letter-spacing: 1px;
margin-bottom: 1.2vw;
}#page_profole section#pro_wrapp section#pro_info article#infomation three_size {
display: block;
color: #2C4295;
font-size: 1.9vw;
letter-spacing: 1px;
margin-bottom: 1.2vw;
}#page_profole section#pro_wrapp section#pro_info article#syame iframe {
width: 100%;
height: 40.8vw;
padding: 1.2vw 1.2vw 0;
}#page_profole section#pro_wrapp section#pro_info article div#video_src {
    background: #000;
    text-align: center;
    margin: 0 2.1vw;
}#page_profole section#pro_wrapp section#pro_info article#infomation dl {
display: grid;
grid-template-columns: 1fr 2fr;
font-size: 1.3vw;
align-items: center;
margin: 0 2vw 1vw;
}#page_profole section#pro_wrapp section#pro_info article#infomation dl dt {
background: #FD629C;
color: #fff;
padding: 0.5vw 0;
}#page_profole section#pro_wrapp section#pro_info article#infomation dl dd {
background: #E8E8E8;
color: #FD629C;
padding: 0.5vw 0;
}#page_profole section#pro_wrapp section#pro_info article#qa div {
    padding: 3vw 4vw 0;
}#page_profole section#pro_wrapp section#pro_info article#kuchikomi div {
    margin: 2vw 1vw;
}#page_profole section#pro_wrapp section#pro_info article#kuchikomi div iframe {
    width: 100%;
    height: 36.5vw;
}
#page_profole section#pro_wrapp section#pro_info {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1.5vw;
width: 78.5vw;
margin: 0vw auto;
padding: 2vw 0;
}
#page_profole section#pro_wrapp section#pro_info article {
background: #fff;
box-shadow: 0px 0px 15px -5px #777777;
border-radius: 20px;
padding: 2vw 0;
margin-bottom: 1.3vw;
}
#page_profole section#pro_wrapp section#pro_info article .comment {
display: block;
padding: 2.7vw 4vw;
font-size: 1.5vw;
color: #7D7D7D;
white-space: pre-line;
}#page_profole section#pro_wrapp section#pro_info article .comment * {
    font-size: 1.5vw !important;
}
#page_profole section#pro_wrapp section#pro_info article h3 {
background: #FD629C;
width: 96%;
text-align: center;
font-size: 2vw;
letter-spacing: 2px;
padding: 0.9vw 0;
font-weight: 500;
color: #fff;
border-radius: 0 50px 50px 0;
}
#page_profole section#pro_wrapp section#pro_info article#shop_comment h3{
background: #021766;
}
#page_profole section#pro_wrapp section#pro_info article .comment div {
padding: 0;
}

#page_profole section#pro_wrapp section#pro_info article div dl {
font-size: 1.5vw;
font-weight: 500;
margin-bottom: 1.8vw;
}#page_profole section#pro_wrapp section#pro_info article div dl dt {
margin-bottom: 0.9vw;
color: #FD629C;
}#page_profole section#pro_wrapp section#pro_info article div dl dd {
color: #7D7D7D;
}

#page_profole section#pro_wrapp section#pro_info article#schedule {
position: relative;
}
div#stickey_cv_btn {
position: sticky;
bottom: 0;
z-index: 111;
}div#stickey_cv_btn ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    text-align: center;
    width: 60vw;
    margin: 0 auto;
}    
div#stickey_cv_btn ul li {
    border-radius: 40px 40px 0 0;
    background: #ffffff;
    border-top: 2px solid #d2d2d2;
    font-size: 1.7vw;
}
div#stickey_cv_btn ul li span {
    border-radius: 50px;
    display: block;
    padding: 1vw 0;
    border: 8px solid #fff;
    color: #fff;
    font-weight: bolder;
}
div#stickey_cv_btn ul li.online_reserve{
    cursor: pointer;
}
div#stickey_cv_btn ul li.online_reserve span {
background: #021766;
}div#stickey_cv_btn ul li.tel_reserve span {
background: #FD629C;
}.date_area li {
font-size: 3vw;
padding: 1.2vw;
}div#stickey_cv_btn ul li span i {
margin-right: 1vw;
}
section#bottom_area {
background: #C3E5FF;
padding: 2vw;
}
section#bottom_area h4 {
text-align: center;
font-size: 2.3vw;
margin-bottom: 3.2vw;
font-weight: bolder;
color: #021766;
letter-spacing: 1px;
}section#bottom_area h4 sub {
display: block;
color: #FA7EC5;
font-size: 1.2vw;
margin-top: 0.9vw;
font-weight: 100;
}section#profole {
padding: 2.6vw 0 0;
}

/* common */


/* footer */
footer .footer_logo_area {
background: #c24474;
color: #fff;
padding: 2vw;
text-align: center;
}
footer .link_logo {
display: block;
width: 22vw;
margin: 0 auto;
}

footer .footer_logo_area .sub_title {
font-size: 18px;
margin: 1vw auto;
text-align: center;
}
footer .copyright_area {
font-size: 1vw;
text-align: center;
font-weight: 600;
margin: 1vw auto;
}

/* popup */
div#popup_search_area {
width: 40vw;
margin: 0 auto;
background: #fff;
box-shadow: 0px 0px 15px -5px #777777;
position: absolute;
top: 10.9vw;
right: 0;
left: 0;
margin: auto;
height: 41vw;
overflow-y: scroll;
z-index: 10;
}div#popup_search_area .group_caption {
color: #ff8aab;
padding: 0.4vw 0.7vw;
/* font-size: 1vw; */
}div#popup_search_area form#searchForm ul {
display: grid;
grid-template-columns: repeat(2, 1fr);
/* gap: 0.5vw; */
color: #fff;
background: #ffa9c1;
font-size: 1.2vw;
}div#popup_search_area form#searchForm ul li {
border: 1px solid #ff8aab;
/* background: #ffa9c1; */
padding: 0.6vw 0.7vw;
}div#popup_search_area form#searchForm label {
display: flex;
align-items: center;
}div#popup_search_area form#searchForm label div {
flex: 1;
text-align: left;
letter-spacing: 1px;
}div#popup_search_area #searchForm li.active {
background: #fc3a80;
color: #fff;
}div#popup_search_area #searchForm label input {
display: none;
}.search_count {
color: #636363;
font-size: 2.3vw;
text-align: right;
font-weight: 600;
}.search_count span#count,
.count {
color: #fc3a80;
font-size: 3.5vw;
letter-spacing: 1px;
}div#seach_cnt_btn.view {
padding: 1.6vw 23.1vw;
right: 0;
left: 0;
margin: auto;
box-shadow: 0px 0px 15px -5px #777777;
grid-template-columns: 1.7fr 1fr;
display: grid;
gap: 2vw;
text-align: center;    z-index: 10;    background: rgba(255, 255, 255, .8);
}

/* オーバーレイ背景 */
#overlay {
display: none;              /* 初期は非表示 */
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
background: rgba(0,0,0,0.6); /* 半透明の黒 */
z-index: 5;
}

/* モーダル本体 */
#search_modal {
display: none;              /* 初期は非表示 */
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 90%;
max-width: 600px;
background: #fff;
border-radius: 10px;
z-index: 1001;
padding: 20px;
overflow-y: auto;
max-height: 90vh;
z-index: 10;
}

/* 閉じるボタン */
.modal-close {
position: absolute;
top: 10px;
right: 15px;
font-size: 28px;
font-weight: bold;
color: #f00;
cursor: pointer;
z-index: 1002;
}
div#seach_cnt_btn {
position: sticky;
bottom: 0;
background: #fff;
width: auto;
display: grid;
grid-template-columns: 2.1fr 2fr;
gap: 0.3vw;
padding: 1vw;
align-items: end;
}
div#seach_cnt_btn .search_count {
font-size: 1.4vw;
text-align: center;
}div#seach_cnt_btn .search_count span#count,
.count {
font-size: 2.7vw;
}
div#seach_cnt_btn .search_count em {
display: block;
font-style: normal;
font-size: 1vw;
letter-spacing: 1px;
margin-bottom: 0vw;
color: #636363;
}div#seach_cnt_btn .search_count i {
display: block;
text-align: center;
font-size: 1.8vw;
font-style: normal;
line-height: 0.9;
}
.hover_view_area {
position: absolute;
top: 100%;
left: 0;
width: 40vw;
background-color:rgba(253,98,156,0.8);
z-index: 1000;
padding: 2vw;
color: #fff;
font-weight: 600;
line-height: 1.7;
font-size: 1.4vw;
}
.hover_view_area li:hover {
color: yellow;
}section#bottom_area {
background: #C3E5FF;
padding: 3.4vw 11.4vw;
}section#bottom_area h4 {
text-align: center;
font-size: 2.3vw;
margin-bottom: 3.2vw;
}div#system_content {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 2.9vw;
font-weight: 500;
text-align: center;
}div#system_content article div h5 {
background: #021766;
color: #fff;
font-size: 1.3vw;
padding: 0.6vw 0;
}div#system_content article div dl {
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 1px solid #021766;
color: #021766;
font-size: 1.4vw;
background: #CDCDCD;
}div#system_content article div dl dt {
    flex: 1;
    display: grid;
    align-items: center;
}div#system_content article div dl dd {
line-height: 1.6;
    width: 18vw;
    font-weight: bold;
    font-size: 1.5vw;
    background: #fff;
    text-align: center;
    padding: 0.5em;
    display: grid;
    align-items: center;
}div#system_content article div dl .old-price {
display: inline;
text-decoration: line-through;    font-size: 1.5vw;

}
div#system_content article div dl span {
display: block;
font-size: 1vw;
}
div#system_content article div {
margin-bottom: 1vw;
        border: 1px solid #021766;
}div#system_content article div dl:last-of-type {
    /* border-bottom: none; */
}div#system_content article div p {
text-align: left;
background: #fff;
padding: 1vw 2vw;
line-height: 1.5;
color: #021766;
font-size: 1.1vw;
}div#system_content article div em {
text-align: left;
background: #fff;
padding: 1vw 2vw;
line-height: 1.5;
color: #021766;
font-size: 1.3vw;
display: block;
}





.Pro_work_box {
background-color: #fdd;
padding-bottom: 30px;
padding-top: 10px;
}

.calendar_title {
display: flex;
justify-content: space-between;
align-items: center;
padding: 2vw 2vw;
background: #ff3f78;
color: #fff;
}
.calendar_title h5 {
font-size: 1.4vw;
letter-spacing: 2px;
}
#page_profole section#pro_wrapp section#pro_info article#schedule .date_area, 
#page_profole section#pro_wrapp section#pro_info article#schedule .calendar_body {
display: grid;
grid-template-columns: 1fr repeat(7, 3vw);
text-align: center;
border: solid 1px #d8d8d8;
border-top: none;    border-top: solid 1px #d8d8d8;
}
.time_colums, .date_area {
background: #fff;
}
.date_area li {
border-right: solid 1px #d8d8d8;
font-size: 0.8vw;
padding: 0.6vw 0;
color: #787878;
}

.week-6 { background: #bdffff; }
.week-0 { background: #ffd8d8; }

.time_colums li, .schedule_colums li {
padding: 1vw 0;
border-right: solid 1px #d8d8d8;
border-bottom: solid 1px #d8d8d8;
font-size: 1vw;
box-sizing: border-box;
height: 3vw;
}
.schedule_colums li {
padding: 0;
display: flex;
justify-content: center;
align-items: center;
}

li.selectable { background: rgb(35, 204, 113); }
li.tel span { color: #fff; }
li.selectable input {
color: #fff !important;
font-size: 1.4vw;
}
input[type="submit"] {
border: none;
background: none;
color: #000;
}
.booking_contents .schedule_colums li input[type="submit"] {
font-size: 2.25vw;
}
ul.schedule_colums li.tel span {
font-size: 3vw;
color: #fff;
background: linear-gradient(0deg, rgb(129, 19, 19) 0%, rgb(230, 31, 31) 100%);
padding: 0.7vw 1.5vw;
border-radius: 0.8vw;
}
.schedule_colums li {
padding: 3.2vw 0;
display: flex;
font-size: 3.3vw;
justify-content: center;
align-items: center;
color: #787878;
}

/* kuchikomi */
div#page_kuchikomi_ranking .girls_ranking .syukei_time_select li input,
div#page_kuchikomi_ranking .shops_ranking .syukei_time_select li input{
display: none;
}
div#page_kuchikomi_ranking .girls_ranking {
background: #F2EBB4;
padding: 2vw 0;
color: #AB7022;
text-align: center;
}
div#page_kuchikomi_ranking .shops_ranking {
background: #D4DEDF;
padding: 2vw 0;
color: #51595B;
text-align: center;
}
div#page_kuchikomi_ranking .girls_ranking h4,
div#page_kuchikomi_ranking .shops_ranking h4 {
font-size: 2.3vw;
font-weight: bold;
letter-spacing: 1px;
margin-bottom: 1vw;
}
div#page_kuchikomi_ranking .girls_ranking .syukei_time_view,
div#page_kuchikomi_ranking .shops_ranking .syukei_time_view{
font-size: 1.4vw;
font-weight: 500;
margin-bottom: 1.2vw;
letter-spacing: 1px;
}
div#page_kuchikomi_ranking .girls_ranking .syukei_time_select,
div#page_kuchikomi_ranking .shops_ranking .syukei_time_select {
margin-bottom: 1.5vw;
}
div#page_kuchikomi_ranking .girls_ranking .syukei_time_select ul,
div#page_kuchikomi_ranking .shops_ranking .syukei_time_select ul{
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 1vw;
width: 33vw;
margin: 0 auto;
}
div#page_kuchikomi_ranking .girls_ranking .syukei_time_select ul li, 
div#page_kuchikomi_ranking .shops_ranking .syukei_time_select ul li{
font-size: 1.5vw;
}
div#page_kuchikomi_ranking .girls_ranking .syukei_time_select li input + label {
color: #fff;
border: none;
display: block;
border: 1px solid #AB7022;
border-radius: 30px;
color: #AB7022;
padding: 0.4vw 0;
}
div#page_kuchikomi_ranking .shops_ranking .syukei_time_select li input + label {
color: #fff;
border: none;
display: block;
border: 1px solid #51595B;
border-radius: 30px;
color: #51595B;
padding: 0.4vw 0;
}
div#page_kuchikomi_ranking .girls_ranking .syukei_time_select li input:checked + label {
background: #AB7022;
color: #fff;
font-weight: 500;
}

div#page_kuchikomi_ranking .shops_ranking .syukei_time_select li input:checked + label {
background: #51595B;
color: #fff;
font-weight: 500;
}
.honshimei_tab {
border-bottom: 10px solid #AB7022;
}
.honshimei_tab li#total_ranking{
background:#AB7022;
}
.honshimei_tab li#shop_ranking{
background:#2978D4;
}
.honshimei_tab li#standard_ranking{
background:#FF3B8A;
}
.honshimei_tab li#hitozuma_ranking{
background:#B10048;
}
.honshimei_tab li#kyonyu_ranking{
background:#FF63CE;
}
.honshimei_tab li#pocchari_ranking{
background:#F9C322;
}
.honshimei_tab li#esthe_ranking{
background:#54BE1E;
}
.honshimei_tab ul {
display: grid;
grid-template-columns: repeat(7, 1fr);
width: 70vw;
margin: 0 auto;
align-items: end;
}
.honshimei_tab ul li {
background: #000000;
color: #fff;
text-align: center;
padding: 0.7vw 0;
font-size: 1.2vw;
border-radius: 20px 20px 0 0;
text-align: center;
font-weight: bold;
cursor: pointer;
}
.honshimei_tab ul li.active {
padding: 1.4vw 0;
}

.honshimei_tab.shop_ranking{
border-bottom: 10px solid #2978D4;
}
.girls_ranking.shop_ranking h4,
.girls_ranking.shop_ranking .syukei_time_view{
color:#2978D4
}
div#page_kuchikomi_ranking .girls_ranking.shop_ranking .syukei_time_select li input:checked + label{
background:#2978D4;
color: #fff;
}
div#page_kuchikomi_ranking .girls_ranking.shop_ranking .syukei_time_select li input + label{
color:#2978D4;
border:1px solid #2978D4;
}
div#page_kuchikomi_ranking .girls_ranking.shop_ranking {
background: #dfeeff;
}

/* ===============================
素人・コスプレ
=================================*/
.honshimei_tab.standard_ranking {
border-bottom: 10px solid #FF3B8A;
}
.girls_ranking.standard_ranking h4,
.girls_ranking.standard_ranking .syukei_time_view {
color:#FF3B8A;
}
div#page_kuchikomi_ranking .girls_ranking.standard_ranking .syukei_time_select li input:checked + label {
background:#FF3B8A;
color:#fff;
}
div#page_kuchikomi_ranking .girls_ranking.standard_ranking .syukei_time_select li input + label {
color:#FF3B8A;
border:1px solid #FF3B8A;
}
div#page_kuchikomi_ranking .girls_ranking.standard_ranking {
background:#ffdfec;
}

/* ===============================
人妻
=================================*/
.honshimei_tab.hitozuma_ranking {
border-bottom: 10px solid #B10048;
}
.girls_ranking.hitozuma_ranking h4,
.girls_ranking.hitozuma_ranking .syukei_time_view {
color:#B10048;
}
div#page_kuchikomi_ranking .girls_ranking.hitozuma_ranking .syukei_time_select li input:checked + label {
background:#B10048;
color:#fff;
}
div#page_kuchikomi_ranking .girls_ranking.hitozuma_ranking .syukei_time_select li input + label {
color:#B10048;
border:1px solid #B10048;
}
div#page_kuchikomi_ranking .girls_ranking.hitozuma_ranking {
background:rgb(255, 197, 220);
}

/* ===============================
エステ
=================================*/
.honshimei_tab.esthe_ranking {
border-bottom: 10px solid #54BE1E;
}
.girls_ranking.esthe_ranking h4,
.girls_ranking.esthe_ranking .syukei_time_view {
color:#54BE1E;
}
div#page_kuchikomi_ranking .girls_ranking.esthe_ranking .syukei_time_select li input:checked + label {
background:#54BE1E;
color:#fff;
}
div#page_kuchikomi_ranking .girls_ranking.esthe_ranking .syukei_time_select li input + label {
color:#54BE1E;
border:1px solid #54BE1E;
}
div#page_kuchikomi_ranking .girls_ranking.esthe_ranking {
background:rgb(226, 255, 212);
}

/* ===============================
巨乳
=================================*/
.honshimei_tab.kyonyu_ranking {
border-bottom: 10px solid #FF63CE;
}
.girls_ranking.kyonyu_ranking h4,
.girls_ranking.kyonyu_ranking .syukei_time_view {
color:#FF63CE;
}
div#page_kuchikomi_ranking .girls_ranking.kyonyu_ranking .syukei_time_select li input:checked + label {
background:#FF63CE;
color:#fff;
}
div#page_kuchikomi_ranking .girls_ranking.kyonyu_ranking .syukei_time_select li input + label {
color:#FF63CE;
border:1px solid #FF63CE;
}
div#page_kuchikomi_ranking .girls_ranking.kyonyu_ranking {
background:rgb(255 215 242);
}

/* ===============================
ぽちゃ
=================================*/
.honshimei_tab.pocchari_ranking {
border-bottom: 10px solid #F9C322;
}
.girls_ranking.pocchari_ranking h4,
.girls_ranking.pocchari_ranking .syukei_time_view {
color:#F9C322;
}
div#page_kuchikomi_ranking .girls_ranking.pocchari_ranking .syukei_time_select li input:checked + label {
background:#F9C322;
color:#fff;
}
div#page_kuchikomi_ranking .girls_ranking.pocchari_ranking .syukei_time_select li input + label {
color:#F9C322;
border:1px solid #F9C322;
}
div#page_kuchikomi_ranking .girls_ranking.pocchari_ranking {
background:rgb(255 251 239);
}




.calendar_title h5 { font-size: 16.8px; letter-spacing: 2px; }
.calendar_title { padding: 10px; }
.schedule_colums li {
padding: 0;
display: flex;
font-size: 1vw;
justify-content: center;
align-items: center;
color: #787878;
}

.schedule_colums li { color: #ccc; }
ul.schedule_colums li.tel span {
font-size: 1.1vw;
padding: 0.3vw 0.7vw;
border-radius: 0.5vw;
}
.time_colums li, .schedule_colums li { color: #787878; }.reservation_calendar {
color: #000;
/* width: 92%; */
margin: 0 auto;
background: #fff;
display: block;
padding: 2vw 3vw;
}#page_profole section#pro_wrapp section#pro_info article#schedule content.reservation_calendar{
height: 33vw;
overflow-y: scroll;
}
div#calendar_view_area {
    position: fixed;
    top: 7vw;
    z-index: 111;
    right: 0;
    left: 0;
    margin: auto;
    width: 55vw;
    height: 34vw;
    overflow-y: scroll;
}
.reservation_calendar {
    color: #000;
    width: 100%;
    margin: 0 auto;
    background: #fff;
    display: block;
    padding: 2vw 3vw;
}
div#calendar_view_area .date_area,div#calendar_view_area .calendar_body{
 display: grid;
grid-template-columns: 1fr repeat(7, 5vw);
text-align: center;
border: solid 1px #d8d8d8;
border-top: none;    border-top: solid 1px #d8d8d8;
}
.fade-overlay {
position: absolute;
bottom: 2vw; /* ボタンの高さ分だけ上に */
left: 0;
width: 100%;
height: 60px;
background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1));
pointer-events: none; /* スクロール操作に干渉しない */
}

.clendat-read-more {
position: absolute;
bottom: 2vw;
left: 50%;
transform: translateX(-50%);
padding: 6px 12px;
background: #2C4295;
color: #fff;
border: none;
border-radius: 4px;
cursor: pointer;
font-size: 1.4vw;
padding: 0.7vw 2.5vw;
border-radius: 60px;
}

.pagination nav ul li {
border: none;
background: none;
color: #939393;
box-shadow: none;
padding: 0;
font-size: 1.3vw;
}
.pagination nav ul li.active {
color: #ff3883;
font-weight: bold;
}
.link_area.grid a:first-of-type,
.link_area.grid a:last-of-type{
margin:0;
}
    /* SP */
    @media(max-width:768px) {
    html{
        scroll-padding-top: 7vw;
    }
        #header {
    height: 15.5vw;
    }
    #header logo {
    margin: 2vw 3vw;
    }#header logo img {
    width: 27vw;
    }#header nav {
    display: none;
    }#header nav.open{
    display: block;
    }
    html{
        scroll-padding-top: 15vw;
    }
    /* ハンバーガー */
    .hamburger {
    width: 13vw;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 10;
    background: #FF5C9D;
    height: inherit;
    }
    .hamburger span {
    display: block;
    height: 3px;
    margin: 6px 0;
    background: #fd629c;
    border-radius: 3px;
    transition: 0.3s;
    }
    section#mv-slider .splide__pagination {
    bottom: -8vw;
    }
    footer .footer_logo_area {
    padding: 2vw 2vw 10vw;
    }
    footer .link_logo {
    width: 50vw;
    margin: 3vw auto;
    }footer .footer_logo_area .sub_title {
    font-size: 3vw;
    margin-bottom: 3vw;
    }footer .copyright_area {
    font-size: 3vw;
    }

    div#enter_area {
    margin-top: 5.4vw;
    margin-bottom: 11vw;
    }
    #page_index #enter_area button {
    width: 82vw;
    font-size: 10vw;
    margin-bottom: 3.7vw;
    }
    div#enter_area sub {
    font-size: 4vw;
    }
    section#recruit article ul li em p {
    font-size: 5vw;
    padding: 2vw 0;
    border: 1px solid #0E2351;
    margin-top: 4vw;
    }
    section#recruit article {
    width: 100%;
    }
    section#recruit article ul{
    display: block;
    }
    section#recruit article ul li h3 {
    font-size: 8vw;
    padding: 2vw 0;
    }section#recruit article ul li em {
    padding: 5vw;
    }section#recruit article ul li em p {
    font-size: 5vw;
    padding: 2vw 0;
    }

    /* search */
    div#search_result_contents {
    display: block;
    position: relative;
    }div#search_close_btn {
    position: fixed;
    background: #fff;
    border-radius: 30px;
    padding: 1vw;
    width: 8.4vw;
    text-align: center;
    height: 8.2vw;
    right: 4vw;
    border: 1px solid #ccc;
    box-sizing: border-box;
    }
    div#search_result_contents div#search_contents {
    position: fixed;
    top:12.5vw;
    width: 100%;
    height: 93.8vh;
    z-index: 111;
    overflow: scroll;
    display: none;
    }
    div#search_result_contents div#search_area .search_card {
    padding: 5vw;
    margin: 4vw;
    }
    div#search_result_contents div#search_area .search_card {
    padding: 5vw;
    margin: 4vw;
    }div#search_result_contents div#search_area p {
    font-size: 5vw;
    }div#search_result_contents div#search_area ul li label {
    font-size: 5vw;
    }div#search_result_contents div#search_area ul li input {
    width: 10vw;
    height: 4vw;
    }div#seach_cnt_btn.result_btn {
        padding: 2vw 2vw;
        bottom: 0;
        box-shadow: 0px 0px 15px -5px #777777;
        grid-template-columns: 4.1fr 2fr;
        width: 100%;
        position:fixed;
    }div#seach_cnt_btn.result_btn .search_count {
    font-size: 5vw;
    }div#seach_cnt_btn.result_btn .search_count span#count,
.count {
    font-size: 9vw;
    }div#seach_cnt_btn.result_btn #seach_cnt_btn button {
    font-size: 5vw;
    border-radius: 10px;
    padding: 2vw 0;
    }
    div#seach_cnt_btn.result_btn #search_view_btn {
    background: #59C609;
    color: #fff;
    text-align: center;
    border-radius: 10px;
    padding: 2.4vw 0;
    font-weight: 600;
    }div#seach_cnt_btn {
        /* 
        align-items: anchor-center;
        
        align-items: center;
        width: 100%; */
        padding: 0 1vw 1vw;
        grid-template-columns: 5.1fr 2fr;
        position: fixed;right: 0;
        left: 0;
        align-items: center;
        margin: auto;
        /* bottom: 15vw; */
    }div#seach_cnt_btn .search_count {
    font-size: 5vw;
    }div#seach_cnt_btn .search_count em {
        display: inline;
        font-size: 4vw;
    }div#seach_cnt_btn .search_count span#count,
.count {
            font-size: 12vw;
    }div#seach_cnt_btn .search_count i {
        display: inline;
        font-size: 6vw;
    }#seach_cnt_btn button {
    font-size: 6vw;
    padding: 1.7vw 0;
    }
    /* top */
    section#mv-slider {
    margin-bottom: 13.3vw;
    }    
    section.contents h2 {
            padding: 5.8vw 0 2.8vw;
            font-size: 6.2vw;
        }section.contents h2 sub {
    font-size: 4vw;
    margin: 2vw 0 6vw;
    }section.contents h2 img {
    height: 6.6vw;
    }
    .cast_list ul li {
    margin-bottom: 4vw;
    padding: 3.9vw 2.1vw;
    }
    .cast_list ul li p.entering_day {
    font-size: 3.8vw;
    padding: 1.2vw 4vw 1.2vw 3.2vw;
    bottom: 2vw;
    }
    .cast_list ul li .cast_grid {
    gap: 3vw;
    align-items: end;
    }.cast_list ul li .shop_name {
    font-size: 3.1vw;
    margin-bottom: 1vw;
    }.cast_list ul li .name {
    font-size: 4.8vw;
    margin-bottom: 1vw;
    }.cast_list ul li .size {
    font-size: 3.4vw;
    margin-bottom: 1.4vw;
    }.cast_list ul li .labels {
    display: grid;
    grid-template-columns: 1.3fr 1fr 1fr;
    gap: 0.8vw;
    padding: 0.9vw 0;
            margin-bottom: 1.2vw;
    }.cast_list ul li .labels span.label {
    font-size: 3.1vw;
    border-radius: 7px;
    padding: 0.7vw 0.7vw;
    }.cast_list ul li .pr {
    font-size: 3.7vw;
    width: 41vw;
    }.cast_list ul li .comment_shop {
    width: 41vw;
    font-size: 2.7vw !important;
    -webkit-line-clamp: 3;
    margin-bottom: 2.1vw;
    height: auto;
    max-height: 12.5vw;
    }.cast_list dl.schedule dt {
    font-size: 3.5vw;
    padding: 1vw 0;
    }.cast_list dl.schedule dd {
    font-size: 3.5vw;
    padding: 1vw 0;
    }.cast_list ul li .comment_shop * {
    color: #000 !important;
    font-size: 2.7vw !important;
    }.more_read_btn {
    width: 60vw;
    font-size: 4vw;
    padding: 2.5vw 0;        margin-bottom: 6vw;
    }div#categories {
    font-size: 3.6vw;
    padding: 2vw 0;
    margin-bottom: 3vw;
    width: 94vw;
    }section#honshi_ranking .rank_list,
    section#kuchikomi_ranking .rank_list{
    margin: 0 2vw 4vw;
    }.rank_list ul {
    display: block;
    }
    .rank_list ul li.ranking-card {
    margin-bottom: 3vw;
    padding: 3vw 2.6vw;
    }
    .rank_list ul li.ranking-card .card-inner {
    gap: 3vw;
    }
    .rank_list ul li.ranking-card .card-inner .info .rank {
    width: 34vw;
    background-size: cover !important;
    margin-bottom: 2.9vw;
    }
    .rank_list ul li.ranking-card .card-inner .info .rank p {
    bottom: 2vw;
    font-size: 16.9vw;
    }.rank_list ul li.ranking-card .card-inner .info h3.name {
    font-size: 5vw;
    margin: 1.6vw 0;
    }.rank_list ul li.ranking-card .card-inner .info .sizes {
    font-size: 3.6vw;
    margin-bottom: 1.2vw;
    }.rank_list ul li.ranking-card .card-inner .shop_name {
    font-size: 3vw;
    padding: 1vw 0;
    }.rank_list ul li.ranking-card .schedule {
    margin-top: 2vw;
    }.rank_list ul li.ranking-card .schedule span.status.today {
    font-size: 3.4vw;
    padding: 1.2vw 0;
    }
    .cast_list dl.schedule {
    display: grid;
            grid-template-columns: 1fr 1.5fr;}
    .rank_list ul li.ranking-card .schedule span.time {
    font-size: 3.7vw;
    padding: 1.2vw 0;
    }.rank_list ul li.ranking-card .card-inner .info p.kuchikomi_count {
    font-size: 3.8vw;
    padding: 1vw 0;
    }.rank_list ul li.ranking-card .card-inner .info p.kuchikomi_count span {
    font-weight: bold;
    }section#group_info #gravure, section#group_info #event, section#group_info #kuchikomi_blog, section#group_info #twitter, section#group_info #news_staff_blog {
    width: 95vw;
    }section#group_info h3 {
    font-size: 5vw;
    padding: 2vw;
    }section#group_info #event ul {
    grid-template-columns: repeat(2, 1fr);
    }#kuchikomi_blog ul {
    display: block;
    }#kuchikomi_blog ul li {
    margin-bottom: 2vw;
    }section#group_info #news_staff_blog div#news {
    margin-bottom: 5vw;
    }section#group_info #news_staff_blog {
    display: block;
    }section#group_info #event ul li:last-child{
    display: none;
    }section#group_info #twitter {
    padding: 2vw;
    }section#group_info #twitter .twitter_area_content_image img {
    height: 26vw;
    }section#group_info #news_staff_blog #news ul {
    height: 70vw;
    padding: 5vw 7vw 5vw 13vw;
    }section#group_info #news_staff_blog #news ul li {
    margin-bottom: 4vw;
    }section#group_info #news_staff_blog #news ul li:first-of-type:before {
    width: 9vw;
    height: 10vw;
    left: -10vw;
    top: 4vw;
    }section#group_info #news_staff_blog #news ul li .news-#header {
    font-size: 3.3vw;
    margin-bottom: 1vw;
    }section#group_info #news_staff_blog #news ul li .news-title {
    font-size: 4vw;
    }#kuchikomi_blog ul li .kuchikomi-card {
    grid-template-columns: 1fr 2fr;
    padding: 2vw 1vw;
    gap: 2vw;
    }#kuchikomi_blog ul li .kuchikomi-card .date {
    font-size: 3.5vw;
    padding-bottom: 1.3vw;
    margin-bottom: 0.5vw;
    }#kuchikomi_blog ul li .kuchikomi-card .title {
    font-size: 3.5vw;
    margin-bottom: 3vw;
    }#kuchikomi_blog ul li .kuchikomi-card .evaluation {
    font-size: 3.9vw;
    margin-bottom: 5.5vw;
    }#kuchikomi_blog ul li .kuchikomi-card .name {
    font-size: 4vw;
    margin-bottom: 1vw;
    }#kuchikomi_blog ul li .kuchikomi-card .shop {
    font-size: 3.5vw;
    padding: 0.8vw 1.9vw;
    }section#kuchikomi_post div {
    width: 92vw;
    margin-bottom: 5vw;
    }.cast_list ul {
    display: block;
    }#search_sort_area ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px 5px;
    width: 93vw;
    margin: 0 auto 4vw;
    }#search_sort_area ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px 5px;
    width: 93vw;
    margin: 0 auto 4vw;
    }.twitter_area_content_shopname {
        height: 11vw;
        display: grid;
        align-items: center;
    }#search_sort_area ul li {
    width: auto;
    font-size: 4vw;
    }
    .date_area, .calendar_body {
    grid-template-columns: 1fr repeat(7, 3vw);
    }
    .calendar_title h5 {
    font-size: 3.4vw;
    letter-spacing: 1px;
    }
    .time_colums li, .schedule_colums li {
    padding: 3.2vw 0;
    display: flex;
    font-size: 3.3vw;
    justify-content: center;
    align-items: center;
    color: #787878;
    }
    .schedule_colums li input[type="submit"] { font-size: 3.4vw; }
    ul.schedule_colums li.tel span {
    font-size: 4.25vw;
    color: #ccc;
    }
    #page_gravure .gravure_grid {
    width: 93vw;
    }#page_gravure .gravure_grid ul {
    display: block;
    }#page_gravure .gravure_grid ul li {
    border-radius: 0;
    padding: 4vw 3vw;
    margin-bottom: 3vw;
    }#page_gravure .gravure_grid ul li .main {
    margin-bottom: 3vw;
    }#page_gravure .gravure_grid ul li .thumnails {
    margin-bottom: 3vw;
    overflow-x: scroll;
    }#page_gravure .gravure_grid ul li .thumnails dl {
    width: 130vw;
    }#page_gravure .gravure_grid ul li .info {
    gap: 2vw;
    }#page_gravure .gravure_grid ul li .info .shop_name {
    font-size: 2.9vw;
    margin-bottom: 1.4vw;
    }#page_gravure .gravure_grid ul li .info .cast_name {
    font-size: 4.3vw;
    margin-bottom: 1.4vw;
    }#page_gravure .gravure_grid ul li .info .three_size {
    font-size: 3vw;
    }    .link_area a {
    font-size: 3.1vw;
    padding: 1.9vw 0;
    }.link_area a:first-of-type {
    margin-bottom: 1.2vw;
    }.link_area a:last-of-type {
    margin-top: 1.2vw;
    }div#gravure_detail_area {
    border-radius: 0;
    padding: 4vw;
    }div#gravure_detail_area ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5vw;
    }
    .link_area a:before {
    left: 4.1vw;
    top: 2vw;
    font-size: 2.9vw;
    }
    .link_area.grid {
    width: 100%;
    display: block;
    }  
    .link_area.grid a {
    font-size: 5.1vw;
    padding: 2.6vw 0;
    }.link_area.grid a:before {
    left: 6.5vw;
    top: 1.8vw;
    font-size: 3.4vw;
    padding: 1.6vw 0;
    }


    /* profile */
    #page_profole section#pro_wrapp section#pro_info {
    display: block;
    width: 95vw;padding: 4vw 0;
    }
    #page_profole section#pro_wrapp section#pro_info article {
    border-radius: 11px;
    padding: 4vw 0;
    margin-bottom: 3vw;
    }
    #page_profole section#pro_wrapp section#pro_info article#infomation pr {
    font-size: 3.8vw;
    margin-bottom: 2vw;
    }#page_profole section#pro_wrapp section#pro_info article#infomation name {
    font-size: 6vw;
    }#page_profole section#pro_wrapp section#pro_info article#infomation name span{
    font-size: 3vw;
    }#page_profole section#pro_wrapp section#pro_info article#infomation three_size {
    font-size: 4vw;
    font-weight: 700;
    margin-bottom: 4vw;
    }#page_profole section#pro_wrapp section#pro_info article#infomation dl {
    margin: 2.6vw 4.6vw;
    font-size: 3.9vw;
    }#page_profole section#pro_wrapp section#pro_info article#infomation dl dt, #page_profole section#pro_wrapp section#pro_info article#infomation dl dd {
    padding: 1vw 0;
    }#page_profole section#pro_wrapp section#pro_info article#infomation dl dt, #page_profole section#pro_wrapp section#pro_info article#infomation dl dd {
    padding: 1vw 0;
    }#page_profole section#pro_wrapp section#pro_info article h3 {
    font-size: 5.4vw;
    padding: 3vw 0 2vw;
    width: 88vw;
    margin-bottom: 4vw;
    /* text-align: center; */
    }#page_profole section#pro_wrapp section#pro_info article#schedule content.reservation_calendar {
    height: 100vw;        overflow: hidden;
    }div#calendar_view_area .date_area, div#calendar_view_area .calendar_body {
    grid-template-columns: 1fr repeat(7, 9vw);
    }#page_profole section#pro_wrapp section#pro_info article iframe {
        width: 100%;
    }
    .clendat-read-more {
    font-size: 5.4vw;
    padding: 2vw 8vw;
    bottom: 4vw;
    }#page_profole section#pro_wrapp section#pro_info article#syame iframe {
    height: 104vw;
    box-sizing: border-box;
    padding: 0 6vw;
    }#page_profole section#pro_wrapp section#pro_info article {
    border-radius: 11px;
    padding: 4vw 0;
    margin-bottom: 3vw;
    }#page_profole section#pro_wrapp section#pro_info article div {
        padding: 3vw 7vw;
        margin: 0 4.3vw;
    }#page_profole section#pro_wrapp section#pro_info article div dl dt {
    font-size: 4vw;
    margin-bottom: 2vw;
    }#page_profole section#pro_wrapp section#pro_info article div dl dd {
    font-size: 4vw;
    }#page_profole section#pro_wrapp section#pro_info article .comment * {
        font-size: 3.9vw !important;
        line-height: 1.6;
        margin:0!important;
        padding:0!important;
    }#page_profole section#pro_wrapp section#pro_info article {
    border-radius: 11px;
    padding: 4vw 0;
    margin-bottom: 3vw;
    }#page_profole section#pro_wrapp section#pro_info article div#video_src {
        padding: 3vw 7vw;
        margin: 1vw 5vw;
    }div#system_content article div p {
               font-size: 3.7vw;
        padding: 4vw;
    }#page_profole section#pro_wrapp section#pro_info article .comment {
        font-size: 4vw;
        padding: 0vw 4vw;
    }#page_profole section#pro_wrapp section#pro_info article#schedule .date_area, #page_profole section#pro_wrapp section#pro_info article#schedule .calendar_body {
        grid-template-columns: 1fr repeat(7, 10vw);
    }section#bottom_area {
    padding: 5vw 2vw;
    }section#bottom_area h4 {
    font-size: 6vw;
    }div#system_content {
    display: block;
    }div#system_content article div {
    margin-bottom: 5vw;
    }div#system_content article div h5 {
    font-size: 5vw;
    padding: 2vw 0;
    }.fade-overlay {
        margin: 0!important;
    }div#system_content article div dl {
        font-size: 5vw;
        /* grid-template-columns: 1fr 1.5fr; */
    }div#system_content article div dl dt {
    padding: 3vw 0;
    }div#system_content article div dl dd {
    padding: 3vw 0;
    font-size: 5vw;
            width: 44vw;
    }div#system_content article div dl span {
        font-size: 3.2vw;
    }div#system_content article:last-of-type div dl dt, 
    div#system_content article:last-of-type div dl dd {
    font-size: 4vw;
    }div#system_content article div em {
    font-size: 4.8vw;
        padding: 4vw;
    }#page_profole section#pro_wrapp section#pro_info article#kuchikomi div {
        height: 95vw;
    }#page_profole section#pro_wrapp section#pro_info article#kuchikomi div iframe {
        height: 90vw;
    }
    div#calendar_view_area {
        position: fixed;
        top: 17vw;
        left: 0;
        right: 0;
        margin: auto;
        height:142vw;
        overflow-y: scroll;
        z-index: 11;
        width: 90vw;
    }div#page_kuchikomi_ranking .shops_ranking .syukei_time_select li input + label {
    padding: 1.7vw 0;
    border-radius: 10px;
    }.link_area.grid a:first-of-type,
    .link_area.grid a:nth-of-type(2),
    .link_area.grid a:last-of-type{
    margin-bottom:2vw;
    }
    .honshimei_tab ul {
    width: 100%;
    overflow-x: scroll;
    }
    .honshimei_tab ul li {
        font-size: 3vw;
        height: 22vw;
        display: grid;
        align-items: center;
        border-radius: 10px 10px 0 0;
        font-size: 4.4vw;
        writing-mode: vertical-rl;
        letter-spacing: 2px;
    }    .honshimei_tab ul li.active {
        height: 26vw;
    }div#page_kuchikomi_ranking .girls_ranking {
    padding-top: 7vw;
    }
    div#page_kuchikomi_ranking .girls_ranking h4, div#page_kuchikomi_ranking .shops_ranking h4 {
    font-size: 6vw;
    margin-bottom: 3vw;
    }div#page_kuchikomi_ranking .girls_ranking .syukei_time_view, div#page_kuchikomi_ranking .shops_ranking .syukei_time_view {
    font-size: 4.9vw;
    margin-bottom: 3vw;
    }div#page_kuchikomi_ranking .girls_ranking .syukei_time_select, div#page_kuchikomi_ranking .shops_ranking .syukei_time_select {
    margin-bottom: 4vw;
    }div#page_kuchikomi_ranking .girls_ranking .syukei_time_select ul, div#page_kuchikomi_ranking .shops_ranking .syukei_time_select ul {
    width: 94vw;
    }div#page_kuchikomi_ranking .girls_ranking .syukei_time_select ul li, div#page_kuchikomi_ranking .shops_ranking .syukei_time_select ul li {
    font-size: 5vw;
    }div#page_kuchikomi_ranking .girls_ranking .syukei_time_select li input + label {
    padding: 1vw 0;
    }
    .shop_ranking .shop_list {
    width: 100%;
    margin-bottom: 3vw;
    }.shop_ranking .shop_list select {
    width: 86%;
    font-size: 5vw;
    padding: 2.7vw 0;
    }.shop_ranking .shop_list::after {
    font-size: 5.8vw;
    right: 13vw;
    top: 1.9vw;
    }
    div#stickey_cv_btn ul {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    text-align: center;
    width:auto;
    }    
    div#stickey_cv_btn ul li {
    border-radius: 30px 30px 0 0;
    background: #ffffff;
    border-top: 2px solid #d2d2d2;
    font-size: 5vw;
    }
    div#stickey_cv_btn ul li span {
    border-radius: 30px;
    display: block;
    padding: 3vw 0;
    border: 8px solid #fff;
    color: #fff;
    font-weight: bolder;
    }
    div#stickey_cv_btn ul li.online_reserve span {
    background: #021766;
    }div#stickey_cv_btn ul li.tel_reserve span {
    background: #FD629C;
    }.date_area li {
    font-size: 3vw;
    padding: 1.2vw;
    }div#stickey_cv_btn ul li span i {
    margin-right: 1vw;
    }
}

