<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:300,400,500,700&amp;display=swap&amp;subset=japanese');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@200;400;500;700;900&amp;display=swap');
@import url('https://fonts.googleapis.com/css2?family=BIZ+UDPGothic:wght@400;700&amp;display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;700;900&amp;display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP&amp;display=swap');
@import url('https://fonts.googleapis.com/css2?family=Yomogi&amp;display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic&amp;display=swap');

html {
    margin: 0;
    padding: 0;
    font-size: 100%;
    -ms-text-size-adjust: 100%;
    width: 100%;
    height: 100%;
    font-size: 62.5%;
}

body {
    margin: 0;
    padding: 0;
    font-family: -apple-system, BlinkMacSystemFont, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", sans-serif;
    color: #000;
    font-size: 1.4rem;
    width: 100%;
    height: 100%;
    background: #fff;
}

_:-ms-lang(x)::-ms-backdrop body {
    font-family: "メイリオ", Meiryo, sans-serif;
}

div {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

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

a:hover {
    color: #484848;
}

ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

img {
    width: 100%;
    height: auto;
}

pre {
    margin: 0;
    font-size: inherit;
    font-family: inherit;
    white-space: pre-wrap;
}

input[type="text"],
input[type="email"],
select,
input[type="tel"] {
    -webkit-appearance:none;
}

input[type="text"] {
    font-size: 1.6rem;
}

select::-ms-expand {
    display: none;
}

input[type="submit"] {
    -webkit-appearance:none;
}

textarea {
    -webkit-appearance:none;
}

input[type="submit"]:focus {
    outline: 0;
}

::placeholder {
   color: #4b4b4b;
}

.-align_center {
    text-align: center !important;
}
.-align_right {
    text-align: right;
}

.-align_left {
    text-align: left;
}

.-mt_8 {
    margin-top: 8px !important;
}

.-mt_10 {
    margin-top: 10px !important;
}

.-mt_20 {
    margin-top: 20px !important;
}

.-mt_30 {
    margin-top: 30px !important;
}

.-mt_40 {
    margin-top: 40px !important;
}

.-mt_60 {
    margin-top: 60px !important;
}

.-mb_8 {
    margin-bottom: 8px !important;
}

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

.-mb_15 {
    margin-bottom: 15px !important;
}

.-mb_20 {
    margin-bottom: 20px !important;
}

.-mb_30 {
    margin-bottom: 30px !important;
}

.-mb_40 {
    margin-bottom: 40px !important;
}

.-mb_60 {
    margin-bottom: 60px !important;
}

.-pt_18 {
    padding-top: 18px !important;
}

.-fs_10 {
    font-size: 1.0rem !important;
}

.-fs_14 {
    font-size: 1.4rem !important;
}

.-fs_16 {
    font-size: 1.6rem !important;
}

.-fs_18 {
    font-size: 1.8rem !important;
}

.-mr_15 {
    margin-right: 15px !important;
}

.-ml_15 {
    margin-left: 15px !important;
}

.-f_small {
    font-size: 1.2rem !important;
}

.-fc_pink {
    color: #e53af6 !important;
}

.-fc_red {
    color: #c20025 !important;
}

.-fc_light_blue {
    color: #2e99e4 !important;
}

.bold {
    font-weight: bold;
}
.underline {
    text-decoration: underline;
}

.-flex {
    display: flex;
}

.-flex_between {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.-flex_center {
    display: flex;
    justify-content: center !important;
    align-items: center;
}

.fadein_sc {
    opacity: 0;
    transition: opacity .6s .1s;
}

.fadein_sc_up {
    opacity: 0;
    transform: translateY(120px);
    transition: opacity .6s .1s,transform .6s .1s;
}

.-w_100p {
    width: 100% !important;
}

.-w_50p {
    width: 50% !important;
}

.-w_auto {
    width: auto !important;
}

.-w_160 {
    width: 160px;
}

/*---------------------------------
 Common
---------------------------------*/
#wrapper {
    position: relative;
    margin-top: 88px;
    min-height: 100%;
    height: auto;
}

.container {
    max-width: 96%;
    margin: 0 auto;
}

.container_narrow {
    max-width: 90%;
    margin: 0 auto;
}

.section {
    padding-top: 15px;
}

.main_area_contents .section:first-child {
    padding-top: 10px;
}

.display_pc {
    display: none;
}

.display_pc_inline {
    display: none;
}

.display_sp {
    display: inline-block;
}

.display_none {
    display: none;
}

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

.main_area_side {
    display: none;
}

.main_area_contents {
    width: 100%;
}

.section_title {
    display: flex;
    justify-content: center;
    color: #231815;
    font-family: 'BIZ UDPGothic', sans-serif;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: .5px;
    position: relative;
    /*margin: 22px 0;*/
    margin: 0px 0 5px;
    padding: 0;
}

.section_title.section_title_search {
    font-size: 1.5rem;
    height: 90px;
    background-image:url("../img/bg_title_search.svg");
    background-repeat: no-repeat;
    background-size: 150px 90px;
    background-position: center center;
    padding: 36px 0;
}

.section_title.section_title_ranking {
    font-size: 1.5rem;
    height: 88px;
    background-image:url("../img/bg_title_ranking.svg");
    background-repeat: no-repeat;
    background-size: 180px 88px;
    background-position: center center;
    padding: 36px 0;
}

.section_title.section_title_timeline {
    font-size: 1.5rem;
    height: 44px;
    background-image:url("../img/bg_title_timeline.svg");
    background-repeat: no-repeat;
    background-size: 172px 44px;
    background-position: center center;
    padding: 18px 0;
}

.section_title.section_title_clear {
    font-size: 1.5rem;
    height: 80px;
    background-image:url("../img/bg_title_clear.svg");
    background-repeat: no-repeat;
    background-size: 326px 80px;
    background-position: center center;
    padding: 32px 0;
}

.section_title.section_title_newopen {
    font-size: 1.5rem;
    height: 50px;
    background-image:url("../img/bg_title_newopen.svg");
    background-repeat: no-repeat;
    background-size: 178px 50px;
    background-position: center center;
    padding: 8px 0;
}

.section_title.section_title_newpost {
    font-size: 1.5rem;
    height: 55px;
    background-image:url("../img/bg_title_newpost.svg");
    background-repeat: no-repeat;
    background-size: 190px 55px;
    background-position: center center;
    padding: 12px 0;
}

.section_title.section_title_cast {
    font-size: 1.5rem;
    height: 72px;
    background-image:url("../img/bg_title_cast.svg");
    background-repeat: no-repeat;
    background-size: 120px 72px;
    background-position: center center;
    padding: 36px 0;
}

.section_title.section_title_question {
    font-size: 1.5rem;
    height: 62px;
    background-image:url("../img/bg_title_question.svg");
    background-repeat: no-repeat;
    background-size: 188px 62px;
    background-position: center center;
    padding: 18px 0;
}

.section_title.section_title_info {
    font-size: 1.5rem;
    height: 87px;
    background-image:url("../img/bg_title_info.svg");
    background-repeat: no-repeat;
    background-size: 260px 87px;
    background-position: center center;
    padding: 38px 0;
    margin: 22px 0 0;
}

.section_title.section_title_gravure {
    font-size: 1.5rem;
    height: 88px;
    background-image:url("../img/bg_title_gravure.svg");
    background-repeat: no-repeat;
    background-size: 175px 88px;
    background-position: center center;
    padding: 38px 0;
}

.section_title.section_title_interview {
    font-size: 1.5rem;
    height: 66px;
    background-image:url("../img/bg_title_interview.svg");
    background-repeat: no-repeat;
    background-size: 192px 66px;
    background-position: center center;
    padding: 16px 0;
}

.section_title.section_title_review {
    font-size: 1.5rem;
    height: 68px;
    background-image:url("../img/bg_title_review.svg");
    background-repeat: no-repeat;
    background-size: 140px 68px;
    background-position: center center;
    padding: 16px 0;
}

.section_title.section_title_shop {
    font-size: 1.5rem;
    height: 50px;
    background-image:url("../img/bg_title_shop.svg");
    background-repeat: no-repeat;
    background-size: 110px 50px;
    background-position: center center;
    padding: 8px 0;
}

.section_title.section_title_coupon {
    font-size: 1.5rem;
    height: 50px;
    background-image:url("../img/bg_title_coupon.svg");
    background-repeat: no-repeat;
    background-size: 156px 50px;
    background-position: center center;
    padding: 12px 0;
}

.section_title.section_title_system {
    font-size: 1.5rem;
    height: 50px;
    background-image:url("../img/bg_title_system.svg");
    background-repeat: no-repeat;
    background-size: 154px 50px;
    background-position: center center;
    padding: 12px 0;
}

.section_title.section_title_photo {
    font-size: 1.5rem;
    height: 52px;
    background-image:url("../img/bg_title_photo.svg");
    background-repeat: no-repeat;
    background-size: 130px 52px;
    background-position: center center;
    padding: 12px 0;
}

.section_title.section_title_event {
    font-size: 1.5rem;
    height: 39px;
    background-image:url("../img/bg_title_event.svg");
    background-repeat: no-repeat;
    background-size: 113px 39px;
    background-position: center center;
    padding: 12px 0;
}

.section_title.section_title_joboffer {
    font-size: 1.5rem;
    height: 73px;
    background-image:url("../img/bg_title_joboffer.svg");
    background-repeat: no-repeat;
    background-size: 226px 73px;
    background-position: center center;
    padding: 24px 0;
}

.section_title.section_title_shopdata {
    font-size: 1.5rem;
    height: 79px;
    background-image:url("../img/bg_title_shopdata.svg");
    background-repeat: no-repeat;
    background-size: 200px 79px;
    background-position: center center;
    padding: 38px 0;
}

.section_title.section_title_topic {
    font-size: 1.5rem;
    height: 60px;
    background-image:url("../img/bg_title_topic.svg");
    background-repeat: no-repeat;
    background-size: 118px 60px;
    background-position: center center;
    padding: 18px 0;
}

.section_title.section_title_profile {
    font-size: 1.5rem;
    height: 68px;
    background-image:url("../img/bg_title_profile.svg");
    background-repeat: no-repeat;
    background-size: 150px 68px;
    background-position: center center;
    padding: 18px 0;
    margin: 0 0 22px;
}

.section_title.section_title_blog {
    font-size: 1.5rem;
    height: 60px;
    background-image:url("../img/bg_title_blog.svg");
    background-repeat: no-repeat;
    background-size: 119px 60px;
    background-position: center center;
    padding: 12px 0;
}

.section_title.section_title_schedule {
    font-size: 1.5rem;
    height: 88px;
    background-image:url("../img/bg_title_schedule.svg");
    background-repeat: no-repeat;
    background-size: 245px 55px;
    background-position: center center;
    padding: 23px 0;
}

.section_sub_title {
    display: inline-block;
    /*margin: 30px auto;*/
    margin: 15px auto;
    padding: 0 0 5px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    font-size: 1.4rem;
    background: url(../img/wave_p.png) left bottom repeat-x;
    background-size: 14px;
}

.section_sub_title a {
    color: #2e99e4;
    transition: opacity .3s;
}

.section_sub_title a:hover {
    opacity: .8;
}

.member_section_title {
    color: #000;
    font-family: 'BIZ UDPGothic', sans-serif;
    font-size: 2.0rem;
    font-weight: 700;
    letter-spacing: .5px;
    margin: 30px 0 15px;
    padding: 0;
    text-align: center;
    position: relative;
}

.member_sub_title {
    margin: 0 0 30px;
    padding: 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    font-size: 1.6rem;
    text-align: center;
}

.separate_title {
    color: #121e1c;
    font-size: 1.6rem;
    font-weight: 700;
    margin: 20px 0 15px;
    padding: 0;
    display: flex;
    align-items: center;
}

.separate_title:before,
.separate_title:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #8b8b8b;
}
 
.separate_title:before {
    margin-right: 10px;
}
 
.separate_title:after {
    margin-left: 10px;
}


@media (min-width: 641px) {
    #wrapper {
        margin-top: 0px;
    }
    
    .container {
        width: 100%;
    }
    
    .container_narrow {
        max-width: 600px;
    }
    
    .section {
        padding-top: 30px;
    }

    .section:not(.section_home_shop_ranking):not(.section_home_timeline):not(.section_home_girl_ranking):not(.section_home_clear_accounting):not(.section_home_shop_newopen) {
        padding-top: 60px;
        min-height: 1075px;
    }
    
    .section_home_shop_ranking {
        padding-top: 0px;
    }

    .main_area_contents .section:first-child {
        padding-top: 0px;
    }

    .display_pc {
        display: block;
    }

    .display_pc_inline {
        display: inline-block;
    }

    .display_sp {
        display: none;
    }
    
    .main_area_inner {
        max-width: 980px;
        display: flex;
    }
    
    .main_area_side {
        display: block;
        width: 200px;
        margin: 0 auto;
        text-align: center;
    }

    .main_area_contents {
        width: calc( 100% - 210px );
        margin: 0 0 0 10px;
    }

    .section_title {
        font-size: 2.4rem;
        /*margin: 30px 0;*/
        margin: 0px 0 10px;
    }

    .section_title.section_title_search {
        font-size: 2.2rem;
        height: 147px;
        background-size: 246px 147px;
        padding: 64px 0;
    }

    .section_title.section_title_ranking {
        font-size: 2.2rem;
        height: 149px;
        background-size: 306px 149px;
        padding: 64px 0;
    }

    .section_title.section_title_timeline {
        font-size: 2.2rem;
        height: 75px;
        background-size: 296px 75px;
        padding: 30px 0;
    }

    .section_title.section_title_clear {
        font-size: 2.2rem;
        height: 141px;
        background-size: 572px 141px;
        padding: 60px 0;
    }

    .section_title.section_title_newopen {
        font-size: 2.2rem;
        height: 84px;
        background-size: 301px 84px;
        padding: 14px 0;
    }
    
    .section_title.section_title_newpost {
        font-size: 2.2rem;
        height: 93px;
        background-size: 324px 93px;
        padding: 20px 0;
    }

    .section_title.section_title_cast {
        font-size: 2.2rem;
        height: 123px;
        background-size: 204px 123px;
        padding: 60px 0;
    }

    .section_title.section_title_question {
        font-size: 2.2rem;
        height: 103px;
        background-size: 314px 103px;
        padding: 30px 0;
    }

    .section_title.section_title_info {
        font-size: 2.2rem;
        height: 149px;
        background-size: 444px 149px;
        padding: 66px 0;
        margin: 30px 0 0;
    }

    .section_title.section_title_gravure {
        font-size: 2.2rem;
        height: 149px;
        background-size: 296px 149px;
        padding: 66px 0;
    }

    .section_title.section_title_interview {
        font-size: 2.2rem;
        height: 116px;
        background-size: 335px 116px;
        padding: 30px 0;
    }

    .section_title.section_title_review {
        font-size: 2.2rem;
        height: 116px;
        background-size: 238px 116px;
        padding: 30px 0;
    }

    .section_title.section_title_shop {
        font-size: 2.2rem;
        height: 84px;
        background-size: 183px 84px;
        padding: 15px 0;
    }

    .section_title.section_title_shop {
        font-size: 2.2rem;
        height: 50px;
        background-size: 110px 50px;
        padding: 8px 0;
    }

    .section_title.section_title_coupon {
        font-size: 2.2rem;
        height: 86px;
        background-size: 271px 86px;
        padding: 20px 0;
    }

    .section_title.section_title_system {
        font-size: 2.2rem;
        height: 85px;
        background-size: 262px 85px;
        padding: 20px 0;
    }

    .section_title.section_title_photo {
        font-size: 2.2rem;
        height: 94px;
        background-size: 234px 94px;
        padding: 20px 0;
    }

    .section_title.section_title_event {
        font-size: 2.2rem;
        height: 65px;
        background-size: 190px 65px;
        padding: 20px 0;
    }

    .section_title.section_title_joboffer {
        font-size: 2.2rem;
        height: 123px;
        background-size: 382px 123px;
        padding: 38px 0;
    }

    .section_title.section_title_shopdata {
        font-size: 2.2rem;
        height: 135px;
        background-size: 340px 135px;
        padding: 72px 0;
    }

    .section_title.section_title_topic {
        font-size: 2.2rem;
        height: 102px;
        background-size: 201px 102px;
        padding: 36px 0;
    }
    
    .section_title.section_title_profile {
        font-size: 2.2rem;
        height: 116px;
        background-size: 256px 116px;
        padding: 32px 0;
        margin: 0 0 30px;
    }

    .section_title.section_title_blog {
        font-size: 2.2rem;
        height: 84px;
        background-size: 166px 84px;
        padding: 18px 0;
    }

    .section_title.section_title_schedule {
        font-size: 2.2rem;
        height: 84px;
        background-size: 298px 67px;
        padding: 18px 0;
    }
    
    .section_sub_title {
        /*margin: 40px 0;*/
        margin: 25px 0;
        font-size: 2.0rem;
        background-size: 20px;
        padding: 0 0 10px;
    }
    
    .member_section_title {
        font-size: 2.6rem;
        margin: 60px 0 30px;
    }

    .member_sub_title {
        margin: 0 0 40px;
        font-size: 2.2rem;
    }

    .separate_title {
        font-size: 1.8rem;
        margin: 30px 0 20px;
    }


}

/*---------------------------------
 Btn
---------------------------------*/

.btn {
    font-family: "Font Awesome 5 Free";
    display: inline-block;
    width: 100%;
    height: 36px;
    line-height: 34px;
    text-align: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border-radius: 5px;
    background: #00d0af;
    color: #fff;
    border: none;
    cursor: pointer;
    white-space: nowrap;
    font-size: 1.6rem;
    letter-spacing: 1px;
    font-weight: 700;
}

.btn:hover {
    color: #ffff78;
    opacity: .8;
}

.btn_small {
    width: auto;
    padding: 0 20px;
    height: 20px;
    line-height: 20px;
    font-size: 1.4rem;
}

.btn_gray {
    max-width: 165px;
    height: 30px;
    line-height: 28px;
    border-radius: 3px;
    background: #c9caca;
    color: #fff;
    font-size: 1.3rem;
    background-image:url("../img/arrow_double_w.svg");
    background-repeat: no-repeat;
    background-size: 12px 12px;
    background-position: right 20px center;
    margin: 20px 0;
    letter-spacing: 0px;
}

.btn_gray:hover {
    color: #fff;
    opacity: .8;
}

.btn_double_arrow {
    color: #ffff78;
    font-size: 1.4rem;
    background-image:url("../img/arrow_double_y.svg");
    background-repeat: no-repeat;
    background-size: 12px 12px;
    background-position: right 14px center;
    letter-spacing: 0px;
}

.btn_double_arrow:hover {
    color: #ffff78;
    opacity: .8;
}

.btn_yellow {
    background: #ffff78;
    color: #00d0af;
}

.btn_yellow:hover {
    color: #00d0af;
    opacity: .8;
}

.btn_pink {
    background: #ff78ff;
}

.btn_pink:hover {
    opacity: .8;
}

.btn_pink_middle {
    max-width: 270px;
    height: 30px;
    line-height: 28px;
    border-radius: 3px;
    background: #ff78ff;
    color: #fff;
    font-size: 1.3rem;
    background-image:url("../img/arrow_double_w.svg");
    background-repeat: no-repeat;
    background-size: 12px 12px;
    background-position: right 15px center;
    margin: 20px 0 5px;
    letter-spacing: 0px;
}

.btn.-gray, .form_input_area input[type="submit"].btn.-gray {
    background: #777 !important;
    color: #fff !important;
}

.btn + .btn {
    margin: 10px 0 0;
}


@media (min-width: 641px) {
    .btn {
        max-width: 610px;
        height: 54px;
        line-height: 52px;
        border-radius: 10px;
        font-size: 2.2rem;
        background-size: 18px 18px;
        background-position: right 22px center;
    }

    .btn_small {
        width: auto;
        padding: 0 20px;
        height: 28px;
        line-height: 26px;
        border-radius: 5px;
        font-size: 1.6rem;
    }
    
    .btn_gray {
        max-width: 280px;
        height: 50px;
        line-height: 48px;
        border-radius: 5px;
        font-size: 1.6rem;
        background-size: 18px 18px;
        background-position: right 35px center;
    }
    
    .btn_double_arrow {
        max-width: 610px;
        height: 60px;
        line-height: 58px;
        border-radius: 10px;
        font-size: 2.4rem;
        background-size: 18px 18px;
        background-position: right 22px center;
    }

    .btn + .btn {
        margin: 15px 0 0;
    }
    
    .btn_pink_middle {
        max-width: 370px;
        height: 50px;
        line-height: 48px;
        border-radius: 5px;
        font-size: 1.6rem;
        background-size: 18px 18px;
        background-position: right 35px center;
    }
}

/*---------------------------------
 Form部品
---------------------------------*/

input[type="text"], input[type="password"] {
    position: relative;
    width: 100%;
    height: 32px;
    line-height: 32px;
    border-radius: 4px;
    box-sizing: border-box;
    margin: 0;
    padding: 0 12px;
    display: inline-block;
    background: #f7f8f8;
    border: 1px solid #b4b4b5;
    outline: none;
    -webkit-appearance: none;
    font-family: 'Noto Sans JP' ,sans-serif;
    font-size: 1.6rem;
    font-weight: 400;
}

input[type="text"].short {
    width: 150px;
    margin: 0 8px 0 0;
}

textarea {
    border: 1px solid #b4b4b5;
    border-radius: 4px;
    width: 100%;
    height: 36px;
    box-sizing: border-box;
    margin: 0;
    padding: 5px 10px;
    display: inline-block;
    background: #f7f8f8;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.4;
    outline: none;
    -webkit-appearance: none;
    resize: none;
    min-height: 100px;
}

.form_input_area {
    font-size: 1.6rem;
    font-weight: 400;
    display: flex;
    flex-wrap: wrap;
}

.form_input_area + .form_input_area {
    margin: 16px auto 0;
}

.form_input_area .form_input_area_label .require {
    font-size: 1.2rem;
    display: inline-block;
    font-weight: 700;
    margin: 0 0 0 5px;
    color: #fff;
    background: #d81719;
    border-radius: 3px;
    padding: 2px 5px 3px;
    letter-spacing: .5px;
}
.form_input_area .form_input_area_label {
    display: flex;
    align-items: center;
    font-size: 1.6rem;
    width: 100%;
    font-weight: 500;
    margin: 0 0 8px;
    color: #000;
    font-family: 'BIZ UDPGothic', sans-serif;
    letter-spacing: .5px;
}
.form_input_area .form_input_area_contents {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    margin: 0 0 10px;
    font-size: 1.6rem;
    font-weight: 400;
}

.form_input_area .form_input_select {
    overflow: hidden;
    display: inline-block;
    margin: 0;
    position: relative;
    background: #fff;
}

.form_input_area .form_input_select select::-ms-expand {
    display: none;
}

.form_input_area .form_input_select select {
    font-size: 1.4rem;
    font-weight: 400;
    margin: 0;
    padding: 8px 22px 8px 10px;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: 1px solid #b4b4b5;
    border-radius: 4px;
    outline: none;
    background: #f7f8f8;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
}

.form_input_area .form_input_select::before {
    position: absolute;
    top: 12px;
    right: 8px;
    content: "\f078";
    font-family: "Font Awesome 5 Free";
    color: #888;
    font-weight: 900;
    font-size: 1.1rem;
    pointer-events: none;
}

.form_input_area .unit {
    display: inline-block;
    margin: 0 8px 0 3px;
}

.form_radio + .form_radio {
    margin: 0 0 0 15px;
}

.form_radio input[type=radio] {
    display: none;
}

.form_radio label {
    font-size: 1.6rem;
    font-weight: 400;
    position: relative;
    cursor: pointer;
    margin: 0 0 0 24px;
    display: inline-block;
}

.form_radio input[type=radio] + label::before {
    content: "";
    position: absolute;
    left: -24px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 18px;
    height: 18px;
    background: #f7f8f8;
    border: 1px solid #b4b4b5;
    border-radius: 50%;
}

.form_radio input[type=radio] + label::after {
    content: "";
    position: absolute;
    left: -21px;
    top: -0px;
    bottom: 0;
    margin: auto;
    width: 12px;
    height: 12px;
    background: #00d0b0;
    opacity: 0;
    border-radius: 50%;
    transition: opacity .3s;
}

.form_radio input[type=radio]:checked + label::after {
    opacity: 1;
}

input[type="checkbox"] {
    display: none;
}

input[type="checkbox"] + label {
    position:relative;
    margin: 0 0 12px;
    padding: 0 20px 0 22px;
    font-family: 'BIZ UDPGothic', sans-serif;
    letter-spacing: .5px;
    font-size: 1.6rem;
    font-weight: 400;
    color:#000;
    white-space: nowrap;
}
input[type="checkbox"] + label:before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 18px;
    height: 18px;
    background: #eeeeee;
    border-radius: 2px;
    border: 1px solid #b4b4b5;
}

input[type="checkbox"]:checked + label:after{
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 5px;
    width: 8px;
    height: 13px;
    transform: rotate(40deg);
    border-right: 3px solid #00d4ac;
    border-bottom: 3px solid #00d4ac;
}

input[type="checkbox"] + label.single_label {
    margin: 0 0 0px;
}

.btn_group {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.btn_group .btn + .btn {
    margin: 0 0 0 4px;
}

.btn.-gray, .form_input_area input[type="submit"].btn.-gray {
    background: #777;
    color: #fff !important;
}

.form_input_area .notes {
    display: block;
    width: 100%;
    font-size: 1.3rem;
    color: #999;
    margin: 5px 0;
    padding: 0;
    line-height: 1.3;
}

.formField_Error .form_input_area_label {
    color: #c20025;
}

@media (min-width: 641px) {
    
    input[type="text"], input[type="password"] {
        height: 42px;
        line-height: 42px;
        border-radius: 6px;
        padding: 0 15px;
        font-size: 1.6rem;
    }

    .form_input_area + .form_input_area {
        margin: 20px auto 0;
    }
    
    .form_input_area .form_input_area_label {
        font-size: 1.8rem;
        margin: 0 0 10px;
    }
    
    .form_input_area .form_input_area_contents {
        margin: 0 0 18px;
        font-size: 1.8rem;
    }
    
    .form_input_area .form_input_select select {
        border-radius: 6px;
        font-size: 1.6rem;
    }

    .form_input_area .notes {
        font-size: 1.4rem;
        margin: 5px 0;
        line-height: 1.3;
    }
}

/*---------------------------------
 Pager
---------------------------------*/
.pager_area {
    margin: 15px 0;
    text-align: center;
}

.viewPageNumber {
    display: inline-block;
    margin: 5px 0;
}

.pager_area input {
    border: none;
    border-radius: 2px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    box-sizing: border-box;
    margin: 0;
    padding: 0 5px;
    display: inline-block;
    background: #3b4752;
    font-size: 1.4rem;
    font-weight: 400;
    cursor: pointer;
    color: #fff;
}

.viewPage input {
    background: #62ceb1;
}

.viewPageNumber span {
    display: inline-block;
}

.viewPageNumber span+span {
    margin: 0 0 0 6px;
}

.pager_area input[name="previousViewPage"],.pager_area input[name="previousViewPageGB"],.pager_area input[name="previousViewPageCC"] {
    margin: 0 6px 0 0;
    background: #e6e6e6;
    color: #3b4752;
    font-weight: bold;
}

.pager_area input[name="nextViewPage"],.pager_area input[name="nextViewPageGB"],.pager_area input[name="nextViewPageCC"] {
    display: inline-block;
    margin: 0 0 0 6px;
    background: #e6e6e6;
    color: #3b4752;
    font-weight: bold;
}

@media (min-width: 768px) {
    .pager_area {
        margin: 25px 0px;
    }
}

/*---------------------------------
 Tab
---------------------------------*/

.tab_area_wrap {
    position: relative;
    margin: 0 auto;
}

.tab_area {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
}

.tab_area li {
    width: 48%;
    height: 32px;
    line-height: 31px;
    font-family: 'BIZ UDPGothic', sans-serif;
    font-size: 1.3rem;
    letter-spacing: .5px;
    font-weight: 700;
    color: #fff;
    background-color: #dcdddd;
    border-radius: 16px;
    position: relative;
    padding: 0 0 0 20px;
    text-align: center;
    cursor: pointer;
}

.tab_area li::before {
    content: "";
    width: 1px;
    height: 32px;
    position: absolute;
    top: 0;
    left: 36px;
    border-right: 1px dashed #fff;
}

.tab_area li::after {
    background-image:url("../img/icon_crown_b.svg");
    background-repeat: no-repeat;
    background-size: 23px 23px;
    background-position: left center;
    content: '';
    display: inline-block;
    width: 23px;
    height: 23px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 8px;
}

.tab_area li a {
    color: #fff;
    display: block;
    margin-left: -20px;
    border-radius: 16px;
}

.tab_area li button {
    color: #fff;
    width: calc( 100% + 20px );
    margin-left: -20px;
    height: 32px;
    border-radius: 16px;
    border: none;
    background: none;
    cursor: pointer;
    font-family: 'BIZ UDPGothic', sans-serif;
    font-size: 1.3rem;
    letter-spacing: .5px;
    font-weight: 700;
}

.tab_area li + li {
    margin: 0 0 0 4%;
}

.tab_area li.active {
    background-color: #ff78ff;
}

.tab_area li.active::after {
    background-image:url("../img/icon_crown_a.svg");
}

.tab_wrap .panel_area {
    position: relative;
    margin: 0 auto;
    padding: 0;
}

.tab_wrap .panel_area .panel_contents_area {
    display: none;
    padding: 0;
}

.tab_wrap .panel_area .panel_contents_area.active {
    display: block;
}


@media (min-width: 641px) {

    .tab_area li {
        width: 48%;
        max-width: 270px;
        height: 54px;
        line-height: 52px;
        font-size: 1.8rem;
        border-radius: 27px;
        position: relative;
        padding: 0 0 0 30px;
        text-align: center;
    }
    
    .tab_area li a {
        margin-left: -30px;
        border-radius: 27px;
    }

    .tab_area li button {
        width: calc( 100% + 30px );
        margin-left: -30px;
        height: 54px;
        border-radius: 27px;
        font-size: 1.8rem;
    }

    .tab_area li::before {
        height: 54px;
        left: 56px;
    }

    .tab_area li::after {
        background-size: 36px 36px;
        width: 36px;
        height: 36px;
        left: 12px;
    }

    .tab_wrap .panel_area {
        width: 100%;
    }
}

/*---------------------------------
 アコーディオン
---------------------------------*/

.btn_accordion {
    display: inline-block;
    width: 100%;
    height: 36px;
    line-height: 34px;
    text-align: center;
    border-radius: 5px;
    background: #00d0af;
    color: #ffff78;
    font-family: 'Noto Sans JP' ,sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    position: relative;
    cursor: pointer;
    transition: opacity .3s;
}

.btn_accordion:before {
    content: '';
    position: absolute;
    top: 15px;
    right: 15px;
    border-top: 2px solid #ffff78;
    width: 12px;
    height: 12px;
}

.btn_accordion:after {
    content: '';
    position: absolute;
    top: 10px;
    transform: rotate(90deg);
    right: 20px;
    border-top: 2px solid #ffff78;
    width: 12px;
    height: 12px;
}

.btn_accordion.active {
    border-radius: 5px 5px 0 0;
}

.btn_accordion.active:after {
    border-top: none;
}

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

.accordion_btn_flex_area .btn_accordion {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 6px 5px 20px 5px;
    width: 32%;
    color: #fff;
    height: auto;
    line-height: 1.1;
}

.accordion_btn_flex_area .btn_accordion:before {
    content: '';
    position: absolute;
    top: inherit;
    bottom: 3px;
    right: calc( 50% + 1px );
    transform: rotate(45deg);
    border-top: 2px solid #ffff78;
    width: 10px;
    height: 10px;
}

.accordion_btn_flex_area .btn_accordion:after {
    content: '';
    position: absolute;
    top: inherit;
    bottom: 3px;
    right: calc( 50% - 10px );
    transform: rotate(-45deg);
    border-top: 2px solid #ffff78;
    width: 10px;
    height: 10px;
}

.accordion_btn_flex_area .btn_accordion.active:before {
    right: calc( 50% - 6px );
}

.accordion_btn_flex_area .btn_accordion.active:after {
    right: calc( 50% - 5px );
}

.accordion_btn_flex_area .shop_ranking_tab {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 32%;
    line-height: 1.1;
    border-radius: 5px;
    background: #00d0af;
    color: #fff;
    font-family: 'Noto Sans JP' ,sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    position: relative;
    cursor: pointer;
    transition: opacity .3s;
}

.accordion_btn_flex_area .shop_ranking_tab a {
    color: #fff;
    width: 100%;
    padding: 6px 5px;
}

.btn_footer_menu_recommend.active {
    border-radius: 6px 6px 0 0;
    text-align: center;
    color: #ffff78;
    background: #ff78ff;
}

.accordion_area {
    background: #00d0af;
    height: 0px;
    overflow-y: hidden;
}


@media (min-width: 641px) {
    .btn_accordion {
        max-width: 610px;
        height: 58px;
        line-height: 56px;
        border-radius: 10px;
        font-size: 2.4rem;
    }
    
    .btn_accordion.fs_small {
        font-size: 2.2rem;
    }

    .btn_accordion:before {
        content: '';
        position: absolute;
        top: 28px;
        right: 20px;
        border-top: 2px solid #ffff78;
        width: 20px;
        height: 20px;
    }

    .btn_accordion:after {
        content: '';
        position: absolute;
        top: 20px;
        transform: rotate(90deg);
        right: 29px;
        border-top: 2px solid #ffff78;
        width: 20px;
        height: 20px;
    }

    .accordion_area {
        max-width: 610px;
        margin: 0 auto;
    }
    
    .accordion_btn_flex_area {
        max-width: 610px;
        margin: 0 auto;
    }
    
    .accordion_btn_flex_area .btn_accordion {
        font-size: 1.6rem;
        padding: 8px 5px 22px 5px;
    }
    
    .accordion_btn_flex_area .shop_ranking_tab {
        border-radius: 10px;
        font-size: 1.6rem;
    }
    .accordion_btn_flex_area .shop_ranking_tab a {
        padding: 8px 5px;
    }
}

/*---------------------------------
 アコーディオン内共通
---------------------------------*/
/* ランキング */
.accordion_ranking_tab_wrap {
    background: #fff;
    margin: 8px;
    padding: 8px;
    min-height: calc( 100% - 16px );
}

.accordion_ranking_list {
    width: 94%;
    background: #fff;
    margin: 0 auto;
    padding: 8px 0;
}

.accordion_ranking_list li a {
    display: inline-block;
    width: 100%;
    background: #fff;
    color: #231815;
    font-family: 'BIZ UDPGothic', sans-serif;
    font-size: 1.5rem;
    letter-spacing: .5px;
    padding: 5px 0;
    position: relative;
    text-align: center;
}

.accordion_area_list {
    width: 94%;
    margin: 0 auto;
    padding: 0 0 8px;
    display: flex;
    /*justify-content: space-between;*/
    flex-wrap: wrap;
}

.accordion_area_list button, .accordion_area_list a {
    width: 23%;
    background: #fff;
    border-radius: 6px;
    border:2px solid #009c83;
    display: inline-block;
    font-family: 'BIZ UDPGothic', sans-serif;
    font-size: 1.3rem;
    font-weight: 700;
    text-align: center;
    letter-spacing: .5px;
    padding: 8px 0;
    text-shadow:1px 1px 0 #fff,-1px 1px 0 #fff,1px -1px 0 #fff,-1px -1px 0 #fff;
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(247,247,247,1) 100%);
    border-radius: 6px;
    cursor: pointer;
    color: #333;
    margin-right: 2%;
}

.accordion_area_list button:nth-child(4n){
    margin-right: 0;
}

.accordion_area_list button:nth-child(n + 5), .accordion_area_list a:nth-child(n + 5) {
    margin-top: 5px;
}

.accordion_area_list .-f_small {
    font-size: 1.0rem !important;
    font-weight: 400;
    line-height: 1.5;
}

/* 店舗ランキング */
.shop_ranking_panel_area .panel_contents_area {
    display: none;
    padding: 0;
}

.shop_ranking_panel_area .panel_contents_area.active {
    display: block;
}

/* フリーワード */
.accordion_flex_area {
    width: 94%;
    margin: 0 auto;
    padding: 0 0 8px;
    display: flex;
    justify-content: space-between;
}

.form_free_word input[type="text"] {
    width: calc( 100% - 40px );
    height: 36px;
    line-height: 36px;
    border: none;
    background-image:url("../img/icon_side_free.svg");
    background-size: 15px 17px;
    background-position: center left 5px;
    background-repeat: no-repeat;
    padding: 0 12px 0 24px;
    font-size: 1.6rem;
}

.form_free_word .btn_search {
    display: inline-block;
    width: 36px;
    height: 36px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border-radius: 4px;
    background: #ffff78;
    border: none;
    cursor: pointer;
    white-space: nowrap;
    background-image:url("../img/icon_search_gr.svg");
    background-repeat: no-repeat;
    background-size: 17px 18px;
    background-position: center center;
}

@media (min-width: 641px) {
    
    .accordion_ranking_list {
        padding: 12px 0;
    }
    
    .accordion_ranking_list li a {
        font-size: 1.8rem;
        padding: 8px 0;
    }
    
    .accordion_area_list {
        padding: 0 0 10px;
    }

    .accordion_area_list button, .accordion_area_list a {
        font-size: 1.9rem;
        padding: 10px 0;
        font-weight: 500;
        transition: opacity .3s;
    }

    .accordion_area_list button:hover, .accordion_area_list a:hover {
        opacity: .8;
    }
    
    .accordion_area_list .-f_small {
        font-size: 1.3rem !important;
        line-height: 1.6;
    }
    
    .accordion_flex_area {
        padding: 0 0 10px;
    }
    
    .form_free_word input[type="text"] {
        width: calc( 100% - 48px );
        height: 40px;
        line-height: 40px;
        background-size: 30px 32px;
        background-position: center left 8px;
        padding: 0 12px 0 44px;
    }

    .form_free_word .btn_search {
        width: 40px;
        height: 40px;
        background-size: 23px 25px;
        border-radius: 6px;
    }
}

/*---------------------------------
 並び替えタブ
---------------------------------*/
.sort_tab_area ul {
    margin: 15px 0;
    padding: 0;
    display: flex;
    width: 100%;
}

.sort_tab_area ul li {
    margin: 0;
    padding: 0;
    width: 25%;
    min-height: 30px;
    border-right: 1px solid #fff;
    background: #dcdddd;
}

.sort_tab_area ul li a, .sort_tab_area ul li button {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    font-family: 'BIZ UDPGothic', sans-serif;
    font-size: 1.3rem;
    letter-spacing: .5px;
    font-weight: 700;
    color: #fff;
    padding: 4px 0;
    cursor: pointer;
    border: none;
    outline: none;
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    background-color: transparent;
}

.sort_tab_area ul li a.active, .sort_tab_area ul li button.active {
    background: #ff78ff;
}

.sort_tab_area ul li:last-child a, .sort_tab_area ul li:last-child button {
    border-right: none;
}


@media (min-width: 641px) {

    .sort_tab_area ul {
        margin: 20px 0;
    }

    .sort_tab_area ul li {
        min-height: 50px;
    }

    .sort_tab_area ul li a, .sort_tab_area ul li button {
        font-size: 1.6rem;
    }

}

/*---------------------------------
 Header
---------------------------------*/
.header {
    position: fixed;
    top: 0;
    left: 0;
    height: 88px;
    background: rgb(255,255,255);
    background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 50%, rgba(255,224,255,1) 100%);
    width: 100%;
    z-index: 99;
}

.header_inner {
    margin: 0 auto;
    position: relative;
}

.header_top_area {
    width: 95%;
    margin: 0 auto;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    /*padding-right: 40px; 202506 */
}

.header_logo {
    width: calc( 100% - 72px );
    text-align: center;
}

.header_logo a {
    display: inline-block;
    width: 100px;
}

.header_user_icon {
    width: 36px;
    height: 36px;
}

.header_user_icon img {
    border-radius: 50%;
    object-fit: cover;
}

.header_txt {
    width: 100%;
    height: 24px;
    line-height: 24px;
    margin: 0;
    padding: 0 2%;
    color: #fff;
    font-family: 'Noto Sans JP' ,sans-serif;
    font-size: 1.1rem;
    font-weight: 400;
    background: #dcdddd;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.header_shop_name {
    width: calc( 100% - 85px );
    border: 1px solid #ff78ff;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-family: 'Noto Sans JP' ,sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    color: #ff78ff;
    margin: 0 10px;
    padding: 7px 3px;
}

@media (min-width: 641px) {
    .header {
        position: relative;
        height: 60px;
        background: rgb(255,255,255);
        background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 25%, rgba(255,224,255,1) 100%);
        border-top: 3px solid #ff00ff;
    }

    .header_inner {
        max-width: 980px;
    }
    
    .header_top_area {
        height: 60px;
        justify-content: flex-end;
        padding-right: 0px;
    }

    .header_logo {
        display: none;
    }

    .header_user_icon {
        width: 40px;
        height: 40px;
        transition: opacity .3s;
    }

    .header_user_icon:hover {
        opacity: .8;
    }

    .header_txt {
        width: calc( 100% - 70px );
        height: 20px;
        line-height: 20px;
        padding: 0 20px;
        color: #727171;
        font-size: 1.6rem;
        letter-spacing: .5px;
        background: rgba(255, 255, 255, 0);
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        left: 0;
        text-shadow:1px 1px 0 #fff,-1px 1px 0 #fff,1px -1px 0 #fff,-1px -1px 0 #fff;
    }
}

/*---------------------------------
 Iframe Header
---------------------------------*/

#iframe_area {
    position: relative;
}

#iframe_wrapper {
    position: relative;
    border: none;
    margin: 0px;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    z-index: 1;
}

#iframe_wrapper iframe {
    position: relative;
    z-index: 1;
}

.frame_header {
    position: fixed;
    top: 10px;
    right: 10px;
    z-index: 10;
    width: 40px;
    height: 40px;
}

.btn_favorite_area {
    position: fixed;
    top: 100px;
    right: 10px;
    z-index: 10;
    width: 51px;
    height: 33px;
}

.btn_favorite_area.btn_favorite_area_cast {
    top: 140px;
}

@media (min-width: 641px) {

    .frame_header {
        top: 15px;
        right: calc((100% - 930px) / 2);
    }

    .btn_favorite_area {
        position: fixed;
        top: 140px;
        right: calc((100% - 980px) / 2);
        width: 70px;
        height: 45px;
    }
    
}
/*---------------------------------
 Menu Btn
---------------------------------*/

.btn_menu {
    display: inline-block;
    height: 35px;
    width: 35px;
    margin: auto;
    cursor: pointer;
    transition: all .3s;
    text-decoration: none;
    position: relative;
    background: #ff78ff;
}
.btn_menu span {
    display: inline-block;
    width: 12px;
    height: 2px;
    position: absolute;
    left: 12px;
    background: #fff;
    border-radius: 1px;
    transition: transform .3s;
}

.btn_menu span:nth-child(1) {
    top: 12px;
}

.btn_menu span:nth-child(2) {
    top: 17px;
}

.btn_menu span:nth-child(3) {
    bottom: 11px;
}

.btn_menu.active span:nth-child(1) {
    transform: translateY(5px) rotate(-315deg);
}

.btn_menu.active span:nth-child(2) {
    opacity: 0;
}

.btn_menu.active span:nth-child(3) {
    transform: translateY(-5px) rotate(315deg);
}

@media (min-width: 641px) {
    .btn_menu {
        display: none;
    }
}

/*---------------------------------
 Global Nav
---------------------------------*/

.global_nav {
    position: absolute;
    top: 88px;
    right: 0;
    height: 100vh;
    background-color: rgba(255, 253, 255, 1);
    background-image: repeating-linear-gradient(-45deg, transparent, transparent 5px, rgba(255, 242, 255, 1) 5px, rgba(255, 242, 255, 1) 10px );
    padding: 10px 0;
    width: 100%;
    transition: .3s;
    transform: translateX(-100%);
    animation: global_nav_close .6s cubic-bezier(0.77, 0, 0.175, 1) forwards;
}

.global_nav.load {
    animation:global_nav_stop .0s;
}

.global_nav.active {
    animation: global_nav_open .6s cubic-bezier(0.77, 0, 0.175, 1) forwards;
}

.global_nav_inner {
    width: 90%;
    height: 100%;
    margin: 0 auto;
    padding: 0 0 100px;
    overflow-y: scroll;
}


@keyframes global_nav_open {
    0% {
        transform: translateX(-100%);
    }
    100% {
        transform: translateX(0);
    }
}

@keyframes global_nav_stop {
    0% {
        transform: translateX(-100%);
    }
}

@keyframes global_nav_close {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-100%);
    }
}

.global_nav ul {
    margin: 0;
    padding: 0;
    border: 3px solid #ffccff;
    border-radius: 10px;
    background: #fff;
}

.global_nav ul li a {
    display: block;
    position: relative;
    padding: 10px 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.6rem;
    font-weight: 700;
    border-bottom: 1px dotted #b5b5b6;
    text-align: center;
}

.global_nav ul li:last-child a {
    border-bottom: none;
}

@media (min-width: 641px) {
    .global_nav {
        display: none;
    }
}

/*---------------------------------
 dropdown
---------------------------------*/

.dropdown {
    width: 40px;
}

.dropdown_contents {
    position: absolute;
    top: 100%;
    right: 5px;
    z-index: 1000;
    display: none;
    min-width: 100px;
    padding: 0;
    margin: 0;
    text-align: left;
    list-style: none;
    border: 1px solid #eaeaea;
    border-radius: 4px;
    color: #3f323f;
    background-color: #fff;
    box-shadow: 0 5px 7px rgba(170, 170, 170, .3);
}

.dropdown_contents a {
    display: block;
    padding: 8px 15px;
    color: #3f323f;
    white-space: nowrap;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
}

.dropdown_contents a:hover {
    text-decoration: none;
    color: #ff00ff;
}

.dropdown_contents i {
    margin: 0 5px 0 0;
}


.-show .dropdown_contents {
    display: block;
}

@media (min-width: 768px) {
    
    .dropdown {
        width: 40px;
    }
}

/*---------------------------------
 BreadCrumb
---------------------------------*/
.breadcrumb {
    width: 100%;
    margin: 30px auto 0px;
    padding: 0;
}

.breadcrumb ul {
    width: 100%;
    height: 28px;
    display: block;
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    white-space: nowrap;
    background: #ffc8ff;
    padding: 0 0 0 8px;
    /*-ms-overflow-style: none;
    scrollbar-width: none;*/
    scrollbar-color: rgba(102, 102, 102, .8) #ffc8ff; /* Firefox */
    scrollbar-width: thin; /* Firefox */
}

@-moz-document url-prefix(){ /* Firefox */
    .breadcrumb ul {
        height: 30px;
    }
}

.breadcrumb ul::-webkit-scrollbar {
    width: 3px;
    height: 3px;
}

.breadcrumb ul::-webkit-scrollbar-track {
    background: #ffc8ff;
}

.breadcrumb ul::-webkit-scrollbar-thumb {
    background: rgba(102, 102, 102, .8);
}

/*
.breadcrumb ul::-webkit-scrollbar{
    display: none;
}

.breadcrumb ul::-webkit-scrollbar{
    display: none;
}
*/

.breadcrumb li {
    height: 25px;
    background: #ffc8ff;
    position: relative;
    display: inline-block;
    font-weight: bold;
    margin: 0 16px 0 0;
    padding: 0 8px 0 0;
}

.breadcrumb li a, .breadcrumb li span {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    display: inline-block;
    padding: 0 3px 0 5px;
    height: 25px;
    line-height: 25px;
    text-decoration: none;
    color: #fff;
    font-size: 1.4rem;
    transition: opacity .3s;
}

.breadcrumb li a::before, .breadcrumb li span::before {
    content: "";
    position: absolute;
    top: -1px;
    left: -16px;
    transform: rotate(62deg);
    width: 29px;
    border: 0;
    border-top: 2px solid #fff;
    margin: 0;
    padding: 0;
    transform-origin: 0% 0%;
}

.breadcrumb li a::after {
    content: "";
    position: absolute;
    top: 10px;
    right: 0px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    width: 8px;
    height: 8px;
    transform: rotate(45deg);
}
/*
.breadcrumb li a::before, .breadcrumb li span::before {
    content: "";
    position: absolute;
    top: -1px;
    left: -16px;
    transform: rotate(62deg);
    width: 29px;
    border: 0;
    border-top: 2px solid #fff;
    margin: 0;
    padding: 0;
    transform-origin: 0% 0%;
}

.breadcrumb li a::after, .breadcrumb li span::after {
    content: "";
    position: absolute;
    top: 10px;
    right: 0px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    width: 8px;
    height: 8px;
    transform: rotate(45deg);
}*/


.bg_dark .breadcrumb ul {
    background: #b4ffff;
}

.bg_dark .breadcrumb li {
    background: #b4ffff;
}

.bg_dark .breadcrumb li a, .bg_dark .breadcrumb li span {
    color: #000;
}

.bg_dark .breadcrumb li a::before, .bg_dark .breadcrumb li span::before {
    border-top: 2px solid #000;
}

.bg_dark .breadcrumb li a::after, .bg_dark .breadcrumb li span::after {
    border-top: 1px solid #000;
    border-right: 1px solid #000;
}



.breadcrumb li:first-child a::before {
    border: none;
}

@media (min-width: 641px) {
    
    .breadcrumb {
        margin: 60px auto 20px;
    }
    
    .breadcrumb ul {
        margin: 0 auto;
        max-width: 980px;
    }
}

/*---------------------------------
 Footer
---------------------------------*/

.footer_area {
    margin: 0;
    padding: 0;
    background-image: url(../img/bg_footer.png);
    background-repeat: repeat;
    background-size: 16px 16px;
    background-color: #FCFCFC;;
    
}

.footer_area_inner {
    margin: 0 auto;
    padding: 20px 0;
}
    
.footer_recommend_title {
    display: none;
}

.footer_recommend_list {
    display: none;
}

.footer_menu {
    width: 96%;
    margin: 0 auto;
}

.footer_menu li + li {
    margin: 6px 0 0;
}

.footer_menu .tab_area {
    background: #fff;
    width: 94%;
    margin: 0 auto;
    padding: 15px 0;
}

.footer_menu .tab_area li + li {
    margin: 0 0 0;
}

.footer_menu li a, .btn_footer_menu_recommend {
    display: inline-block;
    width: 100%;
    border-radius: 6px;
    background: #fff0ff;
    color: #ff78ff;
    font-family: 'BIZ UDPGothic', sans-serif;
    font-size: 1.5rem;
    letter-spacing: .5px;
    padding: 10px 26px;
    position: relative;
    text-align: left;
}

.btn_footer_menu_recommend:before {
    content: '';
    position: absolute;
    top: 20px;
    right: 15px;
    border-top: 2px solid #ff78ff;
    width: 12px;
    height: 12px;
}

.btn_footer_menu_recommend:after {
    content: '';
    position: absolute;
    top: 15px;
    transform: rotate(90deg);
    right: 20px;
    border-top: 2px solid #ff78ff;
    width: 12px;
    height: 12px;
}

.btn_footer_menu_recommend.active {
    border-radius: 6px 6px 0 0;
    text-align: center;
    color: #ffff78;
    background: #ff78ff;
}

.btn_footer_menu_recommend.active:before {
    border-top: 2px solid #ffff78;
}

.btn_footer_menu_recommend.active:after {
    border-top: none;
}

.footer_menu_recommend_area {
    background: #ff78ff;
    height: 0px;
    overflow-y: hidden;
}

.footer_menu_recommend_area .tab_wrap {
    width: 94%;
    background: #fff;
    margin: 0 auto;
}

.footer_menu_recommend_list {
    width: 94%;
    height: 100%;
    background: #fff;
    margin: 0 auto 12px;
    padding: 8px 0;
}

.footer_menu_recommend_list li a {
    display: inline-block;
    width: 100%;
    border-radius: 6px;
    background: #fff;
    color: #231815;
    font-family: 'BIZ UDPGothic', sans-serif;
    font-size: 1.5rem;
    letter-spacing: .5px;
    padding: 5px 0 5px 10px;
    position: relative;
    text-align: left;
}

.footer_nav {
    background: #f7f8f8;
    margin: 0 auto;
    padding: 28px 0;
    text-align: center;
}

.footer_nav_inner {
    margin: 0 auto;
    text-align: center;
}

.footer_nav_inner + .footer_nav_inner {
    margin: 5px auto 0;
}

.footer_nav a {
    display: inline-block;
  	/*color: #595757;*/
        color: #000; /*202307*/
    font-family: 'Noto Sans JP' ,sans-serif;
    font-size: 1.3rem;
    font-weight: 300;
    padding: 0 10px;
    position: relative;
}

.footer_nav a:after {
    content: '';
    position: absolute;
    top: 10%;
    right: 0;
    width: 1px;
    height: 80%;
    background: #595757;
}

.footer_nav a:nth-child(3n):after {
    background: none;
}


@media (min-width: 641px) {
    .footer_area{
        background-size: 24px 24px;
    }
    
    .footer_area_inner {
        max-width: 980px;
        padding: 20px 0 0;
    }    

    .footer_menu {
        width: 100%;
        margin: 40px auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .footer_menu li + li {
        margin: 0;
    }

    .footer_menu li:nth-child(n + 6) {
        margin: 10px 0 0;
    }
    
    .footer_menu li {
        width: 24%;
    }
    
    .footer_menu li a {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 40px;
        padding: 0;
        text-align: center;
        transition: background .3s;
    }
    
    .footer_menu li a:hover {
        background: #ffe4ff;
    }
    
    
    .footer_menu_recommend {
        display: none !important;
    }
    
    .footer_recommend_title {
        display: block;
        border-radius: 6px;
        background: #fff0ff;
        color: #ff78ff;
        margin: 0px 0 0;
        padding: 12px 0;
        text-align: center;
        font-family: 'BIZ UDPGothic', sans-serif;
        font-size: 1.6rem;
        letter-spacing: .5px;
    }
    
    .footer_recommend_list {
        width: 90%;
        display: flex;
        flex-wrap: wrap;
        margin: 26px auto;
    }
    
    .footer_recommend_list li {
        width: 33%;
    }
    
    .footer_recommend_list li a {
        display: block;
        /*color: #7a7a7a;*/
        color: #535353; /*202307*/
        font-family: 'Noto Sans JP' ,sans-serif;
        font-size: 1.2rem;
        font-weight: 400;
        line-height: 1.8;
        transition: color .3s;
    }
    
    .footer_recommend_list li a:hover {
        color: #909090;
    }
    
    .footer_nav {
        padding: 12px 0;
    }
    
    .footer_nav a {
        font-size: 1.2rem;
        transition: color .3s;
    }
    
    .footer_nav a:hover {
        color: #909090;
    }
    
    .footer_nav_inner {
        display: inline-block;
    }
    
    .footer_nav_inner + .footer_nav_inner {
        margin: 0px auto 0;
    }

    .footer_nav a:after {
        content: '';
        position: absolute;
        top: 10%;
        right: 0;
        font-weight: 300;
        width: 1px;
        height: 80%;
        background: #595757;
    }

    .footer_nav a:nth-child(3n):after {
        background: #595757;
    }
    
    .btn_footer_menu_recommend {
        display: none;
    }
    
    .footer_menu_recommend_area {
        display: none;
    }
}


/*---------------------------------
 Search
---------------------------------*/
.search_title {
    width: 100%;
    height: 34px;
    line-height: 34px;
    display: inline-block;
    margin: 0;
    padding: 0;
    position: relative;
}

.search_title span {
    display: inline-block;
    width: calc( 100% - 38px );
    height: 34px;
    line-height: 34px;
    background: #00d4ac;
    color: #ffff78;
    border-radius: 3px;
    font-size: 1.4rem;
    font-weight: 700;
    font-family: 'BIZ UDPGothic', sans-serif;
    margin: 0 0 0 38px;
    padding: 0 10px;
}

.search_title:before {
    content: '';
    display: inline-block;
    background-image:url("../img/icon_search_title_gr.svg");
    background-repeat: no-repeat;
    background-size: 32px 29px;
    background-position: center center;
    width: 32px;
    height: 29px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0px;
}

.shop_search_area .-flex_between {
    margin: 10px 0;
    padding: 0 0 0 38px;
    position: relative;
}

.shop_search_area form:first-child .-flex_between:before {
    content: '';
    display: inline-block;
    background-image:url("../img/icon_search_area_gr.svg");
    background-repeat: no-repeat;
    background-size: 25px 30px;
    background-position: center center;
    width: 25px;
    height: 30px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0px;
}

.shop_search_area form:last-child .-flex_between:before {
    content: '';
    display: inline-block;
    background-image:url("../img/icon_search_word_gr.svg");
    background-repeat: no-repeat;
    background-size: 25px 28px;
    background-position: center center;
    width: 25px;
    height: 28px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0px;
}

.multiplication {
    display: inline-block;
    width: 5px;
    height: 24px;
    background-image:url("../img/icon_multiplication.svg");
    background-repeat: no-repeat;
    background-size: 5px 5px;
    background-position: center center;
}

.shop_search_area input[type="text"] {
    position: relative;
    border: none;
    width: 100%;
    height: 36px;
    line-height: 36px;
    border-radius: 3px;
    box-sizing: border-box;
    margin: 0;
    padding: 0 12px;
    display: inline-block;
    background: #f6f6f6;
    outline: none;
    -webkit-appearance: none;
    font-family: 'Noto Sans JP' ,sans-serif;
    font-size: 1.6rem;
    font-weight: 400;
}

.shop_search_area .form_input_select {
    overflow: hidden;
    display: inline-block;
    width: 100%;
    margin: 0;
    position: relative;
}

.shop_search_area .form_input_select select {
    border: none;
    width: 100%;
    height: 36px;
    border-radius: 3px;
    font-family: 'Noto Sans JP' ,sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    margin: 0;
    padding: 0 12px;
    cursor: pointer;
    text-overflow: ellipsis;
    outline: none;
    background: #f6f6f6;
    -webkit-appearance: none;
    appearance: none;
    background-image:url("../img/arrow_down_g.svg");
    background-size: 8px 5px;
    background-position: center right 7px;
    background-repeat: no-repeat;
}

.form_input_select select.is-select {
    color: #18D869;
}

.form_input_select select::-ms-expand {
    display: none;
}

.section_home_shop_search .shop_search_area input[type="text"], .section_home_shop_search .shop_search_area .form_input_select {
    width: calc( ( 100% - 38px - 8px ) / 2 );
}

.section_home_shop_search .shop_search_area form:last-child .-flex_between input[type="text"] {
    width: calc( 100% - 38px );
}

.section_home_shop_search {
    padding-top: 0;
}

.shop_search_area .btn_search {
    display: inline-block;
    width: 36px;
    height: 36px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border-radius: 3px;
    background: #00d0af;
    border: none;
    cursor: pointer;
    white-space: nowrap;
    background-image:url("../img/icon_search_y.svg");
    background-repeat: no-repeat;
    background-size: 17px 18px;
    background-position: center center;
}

.current_search_condition_area {
    background: #9fa0a0;
    color: #ffff78;
    font-family: 'Noto Sans JP' ,sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    margin: 0 0 10px;
    padding: 3px 10px;
}

.current_search_condition_area span {
    display: inline-block;
    font-size: 1.2rem;
    margin: 1px 8px 0 0;
    border: 1px solid #ffff78;
    padding: 3px 10px;
}

.change_search_condition_area {
    width: 100%;
    height: 30px;
    background-image: url("../img/icon_search_cog.svg");
    background-size: 30px 30px;
    background-position: center left;
    font-family: 'Noto Sans JP' ,sans-serif;
    font-size: 1.4rem;
    font-weight: 700;
}

.change_search_condition_area p {
    margin: 0 0 0 35px;
    border: 3px solid #00d0af;
    border-radius: 5px;
    position: relative;
    height: 100%;
    color: #00d0af;
    padding: 3px 8px;
}

.change_search_condition_area p::after {
    position: absolute;
    top: 5px;
    right: 8px;
    content: "\f067";
    font-family: "Font Awesome 5 Free";
    color: #00d0af;
    font-weight: 900;
    font-size: 1.4rem;
    pointer-events: none;
}

#modal_area {
    display: none;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    background: rgba(0, 0, 0, .5);
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
}

#modal_area .inner {
    width: 94%;
    min-height: 50%;
    max-height: 84vh;
    overflow-y: scroll;
    background: #00d0af;
    padding: 0px;
    border-radius: 10px;
}

#modal_area .modal_close {
    height: 34px;
    border-radius: 10px 10px 0 0;
    position: relative;
}

#modal_area .modal_close::after {
    position: absolute;
    top: 12px;
    right: 15px;
    content: "\f068";
    font-family: "Font Awesome 5 Free";
    color: #fff;
    font-weight: 900;
    font-size: 1.8rem;
    pointer-events: none;
}

#modal_area.active{
    opacity: 1;
    visibility: visible;
    display: flex;
}

.search_condition_area {
    padding: 0 15px 15px;
}

.search_condition_area .accordion_current_condition {
    border-radius: 0px;
    color: #ffff78;
    border: 2px solid #fff;
    font-weight: 700;
    height: 34px;
    line-height: 34px;
    font-size: 1.6rem;
}

.search_condition_area .search_condition_area_btn_accordion, .search_condition_area .search_condition_area_not_accordion {
    border-radius: 0px;
    color: #00d0af;
    background: #fff;
    border: 1px solid #fff;
    font-weight: 400;
    height: 30px;
    line-height: 32px;
    font-size: 1.8rem;
    position: relative;
    margin-top: 12px;
}

.search_condition_area_not_accordion + .accordion_current_condition {
    border-bottom: none;
}

.search_condition_area_not_accordion + .accordion_current_condition + .accordion_area, .search_condition_area_not_accordion + .accordion_area {
    height: auto;
    overflow-y: hidden;
}

.search_condition_area .search_condition_area_btn_accordion:before {
    content: '';
    position: absolute;
    top: 15px;
    right: 15px;
    border-top: 2px solid #00d0af;
    width: 12px;
    height: 12px;
}

.search_condition_area .search_condition_area_btn_accordion:after {
    content: '';
    position: absolute;
    top: 10px;
    transform: rotate(90deg);
    right: 20px;
    border-top: 2px solid #00d0af;
    width: 12px;
    height: 12px;
}

.search_condition_area .search_condition_area_btn_accordion.active:after {
    border-top: none;
}

.search_condition_area .accordion_area_inner {
    border: 2px solid #fff;
    padding: 8px;
}

.search_condition_area .modal_search_condition_list  {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.search_condition_area .modal_search_condition_list li {
    margin: 3px 0 0;
    padding: 0;
    width: 50%;
    text-align: left;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: #fff;
}

.search_condition_area .modal_search_condition_list input[type="checkbox"] {
    display: none;
}

.search_condition_area .modal_search_condition_list input[type="checkbox"] + label {
    position:relative;
    padding-top: 4px;
    padding-left: 25px;
    font-size: 1.4rem;
    line-height: 1.8;
    font-weight: 700;
    color: #fff;
}

.search_condition_area .modal_search_condition_list input[type="checkbox"] + label a.-fs_12 {
    font-size: 1.2rem;
}


.search_condition_area .modal_search_condition_list input[type="checkbox"] + label a {
    color: #fff;
}

.search_condition_area .modal_search_condition_list input[type="checkbox"] + label:before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    background: #fff;
    border-radius: 4px;
    border: none;
}

.search_condition_area .modal_search_condition_list input[type="checkbox"]:checked + label {
    color: #ffff78;
    text-decoration: underline;
}

.search_condition_area .modal_search_condition_list input[type="checkbox"]:checked + label:after{
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 6px;
    width: 8px;
    height: 19px;
    transform: rotate(40deg);
    border-right: 3px solid #00d0af;
    border-bottom: 3px solid #00d0af;
}

.search_condition_area .shop_search_area .btn_search {
    background-color: #ffff78;
    background-image: url(../img/icon_search_gr.svg);
    margin-left: 8px;
}

.search_condition_area .-flex_between {
    padding: 0;
}

.search_condition_area .free_word_candidate_area{
    text-align: left;
    display: none;
}

.search_condition_area .free_word_candidate_area .free_word_candidate_title {
    font-family: 'Noto Sans JP' ,sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    text-align: center;
    margin: 0 0 4px;

}

.search_condition_area .free_word_candidate_area .free_word_candidate_title i {
    color: #ffff78;
    margin: 0 3px 0 0;
}

.search_condition_area #modal_free_word_candidate p, .search_condition_area #modal_free_word_candidate a {
    display: inline-block;
    height: 30px;
    line-height: 30px;
    margin: 8px 8px 0 0;
    background: #f5f5f5;
    border-radius: 10px;
    font-size: 1.4rem;
    font-weight: 400;
    color:#00d0af;
    transition: background .3s;
    position: relative;
    padding: 0 18px 0 8px;
}

.search_condition_area #modal_free_word_candidate a::after {
    position: absolute;
    top: 0px;
    right: 5px;
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    color: #888;
    font-weight: 900;
    font-size: 1.4rem;
    pointer-events: none;
}

.search_condition_area #modal_free_word_candidate a:hover {
    background: #e8e8e8;
}

.section_shop_list .search_title {
    max-width: 100%;
}

@media (min-width: 641px) {
    
    .search_title {
        max-width: 610px;
        height: 45px;
        line-height: 45px;
    }

    .search_title span {
        width: calc( 100% - 56px );
        height: 45px;
        line-height: 45px;
        border-radius: 10px;
        font-size: 2.0rem;
        font-weight: 700;
        margin: 0 0 0 56px;
        padding: 0 10px;
    }

    .search_title:before {
        background-size: 52px 45px;
        width: 52px;
        height: 45px;
    }
    
    
    .shop_search_area {
        max-width: 610px;
        margin: 0 auto;
    }

    .shop_search_area .-flex_between {
        margin: 15px 0;
        padding: 0;
    }

    .shop_search_area .-flex_between:first-child:before {
        background-image: none;
    }

    .shop_search_area .-flex_between:last-child:before {
        background-image: none;
    }

    .shop_search_area input[type="text"] {
        height: 60px;
        line-height: 60px;
        border-radius: 10px;
        margin: 0;
        padding: 0 12px 0 58px;
        font-size: 1.8rem;
    }
    
    .shop_search_area .-flex_between:first-child input[type="text"] {
        background-image:url("../img/icon_side_area.svg");
        background-size: 10px 14px;
        background-position: center left 5px;
        background-repeat: no-repeat;
    }
    
    .shop_search_area .-flex_between:last-child input[type="text"] {
        background-image:url("../img/icon_side_free.svg");
        background-size: 35px 39px;
        background-position: center left 10px;
        background-repeat: no-repeat;
        width: calc( 100% - 70px );
    }
    
    .shop_search_area .form_input_select select {
        height: 28px;
        font-size: 1.0rem;
        margin: 0;
        padding: 0 12px;
        background-image:url("../img/arrow_down_g.svg");
        background-size: 8px 5px;
        background-position: center right 7px;
        background-repeat: no-repeat;
    }
    
    .main_area_side .shop_search_area input[type="text"], .main_area_side .shop_search_area .form_input_select {
        width: calc( ( 100% - 30px - 8px ) / 2 );
    }

    .shop_search_area .btn_search {
        width: 60px;
        height: 60px;
        background-image:url("../img/icon_search_y.svg");
        background-repeat: no-repeat;
        background-size: 23px 25px;
        background-position: center center;
        border-radius: 10px;
    }
    
    .current_search_condition_area {
        background: #9fa0a0;
        color: #ffff78;
        font-family: 'Noto Sans JP' ,sans-serif;
        font-size: 1.6rem;
        font-weight: 400;
        margin: 0 0 18px;
        padding: 6px 10px;
    }

    .current_search_condition_area span {
        display: inline-block;
        font-size: 1.4rem;
        margin: 2px 12px 0 0;
        border: 1px solid #ffff78;
        padding: 3px 10px;
    }  

    .change_search_condition_area {
        height: 45px;
        background-image: url("../img/icon_search_cog.svg");
        background-size: 45px 45px;
        font-size: 1.6rem;
    }

    .change_search_condition_area p {
        margin: 0 0 0 60px;
        border: 4px solid #00d0af;
        border-radius: 6px;
        padding: 8px 12px;
    }

    .change_search_condition_area p::after {
        position: absolute;
        top: 8px;
        right: 15px;
        font-size: 1.8rem;
    }

    #modal_area .inner {
        max-width: 800px;
    }

    #modal_area .modal_close {
        height: 45px;
    }

    #modal_area .modal_close::after {
        position: absolute;
        top: 15px;
        right: 20px;
        content: "\f068";
        font-family: "Font Awesome 5 Free";
        color: #fff;
        font-weight: 900;
        font-size: 2.8rem;
        pointer-events: none;
    }

    .search_condition_area {
        padding: 0 30px 30px;
    }

    .search_condition_area .btn_accordion, .search_condition_area .accordion_area {
        max-width: inherit;
    }

    .search_condition_area .accordion_area_inner {
        padding: 30px;
    }
    
    .search_condition_area .modal_search_condition_list li {
        margin: 5px 0 0;
        padding: 0;
        width: 32%;
    }

    .search_condition_area .modal_search_condition_list input[type="checkbox"] + label {
        padding-top: 4px;
        padding-left: 32px;
        font-size: 1.8rem;
        line-height: 1.8;
    }
    
    .search_condition_area .modal_search_condition_list input[type="checkbox"] + label a.-fs_12 {
        font-size: 1.6rem;
    }

    .search_condition_area .modal_search_condition_list input[type="checkbox"] + label:before{
        position: absolute;
        top: 0;
        left: 0;
        width: 26px;
        height: 26px;
    }

    .search_condition_area .modal_search_condition_list input[type="checkbox"]:checked + label:after{
        position: absolute;
        top: 0px;
        left: 8px;
        width: 11px;
        height: 19px;
    }
    
    .search_condition_area .search_condition_area_btn_accordion, .search_condition_area .search_condition_area_not_accordion {
        height: 58px;
        line-height: 56px;
        font-size: 2.4rem;
        margin-top: 30px;
    }
    
    .search_condition_area .search_condition_area_btn_accordion:before {
        content: '';
        position: absolute;
        top: 28px;
        right: 20px;
        border-top: 2px solid #00d0af;
        width: 20px;
        height: 20px;
    }

    .search_condition_area .search_condition_area_btn_accordion:after {
        content: '';
        position: absolute;
        top: 20px;
        transform: rotate(90deg);
        right: 29px;
        border-top: 2px solid #00d0af;
        width: 20px;
        height: 20px;
    }

    .search_condition_area .accordion_area_inner {
        padding: 15px;
    }
    
    .search_condition_area .accordion_current_condition {
        height: 58px;
        line-height: 56px;
        font-size: 2.0rem;
    }
    
    .search_condition_area .shop_search_area, .search_condition_area .btn {
        max-width: 100%;
    }

    .search_condition_area .free_word_candidate_area .free_word_candidate_title {
        font-size: 1.8rem;
        margin: 0 0 4px;

    }

    .search_condition_area .free_word_candidate_area .free_word_candidate_title i {
        margin: 0 5px 0 0;
    }

    .search_condition_area #modal_free_word_candidate p, .search_condition_area #modal_free_word_candidate a {
        height: 36px;
        line-height: 36px;
        margin: 12px 12px 0 0;
        padding: 0 20px 0 12px;
        font-size: 1.6rem;
    }

}

/*---------------------------------
 Sidebar
---------------------------------*/
@media (min-width: 641px) {
    
    .side_logo {
        width: 175px;
        text-align: center;
        margin: 10px auto 25px;
    }

    .side_logo a {
        width: 175px;
        display: inline-block;
        transition: opacity .3s;
    }

    .side_logo a:hover {
        opacity: .8;
    }
    
    .side_menu_title {
        display: inline-block;
        color: #ff00ff;
        font-size: 1.1rem;
        text-align: center;
        margin: 14px 0 0;
        padding: 0;
        font-family: 'Montserrat', sans-serif;
        font-weight: 500;
    }
    
    .side_menu {
        background-size: auto auto;
        background-color: rgba(255, 253, 255, 1);
        background-image: repeating-linear-gradient(-45deg, transparent, transparent 2px, rgba(255, 242, 255, 1) 2px, rgba(255, 242, 255, 1) 8px );
        border-radius: 10px;
    }
    
    .side_menu ul {
        width: 96%;
        margin: 0 auto 20px;
        padding: 14px 18px 18px;
    }

    .side_menu li a {
        display: block;
        position: relative;
        padding: 18px 0;
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 500;
        font-size: 1.6rem;
        border-bottom: 1px dotted #b5b5b6;
        text-align: center;
        background: #fff;
        transition: background .3s;
    }

    .side_menu li a:hover {
        background: #FFF2FF;
    }

    .side_menu li:first-of-type a {
        border-radius: 10px 10px 0 0;
    }

    .side_menu li:last-of-type a {
        border-radius: 0 0 10px 10px;
        border-bottom: none;
    }
    
    .side_search_title {
        width: 100%;
        height: 28px;
        line-height: 28px;
        display: inline-block;
        margin: 0;
        padding: 0;
        position: relative;
    }

    .side_search_title span {
        display: inline-block;
        width: 100%;
        height: 30px;
        line-height: 30px;
        background: #00d4ac;
        background: #727171;
        color: #ffff78;
        border-radius: 4px;
        font-size: 1.2rem;
        font-weight: 700;
        font-family: 'BIZ UDPGothic', sans-serif;
        margin: 0;
        padding: 0 10px 0 26px;
        letter-spacing: .5px;
        text-shadow:1px 1px 0 #5d5c5c,-1px 1px 0 #5d5c5c,1px -1px 0 #5d5c5c,-1px -1px 0 #5d5c5c;
    }

    .side_search_title:before {
        content: '';
        display: inline-block;
        background-image:url("../img/icon_side_search_title.svg");
        background-repeat: no-repeat;
        background-size: 17px 15px;
        background-position: center center;
        width: 17px;
        height: 15px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        left: 8px;
    }
    
    
    .side_shop_search_area .side_shop_search_item {
        background: #f6f6f6;
        border-radius: 6px;
        margin: 15px 0;
        padding: 10px 8px;
    }

    .side_shop_search_area input[type="text"] {
        position: relative;
        border: none;
        width: 100%;
        height: 32px;
        line-height: 32px;
        border-radius: 4px;
        box-sizing: border-box;
        margin: 0;
        padding: 0 8px 0 20px;
        display: inline-block;
        background: #fff;
        outline: none;
        -webkit-appearance: none;
        font-family: 'Noto Sans JP' ,sans-serif;
        font-size: 1.3rem;
        font-weight: 400;
    }

    .side_shop_search_area form:first-child .side_shop_search_item input[type="text"] {
        background-image:url("../img/icon_side_area.svg");
        background-size: 10px 14px;
        background-position: center left 5px;
        background-repeat: no-repeat;
    }
    
    .side_shop_search_area .multiplication {
        display: inline-block;
        margin: 6px 0 2px;
        width: 10px;
        height: 10px;
        background-image:url("../img/icon_multiplication.svg");
        background-repeat: no-repeat;
        background-size: 10px 10px;
        background-position: center center;
    }

    .side_shop_search_area .form_input_select {
        overflow: hidden;
        display: inline-block;
        width: 100%;
        margin: 0;
        position: relative;
    }

    .side_shop_search_area .form_input_select select {
        border: none;
        width: 100%;
        height: 30px;
        border-radius: 4px;
        font-family: 'Noto Sans JP' ,sans-serif;
        font-size: 1.3rem;
        font-weight: 400;
        margin: 0;
        padding: 0 12px;
        cursor: pointer;
        text-overflow: ellipsis;
        outline: none;
        background: #fff;
        -webkit-appearance: none;
        appearance: none;
        background-image:url("../img/arrow_down_g.svg");
        background-size: 8px 5px;
        background-position: center right 7px;
        background-repeat: no-repeat;
    }

    .side_shop_search_area form:last-child .side_shop_search_item input[type="text"] {
        background-image:url("../img/icon_side_free.svg");
        background-size: 15px 17px;
        background-position: center left 5px;
        background-repeat: no-repeat;
        padding: 0 8px 0 22px;
    }

    .side_shop_search_area .btn_search {
        display: inline-block;
        width: 100%;
        height: 28px;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        border-radius: 3px;
        background: #00d0af;
        border: none;
        cursor: pointer;
        white-space: nowrap;
        background-image:url("../img/icon_search_y.svg");
        background-repeat: no-repeat;
        background-size: 11px 12px;
        background-position: left 10px center;
        margin: 6px 0 0;
        color: #ffff78;
        border-radius: 4px;
        font-size: 1.3rem;
        font-weight: 700;
        font-family: 'BIZ UDPGothic', sans-serif;
        letter-spacing: 1px;
        text-shadow:1px 1px 0 #00c1a2,-1px 1px 0 #00c1a2,1px -1px 0 #00c1a2,-1px -1px 0 #00c1a2;
    }
    
    .side_shop_search_area .free_word_candidate_area, .side_shop_search_area .area_and_station_candidate_area {
        text-align: left;
        display: none;
    }
    
    .side_shop_search_area .free_word_candidate_area .free_word_candidate_title, .side_shop_search_area .area_and_station_candidate_area .area_and_station_candidate_title {
        font-family: 'Noto Sans JP' ,sans-serif;
        font-size: 1.5rem;
        font-weight: 700;
        text-align: center;
        margin: 0 0 4px;
        
    }
    
    .side_shop_search_area .free_word_candidate_area .free_word_candidate_title i, .side_shop_search_area .area_and_station_candidate_area .area_and_station_candidate_title i {
        color:#00d0af;
        margin: 0 3px 0 0;
    }
    
    .side_shop_search_area #free_word_candidate a, .side_shop_search_area #area_and_station_candidate a {
        display: inline-block;
        height: 30px;
        line-height: 30px;
        margin: 8px 8px 0 0;
        padding: 0 18px 0 8px;
        background: #f5f5f5;
        border-radius: 10px;
        font-size: 1.4rem;
        font-weight: 400;
        color:#00d0af;
        transition: background .3s;
        position: relative;
    }
    
    .side_shop_search_area #free_word_candidate a::after, .side_shop_search_area #area_and_station_candidate a::after {
        position: absolute;
        top: 0px;
        right: 5px;
        content: "\f105";
        font-family: "Font Awesome 5 Free";
        color: #888;
        font-weight: 900;
        font-size: 1.4rem;
        pointer-events: none;
    }
    
    .side_shop_search_area #free_word_candidate a:hover, .side_shop_search_area #area_and_station_candidate a:hover {
        background: #e8e8e8;
    }
    
}

/*---------------------------------
 Home
---------------------------------*/
/* TOP スライダー */
.slider_area {
    margin: 10px 0 0;
    padding: 0 0 5px;
}

.slider_area ul {
    margin: 0;
    padding: 0;
    display: none;
}

.slider_area ul.slick-initialized{
    display: block;
}

.slider_area ul li {
    margin: 0;
    padding: 0;
}

.slider_area .slick-dots {
    width: 100%;
    margin: 0;
    padding: 0;
}

.slider_area .slick-dots li {
    margin: 0;
    font-size: 14px !important;
}

.slider_area .slick-dots li button:before {
    font-size: 14px !important;
    opacity: 1 !important;
    color: #efefef !important;
    margin-top: 10px;
}

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

@media (min-width: 641px) {
    .slider_area {
        margin: 0;
    }
    .slider_area ul li {
        margin: 0 3px;
    }
}

/* TOP お店のスライダー表示部分 */
.shop_slider_list {
    margin: 0;
    padding: 0 0 8px;
    overflow-x: scroll;
    overflow-scrolling: touch;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
}

.shop_slider_list li {
    display: inline-block;
    width: 105px;
    margin: 0;
    padding: 0;
    vertical-align: top;
}

.shop_slider_list li + li {
    margin: 0 0 0 20px;
}

.shop_slider_list li a {
    display: block;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    color: #ff78ff;
    font-size: 1.2rem;
}

.shop_slider_list li .shop_area_name {
    display: inline-block;
    font-weight: 400;
    color: #ff78ff;
    font-size: 1.2rem;
    overflow: hidden;
    white-space: nowrap;
    width: 100%;
    text-overflow: ellipsis;
}

.shop_slider_list li .shop_area_txt {
    display: block;
    /*color: #b4b4b5;*/
    color: #353535; /*202307*/
    font-size: 1.1rem;
    margin: 3px 0;
    /*overflow: hidden;
    white-space: nowrap;
    width: 100%;
    text-overflow: ellipsis;*/
    white-space: normal;
}

.shop_slider_list li .shop_area_notice {
    display: block;
    font-size: 1.0rem;
    margin: 0 0 3px;
    padding: 3px 0;
    text-align: center;
}

.shop_slider_list li .shop_area_notice.bg_red {
    margin: 0px 0 3px;
    color: #fff;
    background-color: #ff0000;
    position: relative;
}

.shop_slider_list li .shop_area_notice.bg_red:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 8px solid transparent;
    border-top: 8px solid #ff0000;
}

.shop_slider_list li .shop_area_notice.bg_green {
    background: #00d0af;
    color: #fff;
}

@media (min-width: 641px) {
    .shop_slider_list {
        padding: 0 0 15px;
    }
    
    .shop_slider_list_sp {
        overflow-x: hidden;
        display: flex;
        
    }
    
    .shop_slider_list li {
        /*width: 135px;*/
        width: calc( (100% - 100px) / 5 );
    }

    .shop_slider_list li + li {
        margin: 0 0 0 25px;
    }

    .shop_slider_list li a {
        font-size: 1.4rem;
    }
    
    .shop_slider_list li .shop_area_name {
        font-size: 1.4rem;
    }

    .shop_slider_list li .shop_area_txt {
        font-size: 1.2rem;
        margin: 5px 0;
    }

    .shop_slider_list li .shop_area_notice {
        font-size: 1.3rem;
        margin: 0 0 5px;
        padding: 5px 0;
    }
}

/* TOP お店ランキング */
.shop_ranking_list {
    width: 96%;
    margin: 0 auto;
    padding: 0;
}

.shop_ranking_list li {
    margin: 26px 0 0;
    padding: 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
}

.shop_ranking_list li:first-child {
    margin-top: 0;
}

.shop_ranking_list li .shop_ranking_list_flex_area {
    display: flex;
}

.home_shop_ranking_list li .shop_ranking_list_img {
    width: 50%; /* 202401 */
}

.shop_ranking_list li .shop_ranking_list_img {
    position: relative;
    z-index: 1;
}

.home_shop_ranking_list li .shop_ranking_list_contents { /* 202401 */
    width: 50%;
    padding: 70px 0 0 2%;
}

.shop_ranking_list li .shop_ranking_shop_link { /* 202401 */
    margin: 8px 0 0 0 !important;
}

.shop_ranking_list li .shop_ranking_shop_link { /* 202401 */
    max-width: 200px;
}

.shop_ranking_list li .shop_ranking_list_img span, .girl_ranking_list li .girl_ranking_list_img span {
    position: absolute;
    min-width: 24px;
    top: 21px;
    left: 19px;
    z-index: 3;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.8rem;
    color: #ff78ff;
    letter-spacing: -1.0px;
}

.girl_ranking_list.top_girl_ranking_list li .girl_ranking_list_img span {
    font-size: 2.6rem;
}

.shop_ranking_list li .shop_ranking_list_img.rank_no:before, .girl_ranking_list li .girl_ranking_list_img.rank_no:before {
    content: '';
    display: inline-block;
    background-image:url("../img/rank_no.png");
    background-repeat: no-repeat;
    background-size: 44px 44px;
    background-position: center center;
    width: 44px;
    height: 44px;
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
}

.shop_ranking_list li .shop_ranking_list_img.rank_no.rank_1:before, .girl_ranking_list li .girl_ranking_list_img.rank_no.rank_1:before {
    background-image:url("../img/rank_1.png");
    background-size: 50px 69px;
    width: 50px;
    height: 69px;
    top: 0px;
    left: -10px;
}

.shop_ranking_list li .shop_ranking_list_img.rank_no.rank_2:before, .girl_ranking_list li .girl_ranking_list_img.rank_no.rank_2:before {
    background-image:url("../img/rank_2.png");
    background-size: 50px 69px;
    width: 50px;
    height: 69px;
    top: 0px;
    left: -10px;
}

.shop_ranking_list li .shop_ranking_list_img.rank_no.rank_3:before, .girl_ranking_list li .girl_ranking_list_img.rank_no.rank_3:before {
    background-image:url("../img/rank_3.png");
    background-size: 50px 69px;
    width: 50px;
    height: 69px;
    top: 0px;
    left: -10px;
}

.home_shop_ranking_list li .shop_ranking_list_img.rank_no.rank_1:before {
    left: 102%; /* 202401 */
}

.home_shop_ranking_list li .shop_ranking_list_img.rank_no.rank_2:before {
    left: 102%; /* 202401 */
}

.home_shop_ranking_list li .shop_ranking_list_img.rank_no.rank_3:before {
    left: 102%; /* 202401 */
}

.shop_ranking_list li .shop_ranking_list_img.rank_no.rank_circle:before, .girl_ranking_list li .girl_ranking_list_img.rank_no.rank_circle:before {
    background-image:url("../img/rank_circle.png");
}

.shop_ranking_list li .shop_ranking_list_img.rank_no.rank_circle span, .girl_ranking_list li .girl_ranking_list_img.rank_no.rank_circle span {
    left: 18px;
}

.shop_ranking_list li .shop_ranking_area {
    display: block;
    color: #00c8ff;
    font-size: 1.3rem;
    margin: 8px 0 3px;
    text-align: left;
}

.shop_ranking_list li .shop_ranking_shop_name {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #ff78ff;
    font-size: 1.6rem;
    font-weight: 700;
    text-align: left;
}

.shop_ranking_list li .shop_ranking_girls_list {
    display: flex;
    margin: 8px 0 8px;
}

.shop_ranking_list li .shop_ranking_girls_list a {
    width: 19.2%;
    border-radius: 50%;
    margin: 0 1% 0 0;
}

.shop_ranking_list li .shop_ranking_girls_list a:nth-child(5n) {
    margin: 0;
}

.shop_ranking_list li .shop_ranking_girls_list a img {
    border-radius: 50%;
}

.shop_ranking_list li .shop_ranking_pr_area {
    color: #b5b5b5;
    font-size: 1.5rem;
    text-align: left;
    line-height: 1.5;
}

/* TOP お店ランキング スライダー部分 */
.section_home_shop_ranking .shop_slider_list li {
    width: 76px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.section_home_shop_ranking .shop_slider_list li + li {
    margin: 0 0 0 10px;
}

.section_home_shop_ranking .shop_slider_list li a {
    font-size: 1.1rem;
    text-align: left;
    font-weight: 500;
}

.section_home_shop_ranking .shop_slider_list li .shop_area_txt {
    font-size: 1.0rem;
    text-align: left;
    font-weight: 400;
    white-space: nowrap;
}










@media (max-width: 641px) {
    
    .shop_ranking_list.ranking_page_shop_ranking_list{
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }
    
    .shop_ranking_list.ranking_page_shop_ranking_list li {
        margin: 22px 0 0;
        border-bottom: 1px solid #ffdeff;
    }
    
    .shop_ranking_list.ranking_page_shop_ranking_list li .shop_ranking_girls_list {
        margin: 8px 0 18px;
    }
    
    .shop_ranking_list.ranking_page_shop_ranking_list li:nth-child(n + 11){
        width: 49%;
        margin: 20px 2% 0 0;
        border-bottom: none;
    }

    .shop_ranking_list.ranking_page_shop_ranking_list li:nth-child(n + 11):nth-child(2n){
        width: 49%;
        margin: 20px 0 0;
    }

    .shop_ranking_list.ranking_page_shop_ranking_list li:nth-child(n + 11) .shop_ranking_list_img.rank_no:before {
        top: 0px;
        left: 0px;
        background-size: 40px 40px;
        width: 40px;
        height: 40px;
    }

    .shop_ranking_list.ranking_page_shop_ranking_list li:nth-child(n + 11) .shop_ranking_list_img span {
        top: 9px;
        left: 7px;
        font-size: 1.6rem;
    }
    
    .shop_ranking_list.ranking_page_shop_ranking_list li:nth-child(n + 21){
        width: 32%;
        margin: 20px 2% 0 0;
        border-bottom: none;

    }

    .shop_ranking_list.ranking_page_shop_ranking_list li:nth-child(n + 21):nth-child(2n){
        width: 32%;
        margin: 20px 2% 0 0;
        
    }

    .shop_ranking_list.ranking_page_shop_ranking_list li:nth-child(n + 21):nth-child(3n + 2){
        width: 32%;
        margin: 20px 0 0;
    }

    .shop_ranking_list.ranking_page_shop_ranking_list li:nth-child(n + 21) .shop_ranking_list_img.rank_no:before {
        top: 0px;
        left: 0px;
        background-size: 35px 35px;
        width: 35px;
        height: 35px;
    }

    .shop_ranking_list.ranking_page_shop_ranking_list li:nth-child(n + 21) .shop_ranking_list_img span {
        top: 7px;
        left: 5px;
        font-size: 1.4rem;
    }
}


@media (min-width: 641px) {

    .shop_ranking_list {
        width: 100%;
        margin: 0 auto;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
    }
    
    .shop_ranking_list li {
        width: 32%;
        margin: 0 2% 0 0;
        padding: 0 0 38px;
        position: relative;
    }
    
    .shop_ranking_list li:nth-child(3n) {
        margin: 0;
    }
    
    .shop_ranking_list li:nth-child(n + 4) {
        margin-top: 20px;
    }
    

    .home_shop_ranking_list li .shop_ranking_list_flex_area { /* 202401 */
        display: block;
    }
    
    .home_shop_ranking_list li .shop_ranking_list_contents { /* 202401 */
        width: 100%;
        padding: 0px 0 0 0;
    }
    
    .home_shop_ranking_list li .shop_ranking_list_img { /* 202401 */
        width: 100%;
    }

    .home_shop_ranking_list li .shop_ranking_shop_link { /* 202401 */
        margin: 0px 0 0 0 !important;
        max-width: 200px;
        height: 30px;
        line-height: 30px;
        border-radius: 5px;
        font-size: 1.4rem;
        background-size: 12px 12px;
        background-position: right 25px center;
        font-weight: 500;
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }
    /*
    .shop_ranking_list li .shop_ranking_list_img {
    width: 100%;
    position: relative;
    z-index: 1;
}

.shop_ranking_list li .shop_ranking_list_img span, .girl_ranking_list li .girl_ranking_list_img span {
    position: absolute;
    min-width: 24px;
    top: 21px;
    left: 19px;
    z-index: 3;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.8rem;
    color: #ff78ff;
    letter-spacing: -1.0px;
}

.girl_ranking_list.top_girl_ranking_list li .girl_ranking_list_img span {
    font-size: 2.6rem;
}

.shop_ranking_list li .shop_ranking_list_img.rank_no:before, .girl_ranking_list li .girl_ranking_list_img.rank_no:before {
    content: '';
    display: inline-block;
    background-image:url("../img/rank_no.png");
    background-repeat: no-repeat;
    background-size: 44px 44px;
    background-position: center center;
    width: 44px;
    height: 44px;
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
}
    */
    
    .shop_ranking_list li .shop_ranking_list_img.rank_no.rank_1st:before, .girl_ranking_list li .girl_ranking_list_img.rank_no.rank_1st:before, .shop_ranking_list li .shop_ranking_list_img.rank_no.rank_2nd:before, .girl_ranking_list li .girl_ranking_list_img.rank_no.rank_2nd:before,.shop_ranking_list li .shop_ranking_list_img.rank_no.rank_3rd:before, .girl_ranking_list li .girl_ranking_list_img.rank_no.rank_3rd:before {
        background-size: 44px 60px;
        width: 44px;
        height: 60px;
    }
    
    .shop_ranking_list li .shop_ranking_list_img.rank_no.rank_1:before, .girl_ranking_list li .girl_ranking_list_img.rank_no.rank_1:before {
        top: -10px;
        left: -10px;
    }

    .shop_ranking_list li .shop_ranking_list_img.rank_no.rank_2:before, .girl_ranking_list li .girl_ranking_list_img.rank_no.rank_2:before {
        top: -10px;
        left: -10px;
    }

    .shop_ranking_list li .shop_ranking_list_img.rank_no.rank_3:before, .girl_ranking_list li .girl_ranking_list_img.rank_no.rank_3:before {
        top: -10px;
        left: -10px;
    }
    
    .section_home_shop_ranking .shop_slider_list li {
        width: 134px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .section_home_shop_ranking .shop_slider_list li + li {
        margin: 0 0 0 20px;
    }

    .section_home_shop_ranking .shop_slider_list li a {
        font-size: 1.4rem;
        text-align: left;
    }

    .section_home_shop_ranking .shop_slider_list li .shop_area_txt {
        font-size: 1.2rem;
        text-align: left;
    }
}

/* TOP タイムライン */
.timeline_list {
    /*width: 80%; 20230719 */
    width: 100%;
    margin: 0 auto;
    padding: 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
}
    
.timeline_list_inner { /* 20230719 */
    max-width: 90%;
    margin: 0 auto;
}

.timeline_list li { /* 20230719 */
    margin: 0;
    padding: 12px 0 12px;
    background: #f7f7f7;
}

.timeline_list li + li {
    /*margin: 25px 0 0; 20230719 */
    margin: 0;
}

.timeline_list li:nth-child(even) { /* 20230719 */
    background: #fff;
}

.timeline_list video {
    max-width: 100%;
    height: auto;
}

.timeline_list .timeline_basic_info {
    display: flex;
    align-items: center;
    font-size: 1.4rem;
    /*color: #888; */
    color: #353535; /* 202307 */
    margin: 0 0 10px;
    line-height: 1.6;
    text-align: left;
}

.timeline_list .timeline_basic_info img {
    width: 58px;
    border-radius: 50%;
    margin: 0 10px 0 0;
}

.timeline_list .timeline_blog_link_area {
    display: block;
    text-align: center;
}


.timeline_blog_link_area img, .timeline_blog_link_area video-js {
    width: auto;
    max-width: 100%;
}

.timeline_blog_txt {
    font-size: 1.6rem;
    /*color: #b5b5b6;*/
    color: #000; /* 202307 */
    line-height: 1.6;
    text-align: center;
    font-family: 'Noto Sans JP' ,sans-serif;
}

.timeline_blog_txt a {
    color: #2e99e4;
    text-decoration: underline;
}
.timeline_list .timeline_blog_date {
    font-size: 1.4rem;
    /*color: #b5b5b6;*/
    color: #353535; /* 202307 */
}
.timeline_list input[type="checkbox"] {
    display: none;
}

.timeline_list input[type="checkbox"] + label {
    position:relative;
    padding-left: 50px;
    font-family: 'Noto Sans JP' ,sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    color:#000;
}
.timeline_list input[type="checkbox"] + label:before{
    content: '';
    display: inline-block;
    background-image:url("../img/btn_like.svg");
    background-repeat: no-repeat;
    background-size: 20px 20px;
    background-position: center center;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 0px;
    left: 0px;
}

.timeline_list input[type="checkbox"]:checked + label:after{
    content: '';
    display: inline-block;
    background-image:url("../img/btn_like_on.svg");
    background-repeat: no-repeat;
    background-size: 20px 20px;
    background-position: center center;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 0px;
    left: 0px;
}

.timeline_list img + img, .timeline_list img + video, .timeline_list video + img {
    margin: 10px 0 0;
}

.timeline_blog_link_area + .timeline_blog_link_area {
    margin: 10px 0 0;
}

@media (min-width: 641px) {

    /*
    .timeline_list {
        max-width: 450px; 20230719
    }*/
    
    .timeline_list_inner { /* 20230719 */
        max-width: 450px;
    }

    
    .timeline_list li { /* 20230719 */
        margin: 0;
        padding: 23px 0 23px;
    }

    .timeline_list li + li {
        /* margin: 46px 0 0; 20230719 */
        margin: 0;
    }

    .timeline_list .timeline_basic_info {
        font-size: 1.8rem;
        margin: 0 0 15px;
    }

    .timeline_list .timeline_basic_info img {
        width: 98px;
        margin: 0 20px 0 0;
    }

    .timeline_blog_txt {
        font-size: 1.8rem;
    }

    .timeline_list .timeline_blog_date {
        font-size: 1.6rem;
    }

    .timeline_list input[type="checkbox"] + label {
        padding-left: 64px;
        font-size: 1.6rem;
    }
    .timeline_list input[type="checkbox"] + label:before{
        background-size: 32px 32px;
        width: 32px;
        height: 32px;
    }

    .timeline_list input[type="checkbox"]:checked + label:after{
        background-size: 32px 32px;
        width: 32px;
        height: 32px;
    }
    
}

/* TOP 女の子ランキング */
.girl_ranking_list {
    width: 80%;
    margin: 0 auto;
    padding: 0;
    text-align: center;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.girl_ranking_list li {
    width: 100%;
}

.girl_ranking_list li + li {
    margin-top: 20px;
}









.girl_ranking_list li .girl_ranking_list_img {
    position: relative;
    z-index: 1;
    width: 70%;
    margin: 0 auto;
}

.girl_ranking_list li .girl_ranking_list_img img {
    border-radius: 50%;
}

.girl_ranking_list li .girl_ranking_area {
    display: block;
    /*color: #b5b5b6;*/
    color: #353535; /*202307*/
    font-size: 1.3rem;
}

.girl_ranking_list li .girl_ranking_shop_name {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #ff78ff;
    font-size: 1.6rem;
    font-weight: 700;
    margin: 8px 0 3px;
}


@media (max-width: 641px) {
    
    
    .girl_ranking_list.ranking_page_girl_ranking_list li:nth-child(n + 11){
        width: 49%;
        margin: 20px 2% 0 0;

    }

    .girl_ranking_list.ranking_page_girl_ranking_list li:nth-child(n + 11):nth-child(2n){
        width: 49%;
        margin: 20px 0 0;
    }

    .girl_ranking_list.ranking_page_girl_ranking_list li:nth-child(n + 11) .girl_ranking_list_img.rank_no:before {
        top: 0px;
        left: -15px
    }

    .girl_ranking_list.ranking_page_girl_ranking_list li:nth-child(n + 11) .girl_ranking_list_img span {
        top: 9px;
        left: -6px
    }

    .girl_ranking_list.ranking_page_girl_ranking_list li:nth-child(n + 21){
        width: 32%;
        margin: 20px 2% 0 0;

    }

    .girl_ranking_list.ranking_page_girl_ranking_list li:nth-child(n + 21):nth-child(2n){
        width: 32%;
        margin: 20px 2% 0 0;
    }

    .girl_ranking_list.ranking_page_girl_ranking_list li:nth-child(n + 21):nth-child(3n + 3){
        width: 32%;
        margin: 20px 0 0;
    }

    .girl_ranking_list.ranking_page_girl_ranking_list li:nth-child(n + 21) .girl_ranking_list_img.rank_no:before {
        top: 0px;
        left: -15px;
        background-size: 35px 35px;
        width: 35px;
        height: 35px;
    }

    .girl_ranking_list.ranking_page_girl_ranking_list li:nth-child(n + 21) .girl_ranking_list_img span {
        top: 7px;
        left: -10px;
        font-size: 1.4rem;
    }
}

@media (min-width: 641px) {
    .girl_ranking_list {
        /*
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
        202307*/
    }

    .girl_ranking_list li + li {
        margin-top: 0px;
    }

    .girl_ranking_list li {
        width: 24%;
        margin: 0 1.3% 0 0;
    }
    
    .girl_ranking_list.top_girl_ranking_list li {
        width: 30%;
        margin: 0 5% 0 0;
    }
    
    .girl_ranking_list li:nth-child(4n), .girl_ranking_list.top_girl_ranking_list li:nth-child(3n) {
        margin: 0;
    }

    .girl_ranking_list li:nth-child(n + 5) {
        margin-top: 30px;
    }
    
    .girl_ranking_list li .girl_ranking_list_img {
        width: 100%;
    }
    
    .girl_ranking_list li .girl_ranking_shop_name {
        font-size: 1.8rem;
        margin: 10px 0 10px;
    }
}

/* TOP 3,000円or5,000円ポッキリで遊べるお店 */
.clear_accounting_list {
    margin: 0;
    padding: 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
}

.clear_accounting_list li {
    margin: 0;
    padding: 0;
    border-bottom: 1px dashed #b5b5b6;
    width: 100%;
}

.section_clear_accounting .clear_accounting_list li {
    border-bottom: none;
}

.section_clear_accounting .clear_accounting_list li+li {
    margin: 20px 0 0;
}

.clear_accounting_list li a {
    display: block;
    width: 100%;
}

.clear_accounting_list li .clear_accounting_overview {
    display: flex;
    background-image:url("../img/icon_clearly.svg");
    background-repeat: no-repeat;
    background-size: 65px 62px;
    background-position: right center;
    padding: 10px 65px 10px 0;
    
}

.clear_accounting_list .clear_accounting_img {
    width: 82px;
    margin: 0 8px 0 0;
}

.clear_accounting_list .clear_accounting_txt {
    width: calc( 100% - 90px );
}

.clear_accounting_list .clear_accounting_area {
    display: block;
    /*color: #b4b4b5;*/
    color: #353535; /*202307*/
    font-size: 1.1rem;
    margin: 3px 0;
}

.clear_accounting_list .clear_accounting_shop_name {
    display: block;
    color: #ff78ff;
    font-size: 1.6rem;
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin: 0 0 5px;
}

.clear_accounting_list .clear_accounting_amount {
    display: block;
    color: #00d0af;
    font-family: 'Poppins', sans-serif;
    font-size: 3.6rem;
    font-weight: 700;
    height: 38px;
    line-height: 38px;
    padding: 0 0 0 38px;
    background-image:url("../img/icon_hot.svg");
    background-repeat: no-repeat;
    background-size: 30px 38px;
    background-position: left center;
}

.clear_accounting_list .clear_accounting_amount span {
    display: inline-block;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 2.2rem;
    margin: 0 0 0 2px;
}

.clear_accounting_list .clear_accounting_detail {
    background: #b5b5b6;
    margin: 0;
    padding: 8px;
    width: 100%;
    display: block;
}

.clear_accounting_list .clear_accounting_detail .inner {
    background: #fff;
    padding: 10px;
    border-radius: 10px;
    text-align: center;
    /*color: #b5b5b6;
    color: #000;
    font-size: 1.4rem;
    font-weight: 500;*/    
    color: #00d0af; /*202307*/
    font-size: 1.6rem; /*202307*/
    font-weight: 700; /*202307*/
}

.clear_accounting_list .clear_accounting_detail .inner pre {
    margin: 5px 0 0;
    padding: 0;
    /*color: #00d0af;
    font-size: 1.6rem;
    font-weight: 700;*/
    color: #000; /*202307*/
    font-size: 1.4rem; /*202307*/
    font-weight: 500; /*202307*/
}



@media (min-width: 641px) {

    .section_home_clear_accounting .container, .section_clear_accounting .container {
        max-width: 560px;
    }

    .clear_accounting_list li .clear_accounting_overview {
        padding: 20px 104px 20px 0;
        background-size: 109px 104px;
    }    
    
    .clear_accounting_list .clear_accounting_img {
        width: 135px;
        margin: 0 15px 0 0;
    }

    .clear_accounting_list .clear_accounting_txt {
        width: calc( 100% - 150px );
    }

    .clear_accounting_list .clear_accounting_area {
        font-size: 1.6rem;
        margin: 3px 0;
    }

    .clear_accounting_list .clear_accounting_shop_name {
        font-size: 2.2rem;
        margin: 0 0 10px;
    }

    .clear_accounting_list .clear_accounting_amount {
        font-size: 6.0rem;
        height: 64px;
        line-height: 64px;
        padding: 0 0 0 60px;
        background-image:url("../img/icon_hot.svg");
        background-repeat: no-repeat;
        background-size: 51px 64px;
        background-position: left center;
    }

    .clear_accounting_list .clear_accounting_amount span {
        display: inline-block;
        font-family: 'Noto Sans JP', sans-serif;
        font-size: 4.0rem;
        margin: 0 0 0 2px;
    }

    .clear_accounting_list .clear_accounting_detail .inner {
        padding: 12px;
        /*font-size: 1.6rem;*/
        font-size: 2.0rem; /* 202307 */
    }

    .clear_accounting_list .clear_accounting_detail .inner pre {
        margin: 8px 0 0;
        /*font-size: 2.0rem;*/
        font-size: 1.6rem; /* 202307 */
    }
    
}

/*---------------------------------
 Login
---------------------------------*/

.login_container input[type="text"], .login_container input[type="password"], .login_container .btn {
    margin: 10px 0;
}

.login_container .btn {
   max-width: 230px;
}

.login_container a.link_blue {
    font-family: 'BIZ UDPGothic', sans-serif;
    letter-spacing: .5px;
    font-size: 1.4rem;
    font-weight: 400;
    color:#00c8ff;
}

.login_container input[type="checkbox"] {
    display: none;
}

.login_container input[type="checkbox"] + label {
    position:relative;
    padding-left: 22px;
    font-family: 'BIZ UDPGothic', sans-serif;
    letter-spacing: .5px;
    font-size: 1.4rem;
    font-weight: 400;
    color:#000;
}
.login_container input[type="checkbox"] + label:before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 16px;
    height: 16px;
    background: #eeeeee;
    border-radius: 2px;
}

.login_container input[type="checkbox"]:checked + label:after{
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 5px;
    width: 7px;
    height: 13px;
    transform: rotate(40deg);
    border-right: 2px solid #00d4ac;
    border-bottom: 2px solid #00d4ac;
}

.login_container p {
    margin: 0 0 22px;
    padding: 0;
    /*color: #b5b5b6;*/
    color: #000; /*202307*/
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.4rem;
    line-height: 1.4;
    text-align: center;
}

.member_service_list {
    margin: 0;
    padding: 0;
}

.member_service_list li {
    background: #ff78ff;
}

.member_service_list li + li {
    margin: 10px 0 0;
}

.member_service_list li a {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.4rem;
    line-height: 1.4;
    color: #fff;
    display: flex;
}

.member_service_list img {
    width: 60px;
}

.member_service_list li p {
    width: calc( 100% - 60px );
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    color: #fff;
    text-align: center;
    font-size: 1.5rem;
}

.error_msg_area {
    font-family: 'Noto Sans JP' ,sans-serif;
    display: inline-block;
    width: 100%;
    color: #c20025;
    background: #fff8f9;
    border: 1px solid #d8d1d2;
    margin: 0 0 15px;
    padding: 12px 20px;
    border-radius: 3px;
    font-size: 1.6rem;
}

.complete_msg {
    font-family: 'Noto Sans JP' ,sans-serif;
    color: #4095e3;
    font-weight: bold;
    background: #f4fbff;
    margin: 25px 0;
    padding: 15px;
    border-radius: 5px;
    font-size: 1.6rem;
}

.complete_msg i {
    margin: 0 5px 0 0;
}

.msg_area {
    font-family: 'Noto Sans JP' ,sans-serif;
    color: #333;
    background: #fffff8;
    border: 1px solid #d8d7d1;
    margin: 0 0 25px;
    padding: 12px 20px;
    border-radius: 3px;
    font-size: 1.6rem;
    line-height: 1.6;
}

@media (min-width: 641px) {
    
    .login_container {
        max-width: 500px;
    }
    
    .login_container input[type="text"], .login_container input[type="password"], .login_container .btn {
        margin: 15px 0;
    }

    .login_container .btn {
        max-width: 350px;
        height: 42px;
        line-height: 40px;
        font-size: 2.0rem;
    }

    .login_container a.link_blue {
        font-size: 1.6rem;
    }

    .login_container input[type="checkbox"] + label {
        padding-left: 32px;
        padding-top: 5px;
        font-size: 1.6rem;
    }
    .login_container input[type="checkbox"] + label:before{
        width: 25px;
        height: 25px;
        border-radius: 3px;
    }

    .login_container input[type="checkbox"]:checked + label:after{
        content: "";
        display: block;
        position: absolute;
        top: 0px;
        left: 5px;
        width: 7px;
        height: 13px;
        transform: rotate(40deg);
        border-right: 2px solid #00d4ac;
        border-bottom: 2px solid #00d4ac;
    }

    .login_container p {
        margin: 0 0 28px;
        font-size: 1.6rem;
    }
    
    .member_service_container {
        max-width: 660px;
    }

    .member_service_list li + li {
        margin: 15px 0 0;
    }

    .member_service_list li a {
        font-size: 1.5rem;
    }

    .member_service_list img {
        width: 110px;
    }

    .member_service_list li p {
        width: calc( 100% - 110px );
        font-size: 2.2rem;
    }
}

/*---------------------------------
 女の子一覧
---------------------------------*/
.girl_list {
    width: 96%;
    margin: 0 auto 20px;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}

.girl_list li {
    width: 48%;
    margin-right: 4%;
    padding-top: 18px;
    position: relative;
}

.girl_list li a {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.6rem;
    line-height: 1.4;
}

.girl_list li:nth-child(2n) {
    margin-right: 0;
}

.girl_list li:nth-child(n + 3) {
    margin-top: 15px;
}

.girl_list li .girl_list_img img {
    border-radius: 50%;
}

.girl_list li .girl_name {
    display: block;
    margin: 10px 0 3px;
    text-align: left;
}

.girl_list li .girl_name a {
    /*color: #898989;*/
    color: #000; /*203207*/
}

.girl_list li .girl_area {
    display: block;
    text-align: left;
}

.girl_list li .girl_area a {
    font-size: 1.4rem;
    color: #00c8ff;
}

.girl_list li .girl_list_notice {
    position: absolute;
    top: 0px;
    left: 0;
    right: 0;
    display: block;
    height: 18px;
    color: #ff0000;
    text-align: center;
    font-size: 1.2rem;
    font-weight: 700;
    text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF,
              -1px 1px 0 #FFF, 1px -1px 0 #FFF,
              0px 1px 0 #FFF, 0 -1px 0 #FFF,
              -1px 0 0 #FFF, 1px 0 0 #FFF;
}


@media (min-width: 641px) {
    .girl_list {
        width: 100%;
        margin: 0 auto 30px;
    }

    .girl_list li {
        width: 23%;
        margin-right: 2.6%;
    }

    .girl_list li a {
        font-size: 1.8rem;
    }

    .girl_list li:nth-child(2n) {
        margin-right: 2.6%;
    }

    .girl_list li:nth-child(4n) {
        margin-right: 0;
    }

    .girl_list li:nth-child(n + 3) {
        margin-top: 0px;
    }

    .girl_list li:nth-child(n + 5) {
        margin-top: 18px;
    }

    .girl_list li .girl_name {
        margin: 12px 0 5px;
    }

    .girl_list li .girl_area a {
        font-size: 1.6rem;
    }

}

/*---------------------------------
 エリアランキング
---------------------------------*/

.area_ranking_question_title {
    margin: 0;
    padding: 5px 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    font-size: 1.4rem;
    background: #9fa0a0;
    color: #ffff78;
    text-align: center;
}

.area_ranking_question_list  {
    margin: 0;
    padding: 0;
    text-align: left;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
}

.area_ranking_question_list dt  {
    margin: 8px 0;
    padding: 8px 8px 8px 40px;
    background: #ffe6ff;
    color: #ff78ff;
    position: relative;
    line-height: 1.4;
}

.area_ranking_question_list dt::before {
    content: "Q";
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    position: absolute;
    top: 2px;
    left: 10px;
}

.area_ranking_question_list dd {
    margin: 0;
    padding: 5px 8px 8px 40px;
    /*color: #b5b5b6;*/
    color: #000; /*202307*/
    position: relative;
    line-height: 1.4;
}

.area_ranking_question_list dd::before {
    content: "A";
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    position: absolute;
    top: 3px;
    left: 10px;
}

.area_ranking_info_txt {
    margin: 0;
    padding: 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.4rem;
    /*color: #b5b5b6;*/
    color: #000; /*202307*/
    line-height: 1.4;
    text-align: left;
}

@media (min-width: 641px) {
    

    .area_ranking_question_title {
        padding: 8px 0;
        font-size: 1.8rem;
    }

    .area_ranking_question_list {
        font-size: 1.8rem;
    }

    .area_ranking_question_list dt  {
        margin: 12px 0;
        padding: 12px 12px 12px 50px;
        background: #ffe6ff;
        color: #ff78ff;
        position: relative;
        line-height: 1.4;
    }

    .area_ranking_question_list dt::before {
        font-size: 3.0rem;
        top: 2px;
        left: 14px;
    }

    .area_ranking_question_list dd {
        padding: 6px 12px 12px 50px;
    }

    .area_ranking_question_list dd::before {
        font-size: 3.0rem;
        top: 3px;
        left: 14px;
    }

    .area_ranking_info_txt {
        font-size: 1.8rem;
    }
}


/*---------------------------------
 グラビア
---------------------------------*/

.gravure_list {
    margin: 0;
    padding: 0;
}

.gravure_list li + li {
    margin: 40px 0 0;
}

.gravure_name {
    margin: 0;
    padding: 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    color: #ff78ff;
    text-align: center;
}

.gravure_name a {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    color: #ff78ff;
}

.gravure_shop_name{
    display: block;
    margin: 10px 0;
    padding: 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.8rem;
    color: #000;
    text-align: center;
}

.gravure_profile {
    display: block;
    margin: 0 0 20px;
    padding: 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    color: #000;
    text-align: center;
}

.gravure_main_img {
    width: 60%;
    min-height: 200px;
    margin: 15px auto;
    text-align: center;
}

.gravure_thumb_img_area {
    width: 80%;
    display: flex;
    justify-content: center;
    margin: 0 auto;
}

.gravure_thumb_img_area li {
    flex: 1;
}

.gravure_thumb_img_area li + li {
    margin: 0 0 0 5px;
}

.gravure_single_img_area .gravure_thumb_img_area {
    flex-wrap: wrap;
    justify-content: space-between;
}

.gravure_single_img_area .gravure_thumb_img_area li {
    width: 32%;
    flex: initial;
}

.gravure_single_img_area .gravure_thumb_img_area li:nth-child(n + 4) {
    margin: 8px 0 0 5px;
}

.gravure_single_img_area .gravure_thumb_img_area li:nth-child(3n + 1) {
    margin: 8px 0 0 0px;
}

.gravure_single_img_area .gravure_thumb_img_area li:first-child {
    margin: 0;
}

.gravure_interview_list  {
    margin: 0;
    padding: 0;
    text-align: left;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
}

.gravure_interview_list dt  {
    margin: 15px 0 0;
    padding: 0;
    position: relative;
    line-height: 1.4;
}

.gravure_interview_list dt:before {
    content: url("../img/icon_staff.svg");
    display: inline-block;
    width: 28px;
    height: 33px;
    vertical-align: top;
}

.gravure_interview_list dt p {
    display: inline-block;
    width: calc( 100% - 35px );
    margin: 0;
    padding: 0 0 0 38px;
    color: #000;
    position: relative;
    line-height: 1.4;
}

.gravure_interview_list dt p::before {
    content: "Q:";
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    position: absolute;
    top: 0px;
    left: 0px;
}

.gravure_interview_list dd {
    margin: 8px 0 0;
    padding: 0;
    color: #ff78ff;
    position: relative;
    line-height: 1.4;
    display: flex;
}

.gravure_interview_list dd pre {
    display: inline-block;
    width: calc( 100% - 70px );
    margin: 0 0 0 20px;
    padding: 0 10px 0 40px;
    color: #ff78ff;
    position: relative;
    line-height: 1.4;
}

.gravure_interview_list dd pre::before {
    content: "A:";
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    position: absolute;
    top: 0px;
    left: 0px;
}

.gravure_interview_list dd .gravure_interview_img_area {
    width: 50px; 
}

.gravure_interview_list dd img {
    border-radius: 50%;
}

.gravure_shop_info a {
    display: flex;
    justify-content: space-between;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    color: #ff78ff;
    font-size: 2.0rem;
}

.gravure_shop_info .gravure_shop_img_area {
    width: 100px;
}

.gravure_shop_info .gravure_shop_txt {
    width: calc( 100% - 110px );
}

.gravure_shop_info .shop_area_txt {
    display: block;
    /*color: #b4b4b5;*/
    color: #353535; /*202307*/
    font-size: 1.6rem;
    margin: 0 0 5px;
}

.other_gravure_img_area {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    white-space: nowrap;
    padding: 0 0 15px;
}

.other_gravure_img_area li {
    display: inline-block;
    width: 100px;
}

.other_gravure_img_area .gravure_name {
    margin: 5px 0 0;
    padding: 0;
    text-align: left;
    white-space: normal;
}

.other_gravure_img_area .gravure_name a {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    /*color: #898989;*/
    color: #353535; /*202307*/
}

.other_gravure_img_area .gravure_shop_name{
    display: block;
    margin: 5px 0 0;
    padding: 0;
    text-align: left;
    white-space: normal;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.4rem;
    color: #00c8ff;
}

.other_gravure_img_area .gravure_shop_name a {
    font-size: 1.4rem;
    color: #00c8ff;
}


@media (min-width: 641px) {

    .gravure_list li + li {
        margin: 60px 0 0;
    }
    
    .gravure_name {
        font-size: 2.8rem;
    }

    .gravure_shop_name{
        margin: 15px 0;
    }
    .gravure_profile {
        margin: 0 0 30px;
    }

    .gravure_main_img {
        width: 52%;
        max-width: 600px;
        min-height: 400px;
        margin: 15px auto;
    }

    .gravure_thumb_img_area li {
        max-width: 150px;
    }

    .gravure_thumb_img_area li + li {
        margin: 0 0 0 10px;
    }    

    .gravure_single_img_area .gravure_thumb_img_area {
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    .gravure_single_img_area .gravure_thumb_img_area li {
        width: 18%;
        flex: initial;
    }

    .gravure_single_img_area .gravure_thumb_img_area li:nth-child(n + 4) {
        margin: 0 0 0 10px;
    }

    .gravure_single_img_area .gravure_thumb_img_area li:nth-child(3n + 1) {
        margin: 0 0 0 10px;
    }

    .gravure_single_img_area .gravure_thumb_img_area li:nth-child(n + 6) {
        margin: 10px 0 0 10px;
    }

    .gravure_single_img_area .gravure_thumb_img_area li:nth-child(5n + 1) {
        margin: 10px 0 0 0;
    }

    .gravure_single_img_area .gravure_thumb_img_area li:first-child {
        margin: 0;
    }
    
    .gravure_interview_list  {
        font-size: 1.8rem;
    }

    .gravure_interview_list dt  {
        margin: 15px 0 0;
    }

    .gravure_interview_list dt:before {
        width: 42px;
        height: 54px;
    }

    .gravure_interview_list dt p {
        width: calc( 100% - 50px );
        padding: 0 0 0 50px;
    }

    .gravure_interview_list dt p::before {
        font-size: 2.6rem;
    }

    .gravure_interview_list dd {
        margin: 10px 0 0;
    }

    .gravure_interview_list dd pre {
        width: calc( 100% - 70px );
        margin: 0 0 0 30px;
    }

    .gravure_interview_list dd pre::before {
        font-size: 2.6rem;
    }

    .gravure_interview_list dd .gravure_interview_img_area {
        width: 70px; 
    }
    
    .gravure_shop_info a {
        font-size: 2.4rem;
    }

    .gravure_shop_info .gravure_shop_img_area {
        width: 160px;
    }

    .gravure_shop_info .gravure_shop_txt {
        width: calc( 100% - 180px );
    }

    .gravure_shop_info .shop_area_txt {
        font-size: 1.8rem;
        margin: 0 0 10px;
    }

    


    .other_gravure_img_area {
        width: 100%;
        white-space: normal;
        padding: 0 0 20px;
        display: flex;
        justify-content: space-between;
    }

    .other_gravure_img_area li {
        width: 19%;
    }
    
}

/*---------------------------------
 グラビアポップアップ
---------------------------------*/
#gravure_modal_area {
    display: none;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    background: rgba(0, 0, 0, 1);
    z-index: 999;
}

#gravure_modal_area .inner {
    width: 100%;
    height: 100vh;
    overflow-y: scroll;
}

#gravure_modal_area .modal_close {
    height: 40px;
    border-radius: 10px 10px 0 0;
    position: relative;
}

#gravure_modal_area .modal_close::after {
    position: absolute;
    top: 7px;
    right: 15px;
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    color: #999;
    font-weight: 900;
    font-size: 2.6rem;
    pointer-events: none;
}

.gravure_slider_area {
    margin: 0 0 30px;
    padding: 0;
    position: relative;
}

.gravure_slider_area ul {
    margin: 0;
    padding: 0;
}

.gravure_slider_area .slide-arrow {
    width: 22px;
    height: 50vh;
    position: absolute;
    z-index:2;
    cursor: pointer;
}

.gravure_slider_area .slide-arrow img {
    width: 17px;
}

.gravure_slider_area .slide-arrow.prev-arrow {
    left: 7px;
    top: 50%;
    transform: translateY(-50%);
}

.gravure_slider_area .slide-arrow.next-arrow {
    right: 7px;
    top: 50%;
    transform: scale(-1, 1) translateY(-50%);
}

.gravure_slider_area .slick-dots {
    width: 100%;
    margin: 0;
    padding: 0;
}

.gravure_slider_area .slick-dots li {
    margin: 0;
    padding: 0;
    font-size: 14px !important;
}

.gravure_slider_area .slick-dots li button:before {
    font-size: 14px !important;
    opacity: 1 !important;
    color: #efefef !important;
    margin-top: 10px;
}

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

.gravure_slider_area .slide-arrow.slick-disabled {
    opacity: 0;
    cursor: default;
}
 
.gravure_slider_area .slide-arrow.slick-disabled:before {
    opacity: 0;
}

.gravure_slider_area ul li {
    margin: 0;
    padding: 0 30px;
}

.gravure_slider_area .gravure_slider_img {
    width: 90%;
    height: calc( 100vh - 80px );
    margin: 0 auto;
    position: relative;
}

.gravure_slider_area .gravure_slider_img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}


@media (min-width: 641px) {

    #gravure_modal_area .modal_close {
        height: 60px;
    }

    #gravure_modal_area .modal_close::after {
        position: absolute;
        top: 15px;
        right: 16px;
        font-size: 3.0rem;
        pointer-events: none;
    }
    
    .gravure_slider_area .slide-arrow.prev-arrow {
        left: 14px;
    }

    .gravure_slider_area .slide-arrow.next-arrow {
        right: 14px;
    }
    
    .gravure_slider_area .slick-dots li {
        font-size: 18px !important;
    }

    .gravure_slider_area .slick-dots li button:before {
        font-size: 18px !important;
        margin-top: 10px;
    }
    
    .gravure_slider_area ul li {
        margin: 0 auto;
        padding: 0 45px;
    }
    
    .gravure_slider_area .gravure_slider_img {
        width: 100%;
        height: calc( 100vh - 100px );
        max-width: 1500px;
    }
    
}

/*---------------------------------
 レビュー一覧（店舗共通）
---------------------------------*/
.review_list {
    width: 96%;
    margin: 20px auto;
    padding: 0;
}

.review_list li {
    width: 100%;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.8rem;
    line-height: 1.4;
}

.review_list li + li {
    margin: 40px 0 0;
}
.reviewlist_shop_area {
    display: flex;
    margin: 10px 0;
}

.reviewlist_shop_area .reviewlist_shop_img {
    width: 70px;
    margin: 0 10px 0 0;
}

.reviewlist_shop_area .reviewlist_shop_txt a {
    color: #ff78ff;
    display: block;
    text-align: left;
    font-weight: 700;
    padding: 3px 0 0;
}

.reviewlist_shop_area .reviewlist_shop_txt a span {
    /*color: #b4b4b5;*/
    color: #353535; /*202307*/
    font-size: 1.6rem;
    text-align: left;
    font-weight: 400;
}

.reviewlist_user_area {
    display: flex;
    margin: 10px 0;
    justify-content: flex-start;
    align-items: center;
    overflow: hidden;
}

.reviewlist_user_area .reviewlist_user_img {
    width: 60px;
    margin: 0 10px 0 0;
}

.reviewlist_user_area .reviewlist_user_img img {
    border-radius: 50%;
}

.reviewlist_user_txt {
    display: flex;
    flex-direction: column;
    text-align: left;
    width: calc( 100% - 180px );
    overflow: hidden;
    margin: 0 5px 0 0;
}

.reviewlist_user_txt .reviewlist_user_name {
    display: inline-block;
    padding: 0 0 0 3px;
    color: #00c8ff;
    font-size: 1.8rem;
    line-height: 1.2;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.reviewlist_user_txt .reviewlist_shop_name {
    display: inline-block;
    font-size: 1.8rem;
    line-height: 1.5;
}

.reviewlist_user_txt .reviewlist_shop_name a {
    color: #00c8ff;
}

.reviewlist_user_area .reviewlist_date {
    width: 105px;
    /*color: #b5b5b6;*/
    color: #353535; /*202307*/
    font-size: 1.1rem;
    margin: 0 0 0 auto;
}

.review_list pre {
    /*color: #b5b5b6;*/
    color: #000; /*202307*/
    margin: 0;
    padding: 0;
    text-align: left;
    line-height: 1.4;
    font-size: 1.6rem;
}

.reviewlist_user_txt a {
    color: #00c8ff;
}

.bg_dark .review_list pre {
    color: #fff;
}

.reviewlist_user_txt .review_point_area {
    width: 174px;
    height: 29px;
    position: relative;
}

.reviewlist_user_txt .review_point_area:before {
    content:"";
    position: absolute;
    top: 2px;
    left: 2px;
    width: 170px;
    height: 25px;
    background-color:#efefef;
    z-index:1;
}

.reviewlist_user_txt .review_point_area:after {
    content:"";
    position: absolute;
    top: 0px;
    left: 0px;
    width: 174px;
    height: 29px;
    background-image:url("../img/bg_star.png");
    background-repeat: no-repeat;
    background-size: 174px 29px;
    background-position: top center;
    z-index:3;
}

.bg_dark .reviewlist_user_txt .review_point_area:after {
    background-image:url("../img/bg_star_blk.png");
}

.reviewlist_user_txt .review_point {
    position: absolute;
    top: 2px;
    left: 3px;
    width: 0px;
    height: 25px;
    background-color:#f1c40f;
    z-index:2;
}

@media (min-width: 641px) {

    .review_list {
        margin: 40px auto;
    }
    
    .review_list li {
        font-size: 2.4rem;
    }

    .review_list li + li {
        margin: 50px 0 0;
    }
    .reviewlist_shop_area {
        margin: 15px 0;
    }

    .reviewlist_shop_area .reviewlist_shop_img {
        width: 120px;
        margin: 0 15px 0 0;
    }

    .reviewlist_shop_area .reviewlist_shop_txt a span {
        font-size: 1.8rem;
    }

    .reviewlist_user_area {
        margin: 15px 0;
    }

    .reviewlist_user_area .reviewlist_user_img {
        width: 70px;
        margin: 0 15px 0 0;
    }

    .reviewlist_user_txt {
        width: calc( 100% - 240px );
        margin: 0 10px 0 0;
    }

    .reviewlist_user_txt a {
        font-size: 1.8rem;
    }

    .reviewlist_user_area .reviewlist_date {
        width: 150px;
        font-size: 1.4rem;
    }

    .review_list pre {
        font-size: 1.8rem;
    }
    
}


/*---------------------------------
 サーチ　店舗一覧
---------------------------------*/

.shop_list {
    width: 98%;
    margin: 20px auto;
    padding: 0;
}

.shop_list li {
    width: 100%;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.6rem;
    line-height: 1.4;
}

.shop_list li + li {
    margin: 15px 0 0;
}

.shop_list li .shop_list_top_notice {
    color: #00d0af;
    padding: 0 0 3px 8px;
}

.shop_list li .shop_name {
    background: #ffe6ff;
    position: relative;
    margin: 0 0 15px;
    padding: 8px 110px 8px 8px;
}

.shop_list li .shop_name a {
    color: #ff00ff;
    font-weight: 700;
}

.shop_list li .shop_name span {
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
    width: 105px;
    text-align: center;
    margin: 0;
    padding: 2px 0;
    border: 1px solid #ff00ff;
    font-weight: 400;
    font-size: 1.1rem;
    color: #ff00ff;
    line-height: 1.2;
}

.shop_list li .shop_list_overview {
    display: flex;
    flex-wrap: wrap;
}

.shop_list li .shop_list_img {
    width: 170px;
    margin: 0 5px 0 0;
}

.shop_list li .shop_list_overview_txt {
    width: calc( 100% - 175px );
    /*color: #888;*/
    color: #000; /*202307*/
    font-size: 1.4rem;
    line-height: 1.6;
    font-weight: 500;
}

.shop_list li .shop_hours {
    display: inline-block;
    padding: 0 0 0 15px;
    background-image:url("../img/icon_clock.svg");
    background-repeat: no-repeat;
    background-size: 12px 12px;
    background-position: left center;
}

.shop_list li .shop_costumes {
    display: inline-block;
    padding: 0 0 0 15px;
    background-image:url("../img/icon_costume.svg");
    background-repeat: no-repeat;
    background-size: 10px 15px;
    background-position: left 1px center;
}

.shop_list li .shop_access {
    display: inline-block;
    padding: 0 0 0 16px;
    background-image:url("../img/icon_access.svg");
    background-repeat: no-repeat;
    background-size: 12px 13px;
    background-position: left top 6px;
}

.shop_list li .shop_open {
    display: inline-block;
    color: #ffff00;
    background: #ff00ff;
    font-weight: 700;
    margin: 10px 0 0;
    padding: 2px 8px;
    overflow: hidden;
    position: relative;
}

.shop_list li .shop_open::before {
    content: '';
    position: absolute;
    top: 0;
    left: -75%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.8) 100%);
    transform: skewX(-25deg);
    animation: flash-anim 4s infinite;
}

@keyframes flash-anim {
    0% {
        left: -75%;
        opacity: 1;
    }
    50% {
        left: 125%;
        opacity: 1;
    }
    50% {
        left: 125%;
        opacity: 0;
    }
    100% {
        left: -75%;
        opacity: 0;
    }
}

.btn_like_area input[type="checkbox"], .btn_favorite_area input[type="checkbox"] {
    display: none;
}

.btn_like_area input[type="checkbox"] + label {
    position: relative;
    cursor: pointer;
    display: inline-block;
    width: 46px;
    height: 32px;
    line-height: 32px;
    margin: 0;
}

.btn_like_area input[type="checkbox"] + label:before{
    content: '';
    display: inline-block;
    background-image:url("../img/btn_like_balloon.svg");
    background-repeat: no-repeat;
    background-size: 46px 32px;
    background-position: center center;
    width: 46px;
    height: 32px;
    position: absolute;
    top: 0px;
    left: 0;
    background-color: inherit;
    border: none;
}

.btn_like_area input[type="checkbox"]:checked + label:after{
    content: '';
    display: inline-block;
    background-image:url("../img/btn_like_balloon_on.svg");
    background-repeat: no-repeat;
    background-size: 46px 32px;
    background-position: center center;
    width: 46px;
    height: 32px;
    position: absolute;
    top: 0px;
    left: 0px;
    transform: none;
    border-right: none;
    border-bottom: none;
}

.btn_favorite_area input[type="checkbox"] + label {
    position: relative;
    cursor: pointer;
    display: inline-block;
    width: 51px;
    height: 33px;
}

.btn_favorite_area input[type="checkbox"] + label:before{
    content: '';
    display: inline-block;
    background-image:url("../img/btn_favorite_right.svg");
    background-repeat: no-repeat;
    background-size: 51px 33px;
    background-position: center center;
    width: 51px;
    height: 33px;
    position: absolute;
    top: 0px;
    right: 0px;
    background-color: inherit;
    border: none;
}

.btn_favorite_area input[type="checkbox"]:checked + label:after{
    content: '';
    display: inline-block;
    background-image:url("../img/btn_favorite_right_on.svg");
    background-repeat: no-repeat;
    background-size: 51px 33px;
    background-position: center center;
    width: 51px;
    height: 33px;
    position: absolute;
    top: 0px;
    right: 0px;
    transform: none;
    border-right: none;
    border-bottom: none;
    left: inherit;
}

.shop_drink_service_list {
    width: 100%;
    height: 50px;
    background: #c9bc9c;
    border-radius: 10px;
    padding: 0 5px 5px 60px;
    margin: 10px 0 0;
    background-image:url("../img/icon_bottomless.svg");
    background-repeat: no-repeat;
    background-size: 50px 50px;
    background-position: left 3px center;
    position: relative;
}

.shop_drink_service_list ul {
    display: none;
    flex-wrap: wrap;
    width: 100%;
    padding: 0;
}

.shop_drink_service_list ul.correct_slide {
    padding: 0 18px;
}

.shop_drink_service_list ul.slick-initialized, .shop_service_list ul.slick-initialized {
    display: flex;
}

.shop_drink_service_list .slick-list, .shop_service_list .slick-list {
    width: 100%;
}

.shop_drink_service_list .slick-track, .shop_service_list .slick-track {
    margin-left: 0;
}

.shop_drink_service_list ul li {
    display: inline-block;
    height: 100%;
    margin: 5px 5px 0 0;
    background: #efefef;
    border-radius: 6px;
    text-align: center;
    position: relative;
    /*color: #b5b5b6;*/
    color: #000; /*202307*/
    max-width: 40px;
}

.shop_service_list {
    width: 100%;
    min-height: 48px;
    margin: 0 0 8px;
    padding: 0;
    position: relative;
}

.shop_service_list ul {
    display: none;
    flex-wrap: wrap;
    width: 100%;
    padding: 0;
}

.shop_service_list ul.correct_slide {
    padding: 0 18px;
}

.shop_service_list ul li {
    display: inline-block;
    height: 100%;
    margin: 5px 5px 0 0;
    background: #efefef;
    border-radius: 6px;
    text-align: center;
    position: relative;
    color: #595757;
}

.shop_drink_service_list .slide-arrow, .shop_service_list .slide-arrow {
    width: 14px;
    height: 14px;
    position: absolute;
    z-index:2;
    cursor: pointer;
}

.shop_drink_service_list .slide-arrow img, .shop_service_list .slide-arrow img {
    width: 17px;
}

.shop_drink_service_list .slide-arrow.prev-arrow {
    left: 0px;
    top: 20px;
    transform: scale(-1, 1);
}

.shop_service_list .slide-arrow.prev-arrow {
    left: 0px;
    top: 20px;
}

.shop_drink_service_list .slide-arrow.next-arrow {
    right: 0px;
    top: 20px;
}

.shop_service_list .slide-arrow.next-arrow {
    right: 0px;
    top: 20px;
    transform: scale(-1, 1);
}

.shop_drink_service_list .slide-arrow.slick-disabled, .shop_service_list .slide-arrow.slick-disabled {
    opacity: 0;
}
 
.shop_drink_service_list .slide-arrow.slick-disabled:before, .shop_service_list .slide-arrow.slick-disabled:before {
    opacity: 0;
}




.shop_list .shop_list_pr_area {
    display: block;
}

.read_more_wrap {
    display: block;
    height: 56px;
    overflow-y: hidden;
    margin: 0;
    line-height: 2.2em;
    line-height: 1.4em;
    font-size: 1.4rem;
    /*color: #b5b5b6;*/
    color: #000; /*202307*/
    font-weight: 400;
}

.btn_read_more {
    position: relative;
    width: 165px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    border-radius: 5px;
    font-size: 1.3rem;
    margin: 10px auto 0;
    padding: 0 5px 0 0;
    color: #fff;
    cursor: pointer;
    background-image: url("../img/arrow_double_w.svg");
    background-repeat: no-repeat;
    background-size: 13px 13px;
    background-position: right 8px center;
    background-color: #c9caca;
}

.shop_list .shop_list_coupon_area {
    border: 3px solid #9fa0a0;
    width: 96%;
    margin: 16px auto 0;
    padding: 6px;
}

.shop_list .shop_list_coupon_area.border_green {
    border: 3px solid #9cf1b3;
}

.shop_list .shop_list_coupon_area.border_pink {
    border: 3px solid #ff78ff;
}

.shop_list .shop_list_coupon_area .shop_list_coupon_title {
    height: 22px;
    line-height: 22px;
    background-image: url("../img/icon_coupon.svg");
    background-repeat: no-repeat;
    background-size: 65px 22px;
    background-position: left center;
    padding: 0 0 0 70px;
    color: #898989;
    font-weight: 700;
    font-size: 1.4rem;
}

.shop_list .shop_list_coupon_area.border_green .shop_list_coupon_title {
    color: #9cf1b3;
}

.shop_list .shop_list_coupon_area.border_pink .shop_list_coupon_title {
    color: #ff78ff;
}

.shop_list .shop_list_coupon_area .shop_coupon_title_area {
    display: block;
    margin: 0 0 6px;
    padding: 2px 5px;
    background: #fff2ff;
    color: #dd002a;
    font-size: 1.6rem;
    font-weight: 600;
}

.shop_list .shop_list_coupon_area p {
    margin: 8px 0 0;
    padding: 0;
    color: #898989;
    border: 1px solid #dcdddd;
    padding: 5px;
    font-size: 1.4rem;
}





.shop_list .clear_accounting_title {
    width: 100%;
    margin: 15px auto 10px;
    padding: 5px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    color: #ffff00;
    background: #fe0000;
    text-align: center;
}

.shop_list .clear_accounting_title .inner {
    border: 1px solid #fff;
    padding: 5px;
}

.shop_list .shop_list_clear_accounting_list {
    width: 100%;
    margin: 0 auto 30px;
    padding: 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
}

.shop_list .shop_list_clear_accounting_list li+li {
    margin: 20px 0 0;
}

.shop_list .shop_list_clear_accounting_list .clear_accounting_amount {
    display: block;
    color: #00d0af;
    font-family: 'Poppins', sans-serif;
    font-size: 5.5rem;
    font-weight: 700;
    height: 70px;
    line-height: 70px;
    padding: 0 0 0 70px;
    background-image:url("../img/icon_hot.svg");
    background-repeat: no-repeat;
    background-size: 56px 70px;
    background-position: left center;
    position: relative;
}

.shop_list .shop_list_clear_accounting_list .clear_accounting_amount:after {
    content: '';
    display: inline-block;
    background-image:url("../img/icon_clearly.svg");
    background-repeat: no-repeat;
    background-size: 75px 70px;
    background-position: center center;
    width: 75px;
    height: 70px;
    position: absolute;
    top: 0px;
    right: 0px;
}

.shop_list .shop_list_clear_accounting_list .clear_accounting_amount span {
    display: inline-block;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 3.5rem;
    margin: 0 0 0 8px;
    font-weight: 900;
}

.shop_list .shop_list_clear_accounting_list .clear_accounting_detail {
    background: #b5b5b6;
    margin: 8px 0 0;
    padding: 8px;
    width: 100%;
    display: block;
}

.shop_list .shop_list_clear_accounting_list .clear_accounting_detail .inner {
    background: #fff;
    padding: 10px;
    border-radius: 10px;
    text-align: center;
    /*color: #b5b5b6;
    color: #000;
    font-size: 1.4rem;
    font-weight: 500;*/
    color: #00d0af; /*202307*/
    font-size: 1.6rem; /*202307*/
    font-weight: 700; /*202307*/
}

.shop_list .shop_list_clear_accounting_list .clear_accounting_detail .inner pre {
    margin: 5px 0 0;
    padding: 0;
    /*color: #00d0af;
    font-size: 1.6rem;
    font-weight: 700;*/
    color: #000; /*202307*/
    font-size: 1.4rem; /*202307*/
    font-weight: 500; /*202307*/
}

@media (min-width: 641px) {

    .shop_list .clear_accounting_title {
        margin: 20px auto 15px;
        font-size: 2.0rem;
        max-width: 700px;
    }
    
    .shop_list .shop_list_clear_accounting_list {
        max-width: 700px;
    }
    
    .shop_list .shop_list_clear_accounting_list li {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    
    .shop_list .shop_list_clear_accounting_list .clear_accounting_overview {
        width: 50%;
        display: flex;
        align-items: center;
    }
    
    .shop_list .shop_list_clear_accounting_list .clear_accounting_txt {
        width: 100%;
    }

    .shop_list .shop_list_clear_accounting_list .clear_accounting_amount {
        font-size: 5.5rem;
        height: 75px;
        line-height: 75px;
        padding: 0 0 0 70px;
        background-image:url("../img/icon_hot.svg");
        background-repeat: no-repeat;
        background-size: 59px 75px;
        background-position: left center;
    }
    
    .shop_list .shop_list_clear_accounting_list .clear_accounting_amount:after {
        background-size: 90px 89px;
        width: 90px;
        height: 89px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
    }

    .shop_list .shop_list_clear_accounting_list .clear_accounting_amount span {
        display: inline-block;
        font-family: 'Noto Sans JP', sans-serif;
        font-size: 3.0rem;
        margin: 0 0 0 5px;
    }

    .shop_list .shop_list_clear_accounting_list .clear_accounting_detail {
        width: 49%;
        margin: 0px 0 0;
    }

    .shop_list .shop_list_clear_accounting_list .clear_accounting_detail .inner {
        padding: 12px;
        /*font-size: 1.6rem;*/
        font-size: 2.0rem; /* 202307 */
    }

    .shop_list .shop_list_clear_accounting_list .clear_accounting_detail .inner pre {
        margin: 8px 0 0;
        /*font-size: 2.0rem;*/
        font-size: 1.6rem; /* 202307 */
    }
    
}





@media (min-width: 641px) {
    
    .shop_list li + li {
        margin: 30px 0 0;
    }
    
    .shop_list li .shop_name span {
        right: 8px;
        width: 160px;
        padding: 5px 0;
        font-size: 1.2rem;
    }
    
    .shop_list li .shop_list_img {
        width: 300px;
        margin: 0 15px 0 0;
    }

    .shop_list li .shop_list_overview_txt {
        width: calc( 100% - 315px );
        font-size: 1.6rem;
    }
    
    .shop_list li .shop_hours {
        padding: 0 0 0 18px;
        background-size: 14px 14px;
    }
    
    .shop_list li .shop_costumes {
        padding: 0 0 0 18px;
        background-size: 12px 18px;
    }
    
    .shop_list li .shop_access {
        padding: 0 0 0 19px;
        background-size: 14px 15px;
        background-position: left top 7px;
    }

    .shop_list li .shop_open {
        padding: 2px 12px;
        font-size: 1.8rem;
    }
    
    .btn_like_area input[type="checkbox"] + label {
        width: 58px;
        height: 40px;
        line-height: 40px;
    }

    .btn_like_area input[type="checkbox"] + label:before{
        background-size: 58px 40px;
        width: 58px;
        height: 40px;
    }

    .btn_like_area input[type="checkbox"]:checked + label:after{
        background-size: 58px 40px;
        width: 58px;
        height: 40px;
    }
    
    .btn_favorite_area input[type="checkbox"] + label {
        width: 70px;
        height: 45px;
    }

    .btn_favorite_area input[type="checkbox"] + label:before{
        background-size: 58px 50px;
        width: 70px;
        height: 45px;
    }

    .btn_favorite_area input[type="checkbox"]:checked + label:after{
        background-size: 58px 50px;
        width: 70px;
        height: 45px;
    }
    
    .shop_drink_service_list {
        height: 62px;
        padding: 0 5px 5px 66px;
        margin: 20px 0 0;
        background-size: 60px 60px;
    }

    .shop_drink_service_list ul li {
        max-width: 51px;
        margin: 6px 5px 0 0;
    }
    
    .shop_list .shop_drink_service_list ul li {
        max-width: 46px;
    }
    
    .shop_list_overview .shop_drink_service_list ul li {
        margin: 8px 5px 0 0;
    }

    .shop_drink_service_list .slide-arrow.prev-arrow {
        top: 23px;
    }

    .shop_service_list .slide-arrow.prev-arrow {
        top: 20px;
    }

    .shop_drink_service_list .slide-arrow.next-arrow {
        top: 23px;
    }

    .shop_service_list .slide-arrow.next-arrow {
        top: 20px;
    }


    .shop_service_list {
        margin: 12px 0;
    }

    .shop_service_list ul li {
        margin: 0 5px 0 0;
    }
    
    .shop_list .shop_service_list ul li {
        max-width: 54px;
    }
    
    .read_more_wrap {
        height: 74px;
        line-height: 1.6em;
        font-size: 1.6rem;
    }

    .btn_read_more {
        width: 280px;
        height: 44px;
        line-height: 44px;
        font-size: 1.6rem;
        margin: 15px auto 0;
        padding: 0 5px 0 0;
        background-size: 18px 18px;
        background-position: right 30px center;
    }

    .shop_list .shop_list_coupon_area {
        max-width: 580px;
        margin: 20px auto 0;
        padding: 10px;
    }

    .shop_list .shop_list_coupon_area .shop_list_coupon_title {
        height: 33px;
        line-height: 33px;
        background-size: 118px 33px;
        padding: 0 0 0 125px;
        font-size: 1.5rem;
    }

    .shop_list .shop_list_coupon_area p {
        margin: 15px 0 0;
        padding: 10px;
        font-size: 1.6rem;
    }
}


/*---------------------------------
 サーチ　店舗検索条件
---------------------------------*/

.search_condition_cat {
    margin: 12px 0;
    padding: 8px 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.8rem;
    background: #727171;
    color: #ffff78;
    text-align: center;
}

.search_condition_list  {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.search_condition_list li {
    margin: 3px 0 0;
    padding: 0;
    width: 50%;
    text-align: left;
}
.search_condition_list li a {
    /*color: #dcdddd;*/
    color: #a5a5a5; /*202307*/
}

.search_condition_list input[type="checkbox"] {
    display: none;
}

.search_condition_list input[type="checkbox"] + label {
    position:relative;
    padding-left: 30px;
    font-size: 1.6rem;
    line-height: 1.8;
    font-weight: 700;
    /*color: #dcdddd;*/
    color: #a5a5a5; /*202307*/
}

.search_condition_list input[type="checkbox"] + label a.-fs_14 {
    font-size: 1.4rem;
}

.search_condition_list input[type="checkbox"] + label:before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 26px;
    height: 26px;
    background: #efefef;
    border-radius: 2px;
}

.search_condition_list input[type="checkbox"]:checked + label, .search_condition_list input[type="checkbox"]:checked + label a {
    color: #000000;
    text-decoration: underline;
}

.search_condition_list input[type="checkbox"]:checked + label:after{
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 8px;
    width: 11px;
    height: 19px;
    transform: rotate(40deg);
    border-right: 3px solid #000000;
    border-bottom: 3px solid #000000;
}

.search_condition_select {
    overflow: hidden;
    display: inline-block;
    margin: 0;
    position: relative;
    background: #fff;
}

.search_condition_select select::-ms-expand {
    display: none;
}

.search_condition_select select {
    font-size: 1.4rem;
    font-weight: 400;
    margin: 0;
    padding: 8px 22px 8px 10px;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: 1px solid #b4b4b5;
    border-radius: 3px;
    outline: none;
    background: #efefef;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    font-family: 'BIZ UDPGothic', sans-serif;
    letter-spacing: .5px;
}

.search_condition_select::before {
    position: absolute;
    top: 12px;
    right: 8px;
    content: "\f078";
    font-family: "Font Awesome 5 Free";
    color: #888;
    font-weight: 900;
    font-size: 1.1rem;
    pointer-events: none;
}


.shop_search_area .free_word_candidate_area, .shop_search_area .area_and_station_candidate_area {
    text-align: left;
    display: none;
}

.shop_search_area .free_word_candidate_area .free_word_candidate_title, .shop_search_area .area_and_station_candidate_area .area_and_station_candidate_title {
    font-family: 'Noto Sans JP' ,sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    text-align: center;
    margin: 0 0 4px;

}

.shop_search_area .free_word_candidate_area .free_word_candidate_title i, .shop_search_area .area_and_station_candidate_area .area_and_station_candidate_title i {
    color: #00d4ac;
    margin: 0 3px 0 0;
}

.shop_search_area #search_free_word_candidate p, .shop_search_area #search_free_word_candidate a, .shop_search_area #sp_area_and_station_candidate a {
    display: inline-block;
    height: 30px;
    line-height: 30px;
    margin: 8px 8px 0 0;
    background: #f5f5f5;
    border-radius: 4px;
    font-size: 1.4rem;
    font-weight: 400;
    color:#00d0af;
    transition: background .3s;
    position: relative;
    padding: 0 18px 0 8px;
}

.shop_search_area #search_free_word_candidate a::after, .shop_search_area #sp_area_and_station_candidate a::after {
    position: absolute;
    top: 0px;
    right: 5px;
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    color: #888;
    font-weight: 900;
    font-size: 1.4rem;
    pointer-events: none;
}

.shop_search_area #search_free_word_candidate a:hover, .shop_search_area #sp_area_and_station_candidate a:hover {
    background: #e8e8e8;
}

@media (min-width: 641px) {

    .search_condition_cat {
        margin: 20px 0;
        padding: 10px 0;
    }

    .search_condition_list li {
        margin: 5px 0 0;
        padding: 0;
        width: 32%;
    }

    .search_condition_list input[type="checkbox"] + label {
        font-size: 2.0rem;
    }
    
    .search_condition_list input[type="checkbox"] + label a.-fs_14 {
        font-size: 1.8rem;
    }
    
    .search_condition_select select {
        font-size: 2.0rem;
    }

    .shop_search_area .free_word_candidate_area .free_word_candidate_title {
        font-size: 1.8rem;
        margin: 0 0 4px;

    }

    .shop_search_area .free_word_candidate_area .free_word_candidate_title i {
        margin: 0 5px 0 0;
    }

    .shop_search_area #search_free_word_candidate p, .shop_search_area #search_free_word_candidate a {
        height: 36px;
        line-height: 36px;
        margin: 12px 12px 0 0;
        padding: 0 20px 0 12px;
        font-size: 1.6rem;
    }

}



/*---------------------------------
 一般会員詳細ページ
---------------------------------*/
.member_detail_area {
    
}

.member_detail_img {
    width: 70%;
    margin: 0 auto;
}

.member_detail_txt_list {
    width: 70%;
    margin: 15px auto 0;
    padding: 0;
}

.member_detail_txt_list dt {
    width: 100%;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    margin: 0;
    padding: 0;
    position: relative;
    line-height: 1.4;
    /*color: #000;*/
    color: #353535; /*202307*/
}

.member_detail_txt_list dd {
    width: 100%;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    /*color: #898989;*/
    color: #000; /*202307*/
    margin: 0;
    padding: 4px 0 10px;
    position: relative;
    line-height: 1.4;
}

.member_detail_txt_list img {
    margin: 15px 0;
}

.member_detail_txt_list pre {
    margin: 5px 0 0;
}

@media (min-width: 641px) {

    .member_detail_area {
        display: flex;
    }
    
    .member_detail_img {
        width: 215px;
    }

    .member_detail_txt_list {
        width: 100%;
        margin: 0px auto 0;
    }
    
    .member_detail_txt {
        width: calc( 100% - 215px );
        margin: 0;
        padding: 0 0 0 20px;
    }
}

/*---------------------------------
 会員ページ TOP
---------------------------------*/

.member_page_sub_title {
    margin: 30px 0 15px;
    padding: 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 1.8rem;
    text-align: center;
    position: relative;
}

.member_page_user_img {
    width: 130px;
    margin: 0 auto;
}

.btn_member_page {
    max-width: 80px;
    height: 24px;
    line-height: 22px;
    border-radius: 3px;
    font-size: 1.3rem;
    position: absolute;
    right: 0;
    top: 0;
}

.member_page_txt_list {
    width: 100%;
}

.member_page_txt_list.btn_right {
    padding: 0 0px 0 0;
}

.member_page_txt_list.btn_right li + li {
    margin: 15px 0 0;
}

.member_page_txt_list.btn_right .inner {
    width: calc( 100% - 85px );
}

.member_page_txt_list li {
    width: 100%;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    /*color: #898989;*/
    color: #353535; /*202307*/
    padding: 3px 0;
    position: relative;
    line-height: 1.4;
}

.member_page_txt_list img {
    margin: 15px 0;
}

.member_page_txt_list pre {
    margin: 5px 0 0;
}

.member_page_txt_list a:not(.btn) {
    /*color: #898989 !important;*/
    color: #000 !important; /*202307*/
}

.member_page_txt_list .review_text {
    overflow: hidden;
    white-space: nowrap;
    width: 100%;
    text-overflow: ellipsis;
    margin: 5px 0 0;
}

.push_like_users_area {
    background: #f7f8f8;
    margin: 15px 0 0;
    padding: 14px 10px;
    border-radius: 6px;
    text-align: center;
    color: #000;
    font-size: 1.6rem;
}

.push_like_users {
    margin: 5px 0 0;
    text-align: left;
}

.push_like_users a {
    display: inline-block;
    color: #9fa0a0;
    font-size: 1.4rem;
    text-decoration: underline;
    word-break: keep-all;
    margin: 6px 0 0 10px;
    line-height: 1.6;
}

hr.border_non_push_like_users {
    height: 1px;
    background-color: #e5e5e5;
    border: none;
    margin: 20px 0 0;
}

.member_page_txt_list li:last-child hr.border_non_push_like_users {
    height: 0px;
    margin: 0;
}

/* お気に入り女の子 スライダー部分 */

.girl_slider_list {
    margin: 0;
    padding: 0 0 8px;
    overflow-x: scroll;
    overflow-scrolling: touch;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
}

.girl_slider_list li {
    display: inline-block;
    width: 105px;
    margin: 0;
    padding: 0;
    text-align: center;
}

.girl_slider_list li img {
    border-radius: 50%;
}

.girl_slider_list li + li {
    margin: 0 0 0 20px;
}

.girl_slider_list li a {
    display: flex;
    flex-direction: column;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    color: #ff78ff;
    font-size: 1.2rem;
}

.girl_slider_list li .girl_name {
    color: #ff78ff;
    font-size: 1.2rem;
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
    width: 100%;
    text-overflow: ellipsis;
    margin: 4px 0 3px;
}

.girl_slider_list li .shop_area_txt {
    display: block;
    /*color: #b4b4b5;*/
    color: #353535; /*202307*/
    font-size: 1.1rem;
    margin: 3px 0;
    text-align: left;
}
@media (min-width: 641px) {

    .member_page_sub_title {
        margin: 50px 0 30px;
        font-size: 2.2rem;
    }
    
    .member_page_user_img {
        width: 215px;
    }

    .btn_member_page {
        max-width: 120px;
        height: 36px;
        line-height: 34px;
        border-radius: 7px;
        font-size: 1.8rem;
    }
    
    .member_page_txt_list {
        max-width: 630px;
        margin: 0 auto;
    }

    .member_page_txt_list.btn_right li + li {
        margin: 20px 0 0;
    }

    .member_page_txt_list.btn_right .inner {
        width: calc( 100% - 135px );
    }

    .member_page_txt_list li {
        font-size: 1.8rem;
        padding: 4px 0;
    }

    .member_page_txt_list img {
        max-width: 500px;
        margin: 20px 0;
    }
    
    .girl_slider_list li {
        width: 134px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .girl_slider_list li + li {
        margin: 0 0 0 20px;
    }

    .girl_slider_list li a {
        font-size: 1.4rem;
    }
    
    .girl_slider_list li .girl_name {
        font-size: 1.4rem;
    }

    .girl_slider_list li .shop_area_txt {
        font-size: 1.2rem;
    }
}


.map_area {
    width: 100%;
    height: 500px;
    position: relative;
}

.map_canvas {
    width: 100%;
    height: 500px;
}

.map_area .search_btn {
    position: absolute;
    top: 10px;
    right: 10px;
    display: inline-block;
    width: 150px;
    height: 36px;
    line-height: 34px;
    text-align: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border-radius: 5px;
    background: #00d0af;
    color: #fff;
    border: none;
    cursor: pointer;
    white-space: nowrap;
    font-family: 'Noto Sans JP' ,sans-serif;
    font-size: 1.6rem;
    letter-spacing: 1px;
    font-weight: 500;
    margin: 0;
    padding: 0;
    color: #ffff78;
}

.map_area .search_wrapper {
    display: none;
    position: absolute;
    top: 10px;
    right: 10px;
    background: #00d0af;
    border-radius: 5px;
    width: calc( 100% - 20px );
    font-family: 'Noto Sans JP' ,sans-serif;
    padding: 15px;
}

.map_area .search_wrapper.active {
    display: block;
    animation: map_show .6s cubic-bezier(0.77, 0, 0.175, 1) forwards;
}

.map_area .search_area_close:after {
    content: 'ー';
    display: block;
    color: #fff;
    text-align: right;
    font-size: 2.0rem;
    font-weight: 900;
    padding: 0 0 10px;
    cursor: pointer;
}

.map_area .search_area .search_area_title {
    background: #fff;
    font-size: 1.8rem;
    color: #00d0af;
    text-align: center;
    padding: 5px 0;
}

.map_area .search_area .-flex_between {
    padding: 5px 0;
    border: 1px solid #fff;
}

.map_area .search_area .w_half {
    width: 50%;
    text-align: center;
}

.map_area .search_area .w_one_third {
    width: 33%;
    text-align: center;
}

.map_area .search_area input[type="checkbox"] {
    display: none;
}

.map_area .search_area input[type="checkbox"] + label {
    position:relative;
    padding-left: 35px;
    font-size: 1.8rem;
    line-height: 1.8;
    font-weight: 700;
    color: #dcdddd;
}

.map_area .search_area input[type="checkbox"] + label:before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 26px;
    height: 26px;
    background: #efefef;
    border-radius: 2px;
}

.map_area .search_area input[type="checkbox"]:checked + label {
    color: #ffff79;
}

.map_area .search_area input[type="checkbox"]:checked + label:after{
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 8px;
    width: 11px;
    height: 19px;
    transform: rotate(40deg);
    border-right: 3px solid #00d0b0;
    border-bottom: 3px solid #00d0b0;
}

.map_area .map_info_window {
    width: 90%;
    margin: 0 auto;
    padding: 10px;
    border: 1px solid #b4b4b5;
    background: #fff;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 15px;
    font-family: 'Noto Sans JP', sans-serif;
    color: #484848;
    display: none;
}

.map_area .map_info_window.active {
    display: block;
    animation: map_show .6s cubic-bezier(0.77, 0, 0.175, 1) forwards;
}

@keyframes map_show {
    0%{
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}

.map_info_window img {
    width: 100px;
    height: auto;
}

.map_info_window p {
    width: calc( 100% - 115px );
    margin: 0 0 0 15px;
    padding: 0;
    color: #ff78ff;
    font-size: 1.6rem;
    font-weight: 500;
}


.map_info_window p .shop_area_txt {
    display: block;
    /*color: #b4b4b5;*/
    color: #353535; /*202307*/
    font-size: 1.4rem;
    margin: 0 0 5px;
    font-weight: 400;
}

.map_info_window .btn_gray {
    margin: 15px auto 0;
    max-width: 100%;
    height: 26px;
    line-height: 24px;
}

@media (min-width: 641px) {
    .map_area {
        height: 1050px;
        margin: 0 0 0 20px;
    }
    
    .map_canvas {
        height: 1050px;
    }

    .map_area .map_info_window {
        width: 90%;
        max-width: 600px;
        padding: 20px;
        bottom: 20px;
    }

    .map_info_window img {
        width: 150px;
        height: auto;
    }

    .map_info_window p {
        width: calc( 100% - 165px );
        margin: 0 0 0 15px;
        font-size: 2.0rem;
    }


    .map_info_window p .shop_area_txt {
        font-size: 1.6rem;
        margin: 0 0 5px;
    }

    .map_info_window .btn_gray {
        margin: 20px auto 0;
        max-width: 100%;
        height: 30px;
        line-height: 28px;
    }
}


/*---------------------------------
 キャスト girlsmember
---------------------------------*/
.cast_main_img {
    width: 80%;
    height: 300px;
    margin: 15px auto;
    text-align: center;
    display: flex;
    justify-content: center;
}

.cast_main_img img {
    width: auto;
    height: 100%;
    object-fit: cover;
}

.cast_thumb_img_area {
    display: block;
    margin: 0;
    padding: 0 0 10px 0;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    white-space: nowrap;
}

.cast_thumb_img_area li {
    display: inline-block;
    width: 32%;
}

.cast_thumb_img_area li + li {
    margin: 0 0 0 5px;
}


.cast_profile_list {
    width: 94%;
    margin: 0 auto 30px;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.6rem;
    display: flex;
    flex-wrap: wrap;
}

.cast_profile_list dt {
    width: 100px;
    margin: 0;
    padding: 8px 0 8px 8px;
    border-bottom: 2px solid #ffd2ff;
    vertical-align: top;
    /*color: #898989;*/
    color: #000; /*202307*/
    line-height: 1.5;
    text-align: left;
}

.cast_profile_list dd {
    width: calc( 100% - 105px );
    margin: 0;
    padding: 8px 0;
    border-bottom: 2px solid #ffd2ff;
    vertical-align: top;
    line-height: 1.5;
    /*color: #898989;*/
    color: #000; /*202307*/
    text-align: left;
}

.cast_shop_name {
    padding: 10px 2%;
    font-size: 1.8rem;
    text-align: center;
}

.cast_shop_name a {
    color: #00c8ff;
    font-weight: 700;
    font-size: 2.0rem;
}

.sns_link_list {
    width: 94%;
    margin: 0 auto 30px;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.6rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.sns_link_list dt {
    width: calc( 100% - 175px );
    margin: 0;
    padding: 10px 0 8px 8px;
    vertical-align: top;
    color: #000;
    line-height: 1.5;
    text-align: left;
    font-size: 1.8rem;
}

.sns_link_list dd {
    width: 170px;
    margin: 0;
    padding: 8px 0;
    display: flex;
}

.sns_link_list img {
    width: 24px;
    height: auto;
    margin: 0 5px 0 0;
}

.sns_link_list .btn {
    width: calc( 100% - 36px );
    height: 36px;
    line-height: 34px;
    background: #e9e9e9;
    color: #727171;
    font-size: 1.5rem;
}

.sns_link_list .btn.btn_on {
    background: #c9bc9c;
    color: #ffff78;
}

.sns_link_list p {
    margin: 0;
    padding: 0;
}

.sns_link_list .edit_btn {
    display:block;
    width: 36px;
    height: 36px;
    line-height: 1.2;
    background: #c9bc9c;
    color: #ffff78;
    font-size: 1.1rem;
    border-radius: 5px;
    text-align: center;
    margin: 0 0 0 10px;
    padding: 4px 0 0;
}

.sns_link_list .edit_btn i {
    font-size: 1.5rem;
}

@media (min-width: 641px) {

    .cast_main_img {
        width: auto;
        height: 340px;
        margin: 25px auto 0px;
    }

    .cast_thumb_img_area li + li {
        margin: 0 0 0 0px;
    }    

    .cast_thumb_img_area {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        padding: 15px 0 0 0;
        overflow-x: hidden;
        overflow-y: hidden;
        white-space: normal;
    }

    .cast_thumb_img_area li {
        width: 19%;
    }

    .cast_thumb_img_area li + li {
        margin: 0 0 0 0px;
    }

    .cast_thumb_img_area li:nth-child(n + 6) {
        margin: 10px 0 0 0;
    }
    
    .cast_thumb_img_area::after{
        content:"";
        display: block;
        width: 32%;
    }


    .cast_profile_list {
        max-width: 610px;
        margin: 0 auto 30px;
        font-size: 1.8rem;
    }

    .cast_profile_list dt {
        width: 110px;
        padding: 12px 0;
    }

    .cast_profile_list dd {
        width: calc( 100% - 115px );
        padding: 12px 0;
    }

    .cast_shop_name {
        padding: 10px 2%;
        font-size: 2.0rem;
    }

    .cast_shop_name a {
        font-size: 2.5rem;
    }

    .sns_link_list {
        max-width: 610px;
    }

    .sns_link_list dt {
        width: calc( 100% - 275px );
        font-size: 2.6rem;
    }

    .sns_link_list dd {
        width: 250px;
    }

    .sns_link_list img {
        width: 30px;
        margin: 0 8px 0 0;
    }

    .sns_link_list .btn {
        width: calc( 100% - 40px );
        height: 40px;
        line-height: 38px;
        font-size: 1.6rem;
    }

    .sns_link_list .edit_btn {
        width: 40px;
        height: 40px;
        line-height: 1.2;
        font-size: 1.2rem;
        border-radius: 10px;
        margin: 0 0 0 8px;
        padding: 4px 0 0;
    }

    .sns_link_list .edit_btn i {
        font-size: 1.6rem;
    }

}


/*---------------------------------
 タイムライン Tab切り替え
---------------------------------*/

.tab_area_wrap {
    position: relative;
    margin: 0 auto;
}

.timeline_tab_wrap .sns_tab_area {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
}

.timeline_tab_wrap .sns_tab_area li {
    width: 14%;
    height: 38px;
    line-height: 1;
    font-family: 'BIZ UDPGothic', sans-serif;
    font-size: 1.3rem;
    letter-spacing: .5px;
    font-weight: 700;
    color: #fff;
    background-color: #e9e9e9;
    border-radius: 3px;
    position: relative;
    padding: 10px 0 0 0px;
    text-align: center;
    cursor: pointer;
}

.timeline_tab_wrap .sns_tab_area li::after {
    background-image:url("../img/icon_tab_sns_off.svg");
    background-repeat: no-repeat;
    background-size: 15px 15px;
    background-position: center center;
    content: '';
    display: inline-block;
    width: 23px;
    height: 23px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -10px;
}

.timeline_tab_wrap .sns_tab_area img {
    height: 22px;
}

.timeline_tab_wrap .sns_tab_area #num_1 img {
    height: auto;
    width: 20px;
}

.timeline_tab_wrap .sns_tab_area li::before {
    content: "";
    width: 1px;
    height: 32px;
    position: absolute;
    top: 0;
    left: 36px;
    border-right: none;
}

.timeline_tab_wrap .sns_tab_area li + li {
    margin: 0 0 0 5px;
}

.timeline_tab_wrap .sns_tab_area li.active {
    background-color: #c9bc9c;
}

.timeline_tab_wrap .sns_tab_area li.active::after {
    background-image:url("../img/icon_tab_sns_on.svg");
}

.timeline_tab_wrap .panel_area {
    padding: 20px 0 0;
}

.timeline_title {
    height: 35px;
    line-height: 33px;
    font-family: 'Noto Sans JP' ,sans-serif;
    font-weight: 500;
    font-size: 1.8rem;
    padding: 0;
    color: #fff;
    text-align: center;
    background: #ff78ff;
}

.timeline_title img {
    height: 28px;
    width: auto;
    margin: -2px 5px 0 0;
}

.timeline_tab_wrap #panel_num_1 .timeline_title {
    background: #1d9bf0;
}

.timeline_tab_wrap #panel_num_2 .timeline_title {
    background: rgb(255,193,40);
    background: linear-gradient(90deg, rgba(255,193,40,1) 0%, rgba(247,56,124,1) 50%, rgba(128,89,169,1) 100%);
}

.timeline_tab_wrap #panel_num_3 .timeline_title {
    background: #000;
}

.timeline_tab_wrap #panel_num_4 .timeline_title {
    background: #06c755;
}

.timeline_tab_wrap #panel_num_5 .timeline_title {
    background: #ff0000;
}

.timeline_tab_wrap #panel_num_6 .timeline_title {
    background: #1877f2;
}

.tab_wrap .panel_area .panel_contents_area {
    display: none;
    padding: 0;
}

.tab_wrap .panel_area .panel_contents_area.active {
    display: block;
}

.timeline_area {
    height: 400px;
    overflow-x: hidden;
    overflow-y: scroll;
    background: #fafafa;
    border: 1px solid #e9e9e9;
}

.timeline_area .spacer {
    padding: 0 8px;
}

.timeline_area.instagram_timeline_area {
    padding: 0 0 10px;
}

.timeline_area.instagram_timeline_area .instagram_timeline_list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
    padding: 0;
    width: 96%;
}

.timeline_area.instagram_timeline_area .instagram_timeline_list li {
    position: relative;
    width: 32%;
    border: 1px solid #e9e9e9;
    margin: 10px 0 0 2%;
    aspect-ratio: 1/1;
    cursor: pointer;
}

.timeline_area.instagram_timeline_area .instagram_timeline_list li:nth-child(2n) {
    margin: 10px 0 0 2%;
}

.timeline_area.instagram_timeline_area .instagram_timeline_list li:nth-child(3n + 1) {
    margin: 10px 0 0 0;
}

.timeline_area.instagram_timeline_area .instagram_timeline_list li .instagram_img_area {
    width: 100%;
    height: 100%;
}

.timeline_area.instagram_timeline_area .instagram_timeline_list li .instagram_img_area img{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    margin: auto;
    transform: translate(-50%,-50%);
    object-fit: cover;
}

.timeline_area.instagram_timeline_area .instagram_timeline_list li .instagram_hover_txt {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .8);
    width: 100%;
    height: 100%;
    color: #fff;
    text-align: center;
    padding: 15px;
    z-index: 2;
}

.timeline_area.instagram_timeline_area .instagram_timeline_list li .instagram_hover_txt p {
    margin: 0;
    padding: 0;
    line-height: 1.5;
    font-size: 1.4rem;
}

.timeline_area.instagram_timeline_area .instagram_timeline_list li .instagram_hover_txt p.post_datetime {
    font-size: 1.2rem;
    color: #7c7c7c;
    padding: 15px 0 0;
}

.timeline_area.instagram_timeline_area .instagram_timeline_list li .instagram_hover_txt .instagram_poster_area, .instagram_slider_area .instagram_poster_area {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 8px 0 0;
    font-size: 1.2rem;
    text-align: left;
}

.timeline_area.instagram_timeline_area .instagram_timeline_list li .instagram_hover_txt .instagram_poster_area img, .instagram_slider_area .instagram_poster_area img {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    margin: 0 8px 0 0;
}

.timeline_area.tiktok_timeline_area {
    padding: 0 0 10px;
}

.timeline_area.tiktok_timeline_area ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
    width: 96%;
}

.timeline_area.tiktok_timeline_area ul li {
    width: 49%;
    margin-top: 5px;
    border: 1px solid #e6e6e6;
    border-radius: 10px;
}

/*
.timeline_area.tiktok_timeline_area a {
    display: block;
}*/

.timeline_area.tiktok_timeline_area .tiktok_img_area {
    border-radius: 10px 10px 0 0;
    overflow: hidden;
    max-height: 230px;
}

.timeline_area.tiktok_timeline_area .tiktok_img_area img {
    border-radius: 10px 10px 0 0;
}

.timeline_area.tiktok_timeline_area .tiktok_txt_area {
    margin: 0;
    padding: 15px 15px 8px;
    background: #fff;
}

.timeline_area.tiktok_timeline_area .tiktok_txt_area p {
    font-weight: bold;
    font-size: 1.5rem;
    line-height: 1.5;
    margin: 0;
    padding: 0 0 5px;
}

.timeline_area.tiktok_timeline_area .tiktok_txt_area .tiktok_txt_date {
    /*color: #bdbdbd;*/
    color: #353535; /*202307*/
    font-size: 1.2rem;
    line-height: 1;
    font-weight: 400;
    padding: 0;
}

.timeline_area.tiktok_timeline_area .tiktok_poster_area {
    display: flex;
    align-items: center;
    padding: 0 15px 15px;
    font-size: 1.2rem;
    background: #fff;
    border-radius: 0 0 10px 10px;
}

.timeline_area.tiktok_timeline_area .tiktok_poster_area img {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    margin: 0 8px 0 0;
}

.timeline_area .line_timeline_inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 90%;
    margin: 15px auto 0;
}

.timeline_area .line_timeline_inner a.line_btn {
    display: block;
    background: #06c755;
    color: #fff;
    font-weight: bold;
    font-size: 1.6rem;
    text-align: center;
    border-radius: 5px;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 34px;
    line-height: 34px;
    border-radius: 17px;
}

.youtube_timeline_area {
    padding: 0 0 20px;
}

.youtube_timeline_area ul {
    width: 96%;
    margin: 15px auto 0;
}

.youtube_timeline_area ul li {
    padding: 0 0 10px;
}

.timeline_area .user_icon_area {
    display: flex;
    align-items: center;
    margin: 0 0 8px;
}

.timeline_area .user_icon img {
    width: 80px;
    border-radius: 50%;
    margin-right: 8px;
}

.youtube_timeline_area ul li .user_icon img {
    width: 50px !important;
}

.timeline_area .user_txt_area {
    margin: 0 0 5px;
    padding: 0;
    width: calc( 100% - 90px );
}

.timeline_area .user_txt_area p {
    /*color: #898989;*/
    color: #000; /*202307*/
    font-size: 1.8rem;
    margin: 0 0 8px;
    padding: 0;
}

.youtube_timeline_area ul li .user_txt_area p {
    margin: 0 !important;
}

.timeline_area .youtube_player {
    width: 100%;
    aspect-ratio: 16 / 9;
    display: block;
}

.timeline_area .youtube_player iframe {
    width: 100%;
    height: 100%;
}

.timeline_area.facebook_timeline_area {
    margin: 0 auto;
    text-align: center;
}

.timeline_area .datetime_flex_area {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

.timeline_area .datetime_flex_area .date_right {
    text-align: right;
    font-size: 1.4rem;
    width: 100%;
    margin: 0;
    padding: 8px;
}

.timeline_area .datetime_flex_area .left_area_of_date {
    margin: 0;
    padding: 0px 8px 8px;
    width: 100%;
    font-size: 1.5rem;
    line-height: 1.5;
}

@media (min-width: 641px) {   
    .timeline_tab_wrap .sns_tab_area {
        padding: 10px 30px 0;
    }

    .timeline_tab_wrap .sns_tab_area li {
        max-width: 270px;
        height: 68px;
        line-height: 66px;
        position: relative;
        padding: 6px 0 0 0px;
    }

    .timeline_tab_wrap .sns_tab_area li::after {
        background-size: 25px 25px;
        width: 25px;
        height: 25px;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        top: -10px;
    }

    .timeline_tab_wrap .sns_tab_area img {
        height: 35px;
    }

    .timeline_tab_wrap .sns_tab_area #num_1 img {
        height: auto;
        width: 28px;
    }

    .timeline_tab_wrap .sns_tab_area li::before {
        content: "";
        width: 1px;
        height: 32px;
        position: absolute;
        top: 0;
        left: 36px;
        border-right: none;
    }

    .timeline_tab_wrap .sns_tab_area li + li {
        margin: 0 0 0 5px;
    }
    
    .timeline_title {
        height: 40px;
        line-height: 38px;
        font-size: 2.0rem;
    }

    .timeline_title img {
        height: 32px;
        width: auto;
        margin: -2px 5px 0 0;
    }

    .timeline_area {
        height: 600px;
    }

    .tab_wrap .panel_area {
        width: 100%;
    }
    
    .timeline_area.instagram_timeline_area .instagram_timeline_list li {
        position: relative;
        width: 32%;
        border: 1px solid #e9e9e9;
        margin: 14px 0 0 2%;
    }

    .timeline_area.instagram_timeline_area .instagram_timeline_list li:nth-child(2n) {
        margin: 14px 0 0 2%;
    }

    .timeline_area.instagram_timeline_area .instagram_timeline_list li:nth-child(3n + 1) {
        margin: 14px 0 0 0;
    }
 
    .timeline_area.tiktok_timeline_area ul {
        max-width: 590px;
    }
    
    .timeline_area.tiktok_timeline_area li {
        margin-top: 15px;
    }
    
    .timeline_area.tiktok_timeline_area .tiktok_img_area {
        border-radius: 10px 10px 0 0;
        overflow: hidden;
        max-height: 300px;
    }

    .timeline_area.tiktok_timeline_area .tiktok_txt_area {
        margin: 0;
        padding: 15px 15px 8px;
    }

    .timeline_area.tiktok_timeline_area .tiktok_txt_area p {
        font-weight: bold;
        font-size: 1.6rem;
        line-height: 1.5;
        margin: 0;
        padding: 0 0 5px;
    }

    .timeline_area.tiktok_timeline_area .tiktok_txt_area .tiktok_txt_date {
        font-size: 1.2rem;
        line-height: 1;
        font-weight: 400;
        padding: 0;
    }
    
    .timeline_area.tiktok_timeline_area .tiktok_poster_area {
        padding: 0 15px 15px;
        font-size: 1.5rem;
    }

    .timeline_area.tiktok_timeline_area .tiktok_poster_area img {
        width: 40px;
        height: 40px;
        border-radius: 50%;
        margin: 0 8px 0 0;
    }

    .timeline_area.instagram_timeline_area p.post_datetime {
        font-size: 1.6rem;
    }
    
    .timeline_area.instagram_timeline_area .instagram_timeline_list li .instagram_hover_txt .instagram_poster_area, .instagram_slider_area .instagram_poster_area {
        font-size: 1.4rem;
    }

    .timeline_area .datetime_flex_area {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-direction: row;
    }

    .timeline_area .datetime_flex_area .date_right {
        text-align: right;
        font-size: 1.6rem;
        width: 180px;
        margin: 0;
        padding: 8px;
    }

    .timeline_area .datetime_flex_area .left_area_of_date {
        margin: 0;
        padding: 8px;
        width: calc( 100% - 180px );
        font-size: 1.8rem;
        line-height: 1.5;
    }
    
    .timeline_area .line_timeline_inner {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        width: 90%;
        margin: 15px auto 0;
        max-width: 400px;
    }

    .timeline_area .line_timeline_inner a.line_btn {
        display: block;
        background: #06c755;
        color: #fff;
        font-weight: bold;
        font-size: 1.8rem;
        text-align: center;
        border-radius: 5px;
        margin: 0;
        padding: 0;
        width: 100%;
        height: 42px;
        line-height: 42px;
        border-radius: 21px;
    }

    .youtube_timeline_area ul li {
        padding: 0 0 18px;
    }

    .youtube_timeline_area ul li .user_icon img {
        width: 60px !important;
    }

    .timeline_area .user_icon_area {
        display: flex;
    }

    .timeline_area .user_icon img {
        width: 100px;
        border-radius: 50%;
        margin-right: 8px;
    }

    .timeline_area .user_txt_area {
        margin: 0 0 5px;
        padding: 0;
        width: calc( 100% - 110px );
    }

    .timeline_area .user_txt_area p {
        font-size: 1.8rem;
        margin: 0 0 8px;
        padding: 0;
    }
    
    .youtube_timeline_area ul {
        max-width: 590px;
    }
}

/*---------------------------------
 Twitter
---------------------------------*/
.timeline_area .twitter_timeline_list {
    margin: 0 auto;
    padding: 0;
    width: 100%;
}

.timeline_area .twitter_timeline_list li {
    width: 100%;
    background: #fff;
    border-bottom: 1px solid #cfd9de;
    margin: 0;
    padding: 10px 16px;
    font-size: 1.5rem;
    line-height: 1.4;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_header_area, .timeline_area .twitter_timeline_list li .twitter_timeline_quoted_header_area {
    display: flex;
    color: #536471;
    font-size: 1.5rem;
    margin: 0 0 3px;
    padding: 0;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_header_area .twitter_timeline_header_left_area {
    width: 44px;
    margin: 0 8px 0 0;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_header_area .twitter_timeline_header_left_area img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_header_area .twitter_timeline_header_right_area {
    width: calc( 100% - 52px );
    display: flex;
    flex-direction: column;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_header_area .twitter_timeline_header_right_upper_area {
    font-weight: 700;
    color: #0f1419;
    margin: 0;
    padding: 0;
    line-height: 1;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_body_area {
    margin: 0 0 0 44px;
    padding: 0;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_retweeted_header {
    color: #536471;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    margin: 0 0 8px 15px;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_media_area {
    display: flex;
    flex-wrap: wrap;
    /*align-items: center;*/
    margin: 12px auto 0;
    padding: 0;
    max-width: 520px;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_media_area li {
    border-bottom: none;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_media_area .twitter_timeline_media_item {
    margin: 1px;
    padding: 0;
    max-height: 195px;
    overflow: hidden;
    display: flex;
    align-items: center;
}

.show_twitter_modal_video {
    display: none;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_media_area:has(&gt; :nth-child(2)) .twitter_timeline_media_item {
    width: calc( 50% - 2px );
    max-height: 96px;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_media_area .twitter_timeline_media_three_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_media_area .twitter_timeline_media_three_wrap .twitter_timeline_media_three_right_wrap .twitter_timeline_media_item {
    width: 100%;
    max-height: 96px;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_media_area .twitter_timeline_media_three_wrap .twitter_timeline_media_three_left_wrap .twitter_timeline_media_item {
    width: 100%;
    max-height: 193px;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_media_area .twitter_timeline_media_three_wrap .twitter_timeline_media_three_left_wrap {
    width: calc( 50% - 2px );
    height: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_media_area .twitter_timeline_media_three_wrap .twitter_timeline_media_three_left_wrap img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_media_area .twitter_timeline_media_three_wrap .twitter_timeline_media_three_right_wrap {
    width: calc( 50% - 2px );
    
}

.timeline_area .twitter_timeline_list li .twitter_timeline_quoted_area {
    border: 1px solid #cfd9de;
    margin: 12px 0 0 44px;
    padding: 8px 10px;
    border-radius: 16px;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_quoted_header_area .twitter_timeline_quoted_header_left_area {
    width: 28px;
    margin: 0 5px 0 0;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_quoted_header_area .twitter_timeline_quoted_header_left_area img {
    width: 24px;
    height: 24px;
    border-radius: 50%;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_quoted_header_area .twitter_timeline_quoted_header_right_area {
    width: calc( 100% - 33px );
}

.timeline_area .twitter_timeline_list li .twitter_timeline_quoted_header_area .twitter_timeline_quoted_header_right_area .twitter_timeline_quoted_author_name {
    font-weight: 700;
    color: #0f1419;
    display: inline-block;
    margin: 0 3px 0 0;
}

.timeline_area .twitter_timeline_list li .twitter_timeline_quoted_body_area {
    margin: 0 0 0 8px;
    padding: 0;
}


@media (min-width: 641px) {


    .timeline_area .twitter_timeline_list li .twitter_timeline_media_area .twitter_timeline_media_item {
        max-height: 290px;
    }

    .timeline_area .twitter_timeline_list li .twitter_timeline_media_area:has(&gt; :nth-child(2)) .twitter_timeline_media_item {
        max-height: 144px
    }

    .timeline_area .twitter_timeline_list li .twitter_timeline_media_area .twitter_timeline_media_three_wrap .twitter_timeline_media_three_right_wrap .twitter_timeline_media_item {
        max-height: 144px;
    }
    
    .timeline_area .twitter_timeline_list li .twitter_timeline_media_area .twitter_timeline_media_three_wrap .twitter_timeline_media_three_left_wrap .twitter_timeline_media_item {
        max-height: 288px;
        height: 100%;
    }

}


/*---------------------------------
 Twitter Modal
---------------------------------*/
#twitter_modal_area {
    display: none;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    background: rgba(0, 0, 0, .8);
    z-index: 999;
}

#twitter_modal_area .inner {
    width: 96%;
    height: 95vh; /* 202410 */
    overflow: hidden;
    margin: 0 auto;
    padding: 0;
    display: flex;
    justify-content: center;
    flex-direction: column;
}

#twitter_modal_area .modal_close {
    height: 35px;
    text-align: right;
}

#twitter_modal_area .modal_close::after {
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    color: #fff;
    font-weight: 900;
    font-size: 3.2rem;
    pointer-events: none;
}

#twitter_modal_area .twitter_modal_img {
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 100%;
    max-height: calc( 100% - 35px ); /* 202410 */
}
        
#twitter_modal_area .twitter_modal_img img {
    /*width: 100%;
    height: auto;*/
    object-fit: contain;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: calc( 100vh - 35px );
}
  

#twitter_modal_area .twitter_modal_video {
    position:relative;
    padding-bottom:56.25%;
    overflow:hidden;
}

#twitter_modal_area .twitter_modal_video video {
    position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

@media (min-width: 641px) {
    #twitter_modal_area .inner {
        width: 94%;
        max-width: 1100px;
        padding: 0;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        height: auto;
        max-height: 85vh;
        overflow: visible;
        background: #000;
    }

    #twitter_modal_area .modal_close {
        width: 35px;
        height: 35px;
        position: absolute;
        top: -35px;
        right: 0;
    }

    #twitter_modal_area .modal_close::after {
        font-size: 3.0rem;
        pointer-events: none;
    }
        
    
    #twitter_modal_area .twitter_modal_img {
        max-width: 100%;
        max-height: calc( 85vh - 35px );
    }
    
    #twitter_modal_area .twitter_modal_img img {
        width:auto;
        height:auto;
        max-width: 100%;
        max-height: calc( 85vh - 35px );
    }
    
}


/*---------------------------------
 facebook
---------------------------------*/
#facebook_wrap {
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
}

#facebook_wrap &gt; .fb-page {
    width: 100%;
    height: 400px;
}
#facebook_wrap &gt; .fb-page &gt; span,
#facebook_wrap iframe {
    width: 100% !important;
    height: 400px;
}


/*---------------------------------
 Instagram Modal
---------------------------------*/
#timeline_modal_area {
    display: none;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    background: rgba(0, 0, 0, .8);
    z-index: 999;
}

#timeline_modal_area .inner {
    width: 96%;
    height: 85vh; /* 202506 */
    overflow: hidden;
    /*overflow-y: scroll;*/
    border-radius: 10px;
    margin: 15px auto 0;
    background: #fff;
    padding: 0;
}

#timeline_modal_area .modal_close {
    height: 50px;
    position: relative;
}

#timeline_modal_area .modal_close::after {
    position: absolute;
    top: 10px;
    right: 15px;
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    color: #999;
    font-weight: 900;
    font-size: 3.2rem;
    pointer-events: none;
}

#timeline_modal_area .inner.iframe_inner { /* 202506 */
    height: 82vh !important;
    margin-top: 140px !important;
}

#timeline_modal_area .inner.iframe_cast_inner { /* 202506 */
    height: 79dvh !important;
    margin-top: 177px !important;
}

#timeline_modal_area .instagram_slider_area {
    /*margin: 0 0 30px;*/
    margin: 0 0 0px;
    padding: 0;
    position: relative;
}

.instagram_slider_area ul {
    margin: 0;
    padding: 0;
}

.instagram_slider_area .slide-arrow {
    width: 22px;
    height: 50vh;
    position: absolute;
    z-index:2;
    cursor: pointer;
}

.instagram_slider_area .slide-arrow img {
    width: 17px;
}

.instagram_slider_area .slide-arrow.prev-arrow {
    left: 7px;
    top: 0px;
}

.instagram_slider_area .slide-arrow.next-arrow {
    right: 7px;
    top: 0px;
    transform: scale(-1, 1);
}

.instagram_slider_area .slide-arrow.slick-disabled {
    opacity: 0;
}
 
.instagram_slider_area .slide-arrow.slick-disabled:before {
    opacity: 0;
}

.instagram_slider_area ul li {
    margin: 0;
    padding: 0 45px 10px;
    z-index:1;
    display: flex;
    height: calc( 90vh - 50px );
    overflow-y: scroll;
}

.instagram_slider_area .instagram_slider_img {
    width: 100%;
    max-height: 50vh;
    background: #fefefe;
    aspect-ratio: 1/1;
    position: relative;
}

.instagram_slider_area .instagram_slider_img img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    margin: auto;
    transform: translate(-50%,-50%);
    object-fit: contain;
    border: 1px solid #e9e9e9;
}

.instagram_slider_area .instagram_slider_txt {
    width: 100%;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    padding: 15px 0 0 0;
}

.instagram_slider_area .instagram_slider_txt a {
    color: #0f63e1;
}

.instagram_slider_area .instagram_slider_txt .instagram_poster_area a {
    display: flex;
    align-items: center;
    color: #000;
    font-size: 1.2rem;
}

.instagram_slider_area .instagram_slider_txt .instagram_user_name {
    display: block;
    font-weight: 700;
    padding: 0 0 15px;
    color: #0f63e1;
}

.instagram_slider_area .instagram_slider_txt .post_datetime {
    font-size: 1.4rem;
    color: #7c7c7c;
    padding: 15px 0 0;
}

@media (min-width: 641px) {
    #timeline_modal_area .inner {
        width: 94%;
        max-width: 1100px;
        /*min-height: 50%;
        max-height: 700px;
        overflow-y: scroll;*/
        background: #fff;
        padding: 0px;
        border-radius: 10px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        height: auto;
        max-height: 85vh;
    }

    #timeline_modal_area .modal_close {
        border-radius: 10px 10px 0 0;
        height: 45px;
    }

    #timeline_modal_area .modal_close::after {
        position: absolute;
        top: 12px;
        right: 16px;
        font-size: 2.2rem;
        pointer-events: none;
    }

    #timeline_modal_area .inner.iframe_inner { /* 202506 */
        height: auto !important;
        margin-top: 0px !important;
    }

    #timeline_modal_area .inner.iframe_cast_inner { /* 202506 */
        height: auto !important;
        margin-top: 0px !important;
    }
    
    .instagram_slider_area .slide-arrow {
        height: 100%;
    }
    
    .instagram_slider_area .slide-arrow.prev-arrow {
        left: 14px;
    }

    .instagram_slider_area .slide-arrow.next-arrow {
        right: 14px;
    }
    
    .instagram_slider_area ul li {
        margin: 0;
        padding: 0 45px;
        z-index:1;
        display: flex !important;
        flex-wrap: wrap;
        height: auto;
        max-height: 700px;
    }
    
    .instagram_slider_area .instagram_slider_img {
        width: 50%;
        padding: 0;
        margin: 0 0 18px;
    }
    
    .instagram_slider_area .instagram_slider_txt {
        width: 50%;
        padding: 0 0 0 18px;
    }
    
    .instagram_slider_area .instagram_slider_txt .instagram_poster_area a {
        font-size: 1.4rem;
    }    
}


/*---------------------------------
 Instagram Modal Swiper 202506
---------------------------------*/
#timeline_swiper_modal_area {
    display: none;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    background: rgba(0, 0, 0, .8);
    z-index: 999;
}

#timeline_swiper_modal_area .inner {
    width: 96%;
    height: 88vh;
    overflow: hidden;
    /*overflow-y: scroll;*/
    border-radius: 10px;
    margin: 20px auto 0;
    background: #fff;
    padding: 0;
}

#timeline_swiper_modal_area .modal_close {
    height: 50px;
    position: relative;
}

#timeline_swiper_modal_area .modal_close::after {
    position: absolute;
    top: 10px;
    right: 15px;
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    color: #999;
    font-weight: 900;
    font-size: 3.2rem;
    pointer-events: none;
}

#timeline_swiper_modal_area .inner.iframe_inner {
    height: 82dvh !important;
    margin-top: 140px !important;
    margin: 15px auto 0;
}

#timeline_swiper_modal_area .inner.iframe_cast_inner {
    height: 79dvh !important;
    margin-top: 177px !important;
    margin: 15px auto 0;
}

#timeline_swiper_modal_area .instagram_swiper_area {
    /*margin: 0 0 30px;*/
    margin: 0 0 0px;
    padding: 0;
    position: relative;
    opacity: 0;
    transition: opacity 0.2s;
}

#timeline_swiper_modal_area .instagram_swiper_area.swiper-initialized {
    opacity: 1;
}

.swiper-button-next, .swiper-button-prev {
    top: 20px !important;
}

#timeline_swiper_modal_area .swiper-slide {
    margin: 0;
    padding: 0 45px 45px;
    z-index:1;
    display: flex;
    flex-wrap: wrap;
    height: calc( 90vh - 50px );
    overflow-y: scroll;
}

.swiper-slide img {
    max-width: 100%;
    height: auto;
    display: block;
    image-rendering: auto;
    backface-visibility: hidden;
}

#timeline_swiper_modal_area .swiper-button-prev, #timeline_swiper_modal_area .swiper-button-next {
    width: 22px;
    height: 50vh;
    position: absolute;
    z-index:2;
    cursor: pointer;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}

#timeline_swiper_modal_area .swiper-button-prev::after,
#timeline_swiper_modal_area .swiper-button-next::after {
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    height: 17px;
    margin: auto;
    width: 17px;
}

#timeline_swiper_modal_area .swiper-button-prev::after {
    background-image: url("../img/arrow_double_g.svg");
}

#timeline_swiper_modal_area .swiper-button-next::after {
    background-image: url("../img/arrow_double_g_r.svg");
}

.instagram_swiper_area .instagram_slider_img {
    width: 100%;
    max-height: 50vh;
    background: #fefefe;
    aspect-ratio: 1/1;
    position: relative;
}

.instagram_swiper_area .instagram_slider_img img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    margin: auto;
    transform: translate(-50%,-50%);
    object-fit: contain;
    border: 1px solid #e9e9e9;
}

.instagram_swiper_area .instagram_slider_txt {
    width: 100%;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    padding: 15px 0 0 0;
}

.instagram_swiper_area .instagram_slider_txt a {
    color: #0f63e1;
}

.instagram_swiper_area .instagram_poster_area {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 8px 0 0;
    font-size: 1.2rem;
    text-align: left;
}

.instagram_swiper_area .instagram_poster_area img {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    margin: 0 8px 0 0;
}

.instagram_swiper_area .instagram_slider_txt .instagram_poster_area a {
    display: flex;
    align-items: center;
    color: #000;
    font-size: 1.2rem;
}

.instagram_swiper_area .instagram_slider_txt .instagram_user_name {
    display: block;
    font-weight: 700;
    padding: 0 0 15px;
    color: #0f63e1;
}

.instagram_swiper_area .instagram_slider_txt .post_datetime {
    font-size: 1.4rem;
    color: #7c7c7c;
    padding: 15px 0 0;
}

@media (min-width: 641px) {
    #timeline_swiper_modal_area .inner {
        width: 94%;
        max-width: 1100px;
        /*min-height: 50%;
        max-height: 700px;
        overflow-y: scroll;*/
        background: #fff;
        padding: 0px;
        border-radius: 10px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        height: auto;
        max-height: 85vh;
    }

    #timeline_swiper_modal_area .modal_close {
        border-radius: 10px 10px 0 0;
        height: 45px;
    }

    #timeline_swiper_modal_area .modal_close::after {
        position: absolute;
        top: 12px;
        right: 16px;
        font-size: 2.2rem;
        pointer-events: none;
    }

    #timeline_swiper_modal_area .inner.iframe_inner {
        height: auto !important;
        margin-top: 0px !important;
    }

    #timeline_swiper_modal_area .inner.iframe_cast_inner {
        height: auto !important;
        margin-top: 0px !important;
    }
    
    #timeline_swiper_modal_area .swiper-slide {
        margin: 0;
        padding: 0 45px;
        z-index:1;
        display: flex !important;
        flex-wrap: wrap;
        height: auto;
        max-height: 700px;
    }

    #timeline_swiper_modal_area .swiper-button-prev, #timeline_swiper_modal_area .swiper-button-next {
        width: 30px;
        height: 100%;
    }

    #timeline_swiper_modal_area .swiper-button-prev::after,
    #timeline_swiper_modal_area .swiper-button-next::after {
        height: 22px;
        width: 22px;
    }
    
    .instagram_swiper_area .instagram_slider_img {
        width: 50%;
        padding: 0;
        margin: 0 0 18px;
    }
    
    .instagram_swiper_area .instagram_slider_txt {
        width: 50%;
        padding: 0 0 0 18px;
    }
    .instagram_swiper_area .instagram_poster_area {
        font-size: 1.4rem;
    }
    
    .instagram_swiper_area .instagram_slider_txt .instagram_poster_area a {
        font-size: 1.4rem;
    }   
    
}

@media (min-width: 641px) {
    
    #facebook_wrap &gt; .fb-page {
        height: 600px;
    }
    #facebook_wrap &gt; .fb-page &gt; span,
    #facebook_wrap iframe {
        height: 600px;
    }
    
}

/*---------------------------------
 ガルパラブログ Modal
---------------------------------*/
.blog_modal_area {
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    background: rgba(0, 0, 0, .5);
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
}

.blog_modal_area .inner {
    width: 96%;
    height: 96%;
    max-height: 96vh;
    background-size: auto auto;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    position: relative;
    padding: 34px 10px 15px;
    overflow-y: auto;
}

.blog_modal_area.active{
    opacity: 1;
    visibility: visible;
}

.blog_modal_area .inner .timeline_blog_link_area video-js {
    width: 500px;
    max-width: 100%;
}

.modal_blog_close {
    position: absolute;
    right: 20px;
    top: 8px;
    display: inline-block;
    width: 20px;
    height: 20px;
    background-image: url("../img/btn_close.svg");
    background-repeat: no-repeat;
    background-size: 20px 20px;
    background-position: center center;
    cursor: pointer;
}

@media (min-width: 641px) {
    
    .blog_modal_area {
    }
    
    .blog_modal_area .inner {
        max-width: 1000px;
        height: 80%;
        max-height: 96vh;
        padding: 34px 10px 25px;
    }

    .modal_blog_close {
        right: 18px;
        top: 8px;
        width: 24px;
        height: 24px;
        background-size: 24px 24px;
    }
    
}


/* キャスト タイムライン並び替え */
ul.timeline_sort_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 20px auto;
    padding: 0;
}

ul.timeline_sort_list li {
    margin: 0;
    padding: 5px;
    border-radius: 6px;
    background-color: #e9e9e9;
    width: 13%;
    text-align: center;
}

ul.timeline_sort_list li img {
    width: 20px;
    height: 20px;
    object-fit: contain;
}


@media (min-width: 641px) {

    ul.timeline_sort_list li img {
        width: 50px;
        height: 50px;
        object-fit: contain;
    }
    
}




.cast_footer_menu_area {
    margin: 15px 2%;
}

.cast_footer_menu_area li {
    border: 2px solid #ff78ff;
    border-radius: 6px;
    display: block;
    font-weight: 500;
    margin: 0;
    padding: 0;
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,242,255,1) 100%);
}

.cast_footer_menu_area li + li {
    margin: 5px 0 0;
}

.cast_footer_menu_area li a {
    display: block;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.6rem;
    color: #ff78ff;
    padding: 8px 0 8px 5px;
}

@media (min-width: 641px) {
    
    .cast_footer_menu_area {
        display: none;
    }
}

/*---------------------------------
 キャスト 出勤管理
---------------------------------*/
.scroll table {
    width: 100%;
    white-space: nowrap;
}
.scroll table td {
    white-space: normal;
}
.scroll {
    overflow: auto;
    white-space: nowrap;
}
.scroll::-webkit-scrollbar {
    height: 5px;
}
.scroll::-webkit-scrollbar-track {
    background: #f0f0f0;
}
.scroll::-webkit-scrollbar-thumb {
    background: #cdcdcd;
}

.table {
    width: 100%;
    max-width: 100%;
    border-spacing: 0;
    border-collapse: collapse;
}

.table th, .table td {
    padding: 10px 8px;
    line-height: 1.4em;
    vertical-align: middle;
    border: 1px solid #cacaca;
    font-size: 1.4rem;
}

.table th {
    background: #f5f5f5;
}

.table tr:nth-child(even) {
    background: #fff;
}

.table tr:nth-child(odd) {
    background: #fafafa;
}

table .nowrap {
    white-space: nowrap;
}

.table.table_cast_list th {
    display: none;
}

.table.table_cast_list td {
    display: block;
    text-align: center;
    font-size: 1.2rem;
}

.table.table_cast_list td:not(.empty_cell) + td {
    border-top: none;
}

.table.table_cast_list tr:nth-child(odd) {
    background: #fff;
}

.table.table_cast_list img {
    width: 100px;
}

.table.table_cast_list .form_input_select,.cast_work_schedule_wrapper .form_input_select {
    overflow: hidden;
    display: inline-block;
    width: auto;
    margin: 0;
    position: relative;
    background: #fff;
}

.table.table_cast_list .form_input_select select, .cast_work_schedule_wrapper .form_input_select select {
    font-size: 1.2rem;
    min-width: 70px;
    font-weight: 400;
    margin: 0;
    padding: 4px 16px 4px 5px;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: 1px solid #b4b4b5;
    border-radius: 3px;
    outline: none;
    background: #f7f8f8;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
}

.cast_work_schedule_wrapper .form_input_select select {
    font-size: 1.4rem;
    padding: 10px 24px 10px 14px;
}

.table.table_cast_list .form_input_select::before, .cast_work_schedule_wrapper .form_input_select::before {
    position: absolute;
    top: 8px;
    right: 5px;
    content: "\f078";
    font-family: "Font Awesome 5 Free";
    color: #888;
    font-weight: 900;
    font-size: 1.0rem;
    pointer-events: none;
}

.cast_work_schedule_wrapper .form_input_select::before {
    top: 13px;
    right: 7px;
}

.table.table_cast_list .form_input_select + .form_input_select, .cast_work_schedule_wrapper .form_input_select + .form_input_select {
    margin: 0 0 0 5px;
}

.cast_work_schedule_wrapper .form_input_area input[type="submit"].-mini {
    padding: 8px 20px;
    margin: 0 0 0 10px;
    width: auto;
    font-size: 1.4rem;
    height: inherit;
    line-height: inherit;
}

.table.table_cast_list .vertical_txt {
    display: inline-block;
    margin: 5px 3px;
    color: #333;
}

.table.table_cast_list .work_status {
    display: block;
    margin: 0 0 8px;
    padding: 0;
}

.table.table_cast_list .work_status label {
    font-weight: 700;
}

.table.table_cast_list .cast_name {
    display: block;
    margin: 0 0 5px;
    font-size: 1.5rem;
    font-weight: 700;
}

.table.table_cast_list .table_cast_sp_row {
    display: flex;
    justify-content: center;
}

.table.table_cast_list .empty_cell {
    display: none;
}

.table.table_cast_list .table_cast_date {
    display: block;
    text-align: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.6rem;
    font-weight: 700;
    width: 100%;
    margin: 0 0 8px;
}

.table.table_cast_list .fc_blue {
    color: #4a9bda;
}

.table.table_cast_list .bg_blue {
    color: #4a9bda;
    background: #f6fbff;
}

.table.table_cast_list .fc_red {
    color: #b53a2e;
}

.table.table_cast_list .bg_red {
    color: #b53a2e;
    background: #fff8f7;
}

.table.table_cast_list .today {
    background: #fffff8;
}

.table.table_cast_list .-w_30p {
    width: 100%;
}

@media (min-width: 768px) {
    .scroll table {
        width: 100%;
        white-space: normal;
    }

    .table th {
        padding: 10px 8px;
        font-size: 1.3rem;
    }

    .table td {
        padding: 10px 8px;
    }
}

@media (min-width: 981px) {
    
    .table.table_cast_list th {
        display: table-cell;
        text-align: center;
    }

    .table.table_cast_list td {
        display: table-cell;
        text-align: center;
        margin: 0 auto;
        padding: 10px 3px;
        font-size: 1.4rem;
    }
    
    .table.table_cast_list .form_input_select select, .cast_work_schedule_wrapper .form_input_select select {
        min-width: 40px;
    }
    
    .table.table_cast_list .vertical_txt {
        display: inline-block;
        margin: 2px 0;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
    }

    .table.table_cast_list .table_cast_sp_row {
        display: block;
    }

    .table.table_cast_list .table_cast_date {
        display: inline-block;
        text-align: center;
        font-size: 2.0rem;
        width: 36px;
        margin: 0;
    }
    .table.table_cast_list .empty_cell {
        display: table-cell;
    }

    .table.table_cast_list img {
        width: 150px;
    }

    .table.table_cast_list .-w_30p {
        width: 30%;
    }
}

/*---------------------------------
 キャスト　ブログ編集
---------------------------------*/

.timeline_list.blog_edit {
    width: 90%;
}

.blog_section {
    border: 2px dashed #d1d1d1;
    margin: 0;
    padding: 5px;
}

.blog_section + .blog_section {
    margin: 15px 0 0;
}

.blog_guideline {
    font-family: 'Noto Sans JP', sans-serif;
    border: 2px dashed #2c7cf1;
    text-align: center;
    margin: 20px auto 10px;
    padding: 15px 0;
    color: #0c63e2;
    font-weight: 400;
    font-size: 1.4rem;
    position: relative;
}

.blog_add_btn_area {
    text-align: center;
    display: flex;
    justify-content: space-between;
}

.blog_add_btn_area.center {
    justify-content: center;
}

.push_btn {
    font-family: 'Noto Sans JP', sans-serif;
    height: 46px;
    line-height: 44px;
    display: inline-block;
    border: 1px solid #d1d1d1;
    text-align: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
    white-space: nowrap;
    font-size: 1.6rem;
    letter-spacing: .5px;
    font-weight: 400;
    border-radius: 5px;
    margin: 0;
    padding: 0;
    background: rgb(240,240,240);
    background: linear-gradient(0deg, rgba(240,240,240,1) 0%, rgba(252,252,252,1) 100%);
    transition: background .3s;
    color: #000 !important;
}

.push_btn:hover {
    background: rgb(252,252,252);
    background: linear-gradient(0deg, rgba(252,252,252,1) 0%, rgba(240,240,240,1) 100%);
}

.blog_add_btn_area .push_btn {
    width: 32%;
}

.push_btn.plus_img, .push_btn.plus_movie, .push_btn.plus_txt {
    position: relative;
    padding: 0 0 0 18px;
}

.push_btn.submit {
    position: relative;
    width: 49%;
    padding: 0;
    font-family: "Font Awesome 5 Free";
    font-weight: 700;
    font-size: 1.5rem;
    color: #000 !important;
}

.push_btn.submit_blue {
    position: relative;
    width: 49%;
    padding: 0;
    font-family: "Font Awesome 5 Free";
    font-weight: 700;
    background: rgb(12,99,226);
    background: linear-gradient(0deg, rgba(12,99,226,1) 0%, rgba(44,124,241,1) 100%);
    border: 1px solid #0954c1;
    color: #fff !important;
    font-size: 1.5rem;
}

.push_btn.submit_blue:hover {
    background: rgb(44,124,241);
    background: linear-gradient(0deg, rgba(44,124,241,1) 0%, rgba(12,99,226,1) 100%);
}

.push_btn.plus_img::before, .push_btn.plus_movie::before, .push_btn.plus_txt::before {
    position: absolute;
    top: 1px;
    left: 8px;
    content: "\f03e";
    font-family: "Font Awesome 5 Free";
    color: #464646;
    font-weight: 900;
    font-size: 1.5rem;
    pointer-events: none;
}

.push_btn.plus_movie::before {
    content: "\f03d";
}

.push_btn.plus_txt::before {
    content: "\f037";
}

.blog_edit_btn_area {
    text-align: right;
    margin: 5px 0 0;
}

.push_btn_small {
    font-family: "Font Awesome 5 Free";
    width: 44px;
    height: 44px;
    display: inline-block;
    border: 1px solid #d1d1d1;
    text-align: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
    white-space: nowrap;
    font-size: 1.6rem;
    letter-spacing: .5px;
    font-weight: 400;
    border-radius: 5px;
    margin: 0;
    padding: 0;
    background: rgb(240,240,240);
    background: linear-gradient(0deg, rgba(240,240,240,1) 0%, rgba(252,252,252,1) 100%);
    transition: background .3s;
    color: #000 !important;
}

.push_btn_small  + .push_btn_small {
    margin: 0 0 0 5px;
}


@media (min-width: 641px) {
    
    .blog_guideline {
        max-width: 500px;
        margin: 30px auto 10px;
        padding: 18px 0;
        font-size: 1.5rem;
    }
    
    .push_btn {
        height: 48px;
        line-height: 46px;
        font-size: 1.6rem;
        letter-spacing: .5px;
        border-radius: 5px;
        margin: 0;
        padding: 0;
    }
    
    .push_btn.submit {
        font-size: 1.6rem;
    }

    .push_btn.submit_blue {
        font-size: 1.6rem;
    }

    .push_btn.plus_img, .push_btn.plus_movie, .push_btn.plus_txt {
        position: relative;
        padding: 0 30px 0 50px;
    }

    .push_btn.plus_img::before, .push_btn.plus_movie::before, .push_btn.plus_txt::before {
        position: absolute;
        top: 1px;
        left: 18px;
        font-size: 1.6rem;
    }
    
}

/*---------------------------------
 キャスト　SNSコンテンツ編集
---------------------------------*/
.sns_edit_list {
    width: 100%;
    margin: 0 auto 30px;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.6rem;
    display: flex;
    flex-wrap: wrap;
}

.sns_edit_list li {
    width: 32.8%;
    margin: 0 0.8% 0 0;
    padding: 0;
}

.sns_edit_list.instagram_list li {
    width: 32.8%;
    height: 100%;
    aspect-ratio: 1/1;
}

.sns_edit_list li:nth-of-type(3n) {
    margin-right: 0;
}

.sns_edit_list li:nth-child(n + 4) {
    margin-top: 15px;
}

.sns_edit_list .tiktok_txt_caption{
    font-size: 1.5rem;
    line-height: 1.5;
    margin: 0;
    padding: 0 0 5px;
}

.sns_edit_list .tiktok_txt_date {
    color: #353535;
    font-size: 1.2rem;
    line-height: 1;
    font-weight: 400;
    margin: 0;
    padding: 0;
    text-align: right;
}

.sns_edit_list .tiktok_img {
    position: relative
}

.sns_edit_list .instagram_img {
    width: 100%;
    height: 100%;
    position: relative;
}

.sns_edit_list .instagram_img img{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    margin: auto;
    transform: translate(-50%,-50%);
    object-fit: cover;
}

.sns_edit_list .tiktok_checkbox {
    position: absolute;
    top: 0;
    right: 0;
}

.sns_edit_list .single_checkbox_parts {
    position:relative;
    margin-right: 40px;
}
.sns_edit_list .single_checkbox_parts:before{
    content: "";
    display: block;
    position: absolute;
    top: 2px;
    left: 0;
    width: 40px;
    height: 40px;
    border: 3px solid #b4b4b5;
    background: #fff;
}
.sns_edit_list .form_input_checkbox:checked + .single_checkbox_parts{
    color: #00d4ac;
}

.sns_edit_list .form_input_checkbox:checked + .single_checkbox_parts:after{
    content: "";
    display: block;
    position: absolute;
    top: 3px;
    left: 11px;
    width: 18px;
    height: 26px;
    transform: rotate(40deg);
    border-right: 4px solid #00d4ac;
    border-bottom: 4px solid #00d4ac;
}

@media (min-width: 641px) {
    .sns_edit_list .tiktok_txt_caption{
        font-size: 1.6rem;
        line-height: 1.5;
        margin: 0;
        padding: 0 0 8px;
    }
    
}

/*---------------------------------
 サインアップ
---------------------------------*/
.signup_img_area {
    width: 150px;
    margin: 0 auto 10px;
}

.signup_container .btn {
   max-width: 230px;
}

@media (min-width: 641px) {
    
    .signup_img_area {
        width: 250px;
    }
    
    .signup_container .btn {
        max-width: 350px;
        height: 42px;
        line-height: 40px;
        font-size: 2.0rem;
    }
}

/* 画像更新 */
.img_edit_flex_area {
    display: flex;
    justify-content: center;
    flex-direction: column;
}

.img_edit_flex_area .current_img_area, .img_edit_flex_area .update_img_area {
    width: 100%;
    text-align: center;
    font-size: 1.6rem;
}

.update_img_area_title {
    margin: 15px 0;
    padding: 10px 0 0;
    font-weight: bold;
    border-top: 1px dotted #d5d5d5;
}

.img_edit_flex_area .current_img_area img {
    width: 150px;
    height: 150px;
    object-fit: contain;
    padding: 5px;
    border: 1px solid #d5d5d5;
}

.img_edit_flex_area .current_img_area video {
    width: 150px;
    height: auto;
    padding: 5px;
    border: 1px solid #d5d5d5;
}

.view_upload_image {
    width: 150px;
    height: auto;
    margin: 10px 0 0;
}

.landscape_img.img_edit_flex_area .current_img_area img {
    width: 150px;
    height: 100px;
}

.landscape_img.img_edit_flex_area .current_img_area video {
    width: 150px;
    height: auto;
}

.file_drop_box {
    display: none;
}

.img_edit_cropper_area {
    width: 100%;
    max-width: 600px;
    margin: 60px auto 0;
    text-align: center;
}

.img_cropper_area {
    width: 100%;    
}

.cropper-area {
    width: 300px;
    height: 300px;
}

@media (min-width: 768px) {
    
    .img_edit_flex_area {
        flex-direction: row;
    }

    .update_img_area_title {
        margin: 0 0 15px;
        padding: 0;
        font-weight: bold;
        border-top: none;
    }
    
    
    .img_edit_flex_area .current_img_area, .img_edit_flex_area .update_img_area {
        width: 49%;
    }

    .img_edit_flex_area .current_img_area img {
        width: 250px;
        height: 250px;
        object-fit: contain;
        padding: 5px;
        border: 1px solid #d5d5d5;
    }

    .img_edit_flex_area .current_img_area video {
        width: 250px;
    }

    .landscape_img.img_edit_flex_area .current_img_area img {
        width: 250px;
        height: 166px;
    }

    .landscape_img.img_edit_flex_area .current_img_area video {
        width: 250px;
    }

    .view_upload_image {
        width: 250px;
        height: auto;
    }
    
    .file_drop_box {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 150px;
        border: 3px dashed #d5d5d5;
        background: #fdfdfd;
        border-radius: 10px;
        margin: 0 0 10px;
        padding: 15px;
        text-align: center;
        line-height: 1.6;
    }
}

/* terms */
.info_container {
    font-size: 1.4rem;
    line-height: 1.5;
}

.info_container dt {
    margin: 0 0 10px;
    font-size: 1.6rem;
    font-weight: bold;
    letter-spacing: 1px;
}

.info_container dd {
    margin: 0 0 0 15px;
}

.info_container dl + dl {
    margin-top: 20px;
}

.info_container ol {
    margin: 0;
    padding: 0;
}

.info_container ol li {
    margin: 5px 0 0 15px;
}

.info_container ul {
    list-style-type: disc;
}

.info_container ul li {
    margin: 5px 0 0 15px;
}

.info_container .terms_area {
    overflow-y: scroll;
    height: 150px;
    padding: 0 10px;
    border: 1px solid #b4b4b5;
}

@media (min-width: 768px) {
    
    .info_container {
        font-size: 1.6rem;
    }
    
    .info_container dt {
        font-size: 1.6rem;
    }

    .info_container dd {
        margin: 0 0 0 18px;
        font-size: 1.6rem;
    }

    .info_container dl + dl {
        margin-top: 30px;
    }

    .info_container ol li {
        margin: 5px 0 0 18px;
    }

    .info_container ul li {
        margin: 5px 0 0 18px;
    }

    .info_container .terms_area {
        height: 250px;
        padding: 0 15px;
    }
}

/* Sitemap */
.sitemap_container {
    font-size: 1.4rem;
    line-height: 1.5;
}

.sitemap_container ul {
    margin: 0;
    padding: 0;
}

.sitemap_container ul li {
    margin: 0;
    padding: 0;
}

.sitemap_container ul li a {
    display: block;
    margin: 0;
    padding: 6px 15px;
    border-left: 6px solid #00d0af;
    border-top: 1px solid #b4b4b5;
    border-bottom: 1px solid #b4b4b5;
    border-right: 1px solid #b4b4b5;
    font-size: 1.6rem;
    position: relative;
}

.sitemap_container ul li span {
    display: block;
    font-size: 1.2rem;
    /*color: #888;*/
    color: #353535; /*202307*/
}

.sitemap_container ul li + li {
    margin: 20px 0 0;
}

.sitemap_container ul.lower {
    display: flex;
    flex-wrap: wrap;
    margin: 10px 0 0;
}

.sitemap_container ul.lower li {
    width: 50%;
}

.sitemap_container ul.lower li a {
    display: block;
    margin: 0;
    padding: 6px 15px 6px 44px;
    border-left: none;
    border-top: none;
    border-bottom: none;
    border-right: none;
    font-size: 1.4rem;
    position: relative;
}

.sitemap_container ul.lower li a::before {
    position: absolute;
    top: 8px;
    left: 20px;
    content: "\f138";
    font-family: "Font Awesome 5 Free";
    color: #999;
    font-weight: 900;
    font-size: 1.3rem;
}

.sitemap_container ul.lower li + li {
    margin: 0px 0 0;
}

@media (min-width: 768px) {
    
    .sitemap_container {
        font-size: 1.6rem;
    }

    .sitemap_container ul li a {
        font-size: 1.8rem;
    }


    .sitemap_container ul li span {
        display: inline-block;
        position: absolute;
        top: 10px;
        right: 6px;
    }

    .sitemap_container ul li + li{
        margin: 26px 0 0;
    }
    
    .sitemap_container ul.lower li a {
        font-size: 1.6rem;
    }
}

/* サイトバナー画像 */
.vip_site_banner_image_sp_area {
    display: block;
    width: 94%;
    margin: 0 auto;
}

.site_banner_image_title {
    background: #920784;
    color: #ffff00;
    font-size: 1.6rem;
    border-radius: 5px;
    line-height: 1;
    margin: 25px 0 15px;
    padding: 6px 0;
    text-align: center;
    font-family: 'BIZ UDPGothic', sans-serif;
}

.vip_site_banner_image_pc_area {
    margin: 0 0 15px;
}

.vip_site_banner_image_pc_area .vip_site_banner_image + .vip_site_banner_image {
    margin: 5px 0 0;
}

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

.site_banner_image_area .site_banner_image_title {
    margin: 5px auto 10px;
}

.site_banner_image_area ul li {
    padding: 0 5px;
}

.site_banner_image_slider_area .slide-arrow {
    width: 22px;
    height: 50vh;
    position: absolute;
    z-index:2;
    cursor: pointer;
}

.site_banner_image_slider_area .slide-arrow img {
    width: 17px;
}

.site_banner_image_slider_area .slide-arrow.prev-arrow {
    left: 7px;
    top: 50%;
    transform: translateY(-50%);
}

.site_banner_image_slider_area .slide-arrow.next-arrow {
    right: 7px;
    top: 50%;
    transform: scale(-1, 1) translateY(-50%);
}

.site_banner_image_slider_area .slide-arrow.slick-disabled {
    opacity: 0;
    cursor: default;
}
 
.site_banner_image_slider_area .slide-arrow.slick-disabled:before {
    opacity: 0;
}

@media (min-width: 768px) {
    .vip_site_banner_image_sp_area {
        display: none;
    }
    
    .site_banner_image_title {
        padding: 5px 0;
        font-size: 1.4rem;
    }

    .site_banner_image_area .site_banner_image_title {
        max-width: 550px;
        margin: 15px auto 15px;
        font-size: 2.0rem;
        padding: 8px 0;
    }
    
    .site_banner_image_slider_area .slide-arrow.prev-arrow {
        left: 14px;
    }

    .site_banner_image_slider_area .slide-arrow.next-arrow {
        right: 14px;
    }
}
</pre></body></html>