@font-face {
 font-family: 'Noto Serif JP';
 font-weight: 400;
 src: url(/font/Noto_Serif_JP/NotoSerifJP-Regular.ttf) format('truetype');
}
@font-face {
 font-family: 'Noto Serif JP';
 font-weight: 600;
 src: url(/font/Noto_Serif_JP/NotoSerifJP-SemiBold.ttf) format('truetype');
}
@font-face {
 font-family: 'Noto Serif JP';
 font-weight: 700;
 src: url(/font/Noto_Serif_JP/NotoSerifJP-Bold.ttf) format('truetype');
}

html{
font-size:14px;
font-family: "Noto Serif JP", serif;
}

body{
margin:0;
line-height:1.6;
color:#232323;
text-align:center;
background:#f2f2f2;
}
.br_sp{
display:none;
}
@media screen and (max-width: 640px) {
html{
font-size: 2.6666666667vw;
}
.br_sp{
display:block;
}
}
* ul,li{
margin:0;
padding:0;
list-style:none;
}
* dl,dt,dd{
margin:0;
padding:0;
list-style:none;
}
* figure,figcaption{
margin:0;
padding:0;
}
* p{
margin:0;
padding:0;
}
* img{
border:0;
vertical-align:bottom;
max-width: 100%;
}
*{
  box-sizing: border-box;
}
* a:hover img{
filter: alpha(opacity=75);
moz-opacity: 0.75;
opacity: 0.75;
}
a{
text-decoration:none;
color:#444;
transition : all 0.3s ease 0s;
}
a:hover{
text-decoration:none;
color:#aaa;
}
a:focus, *:focus { outline:none; }

* table{
border-collapse:collapse;
}
h1,h2,h3,h4,h5,j6{
margin:0; padding:0;
font-weight:normal;
}
*, *:before, *:after {
-webkit-box-sizing: border-box;
box-sizing: border-box
}
.img_pc{
display:inline-block;
}
.img_sp{
display:none;
}
@media screen and (max-width: 640px) {
.img_pc{
display:none;
}
.img_sp{
display:inline-block;
}
}


/* ヘッダー */
.header{
/*
position: fixed;
left: 0;
top: 0;
height: 60px;
*/
width: 100%;
background:#000;
}
.header_inner {
position: relative;
padding: 15px;
}
.logo{
/*
position: absolute;
top: 0;
left: 0;
padding: 10px 15px
*/
}
.title{
font-size: 2rem;
font-weight: 600;
}
.sp_nav{
display:none;
}
@media only screen and (max-width: 768px) {
.header{
margin-bottom:1rem;
}
.header_inner .logo{
text-align:left;
padding-left:1.2rem;
}
.header_inner .logo img{
width:280px;
height:auto;
position:relative;
top:.4rem;
}
.header_inner{
padding:10px 0;
}
.header_inner h1{
font-size:1rem;
overflow:hidden;
}
.header_inner h1 span{
color:#fff;
animation: marquee 10s linear infinite;
transform: translateX(100%);
display: block;
white-space: nowrap;
}

.header_inner .telbox .tel{
display:none;
}
.header_inner .telbox .eigyo{
font-weight:bold;
font-size:1.2rem;
margin-top:.5rem;
color:#fff;
}
.header_inner .telbox .reserve_btn{
display:none;
}
.nav {
position: fixed;
right: -320px; /* 右から出てくる */
top: 0;
width: 300px; /* スマホに収まるサイズ */
height: 100vh;
padding-top: 8rem;
background-color: #fff;
transition: all .6s;
z-index: 200;
overflow-y: auto; /* メニューが多くなったらスクロールできるように */
}
.hamburger {
/* position: absolute; */
right: 10px;
top: 36px;
width: 40px; /* クリックしやすい幅 */
/* height: 40px; /* クリックしやすい高さ */
cursor: pointer;
z-index: 300;
/* background:#000; */
position:fixed;
transition : all 0.5s ease 0s;
}
.nav-open .hamburger{
top:10px;
}
.hamburger .btn{
width:40px;
height:40px;
position:relative;
border-radius:100px;
background:#000;
}
.hamburger .menu{
font-weight:bold;
position:absolute !important;
top:42px !important;
color:#fff;
}
.midnightHeader.default span{
color:#000;
}
.nav-open .midnightHeader.header_black{
color:#000 !important;
}
.nav ul:first-child li:first-child,
.nav ul:first-child li:nth-child(2){
border-top:1px solid #a20404;
}
.nav_list{
margin: 0;
padding: 0;
list-style: none;
display:flex;
flex-wrap:wrap;
}
.nav_list li{
width:50%;
border-bottom:1px solid #a20404;
}
.nav_item {
}
.nav_item a {
display: block;
padding: .8rem 1.2rem;
/*
border-bottom: 1px solid #eee;
*/
text-decoration: none;
color: #333;
text-align:left;
font-size:1.2rem;
line-height:1.2;
}
.nav_item a span{
font-family: "Cormorant Garamond", serif;
font-size:1.6rem;
font-weight:bold;
margin-right:5px;
display:block;
white-space:nowrap;
}
.nav_item.home a::before{
content:"HOME";
}
.nav_item.sch a::before{
content:"SCHEDULE";
}
.nav_item.cast a::before{
content:"CAST";
}
.nav_item.system a::before{
content:"SYSTEM";
}
.nav_item.rec a::before{
content:"RECRUIT";
}

.nav_item a:hover {
background-color: #eee;
}
.hamburger_border {
position: absolute;
left: 8px;
width: 24px;
height: 2px;
background-color: #fff;
transition: all .6s;
}
.hamburger_border_top {
top: 11px;
}
.hamburger_border_center {
top: 19px;
}
.hamburger_border_bottom {
top: 27px;
}
.black_bg {
position: fixed;
left: 0;
top: 0;
width: 100vw;
height: 100vh;
z-index: 100;
background-color: #333;
opacity: 0;
visibility: hidden;
transition: all .6s;
cursor: pointer;
}

/* 表示された時用のCSS */
.nav-open .nav {
right: 0;
}
.nav-open .black_bg {
opacity: .8;
visibility: visible;
}
.nav-open .hamburger_border_top {
transform: rotate(45deg);
top: 20px;
}
.nav-open .hamburger_border_center {
width: 0;
left: 50%;
}
.nav-open .hamburger_border_bottom {
transform: rotate(-45deg);
top: 20px;
}
.sp_nav{
display:block;
}
.sp_nav ul{
display:flex;
background: linear-gradient(to bottom,#1d1d19,#302220 20%,#1f1f1f 30%,#000);
border-top: 1px solid #271c1a;
border-bottom: 1px solid #271c1a;
}
.sp_nav ul li{
width : calc(100% / 5) ;
position:relative;
}
.sp_nav ul li:not(:last-child)::after{
content:"";
position:absolute;
top:10%;
right:0;
height:80%;
width:1px;
border-left:1px dotted rgba(255,255,255,.5);
}
.sp_nav ul li a{
display:block;
color:#fff;
font-weight:bold;
font-size:.8rem;
line-height:1.2;
padding:1rem 0;
}
.sp_nav ul li a span{
font-family: "Cormorant Garamond", serif;
display:block;
font-size:1.3rem;
}
}
@media screen and (min-width: 640px) {
.hamburger .menu{
display:none;
}
}
/* spナビここまで */
@media only screen and (min-width: 769px) {
.header_inner{
width: 1200px;
display:flex;
justify-content:space-between;
align-items:flex-end;
margin:auto;
padding:12px 0;
position:relative;
}
.header_inner h1{
font-size:10px;
position:absolute;
top:12px;
right:0;
color:#fff;
}
.logo{
padding:0;
}
.logo img{
width:460px;
}
.header_inner .telbox{
display:inline-flex;
}
.header_inner ul{
text-align:right;
line-height:1.2;
color:#fff;
}
.header_inner .reserve_btn{
margin-left:10px;
}
.header_inner .reserve_btn a{
display:flex;
color:#a20404;
width:72px;
height:100%;
justify-content:center;
border:2px solid #a20404;
color:#fff;
}
.header_inner .reserve_btn a:hover{
background:#000;
background:#a20404;
color:#fff;
}
.header_inner .reserve_btn a span{
text-align:center;
align-self:center;
font-size:15px;
font-weight:600;
}
.header_inner ul .eigyo{
font-weight:bold;
margin-bottom:3px;
}
.header_inner ul .eigyo span{
margin-left:4px;
font-size:16px;
}
/*
.header_inner ul .eigyo::before{
content:"";
display:inline-block;
width:81px;
height:18px;
background:url(/img/common/creditcard.png) no-repeat;
background-size:81px 18px;
position:relative;
top:2px;
margin-right:5px;
}
*/
.header_inner ul .tel{
font-size:32px;
font-weight:bold;
letter-spacing:1px;
line-height:1;
}
.header_inner ul .tel::before{
content:"TEL.";
font-size:22px;
}
nav.nav{
margin-bottom:20px;
}
.nav_list{
text-align:center;
display:flex;
justify-content:center;
margin:auto;
border-top:2px solid #271c1a;
border-bottom:1px solid #271c1a;
background: linear-gradient(to bottom,#1d1d19,#302220 20%,#1f1f1f 30%,#000); 
}
.nav_list li{
display:block;
text-align:center;
width : calc(1200px / 8) ;
position:relative;
}
.nav_list li::after{
content:"";
display:block;
width:2px;
height:40%;
position:absolute;
top:30%;
right:0;
background:#666;
}
.nav_list li:first-child::before,
.nav_list li:nth-of-type(9)::before{
content:"";
display:block;
width:2px;
height:40%;
position:absolute;
top:30%;
left:0;
background:#666;
}

.nav_list li a{
color: #fff;
font-size:11px;
display:block;
padding:10px 0 12px;
line-height:1.3;
transition : all 0.3s ease 0s;
}
.nav_list li a:hover{
color:#fff;
background: linear-gradient(to bottom, #000000 0%,#1b1614 100%);
}
.nav_list li a span{
font-family: "Cormorant Garamond", serif;
font-weight:600 !important;
font-size:17px;
font-weight:bold;
display:block;
}
}
/* pcナビここまで */

/* パンくず */
.breadcrumb ul{
width:1200px;
font-size:11px;
display:flex;
margin:0 auto 10px;
}
.breadcrumb ul li:not(:last-child)::after{
content:">";
margin:0 3px;
}
@media screen and (max-width: 640px) {
.breadcrumb ul{
width:100%;
padding:0 10px;
margin-bottom:1rem;
}
}

/* スライダー */
.slider-pro{
margin-bottom:48px;
}
.slider-pro .sp-slide{
opacity: 0.3;
border-radius:20px;
overflow:hidden;
}
.slider-pro .sp-selected{
opacity: 1;
}
@media screen and (max-width: 640px) {
.slider-pro{
margin-bottom:24px;
}
.slider-pro .sp-slide{
border-radius:0;
}
}
/* twitterとか */
.cont_two{
display:flex;
justify-content:space-between;
width:980px;
margin:0 auto 48px;
min-height:500px;
}
.cont_two .twitter_box,
.cont_two .diary_box{
width:49%;
border-radius:16px;
background:#fff;
}
.cont_two .twitter_box .box,
.cont_two .diary_box .box{
padding:0 15px 15px;
}
.cont_two .news_box{
border-radius:16px;
background:#fff;
width:49%;
}
.cont_two .news_box .news_list{
padding:0 10px 15px 15px;
}
.cont_two .news_box dl{
height:402px;
overflow-y:scroll;
scrollbar-width: thin;
padding-right:10px;
}
.cont_two .news_box dl > div{
display:flex;
margin-bottom:15px;
padding-bottom:15px;
border-bottom:2px dotted #ddd;
}
.cont_two .news_box dl > div dt{
margin-right:20px;
}
.cont_two .news_box dl > div dd{
text-align:left;
}
.cont_two .news_box dl > div dd .ttl{
font-weight:bold;
font-size:18px;
}
.cont_two .news_box dl > div dd .time{
font-size:12px;
color:#888;
margin-bottom:4px;
}
.cont_two .news_box dl > div dt img{
max-width:140px;
width:140px;
height:140px;
object-fit:cover;
object-position: 0 0;
border-radius:8px;
overflow:hidden;
}
.cont_two .newface_box{
border-radius:16px;
background:#fff;
width:49%;
}
.cont_two .newface_box .newface_list_wrap{
padding:0 10px 15px 15px;
}
.cont_two .newface_box .newface_list{
height:402px;
overflow-y:scroll;
scrollbar-width: thin;
padding-right:10px;
}
.cont_two .newface_box dl{
display:flex;
}
.cont_two .newface_box dl:not(:last-child){
margin-bottom:24px;
padding-bottom:24px;
border-bottom:1px solid #ddd;
}
.cont_two .newface_box dl dt{
min-width:200px;
width:200px;
height:267px;
border-radius:4px;
overflow:hidden;
}
.cont_two .newface_box dl dt img{
transition: transform .4s ease;
}
.cont_two .newface_box dl:hover dt img{
transform: scale(1.1);
}
.cont_two .newface_box dl dd{
text-align:left;
margin-left:16px;
padding-right:5px;
flex-grow:1;
}
.cont_two .newface_box dl dd .name span{
font-size:18px;
font-weight:bold;
}
.cont_two .newface_box dl dd .size{
font-size:12px;
margin-bottom:10px;
padding-bottom:10px;
border-bottom:2px dotted #999;
color:#888;
}
@media screen and (max-width: 640px) {
.cont_two{
width:100%;
display:block;
padding:0 10px;
margin-bottom:3.2rem;
}
.cont_two > div:first-child{
margin-bottom:32px;
}
.cont_two .twitter_box,
.cont_two .newface_box,
.cont_two .news_box,
.cont_two .diary_box{
width:100%;
}
.cont_two .twitter_box{
margin-bottom:2rem;
}
.cont_two .newface_box dl{
}
.cont_two .newface_box dl dt{
min-width:160px;
width:160px;
}
.cont_two .news_box dl > div dt img{
width:80px;
height:80px;
}
.cont_two .newface_box dl dd .comment,
.cont_two .news_box dl > div dd .comment{
font-size:1.3rem;
}
}

/* 1カラム */
.cont_wrap{
margin-bottom:64px;
}
.cont_wrap h3.ttl{
text-align:left;
font-size:12px;
font-weight:bold;
padding:15px 0 15px 15px;
line-height:1.1;
position:relative;
}
.cont_wrap h3.ttl span{
display:block;
font-size:36px;
font-family: "Cormorant Garamond", serif;
}
.cont_wrap h3.ttl a{
position:absolute;
right:15px;
top:24px;
font-size:14px;
display:block;
border-radius:100px;
padding:7px 16px 8px;
border:1px solid #000;
}
.cont_wrap h3.ttl a:hover{
background:#151515;
color:#fff;
}
.cont_wrap h3.ttl a::after{
content:"";
display:inline-block;
height:11px;
width:11px;
background:url(/img/common/arrow.svg) no-repeat;
background-size:cover;
position:relative;
margin-left:5px;
}
.cont_wrap h3.ttl a:hover::after{
-webkit-filter: brightness(0) invert(1);
filter: brightness(0) invert(1);
}
@media only screen and (max-width: 640px) {
.cont_wrap{
padding:0 1.2rem;
margin-bottom:3.2rem;
}
.cont_wrap h3.ttl span{
font-size:2.8rem;
}
.cont_wrap h3.ttl a{
font-size:1.3rem;
top:2rem;
right:.5rem;
}
}
/* 新着1カラム */
.cont_wrap .news_box{
border-radius:16px;
background:#fff;
width:1200px;
margin:auto;
}
.cont_wrap .news_box .news_list{
padding:0 10px 15px 15px;
}
.cont_wrap .news_box dl{
height:402px;
overflow-y:scroll;
scrollbar-width: thin;
padding-right:10px;
}
.cont_wrap .news_box dl > div{
display:flex;
margin-bottom:24px;
padding-bottom:24px;
border-bottom:2px dotted #ddd;
}
.cont_wrap .news_box dl > div dt{
margin-right:20px;
}
.cont_wrap .news_box dl > div dd{
text-align:left;
flex-grow:1;
}
.cont_wrap .news_box dl > div dd .ttl{
font-weight:bold;
font-size:24px;
line-height:1.4;
}
.cont_wrap .news_box dl > div dd .time{
color:#888;
margin-bottom:4px;
}
.cont_wrap .news_box dl > div dd .comment{
font-size:16px;
}
.cont_wrap .news_box dl > div dd .comment a{
color:#3f74cd;
}
.cont_wrap .news_box dl > div dd .comment a:hover{
opacity:.7;
}
.cont_wrap .news_box dl > div dt img{
max-width:320px;
width:320px;
object-fit:cover;
object-position: 0 0;
border-radius:8px;
overflow:hidden;
}

@media screen and (max-width: 640px) {
.cont_wrap .news_box{
width:100%;
}
.cont_wrap .news_box dl > div{
display:block;
}
.cont_wrap .news_box dl > div dt{
margin-right:0;
margin-bottom:1.4rem;
}
.cont_wrap .news_box dl > div dt img{
width:100%;
aspect-ratio: 1;
}
.cont_wrap .news_box dl > div dd .comment{
font-size:1.3rem;
}
}
/* 新人1カラム */
.cont_wrap.top_newface_wrap{
background:#000;
padding:64px 0;
}
.cont_wrap .newface_box{
border-radius:16px;
background:#fff;
width:1200px;
margin:auto;
}
.cont_wrap .newface_box .newface_list_wrap{
padding:0 10px 15px;
}
.newface__list dl{
margin:0 5px;
position:relative;
}
.newface__list dl .icon_schedule{
line-height:1.2;
position:absolute;
top:8px;
left:8px;
width:32px;
height:32px;
background:#000;
color:#fff;
text-align:center;
font-weight:700;
font-size:1rem;
padding-top:3px;
}
.newface__list dl dt{
margin-bottom:8px;
}
.newface__list .namebox .day{
font-weight:bold;
font-size:18px;
margin-bottom:4px;
}
.newface__list .namebox .name{
line-height:1;
margin-bottom:4px;
}
.newface__list .namebox .name span{
font-weight:bold;
font-size:18px;
}
.newface__list .namebox .size{
font-size:13px;
color:#888;
}
@media screen and (max-width: 640px) {
.cont_wrap.top_newface_wrap{
padding:4rem 1.2rem;
}
.cont_wrap .newface_box{
width:100%;
border-radius:.8rem;
}
.newface__list .namebox .day{
font-size:1.5rem;
}
.newface__list .namebox .name{
font-size:1.2rem;
}
.newface__list .namebox .name span{
font-size:1.5rem;
font-weight:600;
}
.newface__list .namebox .size{
font-size:1.1rem;
}
}
/* ランキング1カラム */
.cont_wrap .top_ranking_box{
border-radius:16px;
background:#fff;
width:1200px;
margin:auto;
}
.cont_wrap .top_ranking_box .ranking_list{
display:flex;
padding:0 15px 15px;
}
.cont_wrap .top_ranking_box .ranking_list dl{
width: calc(100% / 5 - 8px);
margin: 0 10px 0 0;
}
.cont_wrap .top_ranking_box .ranking_list dl::last-child{
margin-right:0;
}
.cont_wrap .top_ranking_box .ranking_list dl dt{
margin-bottom:4px;
}
.cont_wrap .top_ranking_box .ranking_list dl dd{
text-align:left;
line-height:1;
margin-bottom:4px;
}
.cont_wrap .top_ranking_box .ranking_list dl dd.rank{
color:#c39d4d;
font-size:22px;
margin-bottom:6px;
}
.cont_wrap .top_ranking_box .ranking_list dl dd.rank::before{
content:"RANKING NO";
font-size:15px;
margin-right:2px;
}
.cont_wrap .top_ranking_box .ranking_list dl dd.name span{
font-size:18px;
font-weight:500;
}
.cont_wrap .top_ranking_box .ranking_list dl dd.size{
color:#888;
font-size:13px;
margin-top:4px;
}
@media screen and (max-width: 640px) {
.cont_wrap .top_ranking_box{
width:100%;
}
.cont_wrap .top_ranking_box .ranking_sp{
}
.cont_wrap .top_ranking_box .ranking_list{
overflow-x:scroll;
display: block;
width: auto;
height: auto;
text-align: left;
white-space: nowrap;
}
.cont_wrap .top_ranking_box .ranking_list dl{
display:inline-block;
width:14rem;
}
.cont_wrap .top_ranking_box .ranking_list dl dd{
font-size:1.2rem;
}
.cont_wrap .top_ranking_box .ranking_list dl dd.name{
margin-bottom:.6rem;
}
.cont_wrap .top_ranking_box .ranking_list dl dd.name span{
font-size:1.6rem;
font-weight:600;
}
.cont_wrap .top_ranking_box .ranking_list dl dd.size{
font-size:1.1rem;
}
}
/* TOPウィジェット */
.top_widget{
margin-bottom:64px;
}
.top_widget_box{
display:flex;
justify-content:center;
gap:0 40px
}
.top_widget_box > div{
width:320px;
}
.top_widget_box > div.heaven > a{
display:block;
margin-top:16px;
}
.top_widget_box > div.fujoho > div:nth-child(n+2){
margin-top:16px !important;
}
@media screen and (max-width: 640px) {
.top_widget{
padding:0 1.2rem;
margin-bottom:1.6rem;
}
.top_widget_box{
display:block;
text-align:center;
}
.top_widget_box > div{
margin:auto;
}
.top_widget_box > div.heaven,
.top_widget_box > div.fujoho{
margin-bottom:1.6rem;
}
}


/* TOP求人ウィジェット */
.rec_widget{
margin-bottom:64px;
}
.rec_widget_box{
display:flex;
justify-content:center;
gap:0 40px
}
.rec_widget_box > div{
width:320px;
}
@media screen and (max-width: 640px) {
.rec_widget{
padding:0 1.2rem;
margin-bottom:3.2rem;
}
.rec_widget_box{
display:block;
text-align:center;
}
.rec_widget_box > div{
margin:auto;
}
}

/* 写メ日記1カラム */
.cont_wrap .diary_box{
border-radius:16px;
background:#fff;
width:980px;
margin:auto;
}
.cont_wrap .diary_box .box{
padding:0 15px 15px;
}
@media screen and (max-width: 640px) {
.cont_wrap .diary_box{
width:100%;
}
}
/* X1カラム */
.cont_wrap .x__box{
background:#000;
padding:64px 0;
}
.cont_wrap .x__box .x__wrap{
width:560px;
margin:auto;
}
@media screen and (max-width: 640px) {
.cont_wrap .x__box{
margin:0 -1.2rem;
padding:3.2rem 1.2rem;
}
.cont_wrap .x__box .x__wrap{
width:100%;
}
}
/* TOPアクセス */
.cont_wrap .map_box{
width:980px;
margin:auto;
display:flex;
border-radius:16px;
background:#fff;
padding:16px;
}
.cont_wrap .map_box .map{
width:464px;
}
.cont_wrap h4.ttl{
font-size: 12px;
font-weight: bold;
line-height: 1.1;
margin-bottom:16px;
}
.cont_wrap h4.ttl span{
display: block;
font-size: 36px;
font-family: "Cormorant Garamond", serif;
}
.cont_wrap .map_box .add{
text-align:left;
margin-left:20px;
flex-grow:1;
}
.cont_wrap .map_box .add dl{
margin-bottom:8px;
}
.cont_wrap .map_box .add dt{
font-size:16px;
font-weight:bold;
margin-bottom:8px;
}
.cont_wrap .map_box .add .txt{
margin:4px 0 ;
}
.cont_wrap .map_box .add .btn{
margin-top:24px;
display:flex;
justify-content:space-between;
}
.cont_wrap .map_box .add .btn li{
width : calc(100% / 2 - 4px) ;
}
.cont_wrap .map_box .add .btn li a{
display:flex;
padding:12px 0 10px;
justify-content:center;
align-items:center;
font-size:17px;
font-weight:bold;
color:#fff;
background:#232323;
}
.cont_wrap .map_box .add .btn li a::before{
font-family: 'Material Icons';
content: '\e0cd';
font-size:20px;
margin-right:5px;
line-height:1;
position:relative;
top:-1px;
}
.cont_wrap .map_box .add .btn li.contact a::before{
content: '\e0e1';
}
@media screen and (min-width: 640px) {
.cont_wrap .map_box .add .btn li.tel a{
pointer-events: none;
}
}
@media screen and (max-width: 640px) {
.cont_wrap .map_box{
width:100%;
display:block;
}
.cont_wrap .map_box .map{
width:100%;
}
.cont_wrap .map_box .add{
margin-left:0;
margin-top:.8rem;
}
.cont_wrap h4.ttl span{
font-size:2.8rem;
}
.cont_wrap .map_box .add dl,
.cont_wrap .map_box .add p{
font-size:1.3rem;
}
.cont_wrap .map_box .add .btn{
display:block;
}
.cont_wrap .map_box .add .btn li{
width:100%;
}
.cont_wrap .map_box .add .btn li:first-child{
margin-bottom:1.6rem;
}
.cont_wrap .map_box .add .btn li a{
font-size:1.9rem;
}
.cont_wrap .map_box .add .btn li a::before{
font-size:2.2rem;
}
}

/* 見出し */
h2.ttl{
font-weight:bold;
line-height:1.1;
font-size:13px;
font-weight:normal;
margin-bottom:20px;
}
h2.ttl span{
font-size:56px;
font-weight:bold;
display:block;
font-family: "Cormorant Garamond", serif;
}
h3.subttl{
font-size:28px;
margin-bottom:16px;
display:flex;
align-items:center;
justify-content:center;
letter-spacing:1px;
}
@media screen and (max-width: 640px) {
h3.subttl{
font-size:2rem;
}
}
h3.subttl::before,
h3.subttl::after{
content:"";
display:block;
border-top:1px solid #232323;
flex-grow:1;
}
h3.subttl::before{
margin-right:16px;
}
h3.subttl::after{
margin-left:16px;
}
.cont_two h3.ttl{
text-align:left;
font-size:12px;
font-weight:bold;
padding:15px 0 15px 15px;
line-height:1.1;
position:relative;
}
.cont_two h3.ttl span{
display:block;
font-size:36px;
font-family: "Cormorant Garamond", serif;
}
.cont_two h3.ttl a{
position:absolute;
right:15px;
top:30px;
font-size:14px;
display:block;
border-radius:100px;
padding:7px 15px 5px;
}
.cont_two h3.ttl a:hover{
background:#151515;
color:#fff;
}
.cont_two h3.ttl a::after{
content:"";
display:inline-block;
height:11px;
width:11px;
background:url(/img/common/arrow.svg) no-repeat;
background-size:cover;
position:relative;
margin-left:5px;
}
.cont_two h3.ttl a:hover::after{
-webkit-filter: brightness(0) invert(1);
filter: brightness(0) invert(1);
}
@media only screen and (max-width: 640px) {
h2.ttl span{
font-size:4rem;
}
.cont_two h3.ttl span{
font-size:2.8rem;
}
.cont_two h3.ttl a{
font-size:1.3rem;
top:2rem;
right:.5rem;
}
}

/* キャスト一覧 */
.castlist_wrap{
width:1200px;
margin:0 auto 32px;
}

@media screen and (max-width: 640px) {
.castlist_wrap{
width:100%;
}
}

/* キャスト詳細 */
.prof_wrap{
width:980px;
margin:0 auto 32px;
}
.prof_wrap .prof_box{
background:#fff;
padding:20px;
border-radius:16px;
}
.prof_wrap .prof_box .photo_txt > dl{
display:flex;
}
.prof_wrap .prof_box .photo_txt > dl > dt{
min-width:470px;
width:470px;
}
.prof_wrap .prof_box .photo_txt > dl > dd{
margin-left:30px;
text-align:left;
flex-grow:1;
}
.prof_wrap .prof_box .photo_txt > dl > dd .ename{
font-size:42px;
font-weight:bold;
line-height:1.3;
font-family: "Cormorant Garamond", serif;
}
.prof_wrap .prof_box .photo_txt > dl > dd .catch{
font-size:20px;
color:#a20404;
letter-spacing:1px;
}
.prof_wrap .prof_box .photo_txt > dl > dd .name{
font-size:20px;
letter-spacing:1px;
}
.prof_wrap .prof_box .photo_txt > dl > dd .name span{
font-size:28px;
font-weight:bold;
}
.prof_wrap .prof_box .photo_txt > dl > dd .size{
font-size:16px;
margin-bottom:12px;
padding-bottom:12px;
border-bottom:2px dotted #bbb;
}
.prof_wrap .prof_box .photo_txt > dl > dd .course{
display:flex;
}
.prof_wrap .prof_box .photo_txt > dl > dd .course span{
display:inline-block;
line-height: 1;
border: 1px solid #c00;
color:#c00;
border-radius: 2px;
padding: 3px 8px 4px;
margin: 0 8px 5px 0;
white-space: nowrap;
font-size: 12px;
}
.prof_wrap .prof_box .photo_txt > dl > dd .course span.icon_2{
border-color:#36c;
color:#36c;
}
.prof_wrap .prof_box .photo_txt > dl > dd .course span.icon_3{
border-color:#f93;
color:#f93;
}
.prof_wrap .prof_box .photo_txt > dl > dd .course span:not(:last-child)::after{
}
.prof_wrap .prof_box .photo_txt > dl > dd ul.icon{
display:flex;
flex-wrap:wrap;
margin-bottom:12px;
}
.prof_wrap .prof_box .photo_txt > dl > dd ul.icon li{
line-height:1;
border:1px solid #232323;
border-radius:2px;
padding:3px 8px 4px;
margin:0 8px 5px 0;
white-space:nowrap;
font-size:12px;
}
.prof_wrap .prof_box .photo_txt > dl > dd .subttl{
font-size:11px;
}
.prof_wrap .prof_box .photo_txt > dl > dd .subttl span{
font-family: "Cormorant Garamond", serif;
font-size:30px;
font-weight:500 !important;
margin-right:5px;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list{
margin-bottom:20px;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl{
display:flex;
box-sizing:border-box;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl{
border-top:1px solid #ddd;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl dt,
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl dd{
padding:12px 6px;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl dt{
width:30%;
font-weight:bold;
white-space:nowrap;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl dd{
flex-grow:1;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl.option dd{
display:flex;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl.option dd span:not(:last-child)::after{
content:"/";
margin:0 4px;
color:#888;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl.option dd .ng{
color:#ccc;
}
.prof_wrap .prof_box .photo_txt > dl > dd .message,
.prof_wrap .prof_box .photo_txt > dl > dd .comment{
margin-bottom:20px;
}
h3.prof_ttl{
font-size:13px;
line-height:1.1;
margin-bottom:10px;
}
h3.prof_ttl span{
font-family: "Cormorant Garamond", serif;
font-size:40px;
font-weight:500 !important;
display:block;
}
.prof_wrap .prof_box .prof_sch{
margin-top:32px;
}
.prof_wrap .prof_box .sch_box{
display:flex;
margin-bottom:60px;
}
.prof_wrap .prof_box .sch_box dl{
width : calc(100% / 7) ;
text-align:center;
font-size:15px;
}
.prof_wrap .prof_box .sch_box dl dt,
.prof_wrap .prof_box .sch_box dl dd{
padding:10px 0;
}
.prof_wrap .prof_box .sch_box dl dt{
border-top:1px solid #ddd;
border-bottom:1px solid #ddd;
background:#efefef;
}
.prof_wrap .prof_box .sch_box dl dd{
border-bottom:1px solid #ddd;
font-weight:bold;
font-size:17px;
}
.prof_widget{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
.prof_widget > div{
width:49%;
margin-bottom:20px;
}

.prof_review{
}
.prof_review .review_wrap{
text-align:left;
}
.prof_review .review_wrap dl{
padding-bottom:20px;
margin-bottom:20px;
border-bottom:1px solid #232323;
}
.prof_review .review_wrap dt{
display:flex;
justify-content:space-between;
align-items:center;
}
.prof_review .review_wrap dt .ttl{
font-size:18px;
font-weight:bold;
}
.prof_review .review_wrap dt .time{
font-size:12px;
}
.prof_review .review_wrap dd.user_name::after{
content:"様";
margin-left:4px;
}
.prof_review .review_wrap dd.evaluation::before{
content:"評価：";
}
.prof_review .review_wrap dd.evaluation .star{
font-size:21px;
}

.prof_box #acMenu dt span{
display:inline-block;
font-size:20px;
font-weight:bold;
position:relative;
line-height:1;
padding:20px 0;
width:400px;
border:2px solid #232323;
color:#232323;
letter-spacing:1px;
position:relative;
transition : all 0.5s ease 0s;
}
.prof_box #acMenu dt span:hover{
cursor:pointer;
background:#232323;
color:#fff;
}
.prof_box #acMenu dt span::after{
font-family: 'Material Icons';
content: '\e145';
position:absolute;
right:16px;
top:50%;
transform: translateY(-50%);
font-size:24px;
}
.prof_box #acMenu dt.active{
display:none;
}
.prof_box #acMenu dt.active span{
border-radius:26px 26px 0 0;
}
.prof_box #acMenu dt span::after{
/*
content:"▼";
position:absolute;
right:32px;
*/
}
.prof_box #acMenu dt.active span::after{
content:"▲";
}
.prof_box #acMenu > dd{
display:none;
padding:48px;
border:24px solid #eee;
}
.prof_box #acMenu .form_caution{
font-size:12px;
margin-top:4px;
}
@media screen and (max-width: 640px) {
.prof_wrap{
width:100%;
padding:0 10px;
}
.prof_wrap .prof_box{
padding:20px 10px;
}
.prof_wrap .prof_box .photo_txt dl{
display:block;
}
.prof_wrap .prof_box .photo_txt dl dt{
min-width:100%;
width:100%;
}
.prof_wrap .prof_box .photo_txt > dl > dd{
margin-left:0;
}
.prof_wrap .prof_box .photo_txt > dl > dd ul.icon li{
}
h3.prof_ttl span{
font-size:3rem;
}
.prof_wrap .prof_box .sch_box{
display:block;
}
.prof_wrap .prof_box .sch_box dl{
width:100%;
display:flex;
border-bottom:1px solid #ddd;
}
.prof_wrap .prof_box .sch_box dl:first-of-type{
border-top:1px solid #ddd;
}
.prof_wrap .prof_box .sch_box dl dt,
.prof_wrap .prof_box .sch_box dl dd{
width:50%;
border:none;
}
.prof_wrap .prof_box .sch_box dl dt{

}

.prof_wrap .prof_box .photo_txt > dl > dd .subttl{
font-size:1.2rem;
}
.prof_wrap .prof_box .photo_txt > dl > dd .subttl span{
font-size:2.8rem;
}
.prof_wrap .prof_box .photo_txt > dl > dd .catch{
font-size:1.7rem;
}
.prof_wrap .prof_box .photo_txt > dl > dd .name{
font-size:1.6rem;
}
.prof_wrap .prof_box .photo_txt > dl > dd .name span{
font-size:2.4rem;
}
.prof_wrap .prof_box .photo_txt > dl > dd .size,
.prof_wrap .prof_box .photo_txt > dl > dd .course{
font-size:1.4rem;
}
.prof_wrap .prof_box .photo_txt > dl > dd .size{
margin-bottom:1rem;
padding-bottom:1rem;
}
.prof_wrap .prof_box .photo_txt > dl > dd .course span,
.prof_wrap .prof_box .photo_txt > dl > dd ul.icon li{
font-weight:600;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl{
font-size:1.4rem;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl dt{
min-width:36%;
width:36%;
white-space:nowrap;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl dd{
flex-grow:1;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl dt,
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl dd{
padding:14px 6px 12px;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl.option dd span{
white-space:nowrap;
}
.prof_wrap .prof_box .photo_txt > dl > dd .prof_list dl.option dd .ng{
color:#ccc;
}
.prof_wrap .prof_box .photo_txt > dl > dd .message,
.prof_wrap .prof_box .photo_txt > dl > dd .comment{
font-size:1.3rem;
}


.prof_widget{
display:block;
}
.prof_widget > div{
width:100%;
}
.prof_widget > div:first-child{
margin-bottom:40px;
}
.prof_box #acMenu dt span{
font-size:1.8rem;
padding:1.6rem 0;
width:100%;
}
.prof_box #acMenu dt span::after{
font-size:2rem;
}
.prof_review .review_wrap dt{
display:block;
margin-bottom:.5rem;
}
.prof_review .review_wrap .user_name,
.prof_review .review_wrap .evaluation{
font-size:1.3rem;
}
.prof_review .review_wrap .evaluation{
margin-bottom:.5rem;
}
.prof_review .review_wrap .comment{
font-size:1.4rem;
}
.prof_box #acMenu > dd{
padding:1.6rem 0;
border:none;
}
}

/* 出勤 */
.sch_wrap{
width:1200px;
margin:0 auto 48px;
}
.sch_wrap .weekly_btn{
display:flex;
justify-content:space-between;
margin-bottom:30px;
}
.sch_wrap .weekly_btn li{
width : calc(100% / 7 - 10px) ;
}
.sch_wrap .weekly_btn li a{
display:block;
box-sizing:border-box;
text-align:center;
border:2px solid #ddd;
background:#fff;
border-radius:4px;
position:relative;
padding:9px 0 11px;
font-size:18px;
font-weight:bold;
line-height:1.4;
color:#ccc;
}
.sch_wrap .weekly_btn li a:hover{
border-color:#232323;
color:#232323;
}
.sch_wrap .weekly_btn li a.active{
border-color:#232323;
color:#232323;
}
.sch_wrap .weekly_btn li a.active::before,
.sch_wrap .weekly_btn li a.active::after{
content:"";
display:block;
width: 0;
height: 0;
border-style: solid;
border-width: 14px 11px 0 11px;
border-color: #fff transparent transparent transparent;
position:absolute;
right:0;
left:0;
margin:auto;
}
.sch_wrap .weekly_btn li a.active::before{
border-color: #232323 transparent transparent transparent;
bottom:-14px;
}
.sch_wrap .weekly_btn li a.active::after{
bottom:-11px;
}
.sch_wrap h3.subttl{
font-size:24px;
font-weight:bold;
margin-bottom:20px;
display:flex;
align-items:center;
justify-content:center;
}
.sch_wrap h3.subttl::before,
.sch_wrap h3.subttl::after{
content:"";
width:40px;
display:block;
border-top:1px solid #232323;
}
.sch_wrap h3.subttl::before{
margin-right:15px;
}
.sch_wrap h3.subttl::after{
margin-left:15px;
}

.sch_wrap .weekly_btn li span{
display:block;
font-size:14px;
}
@media screen and (max-width: 640px) {
.sch_wrap{
width:100%;
}
.sch_wrap .weekly_btn{
overflow-y:scroll;
padding-left:1.2rem;
padding-bottom:16px;
margin-bottom:16px;
}
.sch_wrap .weekly_btn li{
min-width:80px;
margin-right:1rem;
}
.sch_wrap .weekly_btn li a.active::before,
.sch_wrap .weekly_btn li a.active::after{
border-width: 10px 8px 0 8px;
}
.sch_wrap .weekly_btn li a.active::before{
border-color: #464646 transparent transparent transparent;
bottom:-12px;
}
.sch_wrap .weekly_btn li a.active::after{
bottom:-9px;
}
.sch_wrap h3.subttl{
font-size:1.8rem;
}
.sch_wrap h3.subttl::before,
.sch_wrap h3.subttl::after{
width:30px;
flex-grow:0;
}
.sch_wrap h3.subttl::before{
margin-right:16px;
}
.sch_wrap h3.subttl::after{
margin-left:16px;
}
}

/* キャスト一覧（ソート／絞り込み） */
.lady_search{
margin-bottom:16px;
}
.lady_search .lady_search_sort ul,
.lady_search .lady_search_narrow ul {
width: 100%;
display: flex;
flex-wrap: wrap;
}
.lady_search .lady_search_sort ul li{
display:flex;
font-weight:bold;
font-size:15px;
}
.lady_search .lady_search_sort ul li:not(:last-child)::after{
content:"│";
margin:0 4px;
color:rgba(0,0,0,.3);
}
.lady_search .lady_search_sort ul li:first-child::after{
content:"：";
color:#444;
}
.lady_search .lady_search_sort .sortbtn{
display:inline-flex;
margin-left:6px;
}
.lady_search .lady_search_sort a:hover{
cursor:pointer;
}
.lady_search .lady_search_sort .sortbtn a:last-child{
margin-left:3px;
}
.lady_search .lady_search_narrow{
margin-top:8px;
}
@media screen and (min-width: 640px) {
.lady_search .lady_search_narrow li:not(:last-child){
margin-right:4px;
}
}
.lady_search .lady_search_narrow ul{
gap:4px 4px;
}
.lady_search .lady_search_narrow li a{
display:block;
padding:0 12px;
height:28px;
line-height:24px;
border:1px solid #bbb;
border-radius:100px;
background:#fff;
color:#bbb;
font-size:13px;
}
.lady_search .lady_search_narrow li a:hover{
cursor:pointer;
color:#444;
border-color:#444;
}
.lady_search .lady_search_narrow li a.programs-filter-btn-active{
background:#444;
color:#fff;
}

@media screen and (max-width: 640px) {
.lady_search .lady_search_sort,
.lady_search .lady_search_narrow{
padding:0 1rem;
}
.lady_search .lady_search_sort ul li{
font-size:1.3rem;
}
.lady_search .lady_search_narrow li{
/*
width : calc(100% / 4 - 4px) ;
margin:0 4px 5px 0;
*/
}
.lady_search .lady_search_narrow ul li:nth-child(4n){
margin-right:0;
}
.lady_search .lady_search_narrow li a{
font-size:1.2rem;
font-weight:bold;
white-space:nowrap;
}
}

/*
.lady_search .lady_search_sort ul li::after,
.lady_search .lady_search_narrow ul li::after {
content: "｜";
margin: 0 4px;
}
.lady_search .lady_search_sort ul li:last-child::after,
.lady_search .lady_search_narrow ul li:last-child::after {
content: "";
margin: 0;
}
*/

/* 一覧共通 */
.lady_list{
display:flex;
flex-wrap:wrap;
gap: 24px 12px;
}
.lady_list dl{
width : calc(100% / 4 - 9px) ;
/* margin:0 12px 20px 0; */
padding:10px;
background:#fff;
border-radius:4px;
}
/*
.lady_list dl:nth-of-type(4n){
margin-right:0;
}
#castlist .lady_list{
display: grid;
grid-template-columns: repeat(4, minmax(200px, 1fr));
gap: 24px 12px;
}
#castlist .lady_list dl{
width : 100%;
margin:0;
}
*/
.lady_list dl dt{
margin-bottom:12px;
overflow:hidden;
border-radius:4px;
position:relative;
}
.lady_list dl.overlay dt{
background:#000;
}
.lady_list dl.overlay dt img{
filter: opacity(60%);
/*
 filter: brightness(85%) grayscale(100%);
*/
}
/*
.lady_list dl.overlay dt::after{
content: "";
width: 100%;
height: 100%;
background: rgba(0, 0, 0, .5);
position: absolute;
top: 0;
left: 0;
z-index: 5;
}
*/
.lady_list dl dt img{
transition: transform .4s ease;
}
.lady_list dl dt .status{
position:absolute;
bottom:8px;
right:0;
left:0;
width:93%;
margin:auto;
background:rgba(255,255,255,.8);
border-radius:2px;
line-height:1;
font-size:15px;
font-weight:bold;
padding:6px 0;
}

#castlist .lady_list dl dt .status{
right:8px;
left:auto;
width : calc(50% - 12px) ;
}
.lady_list dl dt .playstyle{
position:absolute;
bottom:8px;
left:8px;
width : calc(50% - 12px) ;
}
.lady_list dl dt .playstyle li{
background:rgba(255,255,255,.8);
margin-top:4px;
border-radius:100px;
height:24px;
line-height:23px;
font-weight:bold;
}


.lady_list dl dt .icon_new{
font-family: "Cormorant Garamond", serif;
font-size:11px;
font-weight:500;
position:absolute;
top:8px;
left:8px;
line-height:1.1;
display:flex;
align-items:center;
justify-content:center;
width:36px;
height:36px;
border-radius:2px;
background:#a20404;
color:#fff;
}
.lady_list dl:hover dt img{
transform: scale(1.1);
}
.lady_list dl dd{
text-align:left;
line-height:1.3;
}
.lady_list dl dd.day{
text-align:center;
font-size:20px;
font-weight:bold;
margin-bottom:8px;
}
.lady_list dl dd.room{
text-align:center;
font-size:15px;
margin-bottom:5px;
display:flex;
align-items:center;
}
.lady_list dl dd.room span{
margin:0 10px;
}
.lady_list dl dd.room::before,
.lady_list dl dd.room::after{
content:"";
flex-grow:1;
border-top:1px solid #232323;
position:relative;
top:-1px;
}
.lady_list dl dd.catch{
font-size:16px;
margin-bottom:4px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
color:#a20404;
}
.lady_list dl dd .name{
margin-bottom:3px;
}
.lady_list dl dd .name span{
font-weight:bold;
font-size:18px;
}
.lady_list dl dd .size{
font-size:13px;
color:#888;
margin-bottom:10px;
}
.lady_list dl dd.sch{
border:1px solid #232323;
font-size:16px;
font-weight:bold;
line-height:1;
display:table;
width:100%;
height:37px;
}
.lady_list dl dd.sch span{
display:table-cell;
text-align:center;
vertical-align:middle;
font-size:18px;
line-height:1;
}
.lady_list dl dd.sch .schtxt{
width:80px;
background:#232323;
color:#fff;
font-size:14px;
padding:10px 0 11px;
}
/*
.lady_list dl dd.sch::before{
content:"出勤";
display:inline-block;
padding:7px 15px 5px;
background:#232323;
color:#fff;
font-size:13px;
margin-right:10px;
}
*/
@media screen and (max-width: 640px) {
.lady_list{
padding:0 10px;
gap:1rem 10px;
}
.lady_list dl{
width : calc(100% / 2 - 5px) ;
/*
margin:0 10px 1rem 0;
*/
}
/*
.lady_list dl:nth-of-type(2n){
margin-right:0;
}
#castlist .lady_list{
display: grid;
grid-template-columns: repeat(2, minmax(100px, 1fr));
gap: 1.6rem 10px;
}
#castlist .lady_list dl{
width : 100%;
margin:0;
}
*/
.lady_list dl dt .status{
font-size:1.3rem;
padding:.4rem;
}

#castlist .lady_list dl dt .status{
right:4px;
left:auto;
bottom:4px;
width : calc(50% - 6px) ;
font-size:1rem;
padding:0;
height:1.8rem;
line-height:1.8rem;
}
.lady_list dl dt .playstyle{
position:absolute;
bottom:4px;
left:4px;
width : calc(50% - 6px) ;
}
.lady_list dl dt .playstyle li{
background:rgba(255,255,255,.8);
margin-top:4px;
border-radius:100px;
height:1.8rem;
line-height:1.8rem;
font-weight:bold;
}


.lady_list dl dt .icon_new{
font-size:.9rem;
font-weight:700;
width:32px;
height:32px;
}
.lady_list dl dd.day{
font-size:1.6rem;
}
.lady_list dl dd.catch{
font-size:1.4rem;
}
.lady_list dl dd .size{
font-size:1.1rem;
}
.lady_list dl dd.room span{
font-size:1.3rem;
}
.lady_list dl dd.sch{
font-size:.9rem;
height:30px;
}
.lady_list dl dd.sch .schtxt{
padding:8px 4px;
width:4.2rem;
font-size:1.1rem;
white-space:nowrap;
}
.lady_list dl dd.sch .time,
.lady_list dl dd.sch .sch_txt{
font-size:1.4rem;
}
}

/* レビュー */
#review .review__wrap{
width:980px;
margin:0 auto 64px;
}
.cont_wrap .review_box{
border-radius: 16px;
background: #fff;
text-align: left;
}
.cont_wrap .review_box .review_wrap{
padding: 0 10px 16px 16px;
}
.cont_wrap .review_box .review_list{
overflow-y: scroll;
height:640px;
scrollbar-width: thin;
padding-right: 10px;
}
.cont_wrap .review_box .review_list > div{
display:flex;
}
.cont_wrap .review_box .review_list > div:not(:last-child){
margin-bottom:24px;
padding-bottom:24px;
border-bottom:1px solid #ddd;
}
.cont_wrap .review_box .review_list > div .img{
min-width:140px;
width:140px;
margin-right:20px;
}
.cont_wrap .review_box .review_list > div dl{
flex-grow:1;
}
.cont_wrap .review_box .review_list > div dl dt{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:8px;
padding-bottom:8px;
border-bottom:2px dotted #ddd;
}
.cont_wrap .review_box .review_list > div dl dt .name span{
font-weight:bold;
font-size:16px;
}
.cont_wrap .review_box .review_list > div dl dt .time{
font-size:12px;
}
.cont_wrap .review_box .review_list > div dl .ttl{
font-size:18px;
font-weight:bold;
}
.cont_wrap .review_box .review_list > div dl .user_name::after{
content:"様";
margin-left:4px;
}
.cont_wrap .review_box .review_list > div dl .evaluation::before{
content:"評価：";
}
.cont_wrap .review_box .review_list > div dl .evaluation span{
font-size:21px;
}
@media screen and (max-width: 640px) {
#review .review__wrap{
width:100%;
box-sizing:border-box;
padding:0 1.2rem;
}
.cont_wrap .review_box .review_list > div .img{
min-width:9rem;
width:9rem;
}
.cont_wrap .review_box .review_list > div dl dt{
display:block;
}
.cont_wrap .review_box .review_list > div dl dt .name,
.cont_wrap .review_box .review_list > div dl .user_name{
font-size:1.3rem;
}
.cont_wrap .review_box .review_list > div dl .evaluation,
.cont_wrap .review_box .review_list > div dl .comment{
font-size:1.4rem;
}
}

/* システム */
.system_wrap{
width:980px;
margin:0 auto 30px;
}
.system_wrap .system_box{
border-radius:16px;
background:#fff;
padding:20px;
min-height:400px;
margin-bottom:30px;
}
.system_box h3{
font-size:24px;
font-weight:bold;
margin-top:48px;
margin-bottom:16px;
line-height:1.2;
}
.system_box h3:first-of-type{
margin-top:0;
}
.system_box h3 span{
font-size:16px;
font-family: "Cormorant Garamond", serif;
display:block;
}
.system_box .img{
margin-bottom:16px;
}
.system_box .system_txt{
font-size:16px;
margin:24px 0;
}
.system_table{
table-layout:fixed;
width:100%;
margin-bottom:40px;
}
.system_table th,
.system_table td{
font-size:18px;
padding:10px 0;
}
.system_table tr{
border-bottom:1px solid #ddd;
}
.system_table tr:first-of-type{
border-top:1px solid #ddd;
}
.system_table th{
background:#232323;
color:#fff;
}
.system_box .system_caution{
text-align:left;
font-size:12px;
margin-top:-20px;
}
.basic_txt{
font-size:18px;
margin-bottom:16px;
}
.basic_txt span{
color:#a20404;
font-size:20px;
}
.play_table{
width:100%;
table-layout:fixed;
font-size:18px;
margin-bottom:40px;
}
.play_table tr{
border-bottom:1px solid #ddd;
}
.play_table tr:first-of-type{
border-top:1px solid #ddd;
}
.play_table td{
padding:5px 0;
}
.a_or_b{
font-size:16px;
}
.a_or_b span{
font-size:24px;
color:#a20404;
margin:0 3px;
}
.system_box .option_txt{
margin-bottom:24px;
font-size:16px;
}
.system_box .option_txt dt{
color:#a20404;
font-size:18px;
}
.system_box .caution_txt{
font-size:13px;
text-align:left;
}
@media screen and (max-width: 640px) {
.system_wrap{
width:100%;
padding:0 10px;
}
.system_wrap .system_box{
padding:2rem 1rem;
border-radius:.8rem;
}
.system_box h3{
font-size:2.1rem;
}
.system_box h3 span{
font-size:1.3rem;
}
.system_box .system_txt{
font-size:1.5rem;
}
.system_table th{
font-size:1.4rem;
}
.system_table td{
font-size:1.6rem;
}
.play_table td{
font-size:1.3rem;
}
.system_box dl.system_caution dt{
font-size:1.8rem;
margin-bottom:5px;
}
.system_box dl.system_caution dd{
font-size:1.3rem;
}
.system_box .option_txt{
font-size:1.3rem;
text-align:left;
}
.system_box .option_txt dt{
font-size:1.6rem;
}
}

.foot_txt{
height:400px;
background:url(/img/common/bg_footer.png) center center no-repeat;
background-size:cover;
display:flex;
align-items:center;
justify-content:center;
position:relative;
}
.foot_txt::after{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background: inherit;
filter: brightness(40%);
}
.foot_txt .box{
position:relative;
z-index:2;
color:#fff;
display:inline-block;
border:3px solid #fff;
padding:40px;
}
.foot_txt .box a{
display:block;
width:240px;
padding:5px 0;
color:#232323;
background:#fff;
margin:10px auto 0;
font-weight:bold;
}
@media screen and (max-width: 640px) {
.foot_txt .box{
padding:20px 0;
width:94%;
font-size:1.2rem;
font-weight:bold;
}
}

/* ニュース */
.news_wrap{
width:980px;
margin:auto;
}
.newslist{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
.newslist > dl{
width : calc(100% / 2 - 12px) ;
padding:15px;
display:flex;
background:#fff;
border-radius:16px;
margin:0 24px 24px 0;
}
.newslist > dl:nth-child(2n){
margin-right:0;
}
.newslist > dl dt img{
max-width:140px;
border-radius:8px;
overflow:hidden;
margin-right:12px;
}
.newslist > dl dd{
text-align:left;
}
.newslist > dl dd .ttl{
font-size:18px;
font-weight:bold;
}
.newslist > dl dd .time{
font-size:12px;
color:#888;
margin-bottom:8px;
}
@media only screen and (max-width: 640px) {
.news_wrap{
width:100%;
}
.newslist{
display:block;
}
.newslist > dl{
width:100%;
}
.newslist > dl dt img{
width:80px;
}
.newslist > dl dd .comment{
font-size:1.3rem;
}
}
/* イベント */
.event_wrap{
width:980px;
margin:auto;
}
.eventlist{
margin-bottom:48px;
}
.eventlist .eventbox{
padding:16px;
border-radius:16px;
background:#fff;
margin-bottom:24px;
display:flex;
}
.eventlist dl:last-child{
margin-bottom:0;
}
.eventlist .eventbox dt,
.eventlist .eventbox dd{
width:50%;
}
.eventlist .eventbox dt{
}
.eventlist .eventbox dd{
text-align:left;
padding-left:24px;
}
.eventlist .eventbox dd a{
color:#3f74cd;
}
.eventlist .eventbox dd a:hover{
opacity:.7;
}
.eventlist .eventbox dd .ttl{
font-size:20px;
font-weight:bold;
margin-bottom:8px;
}
.eventlist .eventbox dd .txt{
font-size:15px;
}
@media only screen and (max-width: 640px) {
.event_wrap{
width:100%;
padding:0 1.2rem;
}
.eventlist .eventbox dd .ttl{
font-size:1.8rem;
}
.eventlist .eventbox dd .txt{
font-size:1.3rem;
}
}

/* ホテルマップ */
.hotel_wrap{
width:980px;
margin:auto;
}
.hotel_wrap .hotel_box{
border-radius: 16px;
background: #fff;
padding: 20px;
min-height: 400px;
margin-bottom: 30px;
}
.hotel_wrap .hotel_box h3{
font-size: 24px;
font-weight: bold;
margin-bottom: 16px;
line-height: 1.2;
}
.hotel_wrap .hotel_box h3 span{
font-size: 16px;
font-family: "Cormorant Garamond", serif;
display: block;
}
.hotelmap_txt{
margin-bottom:16px;
}
.hotelmap_txt dt{
font-size:19px;
}
.hotelmap_txt dt span{
color:#a20404;
}
.hotel_wrap .hotel_box .mymap{
margin-bottom:48px;
}
.hotel_wrap .hotel_box .mymap iframe{
width: 100%;
height: 500px;
border:none;
}
#access_list li{
display:flex;
justify-content:space-between;
}
#access_list li:not(:last-child){
margin-bottom:24px;
padding-bottom:28px;
border-bottom:1px solid #ddd;
}
#access_list li > div{
width : calc(100% / 2 - 8px) ;
}
#access_list li .data h4{
font-size:18px;
font-weight:bold;
text-align:left;
line-height:1;
}
#access_list li .data h4 span{
display:block;
font-size:14px;
font-weight:normal;
margin:10px 0 16px;
}
#access_list li .data img{
aspect-ratio: 16 / 9;
object-fit:cover;
width:100%;
}
#access_list li .map iframe{
width:100%;
height:100%;
}


.hotel_wrap .hotelmap{
margin-bottom:16px;
}
.hotel_wrap .hotel_list{
display:flex;
flex-wrap:wrap;
margin-bottom:32px;
}
.hotel_wrap .hotel_list dl{
width : calc(100% / 2 - 8px) ;
text-align:left;
background:#fff;
border-radius:8px;
padding:10px;
margin:0 16px 16px 0;
display:flex;
}
.hotel_wrap .hotel_list dl:nth-child(2n){
margin-right:0;
}
.hotel_wrap .hotel_list dl dt{
min-width:32px;
margin-right:16px;
}
.hotel_wrap .hotel_list dl dt span{
display:block;
width:40px;
height:40px;
line-height:40px;
border-radius:100px;
background:#232323;
color:#fff;
text-align:center;
font-family: "Cormorant Garamond", serif;
font-size:20px;
font-weight:500;
}
.hotel_wrap .hotel_list dl .hotel_name{
font-size:16px;
font-weight:bold;
}
.hotel_wrap .hotel_list dl .hotel_name a::after{
font-family: 'Material Icons Outlined';
content: '\e89e';
font-weight:normal;
margin-left:5px;
position:relative;
top:2px;
}
.hotel_wrap .hotel_list dl .add,
.hotel_wrap .hotel_list dl .tel,
.hotel_wrap .hotel_list dl .price,
.hotel_wrap .hotel_list dl .remarks{
color:#888;
display:flex;
}
.hotel_wrap .hotel_list dl .add::before{
content:"住所：";
}
.hotel_wrap .hotel_list dl .tel::before{
content:"電話：";
}
.hotel_wrap .hotel_list dl .price::before{
content:"料金：";
}
.hotel_wrap .hotel_list dl .remarks::before{
content:"備考：";
}
@media only screen and (max-width: 640px) {
.hotel_wrap{
width:100%;
box-sizing:border-box;
padding:0 1.2rem;
}
.hotel_wrap .hotel_box{
padding:2rem 1rem;
border-radius:.8rem;
}
.hotel_wrap .hotel_box h3{
font-size:2.1rem;
}
.hotel_wrap .hotel_box h3 span{
font-size:1.3rem;
}
.hotelmap_txt dt{
font-size:1.7rem;
}
.hotelmap_txt dd{
font-size:1.3rem;
}
#access_list li{
display:block;
}
#access_list li > div{
width:100%;
}
#access_list li .data{
margin-bottom:.8rem;
}
#access_list li .data h4{
font-size:1.6rem;
}
#access_list li .data h4 span{
font-size:1.4rem;
}
#access_list li .map iframe{
height:28rem;
}


.hotel_wrap h3.subttl{
font-size:1.8rem;
}
.hotel_wrap .hotel_list{
display:block;
}
.hotel_wrap .hotel_list dl{
width:100%;
}
.hotel_wrap .hotel_list dl dd{
font-size:1.3rem;
}
.hotel_wrap .hotel_list dl dt span{
width:32px;
height:32px;
font-size:1.6rem;
line-height:32px;
}
}
/* ホテルリスト */
.hotellist_wrap{
width:980px;
margin:auto;
}
.hotel_category_link ul{
display:flex;
flex-wrap:wrap;
margin-bottom:24px;
}
.hotel_category_link ul li{
width : calc(100% / 4 - 9px) ;
text-align:left;
margin:0 12px 12px 0;
}
.hotel_category_link ul li a{
display:flex;
align-items:center;
padding:11px 10px 10px;
background:#fff;
border-radius:4px;
font-size:16px;
line-height:1;
}
.hotel_category_link ul li a:hover{
background:#232323;
color:#fff;
}
.hotel_category_link ul li a::before{
font-family: 'Material Icons';
content: '\f181';
font-size:22px;
margin-right:5px;
position:relative;
top:-1px;
}
.hotellist_wrap .hotellist_box{
margin-bottom:32px;
}
.hotellist_wrap .hotellist{
display:flex;
flex-wrap:wrap;
}
.hotellist_wrap .hotellist dl{
padding:20px;
background:#fff;
border-radius:12px;
text-align:left;
width : calc(100% / 2 - 8px) ;
margin-bottom:24px;
}
.hotellist_wrap .hotellist dl:not(:nth-of-type(2n)){
margin-right:16px;
}
.hotellist_wrap .hotellist dl dt{
font-size:17px;
font-weight:bold;
margin-bottom:3px;
}
.hotellist_wrap .hotellist dd{
font-size:13px;
}
.hotellist_wrap .hotellist .tel a{
color:#469ef7;
}
.hotellist_wrap .hotellist dd.tel::before{
content:"TEL.";
}
.hotellist_wrap .hotellist .price{
display:flex;
}
.hotellist_wrap .hotellist .price p span{
font-weight:bold;
}
.hotellist_wrap .hotellist .price p:nth-of-type(2)::before{
content:"／";
margin:0 3px;
}
@media screen and (min-width: 640px) {
.hotellist_wrap .hotellist .tel a{
pointer-events: none;
color:#232323;
}
.hotel_category_link ul li:nth-of-type(4n){
margin-right:0;
}
}
@media screen and (max-width: 640px) {
.hotellist_wrap{
width:100%;
padding:0 1.2rem;
}
.hotel_category_link ul li{
width : calc(100% / 2 - 6px) ;
}
.hotel_category_link ul li:nth-of-type(2n){
margin-right:0;
}
.hotel_category_link ul li a{
font-size:1.4rem;
}
.hotellist_wrap .hotellist{
display:block;
}
.hotellist_wrap .hotellist dl{
width:100%;
margin:0 0 1.6rem !important;
border-radius:8px;
padding:1.2rem;
}
}


/* Q&A */
.qa_wrap{
width:980px;
margin:0 auto 32px;
}
.qa_wrap .qa_list dl{
padding:24px;
border-radius:8px;
background:#fff;
margin-bottom:16px;
text-align:left;
}
.qa_wrap .qa_list dl dt{
font-size:17px;
font-weight:bold;
padding-bottom:8px;
margin-bottom:12px;
border-bottom:1px dotted #888;
display:flex;
align-items:center;
}
.qa_wrap .qa_list dl dt::before{
content:"Q";
font-family: "Cormorant Garamond", serif;
font-weight:bold;
display:block;
width:32px;
height:32px;
line-height:31px;
background:#a20404;
color:#fff;
border-radius:100px;
text-align:center;
font-size:20px;
margin-right:8px;
}
.qa_wrap .qa_list dl dd a{
color: #3f74cd;
font-size:15px;
}
.qa_wrap .qa_list dl dd a:hover{
opacity:.7;
}
.qa_wrap .qa_list dl dd a::after{
font-family: 'Material Icons Outlined';
content: '\e89e';
position: relative;
top: 2px;
margin-left: 3px;
}

@media only screen and (max-width: 640px) {
.qa_wrap{
width:100%;
padding:0 1.2rem;
}
.qa_wrap .qa_list dl{
padding:1.6rem;
}
.qa_wrap .qa_list dl dt{
font-size:1.6rem;
line-height:1.5;
}
.qa_wrap .qa_list dl dt::before{
min-width:32px;
}
.qa_wrap .qa_list dl dd{
font-size:1.3rem;
}
}
/* ランキング */
.ranking_wrap{
width:980px;
margin:0 auto 32px;
}
.ranking_wrap .ranking_list{
display:flex;
flex-wrap:wrap;
margin-bottom:32px;
}
.ranking_wrap .ranking_list dl{
width : calc(100% / 3 - 8px) ;
margin:0 12px 24px 0;
padding:10px;
border-radius:4px;
background:#fff;
box-sizing:border-box;
position:relative;
}
.ranking_wrap .ranking_list dl:nth-child(3),
.ranking_wrap .ranking_list dl:nth-child(6),
.ranking_wrap .ranking_list dl:nth-child(10){
margin-right:0;
}
.ranking_wrap .ranking_list dl:nth-child(n+7){
width : calc(100% / 4 - 9px) ;
}
.ranking_wrap .ranking_list dl dt{
margin-bottom: 8px;
overflow: hidden;
border-radius: 4px;
position: relative;
}
.ranking_wrap .ranking_list dl dt img{
transition: transform .4s ease;
}
.ranking_wrap .ranking_list dl:hover dt img{
transform: scale(1.1);
}
.ranking_wrap .ranking_list dl .name span{
font-size:16px;
font-weight:bold;
}
.ranking_wrap .ranking_list dl .size{
font-size:12px;
color:#888;
}
.ranking_wrap .ranking_list dl .rank{
position:absolute;
top:0;
left:5px;
display:block;
width:48px;
height:48px;
line-height:48px;
text-align:center;
background:#232323;
color:#fff;
font-family: "Cormorant Garamond", serif;
font-weight:500;
font-size:24px;
}
@media only screen and (max-width: 640px) {
.ranking_wrap{
width:100%;
padding:0 1.2rem;
}
.ranking_wrap h3.subttl{
font-size:1.8rem;
}
.ranking_wrap .ranking_list dl{
width: calc(100% / 2 - 6px);
margin-right:0;
}
.ranking_wrap .ranking_list dl:first-of-type{
width:100%;
}
.ranking_wrap .ranking_list dl:nth-of-type(2n){
margin-right:12px;
}
.ranking_wrap .ranking_list dl .rank{
width:32px;
height:32px;
line-height:32px;
font-size:1.8rem;
left:0;
}
}
/* プレイ */
.play_wrap{
width:980px;
margin:0 auto 32px;
}
.play_wrap .play_box{
border-radius: 16px;
background: #fff;
padding: 20px;
min-height: 400px;
margin-bottom: 30px;
}
.play_wrap .play_box h3{
font-size: 24px;
font-weight: bold;
margin-bottom: 16px;
line-height: 1.2;
}
.play_wrap .play_box h3 span{
font-size: 16px;
font-family: "Cormorant Garamond", serif;
display: block;
}
.play_wrap .play_box .manga{
margin-bottom:48px;
}
.play_wrap .play_box .play{
display:flex;
flex-wrap:wrap;
gap:24px 16px;
width:916px;
margin:auto;
}
.play_wrap .play_box .play li{
width : calc(100% / 2 - 8px) ;
text-align:left;
}
.play_wrap .play_box .play li figcaption{
margin-top:4px;
font-size:16px;
}

@media only screen and (max-width: 640px) {
.play_wrap{
width:100%;
padding:0 1.2rem
}
.play_wrap .play_box{
padding:2rem 1rem;
border-radius:.8rem;
}
.play_wrap .play_box h3{
font-size:2.1rem;
}
.play_wrap .play_box h3 span{
font-size:1.3rem;
}
.play_wrap .play_box .play{
width:100%;
gap:2rem 8px;
}
.play_wrap .play_box .play li{
width: calc(100% / 2 - 4px);
}
.play_wrap .play_box .play li figcaption{
font-size:1.3rem;
}
}

/* メルマガ紹介 */
.magazine_wrap{
width:980px;
margin:0 auto 32px;
}
.magazine_box{
border-radius: 16px;
background: #fff;
padding: 20px;
margin-bottom: 30px;
text-align:left;
}
.magazine_box h3{
font-size:26px;
font-weight:500;
color:#a20404;
margin-bottom:4px;
}
.magazine_box p{
margin-bottom:8px;
}
.magazine_box h4{
font-size:19px;
font-weight:500;
margin-top:16px;
margin-bottom:4px;
}
.magazine_box .form_box{
display:flex;
margin-bottom:6px;
}
.magazine_box .form_box input[type="submit"] {
min-width: 80px;
font-size: 16px;
font-weight: bold;
background-color: #000;
color: #fff;
margin-left: 3px;
border-radius: 4px;
border: none;
}
@media only screen and (max-width: 640px) {
.magazine_wrap{
width:100%;
padding:0 1.2rem
}
}

/* コンセプト */
.concept_wrap{
width:980px;
margin:0 auto 32px;
}
@media only screen and (max-width: 640px) {
.concept_wrap{
width:100%;
padding:0 1.2rem
}
}

/* 求人 */
.recruit_wrap {
width: 980px;
margin: 0 auto 32px;
}
.recruit_flex{
display:flex;
justify-content:space-between;
position:relative;
}
.recruit_box{
width:630px;
padding:15px 15px 30px;
background:#fff;
border-radius:10px;
}
.recruit_box figure{
margin-bottom:24px;
}
.recruit_box .recruit_ttl{
text-align:left;
font-weight:bold;
font-size:20px;
line-height:1.5;
margin-bottom:16px;
}
.recruit_box .recruit_txt{
font-size:14px;
margin-bottom:32px;
}
.recruit_box .recruit_subttl{
font-size:18px;
font-weight:bold;
letter-spacing:1px;
margin-bottom:24px;
text-align:left;
position:relative;
padding:8px 0 5px;
}
.recruit_box .recruit_subttl::before{
font-family:"FontAwesome";
content:"\f0f6";
display:inline-block;
font-size:24px;
margin-right:8px;
position:relative;
top:1px;
}
dl.treatment > div{
display:flex;
text-align:left;
}
dl.treatment > div:not(:last-child){
margin-bottom:16px;
padding-bottom:16px;
border-bottom:1px solid #ddd;
}
dl.treatment > div dt{
width:25%;
}
dl.treatment > div dt span{
display:inline-block;
padding:6px 18px 4px;
background:#888;
color:#fff;
border-radius:3px;
line-height:1;
}
dl.treatment > div dd{
padding-top:5px;
}
.recruit_right{
width:320px;
}
.recruit_right .form_ttl{
font-size:18px;
font-weight:bold;
letter-spacing:1px;
margin-bottom:12px;
}
.recruit_flex .form_wrap{
padding:15px;
border-radius:10px;
position:sticky;
top:15px;
}
.recruit_right .oubobox{
margin-bottom:20px;
}
.recruit_right .oubobox li{
margin-bottom:8px;
}
.recruit_right .oubobox a{
font-size:16px;
font-weight:bold;
padding:12px 0 9px;
border:1px solid #ccc;
display:block;
border-radius:100px;
line-height:1;
}
.recruit_right .oubobox a::before{
font-family:"FontAwesome";
margin-right:8px;
display:inline-block;
}
.recruit_right .oubobox .tel a::before{
content:"\f095";
}
.recruit_right .oubobox .line a::before{
content:"\f075";
transform: scale(-1, 1);
position:relative;
top:-1px;
}
.recruit_right .oubobox .line a{
background:#56c459;
border-color:#56c459;
color:#fff;
}
.recruit_right dl{
text-align:left;
}
.recruit_right dl dt{
font-weight:bold;
font-size:15px;
margin-bottom:3px;
}
.recruit_right dl dt::after{
color: #fff;
display: inline-block;
padding: 0 6px;
border-radius: 1px;
font-size: 11px;
font-weight: normal;
height:16px;
line-height:18px;
margin-left:8px;
position:relative;
top:-1px;
}
.recruit_right dl dt.required::after{
background: #d0483e;
content: "必須";
}
.recruit_right dl dt.nini::after{
background: #bbb;
content: "任意";
}
.recruit_right dl dd{
margin-bottom:16px;
}
.recruit_right .oubo_caution{
font-size:12px;
margin-top:6px;
}
.recruit_right dl dd .radio_txt{
white-space:nowrap;
width:36%;
}
.recruit_right dl dd .textarea_01{
min-height:160px;
}
.recruit_right .form_btn{
margin:20px auto 0;
}
.recruit_right .form_btn .btn {
font-size: 18px;
padding:16px 0 13px;
min-width:100%;
}

@media only screen and (max-width: 640px) {
.recruit_wrap{
width:100%;
padding:0 1.2rem;
}
.recruit_flex{
flex-wrap:wrap;
}
.recruit_box{
width:100%;
margin-bottom:3.2rem;
}
.recruit_right{
width:100%;
}
dl.treatment > div{
font-size:1.4rem;
}
dl.treatment > div dt{
min-width:8.5rem;
}
dl.treatment > div dt span{
white-space:nowrap;
font-size:1.3rem;
padding:6px 10px 4px;
}
dl.treatment > div dd{
padding-top:0;
}
}
/* 求人メール送信後モーダル */
.modal {
width:100vw;
height:100vh;
background-color: rgba(0, 0, 0, 0.5);
position:fixed;
top:0;
left:0;
display:none;
}
.modal dl{
position:absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
padding:32px;
border-radius: 5px;
background:#fff;
}
.modal dl dt{
font-size:16px;
font-weight:bold;
margin-bottom:16px;
white-space:nowrap;
}
.modal dl dd{
white-space:nowrap;
}
@media only screen and (max-width: 640px) {
.modal dl dt{
font-size:1.8rem;
}
.modal dl dd{
font-size:1.4rem;
}
}

/* アンケート */
.enquete_wrap{
width:980px;
margin:0 auto 32px;
}

/* お問い合わせ */
.contact_wrap{
width:980px;
margin:0 auto 32px;
}

h3.sub_title{
font-size: 24px;
font-weight: bold;
margin-top: 48px;
margin-bottom: 16px;
line-height: 1.2;
}
h3.sub_title span{
font-size: 16px;
font-family: "Cormorant Garamond", serif;
display: block;
}
.contact_wrap .line_box{
padding:24px;
background:#fff;
border-radius: 16px;
margin-bottom:20px;
}
.contact_wrap .line_box dl{
display:flex;
align-items:center;
justify-content:space-between;
font-weight:600;
}
.contact_wrap .line_box dl dt{
font-size:16px;
}
.contact_wrap .line_box dl dd a{
display:inline-block;
font-size:16px;
line-height:1;
padding:12px 48px;
color:#fff;
background:#56c459;
border-radius:100px;
}
.contact_wrap .line_box dl dd a:hover{
opacity:.7;
}
@media only screen and (max-width: 640px) {
.contact_wrap .line_box{
padding:1.6rem;
border-radius:.8rem;
}
.contact_wrap .line_box dl{
display:block;
}
.contact_wrap .line_box dl dt{
font-size:1.5rem;
margin-bottom:.8rem;
}
.contact_wrap .line_box dl dd a{
font-size:1.6rem;
}
}


/* ご予約 */
.reserve_wrap{
width:980px;
margin:0 auto 32px;
}
.reserve_wrap h3.sub_title{
margin-top:16px;
}
.reserve_txt_box{
border-radius: 16px;
background: #fff;
padding: 20px;
min-height: 400px;
margin-bottom: 30px;
}
.reserve_txt_box dl{
text-align:left;
margin-bottom:24px;
}
.reserve_txt_box dl dt{
font-size:16px;
}
.reserve_txt_box dl dd{
margin-bottom:8px;
padding-left:18px;
}
.reserve_txt_box dl dd span{
color:#f33;
}
.reserve_txt_box dl dd.tel{
font-size:16px;
}
@media screen and (min-width: 640px) {
.reserve_txt_box dl dd.tel a{
pointer-events:none;
color:#000;
}
}
.reserve_txt_box .subttl{
text-align:left;
font-weight:bold;
font-size:15px;
margin-bottom:8px;
}
.reserve_txt_box .event_txt{
text-align:left;
margin-bottom:24px;
}
.reserve_txt_box .event_txt a{
color:#3f74cd;
font-size:16px;
}
.reserve_txt_box .event_txt a:hover{
opacity:.7;
}
.reserve_txt_box .event_txt a::after{
font-family: 'Material Icons Outlined';
content: '\e89e';
position:relative;
top:2px;
margin-left:5px;
}
.reserve_txt_box .reserve_caution{
text-align:left;
}
.reserve_txt_box .reserve_caution span{
color:#f33;
}

/* reCAPTCHAバッジ非表示 */
.grecaptcha-badge { visibility: hidden; }
.reCaptcha_txt{
font-size:11px;
color:#aaa;
text-align:left;
}
.reCaptcha_txt a{
color:#87b9ee;
}
@media only screen and (max-width: 640px) {
.reCaptcha_txt{
margin-top:1.6rem;
}
}


@media only screen and (max-width: 640px) {
.enquete_wrap,
.contact_wrap,
.reserve_wrap{
width:100%;
padding:0 1.2rem;
}
}
/* キャストページアンケート */
.review_form{
margin-top:32px;
}
/* フォーム関係 */
.form_wrap{
padding:24px;
background:#fff;
border-radius:16px;
}
.form_wrap > dl{
display:flex;
align-items:center;
text-align:left;
border-bottom:1px solid #dedede;
}
.form_wrap > dl:last-of-type{
border:none;
}
.form_wrap > dl dt{
min-width:30%;
font-weight:bold;
padding:20px 0;
font-size:16px;
position:relative;
}
.form_wrap > dl dt.required::after{
content:"必須";
background:#d0483e;
color:#fff;
display:inline-block;
padding:0 6px;
border-radius:1px;
font-size:11px;
font-weight:bold;
font-weight:normal;
position:absolute;
top:0;
bottom:0;
right:0;
margin:auto;
height:18px;
line-height:18px;
}
.form_wrap > dl dt.nini::after{
content:"任意";
background:#ccc;
color:#fff;
display:inline-block;
padding:0 6px;
border-radius:1px;
font-size:12px;
font-weight:normal;
position:absolute;
top:0;
bottom:0;
right:0;
margin:auto;
height:20px;
line-height:21px;
}
.form_wrap > dl dd{
flex-grow:1;
padding:20px 0 20px 20px;
}
.form_wrap > dl dd .custom_txt{
margin:0 10px;
}

.review_form .form_wrap{
width:720px;
margin:auto;
}
.review_form .form_wrap dl{
display:block;
}
.review_form .form_wrap > dl dt,
.review_form .form_wrap > dl dd{
width:100%;
}
.review_form .form_wrap > dl{
margin-bottom:10px;
border:none;
}
.review_form .form_wrap > dl dt{
padding:10px 10px 5px;
}
.review_form .form_wrap > dl dd{
padding:5px 10px 10px;
font-size:18px;
}
.review_form .form_wrap > dl dd .input_03{
width:120px;
}
.review_form .form_wrap > dl dt.nini::after{
background:none;
color:#aaa;
position:relative;
font-weight:bold;
}
.review_form .form_wrap > dl dt.required::after{
background:none;
color:#a20404;
position:relative;
font-weight:bold;
}
.review_form .form_wrap > dl dd .ten{
margin-left:5px;
}
@media only screen and (max-width: 640px) {
.review_form .form_wrap{
width:100%;
padding:0;
}
.review_form .form_wrap input[type="text"]{
width:100%;
}
.review_form .form_wrap > dl{
padding-bottom:1rem;
margin-bottom:1rem;
}
.review_form .form_wrap > dl dt{
margin-bottom:0;
}
.review_form .form_wrap .input_02{
width:50%;
}
}

/* レビューディスカウント */
.review_form_txt_wrap{
padding:20px;
border-radius:16px;
background:#fff;
margin:auto;
margin-bottom:32px;
}
.review_form_txt_wrap .ttl{
font-size:32px;
margin-bottom:16px;
line-height:1.4;
}
.review_form_txt_wrap .ttl span{
color:#c00;
}
.review_form_txt_wrap ul{
text-align:left;
padding:16px;
border-radius:8px;
border:1px solid #ccc;
margin-bottom:16px;
}
.review_form_txt_caution{
font-size:16px;
}
.review_form_ttl{
font-size:28px;
margin-bottom:8px;
}
@media only screen and (max-width: 640px) {
.review_form_txt_wrap{
padding:1.2rem;
border-radius:.8rem;
}
.review_form_txt_wrap .ttl{
font-size:2.7rem;
}
.review_form_txt_wrap ul{
font-size:1.3rem;
}
.review_form_txt_caution{
font-size:1.45rem;
}
.review_form_ttl{
font-size:2.2rem;
margin-bottom:1.6rem;
}
}

/* 共有コンテンツ用 */
.page_content_wrap{
margin-bottom:48px;
}
.page_content{
width:980px;
padding:20px;
border-radius:16px;
background:#fff;
margin:auto;
}
.page_content li:not(:last-child){
margin-bottom:16px;
}
.page_content li.kuchikomi img{
width:500px;
}
.page_content li.shinbashi img{
width:640px;
}
@media only screen and (max-width: 640px) {
.page_content_wrap{
padding:0 10px;
margin-bottom:3rem;
}
.page_content{
width:100%;
padding:1.2rem;
border-radius:.8rem;
}
.page_content li.credit img{
width:160px;
}
}

/* Firefoxのボタンの点線を消す */
input[type="button"]::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner {
border: 0px;
}
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="number"],
button,
textarea{
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
font-family:'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS P Gothic', sans-serif;
font-size:15px;
}
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="number"],
textarea{
padding:7px;
border:1px solid #ccc;
background:#fff;
border-radius: 2px;
box-sizing:border-box;
}
select {
-moz-appearance: none;
-webkit-appearance: none;
-o-appearance: none;
-ms-appearance: none;
appearance: none;
border-radius: 0;
border: 0;
margin: 0;
padding: 0;
background: none transparent;
vertical-align: middle;
font-size: inherit;
color: inherit;
box-sizing: content-box;
}
select::-ms-expand {
display: none;
}
.input_01{
width:100%;
}
.textarea_01{
width:100%;
min-height:300px;
}
.form_btn{
margin:32px auto;
}
.form_btn .btn{
background:#232323;
font-size:20px;
font-family: "Noto Serif JP", serif;
font-weight:bold;
border-radius:100px;
padding:19px 0;
color:#fff;
letter-spacing:.2rem;
min-width:400px;
line-height:1;
cursor:pointer;
border:none;
}

/* プルダウン */
.custom {
overflow: hidden;
display: inline-block;
*display: inline;
*zoom: 1;
position: relative;
border-radius: 1px;
border: 1px solid #ccc;
 /* box-shadow: 0 2px 0 #AAA; */
background-color: white;
vertical-align:bottom;
}
.custom > select {
width: 130%;
padding: 0.6em 5em 0.6em 0.6em;
font-size:15px;
}
.custom:after{
position: absolute;
top: 0;
bottom: 0;
right: 0;
width: 2.4em;
display: block;
content: "";
background:url(/img/common/select.png) center no-repeat;
background-size:10px 10px;
 /*
  border-left:1px solid #dedede;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAGFBMVEUAAAAZJCYWISIYIyQYIiUWIiIYIyQYIiXh0rToAAAACHRSTlMA/hTRqiinvwFkb0sAAABCSURBVHjajchBDsAgDAPBOJDw/x+XVN0icQGfPGs3i+2GEqeiLCXWLENzvdzrDfP2ls/NjfKbgimYglfBq2Dm+LwHguMA235EdKYAAAAASUVORK5CYII=") center no-repeat;
 */
pointer-events: none;
}
/* ラジオボタン */
.radio{
position: absolute;
opacity: 0;
z-index: -1;
}
.radio + .radio-icon:before {
content: "";
display:inline-block;
width:20px;
height:20px;
background:url(/img/common/radio.png) no-repeat;
background-size:20px 20px;
position:relative;
top:5px;
}
.radio:checked + .radio-icon:before {
background:url(/img/common/radio_on.png) no-repeat;
background-size:20px 20px;
}
.radio_txt{
display:inline-block;
line-height:2;
padding-right:16px;
width : calc(100% / 4 - 8px) ;
}

/* チェックボックス */
.checkbox {
display: none;
}
.checkbox + .checkbox-icon:before {
content: "";
display:inline-block;
width:20px;
height:20px;
background:url(/img/common/checkbox.png) no-repeat;
background-size:20px 20px;
position:relative;
top:5px;
margin-right:5px;
}
.checkbox:checked + .checkbox-icon:before {
background:url(/img/common/checkbox_on.png) no-repeat;
background-size:20px 20px;
margin-right:5px;
}
.checkbox-icon{
white-space: nowrap;
}
.checkbox_txt{
display:inline-block;
line-height:2;
padding-right:16px;
width : calc(100% / 3 - 8px) ;
}
@media only screen and (max-width: 640px) {
.form_wrap{
padding:2rem 1.6rem;
}
.form_wrap > dl{
display:block;
padding-bottom:2.2rem;
margin-bottom:2rem;
border-bottom:1px dotted #bbb;
}
.form_wrap > dl dt{
width:100%;
padding:0;
margin-bottom:.7rem;
font-size:1.6rem;
}
.form_wrap > dl dt.required::after{
font-size:1rem;
font-weight:bold;
position:relative;
height:16px;
line-height:17px;
margin-left:7px;
top:-2px;
}
.form_wrap > dl dd{
width:100%;
padding:0;
font-size:1.4rem;
}
.form_wrap > dl dd .form_flex{
display:flex;
}
.form_wrap > dl dd .form_flex > div:nth-child(2){
margin-left:1rem;
}
.checkbox_txt,
.radio_txt{
width:100%;
padding-right:0;
}
.form_btn{
margin-bottom:0;
}
.form_btn .btn{
min-width:100%;
font-size:1.8rem;
}
}
/* SPフッターボタン */
@media screen and (min-width: 640px) {
.footer_btn{
display:none !important;
}
}
@media screen and (max-width: 640px) {
.footer_btn{
display:block;
padding:.5rem 0;
position:sticky;
bottom:0;
background:rgba(0,0,0,.7);
z-index:99;
}
.footer_btn p a{
display:flex;
justify-content:center;
width:80%;
margin:0 auto 4px;
background:#232323;
font-family: "Cormorant Garamond", serif;
font-size:2.4rem;
font-weight:700;
letter-spacing:.2rem;
color:#fff;
border-radius:100px;
padding:10px 0;
line-height:1;
}
.footer_btn p a::before{
font-family: 'Material Icons';
content: '\e0cd';
margin-right:3px;
position:relative;
top:1px;
}
.footer_btn span{
font-size:1.4rem;
font-weight:bold;
}
.footer_btn ul{
display:flex;
}
.footer_btn ul li{
width : calc(100% / 5) ;
}
.footer_btn ul li a{
display:block;
line-height:1.2;
padding:.5rem 0;
font-weight:bold;
font-size:1.1rem;
color:#fff;
}
.footer_btn ul li a::before{
font-family: 'Material Icons';
content: '\e0cd';
display:block;
font-size:2.4rem;
}
.footer_btn ul li.tel{
position:relative;
}
.footer_btn ul li.tel a{
width:100%;
aspect-ratio:1;
background:#a20404;
color:#fff;
border-radius:100px;
position:absolute;
bottom:-1rem;
left:0;
border:3px solid #fff;
display:flex;
align-items:center;
justify-content:center;
flex-direction:column;
}
.footer_btn ul li.tel a::before{
content: "phone_in_talk";
animation: rotateY-anim 2s linear infinite;
}
/* くるくるアニメ */
@keyframes rotateY-anim {
  0% {
    transform: rotateY(0deg);
  }
  50% {
    transform: rotateY(0deg);
  }
  100% {
    transform: rotateY(360deg);
  }
}
.footer_btn ul li.contact a::before{
content: '\e0e1';
}
.footer_btn ul li.reserve a::before{
content: '\ea0a';
}
.footer_btn ul li.event a::before{
content: '\e878';
}
.footer_btn ul li.rec a::before{
content: '\e55a';
}
.footer_btn ul li.ranking a::before{
content: '\e8d0';
}
.footer_btn ul li.line a::before{
font-family: 'Material Icons Outlined';
content: '\e0d8';
}
.footer_btn ul li.top a::before{
content: '\f182';
}
}
/* フッター */
#footer{
padding:50px;
background:#000;
color:#aaa;
}
#footer .logo img{
width:200px;
height:auto;
margin-bottom:20px;
}
#footer .footnav{
display:flex;
justify-content:center;
flex-wrap:wrap;
margin:0 auto 32px;
max-width:1100px;
}
#footer .footnav li:not(:last-child)::after{
content:"｜";
color:rgba(255,255,255,.4)
}
#footer .footnav a{
color:#aaa;
}
#footer p{
font-size:13px;
}
@media screen and (max-width: 640px) {
#footer{
padding:50px 0;
}
#footer .logo img{
width:18rem;
}
#footer .footnav{
font-size:1.1rem;
padding:0 1.2rem;
}
#footer p{
font-size:1.15rem;
}
#footer p.copyright{
padding:0 1.4rem;
}
}
/* 認証ページ */
.index_wrap{
background:url(/img/common/bg_index.png) top center no-repeat;
background-size:cover;
height:800px;
margin-bottom:48px;
}
.index_wrap h1{
font-size:13px;
padding:10px 0;
color:#fff;
}
.index_wrap .cover_wrap{
display:flex;
flex-direction:column;
justify-content:flex-end;
width:980px;
height:760px;
position:relative;
margin:auto;
}
.index_wrap .cover_wrap .cover_txt{
position:absolute;
top:20px;
right:-14px;
transform:rotate(7deg);
}
.index_wrap .cover_wrap .cover_txt_2{
position:absolute;
top:20px;
left:-14px;
transform:rotate(-7deg);
}
.index_wrap .cover_wrap .cover_txt img,
.index_wrap .cover_wrap .cover_txt_2 img{
width:160px;
}
.index_wrap .logobox{
margin-bottom:24px;
}
.index_wrap .logo img{
width:480px;
height:auto;
}
.index_wrap .tel img{
width:560px;
}
.index_wrap .btnbox{
display:flex;
justify-content:center;
align-items:center;
margin:0 auto;
padding-bottom:64px;
}
.index_wrap .btnbox li:nth-of-type(2){
margin:0 20px;
}
.index_wrap .btnbox img{
width:50px;
filter: grayscale(100%) invert(100%);
}
.index_wrap .btnbox a{
border:2px solid #fff;
padding:20px 40px;
line-height:1.2;
display:block;
background:rgba(0,0,0,.5);
color:#fff;
}
.index_wrap .btnbox a span{
font-size:40px;
font-family: "Cormorant Garamond", serif;
font-weight:600;
display:block;
}
.index_wrap .btnbox li.enter a:hover{
background:#000;
color:#fff;
}
.index_wrap .btnbox li.leave a{
color:#777;
border-color:#aaa;
}
.index__wrap .linkbox{
margin-bottom:32px;
}
.index__wrap .linkbox li{
margin-bottom:10px;
}
.index__wrap .linkbox li p{
font-size:12px;
}
.index_shinbashi_bnr{
margin:32px auto;
}
.index_shinbashi_bnr img{
max-width:640px;
}
.index_widget{
display:flex;
justify-content:center;
gap:0 20px;
margin-bottom:32px;
}
.index_widget li{
width:320px;
}


@media screen and (max-width: 640px) {
.index_wrap{
height:68rem;
background:url(/img/common/bg_sp.png) top center no-repeat;
background-size:cover;
}
.index_wrap h1{
color:#fff;
}
.index_wrap .cover_wrap{
width:100%;
height:64rem;
}
.index_wrap .cover_wrap .cover_txt{
right:.8rem;
top:0;
}
.index_wrap .cover_wrap .cover_txt_2{
left:-.8rem;
top:0;
}
.index_wrap .cover_wrap .cover_txt img,
.index_wrap .cover_wrap .cover_txt_2 img{
width:9.4rem;
}
.index_wrap .btnbox{
padding-bottom:2rem;
}

.index_wrap h1{
font-size:1.2rem;
padding:10px 0;
overflow:hidden;
}
.index_wrap h1 span{
animation: marquee 10s linear infinite;
transform: translateX(100%);
display:block;
white-space:nowrap;
}
@keyframes marquee {
  0%   {transform: translateX(100%); }
  100% { transform: translateX(-100%); }
}
.index_txt{
padding:0 1.4rem;
font-size:1.3rem;
}
.index_wrap .logobox{
margin-bottom:1.2rem;
}
.index_wrap .logo img{
width:28rem;
height:auto;
}
.index_wrap .logobox .tel{
padding:0 1.4rem;
}
.index_wrap .logobox .tel img{
width:100%;
}
.index_wrap .btnbox li:nth-of-type(2){
margin:0 10px;
}

.index_wrap .btnbox a{
padding:14px 24px 13px;
font-size:1.3rem;
}
.index_wrap .btnbox a span{
font-size:2.8rem;
}
.index__wrap .linkbox{
padding:0 10px;
}
.index_shinbashi_bnr{
padding:0 10px;
}
.index_shinbashi_bnr img{
max-width:100%;
}
.index_wrap .linkbox li p{
font-size:1rem;
}
.index_widget{
display:block;
padding:0 1.4rem;
}
.index_widget li{
width:100%;
}
.index_widget li:not(:last-child){
margin-bottom:1.4rem;
}
}






