/** style.css */

/* ------------------ */
/*        main        */
/* ------------------ */

@charset "UTF-8";

@media screen and (max-width:767px) {

    /* ここにSP向けのCSS指定 */
    .pc,
    #pc {
        display: none !important;
    }
}

@media screen and (min-width:768px) {

    /* ここにPC向けのCSS指定 */
    .sp,
    #sp {
        display: none !important;
    }

    .profile_left_area .thumnail {
        margin-bottom: 2vw;
    }
}

* {
    box-sizing: border-box;
}

html {
    scroll-padding-top: 80px;
}

select {
    border-radius: 0;
}

.index_wrapper video {
    width: 100%;
    margin-bottom: 3vw;
}

.qa_box dt::before {
    content: "Q.";
    font-size: 1.4vw;
    margin-right: 1vw;
}

.qa_box dt {
    font-size: 1.1vw;
}

.qa_box dd::before {
    content: "A.";
    font-size: 1.2vw;
    margin-right: 0.5vw;
}

.qa_box dd {
    margin: 1vw 0 2vw 1vw;
    font-size: 1vw;
}

/* アコーディオンのオーバーレイ */
#overlay {
    display: none;
    width: 100%;
    height: 100%;
    text-align: center;
    position: fixed;
    top: 0;
    z-index: 100;
    background: rgb(206 206 206 / 70%);
}

#overlay.active {
    display: block;
}

#text {
    font-size: 40px;
    color: #eee;
    padding-top: 400px;
    vertical-align: middle;
    font-weight: bold;
}

#close {
    background: #eeeeee url(images/ico.jpg) no-repeat 10px center;
    color: #717171;
    width: 70px;
    margin: auto;
    text-align: center;
    font-size: 15px;
    padding: 5px 0 5px 10px;
    border-radius: 3px;
    cursor: pointer;
}

.media_banner_area img {
    max-width: 100vw;
}

/*========= ナビゲーションのためのCSS ===============*/

#g-nav {
    position: fixed;
    z-index: 999;
    top: 0;
    right: -120%;
    width: 20%;
    height: 100vh;
    transition: all 0.4s;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
    background: #fff;
    color: #9c8a15;
    padding: 0 2%;
    padding-bottom: 4vw;
}

#g-nav::-webkit-scrollbar {
    display: none;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive {
    right: 0;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list {
    /*ナビの数が増えた場合縦スクロール*/
    /* position: fixed;
    z-index: 999;
    width: 100%;
    height: 100vh;
    overflow-y: scroll; */
}

/*ナビゲーション*/
#g-nav ul {
    /* position: absolute;
    z-index: 999;
    width: 100%; */
}

/*リストのレイアウト設定*/

#g-nav li {
    list-style: none;
    padding: 0.6vw 1vw 0;
}

.nav_shop_info {
    display: grid;
    grid-template-columns: 30% 1fr;
    gap: 0.5vw;
}

.nav_shop_info dt {
    color: #fff;
    background: #9c8a15;
    font-size: 0.9vw;
    padding: 0.2vw;
    border-radius: 0.2vw;
    text-align: center;
}

.nav_shop_info dd,
.nav_shop_info dd a {
    color: #462b01;
    font-size: 1.2vw;
    display: flex;
    align-items: flex-end;
}

.reservation_form {
    width: 35vw;
    margin: 3vw auto;
}

.reservation_form .tempTitle {
    margin-bottom: 2vw;
}

#wpcf7-f36-o1 {
    padding: 0 2vw;
}

.reservation_form input {
    width: 14vw;
    border: solid 1px #000;
    padding: 0.3vw;
}

.reservation_form p {
    text-align: center;
    margin-bottom: 1.5vw;
}

.reservation_form label {
    display: grid;
    grid-template-columns: 35% 1fr;
    align-items: center;
}

.reservation_form select {
    border: solid 1px #000;
    width: 14vw;
    text-align: start;
    padding: 0.3vw;
}

.reservation_form .wpcf7-submit {
    text-align: center;
    width: 10vw;
    margin: auto;
    padding: 0.3vw;
    display: block;
}

/* #g-nav li a {
    color: #666;
    text-decoration: none;
    padding: 0 2vw 1.5vw;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    /* font-weight: bold; */
/* width: 100%;
    text-align: left;
    border-bottom: 1px dashed #666;
    overflow: scroll;
} */

ul.big_list {
    letter-spacing: 0.1vw;
}

.big_list a {
    display: block;
    color: #9c8a15;
    font-size: 1.5vw;
    position: relative;
    border-bottom: solid 1px;
    padding-bottom: 0.5vw;
    margin-bottom: 1vw;
}

.big_list a i {
    position: absolute;
    top: 0.5vw;
    right: 0;
}

ul.g-nav-address {
    padding: 3vw 0 8.3vw;
    letter-spacing: 0.2vw;
}

#g-nav li.big_list_title {
    padding: 1.4vw 0;
    font-size: 1.3vw;
    background: #1d262d;
    border-radius: 0 0 0 50px;
    font-weight: bold;
}

#g-nav li.big_list_title.big_list_title_sub {
    border-radius: 50px 0 0 50px;
}

.big_list_title:before {
    content: "";
    width: 100px;
    height: 100px;
    background: #1d262d;
    color: white;
}

li.big_list_title span {
    display: block;
    font-size: 0.7vw;
    margin-top: 0.4vw;
}

.castPanel .staff_pr,
.castPanel ._size {
    font-size: 0.8vw;
    margin: 0.6vw 0;
    font-weight: 500;
}

.img_bland dl {
    width: 72%;
    margin: 0 auto 1vw;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1vw;
}

.castPanel .staff_pr {
    height: 1.7vw;
}

ul.big_list_contents {
    width: 74%;
    padding: 0vw 3vw 2vw;
    margin: 0 0 0 auto;
    background: #3f4952;
    font-size: 1.1vw;
}

#g-nav ul.big_list_contents li {
    list-style: none;
    text-align: center;
    padding: 2vw 0 0.5vw;
    text-align: left;
    border-bottom: 1px solid #fff;
    font-family: serif;
}

/* クレジットカード部分 */
.p-creditGuide__ttl {
    background: url(https://parts.akicos-group.jp/credit-card/img/module/p_credit_guide_icon_card.png) no-repeat 10px 50%;
    width: 310px;
    margin: 0px auto;
    color: #6B4FCA;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 2px;
    border-bottom: 1px dotted #ccc;
    padding: 10px 0 10px 50px;
}

.slick-prev,
.slick-next {
    display: none !important;
}

img.slide-arrow.prev-arrow.slick-arrow {
    width: 1.5vw;
    position: absolute;
    left: 0.7vw;
    top: 7vw;
}

img.slide-arrow.next-arrow.slick-arrow {
    width: 1.5vw;
    position: absolute;
    right: 0.7vw;
    top: 7vw;
}

.slider-nav.slick-initialized.slick-slider {
    width: 90%;
    margin: 0 auto;
}


@media screen and (min-width: 768px) {
    .p-creditGuide__ttl h2 {
        background: none !important;
        border: none !important;
        color: inherit !important;
        font-size: 20px !important;
        margin: 0px !important;
        padding: 0px !important;
    }

    .media_banners .width_200 img {
        width: 100%;
        height: 40px;
    }

    .media_banners .square img {
        width: auto;
        height: auto;
    }

}

@media screen and (max-width: 768px) {
    .p-creditGuide__ttl h2 {
        font-size: inherit !important;

    }

    .castPanel .staff_pr {
        height: 5vw;
    }

    .img_bland dl {
        width: 95%;
        margin-bottom: 5vw;
        gap: 3vw;
    }

    .confirm .form_common {
        width: 85vw;
    }

    .confirm .form_data {
        line-height: 2.5vw;
        border: none;
        padding: 4vw;
    }



}

.finish_trigger {
    color: #000;
}


.p-creditGuide__description {
    padding: 30px 40px 0 40px;
    line-height: 1.3;
}



.p-creditGuide__button {
    margin: 30px 40px 0 40px;
}

.p-creditGuide__button a {
    text-decoration: none;
    font-size: 22px;
    display: block;
    text-align: center;
    padding: 20px;
    color: #FFF;
    border-radius: 5px;
    background: -webkit-gradient(linear, left top, left bottom, from(#EC3E3E), to(#B52222));
    background: -webkit-linear-gradient(top, #EC3E3E, #B52222);
    background: linear-gradient(to bottom, #EC3E3E, #B52222);
}

.p-creditGuide__button span {
    border-top: 1px dotted #FFF;
    width: 300px;
    padding-top: 8px;
    margin: 5px auto 0 auto;
    display: block;
    font-size: 11px;
}

.p-creditGuide__item {
    text-align: center;
    margin-top: 40px;
}

.p-creditGuide__item p {
    padding: 10px;
    font-weight: bold;
}

.p-creditGuide__item li {
    display: inline-block;
    margin: 0px 5px;
}

.p-creditGuide__method {
    margin-top: 15px;
}

.p-creditGuide__method__unit {
    width: 41%;
    margin-left: 2%;
    float: left;
    background: #FFF;
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 20px;
}

.docframe h3 {
    margin: 20px 0 10px 0;
    padding: 0 0 0 20px;
    color: #09c;
    background: transparent url(../img/b_blue.png) 0 2px no-repeat;
    min-height: 12px;
}

.p-creditGuide__method__ttl--secondary {
    color: #809E20 !important;
}

.p-creditGuide__method__ttl {
    margin: 0px !important;
    font-size: 16px;
    font-weight: bold;
    border-radius: 3px;
    border: 1px solid #CCC;
    padding: 8px !important;
    text-align: center;
    background: -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), to(#E2E2E2)) !important;
    background: -webkit-linear-gradient(top, #FFFFFF, #E2E2E2) !important;
    background: linear-gradient(to bottom, #FFFFFF, #E2E2E2) !important;
}

.p-creditGuide__method__unit table {
    border-collapse: separate;
    border-spacing: 0px 20px;
    color: #000;
}

button.settlementForm {
    background: #fff;
    padding: 10px;
    font-size: 20px;
    width: 38vw;
    border-radius: 10px;
    font-weight: bold;
    color: #000;
    border-bottom: 6px solid #ccc;
}

.creditGuide__authentication__no {
    text-align: center;
    margin-top: 40px;
}

.p-creditGuide__method__unit {
    width: 63vw;
    margin-left: 2%;
    float: left;
    background: #FFF;
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 20px;
}

.p-creditGuide__button {
    text-align: center;
}

.p-creditGuide__method__unit th {
    width: 10%;
    vertical-align: middle;
    padding-right: 5px;
    border-right: 1px dotted #CCC;
}

.p-creditGuide__method__unit td {
    font-size: 13px;
    padding: 5px 8px;
    line-height: 1.2;
}

.p-creditGuide__method:after {
    content: "";
    display: block;
    clear: both;
}

.p-creditGuide__info {
    margin-top: 20px;
    margin: 2%;
    padding: 20px;
    background: #FFF;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.p-creditGuide__info__unit01 {
    margin-top: 10px;
    width: 500px;
    margin: 0px auto;
}

.p-creditGuide__info__unit02 {
    color: #80602D;
    padding: 10px;
    border: 1px dotted #80602D;
    margin-top: 15px;
    font-size: 12px;
    line-height: 1.2;
}

.docframe h3 {
    margin: 20px 0 10px 0;
    padding: 0 0 0 20px;
    color: #09c;
    background: transparent url(../img/b_blue.png) 0 2px no-repeat;
    min-height: 12px;
}

.p-creditGuide__info__ttl {
    background: none !important;
    font-size: 16px;
    text-align: center;
    border-bottom: 1px solid #000;
    padding-bottom: 10px !important;
}

.p-creditGuide__info__ttl::before {
    content: "◆";
}

.p-creditGuide__info__unit01 ul {
    margin-top: 15px;
    font-size: 15px;
    line-height: 1.3;
}

.p-creditGuide__info__unit01 ul a {
    color: #0070FF;
}

.p-creditGuide__info__unit01__tell {
    font-size: 18px;
}

.p-creditGuide__info__unit02 {
    color: #80602D;
    padding: 10px;
    border: 1px dotted #80602D;
    margin-top: 15px;
    font-size: 12px;
    line-height: 1.2;
}

li {
    list-style-type: none;
}

a:focus,
a:visited,
a:link {
    text-decoration: none;
}

.p-creditGuide__item p {}

.staff_pr,
._size {
    font-size: 0.8vw;
    /* margin: 0.6vw 0 0.8vw; */
}

/*========= ボタンのためのCSS ===============*/
.openbtn {
    position: fixed;
    z-index: 11;
    top: 0.9vw;
    right: 0.6vw;
    cursor: pointer;
    width: 2.9vw;
}

/*×に変化*/
.openbtn span {
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 1vw;
    height: 0.2vw;
    border-radius: 0.7vw;
    background-color: #fff;
    width: 1.9vw;
}

/* スクロールバーセレクタ */
.staff_comment_main::-webkit-scrollbar-thumb {
    background: rgb(238, 77, 222);
    /* スクロールバーの色 */
}

.openbtn span:nth-of-type(1) {
    top: 0.6vw;
}

.openbtn span:nth-of-type(2) {
    top: 1.25vw;
}

.openbtn span:nth-of-type(3) {
    top: 1.9vw;
}

.openbtn.active span:nth-of-type(1) {
    top: 0.9vw;
    left: 0.7vw;
    transform: translateY(6px) rotate(-45deg);
    /* width: 2.5vw; */
    opacity: 0;
}

.openbtn.active span:nth-of-type(2) {
    opacity: 0;
}

.openbtn.active span:nth-of-type(3) {
    transform: translateY(-6px) rotate(45deg);
    /* width: 2.5vw; */
    top: 1.65vw;
    left: 0.8vw;
    opacity: 0;
}





a {
    color: #000;
    text-decoration: none;
    width: 100%;
}

body {
    color: #fff;
    font-family: serif;
    /* overflow: hidden; */
}

body::before {
    content: "";
    width: 100vw;
    height: 100vh;
    display: block;
    position: fixed;
    background: url(http://pure.on-wave.net/wp-content/themes/test/img/base/body_bg.webp) 50% 0%;
    background-position: top;
    background-size: cover;
    top: 0;
    left: 0;
    z-index: -1;
}

@media(max-width:768px) {
    body::before {
        background-size: contain;
    }
}

body img {
    width: 100%;
}

header {
    text-align: center;
    background: rgba(256, 256, 256, 0.8);
    display: flex;
    height: 4.5vw;
    align-items: center;
    justify-content: space-around;
    position: fixed;
    top: 0;
    z-index: 10;
    width: 100%;
}

header ul {
    display: flex;
    align-items: center;
    font-size: 1vw;
}

header h1 img {
    width: 12.5vw;
}

header ul a {
    color: #9c8a15;
    margin-right: 1.5vw;
    padding-right: 1.5vw;
}

.header_main_title {
    font-size: 1.3vw;
    letter-spacing: 0.1vw;
}

.header_sub_title {
    font-size: 0.8vw;
    letter-spacing: 0.1vw;
}

header ul a:last-of-type {
    border-right: 0;
}

.index_wrapper article {
    text-align: center;
}

p._tbwh {
    font-size: 1.3vw;
    margin: 1vw 0 0;
}


.confirm_contents p.confirm_trigger {
    background: #000;
    font-size: 1.6vw;
    padding: 1vw 0;
}

.pro_sub_head {
    display: flex;
    justify-content: space-between;
    width: 97%;
    margin: 0 auto;
    margin-bottom: 0;
    border-bottom: none;
    padding-bottom: 1.1vw;
    font-size: 2.1vw;
    letter-spacing: 0;
    align-items: end;
}

.pro_sub_head li span {
    color: #e65177;
    font-size: 2.6vw;
}

.pro_sub_head .sub_text {
    font-size: 1.2vw;
}

#g-nav li#sitemap_close_btn {
    border: 1px solid #000;
    width: 6vw;
    padding-bottom: 0.5vw;
    margin: 0 0 0 auto;
    margin-right: 3vw;
}

.caution {
    margin-bottom: 0.7vw;
    line-height: 1.3;
    letter-spacing: 0.1vw;
    font-size: 0.77vw;
    font-weight: 600;
}

.enter_btn {
    width: 32vw;
    position: absolute;
    bottom: 5vw;
    left: 0;
    right: 0;
    margin: auto;
    background: #212227;
    height: 5vw;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 3vw;
    border: solid 3px;
}

.enter_btn a {
    color: #fff;
}

.indexStoreIntroduction {
    background: url({{$FILE_PATH}}/img/index/girlback.jpg) 50% 0% no-repeat !important;
    margin-bottom: 20px;
    background-attachment: fixed !important;
}

.indexStoreIntroduction .Introduction_description {
    margin: auto;
    font-size: 12px;
    line-height: 24px;
    text-align: center;
    /* border-bottom: 1px solid #8c8c8c; */
}

.indexStoreIntroduction .Introduction_description h2 {
    margin: 70px 0 20px;
    font-size: 1.6vw;
    color: #FFEFE3;
    letter-spacing: 0.18em;
    text-align: center;
    line-height: 1.3em;
    text-shadow: 3px 2px 5px #000000;
}

.indexStoreIntroduction .Introduction_description .img-title {
    margin-bottom: 30px;
}

.indexStoreIntroduction .Introduction_description .div-description_title {
    text-align: left;
    display: flex;
    justify-content: center;
}

.text_yellow {
    color: #ffd617;
}

.concept_img {
    width: 40vw;
    margin: 0 auto;
}

.div-description_title_2 {
    width: 70vw;
    margin: 0 auto;
}

.indexStoreIntroduction .Introduction_description h3 {
    font-size: 1.5vw;
    color: #A3956E;
    text-align: center;
    font-weight: bold;
    text-shadow: 3px 2px 5px #ffffff;
    line-height: 35px;
}

.indexStoreIntroduction .Introduction_description .div-description_sub_title {
    padding: 10px 10px 0 10px;
    margin-top: -1.5vw;
}

.indexStoreIntroduction .Introduction_description p {
    text-align: center;
    font-size: 1.3vw;
    padding: 0 0 10px;
    margin: 0 0 10px;
    line-height: 1.8em;
    color: #fff7c2;
    font-weight: 600;
    letter-spacing: 0.1vw;
}

.indexStoreIntroduction .Introduction_description {
    padding: 1vw;
    width: 77vw;
    color: #737373;
    font-size: 0.8em;
}

.index_wrapper {
    padding-bottom: 1vw;
    position: relative;
}

.index_wrapper h1 {
    position: relative;
    margin-bottom: 3vw;
}

.wrapper {}

.address_area_index {
    position: absolute;
    bottom: 24%;
    left: 0;
    right: 0;
    margin: auto;
    height: 23%;
    font-size: 2vw;
    width: 24%;
    text-align: left;
}

.address_area_index div {
    color: #000;
    margin-bottom: 1vw;
    display: grid;
    grid-template-columns: 9vw 1fr;
    gap: 1vw;
}

.address_area_index p,
.address_area_index a {
    display: flex;
    align-items: center;
    height: 2.4vw;
}

.y_box {
    background: #a08f1e;
    color: #fff;
    font-size: 1.6vw;
    width: 9vw;
    display: inline-block;
    text-align: center;
    height: 2.4vw;
    padding: 0.5vw;
    border-radius: 0.5vw;
    margin-right: 0.5vw;
    justify-content: center;
}

.top_mv {
    margin-bottom: 3vw;
    position: relative;
}

.top_mv .address_area {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 4.5vw;
    color: #462b01;
    background: #fff;
    width: 100%;
    padding: 1vw;
    font-size: 1.9vw;
    margin-top: -0.1vw;
}

.top_mv .address_area a,
.top_mv .address_area p {
    color: #462b01;
}

.calendar_title h5 {
    font-size: 1.4vw;
    letter-spacing: 2px;
    font-weight: bold;
}

footer {
    background: #7d7d7d;
    padding: 2vw;
    margin-top: -0.1vw;
}

.site_map {
    width: 70vw;
    margin: 0 auto 3vw;
}

.site_map ul {
    display: flex;
    justify-content: center;
    gap: 0.5vw;
    font-size: 1vw;
    flex-wrap: wrap;
}

.site_map ul li {
    border-right: solid 1px #fff;
    padding: 0.3vw 0.5vw 0.3vw 0;
}

.site_map ul li a {
    color: #fff;
}

.site_map ul li:last-child {
    border-right: none;
}

.copyright {
    width: 90vw;
    margin: 0 auto;
}

.copyright p {
    text-align: center;
    font-size: 0.8vw;
    margin-bottom: 1vw;
}

.copyright h5 {
    text-align: center;
    font-size: 0.8vw;
}




.top_mv p.pre_intro {
    position: absolute;
    top: 4.2vw;
    left: 12.6vw;
    letter-spacing: 0.15vw;
}

.top_mv p.shop_post_code {
    position: absolute;
    top: 11.8vw;
    left: 0;
    letter-spacing: 0.15vw;
    font-size: 1vw;
    width: 20.7vw;
    text-align: center;
}

.top_mv p.shop_address {
    position: absolute;
    top: 12.1vw;
    left: 6.6vw;
    letter-spacing: 0.15vw;
    font-size: 1vw;
    width: 32.7vw;
    text-align: center;
}

.top_mv .shop_logo {
    position: absolute;
    top: 6.3vw;
    left: 6.5vw;
    width: 33.3vw;
}


.top_mv .address_area ._qr img {
    width: 2.9vw;
}



.info_link_area ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.5vw;
    width: 80%;
    margin: 0 auto;
}




.index_wrapper .address_area {
    top: 15.6vw;
    left: 7.2vw;
    letter-spacing: 0.1vw;
    display: flex;
    align-items: center;
}




.index_wrapper p.pre_intro {
    top: 30.5vw;
    left: 0;
    letter-spacing: 0.15vw;
    right: 0;
    margin: 1.5vw auto;
    font-size: 1vw;
}

.index_wrapper .address_area {
    top: 39.6vw;
    left: 0;
    letter-spacing: 0.1vw;
    display: flex;
    align-items: center;
    right: 0;
    margin: 1.5vw auto 0.7vw;
    width: 50vw;
    justify-content: center;
    flex-direction: row;
    align-items: flex-start;
}

.index_wrapper .shop_logo {
    top: 32vw;
    left: 0;
    width: 33.3vw;
    right: 0;
    margin: auto;
}

.index_wrapper p.shop_post_code {
    position: absolute;
    top: 36.5vw;
    left: 21vw;
    letter-spacing: 0.15vw;
    font-size: 1vw;
    width: 32.7vw;
    text-align: center;
}

.index_wrapper p.shop_address {
    top: 37.9vw;
    left: 0;
    letter-spacing: 0.15vw;
    font-size: 1vw;
    width: 32.7vw;
    text-align: center;
    right: 0;
    margin: 1.5vw auto;
}

.index_wrapper .address_area ._recept {
    margin-right: 1vw;
    letter-spacing: 0vw;
}

.index_wrapper .address_area ._recept span {
    display: block;
    font-size: 1.2vw;
    line-height: 1.5;
}

.index_wrapper .address_area ._qr img {
    width: 2.9vw;
}

.index_wrapper .address_area ._recept span._recept_text {
    background: #000;
    padding: 0.2vw;
    font-size: 0.8vw;
    border-radius: 0.6vw;
}

.openbtn.active img {
    width: 2vw;
    margin: 0.3vw 0.3vw 0.3vw 0.6vw;
}



.index_contents .common_group_banner {
    width: 60vw;
    margin: 10.1vw auto;
}



.index_contents footer .slide_banner {
    display: none;
}





.mv_btn_area {
    display: flex;
    position: absolute;
    top: 20.6vw;
    left: 8.6vw;
    width: 28.1vw;
    justify-content: space-between;
}

.mv_btn_area p {
    background: #f983a3;
    padding: 0.8vw 1vw;
    width: 11.6vw;
    text-align: center;
    /* border-radius: 0.7vw; */
    letter-spacing: 0.05vw;
    font-size: 1vw;
    color: #fff;
}

.mv_btn_area_pcNav {
    display: flex;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 12.6vw;
    width: 28.1vw;
    justify-content: space-between;
}

.mv_btn_area_pcNav p {
    background: #f983a3;
    padding: 0.8vw 1vw;
    width: 11.6vw;
    text-align: center;
    /* border-radius: 0.7vw; */
    letter-spacing: 0.05vw;
    font-size: 1vw;
    color: #fff;
}

section.top_three_content_area {
    width: 94%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    padding-bottom: 3vw;
    overflow: hidden;
    margin-bottom: 0.4vw;
}

.close_btn {
    display: flex;
    justify-content: end;
    padding: 1vw 0;
    margin-bottom: 1vw;
}

.close_btn img {
    width: 2.9vw;
}

.top_newcommer_area {
    width: 60vw;
    margin: 0 auto;
}

.icon_logo {
    width: 17vw;
    margin-left: 8vw;
    margin-bottom: 1.3vw;
}

.top_twitter_box {
    overflow-y: scroll;
    height: 19vw;
}


.content_tilte {
    color: #462b01;
    text-align: center;
    margin-bottom: 1vw;
}

.content_tilte p {
    font-size: 2vw;
    margin-bottom: 0.5vw;
}

.content_tilte span {
    font-size: 1.2vw;
}

.page_title {
    width: 60vw;
    color: #462b01;
    text-align: center;
    margin: 3px auto 2.5vw;
    padding-top: 2vw;
}

.page_title p {
    font-size: 2vw;
    margin-bottom: 0.1vw;
}

.page_title span {
    font-size: 1.2vw;
    margin-bottom: 1vw;
    display: block;
}

.top_grid_box {
    width: 60vw;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3vw;
    margin: 0 auto;
}


.top_event_box.pc {
    width: 60vw;
    margin: auto;
}

ul.top_newcommer_slider .castPanel__datas {
    letter-spacing: 0.2vw;
    background: #fff;
    color: #000;
}

.widgetShift h2 {
    margin-left: 1.7vw;
    margin-bottom: -1vw;
}


section.top_three_content_area h2 span,
section.top_media_area h2 span {
    display: block;
}

.topics_area {
    width: 100%;
    margin: 0 auto;
}

.news_wrapper {
    background: #fff;
    border: #000 solid 1px;
    overflow-y: scroll;
    height: 19vw;
    color: #000;
    padding: 1.5vw;
}

.news_box h3 {
    font-size: 1.3vw;
    padding-left: 1vw;
    border-left: solid 3px #dcbb75;
    margin-bottom: 1vw;
}

.news_date {
    color: #c77551;
    font-size: 1vw;
    margin-bottom: 1vw;
}

.news_text {
    color: #515151;
    font-size: 1vw;
    margin-bottom: 1vw;
}



.top_event_box {
    padding: 1vw 0 1.1vw;
    background: #fff;
    box-sizing: border-box;
    border: solid 1px #403d21;
}

.slick-slide .castPanel {
    margin: 0 0.5vw;
}

.castPanel {
    position: relative;
}

span.castPanel.castpanel__debut {
    position: absolute;
    text-align: center;
    bottom: 3.9vw;
    z-index: 1;
    right: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.7);
    border-radius: 10px;
    margin: auto;
    width: 8.7vw;
    padding: 0.3vw;
    font-size: 0.9vw;
    color: yellow;
}

.castPanel__pictures {
    position: relative;
}

._icon._newcomer {
    width: 3.5vw;
    position: absolute;
    bottom: 0.4vw;
    right: 0.4vw;
}

._icon._sokuhime {
    width: 4.3vw;
    position: absolute;
    top: 0;
    left: 0;
}

.castList.today_castlist.machihime_list {
    overflow: hidden;
}

.today_castlist,
.cast_list_all {
    margin-top: 3vw;
}



.castPanel__datas {
    text-align: center;
    padding: 0.4vw;
}





.slider-for img {
    display: block;
    width: 97%;
    margin: 0 auto;
}


.slider-nav img {
    display: block;
    width: 90%;
    margin: 0 auto;
}

.top_news_area {
    overflow: hidden;
    height: 23.2vw;
}

.top_event_area .slick-active {
    opacity: 0.3;
}

.top_event_area .slick-current {
    opacity: 1;
}

.castList .genre {
    text-align: center;
    margin: -0.2vw 0 0.5vw;
    width: 99%;
    letter-spacing: 0.1vw;
}

.castList .genre .ubu {
    background: #1a92dc;
    padding: 0.5vw 0;
    height: 0.9vw;
    overflow: hidden;
}

.castList .genre .tuma {
    background: #E0728F;
    padding: 0.5vw 0;
    height: 0.9vw;
    overflow: hidden;
}

.machihime_list .slick_slider {
    /* grid-template-columns: repeat(5, calc(100% / 5 - 0.7vw)); */
    grid-gap: 0.1vw 0.8vw;
    width: 96.5vw;
    margin: 0 auto;
}

.widgetShift {
    width: 60vw;
    margin: 0 auto;
}

ul.flex_start {
    display: grid;
    grid-template-columns: repeat(4, calc(100% / 4 - 0.7vw));
    grid-gap: 0.1vw 0.8vw;
    width: 60vw;
    margin: 0 auto;
}

li.castPanel.castpanel__debut {
    font-size: 0.6vw;
    border: 1px solid #fff;
    padding: 0.2vw;
    border-radius: 1vw;
}

.profile_flex_box .flex_start {
    justify-content: space-between;
}

.profile_staff_pr {
    margin-bottom: 0.7vw;
    font-size: 1.2vw;
    letter-spacing: 0.1vw;
    font-style: italic;
    font-family: 'Zen Antique Soft', serif;
}


.each_cast_box {
    width: 100%;
    margin-right: 0.1vw;
    margin-bottom: 1.9vw;
}

.search_box li {
    width: 100%;
    padding: 0.6vw 0;
    color: #fff;
    /* border-radius: 0.5vw; */
    font-size: 1vw;
    border: 1px solid #b5b5b5;
    box-sizing: border-box;
    /* margin: 0 0.4vw; */
    background: #6c6869;
    /* margin-bottom: 0.7vw; */
}

.search_box li:hover {
    cursor: pointer;
}



.search_box p.exclude {
    text-align: center;
    color: #462b01;
    font-size: 1.3vw;
    padding: 1.5vw 0;
}

.search_box p.exclude:hover {
    cursor: pointer;
}

.search_box ul li:last-child {
    background: #cd6356;
    color: #fff;
    grid-column-start: 5;
    grid-column-end: 6;
}

.search_box ul li.active {
    border: none;
    color: #fff;
    background: #555caa;
}

.number_icon {
    margin-right: 0.8vw;
}

.each_cast_box:nth-of-type(6n) {
    margin-right: 0;
}

.each_cast_box img {
    width: 100%;
}

.each_cast_box .castPanel__datas {
    letter-spacing: 0.2vw;
    background: #fff;
    color: #000;
}

.each_cast_box ._name,
.each_cast_box ._size,
.each_cast_box .castPanel__datas ._name,
.each_cast_box .castPanel__datas ._size,
.schedule_area .castPanel__datas ._name,
.schedule_area .castPanel__datas ._size {
    color: #000;
}

.each_cast_box .castPanel__datas ._shift,
.schedule_area .castPanel__datas ._shift {
    /* color: #fff; */
    /* border: 1px solid #fff; */
    width: 14vw;
    margin: 0 auto;
    border-radius: 15px;
    padding: 0.2vw;
}

section.schedule_area {}


.device_margin .slick-slide {
    margin: 0 0.5vw;
}


.footer__banner--ttl {
    letter-spacing: 0.4vw;
    font-size: 1.5vw;
    text-align: center;
    margin-bottom: 1.7vw;
}

.widget__title {
    text-align: center;
    display: flex;
    width: 96.5vw;
    margin: 0 auto;
    align-items: baseline;
    margin-bottom: 1vw;
}

.widget__title h2 {
    font-size: 1.6vw;
    letter-spacing: 0.4vw;
}

.content_title div {
    font-size: 1.6vw;
    letter-spacing: 0.4vw;
    padding-top: 3vw;
    text-align: center;
}

.content_title p {
    margin: 0.6vw 0 2vw;
    font-size: 1.1vw;
    letter-spacing: 0.2vw;
    text-align: center;

}

.top_schedule_h2,
.top_waiting_h2 {
    margin-left: 6.5vw;
    /* font-size: 13vw; */
}

.top_schedule_h2::before {
    content: '';
    display: inline-block;
    width: 12.4vw;
    height: 3vw;
    background-image: url(https://new.himitsu-baito.jp/new-himitsu-baito-jp/file/img/top_schedule.png);
    background-size: contain;
    vertical-align: bottom;
    margin-right: 1vw;
}

#day_info {
    position: absolute;
}

.top_waiting_h2::before {
    content: '';
    display: inline-block;
    width: 12.4vw;
    height: 3vw;
    background-image: url(https://new.himitsu-baito.jp/new-himitsu-baito-jp/file/img/Stand-by.png);
    background-size: cover;
    vertical-align: bottom;
    margin-right: 1vw;
    background-repeat: no-repeat;
}

.widget__title h2 {
    font-size: 1.6vw;
    letter-spacing: 0.1vw;
}

.keep_out,
.keep_out img {
    width: 100%;
}

section.top_media_area {
    display: flex;
    margin: 0 auto;
    justify-content: space-between;
    padding: 1vw 4.6vw 2vw;
    /* background: #fff; */
}

section.top_media_area .vanilla {
    padding: 2vw 0;
    text-align: center;
    width: 28.2vw;
}

.top_media_area ._box {
    background: #FFF;
    padding: 0;
    height: 17.2vw;
    overflow: hidden;
}

.top_media_area ._box .heaven_iframe {
    width: 100%;
    border: none;
    overflow: scroll;
    height: 17.2vw;
}

.top_event_area {
    margin-bottom: 5vw;
}

/* 10秒動画 */
.short_movie_box video {
    width: 12vw;
    height: 25vw;
    object-fit: cover;
}

.short_movie_box {
    margin-bottom: 5vw;
    width: 53vw;
    margin: 0 auto;
}

.short_movie_box {
    margin-bottom: 5vw;
}

.short_movie_box .slick-initialized .slick-slide {
    margin: 0 0.2vw !important;
}

li.slick_short_movie_li {
    /* width: auto; */
    /* height: 400px; */

    background: #fff;
    color: #462b01;
    text-align: center;
    padding: 0.3vw;
    box-sizing: border-box;
    border: 3px solid #9c8a15;
}

li.slick_short_movie_li p {
    margin-bottom: 0.3vw;
}

@media screen and (min-width:768px) {
    /* ここにPC向けのCSS指定 */


    img.mainimage.img01 {}

    .profile_left_area .thumnail img {
        width: 4.8vw;
    }

    .mv_btn_area_pcNav {
        margin: 2.3vw auto;
    }
}

.point_contents,
.campaign_contents,
.hotel_contents,
.price_contents,
.online_contents,
.profile_contents,
.concept_contents,
.access_contents,
.schedule_contents,
.cast_list_contents,
.booking_contents {
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    margin-top: 4.5vw;
}

.contents__title {
    display: none;
}

.contents__title h2 {
    color: #000;
}

.reserve_wrapper {
    width: 56vw;
    margin: 0 auto;
}

.reserve_description,
.reserve_tell,
.reserve_line {
    background: #fff;
    border: 1px solid #000;
    padding: 3vw 0 2vw;
    margin-bottom: 2vw;
    color: #462b01;
}

.reserve_tell a,
.reserve_line a {
    width: 35vw;
    margin: 0 auto;
    color: #fff;
    background: #424242;
    font-size: 1.6vw;
    text-align: center;
    display: flex;
    padding: 0.5vw;
    height: 5vw;
    align-items: center;
    justify-content: center;
    line-height: 2vw;
}

.reserve_line p,
.reserve_line ul {
    width: 35vw;
    margin: 0 auto 1vw;
    font-size: 1.3vw;
    line-height: 1.7vw;
}

.reserve_line p {
    margin-bottom: 1.5vw;
}

.form_wrapper {
    width: 43vw;
    margin: 0 auto 2vw;
    background: #fff;
    padding: 3vw 0 2vw;
    border: #000 solid 1px;
}

.weekPager {
    margin: auto;
}

.weekPager_head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1vw;
}

.weekPager h4 {
    font-size: 1.3vw;
    color: #482b03;
}

.weekPager_head a {
    display: contents;
}

.next_week_btn {
    width: 10vw;
    font-size: 1.3vw;
    text-align: center;
    color: #1c1211;
    background: #fff;
    border: 1px solid;
    border-radius: 0.5vw;
    padding: 0.3vw;
    visibility: visible;
    position: relative;
}

.next_week_btn.active {
    visibility: hidden;
}

.next_week_btn.pre i {
    position: absolute;
    left: 1vw;
}

.next_week_btn.next i {
    position: absolute;
    right: 1vw;
}

.hour_gap {
    width: 5.4%;
    font-size: 1vw;
}

.weekPager_body_wrapper {
    width: 60vw;
    overflow-x: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.weekPager_body_wrapper::-webkit-scrollbar {
    display: none;
}

.weekPager_body {
    display: flex;
    width: 120vw;
    transition: transform 0.3s ease-in-out;
}

.weekPager_body ul {
    display: flex;
    justify-content: space-between;
    width: 60vw;
    align-items: end;
}



.weekPager ul li {
    background: #6c6869;
    padding: 0 0.9vw;
    color: #fff;
    height: 2.5vw;
    display: flex;
    align-items: center;
    justify-content: center;
}

.weekPager ul li a {
    display: flex;
    height: 100%;
    justify-content: center;
    align-items: center;
}

.weekPager ul li.sat {
    background: #555caa;
}

.weekPager ul li.sat.is-active {
    background: #0b1aa7;
}


.weekPager ul li.sun {
    background: #cd6356;
}

.weekPager ul li.sun.is-active {
    background: #c22b1a;
}


.weekPager ul li.is-active {
    height: 3vw;
    background: #000;
}


.weekPager ul li a {
    color: #fff;
}

.weekPager ul li.is-active a {
    color: #fff;
}



span.weekPager__date {
    font-size: 1.1vw;
    font-weight: 600;
}

.schedule_box {
    width: 60vw;
    margin: 0 auto;
}

.price_system {
    width: 56vw;
    margin: 0 auto;
    background: #fff;
    padding: 5vw 10vw;
    border: #000 solid 1px;
}

.price_system h3 {
    color: #a08f1e;
    display: flex;
    justify-content: space-between;
    border-bottom: solid 1px;
    align-items: baseline;
    margin-bottom: 2vw;
    padding-bottom: 0.5vw;
}

.price_system h3 p {
    font-size: 3.4vw;
}

.price_system h3 span {
    font-size: 1.4vw;
}

.price_system_box {
    margin-bottom: 3vw;
}

.price_system_box dl {
    color: #462b01;
    display: flex;
    justify-content: space-between;
    margin-bottom: 1vw;
    font-size: 2vw;
    padding: 0 0.5vw;
}

.price_system_box_deli {
    margin-bottom: 3vw;
}

.price_system_box_deli dl {
    color: #462b01;
    display: flex;
    justify-content: space-between;
    margin-bottom: 2vw;
    font-size: 2vw;
    padding: 0 0.5vw;
}

.price_system_box_deli dd {
    width: 65%;
    text-align: end;
    font-size: 1.4vw;
    padding-top: 0.1vw;
}

.price_system_box_deli ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: end;
    gap: 0.5vw;
}

dl.bace_option {
    border-bottom: dotted 0.1vw;
    padding: 0 0.5vw 2vw;
    margin: 0 0 2vw;
}

.precautions {
    color: #462b01;
}

.precautions h4 {
    font-size: 1.5vw;
    margin-bottom: 1vw;
}

.precautions li {
    font-size: 1vw;
    padding-left: 2vw;
    line-height: 1.5vw;
    margin-bottom: 1.5vw;
    position: relative;
}

.precautions li::before {
    content: '◆';
    position: absolute;
    top: 0;
    left: 0.8vw;
}

.pay_credit {
    color: #462b01;
}

.pay_credit h4 {
    font-size: 1.5vw;
    margin-bottom: 1vw;
}

.pay_credit li {
    font-size: 1vw;
    padding-left: 2vw;
    line-height: 1.5vw;
    margin-bottom: 1.5vw;
    position: relative;
}

.pay_credit li::before {
    content: '◆';
    position: absolute;
    top: 0;
    left: 0.8vw;
}

.pay_btn {
    width: 100%;
    color: #fff;
    background: #a08f1e;
    display: block;
    margin: 2vw auto 3vw;
    justify-content: center;
    align-items: center;
    font-size: 1.3vw;
    font-weight: 500;
    padding: 1.5vw 2vw 1vw;
    box-sizing: border-box;
    text-align: center;
    letter-spacing: 1px;
    font-weight: bold;
}

.pay_btn span {
    display: block;
    padding-top: 1vw;
    border-top: 1px dashed #fff;
    margin-top: 1vw;
    font-size: 1vw;
}

/* ポイント */
section#section--price {
    width: 67vw;
    margin: 0 auto;
    padding-bottom: 3vw;
}

/* アクセスマップ */
.contAccessMap__gmap iframe {
    width: 100%;
}

.shop_info {
    width: 60vw;
    margin: 3vw auto;
    font-size: 1.1vw;
    letter-spacing: 0.1vw;
    margin-bottom: 3vw;
    padding-top: 2vw;
}

.shop_info h3 {
    text-align: center;
    background: #fff;
    padding: 0.6vw;
    color: #000;
    font-weight: bold;
}

.shop_info dl {
    margin: 2vw;
}

.shop_info dt {
    margin-bottom: 0.5vw;
    font-weight: bold;
}

.shop_info dd {
    margin-bottom: 8px;
}

.shop_info dd._tel {
    font-size: 1.7vw;
}

/* キャンペーン */
section#section--campaign {
    width: 63vw;
    margin: 3vw auto;
}

#section--campaign img.widgetCampaign-image {
    width: 100%;
    max-width: 100%;
    margin-bottom: 1vw;
}

.directionColumn__unit {
    padding-bottom: 4vw;
}

/* オンライン予約 */
.section__group {
    color: #462b01;
    margin-bottom: 2vw;
}



.tempTitle--02 {
    color: #a08f1e;
    padding: 0 0 0.3vw;
    font-size: 1.6vw;
    margin: 0 auto 1vw;
    border-bottom: solid 1px;
    width: 35vw;
}

.wbr {
    display: inline-block;
}

li._name {
    font-size: 1.2vw;
    font-weight: bold;
}

._age {
    font-size: 1vw;
}

._shift {
    font-size: 0.8vw;
    color: #d63c72;
}

ul.top_newcommer_slider span._age {
    font-size: 1.2vw;
}

._icon_list {
    display: flex;
    width: auto;
    margin: 0 auto;
    justify-content: center;
    margin-bottom: 0.8vw;
    font-size: 0.7vw;
    align-items: center;
    gap: 3%;
}



li.castStateIcons__icon {
    width: 10%;
}

.section__group__unit {
    padding: 0 5px 5px 5px;
}

.castStateIcons__icon.cast_genle.ubu,
.castStateIcons__icon.cast_genle.tuma {
    background: #1a92dc;
    color: #fff;
    width: 10.5vw;
    margin: 0 auto;
    border-radius: 0.2vw;
    font-size: 0.8vw;
    padding: 0.3vw 0;
    margin-bottom: 1vw;
}

.castStateIcons__icon.cast_genle.tuma {
    background: #E0728F;
}

.section__group__description {
    font-size: 1.2vw;
    line-height: 1.5;
    letter-spacing: 0.04vw;
    width: 34vw;
    margin: 0 auto;
}

.widgetTel {
    color: #f9f9f9;
    text-align: center;
    text-shadow: 1px 1px 3px rgb(0 0 0 / 80%);
    line-height: 1;
    padding: 20px 10px 10px;
}

.widgetTel--small {
    padding: 10px 0 0 0;
}

.mb10 {
    margin-bottom: 10px !important;
}

.widgetTel__caption {
    position: relative;
    margin-bottom: -22px;
    font-size: 12px;
    font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, Osaka, "MS PGothic", arial, helvetica;
    z-index: 1;
}

.widgetTel__number {
    position: relative;
    z-index: 0;
}

.widgetTel__number a {
    position: relative;
    display: block;
    box-shadow: 1px 1px 0 rgb(255 255 255 / 10%) inset, 0 -5px 30px rgb(0 0 0 / 15%) inset, 1px 1px 2px rgb(0 0 0 / 60%);
    padding: 21px 0 8px;
    border-radius: 3px;
    font-size: 26px;
    letter-spacing: 3px;
    text-decoration: none;
    color: #FFF;
    background: #ec264b;
}

.come {
    text-align: center;
}

.tempTitle--01 {
    color: #a08f1e;
    padding: 0 0 0.3vw;
    font-size: 1.6vw;
    margin: 0 auto 1vw;
    border-bottom: solid 1px;
    width: 35vw;
}

.guide_box {
    width: 35vw;
    margin: 0 auto;
}

.guide_title {
    font-size: 1.1vw;
    color: #a08f1e;
    display: flex;
    gap: 0.5vw;
    align-items: center;
    margin-bottom: 0.5vw;
}

.guide_title span {
    color: #fff;
    background: #a08f1e;
    padding: 0.5vw;
    text-align: center;
    width: 2vw;
    height: 2vw;
}

.guide_text {
    font-size: 1.1vw;
    margin-bottom: 1.5vw;
    line-height: 1.5vw;
}



.row.online_form {
    margin: 0 auto;
    /* margin-top: 20px; */
    padding: 0 2.9vw;
    background: rgb(255, 255, 255, 0.1);
    /* padding-bottom: 2vw; */
    /* margin-bottom: 2vw; */
}

.form_title {
    width: 13vw;
    font-size: 1vw;
    line-height: 2;
    text-align: center;
    border: #000 1px solid;
    margin-bottom: 1vw;
    display: flex;
    justify-content: center;
    align-items: center;
}

.form_data {
    width: 20vw;
    line-height: 3;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    margin-bottom: 1vw;
    border: solid 1px #000;
    border-left: none;
}

.confirm .form_data {
    background: #e3e3e3;
}

.confirm .submit_button {
    display: grid;
    grid-template-columns: 40% 1fr;
    width: 33vw;
    align-items: center;
    gap: 1vw;
    margin: auto;
    margin-bottom: 5vw;
}

.confirm .btn-default {
    height: 2vw;
    border-radius: 0;
    color: #000;
    border: 1px solid;
}

.confirm .btn.btn-success {
    width: 18.8vw;
    margin: 0 auto;
    color: #fff;
    background: #424242;
    font-size: 1.6vw;
    text-align: center;
    display: flex;
    padding: 0.5vw;
    height: 4vw;
    align-items: center;
    justify-content: center;
    line-height: 2vw;
}


.form-control {
    width: 20vw;
    padding: 0.6vw;
    background: #e3e3e3;
    border: none;
}

.icon_require {
    color: red;
    /* position: absolute;
    right: -0.5vw; */
}

.btn.btn-success {
    width: 35vw;
    margin: 0 auto;
    color: #fff;
    background: #424242;
    font-size: 1.6vw;
    text-align: center;
    display: flex;
    padding: 0.5vw;
    height: 5vw;
    align-items: center;
    justify-content: center;
    line-height: 2vw;
}

.reserverFlow .tempAccodion {
    margin-bottom: 10px;
    border: 1px solid #333232;
}



.tempAccodion__title {
    position: relative;
    font-size: 16px;
    letter-spacing: 0.5px;
    padding: 10px 12px 14px;
}

.js-accordion-title .js-ruler {
    transition: all 800ms 0s ease;
}

.reserverFlow .tempAccodion__title {
    color: #fff;
    background-color: #d20d45;
}

.attenItemsList ul li:not(:last-child) {
    margin-bottom: 10px;
}

.tempLink {
    line-height: 1;
}

.enter_botn .btn {
    color: #fff;
    background-color: #fc8cbc;
    width: 15vw;
    font-size: 1.5vw;
    font-weight: 100;
    border-radius: 0.6vw;
}

.enter_botn {
    margin-bottom: 2vw;
}


.tempLink--01 a {
    background: url(../img/other/temp_link_01_arrow.png) top 13px right 15px no-repeat, linear-gradient(to top, #670808 18%, #800f0f 70%, #820d0d 100%);
    display: block;
    position: relative;
    padding: 11px 13px 15px;
    color: #f9f9f9;
    font-size: 16px;
    border: 1px solid #000;
    text-shadow: 1px 1px 3px rgb(0 0 0 / 80%);
    text-decoration: none;
    line-height: 1;
    border-radius: 3px;
    box-shadow: 1px 1px 0 rgb(255 255 255 / 10%) inset, 1px 1px 2px rgb(0 0 0 / 60%);
}

.attenItemsList ul li {
    position: relative;
    padding-left: 13px;
    font-size: 11px;
    line-height: 1.5;
}

.tempAccodion__body {
    border-top: 1px solid #484848;
    padding: 10px 0;
    margin: 0 10px;
}

.attenItemsList {
    background: #252525;
    padding: 10px;
}

.tempAccodion__title:after {
    background: url(https://sm.hybridhealth-shinjuku.jp/file/img/other/temp_accodion_arrow.png);
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    position: absolute;
    right: 12px;
    top: 12px;
    transition: all 300ms 0s ease;
}




.reserverFlow__safety {
    width: 35vw;
    margin: 0 auto;
    font-size: 0.8vw;
}

.form_common {
    display: flex;
    flex-wrap: wrap;
    width: 43vw;
    margin: 0 auto;
    justify-content: center;
    padding: 1vw 0;
    color: #462b01;
}

/* ホテルガイド */
#contentHotel {
    width: 70vw;
    margin: 0 auto;
    padding-bottom: 3vw;
    color: #000;
}

#contentHotel iframe {
    width: 100%;
    height: 35vw;
}

.titleTypeText {
    text-shadow: 1px 1px 2px #006da0;
    padding: 5px;
    color: #fff;
    background: #f39 url(../img/common/title_text_bg.png) repeat-x;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 3px;
    border-right-width: 5px;
    border-left-width: 5px;
    border-right-style: solid;
    border-left-style: solid;
    border-right-color: #00aeff;
    border-left-color: #00aeff;
    margin-right: 0;
    margin-left: 0;
}

.schedule_list_profile dl {
    display: grid;
    grid-template-columns: 30% 1fr;
    margin-bottom: 0.1vw;
    border: solid 1px #959091;
    align-items: center;
}

.schedule_list_profile dl a {
    display: flex;
    align-items: center;
}

.schedule_list_profile dl a ._reserve_btn {
    background: #e8c102;
    color: #000;
}

.schedule_list_profile dl dt.today_color {
    background: #06b19f;
    color: #fff;
}

#pageHotel {
    padding-top: 3px;
}

.mapTd a {
    color: blue;
    text-decoration: revert;
}

#hotelCont .headArea {
    background: #FFF;
}


#hotelCont .headArea small {
    font-size: 10px;
}

#hotelCont .searchBox {
    background: url(../img/hotel/search_box_bg.png) no-repeat #e42f6e;
    height: 37px;
    padding-left: 98px;
    overflow: hidden;
    margin-top: 8px;
}

#hotelCont .searchBox input[type="text"] {
    border: none;
    width: 547px;
    height: 25px;
    margin-top: 5px;
    margin-left: 4px;
    float: left;
    box-shadow: 0px 0px 2px #999 inset;
}

#hotelCont .searchBox input[type="image"] {
    display: block;
    padding: 5px 0px 0px 5px;
}

#hotelGrade_01 {
    background: #000;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

.hotelGradeBox caption {
    color: #fff;
    padding: 1vw 0;
    font-size: 1.2vw;
    letter-spacing: 0.1vw;
    font-weight: bold;
}

.hotelGradeBox th {
    width: 234px;
    color: #FFFFFF;
    font-size: 14px;
    font-weight: bold;
    vertical-align: middle;
}

#hotelGrade_01 th {
    background: #323232;
    border-right: 1px solid #ffffff;
    border-top: 1px solid #ffffff;
}

.hotelGradeBox td {
    width: 284px;
    background: #e5e5e5;
    font-size: 14px;
    padding: 5px;
    vertical-align: middle;
}

.hotelGradeBox td.mapTd {
    width: 54px;
    text-align: center;
    vertical-align: middle;
}

#hotelGrade_01 td {
    border-right: 1px solid #ffffff;
    border-top: 1px solid #ffffff;
}

#hotelGrade_02 {
    background: #000;
}

#hotelGrade_02 td {
    border-right: 1px solid #ffffff;
    border-top: 1px solid #ffffff;
}

#hotelGrade_02 tr.evenNum td {
    background: #e5e5e5;
}

#hotelGrade_02 th {
    background: #323232;
    border-right: 1px solid #ffffff;
    border-top: 1px solid #ffffff;
}

#hotelGrade_03 {
    background: #000;
}

#hotelGrade_03 th {
    background: #323232;
    border-right: 1px solid #ffffff;
    border-top: 1px solid #ffffff;
}

#hotelGrade_03 td {
    border-right: 1px solid #ffffff;
    border-top: 1px solid #ffffff;
}

#hotelGrade_03 td {
    border-right: 1px solid #ffffff;
    border-top: 1px solid #ffffff;
}

/* 料金システム */
.guide_area,
section.system_area {
    width: 100%;
    margin: 0 auto;
    /* display: flex; */
    padding-bottom: 2vw;
    /* justify-content: space-between; */
    background: #fff;
}

section.cresit_area {
    width: 70vw;
    margin: 0 auto;
    margin-bottom: 8vw;
}

section.cresit_area pre {
    text-align: center;
    letter-spacing: 1px;
    margin-bottom: 1.9vw;
    letter-spacing: 3px;
    font-size: 1vw;
}

section.cresit_area h3 {
    font-size: 1.8vw;
    border-bottom: 1px solid#fff;
    width: 27vw;
    margin: 0 auto;
    margin-bottom: 2vw;
    letter-spacing: 0.2vw;
    padding-bottom: 0.4vw;
    font-weight: bold;
    text-align: center;
}

section.system_area img {
    width: 37vw;
}

section.basic_option {
    background: #1f1f1f;
    width: 100%;
    margin: 0 auto;
    /* border-radius: 15px; */
    padding: 2vw;
    box-sizing: border-box;
    margin-bottom: 2vw;
    margin-top: -0.9vw;
}

section.basic_option .system_2 {
    text-align: center;
    letter-spacing: 2px;
    /* font-size: 1.1vw; */
    margin-bottom: 2.7vw;
    background: #fff;
    color: #1f1f1f;
    width: 10vw;
    margin: 0 auto;
    margin-bottom: 2.7vw;
    padding: 0.4vw;
    border-radius: 0.9vw;
    font-weight: bold;
}

section.basic_option article {
    background: #1f1f1f;
    padding: 1.7vw;
    border-radius: 1vw;
    width: 63vw;
    margin: 0 auto;
    margin-bottom: 4vw;
}

section.basic_option article p {
    width: 70vw;
    margin: 0 auto;
    color: #fff;
    text-align: center;
    letter-spacing: 0.2vw;
}

section.basic_option ul {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    text-align: center;
}

section.basic_option .each_genle {
    display: flex;
    width: 61vw;
    justify-content: space-between;
    margin: 0 auto;
    line-height: 1.8;
    color: #fff;
    font-size: 0.9vw;
}

section.basic_option .each_genle dl {
    display: flex;
    margin-bottom: 1vw;
}

section.basic_option .each_genle dt {
    /* background: #fff; */
    color: #cabbe4;
    margin-bottom: 1vw;
    text-align: center;
    font-weight: bold;
    font-size: 1.2vw;
}

section.basic_option .ubu_area,
.tuma_area {
    width: 29vw;
}

section.basic_option dd.price_jp {
    border-radius: 1vw;
    border: 1px solid #fff;
    height: 1.7vw;
    padding: 0.1vw 0vw 0;
    margin-right: 1vw;
    width: 8vw;
    text-align: center;
}

section.basic_option dd.iteme_jp {
    width: 40vw;
    padding-top: 0.2vw;
}

section.basic_option ul li {
    font-size: 1vw;
    display: inline;
}

section.costume_area {
    width: 80vw;
    margin: 0 auto;
    text-align: center;
    padding-bottom: 2vw;
    margin-bottom: 4vw;
}

section.costume_area h3 {
    font-size: 1.8vw;
    border-bottom: 1px solid#fff;
    width: 23vw;
    margin: 0 auto;
    margin-bottom: 2vw;
    letter-spacing: 0.2vw;
    padding-bottom: 0.4vw;
    font-weight: bold;
}

section.costume_area h3 span {
    font-size: 2.2vw;
}

section.costume_area p {
    margin: 2vw 0 3vw;
    font-size: 1vw;
    letter-spacing: 0.03vw;
}

ul.cos_list {
    display: flex;
    flex-wrap: wrap;
}

ul.cos_list li {
    width: calc(100%/6);
}

ul.cos_list li img {
    width: 12.8vw;
    margin-bottom: 0.5vw;
}

.term_of_service {
    background: rgb(255 255 255 / 60%);
    color: #1a1a1a;
    /* padding: 1.9vw 4vw; */
    width: 70vw;
    margin: 0 auto;
    padding: 3vw 1vw;
}

.term_of_service pre {
    text-align: center;
    /* padding: 20px 0; */
    font-size: 1.4vw;
    padding-bottom: 6vw;
    font-weight: bold;
    letter-spacing: 0.3vw;
}


.term_of_service dt {
    font-size: 1.1vw;
    margin-bottom: 1vw;
    border-bottom: 1px solid #fff;
    padding-bottom: 1vw;
    color: #e20053;
    font-weight: 700;
    border-bottom: 1px solid #1a1a1a;
}

.term_of_service dd {
    margin-bottom: 60px;
    line-height: 1.7;
    font-size: 1vw;
}

.term_of_service p {
    border: 1px solid #1a1a1a;
    padding: 19px;
    line-height: 1.6;
    margin-bottom: 70px;
}

.term_of_service ol {
    line-height: 2.4;
    margin-left: 2vw;
}

.term_of_service ol li {
    list-style: decimal;
    line-height: 1.4;
    margin-bottom: 1.6vw;
}

.term_of_service div {
    margin-top: 4vw;
    line-height: 1.9;
    letter-spacing: 1px;
}

.clearfix:after {
    content: "";
    display: block;
    clear: both;
}

/* コンセプト */


/* プロフィール */
.profile_contents {
    letter-spacing: 0.05vw;
}

.cast__state {
    text-align: center;
    width: 70%;
    padding: 0.3vw 0;
    letter-spacing: 2px;
    margin: 0.8vw auto 0;
    font-size: 0.9vw;
    color: #fff;
    border-radius: 0.3vw;
}

p.cast__state.state_last_one,
p.cast__state.state_shukkin,
p.cast__state.state_machihime {
    background: #134962;
}

p.cast__state.state_mannin,
p.cast__state.state_cancel {
    background: #134962;
}

p.cast__state.state_yasumi {
    background: #ccc;
    color: #1a1a1a;
}

.profile_flex_box {
    display: flex;
    width: 50vw;
    margin: 0 auto;
    justify-content: space-between;
    padding: 1vw;
    /* background: #1c2939; */
    margin-bottom: 3vw;
    gap: 2vw;

}

/* .profile_flex_box img {
    width: 29vw !important;
} */

.profile_right_box,
.profile_left_area {
    width: 25vw;
}

.profile_box {
    background: #fff;
    border: 1px solid #000;
    padding: 1.5vw;
    margin-bottom: 1vw;
}

.profile_name_box {
    color: #462b01;
    padding: 1.5vw;
}

.profile_box h3 {
    display: flex;
    justify-content: space-between;
    align-items: end;
    color: #a08f1e;
    margin-bottom: 0.5vw;
}

.profile_box h3 p {
    font-size: 2vw;
}

.profile_box h3 span {
    font-size: 1vw;
}

.profile_name_body {
    background: #efedee;
    padding: 0.5vw 1vw;
}

.profile_right_box ._name {
    font-size: 1.8vw;
    display: flex;
    justify-content: left;
    align-items: baseline;
    font-family: 'Zen Antique Soft', serif;
}

.profile_right_box ._age {
    font-size: 1.3vw;
}



@media(max-width:768px) {

    .profile_name_body {
        padding: 3vw 5vw;
    }

    .profile_right_box ._name {
        font-size: 7vw;
    }

    .profile_right_box ._age {
        font-size: 5vw;
    }
    .slider-for.slick-initialized.slick-slider {
        width: 100% !important;
    }
}

.profile_right_box ._size {
    text-align: right;
    font-size: 1.1vw;
    /* margin-bottom: 3vw; */
}

/* .profile_right_box .contProfileDatas {
    padding: 2vw;
} */

.profile_right_box .contProfileDatas dl {
    margin-bottom: 1.3vw;
}

.profile_right_box .contProfileDatas dt {
    font-size: 1.1vw;
    color: #1da1f3;
    display: inline;
}

.profile_right_box .contProfileDatas dd {
    display: inline;
    font-size: 1vw;
}


.profile_right_box .cast_comment_area ._head_box ._head,
.profile_right_box .staff_comment_area ._head_box ._head {
    margin-right: 1vw;
}

.profile_right_box .cast_comment_area ._head_box ._head img,
.profile_right_box .staff_comment_area ._head_box ._head img {
    width: 3.6vw !important;
}

.schedule_list_profile dl ._reserve_btn {
    background: #fff;
    padding: 0.4vw 0.4vw;
    margin-bottom: 0;
    height: 1.5vw;
    border-radius: 0.5vw;
    border: solid 1px #000;
    width: 90%;
    font-size: 0.7vw;
    color: #000;
}

.profile_right_box .cast_comment_area ._head_box,
.profile_right_box .staff_comment_area ._head_box {
    display: flex;
    align-items: center;
    margin-bottom: 0.7vw;
}

.profile_right_box .cast_comment_area ._head_box ._text ._head,
.profile_right_box .staff_comment_area ._head_box ._text ._head {
    font-size: 1.2vw;
    margin-bottom: 0.4vw;
}

.profile_right_box .cast_comment_area ._head_box ._text ._sub,
.profile_right_box .staff_comment_area ._head_box ._text ._sub {
    font-size: 1vw;
    color: #7f7f80;
}

.profile_right_box .cast_comment_main,
.profile_right_box .staff_comment_main,
.cast_comment_main {
    font-size: 1vw !important;
    line-height: 1.2vw;
    color: #462b01;
    background: #efedee;
    padding: 1vw;
    margin-bottom: 0.5vw;
}

.profile_right_box .cast_comment_main span,
.profile_right_box .staff_comment_main span {
    /* font-size: 0.9vw !important;
    color: #fff !important; */
    /* font-weight: 100 !important; */
}



.profile_left_area .thumnail .slick-slide {
    display: contents;
}

.profile_left_area .slider-area {}

.subimage {
    display: grid;
    gap: 0.3vw;
    grid-template-columns: repeat(5, 1fr);
}

.profile_left_area .slider {
    width: 29.6vw;
}

.profile_left_area .thumnail {}

.profile_left_area .main_image_box {}

.profile_scheduleCalendar {}

.schedule_list_profile {
    margin: 0 auto;
}

.review_list .pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.review_list .pagination .page-item {
    text-align: center;
    display: block;
    padding: 1vw;
}

@media(max-width:768px) {
    .schedule_list_profile dl {
        border-radius: none;
    }
}

.schedule_list_profile dl dt {
    font-size: 1vw;
    background: #6c6869;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 2vw;
}

.schedule_list_profile dl dd {
    font-size: 1vw;
    height: 2vw;
    display: flex;
    justify-content: center;
    align-items: center;
}

.schedule_list_profile dl dd span {
    color: #000;
}

.profile_flex_box2 {
    display: flex;
    width: 70vw;
    justify-content: space-between;
    margin: 5vw auto 0;
    padding-bottom: 3vw;
}

.line_pre {
    position: absolute;
    top: 0;
    left: 0;
    width: 19.7vw;
    height: 13.8vw;
    background: rgba(0, 0, 0, 0.8);
    text-align: center;
    font-size: 1.3vw;
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 3px;
}

@media(max-width:768px) {

    .qa_area h3,
    .profile_flex_box2 h3,
    .profile_scheduleCalendar h3 {
        margin-bottom: 2.6vw;
        letter-spacing: -0.1vw;
    }

    .line_pre {
        width: 100%;
        height: 97.1%;
        font-size: 4.2vw;
    }

}

.profile_flex_box2 iframe {
    border: none;
    display: block;
    margin: 0 auto;
    width: 35vw;
    height: 21.8vw;
}

.profile_twitter {
    margin-top: 1.3vw;
}

.profile_twitter h3 {
    margin-bottom: 0.9vw;
    font-size: 2vw;
}

.twitter_promotion img {
    width: 100%;
    margin-bottom: 1.1vw;
}

/* .play_op_area {
    width: 29vw;
} */

.play_op_area .contProfilePayOption {
    width: 33vw;
    margin: 0 auto;
    padding: 1vw 2vw;
    box-sizing: border-box;
    border-radius: 1vw;
    background: #10171f;
}

.qa_area {
    margin: 0 auto;
    box-sizing: border-box;
    border-radius: 1vw;
    width: 70vw;
    letter-spacing: 2px;
}

.qa_area .contProfileStoreComment__body {
    width: 100%;
    margin: 0 auto;
    padding: 1vw 2vw;
    box-sizing: border-box;
    border-radius: 1vw;
    background: #10171f;
    padding: 2vw;
}

.qa_area {}

.qa_area .qcom {
    font-size: 1.1vw;
    margin-bottom: 1vw;
}

.qa_area .acom {
    font-size: 1.1vw;
    margin-bottom: 3vw;
    color: #f983a3;
}

.play_op_area .profile_flex_box2 h3 {
    font-size: 1.5vw;
    margin-bottom: 0.6vw;
}

.play_op_area .contProfilePayOption .contProfilePayOption__body.yuryou_contProfilePayOption__body .optionsAbleList {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.play_op_area .contProfilePayOption .contProfilePayOption__body.yuryou_contProfilePayOption__body .optionsAbleList dl {
    margin-bottom: 1vw;
}

.play_op_area .contProfilePayOption .contProfilePayOption__body.yuryou_contProfilePayOption__body dt {
    border: 1px solid #fff;
    padding: 0.6vw 1vw;
    width: 11.5vw;
    border-radius: 1.2vw;
    font-size: 1vw;
}


.ricruit_area {
    width: 56vw;
    margin: 0 auto;
    background: #fff;
    padding: 3vw 7vw
}

.ricruit_box {
    margin: 0 auto 3vw;
    color: #462b01;
    line-height: 1.7;
}



.ricruit_box h3 {
    color: #a08f1e;
    display: flex;
    justify-content: space-between;
    border-bottom: solid 1px;
    align-items: baseline;
    margin-bottom: 1vw;
    padding-bottom: 0.5vw;
    font-size: 1.7vw;
}

.media_box h3 {
    color: #a08f1e;
    display: flex;
    justify-content: space-between;
    border-bottom: solid 1px;
    align-items: baseline;
    /* margin-bottom: 2vw; */
    padding-bottom: 1vw;
    font-size: 1.4vw;
    margin-bottom: 0;
}

.media_cast_name {
    font-size: 1.8vw;
    margin-bottom: 1vw;
}

.media_cast_name span {
    font-size: 1.4vw;
    /* margin-bottom: 13vw; */
}

.media_cast_threesize {
    margin-bottom: 1vw;
    font-size: 1.3vw;
}

.media_cast_img {
    width: 13vw;
}

.media_cast_comment {
    font-size: 1.1vw;
    line-height: 1.6;
    background: #fafafa;
    padding: 0.6vw;
    border: 1px solid #ccc;
    box-sizing: border-box;
}

.media_cast_icons ._icon_list {
    justify-content: left;
}

.media_list .media_list_one {
    margin-bottom: 3vw;
    padding: 2vw;
}

.media_link {
    background: #a08f1e;
    color: #fff;
    padding: 0.9vw 1vw;
    text-align: center;
    font-size: 1.3vw;
}

.ricruit_box p {
    font-size: 1.2vw;
    margin-bottom: 1vw;
    line-height: 1.4;
}

.ricruit_box li {
    font-size: 1.2vw;
    padding-left: 1vw;
    line-height: 1.3vw;
    margin-bottom: 0.8vw;
    position: relative;
}

.ricruit_box li::before {
    content: '・';
    position: absolute;
    top: 0;
    left: 0vw;
}

.time_box {
    background: #a08f1e;
    color: #fff;
    padding: 0.5vw 1vw;
    /* border-radius: 0.5vw; */
    text-align: center;
}



/* フッター */
footer .slide_banner {
    padding: 2vw 0;
    height: 18.4vw;
    background: #fff;
}

div#endNavi_2 {
    position: fixed;
    bottom: 2vw;
    right: 2vw;
    width: 14vw;
    z-index: 1;
    width: 61px;
}

footer .slick-slide {
    width: auto !important;
}

footer .slick-slide img {
    height: 14.7vw !important;
    width: auto !important;
}

.slick-dots li button:before {
    opacity: 1 !important;
    color: #2c2f45 !important;
}

.top_event_box .slick-dots {
    bottom: -2.6vw !important;
}

.slick-dots li.slick-active button:before {
    opacity: 1 !important;
    color: #ff43b6 !important;
}

.search_box {
    background: #ffffff;
    text-align: center;
    margin: 2.4vw 0px;
    font-size: 1vw;
    width: 60vw;
    margin: 0 auto;
    box-shadow: 0px 0px 15px -5px #777777;
    position: relative;
}


.search_box.closed:hover {
    background: #ede9e2;
}

.number-of-displayed {
    width: 6vw;
    background: #777777;
    padding: 0.5vw;
    border-radius: 1vw;
    position: absolute;
    right: 3vw;
    top: 1.1vw;
}


.search_box ul {
    display: grid;
    width: 57vw;
    margin: 0 auto;
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
    grid-template-columns: repeat(5, 1fr);
    gap: 0.5vw;
    padding-top: 0.3vw;
    padding-bottom: 1.5vw;
}

.movie_box {
    display: block !important;
}

.movie_box iframe {
    border: none !important;
    width: 320px !important;
    height: 240px !important;
}

.content_title p,
.content_title div {}

.content_area {
    margin-bottom: 3vw;
}

.line_btn_wrapper,
.submit_btn_wrapper,
.btn-success,
.reserve_tell a {
    background: #a08f1e !important;
    width: 80%;
    margin: 0 auto;
    border-radius: 0.5vw !important;
    border: none;
    margin-bottom: 1vw;
}

.line_btn_wrapper {
    background: #00B900 !important;
}

.sticky_footer_3 {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 5vw;
    gap: 1vw;
}

.sticky_footer_3_img {
    width: 8%;
}

.sticky_footer_3_text {
    font-size: 1.6vw;
    color: #fff;
    font-weight: 500;
}

.enter_ask {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    overflow: hidden;
    z-index: 99999999;
    background: rgba(0, 0, 0, 0.5);
}

.white_back {
    background: #fff;
    padding: 1vw 0;
    position: absolute;
    bottom: 0;
    width: 100vw;

}

.enter_ask_area {
    background: #d6caa2;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1vw;
    width: 100vw;
    padding: 0.5vw 0;
}

.enter_ask_caution {
    color: #3d2f2f;
    display: flex;
    gap: 1vw;
    align-items: center;
    font-size: 1vw;
    line-height: 1.2vw;
    font-weight: 600;
    width: 26vw;
}

.enter_ask_caution_img {
    width: 3vw;
}

.enter_ask_btn {
    width: 17vw;
    font-size: 1.3vw;
    font-weight: 600;
    text-align: center;
    padding: 0.6vw;
}

.enter_ask_yes {
    background: #746b32;
    color: #beb38c;
}

.enter_ask_no {
    color: #a79d78;
    border: solid 1px;
}

.media_link_area_inner {
    width: 678px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 140px 468px;
    gap: 70px;
    align-items: center;
}

.media_link_area_inner .content_tilte {
    width: 140px;
}

.media_link_area {
    background: #fff;
    padding: 3vw 0;
    margin-bottom: 0;
}

.media_link_area .media_banners {
    width: 468px;
}

.media_link_area .media_banners li {
    /* width: 23vw; */
    margin-bottom: 0.2vw;
    margin-right: 0.2vw;
}

.media_banners a {
    text-align: center;
}


.media_link_area img {
    width: auto;
    height: auto;
}



.media_link_area .media_banners .width_468 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    /* gap: 0.4vw; */
    align-items: center;
    margin-bottom: 0.2vw;
}

.media_banners .width_200 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    /* gap: 0.4vw; */
    align-items: center;
}

.select_reserve {
    width: 27vw;
    margin: 0 auto;
    text-align: center;
    margin-top: 4vw;
}

.select_reserve div {
    background: #a08f1e;
    color: #fff;
    margin-bottom: 1.5vw;
    padding: 1vw;
    border-radius: 0.5vw;
    font-size: 1.2vw;
    letter-spacing: 1px;
    font-weight: bold;
}

.reserve_process_sub_title h3 {
    /* background: #a08f1e;
    color: #fff;
    padding: 0.7vw;
    font-size: 1.3vw; */
    text-align: center;
}

.select_casts ul li {
    display: grid;
    grid-template-columns: 1fr 2fr 1fr;
    gap: 1vw;
    align-items: stretch;
    /* height: 100vh; */
    margin: 0 2vw 0;
    border-bottom: 1px solid #c2c2c2;
    padding: 1vw 0;
    box-sizing: border-box;
}

.select_casts .work_time {
    text-align: center;
    margin: 1vw 0;
    font-size: 1.2vw;
}

.info_shimeiryo {
    padding: 1vw 2vw;
}

.info_shimeiryo p {
    margin-bottom: 1vw;
}

/* 各コンテンツの高さ調整 */
.child-1 {
    align-self: flex-start;
    /* 1番目のコンテンツは上寄せ */
}

.child-2 {
    align-self: stretch;
    /* 2番目のコンテンツは垂直方向に伸ばす（最も高さが高い） */
}

.child-3 {
    align-self: flex-end;
    /* 3番目のコンテンツは下寄せ */
}

p.select_cast_name {
    font-size: 1.4vw;
    margin-bottom: 1vw;
    font-weight: bold;
}

.reserve_info.fixed dd {
    background: #e6e6e6;
}

input.select_cast_btn {
    background: aquamarine;
    background: #a08f1e;
    color: #ffffff;
    border: none;
    width: 100%;
    border-radius: 0.3vw;
    padding: 0.5vw;
    letter-spacing: 2px;
    font-size: 1.1vw;
    /* font-weight: bold; */
    text-align: center;
}

.select_cource ul li {
    display: grid;
    grid-template-columns: 1fr 2fr 1fr;
    gap: 1vw;
    align-items: stretch;
    /* height: 100vh; */
    margin: 0 2vw 0;
    border-bottom: 1px solid #c2c2c2;
    padding: 1vw 0;
    box-sizing: border-box;
    align-items: center;
    text-align: center;
}

.select_cource ul li span {
    font-size: 2vw;
}

.reserve_info {
    width: 34vw;
    margin: 0 auto;
}

.reserve_info dl {
    margin-bottom: 1vw;
    display: grid;
    grid-template-columns: 3fr 5fr;
    align-items: center;
    border: 1px solid #000;
}

.reserve_info dl dt {
    /* padding: 1vw; */
    /* margin: 1vw; */
    /* border-right: 1px solid #000; */
    padding: 1vw;
}

.reserve_info dl dd {
    padding: 1vw;
}

.reserve_info dl dd {
    padding: 1vw;
    border-left: 1px solid #000;
    align-items: center;
}

input#来店区分_0 {
    width: 1vw;
    margin: 0 1vw;
    height: 1vw;
    appearance: auto;
}

.reserve_info dl dd input {
    width: 100%;
    font-size: 1vw;
}



.form_submit_btn {
    text-align: center;
}

.form_submit_btn input {
    background: #a08f1e;
    border: none;
    color: #fff;
    padding: 0.5vw 2vw;
    font-size: 1.2vw;
    letter-spacing: 1px;
}

.form_wrapper .reserve_info dl dd input {
    width: 100%;
    font-size: 1vw;
    padding: 0.5vw;
    border: 1px solid #000;
}

.review_list,
.review_search_area {
    color: #000
}

.review_search_area {
    display: grid;
    grid-template-columns: 2.1fr 3.8fr 0.5fr 1fr 1.8fr 1.1fr;
    align-items: center;
    background: #f0f0f0;
    padding: 1vw;
    margin-bottom: 1vw;
    font-size: 0.9vw;
}

.review_list ul li {
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 1vw;
    border-bottom: 1px solid #ccc;
    padding-bottom: 2vw;
    padding-top: 2vw;
}

.media_list .media_list_grid {
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 1vw;
    border-bottom: 1px solid #ccc;
    padding-bottom: 1vw;
    padding-top: 1vw;
}

.media_updated_at {
    background: #f0f0f0;
    padding: 1vw;
    margin-bottom: 1vw;
    font-size: 1.1vw;
    color: #462b01;
}

.media_cast_info {
    color: #462b01;
}

.review_rate {
    color: #9c8a15;
    font-weight: bold;
}

.review_comment {
    line-height: 1.4;
    white-space: pre-line;
}

.review_list ul li .review_info div {
    margin-bottom: 1vw;
}

form.review_search_form {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 0.3vw;
    border-right: 1px solid #ccc;
}

.review_search_area a {
    text-align: center;
}

.review_search_area a:first-of-type {
    border-right: 1px solid #ccc;
}

.review_cast_name,
.review_cast_threesize {
    text-align: center;
}

.review_cast_name {
    margin-bottom: 0.3vw;
    font-size: 1.1vw;
}

.review_cast_threesize {
    font-size: 1vw;
}

a.search_reset {
    background: #b0b0b0;
    padding: 0.3vw;
    color: #fff;
    font-size: 0.9vw;
}

.review_search_form_reset input {
    border-radius: 0;
    border: none;
    background: #898989;
    color: #fff;
    padding: 0.3vw 1vw;
}

form.review_search_form input {
    background: none;
    border: none;
    margin-left: 0.4vw;
}

#review_cast_ids {
    width: 10vw;
    padding: 0.3vw 1vw;
    background: #fff;
}

::placeholder {
    /* プレースホルダ用の装飾 */
    color: rgb(108, 108, 108);
}

.form_flex {
    display: flex;
    justify-content: space-between;
}

textarea.wpcf7-form-control.wpcf7-textarea {
    border: solid 1px;
}

@media screen and (max-width:767px) {

    /* ここにSP向けのCSS指定 */
    .reservation_form {
        width: 100%;
    }

    .reservation_form input, .reservation_form select, .reservation_form .wpcf7-submit {
        width: 45vw;
        padding: 1vw;
    }

    .reservation_form label {
        grid-template-columns: 46% 1fr;
    }

    .reservation_form p {
        margin-bottom: 5vw;
    }

    .content_title p {
        font-size: 3.2vw;
        margin-bottom: 9vw;
    }

    .mv_btn_area {
        left: 0;
        right: 0;
        margin: auto;
        bottom: 4.5vw;
        top: auto;
        justify-content: center;
        gap: 5vw;
    }

    .mv_btn_area p {
        padding: 3.5vw 2vw;
        width: 36vw;
        font-size: 4vw;
    }

    .mv_btn_area_pcNav.sp {
        flex-direction: column;
        position: relative;
        padding-bottom: 10vw;
        gap: 3vw;
        width: auto;
        top: 8vw;
    }

    .mv_btn_area_pcNav p {
        width: 60vw;
        font-size: 5vw;
        margin: 0 auto;
        padding: 3.5vw 2vw;
    }

    .machihime_list .slick_slider {
        display: grid;
    }

    .wrapper {}

    header {
        height: 15vw;
    }

    header p {
        margin-top: 1px;
        margin-left: 9px;
    }

    header h1 img {
        width: 37vw;
    }

    header h1 {
        margin-left: -5vw;
        width: 35vw;
        margin: 0 auto 0 1vw;
    }

    header ul {
        width: 38px;
    }

    .div-description_title_2 {
        width: 70vw;
        margin: 0 auto 0 0;
    }


    .index_wrapper p.pre_intro {
        top: 70.8vw;
        font-size: 3.1vw;
    }

    .index_wrapper .shop_logo {
        top: 75.7vw;
        width: 94.3vw;
    }

    .index_wrapper p.shop_address {
        top: 90.8vw;
        font-size: 3vw;
        width: 100%;
    }

    .index_wrapper .address_area {
        position: initial;
        width: 100vw;
        margin: 0 auto;
        justify-content: space-evenly;
        background-image: url(https://new.himitsu-baito.jp/new-himitsu-baito-jp/file/img/index_sp_main_under.png);
        background-size: contain;
        /* padding-bottom: 6vw; */
        margin-bottom: 2vw;
        flex-direction: column;
        align-items: center;
    }

    .index_wrapper .address_area {
        background: none;
    }

    .index_wrapper .address_area ._recept span._recept_text {
        background: #3f4448;
        letter-spacing: 0.1vw;
    }

    .index_wrapper .address_area ._tel {
        position: initial;
        width: 70vw;
        font-size: 7vw;
        padding: 2vw 0 1vw;
        margin: 3vw 2vw;
    }

    .index_wrapper .address_area ._tel:before,
    .top_mv .address_area ._tel:before {
        width: 4.4vw;
        height: 3vw;
        margin-bottom: 1.1vw;
    }

    .index_wrapper .address_area ._recept {
        width: 80vw;
        display: flex;
        justify-content: center;
        gap: 5vw;
    }

    .index_wrapper .address_area ._recept span {
        margin-bottom: 0.3vw;
        font-size: 3.8vw;
    }

    .enter_btn {
        width: 90vw;
        margin: 0 auto;
        height: 18vw;
        font-size: 9vw;
        box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.5), inset 0px -3px 6px -2px rgba(0, 0, 0, 0.3);
        bottom: 7vw;
    }

    footer {
        padding: 5vw 3vw;
        margin-top: -0.8vw;
    }

    .site_map {
        width: 90vw;
        margin-bottom: 10vw;
    }

    .site_map ul {
        gap: 4vw;
        font-size: 3.5vw;
    }

    .site_map ul li {
        padding: 0.5vw 4vw 0.5vw 0;
    }

    .copyright p {
        font-size: 3vw;
        margin-bottom: 3vw;
    }

    .copyright h5 {
        font-size: 3vw;
    }

    .content_tilte {
        margin-bottom: 3vw;
    }

    .content_tilte p {
        font-size: 9vw;
        margin-bottom: 1.5vw;
    }

    .content_tilte span {
        font-size: 4.4vw;
    }

    .page_title {
        margin-bottom: 3vw;
    }

    .page_title p {
        font-size: 9vw;
        margin-bottom: 1.5vw;
    }

    .page_title span {
        font-size: 4.4vw;
    }


    .content_area {
        width: 94vw;
        margin: 0 auto 10vw;
    }

    .ricruit_area {
        width: 100%;
        padding: 10vw 7vw;
    }

    .ricruit_box {
        margin: 0 auto 5vw;
    }

    .ricruit_box h3 {
        font-size: 5vw;
        margin-bottom: 3vw;
    }

    .ricruit_box p {
        font-size: 4.3vw;
        margin-bottom: 3vw;
    }

    .time_box {
        padding: 1.8vw 2vw;
    }

    .ricruit_box li {
        font-size: 4.3vw;
        padding-left: 4.2vw;
        line-height: 5.3vw;
        margin-bottom: 1.5vw;
    }

    .price_system h3 {
        margin-bottom: 4vw;
        padding-bottom: 2vw;
    }

    .price_system h3 p {
        font-size: 8.2vw;
    }

    .price_system h3 span {
        font-size: 4.2vw;
        line-height: 5.3vw;
    }

    .price_system {
        width: auto;
        padding: 10vw 7vw;
    }

    .price_area {
        width: 100vw;
    }

    .price_system_box dl {
        font-size: 6vw;
        margin-bottom: 3vw;
        padding: 0 1vw;
    }

    .price_system_box_deli dl {
        font-size: 6vw;
        margin-bottom: 7vw;
        padding: 0 1vw;
    }

    .price_system_box_deli dd {
        font-size: 4.2vw;
        width: 68%;
        padding-top: 0.8vw;
    }

    .price_system_box_deli ul {
        gap: 1.8vw;
    }


    dl.bace_option {
        padding: 0 1vw 4vw;
        margin: 0 0 4vw;
    }

    .price_system_box {
        margin-bottom: 7vw;
    }

    .price_system_box_deli {
        margin-bottom: 7vw;
    }


    .precautions {
        padding: 0 0 5vw;
    }

    .precautions h4 {
        font-size: 4.7vw;
        margin-bottom: 4vw;
    }

    .precautions li {
        font-size: 3.6vw;
        line-height: 5.2vw;
        margin-bottom: 5vw;
        padding-left: 5.5vw;
    }

    .precautions li::before {
        left: 1vw;
    }

    .pay_credit {
        padding: 0 0 5vw;
    }

    .pay_credit h4 {
        font-size: 4.7vw;
        margin-bottom: 4vw;
    }

    .pay_credit li {
        font-size: 3.6vw;
        line-height: 5.2vw;
        margin-bottom: 5vw;
        padding-left: 5.5vw;
    }

    .pay_credit li::before {
        left: 1vw;
    }

    .pay_btn {
        /* width: 100%; */
        margin-bottom: 5vw;
        /* height: 10vw; */
        font-size: 4.7vw;
        padding: 6vw 3vw;
    }

    .pay_btn span {
        margin-top: 3vw;
        padding-top: 3vw;
        font-size: 2.9vw;
    }



    .page_title {
        width: 94vw;
    }

    .news_wrapper {
        height: 60vw;
        padding: 5vw;
    }

    .news_box h3 {
        font-size: 5.5vw;
        margin-bottom: 2vw;
    }

    .news_date {
        font-size: 4.5vw;
        margin-bottom: 2vw;
    }

    .news_date {
        font-size: 4vw;
        line-height: 5vw;
    }

    .news_text {
        font-size: 4vw;
        line-height: 5vw;
    }

    .top_twitter_box {
        height: 60vw;
    }

    .top_grid_box {
        grid-template-columns: 1fr;
        width: auto;
    }

    .select_reserve div {
        font-size: 4vw;
        padding: 4vw 0;
        margin-bottom: 3vw;
    }

    .select_reserve {
        width: 100%;
        margin-top: 4vw;
    }

    .info_link_area ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 0;
        width: 100%;
    }

    .info_link_area ul li {
        margin-bottom: -1vw;
    }


    .top_newcommer_area,
    .top_event_area {
        width: 100%;
    }

    .top_event_area {
        order: 1;
        margin-bottom: 0;
    }

    .top_newcommer_area {
        order: 2;
    }

    /* .index_wrapper {
        background: #1B2836;
    } */

    .index_wrapper article {}

    .index_contents .common_group_banner {
        width: 97vw;
    }

    .enter_botn img {
        width: 90vw;
    }

    .enter_botn {
        margin-bottom: 5vw;
    }

    .content_title div {
        font-size: 5.4vw;
        padding: 10vw 0 1vw;
    }

    .caution {
        margin-bottom: 2vw;
        line-height: 1.5;
        letter-spacing: 0.2vw;
        font-size: 2.8vw;
    }

    .concept_img {
        width: 95vw;
    }

    .div-description_title.div-description_title_3 {
        width: 45vw;
        margin: 0 auto 0 0;
    }

    .indexStoreIntroduction .Introduction_description .div-description_sub_title {
        padding: 0 0 0 7vw;
    }

    .indexStoreIntroduction .Introduction_description {
        width: auto;
    }

    .indexStoreIntroduction .Introduction_description h2 {
        font-size: 3.8vw;
    }

    .indexStoreIntroduction .Introduction_description h3 {
        font-size: 3.9vw;
    }

    .indexStoreIntroduction .Introduction_description p {
        font-size: 3vw;
        text-align: left;
    }

    .index_wrapper .address_area ._recept span {
        margin-bottom: 0.3vw;
        font-size: 3.3vw;
    }

    .index_wrapper p.shop_post_code {
        font-size: 3vw;
        left: 0;
        top: 89vw;
    }

    .widget__title h2 {
        font-weight: 600;
        font-size: 4.6vw;
        margin-top: 3vw;
    }

    .widget__title p {
        font-size: 3.6vw;
        font-weight: 600;
    }

    ._icon._newcomer {
        width: 10vw;
        bottom: 1.5vw;
        right: 1.5vw;
    }

    ._icon._sokuhime {
        width: 12vw;
    }

    .machihime_list ._icon._sokuhime {
        width: 18vw;
    }

    .short_movie_box {
        width: 96vw;
    }

    .short_movie_box video {
        width: 100%;
        height: 69vw;
        object-fit: cover;
    }

    .slick_short_movie_li {
        line-height: 1.5;
    }

    .top_short_movie_area {
        margin-bottom: 17vw;
    }

    .castPanel .staff_pr,
    .castPanel ._size,
    .castPanel ._shift {
        font-size: 3vw;
        margin: 2vw 0 !important;
    }

    .castPanel ._shift {
        padding: 1vw;
    }

    .castPanel ._name {
        font-size: 4.1vw;
        /* margin-top: 1vw; */
        margin: 2vw 0;
    }

    span._age {
        font-size: 3.5vw;
    }

    .staff_pr,
    ._size {
        /* margin: 3vw 0; */
    }


    /* .concept_area_1 {
        background-image: url(https://new.himitsu-baito.jp/new-himitsu-baito-jp/file/img/sm_concept_bg_1.jpg);
        background-size: 100%;
        height: 160vw;
        background-position: right;
    } */


    .concept_text_area_1 {
        width: 88vw;
        margin: 0 auto;
        padding: 4vw;
        /* background: rgba(0, 0, 0, 0.3);*/
    }

    .concept_area_1 {
        letter-spacing: 0.1vw;
        line-height: 1.6;
    }

    .concept_area_1 .main_text {
        padding: 8vw;
        padding-bottom: 12vw;
        padding-top: 5vw;
        font-size: 3.6vw;
    }

    .concept_area_1 .concept_detail_list {
        padding: 8vw;
        padding-top: 5vw;
        font-size: 3.6vw;
    }

    .concept_area_1 .concept_detail_list h5 {
        font-size: 4vw;
        border-bottom: 1px solid #000;
        margin-bottom: 4vw;
        padding-bottom: 1vw;
        font-weight: bold;
        background: linear-gradient(to right, #5763e5, #ff52ab, #ff52ab);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

    .concept_area_1 .pink {
        color: #de5295;
    }

    .concept_area_1 .sub_text {
        text-align: center;
        font-size: 3.4vw;
        background: #f3f3f3;
        margin-top: -2vw;
        padding: 3vw 0 8vw;
    }

    p.concept_head_1 {
        font-size: 4.8vw;
    }

    .concept_head_1 img {
        width: 80vw;
    }

    p.concept_sub_1 {
        font-size: 3.2vw;
        line-height: 1.5;
    }

    p.concept_main_1 {
        line-height: 1.7;
        font-size: 3.2vw;
        margin-bottom: 6vw;
    }

    .concept_area_2 {
        height: 90vw;
    }

    .concept_area_2 img {
        right: 0;
        left: 0;
        margin: auto;
        width: 80vw;
    }

    .top_mv p.pre_intro {
        top: 70.8vw;
        font-size: 3.1vw;
        right: 0;
        left: 0;
        margin: auto;
        text-align: center;
        position: initial;
        margin-top: 4vw;
    }

    .top_mv {
        margin-bottom: 5vw;
        position: relative;
        /* background: #f5f8ff; */
        /* padding-bottom: 9vw; */
        display: flex;
        justify-content: center;
        align-items: center;
        /* flex-direction: column-reverse; */
        flex-wrap: wrap;
        align-content: center;
        width: 100%;
        overflow: hidden;
    }

    .top_mv p.shop_post_code {
        top: 88.8vw;
        left: 4.6vw;
    }

    .top_schedule_h2::before {
        content: '';
        display: inline-block;
        width: 35.4vw;
        height: 8.7vw;
        background-image: url(https://new.himitsu-baito.jp/new-himitsu-baito-jp/file/img/top_schedule.png);
        background-size: contain;
        vertical-align: bottom;
        margin-right: 3vw;
    }

    .top_waiting_h2::before {
        content: '';
        display: inline-block;
        width: 29vw;
        height: 8.7vw;
        background-image: url(https://new.himitsu-baito.jp/new-himitsu-baito-jp/file/img/Stand-by.png);
        background-size: contain;
        vertical-align: bottom;
        margin-right: 3vw;
        background-repeat: no-repeat;
    }

    body {
        background-size: contain;
        padding-bottom: 16vw;
    }

    .address_area_index {
        bottom: 16%;
        height: 17%;
        font-size: 6.5vw;
        width: 75%;
    }

    .address_area_index p,
    .address_area_index a {
        height: 6.5vw;
    }

    .address_area_index div {
        grid-template-columns: 25vw 1fr;
        gap: 3vw;
    }

    .y_box {
        font-size: 4.3vw;
        width: 25vw;
        height: 6.5vw;
        padding: 1.4vw;
        border-radius: 1.5vw;
        margin-right: 1vw;
    }


    .top_mv p.shop_address {
        top: 90.6vw;
        font-size: 3vw;
        width: 100%;
        right: 0;
        left: 0;
        margin: auto;
        position: initial;
    }

    .top_mv .address_area {
        width: 100vw;
        margin: -1vw auto 0;
        justify-content: center;
        padding: 3vw;
        font-size: 4.3vw;
        gap: 2.5vw;
    }

    .review_list .pagination .page-item {
        padding: 3vw 3vw;
    }

    .slick-list.draggable {
        margin-bottom: 5vw;
    }

    .concept_area {
        width: 100vw;
    }

    .top_mv .address_area ._recept span._recept_text {
        background: #3f4448;
        letter-spacing: 0.1vw;
        font-size: 2.6vw;
        padding: 0.6vw;
        text-align: left;
    }

    .top_mv .address_area ._tel {
        position: initial;
        width: 74vw;
        font-size: 7vw;
        padding: 2vw 0 1vw;
        /* margin: 3vw 2vw; */
        text-align: center;
        margin-bottom: 5vw;
    }

    .top_mv .address_area ._tel:before,
    .top_mv .address_area ._tel:before {
        width: 4.4vw;
        height: 3vw;
        margin-bottom: 1.1vw;
    }

    .top_mv .address_area ._recept {
        width: 80vw;
    }

    .top_mv .address_area ._recept span {
        margin-bottom: 0.3vw;
        font-size: 3.3vw;
    }


    .top_media_area ._box {
        height: 63.2vw;
    }

    .top_media_area ._box .heaven_iframe,
    .top_media_area .heaven_box {
        height: 107.7vw;
    }

    li.big_list_title span {
        display: block;
        font-size: 2.8vw;
        margin-top: 0.9vw;
    }

    .castList .genre {
        text-align: center;
        margin: -0.4vw 0 0.5vw;
        width: auto;
        letter-spacing: 0.1vw;
        /* z-index: 238; */
    }

    .castList .genre .ubu,
    .castList .genre .tuma {
        padding: 1.5vw 0;
        height: 3.8vw;
        margin-top: -1vw;
    }

    ul.top_newcommer_slider .castPanel {
        margin-top: 2vw;
        font-size: 3.2vw;
        padding: 1vw;
    }

    ul.top_newcommer_slider span.castPanel.castpanel__debut {
        bottom: 14.8vw;
    }

    .sp_event_slider .slick-slide img {
        width: 100% !important;
    }


    section.schedule_area {
        padding-top: 5vw;
    }

    .widget__title {
        margin-bottom: 5vw;
    }

    .today_shukkin ul {
        display: flex;
        justify-content: center;
        box-sizing: border-box;
        width: 89.2vw;
        margin: 0 auto 3vw;
    }


    .today_shukkin ul li {
        padding: 1vw;
        width: 100%;
        text-align: center;
        border: 1px solid #666;
        margin-top: 3vw;
        background: #fff;
        color: #000;
        font-weight: 500;
        font-size: 4.7vw;
    }

    .today_shukkin ul li.today_text {
        background: #6ec9ca;
        color: #fff;
        border: 1px solid #6ec9ca;
    }

    .pro_sub_head {
        display: flex;
        justify-content: space-between;
        width: 97%;
        margin: 0 auto;
        margin-bottom: 4vw;
        border-bottom: 1px solid #000;
        padding-bottom: 2.2vw;
        font-size: 6.7vw;
        letter-spacing: 0.5vw;
        align-items: end;
    }

    .pro_sub_head li span {
        color: #e65177;
        font-size: 6.9vw;
    }

    .pro_sub_head .sub_text {
        font-size: 3.7vw;
    }

    .twitter_promotion img {
        margin-bottom: 4vw;
    }

    ._icon_list {
        width: 43.7vw;
        font-size: 3vw;
    }

    ul.big_list_contents {
        width: 84%;
        padding: 6vw;
        padding-top: 4vw;
        box-sizing: border-box;
    }

    #g-nav ul.big_list_contents li {
        margin-bottom: 5vw;
        padding-bottom: 1.5vw;
        font-size: 4vw;
    }

    ul.big_list {
        justify-content: normal;
        /* width: 100%; */
        border: none;
        padding-bottom: 0;
        padding-top: 0;
    }

    #g-nav li.big_list_title {
        padding: 3vw 0 3vw;
        font-size: 4.7vw;
        padding-left: 7vw;
    }

    .castStateIcons__icon.cast_genle.ubu,
    .castStateIcons__icon.cast_genle.tuma {
        width: 43.7vw;
        font-size: 3vw;
        padding: 1.5vw 0;
    }


    li.castStateIcons__icon {}

    section.top_three_content_area {
        width: 95%;
        overflow: initial;
        height: initial;
        flex-direction: column;
    }

    section.top_media_area {
        display: block;
        padding: 7vw 0 3vw;
    }

    section.top_media_area .vanilla {
        width: 91%;
        margin: 0 auto;
        margin-bottom: 6vw;
        padding: 1.8vw;
    }



    ul.top_newcommer_slider {
        background: none;
        border: none;
        margin-top: -2.5vw;
    }

    .top_newcommer_area .slick-slide img {}

    span.castPanel.castpanel__debut {
        width: 22vw;
        padding: 1vw;
        bottom: 14.8vw;
        font-size: 3.1vw;
    }

    ul.flex_start {
        justify-content: space-between;
        grid-template-columns: repeat(2, calc(100% / 2 - 0.7vw));
        width: 94vw;
    }

    .form_common {
        width: 93vw;
    }


    .openbtn {
        top: 10px;
        right: 6px;
        width: 37px;
        height: 35px;
        border-radius: 1.4vw;
    }

    .top_newcommer_area ._size {
        margin-bottom: 1.5vw;
        font-size: 3.2vw;
    }

    .openbtn span {
        width: 70%;
    }

    .openbtn span:nth-of-type(1) {
        top: 10px;
    }

    .openbtn span:nth-of-type(2) {
        top: 17px;
    }

    .openbtn span:nth-of-type(3) {
        top: 25px;
    }

    .top_event_box {
        padding: 3vw 3vw 0;
        margin: 0;
    }

    .slider-for img {
        width: 100%;
    }

    .top_event_box .slick-dots {
        bottom: -6.6vw !important;
    }

    .each_cast_box {
        margin-right: 0.1vw;
        margin-bottom: 5vw;
    }

    .castProfileBases .search_box {
        background: none;
    }

    .search_box ul {
        flex-wrap: wrap;
        width: 100%;
    }

    .profile_box {
        margin-bottom: 5vw;
    }

    .profile_box h3 p {
        font-size: 6vw;
    }

    .profile_box h3 span {
        font-size: 3.6vw;
    }


    p._tbwh {
        font-size: 4.5vw;
        margin: 4vw 0 0;
    }


    .castPanel__datas {
        padding-top: 3vw;
    }

    .each_cast_box .castPanel__datas ._shift,
    .schedule_area .castPanel__datas ._shift {
        width: auto;
        margin: 0 auto;
    }

    .enter_botn .btn {
        color: #fff;
        background-color: #fc8cbc;
        width: 30vw;
        font-size: 4.2vw;
        font-weight: 100;
        border-radius: 0.6vw;
    }

    .each_cast_box img {
        width: 100%;
        border-radius: 3px;
    }

    .icon_logo {
        width: 40vw;
        margin-left: 3vw;
        margin-bottom: 2.3vw;
    }

    .icon_logo img {
        width: 100%;
    }

    .widgetShift {
        width: 100%;
    }

    .widgetShift h2 {
        margin-left: 4.7vw;
        margin-bottom: -2vw;
        width: 41vw;
        font-size: 4.4vw;
    }

    .keep_out {
        overflow: hidden;
    }

    .keep_out img {
        width: 202%;
    }

    .tweet_confirm {
        background: #008ec9;
        background: -moz-linear-gradient(left, #07b4ca 0%, #06b3ca 25%, #008ec9 100%);
        background: -webkit-gradient(linear, left center, right center, from(#07b4ca), color-stop(25%, #06b3ca), to(#008ec9));
        background: -webkit-linear-gradient(left, #07b4ca 0%, #06b3ca 25%, #008ec9 100%);
        background: -o-linear-gradient(left, #07b4ca 0%, #06b3ca 25%, #008ec9 100%);
        background: linear-gradient(to right, #07b4ca 0%, #06b3ca 25%, #008ec9 100%);
        color: #fff;
        text-align: center;
        margin-top: 2vw;
        padding: 3vw 0;
        letter-spacing: 0.3vw;
        border-radius: 1vw;
        font-size: 4.7vw;
    }

    .contents .contents__title .contents__title__sub {
        text-align: center;
        font-size: 4vw;
    }

    p.sp.header_map {
        margin-right: 3vw;
        margin-top: 0.5vw;
    }

    .header_map img {
        width: 9.6vw;
        margin-right: 1vw;
        margin-left: -1vw;
    }

    li._name {
        font-size: 5.7vw;
        margin-top: 1vw;
    }


    li._size {
        font-size: 3.8vw;
    }

    li._name,
    li._size {
        margin-bottom: 1.2vw;
    }

    .point_contents,
    .campaign_contents,
    .hotel_contents,
    .price_contents,
    .online_contents,
    .profile_contents,
    .concept_contents,
    .access_contents,
    .schedule_contents,
    .cast_list_contents,
    .booking_contents {
        margin-top: 15vw;
    }


    .point_contents .contents__title,
    .campaign_contents .contents__title,
    .hotel_contents .contents__title,
    .price_contents .contents__title,
    .online_contents .contents__title,
    .profile_contents .contents__title,
    .concept_contents .contents__title,
    .access_contents .contents__title,
    .schedule_contents .contents__title,
    .cast_list_contents .contents__title,
    .booking_contents .contents__title {
        padding: 2vw 2vw;
    }

    .online_contents .finish_trigger {
        color: #000;
        text-align: center;
        line-height: 10vw;
        margin-bottom: 10vw;
        padding-top: 10vw;
    }

    .contents__title img {
        width: 60vw;
        height: auto;
        margin-left: 13vw;
        margin-top: 2vw;
    }

    ul.top_newcommer_slider span._age {
        font-size: 3vw;
    }

    .schedule_contents .contents__title .contents__title__sub {
        border-bottom: 0;
        width: auto;
        padding: 0;
        text-align: center;
        font-size: initial;
        margin-left: auto;
        margin: 3vw 0 5vw;
    }

    .confirm_contents p.confirm_trigger {
        font-size: 5.5vw;
        text-align: center;
        padding: 1.6vw 0;
        margin-bottom: 2.1vw;
    }

    .contents__title .contents__title__sub {
        width: 64vw;
        margin: 2vw auto;
        border: none;
        font-size: 4.8vw !important;
    }

    .weekPager_body ul {
        flex-wrap: wrap;
        text-align: center;
        justify-content: center;
        gap: 4vw 1vw;
        width: 96vw;
    }

    .weekPager_head {
        margin-bottom: 2.5vw;
    }

    .weekPager h4 {
        font-size: 4vw;
        font-weight: 500;
    }

    .next_week_btn {
        width: 25vw;
        font-size: 4.3vw;
        font-weight: 500;
        border-radius: 1.5vw;
        padding: 1vw;
    }

    .weekPager ul li {
        width: 23vw;
        padding: 2vw 0;
        height: 8vw;
    }

    .weekPager ul li.is-active {
        height: 9vw;
    }

    .weekPager {
        width: 96vw;
    }

    .weekPager_body_wrapper {
        width: 96vw;
    }

    .weekPager_body {
        width: 192vw;
    }

    span.weekPager__date {
        font-size: 3.5vw;
    }

    .schedule_box {
        display: block;
        width: 96vw;
    }

    /* アクセス */
    .shop_info {
        width: 90vw;
        font-size: 3.8vw;
        line-height: 1.2;
        margin: 5vw auto;
    }

    .shop_info dl {
        margin: 5.9vw 2vw;
    }

    .shop_info dt {
        margin-bottom: 1.6vw;
    }

    .shop_info dd._tel {
        font-size: 6.7vw;
    }

    .sub_big_list_contents {
        padding-bottom: 10vw;
    }

    ul.big_list_contents.sub_big_list_contents {
        padding-bottom: 19vw;
    }

    /* キャンペーン */
    section#section--campaign {
        width: 90vw;
        margin: 5vw auto;
    }


    /* オンライン予約 */
    .row.online_form {
        width: auto;
    }

    /* ホテルガイド */
    div#contentHotel {
        width: 95vw;
    }

    #contentHotel iframe {
        height: 90vw;
    }

    .hotelGradeBox caption {
        color: #fff;
        padding: 3vw 0;
        font-size: 5vw;
        letter-spacing: 0.1vw;
        font-weight: 100;
        /* margin-top: 3vw; */
    }

    .hotelGradeBox a,
    .mapTd a {
        color: blue;
        text-decoration: underline;
    }


    .tempTitle.tempTitle--01 {
        font-size: 5vw;
        width: auto;
        margin-bottom: 5vw;
    }


    section.section__group {
        width: 90vw;
        margin: 0 auto 5vw;
    }

    #contentHotel tr {
        display: grid;
        width: 100%;
    }

    .hotelGradeBox th,
    .hotelGradeBox td,
    .hotelGradeBox td.mapTd {
        width: auto;
        padding: 2vw 2vw;
        text-align: center;
        border-right: none;
    }

    #hotelGrade_01 th,
    #hotelGrade_02 th,
    #hotelGrade_03 th,
    #hotelGrade_01 td,
    #hotelGrade_02 td,
    #hotelGrade_03 td {
        border-right: none;
    }

    #g-nav {
        width: 65vw;
        padding-bottom: 34vw;
    }

    #g-nav li {
        padding: 3vw 1vw 0;
    }

    #g-nav li a {
        padding: 0 2vw 3vw;
    }

    .big_list a i {
        top: 2.9vw;
    }

    .big_list a {
        font-size: 6vw;
        padding-bottom: 1.5vw;
        margin-bottom: 3vw;
    }

    .nav_shop_info {
        gap: 3vw;
        padding: 1.5vw
    }

    .nav_shop_info dt {
        font-size: 3.5vw;
        padding: 1vw;
    }

    .nav_shop_info dd,
    .nav_shop_info dd a {
        font-size: 5vw;
        line-height: 5.3vw;
    }

    .openbtn.active img {
        width: 5vw;
        margin: 1.9vw 0.3vw 0.6vw 1.6vw;
    }

    .close_btn {
        padding: 3vw 0;
    }

    .close_btn img {
        width: 12vw;
    }

    /* ポイント */
    section#section--price {
        width: auto;
    }

    /* 料金システム */
    section.system_area {
        width: 97vw;
        display: block;
        margin-bottom: 1vw;
    }

    .p-creditGuide__ttl {
        width: 93%;
        padding: 0;
    }

    section.system_area img {
        width: 100%;
    }

    .p-creditGuide__description {
        padding: 3vw;
        line-height: 1.3;
    }

    .p-creditGuide__button span {
        display: none;
    }

    button.settlementForm {
        width: 95vw;
    }

    .p-creditGuide__button {
        margin: 10px 0;
    }

    .p-creditGuide__item ul li img {
        width: auto;
        height: 18vw;
    }

    .p-creditGuide__method__unit {
        width: 84%;
    }

    .p-creditGuide__method__unit {
        width: 79vw;
        color: #000;
    }

    section.cresit_area {
        width: auto;
        margin: 0 auto;
        margin-bottom: 11vw;
        width: 94vw;
    }

    section.cresit_area h3 {
        width: 80%;
        font-size: 5vw;
        margin-bottom: 4vw;
        padding-bottom: 1.1vw;
    }

    section.cresit_area pre {
        margin-bottom: 3.9vw;
        font-size: 3vw;
    }

    section.costume_area {
        width: 94vw;
    }

    section.costume_area h3 {
        width: 65vw;
        font-size: 5vw;
        margin-bottom: 4vw;
        padding-bottom: 1.1vw;
    }

    section.costume_area h3 span {
        font-size: 6vw;
    }

    .openbtn.active {
        right: 60vw;
    }

    section.costume_area p {
        font-size: 2.9vw;
        line-height: 1.7;
        text-align: left;
        letter-spacing: 0.3vw;
        margin-bottom: 6vw;
        line-height: 1.7;
    }

    ul.cos_list {
        display: flex;
        flex-wrap: wrap;
    }

    ul.cos_list li {
        width: calc(100%/3);
    }

    ul.cos_list li img {
        width: 30vw;
        margin-bottom: 0.5vw;
    }

    section.guide_area {
        width: 97vw;
    }

    .term_of_service pre,
    .term_of_service dt {
        font-size: 3.5vw;
        margin-bottom: 5vw;
    }

    .term_of_service pre {
        font-size: 4.5vw;
        margin-top: 6vw;
    }

    .term_of_service {
        padding: 4vw;
        margin: 0;
        width: 100%;
        box-sizing: border-box;
    }

    .term_of_service ol,
    .term_of_service p,
    .term_of_service dd {
        font-size: 3.6vw;
        letter-spacing: 0.1vw;
    }

    .term_of_service ol {
        margin: 0 1vw 0 6vw;
    }

    .term_of_service div {
        font-size: 3.5vw;
        margin-top: 14vw;
    }

    .p-creditGuide__method__unit li {
        line-height: 1.6;
        margin-top: 2vw;
    }

    #day_info {
        position: absolute;
        right: 0;
        left: 0;
        margin: auto;
        text-align: center;
        top: 101vw;
        font-size: 5vw;
    }

    .openbtn.active span:nth-of-type(1) {
        top: 2.6vw;
        left: 0.3vw;
        transform: translateY(6px) rotate(-45deg);
        /* width: 8.5vw; */
        opacity: 0;
    }

    .openbtn.active span:nth-of-type(3) {
        transform: translateY(-6px) rotate(45deg);
        width: 8.5vw;
        top: 5.6vw;
        /* left: 0.2vw; */
        opacity: 0;
    }

    /* プロフィール */
    .profile_right_box {
        padding: 0;
        width: 95vw;
        margin: 0 auto;
    }

    .movie_box {
        display: block !important;
        margin: 0;
        padding: 0 !important;
        margin-bottom: 30px !important;
    }

    .profile_flex_box {
        background: none;
        flex-direction: column-reverse;
        width: auto;
        justify-content: center;
        border-image-slice: 1;
        position: relative;
        width: 98vw;
        padding-top: 3vw;
        gap: 0;
    }

    .contProfilePanel {
        margin-bottom: 2vw;
    }




    .profile_staff_pr {
        font-size: 5.2vw;
        text-align: center;
        letter-spacing: 0.5vw;
        margin-bottom: 4vw;
    }

    .profile_left_area .thumnail {
        width: auto;
    }

    li.thumnail-item img {
        width: 83% !important;
        text-align: center !important;
        margin: 0 auto !important;
    }

    .profile_left_area .thumnail .slick-slide {
        display: block;
    }

    .profile_left_area .slider-area {
        display: initial;
    }

    .profile_left_area {
        margin-bottom: 13vw;
        width: 100%;
    }

    .profile_name_box {
        padding: 3.5vw;
    }

    .profile_right_box .contProfileDatas {
        padding: 4vw 3vw;
    }

    .profile_right_box .contProfileDatas dd {
        display: inline;
        line-height: 1.6;
    }

    .profile_right_box .castProfileBases ._size {
        text-align: center;
        padding: 3vw 0;
    }

    .profile_contents {
        letter-spacing: 0.25vw;
        padding-top: 4vw;
    }



    .profile_right_box .contProfileDatas dl {
        margin-bottom: 5.3vw;
    }

    .profile_right_box .cast_comment_area,
    .profile_right_box .staff_comment_area {
        margin-bottom: 6.5vw;
        padding: 3vw;
    }

    .profile_right_box .cast_comment_area ._head_box,
    .profile_right_box .staff_comment_area ._head_box {
        margin-bottom: 3vw;
    }

    .profile_right_box .cast_comment_area ._head_box ._head,
    .profile_right_box .staff_comment_area ._head_box ._head {
        margin-right: 2vw;
    }

    .profile_right_box .cast_comment_area ._head_box ._text ._head,
    .profile_right_box .staff_comment_area ._head_box ._text ._head {
        font-size: 4.5vw;
        margin-bottom: 1.3vw;
    }

    .profile_right_box .cast_comment_area ._head_box ._head img,
    .profile_right_box .staff_comment_area ._head_box ._head img {
        width: 12vw !important;
    }

    .profile_right_box .cast_comment_area ._head_box ._text ._sub,
    .profile_right_box .staff_comment_area ._head_box ._text ._sub {
        font-size: 4vw;
    }

    .qa_area {
        width: 95vw;
        margin-top: 7vw;
    }

    .qa_area .qcom {
        font-size: 4.1vw;
        margin-bottom: 3vw;
    }

    .qa_area .acom {
        font-size: 4.1vw;
        margin-bottom: 10vw;
    }

    .qa_area .contProfileStoreComment__body {
        border-radius: 3vw;
        padding: 5vw;
    }

    .schedule_list_profile {
        display: initial;
    }

    .schedule_list_profile dl {
        width: auto;
        margin: 0 auto;
        padding: 0;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 0.8vw;
        background: #fff;
    }

    .schedule_list_profile dl dt {
        font-size: 3.8vw;
        padding: 3vw 0;
        margin-bottom: 0;
        color: #fff;
        height: 8vw;
    }



    .schedule_list_profile dl dd {
        font-size: 3.8vw;
        padding: 3vw 0;
        margin-bottom: 0;
    }

    .schedule_list_profile dl ._reserve_btn {
        font-size: 3.8vw;
        height: 6vw;
        border-radius: 1.5vw;
    }

    .cast__state {
        width: 70%;
        padding: 1.2vw 0;
        font-size: 3.8vw;
        border-radius: 1vw;
        margin: 1vw auto;
    }

    .profile_flex_box2 {
        display: block;
        /* background: #171f2a; */
        margin: 0;
        width: 100%;
        padding-top: 8vw;
    }

    .profile_contents h3 {
        padding: 3vw 2vw;
    }

    .profile_flex_box2 iframe {
        width: 96%;
        height: 106vw;
    }

    .play_op_area {
        width: 88.5vw;
        margin: 0 auto 0 2.1vw;
    }

    .play_op_area .contProfilePayOption {
        width: auto;
        margin: 0 auto;
        padding: 0.5vw 0;
        box-sizing: border-box;
        border-radius: 4vw;
        background: #10171f;
    }

    .play_op_area .contProfilePayOption .contProfilePayOption__body.yuryou_contProfilePayOption__body dt {
        border: 1px solid #fff;
        padding: 2.6vw 4vw;
        width: 34.4vw;
        border-radius: 5.2vw;
        margin: 5vw 0 1.5vw;
    }

    /* フッター */
    footer .slide_banner {
        height: auto;
        background: #fff;
        color: #000;
    }

    footer .slick-slide img {
        height: 49vw !important;
        /* width: 47vw !important; */
    }

    footer .footer__banner--ttl {
        font-size: 4.4vw;
        padding: 2vw;
    }

    div#endNavi {
        background: linear-gradient(to bottom, #cf9755, #ca7624);
        /* display: flex; */
        position: fixed;
        bottom: 0;
        width: 100%;
        z-index: 1;
    }

    .sticky_footer {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
    }

    .sticky_footer li a {
        display: block;
        height: 100%;
    }

    div#endNavi_2 {
        position: fixed;
        bottom: 20vw;
        right: 1vw;
        width: 14vw;
        z-index: 1;
    }

    div#endNavi_3 {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        background: #a08f1e;
        position: fixed;
        bottom: 0;
        width: 100%;
        z-index: 1;
        color: #fff;
    }

    div#endNavi_3 .sticky_footer_3 {
        height: auto;
        padding: 2vw 0;
        line-height: 1.4;
        text-align: center;
    }

    div#endNavi_3 .line_btn {
        background: #00B900;
    }


    .line_btn_wrapper,
    .submit_btn_wrapper {
        width: 100%;
        border-radius: 1.5vw;
    }

    .sticky_footer_3 {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 20vw;
        gap: 5vw;
    }

    .sticky_footer_3_img {
        width: 12%;
    }

    .sticky_footer_3_text {
        font-size: 5vw;
        color: #fff;
        font-weight: bold;
        letter-spacing: 1px;
        /* font-family: monospace; */
    }


    /* フォントサイズ制御 */


    .play_op_area .contProfilePayOption .contProfilePayOption__body.yuryou_contProfilePayOption__body dt,
    .play_op_area .contProfilePayOption .contProfilePayOption__body.yuryou_contProfilePayOption__body dd {
        width: 88%;
        margin-bottom: 3vw;
    }

    .profile_right_box .cast_comment_main span,
    .profile_right_box .staff_comment_main span {
        font-size: 4.5vw !important;
        line-height: 2;
    }

    section.basic_option {
        width: 100%;
        border-radius: 0.6vw;
        margin-bottom: 7vw;
        padding: 4.2vw;
    }

    section.basic_option article {
        padding: 2.9vw;
        margin: 0;
        width: 100%;
        box-sizing: border-box;
        margin-bottom: 7vw;
    }

    section.basic_option .system_2 {
        width: 36vw;
        padding: 1.5vw;
        border-radius: 4vw;
        margin-bottom: 5vw;
    }

    section.basic_option article p {
        width: 69vw;
        margin: 0 auto;
        line-height: 1.6;
    }

    section.basic_option .each_genle {
        font-size: 3.8vw;
        margin: 2vw 0 5.2vw;
        display: initial;
    }

    section.basic_option .ubu_area,
    .tuma_area {
        width: 100%;
    }

    section.basic_option .each_genle dt {
        font-size: 4.8vw;
        margin-top: 10vw;
        text-align: left;
        margin-bottom: 2vw;
    }

    section.basic_option .each_genle dl {
        display: initial;
    }

    section.basic_option dd.price_jp {
        margin-bottom: 2vw;
        height: 6.7vw;
        width: 19.6vw;
        border-radius: 2vw;
    }

    section.basic_option dd.iteme_jp {
        width: 100%;
        margin-bottom: 6vw;
    }

    section.basic_option ul li {
        width: 39.6vw;
        margin-bottom: 2.8vw;
        padding: 2vw 0;
        font-size: 3.1vw;
        border-radius: 4vw;

    }

    .profile_right_box .cast_comment_main,
    .profile_right_box .staff_comment_main {
        font-size: 3.6vw !important;
        line-height: 4vw;
        padding: 4vw;
    }

    .today_castlist,
    .cast_list_all {
        margin-top: 5vw;
        margin-bottom: 5vw;
    }

    .reserve_wrapper {
        width: 100%;
        font-size: 4.2vw;
    }

    .form_wrapper {
        width: 100%;
        border-left: none;
        border-right: none;
        margin-bottom: 7vw;
    }

    .reserve_description,
    .reserve_tell,
    .reserve_line {
        border-left: none;
        border-right: none;
        margin-bottom: 7vw;
        padding-top: 5vw;
    }

    .tempTitle--02 {
        font-size: 4.3vw;
        width: auto;
        margin-bottom: 5vw;
    }

    .section__group__description {
        width: auto;
        font-size: 4.3vw;
    }

    .guide_title span {
        width: 5vw;
        height: 5vw;
    }

    .guide_box {
        width: auto;
        margin: 3vw;
    }

    .guide_box {
        width: auto;
    }

    .reserverFlow__safety {
        width: auto;
        font-size: 2.8vw;
        line-height: 3vw;
    }



    .reserve_line p,
    .reserve_line ul {
        width: auto;
        font-size: 4.3vw;
        margin-bottom: 3vw;
        line-height: 6vw;
    }

    .reserve_line p {
        margin-bottom: 3vw
    }

    .form_title {
        width: 40vw;
        font-size: 3.3vw;
        margin-bottom: 3vw;
    }

    .form_data {
        width: 50vw;
        margin-bottom: 3vw;
    }

    .form-control {
        width: 50vw;
        padding: 1.5vw;
        font-size: 3vw;
    }

    /* .icon_require {
        right: -1.5vw;
    } */

    .guide_text {
        font-size: 4.3vw;
        line-height: 4.2vw;
        margin-bottom: 1.5vw;
    }

    .reserve_tell,
    .reserve_line,
    .form_wrapper {
        padding: 5vw;
    }

    .reserve_tell a,
    .reserve_line a {
        width: auto;
        padding: 5vw;
        height: 15vw;
        font-size: 5vw;
        line-height: 6vw;
    }

    .btn.btn-success {
        width: 90vw;
        padding: 5vw;
        height: 15vw;
        font-size: 5vw;
        line-height: 6vw;
    }

    .confirm .submit_button {
        width: 100%;
        gap: 3vw;
        margin-bottom: 5vw;
    }

    .confirm .btn-default {
        height: 9vw;
    }

    .confirm .btn.btn-success {
        width: 48vw;
        padding: 5vw;
        height: 15vw;
        font-size: 5vw;
        line-height: 6vw;
    }

    .media_box h3 {
        font-size: 5vw;
    }

    .media_cast_img {
        width: 31vw;
    }

    .media_cast_name {
        font-size: 5vw;
        margin-bottom: 3vw;
    }

    .media_cast_name span {
        font-size: 3.8vw;
    }

    .media_cast_threesize {
        font-size: 3.8vw;
        margin-bottom: 3vw;
    }

    .menu_box.price_system.media_system {
        padding: 10vw 4vw;
    }

    .media_cast_comment {
        font-size: 3.3vw;
        line-height: 1.8;
    }

    .media_list .media_list_grid {
        grid-template-columns: 1fr 3fr;
        gap: 3vw;
        margin-bottom: 2vw;
        border: none;
    }

    .media_cast_icons {
        margin-bottom: 3vw;
    }

    .media_cast_icons ._icon_list img {
        width: 6vw;
    }

    .media_cast_icons ._icon_list {
        justify-content: left;
        width: 100%;
    }

    .media_link {
        font-size: 5vw;
        padding: 2vw 0;
    }

    .media_list .media_list_one {
        margin-bottom: 7vw;
        padding: 3vw;
    }

    .media_link_area {
        width: 100%;
        background: #fff;
        padding-bottom: 8vw;
        margin-bottom: 0;
    }

    .media_link_area_inner {
        display: block;
        width: 94vw;
    }

    .media_link_area_inner .content_tilte {
        margin: 0 auto;
        width: 24vw;
        margin-bottom: 4vw;
        margin-top: -15vw;
    }

    .media_link_area .media_banners {
        width: auto;
    }

    .media_link_area .media_banners .width_468 {
        display: block;
        margin-bottom: 0.6vw;
    }

    .media_link_area .media_banners .width_200 {
        display: block;
    }

    .review_search_area {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        justify-content: center;
        line-height: 2.4;
        align-items: baseline;
    }

    .review_search_head {
        margin-right: 3vw;
        font-size: 4vw;
    }

    #review_cast_ids {
        width: 45vw;
        background: #fff;
        color: #000;
        font-size: 4vw;
    }

    #review_cast_search {
        display: block;
    }

    #review_search_rate,
    #review_search_reset,
    #review_search_day {
        text-align: center;
        width: 21vw;
        border: none;
        padding: 0 0vw;
    }

    #review_search_rate input,
    #review_search_reset input,
    #review_search_day input {
        text-align: center;
        margin: 0;
        display: inline-block;
        border-right: 1px solid #ccc;
        padding: 0 4.4vw;
        font-size: 3.2vw;
        border-radius: 0;
    }

    .review_cast_name {
        font-size: 4vw;
        margin-bottom: 1vw;
    }

    .review_cast_threesize {
        font-size: 2.9vw;
        margin-bottom: 1vw;
    }

    .review_list ul li .review_info div {
        margin-bottom: 2vw;
    }

    .review_info {
        font-size: 3.5vw;
        padding: 0 1vw;
    }

    .review_list ul li {
        padding-top: 4vw;
        padding-bottom: 5vw;
    }
    .media_link_area img {
        width: 100%;
        max-width: fit-content;
    }
    .media_link_area .media_banners li {
        margin-bottom: 2vw;
    }

}

#datepicker {
    width: 52.6%;
    margin-right: 2.4%;
    height: 3.1vw;
    color: #000;
    font-size: 14px;
}

select[name="hourSelect"],
select[name="minuteSelect"] {
    background: #e8e8e8;
    border: 0;
    height: 3.1vw;
    width: 19.8%;
    text-align: center;
    font-size: 14px;
}

.today_ng {
    color: #462b01;
    text-align: center;
    font-size: 1.1vw;
    line-height: 1.3;
    margin-bottom: 1vw;
}

.media_link_area {
    background: #fff;
}

.booking_contents {
    margin-top: 4.5vw;
}

.booking_contents .reservation_calendar {
    color: #000;
    width: 56vw;
    margin: 0 auto;
}

.booking_contents .calendar_title h5 {
    font-size: 1.4vw;
    letter-spacing: 2px;
}

.booking_contents .calendar_title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1vw 2vw;
    background: #9c8a15;
    color: #fff;
}

.booking_contents .date_manipulation_wrapper {
    display: flex;
    justify-content: center;
    gap: 0.7vw;
}

.booking_contents .date_manipulation_wrapper div {
    padding: 0.3vw;
    background: #ffffff;
    color: #000;
    border-radius: 2vw;
    width: 5vw;
    text-align: center;
}

.booking_contents .date_area li {
    border: solid 1px;
    padding: 0.5vw 0;
}

.booking_contents .date_area,
.calendar_body {
    display: grid;
    grid-template-columns: 1fr repeat(7, 6vw);
    text-align: center;
}

.booking_contents .time_colums li,
.booking_contents .schedule_colums li {
    padding: 1vw 0;
    border: solid 1px;
    font-size: 1.5vw;
    box-sizing: border-box;
    height: 3.6vw;
}

ul.schedule_colums span {
    font-size: 2.25vw;
}

.booking_contents .week-0 {
    background: #fbefef;
}

.booking_contents .week-6 {
    background: #effbfb;
}

.booking_contents .time_colums,
.booking_contents .date_area {
    background: #fff;
}

.booking_contents input[type="submit"] {
    border: none;
    background: none;
    color: #000;
}

.booking_contents .schedule_colums li {
    /* font-size: 5vw; */
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.booking_contents .schedule_colums li input[type="submit"] {
    font-size: 2.25vw;
}

li.selectable {
    background: #06b19f;
}

li.selectable input {
    color: #fff !important;
}

input.cast_free_btn {
    width: 27vw;
    margin: 1.5vw auto;
    text-align: center;
    background: #a08f1e;
    color: #fff;
    margin-bottom: 1.5vw;
    padding: 1vw;
    border-radius: 0.5vw;
    font-size: 1.2vw;
    letter-spacing: 1px;
    font-weight: bold;
}

.review_input dl {
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 10px;
    color: #462b01;
    font-size: 1.2vw;
    padding: 2vw 0;
    border-bottom: 1px solid #d2d2d2;
    align-items: center;
}

.review_input dl span {
    color: red;
}

.review_input dl input,
.review_input dl select,
.review_input dl textarea {
    font-size: 1vw;
    width: 100%;
    padding: 0.4vw;
    font-weight: 100;
    font-family: auto;
    border: 1px solid #000;
}

.review_submit {
    text-align: center;
}

.review_submit input[type="submit"] {
    background: none;
    border: none;
    border: 1px solid #000;
    width: 15vw;
    padding: 0.8vw;
    letter-spacing: 1px;
    margin: 0 auto;
    margin-top: 0px;
    margin-top: 1vw;
    color: #000;
}

.review_submit button {
    background: black;
    color: #fff;
    padding: 0.3vw 1vw;
    margin-right: 1vw;
    letter-spacing: 1px;
}

@media screen and (max-width:767px) {

    /* ここにSP向けのCSS指定 */
    section.content_area.info_link_area {
        padding-bottom: 10vw;
    }

    .line_btn_wrapper,
    .submit_btn_wrapper,
    .btn-success,
    .reserve_tell a {
        border-radius: 3.2vw !important
    }

    .today_ng {
        text-align: left;
    }

    .form_common,
    .form_title,
    .form_data {
        display: initial;
        /* width: 140px!important; */
        display: flex;
        width: 100%;
        justify-content: left;
    }

    .form_data {
        line-height: 0;
        border: none;
    }

    .form-control {
        width: 100%;
        padding: 3vw;
        font-size: 3.5vw;
    }

    .form_title {
        width: 100%;
        margin-bottom: 3vw;
        text-align: left;
        font-size: 3.6vw;
        border: none;
        border-bottom: 1px solid #707070;
        padding: 2vw 2vw 0 2vw;
    }

    .cast_box {
        width: auto !important;
        border: none !important;
        /* font-size: 12px!important; */
    }

    #datepicker,
    select[name="hourSelect"],
    select[name="minuteSelect"] {
        height: 8.1vw;
        border-radius: none;
        color: #000;
    }

    .today_ng {
        font-size: 3.6vw;
        line-height: 1.5;
        margin-bottom: 2vw;
    }

    .guide_title,
    .guide_title p {
        font-size: 4.3vw !important;
        gap: 2vw;
        margin-bottom: 1vw;
    }

    .guide_title p {
        display: flex;
        padding-top: 1.4vw;
    }

    .slick-dots li {
        margin: 0 !important;
    }

    .slick-dots li button:before {
        font-size: 6px !important;
        margin: 0;
        width: 5px;
        height: 5px;
    }

    .white_back {
        padding: 0;
    }

    .enter_ask_area {
        gap: 1vw;
        padding: 7vw 0 40vh;
        flex-direction: column;
    }

    .enter_ask_caution {
        gap: 1vw;
        font-size: 3.8vw;
        line-height: 6vw;
        width: 90vw;
        margin: 0 auto 3vw;
        justify-content: center;
    }

    .enter_ask_caution_img {
        width: 12vw;
    }

    .enter_ask_btn {
        width: 78vw;
        font-size: 4.3vw;
        padding: 2.4vw;
    }

    .enter_ask_yes {
        margin-bottom: 1vw;
    }

    .search_box ul li:last-child {
        grid-column-start: 3;
        grid-column-end: 4;
    }

    .number-of-displayed {
        width: 16vw;
        padding: 1.5vw 2vw;
        border-radius: 3vw;
        right: 3.5vw;
        top: 5.4vw;
        font-size: 3vw;
    }

    p.select_cast_name {
        text-align: center;
        font-size: 5vw;
        margin: 4vw;
    }

    .number_icon {
        margin-right: 1.7vw;
    }

    .select_casts ul li {
        grid-template-columns: repeat(2, 1fr);
        gap: 2vw;
        padding: 0;
        margin: 0;
        margin-bottom: 4vw;
        padding-bottom: 4vw;
    }

    .select_casts ul li .flex-item_1 {
        order: 1;
        grid-column: 1 / span 1;
    }

    .select_casts ul li .flex-item_2 {
        order: 3;
        grid-column: 1 / span 2;
        width: 100%;
        line-height: 1.3;
    }

    .select_casts ul li .flex-item_3 {
        order: 2;
        grid-column: 2 / span 1;
        align-self: self-start;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        /* height: -webkit-fill-available; */
    }

    .select_casts ul li input.select_cast_btn {
        font-size: 4vw;
        padding: 5vw;
    }

    .reserve_process_sub_title h3 {
        padding-bottom: 2vw;
        font-size: 5vw;
        margin-bottom: 0vw;
    }

    .select_casts .work_time {
        font-size: 5vw;
    }

    .select_cource ul li span {
        font-size: 6vw;
    }

    .select_cource ul li .select_cast_btn {
        font-size: 4vw;
        padding: 1vw 4vw;
        border-radius: 1vw;
        box-sizing: border-box;
    }

    footer {
        padding-top: 3vw !important;
    }

    .booking_contents {
        margin-top: 15vw;
    }

    .booking_contents .reservation_calendar {
        width: 96vw;
    }

    .booking_contents .calendar_title h5 {
        font-size: 4vw;
    }

    .booking_contents .date_area,
    .calendar_body {
        grid-template-columns: 1fr repeat(7, 11vw);
    }

    .booking_contents .time_colums li,
    .booking_contents .schedule_colums li {
        font-size: 4vw;
        height: 10vw;
        padding: 4vw;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .booking_contents .date_manipulation_wrapper div {
        width: 19vw;
        margin-left: 1vw;
    }

    .booking_contents .schedule_colums li input[type="submit"] {
        font-size: 5.9vw;
    }

    ul.schedule_colums span {
        font-size: 6vw;
    }

    .reserve_info {
        width: 100%;
    }

    .reserve_info dl {
        display: block;
        border: none;
        margin-bottom: 6vw;
    }

    .reserve_info dl dt {
        border: none;
        border-bottom-width: medium;
        border-bottom-style: none;
        border-bottom-color: currentcolor;
        border-bottom: 1px solid #000;
        margin-bottom: 2vw;
    }

    .reserve_info.fixed dd {
        border: none;

        padding: 3vw;

    }

    .reserve_info dl dd {
        padding: 1vw;
        border: 1px solid #000;
    }

    .form_wrapper .reserve_info dl dd input,
    .form_wrapper .reserve_info dl dd textarea {
        border: none;
        padding: 3vw;
        font-size: 4.2vw;
        width: 100%;
    }

    input#来店区分_0 {
        width: 5vw;
        border: 1px solid #000;
        height: 5vw;
    }

    .form_wrapper .reserve_info dl dd.raiten_kubun {
        border: none !important
    }

    /* ここにSP向けのCSS指定 */
    .review_input dl {
        display: block;
        /* padding-bottom: 3vw; */
        margin-bottom: 4vw;
        border: none;
    }

    .review_input dl dt {
        font-size: 4.5vw;
        margin-bottom: 3vw;
    }

    .review_input dl input,
    .review_input dl select,
    .review_input dl textarea {
        font-size: 4.5vw;
        padding: 2vw;
        color: #000;
        border-radius: 0;
        border: 1px solid #000;
    }

    .review_input dl select {
        border: 1px solid #000
    }

    .review_submit input[type="submit"] {
        width: 49vw;
        font-size: 5vw;
        color: #000;
        border-radius: 0;
        padding: 3vw 0;
    }

    .review_submit button {
        padding: 1vw 6vw;
        font-size: 4vw;
    }

    .review_search_area {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        justify-content: center;
        line-height: 2.4;
        align-items: center;
        padding: 3vw;
        gap: 3vw 0vw;
    }

    .review_search_head {
        margin-right: 3vw;
        font-size: 4vw;
    }

    #review_cast_ids {
        width: 45vw;
        background: #fff;
        color: #000;
        font-size: 4vw;
        padding: 0 3vw;
    }

    #review_cast_search {
        display: block;
    }

    #review_search_rate,
    #review_search_reset,
    #review_search_day {
        text-align: center;
        width: 21vw;
        border: none;
        padding: 0 0vw;
    }

    #review_search_rate input,
    #review_search_reset input,
    #review_search_day input {
        text-align: center;
        margin: 0;
        display: inline-block;
        border-right: 1px solid #ccc;
        padding: 0 4.4vw;
        font-size: 3.2vw;
        border-radius: 0;
    }

    .review_cast_name {
        font-size: 4vw;
        margin-bottom: 1vw;
    }

    .review_cast_threesize {
        font-size: 2.9vw;
        margin-bottom: 1vw;
    }

    .review_list ul li .review_info div {
        margin-bottom: 2vw;
    }

    .review_info {
        font-size: 3.5vw;
        padding: 0 1vw;
    }

    .review_list ul li {
        padding-top: 4vw;
        padding-bottom: 5vw;
    }

    input.cast_free_btn {
        width: 100%;
        font-size: 4vw;
        padding: 4vw 0;
        margin-bottom: 6vw
    }
}

.sp_event_slider img {
    height: 88vw;
    object-fit: contain;
}

.sp_event_slider .slick-track {
    margin-bottom: 4vw;
}

/* 画像のアスペクト比を保持 */
.lazyload,
.lazyloading {
    opacity: 0;
}

.lazyloaded {
    opacity: 1;
    transition: opacity 300ms;
}

@media(min-width:768px) {
    .top_event_box {
        width: 50vw;
    }
}