@charset "UTF-8";

html {
   -webkit-text-size-adjust: 100%;
   height:100%;
}

body {
    font-family: "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック","Arial","Verdana","sans-serif";
    color: #333;
    font-style: normal;
    font-size: 14px;
    line-height: 1.45;
    font-weight: 400;
    height:100%;
}

ul {
    list-style:none;
}

li {
    list-style:none;
}

a {
    color: #0088cc;
    text-decoration: none;
}

.container {
    position: relative;
    min-height: 100%;
}

.wrapper {
    max-width: 640px;
    margin: 0 auto;
}

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

/**
 * ヘッダー
 */
.hedding-background-color {
    background-color: #323232;
}

/**
 * ポイント表示
 */
.point-held {
    font-size: 13px;
    color: white;
}

/**
 * フッター
 */
.footer-box {
    margin: 0 auto;
    max-width: 640px;
    height: 57px;
}

.footer-box .page-top {
    bottom: 37px;
    position: absolute;
    text-align: left;
}

.footer {
    position: absolute;
    width: 100%;
    bottom: 0;
    color: white;
    font-size: 12px;
    text-align: center;
    line-height: 27px;
}

.footer address {
    background-color: #323232;
    padding: 5px;
}

/**
 * お店画像
 */
.logo-h img {
    width: 100%;
    display: block;
}

/**
 * 店名
 */
.store-name {
    line-height: 30px;
    text-align: center;
    font-size: 16px;
    background-color: #f2f2f2;
    color: #333;
}

/**
 * 営業時間他
 */
.info {
    text-align: center;
    font-size: 16px;
    margin: 10px 0;
}

.info  .gyoushu {
    margin-right: 14px;
}

/**
 * login-formスタイル
 */
.login-form {
    margin: 0 auto;
    border: 1px solid #888;
    width: 290px;
    text-align: left;
    background-color: #fafafa;
    color: #333;
    padding: 10px 0
}

.login-form label {
    width: 221px;
    display: block;
    margin: 0 auto;
}

.login-form input {
    width: 221px;
    display: block;
    margin: 4px auto;
    font-family: monospace;
    font-size: 18px;
    height: 23px;
}

.login-form input[type=submit] {
    width: 184px;
    display: block;
    margin: 19px auto 10px auto;
    height: 35px;
    color: #fff;
    text-align: center;
    background-color: #048bce;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #048bce), color-stop(0.00, #34a9e4));
    background-image: -webkit-linear-gradient(#34a9e4 0%, #048bce 88%);
    background-image: linear-gradient(#34a9e4 0%, #048bce 88%);
    font-size: 14px;
    font-weight: bold;
    border-radius: 6px;
}


/**
 * ログイン画面のメッセージ
 */
.login-main .message {
    margin: 5px 0;
}

.login-main .error-message-box {
    margin: 0 auto;
    width: 240px;
}

/**
 * 会員登録ボタン前のメッセージ
 */
.register-message {
    text-align: center;
}

/**
 * お問い合わせはこちら
 */
.contact-tel {
    margin: 32px 0;
}

.contact-tel p {
    text-align: center;
    font-size: 15px;
}

/**
 * お店の電話番号
 */
.main-tel {
    text-align: center;
    font-size: 17px;
}

/**
 * お店に電話をかける
 */
.main-tel-deco a {
    display: block;
    text-align: center;
    font-size: 14px;
    margin: 20px 8px;
    padding: 5px 0;
    background-color: #FEFEFE;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#FEFEFE), to(#F1F1F1));
    background-image: -webkit-linear-gradient(#FEFEFE, #F1F1F1);
    background-image: linear-gradient(#FEFEFE, #F1F1F1);
    border-radius: 5px;
    border: 1px solid #B0B0B0;
}

/**
 * 今すぐWEBで予約する
 */
.s-yoyaku {
    box-shadow: inset 0px 0px 35px -14px rgba(0,0,0,0.75);
    padding: 5px;
    margin: 4px 0;
}

.s-yoyaku > p {
    text-align: center;
    font-size: 22px;
    color: #333;
}

.s-yoyaku > p > span {
    color: #e73820;
}

/**
 * 予約一覧へのリンク
 */
.s-box {
    height: 100px;
    margin: 0 auto;
}

.s-box li {
    width: 50%;
    float: left;
}

.s-box li.full-width {
    width: auto;
    float: none;
}

.s-box li > a {
    display: block;
    line-height: 41px;
    color: #333;
    text-align: center;
    background-color: #F2F2F2;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #DADAD6), color-stop(0.00, #FAFAFA));
    background-image: -webkit-linear-gradient(#FAFAFA 0%, #DADAD6 88%);
    background-image: linear-gradient(#FAFAFA 0%, #DADAD6 88%);
    box-shadow: 0 2px #adadad;
    font-size: 15px;
    margin: 2px;
    border-radius: 4px;
    border: 1px solid #C5C5C5;
}

/**
 * 今すぐアイコン
 */
.s-box .now > a:before {
    margin: 0 4px 0 0;
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url(../img/icon1.png);
    background-size: contain;
    vertical-align: middle;
}

/**
 * 今日アイコン
 */
.s-box .today > a:before {
    margin: 0 4px 0 0;
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url(../img/icon2.png);
    background-size: contain;
    vertical-align: middle;
}

/**
 * 明日アイコン
 */
.s-box .tomorrow > a:before {
    margin: 0 4px 0 0;
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url(../img/icon3.png);
    background-size: contain;
    vertical-align: middle;
}

/**
 * ３日目アイコン
 */
.s-box .day_after_tomorrow > a:before {
    margin: 0 4px 0 0;
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url(../img/icon4.png);
    background-size: contain;
    vertical-align: middle;
}

/**
 * 写メ日記はこちら
 */
.diary-link {
    margin: 2px 4px;
}

.diary-link img {
    vertical-align: middle;
}

.diary-link .text {
    margin-left: 4px;
    vertical-align: middle;
}

.diary-link a {
    display: block;
    text-align: center;
    font-size: 14px;
    margin: 8px;
    padding: 5px 0;
    background-color: #FEFEFE;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#FEFEFE), to(#F1F1F1));
    background-image: -webkit-linear-gradient(#FEFEFE, #F1F1F1);
    background-image: linear-gradient(#FEFEFE, #F1F1F1);
    border-radius: 5px;
    border: 1px solid #9E9E9E;
    box-shadow: 0px 1px 3px rgba(000,000,000,0), inset 0px 0px 2px rgba(255,255,255,1);
    text-shadow: 0px 1px 0px rgba(000,000,000,0.2), 0px 1px 0px rgba(255,255,255,0);
}

/**
 * 女の子プロフィール - タイトル
 */
.content-header-ttl {
    color: #333;
    background-color: #F2F2F2;
    line-height: 20px;
    padding: 4px 10px;
    font-weight: bold;
    border-left: 10px solid #c7121c;
}

.content-header-ttl > img {
    vertical-align: middle;
    margin-right: 10px;
}

/**
 * 女の子プロフィール - 上部共通コンテンツ部レイアウト
 */
.content-profile-list .left {
    float: left;
    width: 80px;
    margin: 5px;
}

.content-profile-list .left > img {
    max-width: 100%;
    height: auto;
    display: block;
}

.content-profile-list .right {
    margin-left: 90px;
    padding: 5px;
}

/**
 * 女の子プロフィール - 上部共通コンテンツ部装飾
 */
.content-profile-style {
    background-color: #ECECEC;
    border-bottom: 1px solid #ddd;
}

/**
 * 店長コメント - タイトル
 */
.manager-comment-ttl {
    color: #333;
    background-color: #F2F2F2;
    line-height: 20px;
    padding: 4px 10px;
    font-weight: bold;
    border-left: 10px solid #c7121c;
    margin-bottom: 10px;
}

.manager-text {
    margin: 0 5px;
}

/**
 * 女の子検索
 */
.search-girls {
    text-align: center;
    border-bottom: 1px dotted #e3e3e3;
}

.search-girls > p {
    margin: 5px 0;
    font-size: 18px;
}

.search-girls .day-box {
    margin: 5px 0;
    font-size: 15px;
}

.search-girls .day-box a + a {
    margin-left: 30px;
}

.search-list a + a {
    margin-left: .5em;
}

.search-list li {
    background-color: #F2F2F2;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #DADAD6), color-stop(0.00, #FAFAFA));
    background-image: -webkit-linear-gradient(#FAFAFA 0%, #DADAD6 88%);
    background-image: linear-gradient(#FAFAFA 0%, #DADAD6 88%);
    border-bottom: 1px solid #ddd;
}

.search-list .inner > .left {
    float: left;
    width: 100px;
}

.search-list .inner > .left img {
    width: 100%;
    display: block;
}

.search-list .inner > .right {
    margin-left: 100px;
    padding: .2em .2em 0 .5em;
}

.search-list .catchcopy {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.search-list .schedule {
    color: #FF6699;
}

.search-list .girl a {
    color: inherit;
}

.search-list .girl a {
    display: block;
    background-position: right center;
    background-repeat: no-repeat;
    background-image: url(../img/search-next.png);
    background-size: 29px 29px;
    padding-right: 30px;
}

.user-name {
    color: #333;
    background-color: #F2F2F2;
    line-height: 20px;
    padding: 4px 10px;
    font-weight: bold;
    border-left: 10px solid #c7121c;
}

.reservation-guide {
    padding: 10px 2px;
}

.reservation-area {
    width: 100%;
    margin-bottom: 20px;
}

.reservation-area .cell {
    border: 1px solid #AFAFAF;
    text-align: center;
    vertical-align: middle;
    font-size: 12px;
    font-weight: bold;
}

.reservation-area .cell-b {
    border: 1px solid #AFAFAF;
    text-align: center;
    vertical-align: middle;
    font-size: 12px;
}

.reservation-area .date {
    background-color: #f2f2f2;
}

.reservation-area .date.sat {
    background-color: #CDE5F3;
    color: #4466BB;
}

.reservation-area .date.sun {
    background-color: #FFDEE7;
    color: #BB5555;
}

.reservation-area .time {
    background-color:#f2f2f2;
}

.reservation-area .start-mark {
    color: orange;
}

.content-ttl-style {
    color: #333;
    background-color: #F2F2F2;
    line-height: 20px;
    padding: 4px 10px;
    font-weight: bold;
    border-left: 10px solid #c7121c;
}

.reservation-select {
    padding: 0px 5px 3px;
    font-size: 20px;
    border-radius: 5px;
}

.reservation-total-money {
    text-align: center;
    color: #c7121c
}

.reservation-grant-point {
    text-align: center;
    font-size: 14px;
}


.submit-btn-style {
    padding: 20px;
}

.text-style-red {
    color: #c7121c;
}

.submit-btn-style input[type=submit] {
    width: 100%;
    height: 45px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    border: 1px solid #C7C7C7;
    border-radius: 5px;
    background-color: #048bce;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #048bce), color-stop(0.00, #34a9e4));
    background-image: -webkit-linear-gradient(#34a9e4 0%, #048bce 88%);
    background-image: linear-gradient(#34a9e4 0%, #048bce 88%);
}

.submit-btn-style-fin input[type=submit] {
    width: 100%;
    height: 45px;
    color: #FFEB3B;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    border: 1px solid #C7C7C7;
    border-radius: 5px;
    background-color: #048bce;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #048bce), color-stop(0.00, #34a9e4));
    background-image: -webkit-linear-gradient(#34a9e4 0%, #048bce 88%);
    background-image: linear-gradient(#34a9e4 0%, #048bce 88%);
}

/**
 * カード決済ボタン
 */
.card-payment-btn {
    display: block;
    text-align: center;
    font-size: 12px;
    color: #ffffff;
    margin: 10px;
    padding: 5px 0;
    background-color: #C80000;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#C80000), to(#9A0000));
    background-image: -webkit-linear-gradient(#C80000, #9A0000);
    background-image: linear-gradient(#C80000, #9A0000);
    border-radius: 5px;
    border: 1px solid #C80000;
    box-shadow: 0px 1px 3px rgba(000,000,000,0), inset 0px 0px 2px rgba(255,255,255,1);
    text-shadow: 0px -1px 0px rgba(000,000,000,0.2), 0px 1px 0px rgba(255,255,255,0);
}
.card-payment-btn:before {
    margin: 0 4px 0 0;
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background-size: contain;
    vertical-align: middle;
}
.card-payment-btn.icon-sms:before {
    background-image: url(../img/sms.png);
}
.card-payment-btn.icon-card:before {
    background-image: url(../img/card.png);
}

/**
 * ホテルの部屋番号を入力する
 */
.hotelin-btn {
    display: block;
    text-align: center;
    color: #ffffff;
    padding: 5px 0;
    background-color: #333;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#555555), to(#000000));
    background-image: -webkit-linear-gradient(#555555, #000000);
    background-image: linear-gradient(#555555, #000000);
    border-radius: 5px;
    border: 1px solid #333;
    box-shadow: 0px 1px 3px rgba(000,000,000,0), inset 0px 0px 2px rgba(255,255,255,1);
}

/**
 * カード払い入力
 */
.card_syubetu-select label {
    white-space: nowrap;
}

.card_syubetu-select label span {
    margin: 0 5px;
}

.input-card_no {
    width: 39px;
    line-height: 32px;
    font-size: 14px;
    box-shadow: inset 0 1px 4px rgba(0,0,0,.2);
    border: 1px solid #AAA;
}

/**
 * ホテルの部屋番号を入力してください
 */
.please-enter {
    color: #c7121c;
    font-weight: bold;
    font-size: 17px;
}

/**
 * お部屋番号送信ボタン
 */
.hotel-roomin-btn {
    display: block;
    text-align: center;
    width: 100%;
    line-height: 25px;
    color: #ffffff;
    font-size: 14px;
    padding: 5px 0;
    background-color: #333;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#555555), to(#000000));
    background-image: -webkit-linear-gradient(#555555, #000000);
    background-image: linear-gradient(#555555, #000000);
    border-radius: 5px;
    border: 1px solid #333;
    box-shadow: 0px 1px 3px rgba(000,000,000,0), inset 0px 0px 2px rgba(255,255,255,1);
}

/**
 * 新規無料会員登録ページ
 */
.text-center {
    text-align: center;
}

.register-prompt-box {
    margin: 5px;
    border: 1px solid #9E9E9E;
}

.register-textbox {
    margin: 5px;
}

.register-top-text {
    padding: 5px 0;
    font-size: 13px;
}

.register-prompt-text {
    padding: 10px;
    text-align: center;
    background-color: #E2E2E2;
}

.register-prompt-box .caption {
    display: block;
    padding: 10px;
    border-top: 1px solid #DBD8CF;
    border-bottom: 1px solid #DBD8CF;
    background-color: #F9F9F9;
}

.register-prompt-box .input-box {
    padding: 25px;
}

.register-prompt-box .segmented-smsortel-box {
    margin: 0px auto;
    width: 237px;
    padding: 25px;
}

.register-prompt-box .register-submit {
    padding: 20px;
    border-top: 1px solid #DBD8CF;
}

.register-prompt-box input[type=text] {
    width: 100%;
    line-height: 32px;
    font-size: 14px;
    box-shadow: inset 0 1px 4px rgba(0,0,0,.2);
    border: 1px solid #AAA;
}

.register-submit input[type=submit] {
    width: 100%;
    height: 45px;
    color: #fff;
    text-align: center;
    border: 1px solid #C7C7C7;
    border-radius: 5px;
    background-color: #048bce;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #048bce), color-stop(0.00, #34a9e4));
    background-image: -webkit-linear-gradient(#34a9e4 0%, #048bce 88%);
    background-image: linear-gradient(#34a9e4 0%, #048bce 88%);
}

.register-submit input[type=submit][disabled] {
    background:#DCDCDC;
    cursor:not-allowed; /* 禁止カーソル */
}

.register-prompt-next {
    text-align: center;
    font-weight: bold;
}

.register-prompt-step span {
    color: #c7121c;
    font-weight: bold;
}

.register-prompt-step2 {
    padding-left: 10px;
    font-size: 12px;
}

.setpassword-text {
    margin: 5px;
}

.setpassword-text > p + p {
    margin-top: 8px;
}

.setpassword-box {
    margin: 5px;
    border: 1px solid #9E9E9E;
}

.setpassword-box label {
    display: block;
    padding: 10px;
    border-top: 1px solid #DBD8CF;
    border-bottom: 1px solid #DBD8CF;
    background-color: #F9F9F9;
}

.setpassword-box .submit {
    padding: 20px;
    border-top: 1px solid #DBD8CF;
}

.setpassword-box .submit input[type=submit] {
    width: 100%;
    height: 45px;
    color: #fff;
    text-align: center;
    border: 1px solid #C7C7C7;
    border-radius: 5px;
    background-color: #048bce;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #048bce), color-stop(0.00, #34a9e4));
    background-image: -webkit-linear-gradient(#34a9e4 0%, #048bce 88%);
    background-image: linear-gradient(#34a9e4 0%, #048bce 88%);
}

.setpassword-box .setpass {
    padding: 20px;
}

.setpassword-box .setpass input[type=password] {
    width: 100%;
    line-height: 32px;
    font-size: 14px;
    box-shadow: inset 0 1px 4px rgba(0,0,0,.2);
    border: 1px solid #AAA;
    box-sizing: border-box;
}

/**
 * チェックBOX
 */
.checkbox-common label > input[type="checkbox"] {
    display: none;
}

.checkbox-common label > input[type="checkbox"] + span {
    position: relative;
    padding-left: 25px;
}

.checkbox-common label > input[type="checkbox"] + span:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0px;
    margin-top: -9px;
    width: 18px;
    height: 18px;
    background-image: url(../img/icons-18-white.png);
    background-repeat: no-repeat;
    border-radius: 3px;
}

/* offアイコン */
.checkbox-common label > input[type="checkbox"] + span:before {
    background-color: rgba(0, 0, 0, 0.09);
    background-position: -684px 50%;
}

/* on 背景 */
.checkbox-common label > input[type="checkbox"]:checked + span:before {
    background-color: #4AB7DB;
    background-position: -648px 50%;
}

/**
 * SMS受信/電話音声案内 選択
 */
.segmented-smsortel span {
    float: left;
}

.segmented-smsortel:after {
    content: "";
    display: block;
    clear: both;
}

.segmented-smsortel input[type=radio] {
    display: none;
}

.segmented-smsortel span {
    background-color: #eee;
    background-image: linear-gradient(hsl(0,0%,98%) 0%,hsl(0, 0%, 91%) 100%);
    border: 1px #ccc;
    border-style: solid none solid solid;
    color: #777;
    padding: 5px;
    text-align: center;
    text-shadow: 1px 1px #fff;
    width: 102px;
}

.segmented-smsortel :first-child span {
    border-radius: 5px 0 0 5px;
}

.segmented-smsortel :last-child span {
    border-radius: 0 5px 5px 0;
    border-right-style: solid;
}

.segmented-smsortel input[type=radio]:checked + span {
    background-color: #6D9CFF;
    background-image: linear-gradient(hsl(214, 100%, 63%) 0%, hsl(214,90%,70%) 100%);
    border-color: hsl(214, 90%, 60%);
    box-shadow: 3px 2px 10px rgba(0,0,0,.2) inset, -3px 2px 10px rgba(0,0,0,.2) inset;
    color: #fff;
    text-shadow: -1px -1px rgba(0,0,0,.3);
}

/**
 * 認証パスワード入力画面
 */
.attestation-text-box {
    margin: 10px 0;
}

.attestation-text-box .attestation-text-style {
    font-weight: bold;
}

.attestation-text-box .forget-form-box {
    position: relative;
    width: 310px;
    height: 41px;
    margin: 0 auto;
}

.attestation-text-box .forget-form-box > form:first-child {
    position: absolute;
    top: 10px;
}

.attestation-text-box .forget-form-box > form + form {
    position: absolute;
    top: 10px;
    right: 0;
}

.attestation-text-box .forget-form-box input[type=submit] {
    height: 24px;
    background-color: #f4f3ec;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #E4E4E4), color-stop(0.00, #fefefd));
    background-image: -webkit-linear-gradient(#fefefd 0%, #E4E4E4 88%);
    background-image: linear-gradient(#FFFFFF 0%, #E4E4E4 88%);
    border: 1px solid #C5C5C5;
    border-radius: 5px;
    color: #424242;
}

.attestation-form-box {
    margin: 5px;
    border: 1px solid #9E9E9E;
}

.attestation-password-box {
    padding: 10px;
    background-color: #F9F9F9;
    border-bottom: 1px solid #DBD8CF;
}

.attestation-form-box .password-field-form {
    padding: 25px;
}

.attestation-form-box .attestation-submit {
    padding: 20px;
    border-top: 1px solid #DBD8CF;
}

.attestation-form-box .password-field-form input[type=text] {
    width: 100%;
    line-height: 32px;
    font-size: 14px;
    box-shadow: inset 0 1px 4px rgba(0,0,0,.2);
    border: 1px solid #AAA;
}

.attestation-submit input[type=submit] {
    width: 100%;
    height: 45px;
    color: #fff;
    text-align: center;
    border: 1px solid #C7C7C7;
    border-radius: 5px;
    background-color: #048bce;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #048bce), color-stop(0.00, #34a9e4));
    background-image: -webkit-linear-gradient(#34a9e4 0%, #048bce 88%);
    background-image: linear-gradient(#34a9e4 0%, #048bce 88%);
}

/**
 * エラメッセージ
 */
.error-message {
    color: #9E2424;
}

/**
 * メニューボタン
 */
.menu-btn {
    border: thin #FFFFFF solid;
    border-radius: 4px;
}

.inner-menu-box .inner ul {
    padding-top: 55px;
    line-height: 56px;
    text-align: center;
}

.inner-menu-box .inner ul a {
    color: #fff;
}

.inner-menu-box .inner {
    background-color: #333;
    -webkit-transition: 0.8s cubic-bezier(0, 0, 0.2, 1);
    transition: 0.8s cubic-bezier(0, 0, 0.2, 1);
    opacity: 0.95;
    z-index: 3;
}

/*
 * ハンバーガーアイコン
 */
.menu-trigger-icon,
.menu-trigger-icon span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
}

.menu-trigger-icon span {
    background-color: #fff;
    border-radius: 1px;
}

.menu-trigger-icon.active span:nth-of-type(1) {
    -webkit-transform: translateY(6px) rotate(-315deg);
    transform: translateY(6px) rotate(-315deg);
}

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

.menu-trigger-icon.active span:nth-of-type(3) {
    -webkit-transform: translateY(-8px) rotate(315deg);
    transform: translateY(-8px) rotate(315deg);
}

/*
 * ポイントについて
 */
.point-box {
    margin: 10px;
}

.point-box .now {
    margin: 20px 0;
}

.point-box .now p {
    text-align: center;
    font-size: 18px;
}

/**
 * ポイント条件
 */
.point-condition {
    border-top: 2px dotted #888888;
    padding-top: 10px;
}

/**
 * ページング
 */
.paging {
    margin-top: 1em;
    margin-bottom: 1em;
    text-align: center;
}

.paging > *,
.paging > * > * {
    display: inline-block;
}

.paging .disabled,
.paging .current,
.paging a {
    text-decoration: none;
    padding: 5px 8px;
}

.paging > * > * {
    border: 1px solid #ccc;
    background-color: #FFF;
}

.paging > .prev > * {
    border-radius: 4px 0 0 4px;
}


.paging > .navi > * {
    border-left: none;
}

.paging > .next > * {
    border-left: none;
    border-radius: 0 4px 4px 0;
}
.paging .disabled {
    color: #ddd;
}

.main-photo-box {
    width: 240px;
    border: 1px solid #ddd;
    padding: 1px;
    margin: 0 auto;
}

.sub-photo-box li {
    width: 20%;
    float: left;
}

.sub-photo-box a {
    display: block;
    border: 1px solid #ddd;
    padding: 1px;
    margin: 3px;
}
.sub-photo-box img {
    max-width: 100%;
    height: auto;
    vertical-align: top;
}

.sub-photo-box:after {
    content: "";
    clear: both;
    display: block;
}

/**
 * キャンセル料金につきまして
 * or 注意事項
 */
.cancel-warning {
    margin: 5px;
}

/**
 * 電話で受付ボタン
 */
.reservation-tel a {
    display: block;
    text-align: center;
    font-size: 14px;
    margin: 8px 12px;
    padding: 5px 0;
    background-color: #F1F1F1;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#FEFEFE), to(#F1F1F1));
    background-image: -webkit-linear-gradient(top, #FEFEFE, #F1F1F1);
    background-image: linear-gradient(#FEFEFE, #F1F1F1);
    border-radius: 5px;
    border: 1px solid #9E9E9E;
    box-shadow: 0px 1px 3px rgba(000,000,000,0), inset 0px 0px 2px rgba(255,255,255,1);
    text-shadow: 0px 1px 0px rgba(000,000,000,0.2), 0px 1px 0px rgba(255,255,255,0);
}

/**
 * WEB予約するボタン
 */
.reservation-link-photo a {
    display: block;
    text-align: center;
    font-size: 14px;
    margin: 8px 12px;
    padding: 5px 0;
    background-color: #F1F1F1;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#FEFEFE), to(#F1F1F1));
    background-image: -webkit-linear-gradient(top, #FEFEFE, #F1F1F1);
    background-image: linear-gradient(#FEFEFE, #F1F1F1);
    border-radius: 5px;
    border: 1px solid #9E9E9E;
    box-shadow: 0px 1px 3px rgba(000,000,000,0), inset 0px 0px 2px rgba(255,255,255,1);
    text-shadow: 0px 1px 0px rgba(000,000,000,0.2), 0px 1px 0px rgba(255,255,255,0);
}

/**
 * 出勤予定の女の子の日付リスト
 */
.schedule-days {
    background-color: #d1d3d2;
}

.schedule-days li {
    float:left;
    width: 14.28%;
}

.schedule-days {
    text-shadow:  white 1px 1px 0px, white -1px 1px 0px,
                  white 1px -1px 0px, white -1px -1px 0px;
    text-align: center;
    font-weight: bold;
}

.schedule-days .select .date {
    display: block;
    background-color: #ffeaca;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #ffeaca), color-stop(0.00, #FAFAFA));
    background-image: -webkit-linear-gradient(#FAFAFA 0%, #ffeaca 88%);
    background-image: linear-gradient(#FAFAFA 0%, #ffeaca 88%);
    border: 2px solid #ffe7c3;
    border-bottom: none;
}

.schedule-days .sun {
    color: red;
}

.schedule-days .sat {
    color: blue;
}

/**
 * 出勤予定の女の子のコンテンツ部(TAB)
 */
.girls-content {
    margin: 0 0 1.5em;
}

.girls-content > li {
    display: none;
}

.girls-content > li.select {
    display: block;
    background-color: #ffeaca;
    padding:8px 0;
}

/**
 * 出勤予定の女の子のコンテンツ部(アイテム)
 */
.girls-content-item > li {
    float: left;
    width: 33%;
}

.girls-content-item a {
    display: block;
    position: relative;
    width: 95px;
    height: 127px;
    margin: 5px auto;
    background-color: #fff;
    border: 1px solid #ccc;
    padding: 1px;
    overflow: hidden;
}

.girls-content-item .photo-image {
    width: 100%;
}

.girls-content-item .new-face {
    position: absolute;
    top: 2px;
    right: 2px;
    display: block;
}

.girls-content-item a > .text-box {
    position: absolute;
    width: 95px;
    bottom: 0;
    background-color: rgba(255,255,255,0.70);
    line-height: 20px;
    font-size: 13px;
    text-align: center;
    font-weight: bold;
    color: #333;
}

.girls-content-item .name {
    color: #c7121c;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.girls-content-item .scedule {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

/**
 * もっと見る
 */
.girls-content .more-link {
    text-align: right;
    margin: 15px 5px 5px 0;
    font-weight: bold;
}

/**
 * お店自由コンテンツ表示
 */
.freecontent-entry {
    margin: 0 0 1.5em;
}

.freecontent-entry .ttl {
    margin-top: .5em;
}

.freecontent-entry .content {
    margin: .5em;
}

.freecontent-entry .content .left {
    float: left;
    width: 110px;
    height: 138px;
    overflow: hidden;
    margin: 3px 2px 0 0;
}

.freecontent-entry .content:after {
    content: "";
    clear: both;
    display: block;
}

.freecontent-entry .photo {
    padding: 1px;
    border: 1px solid #ccc;
}

.freecontent-entry .photo > img {
    width: 100%;
    height: auto;
    display: block;
}

.freecontent-entry .content .text {
    line-height: 1.5em;
    font-size: 14px;
}

.freecontent-entry .more-link {
    text-align: right;
    margin: 0 1em;
}

/**
 * コース説明
 */
.remarks-item {
    display: none;
}

.remarks-item.select {
    display: block;
}

/**
 * 再登録
 */
.re-register-box {
    margin: 5px;
}

/**
 * ヘッダー部配置
 */
.header-box {
    position: relative;
    z-index: 4;
    height: 48px;
}

.header-box .home-link {
    position: absolute;
    height: 36px;
    width: 160px;
    top: 50%;
    left: 3px;
    margin-top: -18px;
}

.header-box .menu-btn {
    position: absolute;
    height: 26px;
    width: 30px;
    right: 12px;
    top: 50%;
    margin-top: -13px;
}

.header-box .register-btn {
    position: absolute;
    height: 2em;
    width: 5em;
    top: 50%;
    right: 6em;
    margin-top: -1em;
}

.header-box .login-btn {
    position: absolute;
    height: 2em;
    width: 5em;
    top: 50%;
    right: .5em;
    margin-top: -1em;
}

/**
 * ボタン装飾
 */
.header-box .btn a {
    display: block;
    color: white;
    background-color: #048bce;
    border-radius: 4px;
    line-height: 2em;
    text-align: center;
    box-shadow: inset 0 -1px 1px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.4);
}

/**
 * ハンバーガーアイコン配置
 * .menu-btnがabsoluteのためrelative設置なし
 */
.menu-btn .menu-trigger-icon {
    position: absolute;
    width: 22px;
    top: 50%;
    left: 50%;
    margin-left: -11px;
}

/**
 * ハンバーガーアイコン線要素配置
 * menu-trigger-iconがabsoluteのためrelative設置なし
 */
.menu-trigger-icon span {
    position: absolute;
    width: 100%;
    height: 2px;
}

.menu-trigger-icon span:nth-of-type(1) {
    top: -8px;
}

.menu-trigger-icon span:nth-of-type(2) {
    top: -1px;
}

.menu-trigger-icon span:nth-of-type(3) {
    top: 6px;
}

/**
 * マイページ用プルダウン表示部配置
 */
.inner-menu-box {
    position: relative;
}

.inner-menu-box .inner {
    position: absolute;
    width: 100%;
    margin-top: -403px;
    z-index: 3;
}

.inner-menu-box .inner.open {
    margin-top: 0px;
}

/**
 * 18歳未満お断り切り換え
 */
.enter-conection {
    display: none;
}

.adalut_sw.open .enter-conection {
    display: block;
}

.adalut_sw.open .show-content {
    display: none;
}

/**
 * 当サイトは風俗（デリヘル等）のアダルト向けのコンテンツが含まれております。
 * これより先は18歳未満の方のアクセスはご遠慮ください。
 */
.under18 {
    margin: 10px 5px 10px 60px;
    position: relative;
    min-height: 50px;
}

.under18:before {
    content: "";
    display: block;
    width: 51px;
    height: 49px;
    left: -55px;
    position: absolute;
    background-image: url(../img/under18-icon.png);
    background-size: contain;
    vertical-align: middle;
}

/**
 * Enter/Leaveボタン-レイアウト
 */
.entry-box > .enter-box > a,
.entry-box > .leave-box > a {
    display: block;
    line-height: 3em;
    text-align: center;
}

.entry-box > .enter-box,
.entry-box > .leave-box {
    margin: 20px 10px;
}

/**
 * Enter/Leaveボタン-装飾
 */
.entry-box > .enter-box > a {
    font-size: 16px;
    color: #fff;
    font-weight: bold;
    text-shadow: 0 2px 1px rgba(0, 0, 0, 0.4), 0 1px 1px rgba(244, 48, 89, 1);
    letter-spacing: 0;
    box-shadow: inset 0 -1px 1px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.4);
    border-radius: 4px;
    text-decoration: none;
    background-color: #048bce;
}

.entry-box > .leave-box > a {
    font-size: 16px;
    color: #fff;
    font-weight: bold;
    text-shadow: 0 2px 1px rgba(0, 0, 0, 0.4), 0 1px 1px rgba(63, 169, 199, 1);
    letter-spacing: 0;
    box-shadow: inset 0 -1px 1px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.4);
    border-radius: 4px;
    text-decoration: none;
    background-color: gray;
}

/**
 * 会員登録案内
 */
.registration-guidance {
    margin: 10px 0;
}

/**
 * 会員登録ボタン、再登録手続きへ進むボタン
 */
.registration-guidance .register-link {
    width: 154px;
    display: block;
    margin: 0 auto 58px auto;
}

.registration-guidance .register-link a {
    display: block;
    line-height: 29px;
    text-align: center;
    background-color: #f4f3ec;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #f4f3ec), color-stop(0.00, #fefefd));
    background-image: -webkit-linear-gradient(#fefefd 0%, #f4f3ec 88%);
    background-image: linear-gradient(#fefefd 0%, #f4f3ec 88%);
    border: 1px solid #C5C5C5;
    border-radius: 6px;
}

/**
 * TOPページ女の子一覧表示用
 */
.girls-list {
    border-top: 3px #D1D3D2 solid;
    background-color: #F2F2F2;
}

/**
 * 女の子の名前
 */
.girl-name {
    font-size: 18px;
    vertical-align: middle;
}

.girl-name * {
    vertical-align: inherit;
}

/**
 * ヘッダー部のホームリンク
 */
.header-box .home-link {
    color: white;
}

.header-box .shopname {
    font-size: 12px;
    line-height: 1.2em;
    font-weight: normal;
}

/**
 * よろしければレビュー投稿をお願いします
 */
.review-guide {
    background-color: #c7121c;
    color: #fffae6;
    padding: .7em;
    text-shadow: 1px 1px 1px #bfbfbf;
}

.review-guide a {
    text-decoration: underline;
    text-shadow: none;
}


/**
 * レビュー投稿
 */
.review-post {
    margin: 20px 5px;
    border: 1px solid #9E9E9E;
}

.review-post .caption {
    padding: 10px;
    border-top: 1px solid #DBD8CF;
    border-bottom: 1px solid #DBD8CF;
    background-color: #F9F9F9;
}

.review-post .input-box {
    padding: 20px;
}

.review-post .input-text {
    width: 100%;
    padding: .5em .3em;
    font-size: 14px;
    box-shadow: inset 0 1px 4px rgba(0,0,0,.2);
    border: 1px solid #AAA;
    box-sizing: border-box;
}

.review-post .full-star {
    font-size: 28px;
    line-height: 1em;
}

.review-post .submit {
    padding: 20px;
    border-top: 1px solid #DBD8CF;
}

.review-post .submit-confirm {
    display: table;
    width: 100%;
}

.review-post .submit input[name=confirm] {
    width: 100%;
}

.review-post .submit input[name=return] {
    display: table-cell;
    width: 50%;
}

.review-post .submit input[name=fin] {
    display: table-cell;
    width: 50%;
}

.review-post .submit input[type=submit] {
    height: 45px;
    color: #fff;
    text-align: center;
    border: 1px solid #C7C7C7;
    border-radius: 5px;
    background-color: #048bce;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #048bce), color-stop(0.00, #34a9e4));
    background-image: -webkit-linear-gradient(#34a9e4 0%, #048bce 88%);
    background-image: linear-gradient(#34a9e4 0%, #048bce 88%);
}

/**
 * レビュー投稿表示
 */
.review-item {
    margin: 5px;
    border: 1px solid #ded7d7;
    padding: 5px;
    border-radius: 5px;
}

.review-item .customer-name {
    font-size: 16x;
}

.review-item .star {
    color: gold;
    font-size: 20px;
    text-shadow: 1px 1px 2px #666;
}

.review-item .title {
    font-weight: bold;
}

.review-item .reply {
    border-top: 1px solid #ded7d7;
}

.review-item .reply .message {
    position: relative;
    background-color: #DDEEFF;
    border: 1px solid #ded7d7;
    padding: 5px;
    border-radius: 5px;
    color: #666;
    margin-top: 6px;
}

.review-item .reply .message:before {
    content: "";
    position: absolute;
    border-bottom: 9px solid #DDEEFF;
    border-right: 10px solid transparent;
    top: -8px;
    left: 20px;
}

.review-item .reply .message:after {
    content: "";
    position: absolute;
    z-index: -1;
    border-bottom: 10px solid #ded7d7;
    border-right: 12px solid transparent;
    top: -10px;
    left: 19px;
}

.review-item .details-btn {
    display: inline-block;
    padding: 2px 3px;
    border: 1px solid #dddddd;
    margin-left: .5em;
    border-radius: 5px;
    margin-bottom: 5px;
    color: #666;
    background-color: #F1F1F1;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#FEFEFE), to(#F1F1F1));
    background-image: -webkit-linear-gradient(top, #FEFEFE, #F1F1F1);
    background-image: linear-gradient(#FEFEFE, #F1F1F1);
}

.review-all {
    margin: 1em;
}

/**
 * レビュー投稿履歴
 */
.review-postguide li {
    margin: .5em;
    border: 1px solid #666;
    padding: .5em;
    border-radius: .5em;
    box-shadow: 1px 1px 1px #666;
}

.review-postguide .postrequest-none {
    background-color: white;
}

.review-postguide .postrequest-fin {
    background-color: #e8e8e8;
}

/**
 * 外部認証リンク
 */
.extauth-box {
    display: block;
    margin: 0 auto 58px auto;
    text-align: center;
}

.extauth-box .auth-link {
    display: inline-block;
    padding: .5em 1em;
    line-height: 1em;
    margin: .5em;
}

/**
 * リンクボタン装飾 -灰色-
 */
.btn-style {
    background-color: #f4f3ec;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #f4f3ec), color-stop(0.00, #fefefd));
    background-image: -webkit-linear-gradient(#fefefd 0%, #f4f3ec 88%);
    background-image: linear-gradient(#fefefd 0%, #f4f3ec 88%);
    border: 1px solid #C5C5C5;
    border-radius: 6px;
}

/**
 * リンクボタン装飾 -黒-
 */
 .btn-style-black {
    background-color: #060606;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #060606), color-stop(0.00, #5C5E63));
    background-image: -webkit-linear-gradient(#5C5E63 0%, #060606 88%);
    background-image: linear-gradient(#5C5E63 0%, #060606 88%);
    border: 1px solid #1b1b1b;
    border-radius: 6px;
    color: white;
 }

/**
 * 新規メール会員登録フォームレイアウト
 */
.register-mailform-box {
    margin: 15px 5px;
}

/**
 * 新規メール会員登録フォームレイアウト-
 */
.register-text-center {
    text-align: center;
}

/**
 * 新規メール会員登録フォーム外枠ボーダ
 */
.register-mailform-border {
    border: 1px solid #9E9E9E;
}

/**
 * フォームタイトル
 */
.mailform-title {
    padding: 10px;
    border-bottom: 1px solid #DBD8CF;
    background-color: #F9F9F9;
}

/**
 * フォームタイトル-メインカラー
 */
.mailform-title-color {
    background-color: #E2E2E2;
}

/**
 * 入力要素のレイアウト
 * 外枠をpadding調整、内部(textarea)はwidth 100%
 */
.register-mailform-input-box {
    padding: 25px;
}

.register-mailform-input-box .input-textarea {
    width: 100%;
    line-height: 32px;
}

/**
 * 入力要素のスタイル
 */
.register-mailform-input-style {
    font-size: 14px;
    box-shadow: inset 0 1px 4px rgba(0,0,0,.2);
    border: 1px solid #AAA;
}

/**
 * 入力要素のboxサイズ調整
 */
.box-size {
    box-sizing: border-box;
}

/**
 * 送信ボタンのレイアウト
 * 外枠に20pxのパディングとし、内側のボタンは100%
 */
.submit-box {
    padding: 20px;
}

.submit-box .submit-btn {
    width: 100%;
    height: 45px;
    text-align: center;
}

/**
 * 送信ボタンのレイアウト
 * 上下にボタンがある場合、マージンを20px取る
 */
.submit-box-updown + .submit-box-updown {
    margin-top: 25px;
}

/**
 * 要素境界のボーダ
 */
.register-mailform-border-top {
    border-top: 1px solid #DBD8CF;
}

/**
 * 送信ボタンの装飾 -青-
 */
.blue-submit-btn-style {
    color: #fff;
    border: 1px solid #C7C7C7;
    border-radius: 5px;
    background-color: #048bce;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #048bce), color-stop(0.00, #34a9e4));
    background-image: -webkit-linear-gradient(#34a9e4 0%, #048bce 88%);
    background-image: linear-gradient(#34a9e4 0%, #048bce 88%);
}

/**
 * 送信ボタンの装飾 -灰色-
 */
.grey-submit-btn-style {
    color: #fff;
    border: 1px solid #C7C7C7;
    border-radius: 5px;
    background-color: #636363;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #444444), color-stop(0.00, #636363));
    background-image: -webkit-linear-gradient(#636363 0%, #444444 88%);
    background-image: linear-gradient(#636363 0%, #444444 88%);
}

/**
 * 注意※確認メールが届かない場合
 */
.register-attestation-text-box {
    margin: 10px 5px;
}

/**
 * 簡単！登録までの3step(テキスト領域マージン調整)
 * 新規メール会員登録時、パスワードリセットの文言
 */
.register-mail-textbox {
    margin: 5px;
}

/**
 * 次への矢印は中央配置
 */
.register-mail-next {
    text-align: center;
}

/**
 * 赤太字
 */
.text-style-red-bold {
    color: #c7121c;
    font-weight: bold;
}

/**
 * 太字
 */
.text-style-bold {
    font-weight: bold;
}

/**
 * WEB予約
 */
.header-webrsv {
    font-size: 18px;
    line-height: 1.2em;
}

/**
 * WEB予約 - タイプ配置
 */
.header-webrsv-type {
    position: absolute;
    top: 4px;
    padding: 1px 4px 0 4px;
    border-radius: 4px;
}

/**
 * WEB予約 - 予約仕様装飾
 */
.reservation-type {
    margin-left: 83px;
    background-color: #E91E63;
}

/**
 * スタイル適用パーツ
 */
.style-b {
    color: #c7121c;
    font-weight: bold;
    font-size: 17px;
}
.style-e {
    text-align: center;
    font-size: 15px;
    color: #c7121c;
    font-weight: bold;
}
.style-f {
    color: #c7121c;
    font-weight: bold;
    font-size: 17px;
}
.style-g {
    text-align: center;
    font-size: 16px;
    color: #c7121c;
    font-weight: bold;
}

/**
 * オプション選択
 */
.option-lest-box label > input {
    display: none;
}

.option-lest-box label > span {
    display: inline-block;
    background-color: #FDFCFC;
    border: 1px solid #9E9999;
    padding: 3px;
    margin: 3px;
    border-radius: 5px;
    font-size: 16px;
}

.option-lest-box label > :checked + span {
    background-color: #4294ff;
    border-color: #3d8df5;
    color: #fff;
    text-shadow: -1px -1px rgba(0,0,0,.3);
    box-shadow: 2px 2px 2px #939393;
}

/**
 * リンクボタン配置
 */
.register-link-btn {
    width: 154px;
    display: block;
    margin: 0 auto 58px auto;
}

.register-link-btn .btn {
    display: block;
    line-height: 29px;
    text-align: center;
}

/**
 * 利用規約リンク配置
 */
.kiyaku-link {
    margin-top: 20px;
    text-align: center;
}

/**
 * 小さいテキスト装飾
 */
.small-text {
    font-size: 0.7em;
}

/**
 * 背景パーツ
 */
.background-e2 { background-color: #E2E2E2; }
.background-f9 { background-color: #f9f9f9; }
.background-ff { background-color: #ffffc5; }

/**
 * ボーダーパーツ
 */
.border-9e { border: 1px solid #9E9E9E; }
.border-top-db { border-top: 1px solid #DBD8CF; }
.border-top-dotted { border-top: 2px dotted #888888; }
.border-bottom-dotted { border-bottom: 2px dotted #888888; }
.border-e2 { border: 1px solid #e2e2e2; }

/**
 * テキストボックスパーツ
 */
.input-text {
    width: 100%;
    line-height: 32px;
    font-size: 14px;
    box-shadow: inset 0 1px 4px rgba(0,0,0,.2);
    border: 1px solid #AAA;
    box-sizing: border-box;
    padding: 0 .5em;
}

/**
 * padding パーツ
 */
.pa-tb5-lr10 { padding: 5px 10px; }
.pa-a3 { padding: 3px; }
.pa-a5 { padding: 5px; }
.pa-a10 { padding: 10px; }
.pa-a20 { padding: 20px; }
.pa-tb3-lr0 { padding: 3px 0; }
.pa-tb1em-lr0 { padding: 1em 0; }
.pa-a_5em { padding: .5em; }
.pa-a1em { padding: 1em; }

/**
 * margin パーツ
 */
.ma-tb15-lr5 { margin: 15px 5px; }
.ma-tb5-lr15 { margin: 5px 15px; }
.ma-tb15-lr30 { margin: 15px 30px; }
.ma-tb0-lr4 { margin: 0 4px; }
.ma-tb0-lr5 { margin: 0 5px; }
.ma-l1em { margin-left: 1em; }
.ma-a5 { margin: 5px; }
.ma-tb15-lr3 { margin: 15px 3px; }
.ma-tb20-lr8 { margin: 20px 8px; }
.ma-tb10-lr0 { margin: 10px 0; }
.ma-l5em { margin-left: .5em; }
.ma-b20 { margin-bottom: 20px; }
.ma-tb5-lr0 { margin: 5px 0; }
.ma-tb1em-lr0 { margin: 1em 0; }
.ma-t1em { margin-top: 1em; }
.ma-a1rm { margin: 1em; }

/**
 * フォント サイズパーツ
 */
.font12 { font-size: 12px; }
.font13 { font-size: 13px; }
.font15 { font-size: 15px; }
.font17 { font-size: 17px; }
.font20 { font-size: 20px; }

/**
 * WIDTH パーツ
 */
.w12p { width: 12%; }
.w16p { width: 16%; }

/**
 * 日時選択 のページング
 */
.reservation-paging {
    padding: 5px;
}

.reservation-paging .left {
    width: 35%;
    float: left;
}

.reservation-paging .right {
    width: 35%;
    float: right;
}

.reservation-paging .item {
    padding: 5px;
    text-align: center;
    font-weight: bold;
    font-size: 14px;
    border-radius: 3px;
}

.reservation-paging .enabled {
    color: #0070c9;
    border: 1px solid #0070c9;
}

.reservation-paging .disabled {
    color: #666;
    border: 1px solid #d6d6d6;
}

.text-right {
    text-align: right;
}

.coupon-head-a {
    background-color: #26396a;
    color: white;
}
.coupon-head-b {
    background-color: #6f1328;
    color: white;
}
.coupon-head-c {
    background-color: #111;
    color: white;
}

.coupon-short-condition {
    background-color: #ff009c;
    color: white;
}

.coupon-head-a-pos {
    position: relative;
    padding: 1em 4em 1em 1em;
}

.coupon-head-a-pos .condition {
    position: absolute;
    top: 50%;
    right: .5em;
    margin: -10px 0;
    padding: 2px 12px;
    border-radius: 1em;
}
