@charset "utf-8";

/*-------------------------------------------------------------------
    * sp_base.css
-------------------------------------------------------------------*/

html {
    -webkit-text-size-adjust: none;
}

html,
body {
    text-align: center;
    color: #555;
    font-family: 'Hiragino Kaku Gothic Pro', "Helvetica";
    line-height: 1.5;
    font-size: 14px;
}
a {
    color: #04c;
}

/* ---------------------------------------ヘッダー */
.headbox {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}


/* ---------------------------------ヘッダーメニュー */

header div.all_navi {
    height: 50px;
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid #B5B5B5;
}
header div.all_navi .logo {
    position: absolute;
    top: 5px;
    left: 5px;
}
header div.all_navi ul {
    position: absolute;
    top: 0;
    right: 0px;
}
header div.all_navi ul li {
    float: left;
    position: relative;
}


/* ヘッダーアイコン */
header div.all_navi ul > li a,
header div.all_navi ul > li.naviSearch span,
header div.all_navi ul > li.naviMenu span {
    content: "";
    width: 50px;
    height:50px;
    display: block;
    z-index: -1;
    margin: 0 auto;
    text-decoration: none;
    background-image: url(../img/base/common_sprite.png);
    background-repeat: no-repeat;
    background-size: 45px auto;
    -webkit-background-size: 45px auto;
    -moz-background-size: 45px auto;
    overflow:hidden;
    text-indent:100%;
    white-space:nowrap;
}
.all_navi ul > li.naviSearch span {
    background-position: 0 8px;
}
.all_navi ul > li.naviNews a {
    background-position: 0 -38px;
}
.all_navi ul > li.naviFav a {
    background-position: 0 -83px;
}
.all_navi ul > li.naviMenu span {
    background-position: 0 -131px;
}
.all_navi ul > li.naviRegister a {
    background-position: 0 -183px;
}
.all_navi ul > li.naviLogin a {
    background-position: 0 -229px;
}
.all_navi ul > li.naviMenu a {
    margin: 0;
}

.all_navi ul > li.naviNews .ico_new {
    position: absolute;
    top: 3px;
    left: 50%;
    padding: 1px 5px 0;
    background-color: #FF4444;
    border: 2px solid #fff;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    font-size: 10px;
    color: #fff;
}

/* 登録ボタン・ログインボタン */
.headbox_btn {
    position: absolute;
    top: 8px;
    right: 5px;
}
 .headbox_btn .headbox_navi {
     display: table;
 }
 .headbox_btn .headbox_navi li {
    display: table-cell;
    padding-left: 5px;
 }
.headbox_btn .headbox_navi li a {
    display: block;
    margin: 0;
    padding: 5px 7px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    font-size: 12px;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    color: #fff;
}
.headbox_btn .headbox_navi li.regist a {
    background: -moz-linear-gradient(top,  #1ab049 0%, #29924A 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#1ab049), color-stop(100%,#29924A));
    background: -webkit-linear-gradient(top,  #1ab049 0%, #29924A 100%);
    background: linear-gradient(to bottom,  #1ab049 0%, #29924A 100%);
    border: 1px solid #214E0C;
    border-bottom: 2px solid #214E0C;
    -webkit-box-shadow: inset 1px 1px 0 #78C792;
    box-shadow: inset 1px 1px 0 #78C792;
}
.headbox_btn .headbox_navi li.login a {
    background: -moz-linear-gradient(top, #FF4B4B 0%, #f00 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#FF4B4B), color-stop(100%,#f00));
    background: -webkit-linear-gradient(top, #FF4B4B 0%, #f00 100%);
    background: linear-gradient(to bottom, #FF4B4B 0%, #f00 100%);
    border: 1px solid #BF1B1B;
    border-bottom: 2px solid #BF1B1B;
    -webkit-box-shadow: inset 1px 1px 0 #FFB0B0;
    box-shadow: inset 1px 1px 0 #FFB0B0;
}


/* ---------------------------------------フッター */

footer {
    margin-top: 60px;
    padding-bottom: 55px;
    position: relative;
}
footer .footer_menu {
    margin: 20px 10px 10px;
    font-size: 12px;
}
footer .footer_menu li {
    margin-right: 0.5em;
    padding-left: 1.0em;
    display: inline-block;
    border-left: 1px solid #ddd;
    white-space: nowrap;
}
footer .footer_menu li a {
    text-decoration: none;
    color: #333;
}
footer .footer_menu li:first-child {
    border-left: none;
}

/* page top */
#gotoTop {
    position: fixed;
    bottom: 65px;
    z-index:9999;
    right: 10px;
    -webkit-tap-highlight-color: transparent;
}
#gotoTop img {
    width: 50px;
    height: auto;
}
.gotop {
    margin: 30px 30px 0;
    padding: 5px 0;
    background: -moz-linear-gradient(top,  #ffffff 0%, #ffffff 50%, #eeeeee 51%, #eeeeee 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(50%,#ffffff), color-stop(51%,#eeeeee), color-stop(100%,#eeeeee));
    background: -webkit-linear-gradient(top,  #ffffff 0%,#ffffff 50%,#eeeeee 51%,#eeeeee 100%);
    background: linear-gradient(to bottom,  #ffffff 0%,#ffffff 50%,#eeeeee 51%,#eeeeee 100%);
    border: 1px solid #535353;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}
.gotop span {
    padding-right: 15px;
    position: relative;
    font-weight: bold;
    text-decoration: none;
    color: #535353;
}
.gotop span:after {
    width: 6px;
    height: 6px;
    display: block;
    content: "";
    position: absolute;
    top: 6px;
    right: 0px;
    border-top: 2px solid #D31A1A;
    border-right: 2px solid #D31A1A;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);}

/* copyright */
.copyright {
    margin: 5px 0 0;
    padding: 0 0 10px;
}
.copyright p {
    font-size: 11px;
    text-shadow: 0 -1px 1px #fff;
}

/* ----------------------------ナビ */
.fnavi{
    z-index:9990;
    background: #FFF;
    position: fixed;
    bottom: 0;
    width: 100%;
    transform: -webkit-translate3d(0,0,9999px);
    transform: translate3d(0,0,9999px);
}
.fnavi ul {
    border-top: 2px solid #ffab47;
    overflow: hidden;
}
.fnavi li{
    float: left;
    width: 20%;
    height: 52px;
    position: relative;
}
.fnavi li a {
    display: block;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    height: 52px;
}
.fnavi .fnavi_01 {
    background: url(../img/base/common_sprite.png) no-repeat center -2094px;
    background-size: 60px auto;
}
.fnavi .fnavi_02 {
    background: url(../img/base/common_sprite.png) no-repeat center -2156px;
    background-size: 60px auto;
}
.fnavi .fnavi_03 {
    background: url(../img/base/common_sprite.png) no-repeat center -2218px;
    background-size: 60px auto;
}
.fnavi .fnavi_04 {
    background: url(../img/base/common_sprite.png) no-repeat center -2280px;
    background-size: 60px auto;
}
.fnavi .fnavi_05 {
    background: url(../img/base/common_sprite.png) no-repeat center -2342px;
    background-size: 60px auto;
    position: relative;
}
.fnavi .on {
    background-color: #fff4e6;
}
.fnavi .ico_number {
    position: absolute;
    top: 0;
    right: 8%;
    padding: 1px 2px 0;
    background-color: #FF4444;
    border: 2px solid #fff;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    font-size: 10px;
    color: #fff;
}
.fnavi .ico_new {
    position: absolute;
    top: 1px;
    right: 0;
    padding: 1px 3px 0;
    background-color: #FF4444;
    border: 2px solid #fff;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    font-size: 9px;
    color: #fff;
}

/* ---------------------------------------コンテンツマッチ広告 */
.adnetwork {
    margin: 10px auto 0;
    text-align: center;
    z-index: 0;
}
#container>.adnetwork {
    margin-bottom: 20px;
}
.adnetwork img {
    z-index: 0!important;
}

/* ---------------------------------------お知らせ欄 */
.information {
    margin: 8px 10px;
}

.information p {
    text-align: left;
    color: #f00;
}

.information p span.title {
    display: block;
    font-weight: bold;
    text-align: center;
}

/* タイムセール詳細用ポイント表示 */
#ad_detail dl.sale_detail  dd .ci-point,
#ad_detail dl.sale_detail  dd del{
    background-image: url("../../img/icon/ico-pt.gif");
    background-repeat: no-repeat;
    background-position: 0 center;
    -webkit-background-size: 12px 12px;
    -moz-background-size: 12px 12px;
    background-size: 12px 12px;
    padding:0 0 0 17px;
}

/* ------------------------------CSSアニメーション */

/* リニューアル時のアニメーションアイコン */

#gnavi ul li:nth-child(4) {
    position: relative;
}
#gnavi ul li:nth-child(4) span.ico_renewal {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    background-color: #FBFFD6;
    background-image: -webkit-linear-gradient(-45deg, #FFF784 25%, transparent 25%, transparent 50%, #FFF784 50%, #FFF784 75%, transparent 75%, transparent);
    background-image: linear-gradient(-45deg, #FFF784 25%, transparent 25%, transparent 50%, #FFF784 50%, #FFF784 75%, transparent 75%, transparent);
    background-size: 12px 12px;/*数字を大きくすれば太く、小さくすれば細くなります。*/
    line-height: 60px;
    letter-spacing: -1.2px;
    font-size: 11px;
    font-weight:bold;
    text-align: center;
    color: #FF4444;
}
/*blink animation*/
#gnavi>ul li:nth-child(4) span.blink {
    animation: blink 1.2s ease-in-out 40 alternate forwards;
    -webkit-animation: blink 1.2s ease-in-out 40 alternate forwards;
    -moz-animation: blink 1.2s ease-in-out 40 alternate forwards;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}



/*-------------------------------------------------------------------
    * sp_common.css
-------------------------------------------------------------------*/


/* ------------------------------案件一覧ページ共通 */
#index div#contents{
    margin-top: 0;
}
ul.ad-list {
    margin: 0;
}
ul.ad-list li {
    border-bottom: 1px solid #ccc;
    text-align: left;
    overflow: hidden;
}
ul.ad-list li .btn-box{
    padding: 0 10px 10px 10px;
    text-align: center;
}
ul.ad-list li a {
    display: block;
    position: relative;
    padding: 10px;
    text-decoration: none;
}
ul.ad-list li a:hover {
    display: block;
    padding: 10px;
    text-decoration: none;
}
ul.ad-list li a.btn-ad-detail{
    float: left;
    width: 60px;
    border: 1px #858585 solid;
    border-radius: 5px;
    font-weight: bold;
    color: #4b4b4b;
    background: -moz-linear-gradient(top, #ffffff 0%, #e9e9e9 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#e9e9e9));
    background: -webkit-linear-gradient(top, #ffffff 0%,#e9e9e9 100%);
    background: linear-gradient(to bottom, #ffffff 0%,#e9e9e9 100%);
}
ul.ad-list li a.btn-ad-point{
    border: 1px solid #214E0C;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    background: -moz-linear-gradient(top, #1ab049 0%, #29924A 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#1ab049), color-stop(100%,#29924A));
    background: -webkit-linear-gradient(top, #1ab049 0%, #29924A 100%);
    background: linear-gradient(to bottom, #1ab049 0%, #29924A 100%);
    -webkit-box-shadow: inset 1px 1px 0 #78C792;
    box-shadow: inset 1px 1px 0 #78C792;
    font-weight: bold;
    color: #fff;
}
ul.ad-list li .img {
    display: table-cell;
    min-width: 80px;
    padding: 0 10px 0 0;
    vertical-align: top;
    line-height: 1.3;
}

@-webkit-keyframes blink{
    0% {opacity:0;}
    50% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    50% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    50% {opacity:1;}
}
ul.ad-list li .txt-box {
    display: table-cell;
    width: 100%;
    line-height: 1.3;
    vertical-align: top;
}
ul.ad-list li .txt-box h2 {
    width: 95%;
    padding: 0;
    background: none;
    font-size: 14px;
    font-weight: bold;
    text-decoration: underline;
}
ul.ad-list li .txt-box .summary-txt {
    margin: 7px 0 0;
    color: #555;
}
ul.ad-list li .txt-box p {
    font-size: 12px;
    color: #333;
}
ul.ad-list li .txt-box .point {
    margin: 5px 0 3px;
    padding: 0 0 0 3px;
    line-height: 1.2;
}
ul.ad-list li .txt-box .point .ci-point {
    font-size: 22px;
    font-weight: bold;
    color: #f55;
}
ul.ad-list li .txt-box .point .pt{
    font-size: 12px;
}
ul.ad-list li .txt-box .point del {
    margin: 0 2px 0 0;
    padding: 0 0 0 3px;
    text-decoration: line-through;
    color: #333;
}
ul.ad-list li .txt-box .point ins {
    padding: 0 0 0 3px;
    font-size: 20px;
    font-weight: bold;
    text-decoration: none;
    color: #f55;
}
ul.ad-list li ul.carrier-icon {
    height: 15px;
    margin: 0;
    overflow: hidden;
    line-height: 100%;
    text-align: left;
}
ul.ad-list li ul.carrier-icon li {
    float: left;
    margin: 0 2px 0 0;
    border: none;
}
ul.ad-list li ul.carrier-icon li:last-child {
    float: left;
    margin: 0;
    border: none;
}
ul.ad-list li ul.carrier-icon li img {
    width: 25px;
    height: auto;
}
ul.ad-list .ui-btn-inner, ul.ad-list .ui-li-heading {
    white-space: normal;
}

/* もっと見る */
.loadmore {
    display: inline-block;
    position: relative;
    padding-right: 20px;
}
.loadmore:after {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFA131;
    border-right: 2px solid #FFA131;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}
a#loading {
    margin: 10px 60px 0;
    background: #fff;
    -webkit-box-shadow: 0px 1px 3px #cec4b9;
    -moz-box-shadow: 0px 1px 3px #cec4b9;
    box-shadow: 0px 1px 3px #cec4b9;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    padding: 8px 0;
    display: block;
    position: relative;
    text-decoration: none;
    color: #555;
}
a.line {
    border: 1px solid #CECECE;
}

/* -------------------ログイン中の名前ポイント表示 */

.member-box-in {
    width: 100%;
    display: table;
    padding: 3px 5px;
    box-sizing: border-box;
    line-height: 1.3;
    border-bottom: 1px solid #B5B5B5;
}
.member-box-in div {
    padding: 7px 0;
    display: table-cell;
}
.member-box-in .user-pt {
    width: 60%;
    text-align: left;
    border-right: 1px solid #B5B5B5;
}
.member-box-in .user-pt a {
    position: relative;
    margin-left: 2px;
    padding: 2px 15px 2px 5px;
    color: #555;
    border: 1px solid #959595;
    border-radius: 20px;
    text-decoration: none;
    font-size: 11px;
}
.member-box-in .user-pt a::before {
     position: absolute;
     content: '';
     width: 4px;
     height: 4px;
     border-top: solid 1px #697b91;
     border-right: solid 1px #697b91;
     -webkit-transform: rotate(45deg);
     transform: rotate(45deg);
     top: 50%;
     right: 7px;
     margin-top: -3px;
}
.member-box-in .user-name {
    width: 40%;
    padding: 7px 0 7px 2px;
    text-align: right;
    font-size: 11px;
}
@media screen and (max-width: 320px) {
    .member-box-in .user-name {
        width: 35%;
    }
}
.member-box-in .user-name p {
    max-width: 120px;
    display: inline-block;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    font-weight: bold;
}
@media screen and (max-width: 320px) {
    .member-box-in .user-name p {
        max-width: 80px;
    }
}
.member-box-in .user-pt span {
    padding: 1px 0 1px 15px;
    background: url("../img/base/icon_point.png") no-repeat 0 3px;
    background-size: 12px auto;
    font-size: 15px;
    font-weight: bold;
}
.member-box-in .user-pt span .pt {
    padding: 0 0 0 2px;
    background: none;
    font-size: 12px;
}

/* 新着情報 */
ul#news {
    margin: 10px;
    padding: 0 10px;
    border: 1px #6c6c6c solid;
    border-radius: 5px;
    -webkit-box-shadow: 1px 1px 3px #D7D7D7;
    box-shadow: 1px 1px 3px #D7D7D7;
    font-size: 12px;
    text-align: left;
}
ul#news li {
    padding: 6px 0;
    border-bottom: 1px #CCC dotted;
}
ul#news li:last-child {
    border-bottom: none;
}

/* 検索結果 */
#srcresult {
    margin: 0;
    padding: 5px 10px;
    background: #ffdcdc;
    text-align: left;
}
#srcresult strong {
    display: inline;
    font-weight: bold;
}

/* 検索結果なし */
#no-result {
    margin: 10px;
    padding: 38px 0;
    border: 1px solid #d00;
    border-radius: 5px;
    background-color: #fbfaf7;
}
#no-result p {
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    color: #f00;
}


/* 各設定 */
#index #container, #shopping #container {
    margin: 0 0 15px;
}
#index #container section, #present #container section {
    margin: 0 0 20px;
}

/* インデックス＆検索ページ帯＆ポイント交換ページ帯 */
#search #container section h1,
#index #container section #exchange h1 {
    padding: 4px 0;
    background: #d00;
    border-top: 2px solid #900;
}
#index #container section h1 span,
#search #container section h1 span,
#exchange #container section h1 span {
    padding-left: 20px;
    background: url("../img/base/icon_list.png") no-repeat 0 -40px;
    background-size: 19px auto;
    -webkit-background-size: 19px auto;
    -moz-background-size: 19px auto;
    font-family: "HiraKakuProN-W6";
    font-size: 17px;
    font-weight: bold;
    text-shadow: 0 -1px 1px #666;
    color: #fff;
}

/* -------------------旧ショッピングページ */
#shopping #container section h2.category-ttl {
    padding: 4px 0;
    background: #b2e89a;
    font-weight: bold;
}
/* カテゴリ一覧 */
.service_category {
    overflow: hidden;
}
.service_category li {
    float: left;
    width: 50%;
}
.service_category li a {
    padding: 10px 5px 10px 10px;
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    font-size: 12px;
    font-weight: bold;
    text-align: left;
    text-decoration: none;
    color: #555;
}

/* 特集帯 */
#special section {
    margin-bottom: 20px;
}
#special .bnr-sp {
    width: 100%;
    height: auto;
    margin: 0;
}
#special .bnr-sp img {
    display: block;
    width: 100%;
    height: auto;
}
#special section h1 {
    padding: 4px 0;
    background: #f64141;
    border-top: 2px solid #990000;
}
#special #container section h1 span {
    padding-left: 20px;
    background: url("../img/base/icon_list_present.png") no-repeat 0 0px;
    background-size: 19px auto;
    -webkit-background-size: 19px auto;
    -moz-background-size: 19px auto;
    font-family: "HiraKakuProN-W6";
    font-size: 17px;
    font-weight: bold;
    text-shadow: 0 -1px 1px #666;
    color: #fff;
}
#special ul.ad-list li .img {
    display: table-cell;
    padding: 0 10px 0 0;
    vertical-align: top;
    max-width: 80px;
    min-width: 80px;
    text-align: cebter;
}
#special ul.ad-list li img {
    max-width: 80px;
}
#special #container section h2.category-ttl {
    padding: 4px 0;
    background: #a8dcfa;
    font-weight: bold;
}
#special #container section .comment_area {
    margin: 8px 10px 0 10px;
    padding: 10px 0 0 0;
    border-top: 1px dotted #cccccc;
    font-size: 12px;
    color: #333333;
}
#special #special_list h1 {
    padding: 4px 0;
    background: none repeat scroll 0 0 #f64141;
    border-top: 2px solid #990000;
}
#special #special_list h1 span {
    padding-left: 20px;
    background: url("../img/base/icon_list_present.png") no-repeat 0 0px;
    background-size: 19px auto;
    -webkit-background-size: 19px auto;
    -moz-background-size: 19px auto;
    font-family: "HiraKakuProN-W6";
    font-size: 17px;
    font-weight: bold;
    text-shadow: 0 -1px 1px #666;
    color: #fff;
}
#special #special_list li {
    background: -moz-linear-gradient(top, #fff, #f2f2f2);
    background: -webkit-linear-gradient(top, #fff 0%,#f2f2f2 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f2f2f2));
    background: linear-gradient(to bottom, #fff 0%,#f2f2f2 100%);
    border-bottom: 1px solid #cccccc;
    text-align: left;
    overflow: hidden;
}
#special #special_list a {
    display: block;
    padding: 8px 10px;
    text-decoration: none;
    background: url("../img/base/arrow.png") no-repeat 98% center;
    background-size: 8px auto;
    -webkit-background-size: 8px auto;
    -moz-background-size: 8px auto;
}
#special #special_list li:hover {
    background: -moz-linear-gradient(top, #f2f2f2, #fff);
    background: -webkit-linear-gradient(top, #f2f2f2 0%,#fff 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#f2f2f2), to(#fff));
    background: linear-gradient(to bottom, #f2f2f2 0%,#fff 100%);
}
#special #special_list ul li img {
    vertical-align: text-bottom;
}
#special #special_list ul li .img {
    display: table-cell;
    padding: 0 10px 0 0;
    vertical-align: text-bottom;
}
#special #special_list ul li img {
    max-width: 60px;
}
#special #special_list ul li .title {
    width: 100%;
    display: table-cell;
    vertical-align: middle;
    line-height: 1.3;
}
#special #special_list .title h2 {
    font-weight: bold;
    font-size: 13px;
    color: #333333;
}

/* ----------------懸賞TOP・検索結果の検索窓 */
.search_bar {
    padding: 10px;
    background-color: #FFECEF;
}
.search_bar form {
    font-size: 14px;
}
.search_bar input {
    width:55%;
    padding: 5px 8px;
    line-height: 1.6;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    border: 1px solid #828282;
    -webkit-appearance: none;
    font-size: 16px;
    color: #555;
}
.search_bar .search_btn {
    padding: 10px 18px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    background-color: #FA3B3B;
    -webkit-appearance: none;
    text-decoration: none;
    text-align: center;
    color:#fff;
}


/* --------------------------------詳細ページ・共通ヘッダ */
header.ad_detail_header,
header.ad_details {
    width: 100%;
    height: 35px;
    position: relative;
    padding: 5px 0;
    font-size: 14px;
    color: #fff;
    overflow: hidden;
}
header.ad_detail_header h1,
header.ad_detail_header a,
header.ad_details h1,
header.ad_details a {
    display: inline-block;
}
header.ad_detail_header h1,
header.ad_details h1 {
    width: 60%;
    padding-top: 6px;
    font-size: 16px;
    font-weight: bold;
    text-shadow: 0 -1px 1px #666;
}
header.ad_detail_header a,
header.ad_details a {
    width: 60px;
    position: absolute;
    padding: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    -webkit-box-shadow: 0 1px 1px rgba(255,255,255,0.6);
    box-shadow: 0 1px 1px rgba(255,255,255,0.6);
    font-size: 12px;
    text-align: center;
    text-decoration: none;
}
header.ad_detail_header a.go_back,
header.ad_details a.go_back {
    padding-right: 0;
    padding-left: 10px;
    margin-left: 10px;
    left: 0;
}
header.ad_detail_header a.go_back:after,
header.ad_details a.go_back:after {
    content: "";
    width: 6px;
    height: 6px;
    display: block;
    position: absolute;
    top: 9px;
    left: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(225deg);
            transform: rotate(225deg);
}
header.ad_detail_header a.home,
header.ad_details a.home {
    margin-right: 10px;
    right: 0;
}

/* --------------------------------詳細ページ別・ヘッダ */
/* サービス */
header.service_title {
    background: #ECB82C;
    border-top: 2px solid #B58A11;
}
header.service_title a {
    background: #C7981A;
    border: 1px solid #92721C;
    color: #fff;
}

/* ショッピング */
header.shopping_title {
    background: #7dcd59;
    border-top: 2px solid #479822;
}
header.shopping_title a {
    background: #62AF3F;
    border: 1px solid #478A28;
    color: #fff;
}

/* アプリ */
header.appli_title {
    background: #5db8fe;
    border-top: 2px solid #0e96ff;
}
header.appli_title a {
    background: #4A9DDE;
    border: 1px solid #2576B5;
    color: #fff;
}
/* null_title */
header.ad_detail_header,
header.null_title {
    background: #fa3b3b;
    border-top: 2px solid #d51f1f;
}
header.ad_detail_header a,
header.null_title a {
    background: #BF1B1B;
    border: 1px solid #960A0A;
    color: #fff;
}


/* --------------------------------詳細ページ・ポイント詳細 */
#ad_detail #ad-topbox h1 {
    margin:6px 0;
    font-weight: bold;
    font-size: 18px;
    text-align: left;
}
#ad_detail section#ad-topbox {
    margin: 0 10px;
}
#ad_detail .ad-detail-logout {
    margin: 0 0 15px;
    padding: 7px;
    background: #ff9;
    border: 1px solid #fc3;
    text-align: left;
}
#ad_detail .ad-detail-logout a {
    margin: 0 20px 0 0;
    padding: 0 0 0 20px;
    background: url("../img/base/icon_list.png") no-repeat 0 -252px;
    background-size: 19px auto;
    -webkit-background-size: 19px auto;
    -moz-background-size: 19px auto;
    text-align: right;
}
#ad_detail .ad-bnr {
    min-height: 80px;
    display: table-cell;
    margin: 15px auto 0;
    padding: 0 30px 0 0;
    text-align: center;
    vertical-align: top;
}
#ad_detail .ad-txt-summary {
    margin: 15px;
    padding: 5px;
    background: #fff1f1;
    text-align: left;
}
#ad_detail .ad-txt {
    margin: 15px 20px 0;
    text-align: left;
}
#ad_detail .totop {
    margin: 15px 20px;
    text-align: right;
}
#ad_detail .totop a {
    padding: 0 0 0 25px;
    background: url("../img/base/icon_list.png") no-repeat 0 -254px;
    background-size: 19px auto;
    -webkit-background-size: 19px auto;
    -moz-background-size: 19px auto;
}
#ad_detail dl {
    width: 100%;
    display: table-cell;
    margin: 0;
    padding: 0;
    border-bottom: none;
    text-align: left;
}
#ad_detail dl dt {
    width: 93%;
    display: inline-table;
    padding: 3px 10px;
    vertical-align: top;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    background: #600;
    color: #FFF;
}
#ad_detail dl dd {
    margin: 2px 0 5px;
    padding-left: 1em;
    display: inline-table;
    text-indent: -1em;
}
#ad_detail dl dd .ci-point {
    padding: 0 0 0 3px;
    font-size: 22px;
    font-weight: bold;
    color: #f55;
}
#ad_detail dl dd .pt{
    font-size: 12px;
}
#ad_detail dl dd del {
    margin: 0 2px 0 0;
    padding: 0 0 0 3px;
    text-decoration: line-through;
    color: #333;
}
#ad_detail dl dd ins {
    padding: 0 0 0 3px;
    font-weight: bold;
    font-size: 20px;
    text-decoration: none;
    color: #f55;
}

/* ボタン */
p.btn-gosite {
    margin: 10px auto 20px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    border: 1px solid #214E0C;
    background: -moz-linear-gradient(top,  #37ba61 0%, #0C9E3A 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#37ba61), color-stop(100%,#0C9E3A));
    background: -webkit-linear-gradient(top, #37ba61 0%, #0C9E3A 100%);
    background: linear-gradient(to bottom, #37ba61 0%, #0C9E3A 100%);
    -webkit-box-shadow: inset 1px 1px 0 #78C792;
    box-shadow: inset 1px 1px 0 #78C792;
    font-weight: bold;
    text-align: center;
}
p.btn-gosite a {
    padding: 10px 0;
    display: block;
    font-size: 16px;
    text-decoration: none;
    color: #fff;
}

/* 諸条件 */
#ad_detail section.condition-box {
    margin: 30px 0 0;
    padding: 0;
}
#ad_detail section.condition-box h2 {
    padding: 5px 0;
    background: #ffdbdb;
    font-weight: bold;
    color: #490000;
}
#ad_detail p.ad-txt {
    margin: 10px 10px 0;
}

#ad_detail p.caution {
    font-weight: bold;
    color: #F00;
}

/* 注意事項 */
#ad_detail section.warning h2 {
    padding: 5px 0;
    background: #cecece;
    font-weight: bold;
    color: #4d4d4d;
}


/* ---------------------------------------エラーページ */

#error_common {
    text-align: center;
}
#error_common p {
    margin: 20px 0 10px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
}
#error_common img {
    display: block;
    margin: 20px auto;
}
#error_common .ui-header,
#error_common .ui-footer {
    margin: 10px auto;
    overflow: inherit;
    text-align: center;
}
#error_common .ui-header .btn-back,
#error_common .ui-footer .btn-back {
    display: block;
    margin: 0 auto 10px;
}
#error_common .ui-header .ui-btn,
#error_common .ui-footer .ui-btn {
    display: block;
    width: 82%;
    margin: 1px auto 0;
    padding: 3px 7px 3px 0;
    border: 1px solid #A00;
    background: #D00;
    -webkit-appearance: none;
    border-radius: 5px;
    font-size: 16px;
    text-shadow: 0 -1px 1px #666;
    text-decoration: none;
    color: #fff;
}

#error_common .ui-header .ui-btn-left,
#error_common .ui-footer .ui-btn-left {
    position: relative;
    left: 0;
}

/* ---------------------------------------ローテ */
#index .camp_bnr {
    margin-bottom: 0px;
}
.camp_bnr {
    margin-bottom: 4px;
}
.camp_bnr img {
    width: 100%;
    height: auto;
}
.rotation {
    box-sizing: border-box;
    background: #fff;
    padding: 15px 0 0;
}
.rotation h2 {
    text-align: center;
}
.rotation .swipe {
    overflow-y: hidden;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    background: #fff;
}
.rotation .rotation_inner {
    display: inline-block;
    box-sizing: border-box;
    margin: 0 10px;
}
.rotation ul {
    display: flex;
    flex: 1 0 0%;
}
.rotation ul li {
    margin-right: 10px;
    background: #fff;
    white-space: normal;
}
.rotation ul li:last-child { margin-right: 0;}
.rotation ul li a {
    height: 100%;
    display: block;
    text-decoration: none;
    font-size: 0;
}
.rotation ul li img {
    width: 140px;
    min-width: 140px;
}
@media screen and (min-width:480px) {
  .rotation ul li img {
      width: 170px;
      min-width: 170px;
  }
}/* 480px以上 */
.rotation_txt {
    padding: 10px 0;
    margin: 0 auto 30px;
    position: relative;
    background: #FF5555;
    color: #fff;
    font-weight: bold;
    font-size: 15px;
    text-align: center;
}
.rotation_txt a {
    color: #FFF000;
    text-decoration: underline;
}
.rotation_txt::before{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: 0;
  right: 0;
  bottom: -8px;
  margin: 0 auto;
  border-top: 8px solid #FF5555;
  border-right: 15px solid transparent;
  border-left: 15px solid transparent;
}

/* ---------------------------------------トップページバナー */
.bnr-sp, .bnr-sp img {
    width: 100%;
    margin: 0 auto 10px;
}

/* --------------------------シンプルページ:スマートフォン版トップへ */
#index .btn_top {
    width: 200px;
    position: relative;
    margin: 20px auto 0;
    padding: 10px 7px 10px 0;
    background: #44ba90;
    box-shadow: 0px 1px 3px #cec4b9;
    -webkit-appearance: none;
    border-radius: 5px;
}
#index .btn_top a {
    color: #fff;
    text-decoration: none;
    padding-left: 10px;
}
#index .btn_top a:before {
    content: "";
    width: 6px;
    height: 6px;
    display: block;
    position: absolute;
    top: 15px;
    left: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(225deg);
            transform: rotate(225deg);
}

/* --------------------------ソート機能 */
.sort_area{
    text-align:center;
    padding:15px 0;
    background:#EEEEEE;
}
.sort_area li{
    display:inline-block;
    margin:0 20px 0 0;
}
.sort_area li a{
    display:inline-block;
    width:130px;
    background:#fff;
    color:#A7A7A7;
    border: 1px solid #CECECE;
    font-weight:bold;
    text-decoration:none;
    padding:6px 0;
    border-radius:20px;
    box-shadow: 0px 1px 3px #cec4b9;
}
.sort_area li:last-child{
    margin:0;
}
.sort_area li.selecte a{
    background:#FFAB47;
    border: 1px solid #FFAB47;
    color:#fff;
}

/* ------------臨時のお知らせ */
div .information {
    width: 100%;
    padding: 10px;
    margin: 0;
    display: flex;
    box-sizing: border-box;

}
.information h2 {
    padding: 5px 15px;
    display: table-cell;
    border-bottom: none;
    background: #f94f5a;
    color: #fff;
    text-align: center;
    font-size: 14px;
    flex-basis: 60px;
}
div .information a {
    display: table-cell;
    padding: 5px 8px;
    border-radius: 0;
    background: #fff;
    text-align: left;
    text-decoration: none;
    border: 1px solid #bebebe;
    flex-basis: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #555;
}
div .information a:after {
    border-top: none;
    border-right: none;
}
/* ------------パンくずリスト */
.breadcrumb-list {
    box-sizing: border-box;
    margin: 10px 0;
    padding: 10px;
    background-color: #fff;
    text-align: left;
}
.breadcrumb-list li {
   display: inline;
   font-size: 12px;
}
.breadcrumb-list li:after {
    content:" > ";
    padding: 0 3px;
}
.breadcrumb-list li:last-child:after { content:"";}
.breadcrumb-list li a {
    line-height: 2.2em;
    text-decoration: underline;
}


/*-------------------------------------------------------------------
    * drawer_menu.css
-------------------------------------------------------------------*/

/*-------------------------------------------*/
/*  CONTENTS:
/*--------------------------------------------
1.0 - メインメニュースライド
    1.1 - 汎用
    1.2 - コンテンツ
    1.3 - 閉じる
2.0 - 検索窓スライド
    2.1 - 汎用
    2.2 - コンテンツ
    2.3 - 閉じる
---------------------------------------------*/

/*-------------------------------------------*/
/*  1.0 - メインメニュースライド
/*-------------------------------------------*/

/*  1.1 - 汎用
-------------------------------------------- */
.slideMenu {
    width: 85%;
    height: 100%;
    position: fixed;
    top: 0;
    right: -85%;
    z-index: 300;
    padding: 0 0 30px;
    background: #FFF;
    box-sizing: border-box;
    text-align: center;
    overflow: auto;
    transform: translate3d(0,0,99999px);
    line-height: 1.5;
}
.slideMenu a {
    color: #555;
    text-decoration: none;
}
.shade{
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    z-index: 200;
    background-color: #333;
    background-color: rgba(0,0,0,.7);
    cursor: pointer;
    transform: translate3d(0,0,99998px);
}

/*  1.2 - コンテンツ
-------------------------------------------- */
/* 未ログイン時 */
.non_login > div {
    overflow: hidden;
    border-top: 1px solid #CECECE;
    border-bottom: 1px solid #CECECE;
}
.non_login > div a {
    width: 50%;
    float: left;
    box-sizing: border-box;
}
.non_login > div a:first-child {
    border-right: 1px solid #CECECE;
}
.non_login > div a:first-child  span {
    padding-left: 28px;
    background-image: url("../img/base/ico_login.gif");
    background-repeat: no-repeat;
    background-position: 10px center;
    background-size: 12px auto;
}
.non_login a {
    padding: 10px;
    display: block;
}
.non_login .chanceit {
    text-decoration: underline;
}
.non_login .chanceit span {
    position: relative;
}
.non_login .chanceit span::after {
     position: absolute;
     content: '';
     width: 6px;
     height: 6px;
     border-top: solid 2px #ffb359;
     border-right: solid 2px #ffb359;
     -webkit-transform: rotate(45deg);
     transform: rotate(45deg);
     top: 50%;
     margin-top: -3px;
}
/* ログイン時 */
.mainMenu.login {
    border-top: 1px solid #CECECE;
}

/* 共通 */
.slideMenu h2 {
    padding: 8px 0;
    background: #ededed;
    text-align: center;
    font-size: 12px;
    color: #555;
    font-weight: normal;
    border-bottom: none;
}
.slideMenu .mainMenu {
    width: 100%;
    display: table;
    padding: 10px 0;
    table-layout: fixed;
    box-sizing: border-box;
}
.slideMenu .mainMenu > li {
    width: 100%;
    display: table-cell;
    height: 50px;
}
.slideMenu .mainMenu > li a {
    height: 18px;
    display: block;
    margin: 0 5px;
    padding: 40px 0 7px;
    background-image: url(../img/base/common_sprite.png);
    background-repeat: no-repeat;
    background-size: 60px auto;
    color: #555;
    font-size: 9px;
}
.slideMenu .mainMenu > li.category1 a {
    background-position: center -2422px;
}
.slideMenu .mainMenu > li.category2 a {
    background-position: center -1010px;
    background-size: 50px auto;
}
.slideMenu .mainMenu > li.category3 a {
    background-position: center -953px;
    background-size: 50px auto;
}
.slideMenu .mainMenu > li.category4 a {
    background-position: center -1863px;
    background-size: 45px auto;
}
.slideMenu .mainMenu > li.category5 a {
    background-position: center -2564px;
}
.slideMenu .mainMenu > li.category6 a {
    background-position: center -2616px;
}
.slideMenu .mainMenu > li.category7 a {
    background-position: center -2684px;
}
.slideMenu .mainMenu > li.category8 a {
    background-position: center -2755px;
}
.slideMenu .mainMenu > li.category9 a {
    background-image: url("../img/top/ico_category01.png");
    background-position: center 5px;
    background-size: 25px auto;
}
.slideMenu .mainMenu > li.category10 a {
    background-image: url("../img/top/ico_category02.png");
    background-position: center 5px;
    background-size: 25px auto;
}
.slideMenu .mainMenu > li.category11 a {
    background-image: url("../img/top/ico_category04.png");
    background-position: center 5px;
    background-size: 27px auto;
}
.slideMenu .mainMenu > li.category12 a {
   background-position: center -2820px;
}
.slideMenu .mainMenu > li.category13 a {
   background-position: center -2881px;
}
.slideMenu .mainMenu > li.category14 a {
   background-position: center -2943px;
}
.slideMenu .mainMenu > li.category15 a {
   background-position: center -3012px;
}
.slideMenu .mainMenu > li.category16 a {
   background-position: center -3078px;
}

.slidemenyu_bnr {
    padding: 0 10px;
}
.slidemenyu_bnr a {
    display: block;
    margin-bottom: 10px;
}
.slidemenyu_bnr img {
    width: 100%;
}

.slideMenu .btm_link {
    background: #ededed;
    padding: 10px 0;
}
.slideMenu .btm_link ul {
    overflow: hidden;
    width: 100%;
}
.slideMenu .btm_link li {
    float: left;
    width: 50%;
    margin-bottom: 0;
}
.slideMenu .btm_link li img {
    width: 100%;
    height: auto;
}
.slideMenu .btm_link li a {
    padding: 10px 5px;
    display: block;
    box-sizing: border-box;
    border: 1px solid #ededed;
    text-decoration: none;
    font-weight: bold;
    font-size: 12px;
    color: #555;
    background: #fff;
}
.sns_link {
    margin: 20px 0 30px;
}
.sns_link ul {
    padding: 10px 5% 0;
    display: flex;
    justify-content: center;
}
.sns_link li img {
    margin: 0 10px;
    width: 60px;
}

/*  1.3 - 閉じる
-------------------------------------------- */
.slideMenu .control {
    height: 50px;
    vertical-align: middle;
    display: table;
}
.slideMenu .close {
    padding: 3px 7px 3px 10px;
    position: absolute;
    top: 10px;
    right: 10px;
    border-radius: 4px;
    border: 1px solid #cecece;
}
.slideMenu .close .btnClose {
    padding-right: 16px;
    background-image: url("../img/base/ico_close.gif");
    background-repeat: no-repeat;
    background-size: 12px;
    background-position: right 1px;
    vertical-align: middle;
    line-height: 1.0;
    display: inline-block;
}
/*-------------------------------------------*/
/*  1.0 - 検索窓スライド
/*-------------------------------------------*/

/*  2.1 - 汎用
-------------------------------------------- */
.slideMenuSearch {
    width: 100%;
    height: 70vh;
    position: fixed;
    top: -70vh;
    z-index: 300;
    padding: 10px 0;
    background: #FFF;
    text-align: center;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    transform: translate3d(0,0,99999px);
    box-sizing: border-box;
}
.slideMenuSearch  a {
    text-decoration: none;
}

/*  2.2 - コンテンツ
-------------------------------------------- */
.search_area {
    margin-top: 8px;
    box-sizing:border-box;
}
.search_area form {
    width:100%;
}
.search_area form ul {
    display: flex;
}
.search_area form ul li {
    width:50%;
}
.search_area form ul li input{
    display:none;
}
.search_area form ul li label{
    display:block;
    padding: 10px 0;
    height:28px;
    color:#b9b9b9;
    font-size: 14px;
    border-bottom: 2px solid #b9b9b9;
}
.search_area form ul li input[type="radio"]:checked + label {
    color:#555;
    padding: 10px 0;
    position:relative;
    border-bottom: 2px solid #ffb359;
    line-height: 1.5;
    font-weight: bold;
}
.search_area form ul li input[type="radio"]:checked + label:after {
    top: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-top-color: #ffb359;
    border-width: 8px;
    margin-left: -8px;
}
.search_area .searchbox{
    padding: 20px 10px;
    background: #f2f2f2;
    display: table;
}
.search_area .searchbox p{
    display:table-cell;
    width:100%;
}
.search_area .searchbox input{
    height: 40px;
    border: 1px solid #cecece;
    border-radius: 5px;
    -webkit-appearance: none;
    -moz-appearance: none;
    vertical-align: middle;
    line-height: 16px;
    box-sizing: border-box;
    font-size: 16px;
}
.search_area .searchbox input[type="text"] {
    width:100%;
    margin: 0;
    padding: 13px 7px 12px;
    text-align: left;
    color: #555;
}
.search_area .searchbox input[type="submit"] {
    border:none;
    width: 60px;
    padding: 7px 0;
    margin: 0 0 0 5px;
    background: #FFAB47;
    font-weight: normal;
    text-align: center;
    color: #fff;
}
.keywords {
    padding: 10px 0 0;
}
.keywords div {
    padding: 10px 10px 0;
    text-align: left;
}
.keywords div a {
    padding: 7px 14px;
    margin: 0 10px 10px 0;
    display: inline-block;
    border: 1px solid #adadad;
    border-radius: 5px;
    line-height: 1.5;
    font-size: 12px;
    color: #555;
}

/*  2.3 - 閉じる
-------------------------------------------- */
.slideMenuSearch .control {
    width: 100%;
    height: 40px;
    display: flex;
    border-bottom: 1px solid #b5b5b5;
}
.slideMenuSearch h2 {
    padding: 5px 0 0 10px;
    vertical-align: top;
    border-bottom: none;
    line-height: 1.5;
    font-size: 16px;
    font-weight: normal;
    background: #fff;
    color: #555;
}
.slideMenuSearch .close {
    padding: 3px 7px 3px 10px;
    position: absolute;
    top: 10px;
    right: 10px;
    border-radius: 4px;
    border: 1px solid #cecece;
    line-height: 1.5;
}
.slideMenuSearch .close .btnClose {
    padding-right: 16px;
    background-image: url("../img/base/ico_close.gif");
    background-repeat: no-repeat;
    background-size: 12px;
    background-position: right 1px;
    vertical-align: middle;
    line-height: 1.0;
    display: inline-block;
}