@charset "UTF-8";
@import '/sp/st_css/reset-ca9fc7e65c5aea66ac9692eeb31a3715.css';

/* -------------------------------------------------------------

  夜遊びガイド共通部分CSS
  last-mod:00-00-00 name

   ------------------------------------------------------------- */
a {
    color: #0080de;
}

a:hover {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.moreRank a,
#menu_contents li {
    background: url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png) no-repeat right center;
    -webkit-background-size: 19px 14px;
    background-size: 19px 14px;
}

#iphone-layout {
    width: 100%;
    position: absolute;
}

/* ============================================================
  2. メインエリア
============================================================ */
/* 2-1.基本的なメインエリアの設定
------------------------------------------------------------ */
div#menu {
    margin: 0 0 10px;
    padding: 0;
    background: #fff;
}

/* 各ガイド・メニュー
------------------------------------------------- */
.hide {
    display: none;
}

/* 各ボックス
------------------------------------------------- */
.menu_box {
    margin: 0 0 10px;
    background: #fff;
}

/* 2-3.見出しH2
------------------------------------------------------------ */
/* 新メニュー用赤色見出し */
.menu_box h3 {
    height: 32px;
    margin: 0;
    padding: 0 10px;
    font-size: 14px;
    font-weight: bold;
    line-height: 32px;
    vertical-align: top;
    color: #fff;
    border: none;
    background-color: #ff4141;
}

/* すぐ会える嬢
------------------------------------------------- */
#suguGirl {
    width: 100%;
    height: 81px;
    overflow: hidden;
}

#suguGirl_in_box {
    width: 100%;
    height: 97px;
}

#suguGirl ul {
    margin: 10px 2px;
    padding: 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
}

#suguGirl ul li {
    width: 78px;
    height: 75px;
    overflow: hidden;
}

#suguGirl ul li img {
    max-width: 75px;
}

/* 新着ムービー
------------------------------------------------- */
#newmovie {
    position: relative;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#newmovie p {
    min-height: 67px;
    background-color: #000;
    width: 100%;
    display: block;
    position: relative;
}

#view {
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
}

#view ul {
    width: 500%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    text-align: center;
    -webkit-box-pack: center;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-items: center;
    -moz-align-items: center;
    align-items: center;
    -webkit-flex-wrap: nowrap;
    -moz-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

#view ul li {
    width: 33%;
    margin: 5px 0;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    text-align: center;
    -webkit-flex-grow: 0;
    -webkit-flex-shrink: 0;
    -webkit-flex-basis: 20%;
    -moz-flex-grow: 0;
    -moz-flex-shrink: 0;
    -moz-flex-basis: 20%;
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: 20%;
}

#view ul li dl {
    -webkit-flex-grow: 0;
    -webkit-flex-shrink: 0;
    -webkit-flex-basis: auto;
    -moz-flex-grow: 0;
    -moz-flex-shrink: 0;
    -moz-flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 1;
    flex-basis: auto;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-contentflex-start: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    align-items: center;
    margin: 0 auto;
}

#view ul li a {
    display: block;
}

#view ul li span {
    font-size: 10px;
    line-height: 1.2;
    display: block;
}

.girl_name {
    margin-top: 2px;
}

.mv_showcase {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
}

.mv_showcase_inner {
    width: 33%;
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 4px;
}

.mv_showcase_inner:first-child {
    padding-left: 2px;
}

.mv_showcase_inner:last-child {
    padding-right: 2px;
}

.box_img {
    margin: auto;
    max-width: 180px;
}

.mv_showcase .thumb {
    max-height: 100%;
    margin: auto;
    top: 0;
    right: -50%;
    bottom: 0;
    left: -50%;
    position: absolute;
}

.ratio_4-3:before {
    padding-top: 75%;
    display: block;
    content: '';
}

.jissun {
    width: 100%;
}

/*画像調整用*/
@media screen and (max-width: 374px) and (min-width: 320px) {
    .box_img {
        margin: auto;
        max-width: 100px;
    }
}

@media screen and (max-width: 414px) and (min-width: 375px) {
    .box_img {
        margin: auto;
        max-width: 116px;
    }
}

@media screen and (min-width: 435px) {
    .box_img {
        margin: auto;
        max-width: 180px;
    }
}

/* コンテンツメニュー
------------------------------------------------------------ */
#menu_contents li {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #b0b7cb;
    background: #fff url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png) no-repeat right center;
    -webkit-background-size: 19px 14px;
    background-size: 19px 14px;
}

#menu_contents li a {
    padding: 8px 25px 8px 32px;
    font-weight: bold;
    display: block;
    color: #000b4f;
}

#menu_contents li .newgaido {
    font-size: 11px;
    font-weight: normal;
    color: #666;
}

#menu_contents li a.houroukilink {
    background: url(../st_img/icon_hourouki.gif) no-repeat 5px center;
}

#menu_contents li a.houroukilink span.guidemedium {
    font-size: 16px;
    color: #f89811;
}

/* 抽選会 */
.t .chusenEnter {
    /* トップメニューページ */
    border-bottom: 1px solid #cbcbcb;
}

.szok .chusenEnter {
    background-color: #fff;
}

.chusenMaininner {
    padding-left: 54px;
    max-width: 300px;
}

.chusenMaininner .main {
    display: inline-block;
    font-size: 23px;
    text-shadow: 0 1px 0 #ffffff;
    color: #fff;
    font-weight: bold;
    text-shadow: 1px 0 0 #ff0010, 0 1px 0 #ff0010, -1px 0 0 #ff0010, 0 -1px 0 #ff0010, 2px 0 2px #ff0010, 0 2px 2px #ff0010, -2px 0 2px #ff0010, 0 -2px 2px #ff0010;
    text-align: center;
    margin-top: 2px;
}

.chusenMaininner .sub {
    color: #0090c7;
    width: 91%;
    font-weight: bold;
    display: inline-block;
    margin: 0 0 1px 7px;
    border: 1px solid #0090c7;
    border-radius: 3px;
    padding: 1px;
    text-align: center;
    font-size: 12px;
}

.chusenEnter {
    position: relative;
    border: none;
    margin-bottom: 0;
    padding: 8px 4px 10px;
    box-sizing: border-box;
    background-color: #fff;
}

.chusenLink_btn {
    width: 100%;
    border-radius: 5px;
    background-color: #ffe858;
    max-width: 480px;
    margin: 0 auto;
}

.chusenLink {
    width: 100%;
    max-width: 375px;
    height: 100%;
    margin: 0 auto;
    padding: 4px;
    position: relative;
    display: block;
    box-sizing: border-box;
    background-repeat: no-repeat;
    background-image: url(/sp/st_img/chusen_img-8d507853d9e7cbb403410d6f409e8abb.png);
    background-position: 0;
    -webkit-background-size: 64px 64px;
    background-size: 64px 64px;
}

.chusenLink_btn:not(:hover) {
    box-shadow: 0 3px 0 #bd971f, 0 1px 0 rgba(255, 255, 255, 0.8) inset;
}

.kigen {
    border: 1px solid #ff0000;
    color: #ff0000;
    padding: 2px 32px;
    margin-left: 10px;
    border-radius: 3px;
    text-align: center;
    display: inline-block;
}

.to-sen {
    border: 1px solid #ff0000 !important;
    color: #ff0000 !important;
    margin-left: 7px !important;
}

.chusenMaininner .txt {
    font-weight: bold;
    color: #333;
    font-size: 14px;
}

.chusenMaininner strong {
    color: #f00;
}

.elm.no-link {
    background: #dfdfdf;
}

.elm.no-link p {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
}

.elm.no-link .lbl {
    opacity: 0.7;
}

@media screen and (max-width: 320px) {
    .chusenMaininner {
        max-width: 270px;
        padding-left: 50px;
        display: inline-block;
        text-align: center;
    }

    .chusenMaininner .main {
        font-size: 21px;
    }

    .chusenEnterbtn {
        border-radius: 0;
    }

    .chusenMaininner .txt {
        display: inline-block;
    }

    .chusenMaininner .sub {
        width: 88%;
        margin: 0 0 1px !important;
        padding: 1px;
        font-size: 12px;
        font-weight: bold;
        display: inline-block;
        text-align: center;
        color: #0090c7;
        border: 1px solid #0090c7;
        border-radius: 3px;
    }

    .chusenLink {
        width: 100%;
        max-width: 340px;
        height: 100%;
        margin: 0 auto;
        padding: 5px 0;
        position: relative;
        display: block;
        box-sizing: border-box;
        border-radius: 5px;
        background-color: #ffe858;
        background-image: url(/sp/st_img/chusen_img-8d507853d9e7cbb403410d6f409e8abb.png);
        background-repeat: no-repeat;
        background-position: 0 7px;
        -webkit-background-size: 50px 50px;
        background-size: 50px 50px;
    }
}

/* エリア版アイコン */
.menu_area .menu_top {
    border-bottom: none;
}

.menu_area .menu_top [class^='area_'] {
    max-width: 120px;
    height: 44px;
    margin: auto;
    position: relative;
    background-image: url(/sp/st_img/area_menu_icon-9529f1bb0e2b894040ca9c352b1273eb.png);
    background-repeat: no-repeat;
    -webkit-background-size: 60px 360px;
    background-size: 60px 360px;
}

.menu_area .area_ngo.health {
    background-position: 0 0;
}

.menu_area .area_ngo.deli {
    background-position: right -45px;
}

.menu_area .area_mkw {
    background-position: -4px -90px;
}

.menu_area .area_owr {
    background-position: 0 -135px;
}

.menu_area .area_gif {
    background-position: 0 -180px;
}

.menu_area .area_mie {
    background-position: 0 -225px;
}

.menu_area .area_szok {
    background-position: 0 -270px;
}

.menu_area .area_shiga {
    background-position: 0 -315px;
}

.menu_area .menu_top .lbl {
    position: absolute;
    bottom: 0;
    top: 0;
    margin: auto;
    display: block;
}

.menu_area:not(.menu_chusen) .menu_top .lbl {
    height: 18px;
    right: 2px;
}

@media screen and (min-width: 360px) {
    .menu_area:not(.menu_chusen) .menu_top .lbl {
        height: 20px;
    }

    .menu_area:not(.menu_chusen) .menu_top .lbl {
        right: 4px;
    }
}

@media screen and (min-width: 375px) {
    .menu_area:not(.menu_chusen) .menu_top .lbl {
        height: 22px;
    }

    .menu_area .menu_top [class^='area_'] {
        max-width: 130px;
    }
}

@media screen and (min-width: 480px) {
    .menu_area .menu_top .lbl {
        height: 25px;
    }
}

/* 風俗・デリヘルガイド用ミニサイズ */
.menu_area.mini .menu_top [class^='area_'] {
    height: 36px;
    -webkit-background-size: 50px 300px;
    background-size: 50px 300px;
}

.menu_area.mini .area_ngo.deli {
    background-position: right -38px;
}

.menu_area.mini .area_mkw {
    background-position: 0 -75px;
}

.menu_area.mini .area_owr {
    background-position: 0 -113px;
}

.menu_area.mini .area_gif {
    background-position: 0 -150px;
}

.menu_area.mini .area_mie {
    background-position: 0 -188px;
}

.menu_area.mini .area_szok {
    background-position: 0 -225px;
}

.menu_area.mini .area_shiga {
    background-position: 0 -263px;
}

.menu_area.mini .menu_top .lbl {
    margin: auto;
    top: 0;
    right: 2px;
}

/* 名古屋版用 店舗・デリの表示 */
.menu_area .menu_top .area_ngo.health,
.menu_area .menu_top .area_ngo.deli {
    max-width: 170px;
}

@media screen and (min-width: 375px) {
    .menu_area .menu_top .area_ngo.health,
    .menu_area .menu_top .area_ngo.deli {
        max-width: 184px;
    }
}

@media screen and (min-width: 480px) {
    .menu_area .menu_top .area_ngo.health,
    .menu_area .menu_top .area_ngo.deli {
        max-width: 200px;
    }
}

.menu_area .area_ngo.deli .lbl {
    right: auto;
    left: 2px;
}

/* 表示中のエリア版 */
.menu_area .elm.active,
.menu_area .active .link_topmenu:hover {
    border: 0 none;
}

.menu_area .active .link_topmenu {
    padding: 2px;
    border: 0 none;
    border-radius: 0;
    background: #ccc;
}

.menu_area .elm.active .lbl {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    opacity: 0.6;
}

/* ムービー
------------------------------------------------------------ */
.movieLinkbox li {
    margin: 0;
    padding: 0;
    border-top: 1px solid #cbcbcb;
    background: #fff url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png) no-repeat right center;
    -webkit-background-size: 19px 14px;
    background-size: 19px 14px;
}

.movieLinkbox li a {
    height: 28px;
    padding: 15px 25px 5px 30px;
    padding-top: 10px;
    font-size: 15px;
    font-weight: bold;
    display: block;
    color: #000b4f;
}

.movieLinkbox li .newgaido {
    font-size: 11px;
    font-weight: normal;
    color: #666;
}

.movieLinkbox li .newgaido {
    padding-left: 3px;
    font-size: 11px;
    font-weight: normal;
    color: #666;
}

.movieLinkbox li span.guidesmail {
    padding-left: 4px;
    font-size: 11px;
    font-weight: normal;
}

.movieLinkbox li span.YouTube {
    font-size: 10px;
}

.movieLinkbox li a.ygchannellink {
    background: url(../st_img/yg_channel.png) no-repeat 4px center;
    -webkit-background-size: 24px;
    background-size: 24px;
}

.movieLinkbox li a.movielink {
    background: url(/sp/st_img/icon_osusumemovie_big-fc98212323256e2d53636a96d4e3417b.png) no-repeat 4px center;
    -webkit-background-size: 25px;
    background-size: 25px;
}

/* ムービー
------------------------------------------------------------ */
/* P日記コンテスト */
.diary_contest {
    border-top: 1px solid #cccacb;
}

.menu_contest {
    border-top: 1px solid #ffebf4;
    border-bottom: 1px solid #f9bdd6;
    background: #fadce9 !important;
}

.menu_contest a {
    padding: 0 15px 0 10px;
    font-size: 16px;
    font-weight: bold;
    display: block;
    color: #000b4f;
    background: url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png) no-repeat scroll right center transparent;
    background-size: 19px 14px;
}

.menu_contest .guidemedium {
    padding: 9px 0;
    padding-left: 30px;
    display: block;
    background: url(/sp/st_img/menulist_pdiaryrank2-ad35bde738030d63fb92394a563d3a18.png) no-repeat left center;
    -webkit-background-size: 25px 25px;
    background-size: 25px 25px;
}

.diary_contest .p_contest_month {
    display: none;
    border-bottom: 1px solid #f6d4e2;
    background: #ffeff7;
}

.diary_contest .p_contest_month p {
    padding: 10px;
    font-size: 13px;
    font-weight: bold;
    text-align: center;
    color: #e1447b;
}

.diary_contest .p_contest_link {
    width: 100%;
    display: none;
    background: #ffeff7;
}

.p_contest_link ul {
    width: 100%;
    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-top: solid 1px #c0c0c0;
    border-bottom: solid 1px #c0c0c0;
}

.p_contest_link li a {
    height: 36px;
    padding: 0;
    font-size: 14px;
    display: block;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    color: #00034b;
    border: none;
    border-right: 1px solid #cbcbcb;
    border-right: 1px solid rgba(255, 255, 255, 0.5);
    -webkit-box-pack: center;
    -moz-box-pack: center;
    box-pack: center;
    text-shadow: 1px 1px 0 #fff;
    -webkit-box-align: center;
    -moz-box-align: center;
    box-align: center;
}

.p_contest_link li {
    margin: 0;
    padding: 0;
    /*  display:inline;*/
    font-size: 12px;
    font-weight: bold;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    border: none;
    border-left: solid 1px #c0c0c0;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -ms-flex: 1;
    box-flex: 1;
}

/* 女の子から調べる
------------------------------------------------------------ */
/* オキニを探そう --------------------- */
.box_okini-link .box_hl {
    width: 100%;
    height: 36px;
    padding: 0;
    background-color: #ff4141;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-align: start;
    -moz-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.box_okini-link .hl {
    padding-left: 10px;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    background: transparent;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
}

.box_okini-link .clist-column {
    width: 180px;
    margin-top: 4px;
    padding-right: 6px;
    font-size: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

@media screen and (min-width: 375px) {
    .box_okini-link .clist-column {
        width: 230px;
        font-size: 12px;
    }
}

.box_okini-link .clist-column .elm {
    height: 32px;
    margin-left: 2px;
    padding-top: 10px;
    line-height: 1em;
    position: relative;
    display: block;
    float: left;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    cursor: pointer;
    text-align: center;
    color: #666;
    border-width: 1px 1px 0;
    border-style: solid;
    border-color: #969696;
    border-radius: 4px 4px 0 0;
    background-color: #d5d5d5;
}

.box_okini-link .clist-column .elm:before {
    left: -7px;
    border-right: 1px solid #cb8ca7;
    border-bottom-right-radius: 8px;
}

/* 選択中 */
.box_okini-link .clist-column .active {
    padding-top: 10px;
    font-weight: bold;
    position: relative;
    border-bottom-color: #ff266f;
    background-color: #fff;
}

.box_okini-link .clist-column .fu.active {
    color: #ff4141;
}

.box_okini-link .clist-column .de.active {
    color: #1db8e2;
}

.box_okini-link .clist-column .pb.active {
    color: #2cc63b;
}

.box_okini-link .clist-column .active:before {
    width: 0;
    height: 0;
    margin-left: -6px;
    position: absolute;
    z-index: 1;
    bottom: -6px;
    left: 50%;
    display: block;
    content: '';
    border-width: 6px 6px 0 6px;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
}

.box_okini-link .clist-column .active:after {
    width: 0;
    height: 0;
    margin-left: -7px;
    position: absolute;
    z-index: 0;
    bottom: -7px;
    left: 50%;
    display: block;
    content: '';
    border-width: 7px 7px 0 7px;
    border-style: solid;
    border-color: #969696 transparent transparent transparent;
}

/* --------------------------------------- */
/* オキニ検索リンク */
.box_okini-link ul#okiniSearch {
    width: 100%;
    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-top: solid 1px #c0c0c0;
    border-bottom: solid 1px #c0c0c0;
}

.box_okini-link ul#okiniSearch li {
    margin: 0;
    padding: 0;
    font-size: 16px;
    font-weight: bold;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    border: none;
    border-left: solid 1px #c0c0c0;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    box-flex: 1;
}

.box_okini-link #okiniSearch.fu li {
    color: #ff5790;
    background: -webkit-gradient(linear, left top, left bottom, from(#fef7fa), color-stop(0.8, #f9cae0), to(#f9cae0));
    background: linear-gradient(to bottom, #fef7fa, #f9cae0 80%, #f9cae0);
}

.box_okini-link #okiniSearch.de li {
    color: #1bacd7;
    background: -webkit-gradient(linear, left top, left bottom, from(#f3fbfe), color-stop(0.8, #d5f1fa), to(#d5f1fa));
    background: linear-gradient(to bottom, #f3fbfe, #d5f1fa 80%, #d5f1fa);
}

.box_okini-link #okiniSearch.pb li {
    color: #0ab202;
    background: -webkit-gradient(linear, left top, left bottom, from(#fbfef3), color-stop(0.8, #ebf9ca), to(#ebf9ca));
    background: linear-gradient(to bottom, #fbfef3, #ebf9ca 80%, #ebf9ca);
}

.box_okini-link #okiniSearch.so li {
    color: #ff6e00;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(0.8, #ffd), to(#ffd));
    background: linear-gradient(to bottom, #fff, #ffd 80%, #ffd);
}

.p_contest_link li,
.box_okini-link ul#okiniSearch li {
    width: 33.33%;
}

.p_contest_link ul,
.p_contest_link li {
    border-top: none;
}

.p_contest_link li:first-child {
    border-left: none;
}

.p_contest_link li {
    border-left: solid 1px #c0c0c0;
}

.p_contest_link ul {
    border-top: none;
}

.box_okini-link ul#okiniSearch li:first-child {
    border-left: none;
}

.box_okini-link ul#okiniSearch a {
    height: 44px;
    padding: 0;
    display: block;
    color: inherit;
    border: none;
    text-shadow: 1px 1px 0 #fff;
    text-align: center;
    line-height: 44px;
}

#link_newface {
    margin: 0;
    text-align: left;
    border-bottom: 1px solid #cbcbcb;
}

#link_newface a,
#link_syukkin a {
    padding: 0 15px 0 10px;
    font-size: 16px;
    font-weight: bold;
    display: block;
    color: #000b4f;
    background: url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png) no-repeat right center;
    -webkit-background-size: 19px 14px;
    background-size: 19px 14px;
}

#link_newface span {
    padding: 12px 0;
    padding-left: 30px;
    display: block;
    background: url(../st_img/icon_newface.png) no-repeat left center;
    -webkit-background-size: 25px 25px;
    background-size: 25px 25px;
}

#link_syukkin span {
    padding: 12px 0;
    padding-left: 30px;
    display: block;
    background: url(../st_img/icon_sokuhou.png) no-repeat left center;
    -webkit-background-size: 24px 23px;
    background-size: 24px 23px;
}

/* 掲示板
------------------------------------------------------------ */
.linkbox li {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #b0b7cb;
    background: #fff url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png) no-repeat right center;
    -webkit-background-size: 19px 14px;
    background-size: 19px 14px;
}

div#bbs h3 span {
    top: 4px;
}

div#bbs h3 span a {
    color: #000;
}

/* フッターの外部サイトへのリンク
------------------------------------------------------------ */
.gaibu {
    margin: 20px 0 0;
    font-size: 14px;
}

.gaibu li {
    margin: 0 0 5px;
    text-align: center;
}

.gaibu a {
    color: #000b4f;
}

#footer p a.btnYorugai,
#footer p a.btnVip {
    color: #333;
}

/* ============================================================
  メニューリスト
============================================================ */
#menulist {
    position: relative;
    z-index: 9999;
    -webkit-transition: 500ms ease 0ms;
    transition: 250ms ease 0ms;
    -webkit-transform: translateY(500px);
    transform: translateY(500px);
    background: #fff;
}

#menulist .logo {
    margin-top: -10px;
    margin-right: 4px;
    margin-left: -4px;
}

#menulist a {
    color: #000b4f;
}

#menulist h2 {
    padding: 10px;
    font-size: 16px;
    font-weight: bold;
    position: relative;
    color: #fff;
    border-bottom: 1px solid #737a9b;
    background: -webkit-gradient(linear, left top, left bottom, from(#d0d3de), color-stop(0.49, #7c83a1), color-stop(0.51, #737a9b), to(#8e94af));
    background: linear-gradient(to bottom, #d0d3de, #7c83a1 49%, #737a9b 51%, #8e94af);
    text-shadow: 1px 1px 0 #383c4c;
}

#menulist h2 a span {
    width: 50px;
    font-size: 11px;
    font-weight: normal;
    line-height: 25px;
    position: absolute;
    top: 4px;
    right: 6px;
    display: inline-block;
    text-align: center;
    color: #333;
    border: 1px solid silver;
    border-radius: 3px;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(0.49, #f3f3f3), color-stop(0.5, #e8e8e8), to(#fafafa));
    background: linear-gradient(to bottom, #fff, #f3f3f3 49%, #e8e8e8 50%, #fafafa);
    -webkit-box-shadow: rgba(50, 50, 50, 0.8) 0 1px 1px;
    box-shadow: rgba(50, 50, 50, 0.8) 0 1px 1px;
    text-shadow: 1px 1px 0 #fff;
}

#menulist h3 {
    margin: 0;
    padding: 7px 10px;
    font-size: 14px;
    font-weight: bold;
    line-height: 14px;
    vertical-align: top;
    color: #fff;
    border: none;
    background: -webkit-gradient(linear, left top, left bottom, from(#fa6554), color-stop(0.5, #d62c1a), to(#d62c1a));
    background: linear-gradient(to bottom, #fa6554, #d62c1a 50%, #d62c1a);
    text-shadow: 1px 1px 0 #6b160d;
}

#menulist_guide {
    width: -moz-available;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: solid 1px #c0c0c0;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e6e6e6));
    background: linear-gradient(to bottom, #fff, #e6e6e6);
}

#menulist_guide li {
    width: 25%;
    /*  float:left;*/
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -ms-flex: 1;
    box-flex: 1;
}

#menulist_guide li a {
    padding: 10px 0;
    font-size: 14px;
    font-weight: bold;
    display: block;
    text-align: center;
}

.menulist_guide_pb li a {
    padding: 0 0 5px !important;
}

.ue li {
    border-right: solid 1px #c0c0c0;
    border-bottom: solid 1px #c0c0c0;
}

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

.sita li {
    border-right: solid 1px #c0c0c0;
}

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

#menulist_guide li.menulist_guide_fu a {
    color: #d62c1a;
}

/* 13.07.04 キャンパブ用 */
#menulist_guide li.menulist_guide_pb a {
    color: #3a7222;
}

#menulist_guide li.menulist_guide_de a {
    color: #048ed5;
}

#menulist_guide li.menulist_guide_ho a {
    color: #3434a2;
}

#menulist_guide li.menulist_guide_ca a {
    color: #ff75d4;
}

#menulist_sonota li {
    width: 50%;
    float: left;
}

#menulist_sonota li a {
    padding: 10px 0 10px 35px;
    font-size: 13px;
    line-height: 1.2;
    display: block;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

#menulist_sonota li.menulist_sonota_rank a {
    background: url(/sp/st_img/menulist_ranking-f278a6cd98210b32b83e1efcb71aba91.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

#menulist_sonota li.menulist_sonota_job a {
    background: url(/sp/st_img/menulist_job-a8c7a483295976697c4b6b2759c4f47c.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common.fbox {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
}

.menulist_common li {
    width: 50%;
    border-bottom: solid 1px #c0c0c0;
    flex: 1 0 auto;
}

.menulist_common li a {
    padding: 10px 5px 10px 35px;
    font-size: 14px;
    line-height: 1.2;
    display: block;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li {
    position: relative;
}

.menulist_common li ul.menulist_dropdown {
    position: absolute;
    z-index: 100;
    left: 0;
    border: solid 1px #c0c0c0;
    border-top: none;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(0.5, #ffffa6), to(#ffffa6));
    background: linear-gradient(to bottom, #fff, #ffffa6 50%, #ffffa6);
}

.menulist_common li ul.menulist_dropdown li {
    width: 100%;
    float: none;
}

.menulist_common li ul.menulist_dropdown li:last-child {
    border: none;
}

.menulist_common li ul.menulist_dropdown li:first-child {
    border-bottom: solid 1px #c0c0c0;
}

.menulist_common li ul.menulist_dropdown li a {
    padding: 10px 30px 10px 10px;
    font-size: 12px;
    background: url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png) no-repeat right center;
    -webkit-background-size: 19px 14px;
    background-size: 19px 14px;
}

#menulist .menulist_common li ul.menulist_dropdown li.hako a {
    color: #d62c1a;
}

/* 13.07.04 キャンパブ用 */
#menulist .menulist_common li ul.menulist_dropdown li.pub a {
    color: #3a7222;
}

#menulist .menulist_common li ul.menulist_dropdown li.de a {
    color: #048ed5;
}

.menulist_common li.menulist_girl_sugu a {
    background: url(/sp/st_img/menulist_sugu-956a0d992b54a5f05aab8e2a11acd2dd.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_girl_syukkin a {
    background: url(/sp/st_img/menulist_syukkin-f4e191e1a3c3fe00bec5e66f5469dd40.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_girl_pdiary a {
    background: url(/sp/st_img/menulist_pdiary-be8a954af20bf82fcde8cc2fad471659.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_girl_newface a {
    background: url(/sp/st_img/menulist_newface-57533d5cb013388edf8978f17b14d2b5.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_girl_newmovie a {
    background: url(/sp/st_img/menulist_newmovie-64354cf6d6ad36f8174f96a981820f94.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_girl_okini a {
    background: url(/sp/st_img/menulist_okini-61ad2d4e7c008afdc03091e3c2469c44.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_girl_pdiaryrank a {
    background: url(/sp/st_img/menulist_pdiaryrank-d6f0b64f64a4b9fcb8b2dabc5e7e7fe1.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_girl_osusume a {
    background: url(/sp/st_img/menulist_movie-a73d2245b87e356879968d2d5356de0a.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_girl_birthday a {
    background: url(/sp/st_img/menulist_birthday-c373ed7e825d8b964d8b3fbdd3cac662.png) no-repeat 4px 2px;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_shop_topics a {
    background: url(/sp/st_img/menulist_topics-0c323786b33c265ebcc160af732a5c1d.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_shop_kinkyu a {
    background: url(/sp/st_img/menulist_kinkyu-e0cb4d925be75fd12d174d86863dea37.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_shop_dx a {
    background: url(/sp/st_img/menulist_dx-95cfec55c39decaa7cb3fbb0eb3a30c7.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_shop_newshop a {
    background: url(/sp/st_img/menulist_newshop-db6c60c32ab0a992553711b0e22b0adc.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_shop_event a {
    background: url(/sp/st_img/menulist_event-8c8e366a6a27868fc282b77e4dbe3910.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_shop_news a {
    background: url(/sp/st_img/menulist_news-e838fcb007abd341ec542f78a66ca2ba.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_shop_osusume a {
    background: url(/sp/st_img/menulist_osusume-08ebdfe983c783cc7df2d83b2d83cd45.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

.menulist_common li.menulist_shop_otoku a {
    background: url(/sp/st_img/menulist_mail-588afbc0f12437dad032e4cf0b715bce.png) no-repeat 4px center;
    -webkit-background-size: 28px 28px;
    background-size: 28px 28px;
}

#menulist_bbs {
    width: -moz-available;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
}

#menulist_bbs li {
    width: 33%;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -ms-flex: 1;
    box-flex: 1;
}

#menulist_bbs li a {
    padding: 10px 0 10px 30px;
    font-size: 14px;
    line-height: 1.2;
    display: block;
}

#menulist_bbs li.menulist_bbs_taiken a {
    background: url(../st_img/icon_otoko.png) no-repeat 4px center;
}

#menulist_bbs li.menulist_bbs_kiite a {
    background: url(../st_img/icon_onna.png) no-repeat 4px center;
}

#menulist_bbs li.menulist_bbs_futomo a {
    background: url(../st_img/icon_smile.png) no-repeat 4px center;
}

/* ============================================================
  リスト
============================================================ */
/*
  共通用ショップ名・職種
------------------------------------------------------------- */
/* 店名 */
.menuCommonList .shopName {
    padding-left: 18px;
    font-size: 12px;
    color: #303030;
    background: url(/sp/st_img/icon_tenpo-f877633c1bb15c645eeffbf32622893b.png) no-repeat 1px center;
    -webkit-background-size: 12px 12px;
    background-size: 12px 12px;
}

/* 職種 */
.menuCommonList .shopType {
    margin: 0;
    font-size: 10px;
    display: inline-block;
    color: #667284;
}

/* アップ時間 */
.menuCommonList .msgUpdate {
    color: #667284;
}

/*
  共通用ショップ名・職種
------------------------------------------------------------- */
/*
  トピックス系のタブ切替
------------------------------------------------------------- */
/* タブ切替1重目 -------------------------------- */
#topics_menu {
    width: -moz-available;
    margin: 0;
    padding: 5px 5px 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    border-top: solid 1px #5a5a5a;
    border-bottom: solid 6px #ff4141;
    background: -webkit-gradient(linear, left top, left bottom, from(#a0a0a0), color-stop(0.45, #7f7f7f), color-stop(0.52, #676767), to(#828282));
    background: linear-gradient(to bottom, #a0a0a0, #7f7f7f 30%, #676767 70%, #828282);
}

#topics_menu li {
    width: 33%;
    margin-bottom: -1px;
    font-size: 14px;
    line-height: 16px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -ms-flex: 1;
    box-flex: 1;
}

#topics_menu li:last-child {
    border-right: none;
}

#topics_menu li a {
    width: 100%;
    margin: 0;
    padding: 8px 0 5px;
    font-weight: bold;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    vertical-align: middle;
    color: #fff;
}

#topics_menu li.current a {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    background: #ff4141;
}

#topics_menu li a span {
    line-height: 32px;
    vertical-align: middle;
}

/*
  夜ガイニュース
------------------------------------------------------------- */
#soupList dl,
#listYorugaitopics dl,
#otokuList dl,
#menuPdiaryList dl {
    display: flex;
}

#soupList dt,
#listYorugaitopics dt,
#otokuList dt,
#menuPdiaryList dt {
    width: 60px;
    height: 80px;
    border: 1px solid #ccc;
    flex: 0 0 auto;
}

#soupList dd,
#listYorugaitopics dd,
#otokuList dd,
#menuPdiaryList dd,
#otokuList dd {
    min-width: 0;
    flex: 1 1 auto;
}

#soupList dt p,
#listYorugaitopics dt p,
#otokuList dt p,
#menuPdiaryList dt p {
    width: 50px;
    height: 70px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    border: 1px solid #ccc;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    box-pack: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    box-align: center;
}

#soupList dt div,
#listYorugaitopics dt div,
#otokuList dt div,
#menuPdiaryList dt div {
    width: 60px;
    height: 80px;
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

#soupList dt img,
#listYorugaitopics dt img,
#otokuList dt img,
#menuPdiaryList dt img {
    max-width: 60px;
    max-height: 80px;
    display: inline;
}

#listYorugaitopics .date {
    font-size: 11px;
    color: #666;
}

#listYorugaitopics .topicsTitle {
    color: #0080de;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

/*
  ソープリポート
------------------------------------------------------------- */
#soupList .date,
#otokuList .date {
    font-size: 11px;
    color: #666;
}

/* 新着日記 --------------------------- */
/* 女の子名 */
#menuPdiaryList .name {
    margin: 0;
    padding-left: 18px;
    font-size: 14px;
    display: block;
    color: #800;
    background: url(/sp/st_img/icon_girl-0f3b233713840c09db4caf8d1e38ad73.png) no-repeat 1px center;
    -webkit-background-size: 13px 13px;
    background-size: 13px 13px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

#menuPdiaryList .diaryTitle {
    padding-left: 20px;
    font-size: 16px;
    color: #0080de;
    background: url(/sp/st_img/icon_write2-b92a132115cc4dbd41de6cb2027f5170.png) no-repeat 1px center;
}

#menuPdiaryList .date {
    margin-right: 10px;
    font-size: 12px;
    font-weight: normal;
    text-decoration: none;
    color: #40a940;
}

/*
  ランキングBOX
------------------------------------------------------------- */
.monthrankinglist.rankinggirl .shopname {
    padding-left: 17px;
    font-size: 14px;
    display: inline-block;
    color: #303030;
    background: url(/sp/st_img/icon_tenpo-f877633c1bb15c645eeffbf32622893b.png) no-repeat left 0.3em;
    -webkit-background-size: 14px 14px;
    background-size: 14px 14px;
}

.rankingBoxTitle {
    font-weight: bold;
    border-top: solid 1px #f984bc;
    background: #fadce9;
}

.rankingBoxTitle a {
    min-height: 36px;
    padding: 0 5px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    color: #333;
    -webkit-box-align: center;
    -moz-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.rankingBoxTitle a span.rankingTitle {
    display: block;
    padding: 6px 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.rankingBoxTitle a span.rankingMore {
    width: 70px;
    padding-right: 10px;
    font-size: 12px;
    font-weight: normal;
    text-align: right;
    color: #4d4d4d;
    background: url(/sp/st_img/cur_list01-8e57eb0b510dddce23b46283db3aa89d.png) no-repeat right center;
    -webkit-background-size: 7px 11px;
    background-size: 7px 11px;
    -webkit-box-flex: 0;
    -moz-box-flex: 0;
    -webkit-flex: 0 0 70px;
    -ms-flex: 0 0 70px;
    flex: 0 0 70px;
}

.monthrankinglist dl dt {
    width: 66px;
    height: 88px;
    margin-right: 4px;
    position: relative;
    float: left;
    border: 1px solid #ccc;
}

.monthrankinglist dl dt div {
    width: 66px;
    height: 88px;
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

.monthrankinglist dl dt img {
    width: auto;
    max-width: 66px;
    max-height: 88px;
    top: 0;
    display: inline;
}

/* --------------------------------------- */
.rankingBoxTitle + .list_ranking.shop-list {
    border-top: 1px solid #c6c6c6;
}

.list_ranking .txt_rank::after {
    background-position: 16px;
}

.menu_box .list_ranking.shop-list .shopName {
    font-size: 16px;
    color: #000;
}

.menu_box .list_ranking.shop-list .txt_rank,
.menu_box .list_ranking.shop-list .num {
    font-size: 18px;
    font-weight: bold;
}

/* --------------------------------------- */
/* よるチケ枠 */
.box_yorutike {
    padding: 0 2px;
}

.yorutike_link {
    display: block;
    max-width: 480px;
    color: #333;
    margin: 0 auto 10px;
    background-color: #fff;
    border: 2px solid #855896;
    border-radius: 6px;
    position: relative;
}

.box_yorutike .yorutike_inner {
    overflow: hidden;
}

.yorutike_logo {
    float: left;
    width: 50px;
    margin-top: 4px;
    margin-right: 8px;
    margin-left: 4px;
}

@media screen and (max-width: 320px) {
    .yorutike_logo {
        width: 40px;
        margin-top: 6px;
    }
}

.yorutike_info {
    font-size: 12px;
    color: #fff;
    padding: 2px 2px 4px;
    background-color: #855896;
    line-height: 1em;
}

.box_yorutike .icon_card {
    height: 13px;
    margin: 0 2px;
    vertical-align: bottom;
}

.box_yorutike .main_title {
    font-size: 14px;
    height: 42px;
    line-height: 42px;
}

.box_yorutike .sitename {
    font-size: 16px;
}

/* --------------------------------------- */
/* 販売中のよるチケ */
#yorutike-coupon-widget {
    overflow: auto;
    display: block !important;
}

.box_yorutike .available {
    font-size: 12px;
    color: #000;
    position: relative;
    padding: 6px 22px 6px 6px;
    border-top: 1px dashed #855896;
}

#yorutike-coupon-widget:empty::after,
.box_yorutike .available::after {
    position: absolute;
    top: 0;
    right: 4px;
    bottom: 0;
    display: block;
    height: 1em;
    font-family: 'icomoon';
    font-size: 16px;
    font-weight: normal;
    line-height: 1em;
    color: #855896;
    margin: auto 0;
    opacity: 0.7;
    content: '\e904';
}

#yorutike-coupon-widget:empty::after {
    top: 30px;
    bottom: auto;
}

.box_yorutike .clist_general .box_image {
    position: relative;
    width: 107px;
    height: 73px;
    margin-right: 6px;
    background-color: #ccc;
    border: 1px solid #ccc;
}

.box_yorutike .available .msg {
    font-weight: bold;
    color: #0080de;
    margin-top: 2px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.box_yorutike .available del {
    font-size: 0.9em;
}

.box_yorutike .available .num {
    font-size: 1.2em;
    font-weight: bold;
    color: #df3447;
    margin-right: 1px;
}

/* ネットでキャッチ */
#appealJOB li.necatch {
    background: url(../st_img/icon_ne_catch_caba.png) no-repeat 1px center;
    -webkit-background-size: 40px 40px;
    background-size: 40px 40px;
}

/*緊急メッセージ*/
#kinkyuList .msgTxt {
    margin-bottom: 0;
}

#kinkyuList .centerThumbnail dl dt {
    width: 60px;
    height: 80px;
}

#kinkyuList .centerThumbnail dl dt img {
    max-width: 60px;
    max-height: 80px;
}

#kinkyuList .shopName {
    padding-left: 18px;
    font-size: 12px;
    color: #303030;
    background: url(/sp/st_img/icon_tenpo-f877633c1bb15c645eeffbf32622893b.png) no-repeat 1px center;
    -webkit-background-size: 12px 12px;
    background-size: 12px 12px;
}

#kinkyuList .shopType {
    margin: 0;
    font-size: 10px;
    display: inline-block;
    color: #667284;
}

#kinkyuList.commonList01 dl dt {
    width: 60px;
    height: 80px;
}

#kinkyuList.commonList01 dl dt img {
    max-width: 60px;
    max-height: 80px;
}

/* picup */
li.pickup,
li.pickup_small {
    border: 4px #f00 solid !important;
    background-color: #ffd;
}

li.pickup a:after {
    width: 54px;
    height: 40px;
    position: absolute;
    top: -4px;
    left: -4px;
    display: block;
    content: ' ';
    background: url(/sp/st_img/icon_pickup-daa8fc2f40703c61776e901ba9930227.png) no-repeat top left scroll;
    -webkit-background-size: 54px 40px;
    background-size: 54px 40px;
}

li.pickup_small a:after {
    width: 100%;
    height: 40px;
    position: absolute;
    top: -4px;
    left: -4px;
    display: block;
    content: ' ';
    background: url(/sp/st_img/icon_pickup-daa8fc2f40703c61776e901ba9930227.png) no-repeat top left scroll;
    -webkit-background-size: 44px;
    background-size: 44px;
}

li.pickup a,
li.pickup_small a {
    padding: 0 22px 0 0;
    background: url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png) no-repeat -webkit-calc(100% + 3px) 50%, 0 0;
    background: url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png) no-repeat calc(100% + 3px) 50%, 0 0;
    -webkit-background-size: 19px 14px;
    background-size: 19px 14px;
}

li.pickup_small:last-child {
    border-bottom: 4px #f00 solid;
}

li.pickup_small span.msgUpdate {
    margin-left: 26px;
}

p.msgTxt {
    font-size: 16px !important;
}

/* clear
----------------------------------------------------*/
.fbox:after {
    height: 0;
    line-height: 0;
    display: block;
    visibility: hidden;
    clear: both;
    content: '.';
}

.fbox {
    min-height: 1%;
}

#birthday {
    padding: 0 15px 0 10px;
    font-size: 16px;
    font-weight: bold;
    display: block;
    color: #000b4f;
    background: url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png) no-repeat right center;
    -webkit-background-size: 19px 14px;
    background-size: 19px 14px;
}

#birthday span {
    padding: 12px 0;
    padding-left: 30px;
    display: block;
    background: url(../st_img/icon_birthday.png) no-repeat left center;
    -webkit-background-size: 25px 25px;
    background-size: 25px 25px;
}

/* --------------------------------------- */
/* メニューリストヘッダ色 */
.fu #menulist h2 {
    border-bottom: 1px solid #b65b5b;
    background: -webkit-gradient(linear, left top, left bottom, from(#ffbcbc), color-stop(0.49, #ff7a7a), color-stop(0.51, #f44), to(#ff7b7b));
    background: linear-gradient(to bottom, #ffbcbc, #f44 51%, #ff7b7b);
}

.de #menulist h2 {
    padding: 10px;
    border-bottom: 1px solid #737a9b;
    background: -webkit-gradient(linear, left top, left bottom, from(#71caf3), color-stop(0.49, #028bd2), color-stop(0.51, #0691d8), to(#17acf3));
    background: linear-gradient(to bottom, #71caf3, #028bd2 49%, #0691d8 51%, #17acf3);
}

.pb #menulist h2 {
    padding: 10px;
    border-bottom: 1px solid #0ab202;
    background: -webkit-gradient(linear, left top, left bottom, from(#57ef41), color-stop(0.49, #0ab202), color-stop(0.51, #0ab202), to(#0ab202));
    background: linear-gradient(to bottom, #57ef41, #0ab202 49%, #0ab202 51%, #0ab202);
}

.de #menulist h3 {
    background: -webkit-gradient(linear, left top, left bottom, from(#41c5ee), color-stop(0.5, #1bacd7), to(#1aabd6));
    background: linear-gradient(to bottom, #41c5ee, #1bacd7 50%, #1aabd6);
    text-shadow: 1px 1px 0 #0d216b;
}

.pb #menulist h3 {
    background: -webkit-gradient(linear, left top, left bottom, from(#57ef41), color-stop(0.5, #0ab202), to(#0ab202));
    background: linear-gradient(to bottom, #57ef41, #0ab202 50%, #0ab202);
    text-shadow: 1px 1px 0 #0d216b;
}

.so #menulist h2 {
    border-bottom: 0 none;
    background: -webkit-gradient(linear, left top, left bottom, from(#ffa642), to(#f60));
    background: linear-gradient(to bottom, #ffa642, #f60);
}

.so #menulist h3 {
    background: #ff8d42;
}

/* Hides from IE-mac \*/
* html .fbox {
    height: 1%;
}

.fbox {
    display: block;
}

/* End hide from IE-mac */
#newmovie dl dt span img {
    max-width: 80px;
    max-height: 53px;
}

/* --------------------------------------- */
/* ホテヘル道案内 */
.girl_menu {
    width: 100%;
}

.girl_menu .hotehel-guide {
    padding: 8px;
    display: block;
    text-align: center;
    border: 2px solid red;
    background-image: url(../st_img/new_ribbon.png);
    background-repeat: no-repeat;
    background-position: top left;
    -webkit-background-size: 42px 39px;
    background-size: 42px 39px;
}

.girl_menu .hotehel-guide p {
    height: 30px;
    padding: 0 4px 0 34px;
    font-size: 16px;
    font-weight: bold;
    display: inline-block;
    box-sizing: border-box;
    color: #030b5e;
    background-image: url(../st_img/fuzoku/menulist_hotehel.png);
    background-repeat: no-repeat;
    background-position: left top;
    -webkit-background-size: 40px 30px;
    background-size: 40px 30px;
}

.girl_menu .hotehel-guide span {
    padding: 0;
    font-size: 11px;
    font-weight: bold;
    display: inline-block;
    color: #f82279;
}

.girl_menu li .hotehel-guide span {
    padding: 0;
    display: inline-block;
    color: #f82279;
}

/* --------------------------------------- */
#menu .icon_menu_guide img {
    margin: -2px 0;
}

#menu .icon_menu_guide span {
    margin: -5px 0;
    padding: 5px;
    display: block;
}

#menu .guide_menu li a {
    padding: 0;
}

.fu div.kwsearchBox div.wo_input_cell,
.pb div.kwsearchBox div.wo_input_cell,
.de div.kwsearchBox div.wo_input_cell,
.so div.kwsearchBox div.wo_input_cell {
    padding: 6px 0 6px 2px;
    background: none;
}

.fu .menu_contest a,
.de .menu_contest a,
.pb .menu_contest a {
    background: url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png) no-repeat right center;
    -webkit-background-size: 19px 14px;
    background-size: 19px 14px;
}

.loader_image {
    margin-top: 50%;
    position: relative;
    top: -5px;
}

/* ボウリング大会 */
.box_ygproject {
    background-color: #008cff;
    background-image: url(../st_img/smile.png);
    background-repeat: no-repeat;
    background-position: 6px 7px;
    background-size: 28px 28px;
}

.box_ygproject a {
    padding: 10px 26px 9px 40px;
    font-weight: bold;
    display: block;
    color: #fff;
    background: url(/sp/st_img/cur_white-8f6e75043af6609642bc223b8d9c2e5b.png) no-repeat right center;
    -webkit-background-size: 19px 14px;
    background-size: 19px 14px;
}

.box_ygproject .new {
    padding: 4px 8px;
    font-size: 12px;
    line-height: 1em;
    display: inline-block;
    vertical-align: text-bottom;
    border-radius: 4px;
    background-color: #ff0026;
}

/* --------------------------------------- */
/* 2015.08 新TOP */
/* --------------------------------------- */
/* ヘッダ */
.menu_header#header {
    height: 42px;
    padding: 4px;
    background: #fff;
}

.box_number,
.menu_header .logo {
    width: 70%;
    width: calc(100% - 92px);
}

.menu_header .logo > img {
    width: 100%;
    max-width: 205px;
}

.h_menu {
    width: 92px;
    float: right;
}

.btn_head {
    width: 40px;
    height: 40px;
    margin-left: 4px;
    font-size: 10px;
    float: left;
    overflow: hidden;
    white-space: nowrap;
    text-indent: 100%;
    border-radius: 6px;
    border: 1px solid #1e2794;
}

.btn_head > [class^='link_'] {
    width: 100%;
    height: 100%;
    display: block;
    background-image: url(/sp/st_img/btn_head_indigo-3d77af3b151521570ef563aae93d72c4.png);
    background-repeat: no-repeat;
    -webkit-background-size: 80px 40px;
    background-size: 80px 40px;
}

.btn_head .link_mypage {
    background-position: 0 0;
}

.btn_head .link_opmenu {
    background-position: -40px 0;
}

/* 会員メッセージ */
.box_msg {
    height: 22px;
    font-size: 12px;
    position: relative;
    overflow: hidden;
    text-align: left;
}

.box_msg p {
    position: absolute;
    top: 4px;
    left: 2px;
    display: inline-block;
    white-space: nowrap;
}

.box_msg .username {
    margin-right: 1px;
    font-weight: bold;
    color: #f30;
}

/* --------------------------------------- */
/* 検索ボックス */
.box_tglsearch {
    padding: 4px 5px;
    background-color: #444;
}

/* レイアウト */
.box_tglsearch .flxbox {
    margin-bottom: 1px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    overflow: hidden;
    border-radius: 6px;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-align: start;
    -moz-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.box_tglsearch [class^='inner'] {
    box-sizing: border-box;
}

.box_tglsearch .inner_txb {
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1 0 100px;
    -ms-flex: 1 0 100px;
    flex: 1 0 100px;
}

/* フォーム部品の見た目 */
.box_tglsearch .inner_btn {
    -webkit-box-flex: 0;
    -moz-box-flex: 0;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
}

.box_tglsearch .txb_search,
.box_tglsearch .btn_search {
    height: 36px;
    padding: 0;
    box-sizing: border-box;
    border: 0 none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
}

/* アイコンの画像指定 */
.box_tglsearch .inner_rd [class^='tgl_'],
.box_tglsearch .btn_search {
    overflow: hidden;
    cursor: pointer;
    white-space: nowrap;
    text-indent: 100%;
    background-image: url(/sp/st_img/icon_search_new-5b11c77e79a984c99305c0a905874e45.png);
    background-repeat: no-repeat;
}

/* トグルボタン */
.box_tglsearch .inner_rd {
    width: 70px;
    height: 36px;
    background-color: #fff;
    box-shadow: none;
    -webkit-box-flex: 0;
    -moz-box-flex: 0;
    -ms-flex: 0 0 70px;
    -webkit-flex: 0 0 70px;
    flex: 0 0 70px;
}

.box_tglsearch .inner_rd [class^='tgl_'] {
    width: 35px;
    height: 100%;
    font-size: 8px;
    line-height: 1;
    display: inline-block;
    text-align: center;
    opacity: 0.75;
    color: #555;
    background-color: #999;
    -webkit-background-size: 28px 110px;
    background-size: 28px 110px;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    float: left;
}

.box_tglsearch .inner_rd .active {
    opacity: 1;
    color: #ef2658;
    background-color: #ffdbed;
}

.box_tglsearch .inner_rd .tgl_shop {
    background-position: center 3px;
}

.box_tglsearch .inner_rd .tgl_item {
    background-position: center -38px;
}

/* テキスト入力欄 */
.box_tglsearch .txb_search {
    width: 100%;
    padding: 2px 6px;
    font-size: 16px;
    line-height: 32px;
    vertical-align: middle;
}

/* 検索ボタン */
.box_tglsearch .btn_search {
    width: 45px;
    background-color: #26d0f2;
    background-position: center -64px;
    -webkit-background-size: 24px 94px;
    background-size: 24px 94px;
}

/* --------------------------------------- */
/* 分割BOX */
.list_trichotomy,
.list_quadrant {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-align: stretch;
    -moz-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.list_quadrant .elm {
    width: auto;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
}

/* --------------------------------------- */
/* 各ガイドリンク */
.menu_top {
    border-bottom: 1px solid #ccc;
    background-color: #ccc;
}

.menu_top .elm {
    font-size: 12px;
    text-align: center;
    border-left: 1px solid #ccc;
}

.menu_top .elm:first-child:nth-last-child(4),
.menu_top .elm:first-child:nth-last-child(4) ~ .elm {
    width: 25%;
}

.menu_top .elm:first-child:nth-last-child(3),
.menu_top .elm:first-child:nth-last-child(3) ~ .elm {
    width: 33.3%;
}

.menu_top .link_topmenu {
    font-weight: bold;
    display: block;
    white-space: nowrap;
    color: #403f41;
    border-top: 2px solid #fff;
    border-right: 1px solid #b6b6b6;
    border-bottom: 1px solid #b6b6b6;
    border-left: 2px solid #fff;
    border-radius: 3px;
    background: -webkit-gradient(linear, left top, left bottom, from(#f2f2f2), color-stop(0.5, #fff), color-stop(0.6, #fff), to(#f2f2f2));
    background: linear-gradient(to bottom, #f2f2f2, #fff 50%, #fff 60%, #f2f2f2);
}

.menu_top .link_topmenu:hover {
    border-top: 1px solid #b6b6b6;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    border-left: 1px solid #ccc;
}

.menu_top .link_topmenu [class^='menu_'] {
    display: block;
    width: 60px;
    height: 40px;
    margin: 0 auto 2px;
    background-image: url(/sp/st_img/menu_icon-d430ac999180bf44fed4f28be9c9503d.png?v=1343);
    background-repeat: no-repeat;
    background-size: 60px 160px;
}

.menu_top .link_topmenu .menu_fu {
    background-position: 0 0;
}

.menu_top .link_topmenu .menu_de {
    background-position: 0 -40px;
}

.menu_top .link_topmenu .menu_so {
    background-position: 0 -80px;
}

.menu_top .link_topmenu .menu_menes {
    background-position: 0 -120px;
}

/* その他 */
.menu_top.box_other-guide .arrow_icon {
    display: block;
    font-size: 14px;
    font-weight: bold;
    color: #000b4f;
    padding: 10px;
    background: linear-gradient(to bottom, #f2f2f2, #fff 50%, #fff 60%, #f2f2f2);
    border-radius: 2px;
}

.menu_top.box_other-guide .arrow_icon .txt_small {
    font-size: 10px;
    font-weight: normal;
}

.link_announce .campain_enter {
    width: auto;
    margin: 3px -5px;
    padding: 5px 5px 0;
    border-top: 1px solid #ccc;
}

/* ホテヘル */
.k .menu_top .link_topmenu {
    height: 82px;
    line-height: 1.1em;
}

.k .menu_top .link_topmenu [class^='menu_'] {
    height: 64px;
    background-image: url(../st_img/menu_icon_k.png);
    -webkit-background-size: 180px 60px;
    background-size: 180px 60px;
}

.k .menu_top .link_topmenu .menu_fu {
    height: 54px;
}

/* --------------------------------------- */
/* コンテンツメニュー */
.bg-white {
    background-color: #fff;
}

.menu_contents {
    max-width: 414px;
    margin: 0 auto;
    padding: 0 6px;
    text-align: center;
}

.menu_contents .link_menu02 {
    max-width: 200px;
    padding: 6px 2px 2px;
    font-size: 10px;
    font-weight: bold;
    display: block;
    color: #000;
}

/* 3つボタン時文字サイズ */
.so .menu_contents .link_menu02,
.szok .menu_contents .link_menu02 {
    font-size: 14px;
}

.menu_contents .link_menu02 > p {
    width: 60px;
    height: 60px;
    margin: 0 auto 3px;
    border-radius: 10px;
    background: -webkit-gradient(linear, left top, left bottom, from(#ff428d), to(#e21b53));
    background: linear-gradient(to bottom, #ff428d, #e21b53);
    box-shadow: 0 2px 0 #6d6064;
}

/* 色指定：デリヘルガイド */
.de .menu_contents .link_menu02 > p {
    background: -webkit-gradient(linear, left top, left bottom, from(#42a3ed), to(#135bc6));
    background: linear-gradient(to bottom, #42a3ed, #135bc6);
    box-shadow: 0 2px 0 #092c5e;
}

/* 色指定：キャンパブガイド */
.pb .menu_contents .link_menu02 > p {
    background: -webkit-gradient(linear, left top, left bottom, from(#42ed48), to(#20a324));
    background: linear-gradient(to bottom, #42ed48, #20a324);
    box-shadow: 0 2px 0 #4e5b4e;
}

/* 色指定：ソープガイド */
.so .menu_contents .link_menu02 > p {
    width: 90px;
    background: -webkit-gradient(linear, left top, left bottom, from(#ff8d42), to(#ff6442));
    background: linear-gradient(to bottom, #ff8d42, #ff6442);
}

.menu_contents .link_menu02:hover > p {
    -webkit-transform: translate3d(0, 2px, 0);
    transform: translate3d(0, 2px, 0);
    box-shadow: none;
}

/* 3つボタン時　サイズ */
.szok .menu_contents .link_menu02 > p {
    width: 90px;
}

/* アイコン */
.menu_contents [class^='menu02_'] {
    width: 60px;
    height: 60px;
    margin: 0 auto;
    display: block;
    background-image: url(/sp/st_img/menu-icon_02-dc94b400fe26fe10b7bc8dc5a6ef9b06.png?v=981);
    background-repeat: no-repeat;
    -webkit-background-size: 60px 240px;
    background-size: 60px 240px;
}

/* 画像位置：ランキング */
.menu_contents .link_menu02 .menu02_ranking {
    background-position: center 0;
}

/* 画像位置：おすすめ店 */
.menu_contents .link_menu02 .menu02_osusume {
    background-position: center -60px;
}

/* 画像位置：新着日記 */
.menu_contents .link_menu02 .menu02_diary {
    background-position: center -120px;
}

/* 画像位置：HP-DX店 */
.menu_contents .link_menu02 .menu02_dx {
    background-position: center -180px;
}

/* ソープ用：イベント開催店 */
.menu_contents .link_menu02 .menu02_event {
    background-image: url(/sp/st_img/sub_menu1-e0999d07daf693d27583939cd96276c9.png);
    background-size: 50px;
    background-position: center;
}

/* 口コミ */
.menu_contents .link_menu02 .menu02_review {
    background-image: url(/sp/st_img/sub_menu_review-fbcad370e43148c609b25bd3a352c989.png);
    background-size: 50px;
    background-position: center;
}

/* 新着店 */
.menu_contents .link_menu02 .menu02_new {
    background-image: url(/sp/st_img/menu-icon_new-50311fbb36a59b129fbfb05fc0a39480.png?v=1310);
    background-size: 60px;
    background-position: center;
}

/* --------------------------------------- */
/* 掲載店舗 */
.box_number {
    height: 40px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    float: left;
    box-sizing: border-box;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -moz-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

/* ロゴ小 */
.logo_mini {
    height: 46px;
    -webkit-box-flex: 0;
    -moz-box-flex: 0;
    -webkit-flex: 0 0 46px;
    -ms-flex: 0 0 46px;
    flex: 0 0 46px;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
}

.logo_mini > img {
    width: 44px;
}

/* 掲載数 */
.box_number .number {
    margin-left: 4px;
    font-size: 14px;
    text-align: left;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
}

.box_number .number #shop {
    margin-top: 2px;
    margin-right: 4px;
    padding-left: 23px;
    display: inline-block;
    background: url(/sp/st_img/icon_tenpo-f877633c1bb15c645eeffbf32622893b.png) no-repeat top left;
    -webkit-background-size: 16px 16px;
    background-size: 16px 16px;
}

.box_number .number #girl {
    margin-top: 2px;
    padding-left: 23px;
    display: inline-block;
    background: url(/sp/st_img/icon_girl-0f3b233713840c09db4caf8d1e38ad73.png) no-repeat top left;
    -webkit-background-size: 16px 16px;
    background-size: 16px 16px;
}

.box_number .number .red {
    color: #dc0039;
}

/* --------------------------------------- */
/* 見出し */
.de .menu_box h3 {
    background-color: #1db8e2;
}

.pb .menu_box h3 {
    background-color: #0ab202;
}

.so .menu_box h3 {
    background: #ff8d42;
}

.local .menu_box h3 {
    background: #ff4141;
}

/* タブ */
.de #topics_menu {
    border-top: solid 1px #5a5a5a;
    border-bottom: solid 6px #1db8e2;
}

.de #topics_menu li.current a {
    background-color: #1db8e2;
}

.pb #topics_menu {
    border-top: solid 1px #5a5a5a;
    border-bottom: solid 6px #0ab202;
}

.pb #topics_menu li.current a {
    background-color: #0ab202;
}

/* ランキング見出し */
.de .rankingBoxTitle {
    border-top: solid 1px #caf9e9;
    background: #f5fefc;
}

.pb .rankingBoxTitle {
    font-weight: bold;
    border-top: solid 1px #d7f984;
    background: #f0fadc;
}

.so #topics_menu {
    background: #5a5a5a;
}

.so #topics_menu li.current a {
    background-color: #ff8d42;
}

.so #topics_menu {
    border-bottom: solid 6px #ff8d42;
}

.so .rankingBoxTitle {
    border-top-color: #f4a550;
    background-color: #fffddb;
}

/* --------------------------------------- */
/* 各ガイドTOP用 */
.box_mainmenu {
    padding: 0 2px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    background-color: #fff;
}

.box_mainmenu p {
    padding: 4px 2px 6px;
    box-sizing: border-box;
}

.box_mainmenu p > a {
    width: 100%;
    height: 56px;
    font-weight: bold;
    display: block;
    box-sizing: border-box;
    text-align: center;
    border-radius: 6px;
    box-shadow: 0 3px #555;
}

.box_mainmenu p > a:hover {
    -webkit-transform: translate3d(0, 3px, 0);
    transform: translate3d(0, 3px, 0);
    box-shadow: none;
}

/* お店検索 */
.box_mainmenu .prg_shopsearch {
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -ms-flex: 1 0 auto;
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto;
}

.box_mainmenu .link_btn {
    padding: 8px;
    font-size: 10px;
    color: #000;
}

.fu .box_mainmenu .link_btn {
    background-color: #39d3ff;
}

.fu .box_mainmenu .prg_shopsearch .link_btn {
    background: -webkit-gradient(linear, left top, left bottom, from(#39d3ff), to(#0688ff));
    background: linear-gradient(to bottom, #39d3ff, #0688ff);
}

.de .box_mainmenu .link_btn {
    background-color: #fea43c;
}

.de .box_mainmenu .prg_shopsearch .link_btn {
    background: -webkit-gradient(linear, left top, left bottom, from(#fea43c), to(#ff7d00));
    background: linear-gradient(to bottom, #fea43c, #ff7d00);
}

.pb .box_mainmenu .prg_shopsearch .link_btn {
    background: -webkit-gradient(linear, left top, left bottom, from(#42ed48), to(#20a324));
    background: linear-gradient(to bottom, #42ed48, #20a324);
}

.pb .box_mainmenu .link_btn {
    background-color: #0ab202;
}

.box_mainmenu .prg_shopsearch span {
    margin-bottom: 4px;
    display: block;
}

.box_mainmenu .prg_shopsearch img {
    width: 100%;
    max-width: 162px;
}

/* イベント開催店 */
.box_mainmenu .prg_event {
    max-width: 220px;
    -webkit-box-flex: 0;
    -moz-box-flex: 0;
    -ms-flex: 0 0 40%;
    -webkit-flex: 0 0 40%;
    flex: 0 0 40%;
}

.box_mainmenu .prg_event .link_btn {
    padding-top: 16px;
    padding-left: 40px;
    font-size: 18px;
    line-height: 1.4em;
    color: #fff;
    background-image: url(/sp/st_img/sub_menu1-e0999d07daf693d27583939cd96276c9.png);
    background-repeat: no-repeat;
    background-position: 10px center;
    background-size: 40px 40px;
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.6);
}

@media screen and (max-width: 460px) {
    .box_mainmenu .prg_event {
        max-width: 120px;
    }

    .box_mainmenu .prg_event .link_btn {
        padding-top: 8px;
        font-size: 14px;
        background-position: 5px center;
    }

    .box_mainmenu .prg_event span {
        display: block;
    }
}

/* --------------------------------------- */
/* サブメニュー２ */
.menu_girl {
    margin: 0 6px 6px;
}

.menu_girl .elm {
    width: 50%;
    margin: 2px 2px 6px;
    padding: 4px;
    font-size: 14px;
    box-sizing: border-box;
    text-align: left;
    border-radius: 3px;
    background-color: #fff;
    box-shadow: 0 3px 0 #6d6d6d;
}

.menu_girl .elm:hover {
    -webkit-transform: translate3d(0, 3px, 0);
    transform: translate3d(0, 3px, 0);
    box-shadow: none;
}

/* --------------------------------------- */
.marquee {
    padding-left: 100%;
    -webkit-animation-name: marquee;
    -moz-animation-name: marquee;
    -ms-animation-name: marquee;
    -webkit-animation-duration: 12s;
    -moz-animation-duration: 12s;
    -ms-animation-duration: 12s;
    animation-duration: 12s;
    -webkit-animation-timing-function: linear;
    -moz-animation-timing-function: linear;
    -ms-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    -moz-animation-iteration-count: infinite;
    -ms-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}

@-webkit-keyframes marquee {
    0% {
        -webkit-transform: translate(0%);
    }
    99%,
    100% {
        -webkit-transform: translate(-100%);
    }
}

@-ms-keyframes marquee {
    0% {
        -ms-transform: translate(0%);
    }
    99%,
    100% {
        -ms-transform: translate(-100%);
    }
}

@-moz-keyframes marquee {
    0% {
        -moz-transform: translate(0%);
    }
    99%,
    100% {
        -moz-transform: translate(-100%);
    }
}

@keyframes marquee {
    0% {
        transform: translate(0%);
    }
    99%,
    100% {
        transform: translate(-100%);
    }
}

/* --------------------------------------- */
/* TOP用お店リスト */
/* --------------------------------------- */
.tablist {
    margin: 0;
    padding: 5px 5px 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    border-bottom: solid 6px #ff4141;
    background-color: #5a5a5a;
}

.tablist li {
    margin-bottom: -1px;
    font-size: 13px;
    line-height: 16px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -ms-flex: 1 0 auto;
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto;
}

.tablist li a {
    width: 100%;
    margin: 0;
    padding: 5px 0;
    font-weight: bold;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    vertical-align: middle;
    color: #fff;
    text-shadow: 1px 1px 0 #6b160d;
}

.tablist .current a {
    border-radius: 5px 5px 0 0;
    background-color: #ff4141;
}

/* お店リスト：ソープガイド用 */
.so .tablist li {
    flex: 1;
}

.so .tablist .char2 {
    margin-left: 8px;
    letter-spacing: 8px;
}

.so .tablist .char3 {
    margin-left: 3px;
    letter-spacing: 3px;
}

/* お店検索リスト */
.list_top-search {
    margin: 0;
    padding: 0;
    overflow: hidden;
    zoom: 1;
}

.list_top-search li {
    padding: 0;
    font-size: 12px;
    line-height: 1.3;
    position: relative;
    text-align: left;
    word-break: break-all;
    border-top: 1px solid #c6c6c6;
}

.list_top-search .box_sl a {
    padding: 4px 8px 4px 4px;
    display: block;
    color: #000;
    background: url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png) no-repeat right center;
    -webkit-background-size: 19px 14px;
    background-size: 19px 14px;
}

.list_top-search .box_sl dt {
    width: 100px;
    height: 133px;
    margin-right: 6px;
    float: left;
}

.list_top-search dl dd {
    width: 64%;
    width: -webkit-calc(100% - 138px);
    width: calc(100% - 138px);
    float: left;
}

/* サムネ */
.list_top-search .box_image {
    width: 100%;
    height: 100%;
    position: relative;
    border: 1px solid #ccc;
}

.list_top-search {
    position: relative;
}

.list_top-search .box_image img {
    max-width: 100%;
    max-height: 100%;
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

/* テキスト：店名 */
.list_top-search .txt_name {
    width: 100%;
    font-size: 16px;
    font-weight: bold;
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: #0080de;
}

/* テキスト：業種・エリア */
.list_top-search .shop_type-area {
    margin-top: -2px;
    margin-bottom: 0;
    font-size: 13px;
}

/* テキスト：料金 */
.list_top-search .price {
    margin-bottom: 2px;
    font-size: 13px;
}

/* 店舗アイコン */
.list_top-search .box_icon {
    width: 100%;
    font-size: 12px;
    line-height: 1em;
    position: absolute;
    bottom: 2px;
}

.list_top-search .newKensaku > span {
    margin-right: 2px;
    margin-bottom: 1px;
    padding: 2px 3px;
    display: inline-block;
    color: #bbb;
    border-width: 1px;
    border-style: solid;
    border-color: #bbb;
    border-radius: 2px;
}

.list_top-search .newKensaku .active {
    padding: 1px 3px;
    font-weight: bold;
    color: #0091c5;
    border-width: 2px;
    border-color: #0091c5;
}

/* 店舗アイコン：スグ嬢 */
.list_top-search .newKensaku .sugu {
    color: #000;
    border-width: 2px 0 0;
    border-color: transparent;
}

.list_top-search .newKensaku .sugu > span {
    color: #f00;
}

.list_top-search .newKensaku .non-sugu {
    visibility: hidden;
}

/* --------------------------------------- */
/* 地方版TOP */
/* --------------------------------------- */
.local_cover {
    text-align: center;
    background-color: #fff;
}

.local_cover .inner {
    max-width: 480px;
    margin: 0 auto;
    display: block;
}

.local_cover img {
    width: 100%;
}

/* おすすめ嬢 */
.box_castdx.local_osusumejo .hl {
    height: 36px;
    padding-left: 40px;
    font-size: 16px;
    line-height: 36px;
    background-repeat: no-repeat;
    background-position: 4px center;
    -webkit-background-size: 28px;
    background-size: 28px;
    background-color: #ff76ae;
    background-image: url(../st_img/icon_hl_castdx_m1.png);
}

.box_castdx.local_osusumejo .read_more {
    border-top-color: #ff76ae;
}

.box_castdx.local_osusumejo .read_more:after {
    background-color: #ff76ae;
}

/* --------------------------------------- */
/* エリアタブ */
.local .tablist a {
    padding-bottom: 6px;
    font-size: 16px;
    text-indent: 3px;
    letter-spacing: 6px;
}

/* --------------------------------------- */
/* 汎用 */
/* --------------------------------------- */
.box_2split,
.box_3split {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: no-wrap;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-align: center;
    -moz-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.box_2split > .inner,
.box_3split > .inner {
    box-sizing: border-box;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;
}

.box_2split > .inner {
    width: 50%;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1 1 50%;
    -ms-flex: 1 1 50%;
    flex: 1 1 50%;
}

.box_3split > .inner {
    width: 33%;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1 1 33%;
    -ms-flex: 1 1 33%;
    flex: 1 1 33%;
}

/* --------------------------------------- */
/* 汎用リスト */
/* --------------------------------------- */
.list_common {
    font-size: 12px;
    line-height: 1.3;
    text-align: left;
}

.list_common .elm {
    border-top: 1px solid #c6c6c6;
}

.list_common a {
    padding: 4px 26px 6px 4px;
    display: block;
    background: url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png) no-repeat right center;
    -webkit-background-size: 19px 14px;
    background-size: 19px 14px;
}

/* サムネ */
.dl_common > dt {
    width: 80px;
    height: 107px;
    margin-right: 6px;
    float: left;
}

.dl_common:after {
    height: 0;
    display: block;
    visibility: hidden;
    clear: both;
    content: '.';
}

.dl_common .box_image {
    width: 100%;
    height: 100%;
    position: relative;
    box-sizing: border-box;
    border: 1px solid #ccc;
}

.box_image img {
    max-width: 100%;
    max-height: 100%;
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

/* テキスト欄 */
.list_common .date {
    font-size: 11px;
    color: #666;
}

.list_common .title {
    font-size: 16px;
}

.list_common .shopName {
    padding-left: 18px;
    font-size: 12px;
    color: #303030;
    background: url(/sp/st_img/icon_tenpo-f877633c1bb15c645eeffbf32622893b.png) no-repeat 1px center;
    -webkit-background-size: 12px 12px;
    background-size: 12px 12px;
}

.list_common .shopType {
    margin: 0;
    font-size: 10px;
    display: inline-block;
    color: #667284;
}

/* もっと見るリンク */
.read_more {
    font-size: 16px;
    text-align: center;
    border-top: 1px solid #cbcbcb;
}

.read_more > a {
    padding: 9px 0;
    display: block;
    color: #000;
    background: url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png) no-repeat right center;
    -webkit-background-size: 19px 14px;
    background-size: 19px 14px;
}

/* --------------------------------------- */
/* 業種・エリア一発検索 */
/* --------------------------------------- */
.tab_ippatsu {
    background-color: #fff;
}

.tab_ippatsu .refine_tab .link_btn.open {
    padding-right: 0;
}

.tab_ippatsu .link_btn .hidden {
    display: none;
}

.tab_ippatsu .link_btn.open .hidden {
    display: inline;
}

.tab_ippatsu .refine_tab .link_btn.open::after {
    opacity: 0;
}

.tab_ippatsu .link_btn {
    color: #333;
}

/* 選択肢群 */
.tab_ippatsu .refine_tab_cond .fl_base {
    flex-wrap: wrap;
}

.tab_ippatsu .refine_tab_cond .link_ippatsu {
    width: 48%;
    width: calc(50% - 4px);
    height: 40px;
    margin: 3px 2px;
    padding-right: 10px;
    font-size: 16px;
    font-weight: bold;
    line-height: 40px;
    position: relative;
    display: inline-block;
    overflow: hidden;
    box-sizing: border-box;
    text-align: center;
    color: #2a2a2a;
    border-width: 1px;
    border-style: solid;
    border-radius: 2px;
    background-color: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
    flex: 0 0 auto;
}

.tab_ippatsu .refine_tab_cond .link_ippatsu.full {
    width: 90%;
    width: calc(100% - 4px);
}

.tab_ippatsu .refine_tab_cond .link_ippatsu::after {
    height: 1em;
    margin: auto 0;
    font-family: 'icomoon';
    font-size: 0.7em;
    line-height: 1em;
    position: absolute;
    top: 2px;
    right: 6px;
    bottom: 0;
    display: block;
    content: '\e904';
    opacity: 0.8;
}

.tab_ippatsu .refine_tab_cond .char2 {
    margin-left: 10px;
    letter-spacing: 10px;
}

.tab_ippatsu .refine_tab_cond .char3 {
    margin-left: 4px;
    letter-spacing: 4px;
}

.tab_ippatsu .link_ippatsu:not(.full) .x-small {
    font-size: 0.9em;
}

@media screen and (max-width: 320px) {
    .tab_ippatsu .refine_tab .link_btn {
        font-size: 0.9em;
    }

    .tab_ippatsu .link_ippatsu:not(.full) .x-small {
        font-size: 12px;
    }
}

/* キャンパブ */
.pb .tab_ippatsu {
    text-align: center;
}

.pb .tab_ippatsu .link_ippatsu.full {
    width: 80%;
    height: 40px;
    margin: 2px auto;
    line-height: 40px;
}

/* カラー設定 */
.fu .tab_ippatsu .link_btn,
.fu .tab_ippatsu .link_ippatsu,
.fu .tab_ippatsu .refine_tab_cond {
    border-color: #23a6fd;
}

.fu .tab_ippatsu .link_btn::after,
.fu .tab_ippatsu .link_ippatsu::after {
    color: #23a6fd;
}

.fu .tab_ippatsu .refine_tab .link_btn.open {
    background-color: #23a6fd;
}

.fu .tab_ippatsu .refine_tab_cond {
    background-color: #e8f7fc;
}

.de .tab_ippatsu .link_btn,
.de .tab_ippatsu .link_ippatsu,
.de .tab_ippatsu .refine_tab_cond {
    border-color: #fe8d20;
}

.de .tab_ippatsu .link_btn::after,
.de .tab_ippatsu .link_ippatsu::after {
    color: #fe8d20;
}

.de .tab_ippatsu .refine_tab .link_btn.open {
    background-color: #fe8d20;
}

.de .tab_ippatsu .refine_tab_cond {
    background-color: #fffef2;
}

.szok .tab_ippatsu .link_btn,
.szok .tab_ippatsu .link_ippatsu,
.szok .tab_ippatsu .refine_tab_cond {
    border-color: #1db8e2;
}

.szok .tab_ippatsu .link_btn::after,
.szok .tab_ippatsu .link_ippatsu::after {
    color: #1db8e2;
}

.szok .tab_ippatsu .refine_tab .link_btn.open {
    background-color: #1db8e2;
}

.szok .tab_ippatsu .refine_tab_cond {
    background-color: #e8f7fc;
}

.pb .tab_ippatsu .link_btn,
.pb .tab_ippatsu .link_ippatsu,
.pb .tab_ippatsu .refine_tab_cond {
    border-color: #2cc63b;
}

.pb .tab_ippatsu .link_btn::after,
.pb .tab_ippatsu .link_ippatsu::after {
    color: #2cc63b;
}

.pb .tab_ippatsu .refine_tab .link_btn.open {
    background-color: #2cc63b;
}

.pb .tab_ippatsu .refine_tab_cond {
    background-color: #f5fff2;
}

/* --------------------------------------- */
/* 月替わり特集 */
/* --------------------------------------- */
.box_feature .single {
    max-width: 375px;
    margin: 0 auto;
    padding: 6px;
    display: block;
    box-sizing: border-box;
}

.box_feature .single img {
    width: 100%;
}

/* 2つボタン用style */
.box_feature.twobtns {
    width: 100%;
    max-width: 404px;
    height: 64px;
    margin: 0 auto;
    padding: 2px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-align: center;
    -moz-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.box_feature > p {
    box-sizing: border-box;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;
}

.box_feature.twobtns .prg_title {
    width: 195px;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1 0 50%;
    flex: 1 0 50%;
}

.box_feature.twobtns .prg_title img {
    width: 100%;
}

.box_feature.twobtns .prg_btn {
    padding: 2px;
    text-align: center;
    -webkit-box-flex: 0;
    -moz-box-flex: 0;
    -webkit-flex: 0 0 25%;
    flex: 1 0 25%;
}

.box_feature.twobtns .prg_btn .fu {
    background-color: #e21b53;
}

.box_feature.twobtns .prg_btn .de {
    background-color: #135bc6;
}

.box_feature.twobtns .prg_btn > a {
    height: 54px;
    margin-bottom: 2px;
    font-size: 14px;
    font-weight: bold;
    display: block;
    color: #fff;
    border-radius: 6px;
    box-shadow: 0 2px 0 rgba(0, 0, 0, 0.4);
}

.box_feature.twobtns .prg_btn > a:hover {
    -webkit-transform: translate3d(0, 2px, 0);
    transform: translate3d(0, 2px, 0);
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.4) inset;
}

.box_feature.twobtns a > img {
    width: 40px;
    height: 28px;
    margin-top: 4px;
    display: inline-block;
}

.box_feature.twobtns a > span {
    width: 100%;
    margin-top: 2px;
    margin-left: 3px;
    display: inline-block;
    letter-spacing: 6px;
}

/* --------------------------------------- */
/* ソープガイド用 */
/* --------------------------------------- */
/* TOP用業種選択ボタン */
.type-select {
    padding: 4px;
    background-color: #fff;
}

.type-select .box_3split {
    max-width: 365px;
    margin: 0 auto;
}

.type-select .link_btn {
    height: 38px;
    margin-bottom: 3px;
    padding-left: 34px;
    font-size: 14px;
    font-weight: bold;
    line-height: 38px;
    position: relative;
    display: block;
    overflow: hidden;
    box-sizing: border-box;
    text-align: center;
    letter-spacing: 2px;
    color: #3f330d;
    border-radius: 6px;
    background-color: #ffb042;
    box-shadow: 0 3px 0 #725802;
}

.type-select .link_btn:hover {
    -webkit-transform: translate3d(0, 3px, 0);
    transform: translate3d(0, 3px, 0);
    box-shadow: none;
}

.type-select .link_btn:after {
    width: 34px;
    height: 34px;
    margin: auto;
    position: absolute;
    top: 2px;
    left: 2px;
    content: '';
    background-image: url(/sp/st_img/icon_soap-type-6be0b24bfd18ad886c062592d72d6bb0.png);
    background-repeat: no-repeat;
    -webkit-background-size: 34px 102px;
    background-size: 34px 102px;
}

/* 高級 */
.type-select .cl3 .link_btn {
    margin-right: 2px;
}

.type-select .cl3 .link_btn:after {
    background-position: center 0;
}

/* 中級 */
.type-select .cl2 .link_btn {
    margin-right: 2px;
    margin-left: 2px;
}

.type-select .cl2 .link_btn:after {
    background-position: center -34px;
}

/* 激安 */
.type-select .cl1 .link_btn {
    margin-left: 2px;
}

.type-select .cl1 .link_btn:after {
    background-position: center -68px;
}

/* TOP用お店検索タブ */
.so .tablist {
    border-bottom-color: #ff8d42;
}

.so .tablist .current a {
    background: #ff8d42;
}

/* --------------------------------------- */
/* お知らせ吹き出し */
/* --------------------------------------- */
.box_pop {
    padding: 4px 20px 0 8px;
    font-size: 14px;
    font-weight: bold;
    position: absolute;
    z-index: 9999;
    top: -42px;
    left: 4px;
    -webkit-animation: fuwafuwa 0.4s linear infinite alternate;
    animation: fuwafuwa 0.4s linear infinite alternate;
    text-align: center;
    color: #fff;
    border-radius: 10px;
    background-color: #f00;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.box_pop:after {
    width: 0;
    height: 0;
    margin-left: -10px;
    position: absolute;
    bottom: -10px;
    left: 55%;
    display: block;
    content: '';
    border-width: 10px 6px 0 6px;
    border-style: solid;
    border-color: #f00 transparent transparent transparent;
}

.box_pop .inner {
    padding: 4px 2px 6px;
    position: relative;
    -webkit-font-smoothing: antialiased;
}

.box_pop .btn_close {
    width: 14px;
    height: 14px;
    position: absolute;
    top: 0;
    right: -16px;
    display: inline-block;
    cursor: pointer;
    background-image: url(/sp/st_img/icon_close-circle-e3b223179dbb5c791da8279033dd2bfa.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 14px 14px;
}

/* ふわふわアニメ */
@keyframes fuwafuwa {
    0% {
        transform: translateY(-3px);
    }
    100% {
        transform: translateY(0);
    }
}

@-webkit-keyframes fuwafuwa {
    0% {
        -webkit-transform: translateY(-3px);
    }
    100% {
        -webkit-transform: translateY(0);
    }
}

/* --------------------------------------- */
/* 個別バナー */
/* --------------------------------------- */
.banner_indiv.tenryu {
    background-color: #ffd8ed;
    margin-top: -10px;
    border-top: 1px solid #ccc;
}

.link_indiv {
    padding-right: 10px;
    display: block;
    box-sizing: border-box;
    text-align: center;
    background-image: url(/sp/st_img/cur_gray-2246529004c09c9c11444fa6d59cb6c2.png);
    background-repeat: no-repeat;
    background-position: right center;
    -webkit-background-size: 19px 14px;
    background-size: 19px 14px;
}

.link_indiv img {
    width: 100%;
    max-width: 414px;
    margin: 0 auto;
}

/* --------------------------------------- */
/* JOBガイド会員PR */
/* --------------------------------------- */
.job_pr {
    width: 86px;
    height: 48px;
    margin-top: 6px;
    margin-left: 4px;
    float: left;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    white-space: nowrap;
    text-indent: 100%;
    border: 1px solid #9e725d;
    border-radius: 6px;
    background-color: #fff;
    background-image: url(../st_img/job_pr.png);
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-background-size: 78px 36px;
    background-size: 78px 36px;
}

/* --------------------------------------- */
/* 18禁 */
/* --------------------------------------- */
.r18 {
    margin-top: -1px;
    padding: 4px;
    font-size: 14px;
    text-align: center;
    color: #ec1b23;
    border-top: 1px solid #ccc;
    background-color: #fff;
}

/* --------------------------------------- */
/* 夜ガイ限定割引リンク */
/* --------------------------------------- */
.discount_enter_wrap {
    background: #000;
}

.frame_discount {
    max-width: 480px;
    margin: auto;
}

.frame_discount .inner {
    position: relative;
}

.discount_enter_wrap .store_number {
    font-weight: bold;
    font-size: 32px;
    color: #ffffff;
    text-shadow: 0px 0px 4px #634c3a;
    position: absolute;
    top: 23px;
    right: 21px;
    width: 63px;
    text-align: center;
    line-height: 0.6em;
}

@media screen and (max-width: 320px) {
    .discount_enter_wrap .store_number {
        font-size: 27px;
        top: 20px;
        right: 11px;
    }
}

/* --------------------------------------- */
/* 女の子DX枠 */
/* --------------------------------------- */
.box_castdx {
    text-align: center;
    border-width: 1px 0;
    border-style: solid;
    border-color: #aaa;
}

.box_castdx + .box_castdx {
    border-top: 0 none;
}

.box_castdx .hl {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: left;
}

/* もっと見る */
.read_more {
    margin-top: -1px;
    position: relative;
    border-style: solid;
    border-top-width: 3px;
    border-top-color: #ff4141;
    background-color: #fff;
}

.read_more:after {
    background-color: #ff4141;
}

.read_more .arrow_gp {
    padding: 10px 50px 10px 0;
    line-height: 1em;
    position: relative;
    z-index: 1;
    text-align: right;
    background-image: url(/sp/st_img/cur_white-8f6e75043af6609642bc223b8d9c2e5b.png);
    background-position: 98% 10px;
    background-position: -webkit-calc(100% - 7px) 10px;
    background-position: calc(100% - 7px) 10px;
}

.read_more:after {
    width: 36px;
    height: 34px;
    position: absolute;
    z-index: 0;
    top: 0;
    right: 4px;
    content: '';
    text-align: center;
    border-radius: 0 0 38px 38px;
}

/* もっと見る：各ガイド用色指定 */
.de .read_more {
    border-color: #1db8e2;
}

.de .read_more:after {
    background-color: #1db8e2;
}

.pb .read_more {
    border-color: #0ab202;
}

.pb .read_more:after {
    background-color: #0ab202;
}

.so .read_more {
    border-color: #ff8d42;
}

.so .read_more:after {
    background-color: #ff8d42;
}

/* 女の子DX枠色 */
.box_castdx .hl {
    height: 36px;
    padding-left: 40px;
    font-size: 16px;
    line-height: 36px;
    background-repeat: no-repeat;
    background-position: 4px center;
    -webkit-background-size: 28px;
    background-size: 28px;
}

.box_castdx.m-no1 .hl {
    background-color: #ff1427;
    background-image: url(../st_img/icon_hl_castdx_m1.png);
}

.box_castdx.rp-no1 .hl {
    background-color: #ff76ae;
    background-image: url(../st_img/icon_hl_castdx_rp1.png);
}

.box_castdx.dx-newface .hl {
    background-color: #ffa611;
    background-image: url(../st_img/icon_hl_castdx_dxnf.png);
}

/* もっと見る */
.box_castdx.m-no1 .read_more {
    border-top-color: #ff1427;
}

.box_castdx.m-no1 .read_more:after {
    background-color: #ff1427;
}

.box_castdx.rp-no1 .read_more {
    border-top-color: #ff76ae;
}

.box_castdx.rp-no1 .read_more:after {
    background-color: #ff76ae;
}

.box_castdx.dx-newface .read_more {
    border-top-color: #ffae26;
}

.box_castdx.dx-newface .read_more:after {
    background-color: #ffae26;
}

/* --------------------------------------- */
/* TOP 汎用的リンク*/
/* --------------------------------------- */
.simple_text-link {
    padding: 8px 0;
    font-weight: bold;
    text-decoration: underline;
    font-size: 16px;
    border-top: 1px solid #bcbcbc;
}

/* --------------------------------------- */
/* 会員登録はこちら */
/* --------------------------------------- */
.member_regist {
    padding: 0 6px;
}

.member_regist a {
    padding: 6px;
    display: block;
    font-weight: bold;
    font-size: 14px;
    color: #333;
    width: 100%;
    border-radius: 5px;
    background-color: #ffe858;
    max-width: 480px;
    margin: 0 auto 10px;
    position: relative;
}

.member_regist a:not(:hover) {
    box-shadow: 0 3px 0 #bd971f;
}

.member_regist a::before,
.member_regist a::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}

.member_regist a::before {
    width: 22px;
    height: 22px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #333;
    right: 6px;
}

.member_regist a::after {
    right: 14px;
    width: 5px;
    height: 5px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* --------------------------------------- */
/* 金券キャンペーン　当選者発表 */
/* --------------------------------------- */
.campaign_result_link {
    padding: 8px;
    color: #667284;
    font-size: 12px;
}

.campaign_result_link strong,
.campaign_result_link span {
    display: inline-block;
}

.campaign_result_link a {
    text-decoration: underline;
    font-size: 15px;
    padding-bottom: 4px;
}

.local_area .campaign_result_link {
    color: #fff;
}

.local_area .campaign_result_link span {
    color: #afafaf;
}

/* --------------------------------------- */
/* 縦横比固定 */
/* --------------------------------------- */
.frame_ratio {
    width: 100%;
    height: auto;
    position: relative;
}

.ratio_3-4:before {
    padding-top: 133%;
    display: block;
    content: '';
}

.frame_ratio > .inner {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    overflow: hidden;
    background-color: #fff;
}

/* --------------------------------------- */
/* フェチGALLERY新カテゴリ追加 */
/* --------------------------------------- */
.pg_pop {
    position: absolute;
    width: 90px;
    left: 10px;
    top: -16px;
    -webkit-animation: fuwafuwa 0.2s linear infinite alternate;
    animation: fuwafuwa 0.2s linear infinite alternate;
}

.pg_pop > img {
    width: 100%;
}

/* --------------------------------------- */
/* フェチGALLERY入口 */
/* --------------------------------------- */
.menu_box_pg {
    background-color: #FF007F;
}

.menu_box_pg .outer {
    display: block;
    background-image: url(/sp/st_img/bg_lace-23ff21a18aa92a984f1473df1715654c.png);
    background-repeat: repeat-x;
    -webkit-background-size: 15px 28px;
    background-size: 15px 28px;
    background-position: center 4px;
    text-align: center;
}

.menu_box_pg .hl {
    padding: 2px 0;
    margin: auto;
    text-align: left;
    max-width: 480px;
}

.menu_box_pg .hl_pg {
    height: 20px;
    padding: 2px 4px;
}

/* フェチGALLERY：ピックアップ */
.frame_pg_pu {
    margin: 0 3px;
}

.frame_pg_pu .lbl {
    font-size: 12px;
    color: #FF72B8;
    line-height: 1em;
    padding: 4px 6px 2px;
}

.frame_pg_pu .lbl .new {
    color: #ff0;
    font-weight: bold;
}

.frame_pg_pu .link_cate {
    display: block;
}

@media screen and (min-width: 480px) {
    .frame_pg_pu {
        margin: 0 auto;
        max-width: 480px;
    }
}

.frame_pg_pu > .fl_inner:first-child {
    margin-right: 1px;
}

.frame_pg_pu > .fl_inner:last-child {
    margin-left: 1px;
}

.frame_pg_pu.fl_base > .fl_inner {
    width: 50%;
    background-color: #000;
    border-radius: 6px 6px 0 0;
}

.body_pg_pu {
    padding: 2px 1px 0;
}

.body_pg_pu.fl_base > .fl_inner {
    width: 33.3%;
    padding-left: 1px;
}

.body_pg_pu.fl_base > .fl_inner:last-child {
    padding-right: 1px;
}

.menu_box_pg .thumb_pg {
    width: 100%;
}

/* サムネ */
.frame_pg_pu .thumb_pg {
    width: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}

/* カテゴリリンク */
.menu_box_pg .arrow_icon {
    color: #fff;
    font-size: 12px;
    padding: 4px;
    position: relative;
    line-height: 1;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.menu_box_pg .arrow_icon::after {
    height: 1em;
    font-family: 'icomoon';
    font-weight: normal;
    line-height: 1em;
    position: absolute;
    top: -1px;
    right: 4px;
    display: block;
    content: '\e904';
    color: #FF007F;
    margin: auto 0;
    bottom: 0;
}

/* もっと見る */
.menu_box_pg .read_more {
    border-top-color: #FF007F;
}

.menu_box_pg .read_more::after {
    background-color: #FF007F;
}

/* --------------------------------------- */
/* メニューボタンエステ追加用 NEWPOP */
/* --------------------------------------- */
.link_topmenu {
    position: relative;
}

.link_topmenu .new_pop {
    position: absolute;
    top: -8px;
    color: #fff;
    background-color: #ff4141;
    width: 36px;
    left: 2px;
    font-size: 10px;
    height: 16px;
    line-height: 14px;
    border-radius: 20px;
    text-align: center;
}

.link_topmenu .new_pop .char {
    display: inline-block;
    animation-name: wave;
    animation-duration: 0.8s;
    animation-iteration-count: infinite;
    transition: all 0.2s linear;
}

.link_topmenu .new_pop .char:nth-child(2) {
    animation-delay: 0.1s;
}

.link_topmenu .new_pop .char:nth-child(3) {
    animation-delay: 0.2s;
}

@keyframes wave {
    0% {
        transform: translateY(0);
    }
    60% {
        transform: translateY(2px);
    }
    70% {
        transform: translateY(1px);
    }
    100% {
        transform: translateY(0);
    }
}

/* --------------------------------------- */
/* 稼げっとバナー */
/* --------------------------------------- */
.box_banner.recruit {
    background-color: transparent;
    max-width: 480px;
    margin:0 auto 10px;
    box-shadow: rgba(0, 0, 0, 0.4) 0 4px 4px;
}
