:root{
    --new_black: #333;
    --new_navy: #2b4352;
    --new_red: #f05243;
    --new_blue: #1994da;
    --new_water: #00b1d1;
}

/*リセットCSS*/
@font-face{
    font-family: 'Noto Sans';
    src: url('//pointi.jp/css_new/fonts/NotoSansJP-Medium.otf') format('opentype');
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video,input{
    padding: 0;
    margin: 0;
    border: 0;
    font-family: "BIZ UDPGothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, sans-serif;
    letter-spacing: 0.1em;
    line-height: 1;
    text-decoration: none;
}

select{
    background-color: #fff;/* firefoxハック */
}

ul,li{
    list-style: none;
}

.clearfix:after{
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

a{
    color: #1994da;
}

a:hover{
    color: #fd9c00;
}

hr{
    display: none;
}

table{
    border-collapse: collapse;
    border-spacing: 0;
}

.center{
    text-align: center;
}

.font10{
    font-size: 10px;
}

.clear{
    clear: both;
}

.hide{
    display: none;
}

.bold{
    font-weight: bold;
}

.black{
    color: #000;
}

.red{
    color: var(--new_red);
}

.yellow{
    color: #FF0;
}

.ocher{
    color: #f1dc80;
}

.green{
    color: #2ecc71;
}

.white{
    color: #fff;
}

.orange{
    color: #fd9c00;
}

.gray{
    background-color: var(--new_navy);
}

#all_wrap #conts{
    padding-bottom: 30px;
}

#all_wrap #conts #left_middle_wrap_right{
    width: 980px;
}

#all_wrap #conts #left_middle_wrap{
    float: right;
    width: 660px;
}

#all_wrap #conts #middle_right_wrap{
    float: right;
    width: 810px;
}

#all_wrap #conts #middle_right_wrap01{
    float: right;
    width: 725px;
}

#all_wrap #conts #left_wrap{
    float: left;
    width: 200px;
}

#all_wrap #conts #left_wrap01{
    float: left;
    width: 225px;
}

#all_wrap #conts #middle_wrap{
    float: left;
    width: 500px;
    margin-right: 10px;
}

#all_wrap #conts #right_wrap{
    float: right;
    width: 300px;
}

#conts #right_left_ad{
    position: relative;
    width: 980px;
    margin: 0 auto;
}

#conts #right_left_ad .cam_left{
    display: block;
    position: absolute;
    top: 155px;
    left: -275px;
    z-index: 1;
}

#conts #right_left_ad .cam_right{
    display: block;
    position: absolute;
    top: 155px;
    right: -280px;
    z-index: 2;
}

.box_ad,
.box_ad_blank{
    cursor: pointer;
}

#page-wrap{
    clear: both;
    width: 980px;
    margin: auto;
}

.ctrl_scroll{
    display: none;
}

.box_ad .left,
.box_ad_blank .left{
    text-align: center;
}

.right_cnt_wrap .box_ad .left{
    text-align: left;
}

.box_ad .right .name{
    margin-bottom: 5px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.3;
}
.box_ad .right .pt,
.box_ad2 .right .pt,
.box_ad_blank .right .pt,
#textad_wrap #textad ul li a span.pt{
    padding-left: 17px;
    margin-bottom: 5px;
    background-image: url("/img_new/csssprite.png");
    background-repeat: no-repeat;
    background-position: -24px -73px;
    font-size: 12px;
    line-height: 16px;
}
    
.pt2{
    padding-left: 17px;
    margin-bottom: 8px;
    margin-left: 0px;
    background-image: url("/img_new/csssprite.png");
    background-repeat: no-repeat;
    background-position: -24px -69px;
    font-size: 15px;
    line-height: 15px;
}
    
.pt .term{
    display: block;
    margin-top: 18px;
    font-size: 9pt;
    letter-spacing: 2px;
    line-height: 1.6;
}

.pt .imadake,
.term_c,
.price{
    vertical-align: text-top;
}

.pt .term_a{
    font-weight: bold;
    text-decoration: line-through;
    vertical-align: text-top;
}

.pt .term_b{
    font-size: 16pt;
    font-weight: bold;
}

.term_back{
    display: block;
    margin-bottom: 10px;
    font-size: 12px;
    font-weight: bold;
}

.way{
    clear: both;
    margin-bottom: 5px;
    font-size: 12px;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.way .way_icon{
    display: inline-table;
    padding: 1px 2px 0px 4px;
    margin: 3px 3px 3px 0;
    background-color: var(--new_navy);
    border-radius: 3px;
    color: #FFF;
    font-size: 10px;
    font-weight: bold;
    line-height: 14px;
    text-align: center;
    text-decoration: none;
}

#category_wrap #category #tabs,
#category_wrap #category #tabs2,
#popular_wrap #popular #tabs,
#category_wrap #ser_category #tabs,
#revue_wrap #revue #tabs,
#opinion_wrap #tabs{
    border: solid 1px #bbbbbb;
}
#popular_wrap #popular #tabs #tab5{
    width: 94px;
}
#category_wrap #category #tabs li,
#category_wrap #category #tabs2 li,
#popular_wrap #popular #tabs li,
#opinion_wrap #tabs li{
    float: left;
    width: 100px;
    border-right: solid 1px #bbb;
    background-color: #fff;
    cursor: pointer;
    color: #513300;
    font-size: 12px;
    font-weight: bold;
    line-height: 24px;
    text-align: center;
}
#category_wrap #category #tabs li:hover,
#category_wrap #category #tabs2 li:hover,
#popular_wrap #popular #tabs li:hover,
#opinion_wrap #tabs:hover{
    background-color: #ffe6ba;
}
#category_wrap #category #tabs li:last-child,
#category_wrap #category #tabs2 li:last-child,
#popular_wrap #popular #tabs li:last-child,
#category_wrap #ser_category #tabs li:last-child,
#revue_wrap #revue #tabs li:last-child,
#ad_list_wrap #ad_list #tabs li:last-child,
#opinion_wrap #tabs li:last-child{
    border: none;
}
#category_wrap #category #tabs li.open,
#category_wrap #category #tabs2 li.open,
#popular_wrap #popular #tabs li.open,
#category_wrap #ser_category #tabs li.open,
.right_mylist_wrap .right_mylist #tabs li.open,
#revue_wrap #revue #tabs li.open,
#opinion_wrap #tabs li.open{
    background-color: #ffcd75;
    color: #513300;
}
#pointup,
#category_wrap #category .box,
#popular_wrap #popular .box,
#category_wrap #ser_category .box,
#recommend_wrap .box,
#opinion_wrap #opinion .box,
#revue_wrap #revue .box{
    clear: both;
    background-color: #FFF;
    border: solid 1px #bbbbbb;
    border-top: none;
}
#category_wrap #category .box .category_ad,
#popular_wrap #popular .box .category_ad,
#category_wrap #ser_category .box .category_ad,
#pointup_wrap #pointup .box .box_ad ,
#recommend_wrap .box .category_ad{
    float: left;
    padding: 10px 10px 0;
}
#category .box_ad .right .name,
#popular .box_ad .name,
#ser_category .box_ad .right .name,
#pointup_bottom .box_ad .right .name,
#recommend_wrap .box_ad .right .name,
#pointup_wrap .box_ad .name{
    width: 145px;
    margin-bottom: 5px;
    font-size: 11px;
    font-weight: bold;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#category .box_ad .right .name,
#popular .box_ad .right .name,
.right_cnt .box_ad .right .name,
#ser_category .box_ad .right .name,
#pointup_top .box_ad .right .name,
#pointup_bottom .box_ad .right .name,
#recommend_wrap .box_ad .right .name,
#opinion_wrap .box_ad .right .name,
.right_mylist_wrap .box_ad .right .name,
.box_ad_blank .right .name,
.cnt_wrap h3.name{
    margin-bottom: 5px;
    font-size: 11px;
    font-weight: bold;
    line-height: 1.3;
}
.cnt_wrap h3.name{
    margin-bottom: 5px;
    font-size: 11px;
    font-weight: bold;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cnt_wrap_squere{
    margin-bottom: 10px;
    color: #0000ff;
    font-size: 11px;
    font-weight: bold;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cnt_wrap_squere_text_off{
    margin-bottom: 10px;
    color: #0000ff;
    font-size: 13px;
    font-weight: bold;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: center;
    white-space: nowrap;
}
    
#category .pt .term_a,
#popular .pt .term_a,
.right_cnt .pt .term_a,
#ser_category .pt .term_a,
#pointup_top .pt .term_a,
#pointup_bottom .pt .term_a,
#recommend_wrap .pt .term_a,
#opinion_wrap .pt .term_a,
.right_mylist_wrap .pt .term_a,
.cate .pt .term_a{
    font-weight: bold;
    font-size: 11px;
    text-decoration: line-through;
}
#category .pt .term_b,
#popular .pt .term_b,
.right_cnt .pt .term_b,
#ser_category .pt .term_b,
#pointup_top .pt .term_b,
#pointup_bottom .pt .term_b,
#recommend_wrap .pt .term_b,
#opinion_wrap .pt .term_b,
.right_mylist_wrap .pt .term_b,
.cate .pt .term_b{
    font-size: 11pt;
    font-weight: bold;
    vertical-align: text-top;
}

#category .term_back,
#popular .term_back,
.right_cnt .term_back,
#ser_category .term_back,
#pointup_top .term_back,
#pointup_bottom .term_back,
#recommend_wrap .term_back,
#opinion_wrap .term_back,
.right_mylist_wrap .term_back{
    display: block;
    margin-bottom: 10px;
    font-size: 11px;
    font-weight: bold;
}

#right_ad{
    margin-bottom: 5px;
}

#right_adsquere{
    margin-bottom: 1px;
}

.box_ad_no_color .left{
    margin-bottom: 10px;
    text-align: center;
}

.box_ad_no_color .right .name{
    margin-bottom: 5px;
    font-size: 11px;
    font-weight: bold;
    line-height: 1.3;
}

.box_ad_no_color .right .pt {
    padding-left: 17px;
    margin-bottom: 5px;
    background-image: url("/img_new/csssprite.png");
    background-position: -24px -73px;
    background-repeat: no-repeat;
    font-size: 12px;
    line-height: 16px;
}

.box_ad_no_color .right .way {
    font-weight: normal;
}

.box_ad_no_color .cnt_wrap .click_btn_pt{
    display: block;
    margin-bottom: 10px;
    text-align: center;
}

.box_ad_no_color .right .click_btn{
    display: block;
    padding: 5px 0;
    margin: 10px 0;
    background-color: #E8EEF0;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #c8d7dc), color-stop(0.00, #f2f5f6));
    background: -moz-linear-gradient(top, #f2f5f6 0%, #c8d7dc 100%);
    background: -webkit-linear-gradient(top, #f2f5f6 0%, #c8d7dc 100%);
    background: linear-gradient(top, #f2f5f6 0%, #c8d7dc 100%);
    border: solid 1px #ccc;
    border-radius: 5px;
    color: #333;
    text-align: center;
}

.box_ad_no_color .right .click_btn:hover{
    background-color: #E8EEF0;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #f2f5f6), color-stop(0.00, #c8d7dc));
    background: -moz-linear-gradient(top, #c8d7dc 0%, #f2f5f6 100%);
    background: -webkit-linear-gradient(top, #c8d7dc 0%, #f2f5f6 100%);
    background: linear-gradient(top, #c8d7dc 0%, #f2f5f6 100%);
}

.right_cnt_wrap{
    margin-bottom: 10px;
}

.right_cnt_wrap .title{
    padding-left: 27px;
    padding-top: 3px;
    background-image: url("/img_new/csssprite.png");
    background-repeat: no-repeat;
    background-position: 5px -2147px;
    background-color: #343434;
    color: #FFF;
    font-size: 12px;
    font-weight: bold;
    line-height: 22px;
}

.right_cnt_wrap .right_cnt{
    background-color: #FFF;
    border-right: 1px solid #bbb;
    border-bottom: 1px solid #bbb;
    border-left: 1px solid #bbb;
}

.right_cnt_wrap .right_cnt .box_ad,
.right_cnt_wrap .right_cnt .box_ad_blank{
    padding: 10px 10px 5px;
    border-bottom: dashed 1px #bbbbbb;
}

.right_cnt_wrap .right_cnt .box_ad:last-child,
.right_cnt_wrap .right_cnt .box_ad_blank:last-child{
    border-bottom: none;
}

.right_cnt_wrap .right_cnt .box_ad .cnt_wrap .left{
    width: 120px;
    float: left;
}

.right_cnt_wrap .right_cnt .box_ad .cnt_wrap .right{
    width: 148px;
    float: left;
    margin-left: 10px;
}

.right_cnt_wrap .ad_more2,
#opinion .ad_more2{
    clear: both;
    display: block;
    padding: 8px 5px 5px 0;
    font-size: 12px;
    text-align: right;
}

.right_cnt_wrap .ad_more,
.right_mylist .ad_more{
    display: block;
    background-color: #57a065;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0.99, #33713e), color-stop(0.00, #57a065));
    background: -moz-linear-gradient(top, #57a065 0%, #33713e 99%);
    background: -webkit-linear-gradient(top, #57a065 0%, #33713e 99%);
    background: linear-gradient(top, #57a065 0%, #33713e 99%);
    color: #FFF;
    text-align: center;
}

.right_cnt_wrap .ad_more:hover,
.right_mylist .ad_more:hover{
    background-color: #33713e;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0.99, #57a065), color-stop(0.00, #33713e));
    background: -moz-linear-gradient(top, #33713e 0%, #57a065 99%);
    background: -webkit-linear-gradient(top, #33713e 0%, #57a065 99%);
    background: linear-gradient(top, #33713e 0%, #57a065 99%);
}

.right_cnt_wrap .ad_more span,
.right_mylist .ad_more span{
    padding-left: 15px;
    background-image: url("/img_new/csssprite.png");
    background-repeat: no-repeat;
    background-position: 0px -2252px;
    font-size: 12px;
    font-weight: bold;
    line-height: 30px;
    text-align: center;
}

.right_cnt_wrap .title.check{
    padding-left: 27px;
    background-image: url("/img_new/csssprite.png");
    background-repeat: no-repeat;
    background-position: 5px -2179px;
    background-color: #343434;
    color: #FFF;
    font-size: 12px;
    font-weight: bold;
    line-height: 28px;
}

.right_cnt_wrap.topics_wrap .right_cnt{
    border: none;
}
    
.right_cnt_wrap.topics_wrap .title.topics, #right_wrap dl#le_5 dt{
    padding-left: 27px;
    margin-bottom: 10px;
    background-image: url("/img_new/csssprite.png");
    background-repeat: no-repeat;
    background-position: 5px -2280px;
    background-color: #343434;
    color: #FFF;
    font-size: 12px;
    font-weight: bold;
    line-height: 27px;
}

.right_cnt_wrap.topics_wrap .right_cnt .topics_list li{
    margin-top: 0;
    margin-bottom: 5px;
}

.right_cnt_wrap.topics_wrap .right_cnt .topics_list li:last-child{
    margin-bottom: 10px;
}

.right_cnt_wrap .title.click{
    padding-left: 27px;
    background-image: url("/img_new/csssprite.png");
    background-repeat: no-repeat;
    background-position: 5px -2214px;
    background-color: #343434;
    color: #FFF;
    font-size: 12px;
    font-weight: bold;
    line-height: 28px;
}

/*曜日イベ対象 アイコン*/
.icon_wrap01{
    height: 20px;
}

.icon_wrap01 span{
    display: inline-block;
    padding: 3px 4px 2px 5px;
    margin: 0px;
    background-color: #fff;
    border-radius: 5px;
    font-size: 14px;
    font-weight: bold;
    line-height: 20px;
    text-decoration: none;
    text-align: center;
}

.icon_wrap01 .weeks_bonus{
    padding: 2px 4px 1px 5px;
    background-color: #136707;
    color: #FFF;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
}
    
/* ==================================================

 お知らせ　バッチ処理

================================================== */
.count_batch-info{ 
    float: right;
    position: relative;
    margin-right: 60px;
}

.count_num_batch-info{
    position: absolute;
    top: -10px;
    right: -10px;
    width: 20px; 
    height: 16px;
    padding-top: 4px;
    background-color: var(--new_red);
    border-radius: 50%;
    border: solid 2px var(--new_red);
    color: #fff;
    font-size: 12px;
    letter-spacing: 0px;
    text-align: center;
    z-index: 1;
}

/* ==================================================

 エリア右上の三角枠

================================================== */
.point-triangle{
    position: relative;
    font-size: 18px;
    z-index: 1;
}

.point-triangle:after{
    position: absolute;
    content: " ";
    width: 0;
    height: 0;
}

.point-triangle span{
    content: " ";
    position: absolute;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    line-height: 13px;
    text-align: center;
    overflow: hidden;
    z-index: 2;
}

.point-triangle-rt:after{
    top: -1px;
    right: -1px;
    border-bottom: 4em solid transparent;
    border-right: 4em solid var(--new_red);
}

.point-triangle-rt span{
    top: 12px;
    right: 0;
    width: 46px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    overflow: hidden;
}

/* ==================================================

 共通

================================================== */
.box01{
    box-shadow: 0 1px 3px 0 #ccc;
}

#outer .red{
    color: var(--new_red);
}

#outer .blue{
    color: #1994da;
}

#outer .bold,
#outer .red.bold{
    font-weight: bold;
}

#outer mark{
    background: linear-gradient(transparent 75%, yellow 75%);
    color: var(--new_navy);
}

.txt_ind{
    padding-left: 1em;
    text-indent: -1em;
}

.float{
    display: block;
    float: left;
}

.line_through{
    text-decoration: line-through;
}

.bder_so{
    border: #ccc solid 1px;
}
.bdert_so{
    border-top: #ccc solid 1px;
}
.bderb_so{
    border-bottom: #ccc solid 1px;
}
.bderl_so{
    border-left: #ccc solid 1px;
}
.bderr_so{
    border-right: #ccc solid 1px;
}
.bder_da{
    border: #ccc dashed 1px;
}
.bdert_da{
    border-top: #ccc dashed 1px;
}
.bderb_da{
    border-bottom: #ccc dashed 1px;
}
.bderl_da{
    border-left: #ccc dashed 1px;
}
.bderr_da{
    border-right: #ccc dashed 1px;
}
.bder_do{
    border: #ccc dotted 1px;
}
.bdert_do{
    border-top: #ccc dotted 1px;
}
.bderb_do{
    border-bottom: #ccc dotted 1px;
}
.bderl_do{
    border-left: #ccc dotted 1px;
}
.bderr_do{
    border-right: #ccc dotted 1px;
}

.p_0{padding: 0;}

.pt_0{padding-top: 0;}
.pt_5{padding-top: 5px;}
.pt_10{padding-top: 10px;}
.pt_15{padding-top: 15px;}
.pt_20{padding-top: 20px;}
.pt_25{padding-top: 25px;}
.pt_30{padding-top: 30px;}
.pt_35{padding-top: 35px;}
.pt_40{padding-top: 40px;}
.pt_45{padding-top: 45px;}
.pt_50{padding-top: 50px;}

.pb_0{padding-bottom: 0;}
.pb_5{padding-bottom: 5px;}
.pb_10{padding-bottom: 10px;}
.pb_15{padding-bottom: 15px;}
.pb_20{padding-bottom: 20px;}
.pb_25{padding-bottom: 25px;}
.pb_30{padding-bottom: 30px;}
.pb_35{padding-bottom: 35px;}
.pb_40{padding-bottom: 40px;}
.pb_45{padding-bottom: 45px;}
.pb_50{padding-bottom: 50px;}

.pl_0{padding-left: 0;}
.pl_5{padding-left: 5px;}
.pl_10{padding-left: 10px;}
.pl_15{padding-left: 15px;}
.pl_20{padding-left: 20px;}
.pl_25{padding-left: 25px;}
.pl_30{padding-left: 30px;}
.pl_35{padding-left: 35px;}
.pl_40{padding-left: 40px;}
.pl_45{padding-left: 45px;}
.pl_50{padding-left: 50px;}

.pr_0{padding-right: 0;}
.pr_5{padding-right: 5px;}
.pr_10{padding-right: 10px;}
.pr_15{padding-right: 15px;}
.pr_20{padding-right: 20px;}
.pr_25{padding-right: 25px;}
.pr_30{padding-right: 30px;}
.pr_35{padding-right: 35px;}
.pr_40{padding-right: 40px;}
.pr_45{padding-right: 45px;}
.pr_50{padding-right: 50px;}

.m_0{margin: 0;}

.mt_0{margin-top: 0;}
.mt_5{margin-top: 5px;}
.mt_10{margin-top: 10px;}
.mt_15{margin-top: 15px;}
.mt_20{margin-top: 20px;}
.mt_25{margin-top: 25px;}
.mt_30{margin-top: 30px;}
.mt_35{margin-top: 35px;}
.mt_40{margin-top: 40px;}
.mt_45{margin-top: 45px;}
.mt_50{margin-top: 50px;}

.mb_0{margin-bottom: 0;}
.mb_5{margin-bottom: 5px;}
.mb_10{margin-bottom: 10px;}
.mb_15{margin-bottom: 15px;}
.mb_20{margin-bottom: 20px;}
.mb_25{margin-bottom: 25px;}
.mb_30{margin-bottom: 30px;}
.mb_35{margin-bottom: 35px;}
.mb_40{margin-bottom: 40px;}
.mb_45{margin-bottom: 45px;}
.mb_50{margin-bottom: 50px;}

.ml_0{margin-left: 0;}
.ml_5{margin-left: 5px;}
.ml_10{margin-left: 10px;}
.ml_15{margin-left: 15px;}
.ml_20{margin-left: 20px;}
.ml_25{margin-left: 25px;}
.ml_30{margin-left: 30px;}
.ml_35{margin-left: 35px;}
.ml_40{margin-left: 40px;}
.ml_45{margin-left: 45px;}
.ml_50{margin-left: 50px;}

.mr_0{margin-right: 0;}
.mr_5{margin-right: 5px;}
.mr_10{margin-right: 10px;}
.mr_15{margin-right: 15px;}
.mr_20{margin-right: 20px;}
.mr_25{margin-right: 25px;}
.mr_30{margin-right: 30px;}
.mr_35{margin-right: 35px;}
.mr_40{margin-right: 40px;}
.mr_45{margin-right: 45px;}
.mr_50{margin-right: 50px;}

/* chrome, Safari 複数記述はセレクタの仕様で出来ないため個別で充てる*/
input::-webkit-input-placeholder{
    color: #aaa;
}
 
/* Firefox */
input::-moz-placeholder{
    color: #aaa;
}
 
/* Firefox 18以前 */
input:-moz-placeholder{
    color: #aaa;
}
 
/* IE */
input:-ms-input-placeholder{
    color: #aaa;
}

.gototop{
    clear: both;
    display: block;
    margin: 5px 0;
    color: #1994da;
    font-size: 12px;
    text-align: right;
}

.none{
    display: none;
}    

.indent{
    padding-left: 1em;
    text-indent: -1em;
}
    
/* ==================================================

 共通 広告などポイント関係

================================================== */
.pt_arrow{
    margin: 0 5px;
    font-size: 16px;
}

/* ==================================================

 メインページ

================================================== */
#all_wrap{
    min-width: 980px;
}

/* indexのみtext枠、左カラムが浮いているため特殊処理 */
@media screen and (max-width: 1149px){

    #all_wrap.wide_width_wrap{    
        min-width: 980px;
        padding-right: 170px;
    }

}

/* ==================================================

 コンテンツブロッカー

================================================== */
.blocker_wrap .blocker{
    width: 980px;
    padding: 10px 15px 15px;
    margin: 0 auto 15px;
    background-color: #fff;
    border: 4px solid var(--new_red);
    box-sizing: border-box;
    text-align: center;
}

.blocker_wrap .blocker_title{
    display: inline-block;
    position: relative;
    padding: 5px 5px 0 15px;
    margin-bottom: 10px;
    border-bottom: 1px solid var(--new_navy);
    color: var(--new_navy);
    font-size: 14px;
    font-weight: bold;
    line-height: 22px;
}

.blocker_wrap .blocker_title:before{
    content: "";
    position: absolute;
    top: 10px;
    left: 0;
    width: 8px;
    height: 8px;
    background-color: var(--new_water);
    color: var(--new_water);
    font-size: 1px;
}

.blocker_wrap .blocker_msg{
    color: var(--new_navy);
    font-size: 12px;
    line-height: 1.6;
}

/* ==================================================

 SEO対策

================================================== */
#income_seo{
    width: 950px;
    padding: 15px;
    margin: 0 auto 20px;
    background-color: #f2f2f2;
    color: var(--new_navy);
    font-size: 12px;
    line-height: 1.6rem;
}

#income_seo_foot{
    width: 950px;
    padding: 15px;
    margin: 20px auto;
    background-color: #f2f2f2;
    color: var(--new_navy);
    font-size: 12px;
    line-height: 1.6rem;
    text-align: left;
}

/* ==================================================

 パンくず

================================================== */
.bread{
    width: 975px;
    margin: 13px auto 20px;
    padding-left: 5px;
    color: var(--new_navy);
    font-size: 12px;
    line-height: 1.6;
}

/* ==================================================

 メインページ

================================================== */
.logout_index_box{
    width: 980px;
    margin: 0 auto 20px;
    background-color: #777;
    color: #fff;
}

.logout_index_text{
    width: 70px;
    padding: 5px 15px;
    background-color: var(--new_navy);
    border-right: 1px solid #fff;
    font-size: 12px;
    line-height: 1.4;
    text-align: center;
}

.logout_index_box .login_form_title{
    display: block;
    padding-left: 10px;
    margin: 0 5px 5px 0;
    font-size: 12px;
}

.logout_index_box input[type="text"]{
    display: block;
    width: 230px;
    padding: 5px;
    margin-right: 10px;
    border: 1px solid #aaa;
}

.logout_index_box .login_form_title_2{
    display: block;
    margin: 0 5px 5px 0;
    font-size: 12px;
}

.logout_index_box input[type="password"]{
    display: block;
    width: 80px;
    padding: 5px;
    margin-right: 10px;
    border: 1px solid #aaa;
}

.logout_index_box input[type="submit"]{
    display: block;
    width: 120px;
    padding: 5px 10px;
    margin-right: 10px;
    border-radius: 2px;
    cursor: pointer;
    font-size: 12px;
    line-height: 15px;
}

.logout_index_box input[type="submit"]:hover{
    opacity: .8;
}

.logout_index_box .sns_login_btn{
    display: block;
    width: 120px;
    margin-right: 10px;
}

.logout_index_box .sns_login_btn:hover{
    opacity: .8;
}

.logout_index_box .sns_login_btn img{
    display: block;
}

#pickup_text{
    min-width: 1150px;
    padding: 13px 0;
    background-color: #fdb239;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    line-height: 24px;
    text-align: center;
}

#main_wrap{
    position: relative;
    clear: both;
    width: 980px;
    margin: 20px auto 0;
}

#main_wrap #left_col{
    float: left;
    width: 200px;
    margin-right: 20px;
}

#main_wrap #main_col{
    float: left;
    width: 760px;
}

/* ==================================================

 左カラム コンテンツメニュー

================================================== */
/* メニュー indexやmy_page */
.menu_title{
    width: 100%;
    padding: 10px 0 10px 10px;
    background-color: var(--new_navy);
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    line-height: 24px;
    text-align: center;
    box-sizing: border-box;
}

.cnt_menu{
    width: 100%;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    box-sizing: border-box;
}

.cnt_menu a{
    display: table;
    background-color: #f2f2f2;
    border-bottom: 1px dashed #ccc;
}

.cnt_menu a:last-child{
    border-bottom: none;
}

.cnt_menu a .cnt_menu_icon{
    display: table-cell;
    width: 45px;
    height: 45px;
    margin: 0 auto;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    background-color: var(--new_navy);
    text-indent: -9999px;
    vertical-align: middle;
}

/* コンテンツメニュー */
.cnt_menu a .cnt_menu_icon.credit{
    -webkit-mask-image: url("/img_new/icon/menu/credit.svg");
    mask-image: url("/img_new/icon/menu/credit.svg");
}
.cnt_menu a .cnt_menu_icon.melimelo{
    -webkit-mask-image: url("https://img.pointi.jp/assets/pc/img_new/icon/menu/money.svg");
    mask-image: url("https://img.pointi.jp/assets/pc/img_new/icon/menu/money.svg");
}
.cnt_menu a .cnt_menu_icon.trophy{
    -webkit-mask-image: url("/img_new/icon/menu/trophy.svg");
    mask-image: url("/img_new/icon/menu/trophy.svg");
}
.cnt_menu a .cnt_menu_icon.point_hunter{
    -webkit-mask-image: url("/img_new/icon/menu/point_hunter.svg");
    mask-image: url("/img_new/icon/menu/point_hunter.svg");
}
.cnt_menu a .cnt_menu_icon.oripa{
    -webkit-mask-image: url("https://img.pointi.jp/assets/pc/img_new/icon/menu/oripa.svg");
    mask-image: url("https://img.pointi.jp/assets/pc/img_new/icon/menu/oripa.svg");
}
.cnt_menu a .cnt_menu_icon.coupon{
    -webkit-mask-image: url("/img_new/icon/menu/coupon.svg");
    mask-image: url("/img_new/icon/menu/coupon.svg");
}
.cnt_menu a .cnt_menu_icon.sale_info{
    -webkit-mask-image: url("/img_new/icon/menu/sale_info.svg");
    mask-image: url("/img_new/icon/menu/sale_info.svg");
}
.cnt_menu a .cnt_menu_icon.calendar{
    -webkit-mask-image: url("/img_new/icon/menu/calendar.svg");
    mask-image: url("/img_new/icon/menu/calendar.svg");
}
.cnt_menu a .cnt_menu_icon.funding{
    -webkit-mask-image: url("/img_new/icon/menu/funding.svg");
    mask-image: url("/img_new/icon/menu/funding.svg");
}
.cnt_menu a .cnt_menu_icon.opinion{
    -webkit-mask-image: url("/img_new/icon/menu/opinion.svg");
    mask-image: url("/img_new/icon/menu/opinion.svg");
}
.cnt_menu a .cnt_menu_icon.click{
    -webkit-mask-image: url("/img_new/icon/menu/click.svg");
    mask-image: url("/img_new/icon/menu/click.svg");
}
.cnt_menu a .cnt_menu_icon.magazine{
    -webkit-mask-image: url("/img_new/icon/menu/magazine.svg");
    mask-image: url("/img_new/icon/menu/magazine.svg");
}
.cnt_menu a .cnt_menu_icon.recipla{
    -webkit-mask-image: url("https://img.pointi.jp/assets/pc/img_new/icon/menu/recipla.svg");
    mask-image: url("https://img.pointi.jp/assets/pc/img_new/icon/menu/recipla.svg");
}
.cnt_menu a .cnt_menu_icon.game{
    -webkit-mask-image: url("/img_new/icon/menu/game.svg");
    mask-image: url("/img_new/icon/menu/game.svg");
}
.cnt_menu a .cnt_menu_icon.sp_official{
    -webkit-mask-image: url("/img_new/icon/menu/sp_official.svg");
    mask-image: url("/img_new/icon/menu/sp_official.svg");
}
.cnt_menu a .cnt_menu_icon.catcher{
    -webkit-mask-image: url("/img_new/icon/menu/catcher.svg");
    mask-image: url("/img_new/icon/menu/catcher.svg");
}
.cnt_menu a .cnt_menu_icon.lottery{
    -webkit-mask-image: url("/img_new/icon/menu/lottery.svg");
    mask-image: url("/img_new/icon/menu/lottery.svg");
}
.cnt_menu a .cnt_menu_icon.challenge{
    -webkit-mask-image: url("/img_new/icon/menu/challenge.svg");
    mask-image: url("/img_new/icon/menu/challenge.svg");
}
.cnt_menu a .cnt_menu_icon.review{
    -webkit-mask-image: url("/img_new/icon/menu/review.svg");
    mask-image: url("/img_new/icon/menu/review.svg");
}
.cnt_menu a .cnt_menu_icon.char{
    -webkit-mask-image: url("/img_new/icon/menu/char.svg");
    mask-image: url("/img_new/icon/menu/char.svg");
}
.cnt_menu a .cnt_menu_icon.tutorial{
    -webkit-mask-image: url("/img_new/icon/menu/tutorial.svg");
    mask-image: url("/img_new/icon/menu/tutorial.svg");
}

/* マイカテゴリー */
.cnt_menu a .cnt_menu_icon.my_page{
    -webkit-mask-image: url("/img_new/icon/my_page/my_page.svg");
    mask-image: url("/img_new/icon/my_page/my_page.svg");
}
.cnt_menu a .cnt_menu_icon.prof_change{
    -webkit-mask-image: url("/img_new/icon/my_page/prof_change.svg");
    mask-image: url("/img_new/icon/my_page/prof_change.svg");
}
.cnt_menu a .cnt_menu_icon.my_book{
    -webkit-mask-image: url("/img_new/icon/my_page/my_book.svg");
    mask-image: url("/img_new/icon/my_page/my_book.svg");
}
.cnt_menu a .cnt_menu_icon.exchange{
    -webkit-mask-image: url("/img_new/icon/my_page/exchange.svg");
    mask-image: url("/img_new/icon/my_page/exchange.svg");
}
.cnt_menu a .cnt_menu_icon.total_points{
    -webkit-mask-image: url("/img_new/icon/my_page/total_points.svg");
    mask-image: url("/img_new/icon/my_page/total_points.svg");
}
.cnt_menu a .cnt_menu_icon.my_coupon{
    -webkit-mask-image: url("/img_new/icon/my_page/my_coupon.svg");
    mask-image: url("/img_new/icon/my_page/my_coupon.svg");
}
.cnt_menu a .cnt_menu_icon.share{
    -webkit-mask-image: url("/img_new/icon/my_page/share.svg");
    mask-image: url("/img_new/icon/my_page/share.svg");
}
.cnt_menu a .cnt_menu_icon.mnt_history{
    -webkit-mask-image: url("/img_new/icon/my_page/mnt_history.svg");
    mask-image: url("/img_new/icon/my_page/mnt_history.svg");
}
.cnt_menu a .cnt_menu_icon.tentame_history{
    -webkit-mask-image: url("/img_new/icon/my_page/tentame_history.svg");
    mask-image: url("/img_new/icon/my_page/tentame_history.svg");
}
.cnt_menu a .cnt_menu_icon.favorite{
    -webkit-mask-image: url("/img_new/icon/my_page/favorite.svg");
    mask-image: url("/img_new/icon/my_page/favorite.svg");
}
.cnt_menu a .cnt_menu_icon.day_form_list{
    -webkit-mask-image: url("/img_new/icon/my_page/day_form_list.svg");
    mask-image: url("/img_new/icon/my_page/day_form_list.svg");
}
.cnt_menu a .cnt_menu_icon.day_search{
    -webkit-mask-image: url("/img_new/icon/my_page/day_search.svg");
    mask-image: url("/img_new/icon/my_page/day_search.svg");
}
.cnt_menu a .cnt_menu_icon.contactus{
    -webkit-mask-image: url("/img_new/icon/my_page/contactus.svg");
    mask-image: url("/img_new/icon/my_page/contactus.svg");
}
.cnt_menu a .cnt_menu_icon.form_list{
    -webkit-mask-image: url("/img_new/icon/my_page/form_list.svg");
    mask-image: url("/img_new/icon/my_page/form_list.svg");
}
.cnt_menu a .cnt_menu_icon.cancel{
    -webkit-mask-image: url("/img_new/icon/my_page/cancel.svg");
    mask-image: url("/img_new/icon/my_page/cancel.svg");
}

.cnt_menu a .cnt_menu_title{
    position: relative;
    display: table-cell;
    width: 143px;
    height: 44px;
    padding-left: 10px;
    background-color: #fff;
    color: var(--new_navy);
    font-size: 12px;
    font-weight: bold;
    line-height: 1.2;
    vertical-align: middle;
}

.cnt_menu a:hover .cnt_menu_title{
    background-color: #ffc;
}

.cnt_menu a .cnt_menu_title span{
    vertical-align: bottom;
}

.cnt_menu a .cnt_menu_title .new_img{
    position: absolute;
    top: -5px;
    left: -30px;
    width: 40px;
    height: 40px;
    animation-name: blink;
    animation-duration: 1.7s;
    animation-iteration-count: 4;/* infinite */
    background-image: url("/img_new/icon/attention.svg");
    background-size: 100%;
}

@keyframes blink{
    0%{opacity: 1;}
    50%{opacity: 0;}
    75%{opacity: .5;}
    100%{opacity: .75;}
}

/* ==================================================

 左カラム カテゴリー検索

================================================== */
.cat_menu_title{
    width: 100%;
    padding: 10px 0 10px 10px;
    background-color: var(--new_navy);
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    line-height: 24px;
    text-align: left;
    box-sizing: border-box;
}

#left_col .cat_menu{
    width: 100%;
    border: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    box-sizing: border-box;
}

#left_col .cat_menu li{
    position: relative;
    background-color: #fff;
    border-bottom: 1px dashed #ccc;
}

#left_col .cat_menu li:last-child{
    border-bottom: none;
}

#left_col .cat_menu li:hover{
    background-color: #ffd;/* ドロップダウンの場合も考えaタグでもなく親要素のli */
}

#left_col .cat_menu li a{
    display: block;
    padding: 10px;
    color: var(--new_navy);
    font-size: 12px;
    font-weight: bold;
    line-height: 24px;
    vertical-align: middle;
}

/* サブカテゴリ */
#left_col .cat_menu .sub_cat {
    visibility: hidden;
    opacity: 0;
}

#left_col .cat_menu li:hover .sub_cat{
    visibility: visible;
    opacity: 1;
    z-index: 10000;
}

#left_col .cat_menu li .sub_cat {
    position: absolute;
    top: -1px;
    left: 198px;
    padding-left: 5px;
    width: 100%;
    background-color: transparent;
}

#left_col .cat_menu li .sub_cat li{
    border-left: 1px #ccc solid;
    border-right: 1px #ccc solid;
}

#left_col .cat_menu li .sub_cat li:first-child{
    border-top: 1px #ccc solid;
}

#left_col .cat_menu li .sub_cat li:last-child{
    border-bottom: 1px #ccc solid;
}

#left_col .cat_menu li .sub_cat li a::after{
    display: none;
}

#left_col .shop_cate li:nth-child(n+4) a::after{
    content: "";
    display: block;
    position: absolute;
    top: 16px;
    right: 10px;
    width: 10px;
    height: 10px;
    background: transparent;
    border-top: 1px solid var(--new_navy);
    border-right: 1px solid var(--new_navy);
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

#left_col .shop_cate li:nth-child(n+4):hover a::after{
    border-top: 2px solid var(--new_navy);
    border-right: 2px solid var(--new_navy);
}

#left_col .shop_cate li:last-child a::after{
    display: none;
}

/* ==================================================

 左カラム コンテンツメニュー下

================================================== */
#left_col .ad_square{
    background-color: #fff;
    border: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    text-align: center;
}

#left_col .ad_square a,
#left_col .ad_square a img{
    display: block;
}

#left_col .ad_square span{
    line-height: 1.6;
    vertical-align: middle;
}

#left_col .ad_square_pt{
    padding: 0 10px;
    color: var(--new_navy);
    font-size: 0;
    text-align: left;
}

#left_col .ad_square_pt .line_through{
    font-size: 12px;
}

#left_col .ad_square_pt .red{
    color: var(--new_red);
    font-size: 16px;
}

#left_col .ad_square_text{
    padding: 0 10px;
    margin-bottom: 5px;
    color: var(--new_navy);
    font-size: 12px;
    text-align: left;
}

#left_col .bnr_box .bnr_160{
    display: block;
    margin: 0 auto 10px;
}

#left_col .bnr_box .bnr_160:last-child{
    margin-bottom: 20px;
}

#left_col .bnr_box .bnr_160 img{
    display: block;
}

#left_col .ad_movie{
    display: block;
}

/* ==================================================

 左カラム 新着サービス

================================================== */
#new_service_wrap .menu_title{
    background-color: var(--new_water);
}

#new_service_wrap .cnt_new_service{
    width: 100%;
    margin: 0 auto 10px;
    background-color: #fff;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    color: var(--new_navy);
    text-align: center;
    box-sizing: border-box;
}

#new_service_wrap .point-triangle-rt:after{
    top: 0;
    right: 0;
}

#new_service_wrap .cnt_new_service .box_ad{
    position: relative;
    width: 100%;
    border-bottom: 1px dashed #ccc;
}

#new_service_wrap .cnt_new_service .box_ad:last-child{
    border-bottom: none;
}

#new_service_wrap .cnt_new_service .box_ad .box_ad_inner{
    padding: 10px;
}

#new_service_wrap .cnt_new_service .title_new_service{
    width: 100%;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 12px;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#new_service_wrap .cnt_new_service .title_new_service_short{
    width: 110px;
}

#new_service_wrap .cnt_new_service .cont_img{
    display: block;
    position: relative;
    width: 120px;
    max-width: 120px;
    min-width: 120px;
    height: 120px;
    margin: 0 auto 10px;
    overflow: hidden;
}

#new_service_wrap .cnt_new_service .cont_img .cnr_round{
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    transform:translate3d(-50%, -50%, 0);
    -webkit-transform:translate3d(-50%, -50%, 0);
    -moz-transform:translate3d(-50%, -50%, 0);
}

#new_service_wrap .cnt_new_service .cont_text{
    width: 100%;
}

#new_service_wrap .cnt_new_service .cont_text .new_service_pt{
    text-align: center;
    line-height: 1.6;
    vertical-align: middle;
}

#new_service_wrap .cnt_new_service .cont_text .new_service_pt .big{
    font-size: 16px;
    font-weight: bold;
    line-height: 1.2;
}

#new_service_wrap .cnt_new_service .cont_text .new_service_pt .pt_after{
    font-size: 16px;
    font-weight: bold;
}

#new_service_wrap .cnt_new_service .cont_text .new_service_way{
    font-size: 12px;
    line-height: 1.6;
    overflow: hidden;
    white-space: nowrap;
}

#new_service_wrap .radius_more_list_btn{
    display: block;
    padding: 5px 0;
    margin-bottom: 20px;
    background-color: #1994da;
    border-radius: 30px;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    text-align: center;
    line-height: 1.2;
}

#new_service_wrap .radius_more_list_btn:hover{
    opacity: .8;
}

/* ==================================================

 左カラム SNS

================================================== */
#left_col .sns_btn_wrap .sns_btn{
    display: block;
    margin: 10px 0;
    padding: 5px 0;
    background-color: #000;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    line-height: 20px;
    letter-spacing: 0.05em;
    text-align: center;
    box-shadow: 0 1px 3px 0 #ccc;
}

#left_col .sns_btn_wrap .sns_btn:nth-child(2){
	background: -moz-linear-gradient(45deg, #e821a9 0%, #fc2a7e 25%, #fd3654 50%, #fd8c65 75%, #fc9b35 100%); 
	background: -webkit-linear-gradient(45deg, #e821a9 0%, #fc2a7e 25%, #fd3654 50%, #fd8c65 75%, #fc9b35 100%); 
}

#left_col .sns_btn_wrap .sns_btn:last-child{
    background-color: #00B900;
}

#left_col .sns_btn_wrap a:hover{
    opacity: .8;
}

/* ==================================================

 左カラム PR広告

================================================== */
#left_col .pr{
    display: block;
    width: 160px;
    padding: 5px 0;
    margin: 20px auto 0;
    background: #f2f2f2;
    color: var(--new_navy);
    font-size: 12px;
    font-weight: bold;
    text-align: center;
}

#left_col .pr span{
    vertical-align: middle;
}

#left_col .ad_skyscraper{
    margin: 0 auto 40px;
    text-align: center;
}

/* ==================================================

 index

================================================== */
#main_col #outer{
    width: 760px;
    padding-bottom: 40px;
    background-color: #fff;
}

#main_col .logout_index_top{
    display: block;
}

/* ==================================================

 お知らせ_タイトルで遷移タイプ

================================================== */
.imp_info_wrap .imp_info{
    padding: 10px;
    border: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    box-sizing: border-box;
}

.imp_info_wrap .imp_info li{
    position: relative;
    border-bottom: #ccc 1px dashed;
}

.imp_info_wrap .imp_info li:last-child{
    border: none;
}

.imp_info_wrap .imp_info li a{
    display: block;
    padding: 15px 25px 15px 15px;
    color: var(--new_navy);
    font-size: 14px;
    text-align: left;
    text-overflow: ellipsis;
    text-decoration: none;
    overflow: hidden;
    white-space: nowrap;
}

.imp_info_wrap .imp_info li:before{
    content: "";
    display: block;
    position: absolute;
    right: 20px;
    width: 12px;
    height: 12px;
    margin-top: 18px;
    background: transparent none repeat scroll 0 0;
    border-right: 1px solid #2490d0;
    border-top: 1px solid #2490d0;
    transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}

/* ==================================================

 みんなでチャレンジ

================================================== */
#cha_wrap .arrow_box{
    position: relative;
    width: 100%;
    margin-bottom: 10px;
    background: #fd9c00;
    border-radius: 5px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    text-align: left;
}

#cha_wrap .arrow_box span{
    font-size: 18px;
    line-height: 50px;
    text-align: right;
    vertical-align: middle;
}

#cha_wrap .arrow_box img{
    display: inline-block;
    margin: 0 10px;
    vertical-align: middle;
}

#cha_wrap .arrow_box .big{
    font-size: 24px;
}

#cha_wrap .cnt_cha_wrap{
    border: 2px solid #fdb239;
}

#main_col #cha_wrap .cnt_cha_wrap{
    margin-bottom: 10px;
    border: 1px solid #fdb239;
    box-shadow: 0 1px 3px 0 #ccc;
    box-sizing: border-box;
}

#cha_wrap .cnt_cha .box_ad_inner{
    padding: 15px 15px 0;
}

#cha_wrap .cnt_cha .box_ad{
    position: relative;
    width: 100%;
}

#cha_wrap .cnt_cha .cont_img{
    display: block;
    position: relative;
    float: left;
    width: 120px;
    max-width: 120px;
    min-width: 120px;
    height: 120px;
    margin-right: 15px;
    overflow: hidden;
}

#cha_wrap .cnt_cha .cont_img .cnr_round{
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    transform: translate3d(-50%, -50%, 0);
    -webkit-transform: translate3d(-50%, -50%, 0);
    -moz-transform: translate3d(-50%, -50%, 0);
}

#cha_wrap .cnt_cha .cont_text{
    float: left;
    width: 100%;
    padding-left: 135px;
    margin-left: -135px;
    box-sizing: border-box;
}

#cha_wrap .cnt_cha .title_cha{
    width: 100%;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 18px;
    line-height: 1.6;
    overflow: hidden;
    text-overflow: ellipsis;
}

#cha_wrap .cnt_cha .cont_text .cha_way{
    font-size: 14px;
    line-height: 1.6;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#cha_wrap .cnt_cha .cont_text .cha_pt_box{
    font-size: 0;
    line-height: 1.6;
}

#cha_wrap .cnt_cha .cont_text .cha_pt_box span{
    vertical-align: middle;
}

#cha_wrap .cnt_cha .cont_text .cha_pt_box .end_text{
    margin-top: 5px;
    font-size: 18px;
    line-height: 1.6;
}

#cha_wrap .cnt_cha .cont_text .cha_defo_pt{
    font-size: 14px;
}

#cha_wrap .cnt_cha .cont_text .cha_defo_pt .line_through{
    font-size: 14px;
    line-height: 1.6;
}

#main_col #cha_wrap .cnt_cha .cont_text .cha_defo_pt .line_through{
    font-size: 18px;
}

#cha_wrap .cnt_cha .cont_text .cha_pt{
    font-size: 14px;
    text-align: right;
    line-height: 1.6;
    vertical-align: middle;
}

#cha_wrap .cnt_cha .cont_text .cha_pt .red{
    font-size: 20px;
    line-height: 1.6;
    vertical-align: middle;
}

#cha_wrap .cnt_cha .cont_text .cha_pt .big{
    font-size: 30px;
    font-weight: bold;
    line-height: 1.2;
}

#cha_wrap .cnt_cha .cont_text .cha_pt .pt_after{
    font-weight: bold;
}

#cha_wrap .cnt_cha .cont_text .ave_up{
    font-size: 20px;
    font-weight: bold;
    vertical-align: middle;
}

#main_col #cha_wrap .cnt_cha .cont_text .ave_up{
    font-size: 24px;
}

#cha_wrap .cnt_cha .cha_cd{
    position: relative;
    float: right;
    width: 60%;
    background-color: #fdb239;
    color: #fff;
    text-align: center;
}

#cha_wrap .cnt_cha .cha_cd:after{
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    bottom: 0;
    right: 100%;/* leftからの固定pxだと90%以下表示だと端数でずれるため */
    border-width: 40px 25px 0 0;
    border-style: solid;
    border-color: transparent #fdb239 transparent transparent;
}

#cha_wrap .cnt_cha .cha_cd img{
    width: 40px;
    vertical-align: middle;
}

#cha_wrap .cnt_cha .cha_cd_text{
    display: inline-block;
    font-size: 14px;
    font-weight: bold;
    vertical-align: middle;
}

#cha_wrap .cnt_cha .cha_cd_timer{
    display: inline-block;
    font-size: 18px;
    font-weight: bold;
    vertical-align: middle;
}

#cha_wrap .result_box{
    background-color: #ffffdd;
    border-top: 1px solid #fdb239;
    line-height: 60px;
    vertical-align: bottom;
}

#main_col #cha_wrap .result_box{
    clear: both;/* 1カラムでタイマーfloatした時用 */
    text-align: center;
}

#cha_wrap .result_box span{
    font-size: 16px;
    font-weight: bold;
    vertical-align: middle;
}

#cha_wrap .result_box .big{
    font-size: 24px;
}

#cha_wrap .cha_btn_box{
    border-top: 1px solid #fdb239;
}

#main_col #cha_wrap .go_btn{
    width: 80%;
    margin: 0 auto 30px;
    background-color: #fdb239;
    font-size: 18px;
}

/* ==================================================

 みんなでチャレンジindex ※横並び_同時期に2つ開催の場合

================================================== */
#main_col #cha_double_wrap{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#main_col #cha_double_wrap .cnt_cha_wrap{
    width: 375px;
}

#cha_double_wrap .cnt_cha .box_ad_inner{
    padding: 15px;
}

#cha_double_wrap .cnt_cha .cont_img{
    margin-right: 10px;
}

#main_col #cha_double_wrap .cnt_cha .cont_text{
    position: relative;
    float: right;
    width: 100%;
}

#cha_double_wrap .cnt_cha .title_cha{
    display: -webkit-box;
    height: 48px;
    font-size: 16px;
    line-height: 24px;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-all;
}

#cha_double_wrap .cnt_cha .cont_text .cha_way{
    font-size: 14px;
}

#cha_double_wrap .cnt_cha .cont_text .cha_pt_box .end_text{
    margin-top: 5px;
    font-size: 18px;
    line-height: 1.6;
}

#main_col #cha_double_wrap .cnt_cha .cont_text .cha_pt{
    display: block;
    text-align: right;
}

#main_col #cha_double_wrap .cnt_cha .cont_text .cha_pt .red{
    font-size: 20px;
    line-height: 1.6;
    vertical-align: middle;
}

#main_col #cha_double_wrap .cnt_cha .cont_text .cha_pt .big{
    font-size: 26px;
}

#main_col #cha_double_wrap .cnt_cha .cont_text .ave_up{
    font-size: 16px;
    text-align: right;
    display: block;
}

#cha_double_wrap .cnt_cha .cha_cd{
    width: 348px;
    margin-left: 25px;
}

#cha_double_wrap .cnt_cha .cha_cd img{
    width: 40px;
    vertical-align: middle;
}

#cha_double_wrap .cnt_cha .cha_cd:after{
    border-width: 40px 25px 0 0;
}

#cha_double_wrap .cnt_cha .cha_cd_text{
    padding: 0;
    font-size: 14px;
    vertical-align: middle;
}

#cha_double_wrap .cnt_cha .cha_cd_timer{
    padding: 0;
    font-size: 18px;
    vertical-align: middle;
}

#cha_double_wrap .result_box{
    padding: 10px 15px;
    line-height: 26px;
}

/* ==================================================

 index 限定枠

================================================== */
#cnt_limit_wrap .cnt_limit_title{
    padding: 8px 0 2px;
    background-color: #0b4566;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    line-height: 30px;
}

#cnt_limit_wrap .cnt_limit_title span{
    vertical-align: middle;
}

#cnt_limit_wrap .cnt_limit_title .big{
    font-size: 24px;
}

#cnt_limit_wrap .cnt_limit{
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

#cnt_limit_wrap .cnt_limit .box_ad{
    display: flex;
    flex-direction: column;
    position: relative;
    width: calc((100% - 10px) / 2);
    box-shadow: 0 1px 3px 0 #ccc;
    box-sizing: border-box;
    border: 1px solid #0b4566;
}

#cnt_limit_wrap .cnt_limit .box_ad_inner{
    padding: 10px 10px 0;
}

#cnt_limit_wrap .cnt_limit .title_cnt_limit{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    width: 100%;
    height: 2.8em;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 16px;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-all;
}

#cnt_limit_wrap .cnt_limit .title_cnt_limit span{
    vertical-align: middle;
}

#cnt_limit_wrap .cnt_limit .title_cnt_limit_short{
    width: 80%;
}

#cnt_limit_wrap .cnt_limit .cont_vertical{
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
}

#cnt_limit_wrap .cnt_limit .cont_img{
    display: block;
    position: relative;
    width: 100px;
    height: 100px;
    overflow: hidden;
}

#cnt_limit_wrap .cnt_limit .cont_img .cnr_round{
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -moz-transform: translate3d(-50%, -50%, 0);
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
}

#cnt_limit_wrap .cnt_limit .cont_text{
    width: 100%;
    padding-left: 120px;
    margin-left: -120px;
    box-sizing: border-box;
}

#cnt_limit_wrap .cnt_limit .cnt_limit_way{
    font-size: 14px;
    line-height: 1.6;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#cnt_limit_wrap .cnt_limit .cnt_limit_way_short{
    width: 80%;
}

#cnt_limit_wrap .cnt_limit .cnt_limit_defo_pt{
    font-size: 14px;
    line-height: 1.6;
}

#cnt_limit_wrap .cnt_limit .cnt_limit_defo_pt .line_through{
    font-size: 18px;
    line-height: 1.6;
    text-decoration: none;
}

#cnt_limit_wrap .cnt_limit .cnt_limit_pt{
    width: 100%;
    line-height: 1.6;
    text-align: right;
}

#cnt_limit_wrap .cnt_limit .cnt_limit_pt .red{
    vertical-align: middle;
    font-size: 26px;
    font-weight: bold;
    line-height: 1.6;
}

#cnt_limit_wrap .cnt_limit .cnt_limit_pt .pt_after{
    vertical-align: bottom;
    font-size: 18px;
}

#cnt_limit_wrap .cnt_limit .cnt_limit_cd{
    height: 40px;
    margin-top: auto;
    background-color: #0b4566;
    color: #fff;
    font-weight: bold;
    text-align: center;
}

#cnt_limit_wrap .cnt_limit .cnt_limit_img{
    vertical-align: middle;
}

#cnt_limit_wrap .cnt_limit .cnt_limit_cd_text,
#cnt_limit_wrap .cnt_limit .cnt_limit_cd_timer{
    vertical-align: middle;
    font-size: 16px;
    line-height: 40px;
}

#cnt_limit_wrap .cnt_limit .cnt_limit_cd_timer{
    font-size: 18px;
}


/* ==================================================

 index インカムセレクション枠

================================================== */
#cnt_selection_wrap .cnt_selection_title{
    padding: 12px 0 8px 60px;
    margin-bottom: 10px;
    background-image: url("https://img.pointi.jp/assets//img_new/title_02.png");
    background-repeat: no-repeat;
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    line-height: 30px;
}

#cnt_selection_wrap .cnt_selection{
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

#cnt_selection_wrap .cnt_selection .box_ad{
    display: flex;
    flex-direction: column;
    position: relative;
    width: calc((100% - 20px) / 3);
    border: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    box-sizing: border-box;
    text-align: center;
}

#cnt_selection_wrap .cnt_selection .box_ad_inner{
    padding: 10px;
}

#cnt_selection_wrap .cnt_selection .title_cnt_selection{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    width: 100%;
    height: 3.6em;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 16px;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-all;
}

#cnt_selection_wrap .cnt_selection .cont_img{
    display: block;
    position: relative;
    width: 100px;
    height: 100px;
    margin: 0 auto 10px;
    overflow: hidden;
}

#cnt_selection_wrap .cnt_selection .cont_img .cnr_round{
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    transform: translate3d(-50%, -50%, 0);
}

#cnt_selection_wrap .cnt_selection .cnt_selection_pt_box{
    font-size: 12px;
    line-height: 1.6;
}

#cnt_selection_wrap .cnt_selection .cnt_selection_pt{
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 1.6;
}

#cnt_selection_wrap .cnt_selection .cnt_selection_pt .red,
#cnt_selection_wrap .cnt_selection .cnt_selection_pt .pt_after{
    vertical-align: bottom;
    font-weight: bold;
    font-size: 24px;
}

#cnt_selection_wrap .cnt_selection .cnt_selection_pt .pt_after{
    color: var(--new_red);
    font-size: 18px;
}

/* ==================================================

タイムセール枠

================================================== */
#timesale_wrap .timesale_title{
    padding: 12px 0 8px 60px;
    margin-bottom: 10px;
    background-image: url("/img_new/title_02.png");
    background-repeat: no-repeat;
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    line-height: 30px;
}

#timesale_wrap .cnt_timesale{
    margin-bottom: 20px;
}

#timesale_wrap .cnt_timesale .box_ad{
    position: relative;
    float: left;
    width: 49.5%;
    margin: 0 1% 10px 0;
    border: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    box-sizing: border-box;
}

#timesale_wrap .cnt_timesale .box_ad:nth-child(2n){
    margin-right: 0;
}

#timesale_wrap .cnt_timesale .box_ad .box_ad_inner{
    padding: 15px;
}

#timesale_wrap .cnt_timesale .title_timesale{
    width: 100%;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 16px;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#timesale_wrap .cnt_timesale .title_timesale_short{
    width: 80%;
}

#timesale_wrap .cnt_timesale .cont_img{
    display: block;
    position: relative;
    float: left;
    width: 120px;
    max-width: 120px;
    min-width: 120px;
    height: 120px;
    margin: 0 10px 0 0;
    overflow: hidden;
}

#timesale_wrap .cnt_timesale .cont_img .cnr_round{
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -moz-transform: translate3d(-50%, -50%, 0);
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
}

#timesale_wrap .cnt_timesale .cont_text{
    float: left;
    width: 100%;
    padding-left: 130px;
    margin-left: -130px;
    box-sizing: border-box;
}

#timesale_wrap .cnt_timesale .cont_text .timesale_way{
    height: 36px;
    margin-bottom: 10px;
    font-size: 12px;
    line-height: 18px;
    overflow: hidden;
}

#timesale_wrap .cnt_timesale .cont_text .timesele_way_short{
    width: 190px;
}

#timesale_wrap .cnt_timesale .cont_text .timesale_pt_box{
    font-size: 12px;
    line-height: 1.6;
}

#timesale_wrap .cnt_timesale .cont_text .timesale_defo_pt{
    font-size: 14px;
    line-height: 1.6;
}

#timesale_wrap .cnt_timesale .cont_text .timesale_defo_pt .line_through{
    font-size: 18px;
    line-height: 1.6;
}

#timesale_wrap .cnt_timesale .cont_text .timesale_pt{
    font-size: 14px;
    text-align: right;
    letter-spacing: 0.05em;
    line-height: 1.6;
}

#timesale_wrap .cnt_timesale .cont_text .timesale_pt .red{
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1.6;
    vertical-align: middle;
}

#timesale_wrap .cnt_timesale .cont_text .timesale_pt .big{
    font-size: 30px;
    font-weight: bold;
    line-height: 1.2;
    letter-spacing: 0.05em;
}

#timesale_wrap .cnt_timesale .cont_text .timesale_pt .pt_after{
    font-weight: bold;
    letter-spacing: 0.05em;
}

#timesale_wrap .cnt_timesale .timesale_cd{
    height: 50px;
    background-color: #f2f2f2;
    letter-spacing: 0em;/* inlin-block余白ハック */
    text-align: center;
}

#timesale_wrap .cnt_timesale .timesale_cd img{
    display: inline-block;
}

#timesale_wrap .cnt_timesale .timesale_cd_text{
    display: inline-block;
    padding: 10px 0;
    margin-right: 5px;
    font-size: 16px;
    font-weight: bold;
    line-height: 30px;
    letter-spacing: 0.1em;/* inlin-block余白ハック */
    
}

#timesale_wrap .cnt_timesale .timesale_cd_timer{
    display: inline-block;
    padding: 10px 0;
    margin-right: 10px;
    font-size: 20px;
    font-weight: bold;
    line-height: 30px;
    letter-spacing: 0.1em;/* inlin-block余白ハック */
}

/* ==================================================

 index 話題の広告

================================================== */
#main_col #outer .conts_title{
    position: relative;
    display: block;
    padding: 2px 0 3px 13px;
    margin: 0 0 20px;
    border-left: var(--new_water) solid 7px;
    border-bottom: #ccc solid 1px;
    color: var(--new_navy);
    font-size: 18px;
    font-weight: bold;
    line-height: 1.6;
    letter-spacing: 0.1em;
    text-align: left;
}

#pickup_wrap .cnt_pickup{
    margin-bottom: 20px;
}

#pickup_wrap .cnt_pickup .box_ad{
    position: relative;
    float: left;
    width: 49.5%;
    margin: 0 1% 10px 0;
    border: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    box-sizing: border-box;
}

#pickup_wrap .cnt_pickup .box_ad:nth-child(2n){
    margin-right: 0;
}

#pickup_wrap .cnt_pickup .box_ad .box_ad_inner{
    padding: 15px;
}

#pickup_wrap .cnt_pickup .title_pickup{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    width: 100%;
    height: 2.8em;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 16px;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-all;
}

#pickup_wrap .cnt_pickup .title_pickup_short{
    width: 80%;
}

#pickup_wrap .cnt_pickup .cont_img{
    float: left;
    display: block;
    position: relative;
    width: 120px;
    max-width: 120px;
    min-width: 120px;
    height: 120px;
    margin: 0 10px 0 0;
    overflow: hidden;
}

#pickup_wrap .cnt_pickup .cont_img .cnr_round{
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -moz-transform: translate3d(-50%, -50%, 0);
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
}

#pickup_wrap .cnt_pickup .cont_text{
    float: left;
    width: 100%;
    padding-left: 130px;
    margin-left: -130px;
    box-sizing: border-box;
}

#pickup_wrap .cnt_pickup .cont_text .pickup_way{
    height: 36px;
    margin-bottom: 10px;
    font-size: 12px;
    line-height: 18px;
    overflow: hidden;
}

#pickup_wrap .cnt_pickup .cont_text .timesele_way_short{
    width: 190px;
}

#pickup_wrap .cnt_pickup .cont_text .pickup_pt_box{
    font-size: 12px;
    line-height: 1.6;
}

#pickup_wrap .cnt_pickup .cont_text .pickup_defo_pt{
    font-size: 14px;
    line-height: 1.6;
}

#pickup_wrap .cnt_pickup .cont_text .pickup_defo_pt .line_through{
    font-size: 18px;
    line-height: 1.6;
}

#pickup_wrap .cnt_pickup .cont_text .pickup_pt{
    font-size: 14px;
    line-height: 1.6;
    text-align: right;
}

#pickup_wrap .cnt_pickup .cont_text .pickup_pt .red{
    font-size: 20px;
    line-height: 1.6;
    vertical-align: middle;
}

#pickup_wrap .cnt_pickup .cont_text .pickup_pt .big{
    font-size: 30px;
    font-weight: bold;
    line-height: 1.2;
}

#pickup_wrap .cnt_pickup .cont_text .pickup_pt .pt_after{
    font-weight: bold;
}

#pickup_wrap .cnt_pickup .pickup_text{
    padding: 10px 15px;
    background-color: #f3fdff;
    font-size: 12px;
    line-height: 1.6;
}

#pickup_wrap .cnt_pickup .pickup_text p,
#pickup_wrap .cnt_pickup .pickup_text div{
    font-size: 12px;
    line-height: 1.6;
}

/* ==================================================

 index カテゴリ別ランキング

================================================== */
.more_list_btn{
    position: absolute;
    top: 10px;
    right: 0;
    color: #1994da;
    font-size: 14px;
}

.cnt_ran{
    width: 100%;
    margin: 0 10px 10px 0;
    border: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    box-sizing: border-box;
}

.cat_ran_tabs{
    width: 100%;
}

.cat_ran_tabs li{
    float: left;
    width: 20%;
    padding: 10px 0;
    background-color: #fff;
    border-bottom: 2px solid var(--new_navy);
    color: var(--new_navy);
    font-size: 12px;
    font-weight: bold;
    line-height: 24px;
    text-align: center;
    transition: 0.1s;
}

.cat_ran_tabs li.open,
.cat_ran_tabs li:hover{
    background-color: #1994da;
    border-bottom: 2px solid #1574aa;
    color: #fff;
    cursor: pointer;
}

#ran_wrap .cnt_ran{
    margin-bottom: 10px;
    text-align: center;
}

#ran_wrap .cnt_ran .ran_cat_wrap.none{
    display: none;
}

#ran_wrap .cnt_ran .ran_cat_wrap{
    display: block;
}

#ran_wrap .point-triangle-rt:after{
    top: 0;
    right: 0;
}

#ran_wrap .ran_left{
    float: left;
    width: 25%;
}

#ran_wrap .ran_right{
    float: left;
    width: 75%;
}

#ran_wrap .cnt_ran .box_ad{
    position: relative;
    float: left;
    width: 100%;
}

#ran_wrap .cnt_ran .ran_left .box_ad{
    height: 341px;
}

#ran_wrap .cnt_ran .ran_right .box_ad{
    width: 33.33%;
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
    box-sizing: border-box;
}

#ran_wrap .cnt_ran .ran_right .box_ad a{
    display: block;
    color: var(--new_navy);
}

#ran_wrap .cnt_ran .box_ad:nth-child(4),
#ran_wrap .cnt_ran .box_ad:nth-child(5),
#ran_wrap .cnt_ran .box_ad:nth-child(6){
    border-bottom: none;
}

#ran_wrap .cnt_ran .box_ad .box_ad_inner{
    padding: 38px 15px;
}

#ran_wrap .cnt_ran .ran_right .box_ad .box_ad_inner{
    padding: 5px;
}

#ran_wrap .cnt_ran .box_ad .ran_icon{
    width: 60px;
    padding: 17px 0 3px;
    margin: 10px auto 5px;
    background-image: url("/img_new/ran_icon_1.png");
    background-position: 0 0;
    background-repeat: no-repeat;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    line-height: 20px;
    text-align: center;
}

#ran_wrap .cnt_ran .title_ran{
    width: 100%;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 16px;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#ran_wrap .cnt_ran .ran_right .box_ad .ran_icon{
    display: block;
    float: left;
    width: 30px;
    padding: 6px 0 0;
    margin: 0 0 10px;
    background-image: url("/img_new/ran_icon_4.png");
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    font-size: 10px;
    font-weight: bold;
    line-height: 14px;
    text-align: center;
}

#ran_wrap .cnt_ran .ran_right .box_ad:nth-child(1) .ran_icon{
    background-image: url("/img_new/ran_icon_2.png");
}

#ran_wrap .cnt_ran .ran_right .box_ad:nth-child(2) .ran_icon{
    background-image: url("/img_new/ran_icon_3.png");
}

#ran_wrap .cnt_ran .ran_right .title_ran{
    display: block;
    float: left;
    width: 139px;
    margin: 3px auto 7px;
    font-weight: bold;
    font-size: 12px;
    line-height: 20px;
    overflow: hidden;
    text-align: left;
    text-overflow: ellipsis;
    vertical-align: bottom;
    white-space: nowrap;
}

#ran_wrap .cnt_ran .ran_right .title_ran_short{
    width: 69px;
}

#ran_wrap .cnt_ran .cont_img{
    display: block;
    position: relative;
    width: 120px;
    max-width: 120px;
    min-width: 60px;
    height: 120px;
    margin: 0 auto 10px;
    overflow: hidden;
}

#ran_wrap .cnt_ran .cont_img .cnr_round{
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -moz-transform: translate3d(-50%, -50%, 0);
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
}

#ran_wrap .cnt_ran .cont_text{
    width: 100%;
}

#ran_wrap .cnt_ran .ran_left .cont_text .ran_way{
    font-size: 14px;
}

#ran_wrap .cnt_ran .cont_text .ran_way{
    margin-bottom: 2px;
    font-size: 12px;
    line-height: 18px;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

#ran_wrap .cnt_ran .cont_text .ran_pt{
    text-align: center;
}

#ran_wrap .cnt_ran .cont_text .ran_pt .big{
    font-size: 24px;
    font-weight: bold;
    line-height: 30px;
}

#ran_wrap .cnt_ran .cont_text .ran_pt .pt_after{
    font-size: 16px;
    font-weight: bold;
    line-height: 30px;
}

#ran_wrap .cnt_ran .ran_left .cont_text .ran_pt{
    text-align: center;
    vertical-align: middle;
}

#ran_wrap .cnt_ran .ran_right .cont_text .ran_pt .big{
    font-size: 16px;
    font-weight: bold;
    line-height: 20px;
    vertical-align: middle;
}

#ran_wrap .cnt_ran .ran_right .cont_text .ran_pt .pt_after{
    font-size: 16px;
    font-weight: bold;
    line-height: 20px;
    vertical-align: middle;
}

#ran_wrap .caution{
    font-size: 12px;
    text-align: right;
}

/* ==================================================

 index 特集 キャンペーン

================================================== */
/* 全体制御 */
#main_col #campaign_wrap *{
    line-height: 1.6;
    box-sizing: border-box;
}

/* tab */
#main_col #campaign_wrap #index_list_tabs{
    margin-bottom: 20px;
    width: 760px;
    border-radius: 5px;
    overflow: hidden;
}

#main_col #campaign_wrap #index_list_tabs li{
    position: relative;
    float: left;
    padding: 15px 0;
    width: 252px;
    font-size: 16px;
    font-weight: bold;
    line-height: 20px;
    text-align: center;
    color: #555;
    background-color: #f2f2f2;
    cursor: pointer;
}

#main_col #campaign_wrap #index_list_tabs li:not(:last-child){
    margin-right: 2px;
}

#main_col #campaign_wrap #index_list_tabs li.open,
#main_col #campaign_wrap #index_list_tabs li:hover{
    color: #fff;
    background-color: #f74361;
}

#main_col #campaign_wrap .cnt_campaign{
    width: 100%;
    margin-bottom: 30px;
    border: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    box-sizing: border-box;
}

#main_col #campaign_wrap .cnt_campaign .cnt_campaign_list{
    display: flex;
}

#main_col #campaign_wrap .campaign_box{
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 25%;
    padding: 19px;
    border-right: 1px solid #ccc;
    box-sizing: border-box;
    overflow: hidden;
}

#main_col #campaign_wrap .campaign_box:hover{
    background-color: #ffd;
}

#main_col #campaign_wrap .campaign_box:last-child{
    border-right: none;
}

#main_col #campaign_wrap .campaign_box img{
    display: block;
    width: 100%;
}

/* オーバーレイ表示 */
#main_col #campaign_wrap .campaign_box .overlay_end{
    position: absolute;
    top: 50%;
    left: 19px;
    right: 19px;
    transform: translateY(-50%);
    aspect-ratio: 4 / 3;
    background-color: rgba(0,0,0,0.6);
}

#main_col #campaign_wrap .campaign_box .overlay_end span{
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 100%;
    height: 2.8em;
    font-size: 16px;
    line-height: 1.4;
    text-align: center;
    color: #fff;
}

/* ==================================================

 index みんなが利用中の広告

================================================== */
#recommend_wrap .cnt_recommend{
    width: 100%;
    margin: 0 auto 30px;
    background-color: #fff;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    box-sizing: border-box;
    text-align: center;
}

#recommend_wrap .point-triangle-rt:after{
    top: 0;
    right: 0;
}

#recommend_wrap .cnt_recommend .box_ad{
    position: relative;
    float: left;
    width: 25%;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    box-sizing: border-box;
}

#recommend_wrap .cnt_recommend .box_ad:nth-child(4n){
    width: 188px;
    border-right: none;
}

#recommend_wrap .cnt_recommend .box_ad .box_ad_inner{
    padding: 10px;
}

#recommend_wrap .cnt_recommend .title_recommend{
    width: 100%;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 12px;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#recommend_wrap .cnt_recommend .title_recommend_short{
    width: 110px;
}

#recommend_wrap .cnt_recommend .cont_img{
    display: block;
    position: relative;
    width: 120px;
    max-width: 120px;
    min-width: 120px;
    height: 120px;
    margin: 0 auto 10px;
    overflow: hidden;
}

#recommend_wrap .cnt_recommend .cont_img .cnr_round{
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -moz-transform: translate3d(-50%, -50%, 0);
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
}

#recommend_wrap .cnt_recommend .cont_text{
    width: 100%;
}

#recommend_wrap .cnt_recommend .cont_text .recommend_way{
    margin-bottom: 5px;
    font-size: 12px;
    line-height: 18px;
    overflow: hidden;
    white-space: nowrap;
}

#recommend_wrap .cnt_recommend .cont_text .recommend_pt{
    text-align: center;
    line-height: 1.6;
    vertical-align: middle;
}

#recommend_wrap .cnt_recommend .cont_text .recommend_pt .big{
    font-size: 16px;
    font-weight: bold;
    line-height: 1.2;
}

#recommend_wrap .cnt_recommend .cont_text .recommend_pt .pt_after{
    font-size: 16px;
    font-weight: bold;
}

#recommend_wrap .no_cnt_recommend{
    padding: 30px;
    background-color: #f2f2f2;
    border: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    color: var(--new_navy);
    font-size: 14px;
    text-align: center;
}

/* ==================================================

 index pick up NEWS

================================================== */
.cnt_news{
    width: 100%;
    border: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    box-sizing: border-box;
}

.news_tabs{
    width: 100%;
}

.news_tabs li{
    float: left;
    width: 12.5%;
    padding: 10px 0;
    background-color: #fff;
    border-bottom: 2px solid var(--new_navy);
    color: var(--new_navy);
    font-size: 12px;
    font-weight: bold;
    line-height: 24px;
    text-align: center;
    transition: 0.1s;
}

.news_tabs li:nth-child(8){
    width: 93px;
}

.news_tabs li.open,
.news_tabs li:hover{
    background-color: #1994da;
    border-bottom: 2px solid #1574aa;
    color: #fff;
    cursor: pointer;
}

#news_wrap .cnt_news{
    margin-bottom: 30px;
}

#news_wrap .news_list{
    margin-top: 15px;
}

#news_wrap .news_list.none{
    display: none;
}

#news_wrap .left_box,
#news_wrap .right_box{
    float: left;
    width: 50%;
    padding: 0 20px;
    box-sizing: border-box;
}

#news_wrap .left_box{
    border-right: 1px solid #ccc;
}

#news_wrap .article li a{
    display: inline-block;
    padding: 5px 0;
    color: #1994da;
    font-size: 12px;
    line-height: 1.6;
}

#news_wrap .article li a:hover{
    color: #fd9c00;
}

#news_wrap .article li .news_icon img{
    vertical-align: middle;
}

#news_wrap .article .pr_tag{
    width: 364px;/* 先方のタグの余白などで謎の幅 */    
}

#news_wrap .article .pr_tag a{
    float: left;
    display: block;
    max-width: 323px;
    line-height: 20px;
    text-indent: -2.2em;
    overflow: hidden;
    white-space: nowrap;
}

#news_wrap .article .pr_tag span{
    float: left;
    display: block;
    width: 18px;
    margin: 8px 0 8px 5px;
    line-height: 12px;
    text-align: center;
}

#news_wrap .article .pr_tag:after{
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

#news_wrap .news_logo{
    padding: 5px 15px 15px;
    text-align: right;
}

/* ==================================================

 index 右カラム 定番ショップ

================================================== */
#right_col{
    position: absolute;
    right: -170px;
}

#classic_wrap{
    width: 150px;
    text-align: center;
}

#classic_wrap .cnt_classic{
    width: 100%;
    margin: 0 auto 10px;
    background-color: #fff;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    border-radius: 0 0 5px 5px;
    color: var(--new_navy);
    box-sizing: border-box;
}

/* 定番サービスメニュー */
#classic_wrap .menu_title{
    background-color: var(--new_water);
    border-radius: 5px 5px 0 0;
}

#classic_wrap .cnt_classic .classic_menu{
    position: relative;
    width: 100%;
    border-bottom: 1px dashed #ccc;
    font-size: 0;
}

#classic_wrap .cnt_classic .classic_menu:last-child{
    border-bottom: none;
}

#classic_wrap .classic_menu .classic_menu_icon{
    display: table-cell;
    width: 34px;
    height: 30px;
    background-color: #fff;
    background-image: url("/img_new/classic_icon1.png");
    background-size: 24px 24px;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    text-indent: -9999px;
    vertical-align: middle;
}

#classic_wrap .classic_menu:nth-child(2) .classic_menu_icon{
    background-image: url("/img_new/classic_icon2.png");
}

#classic_wrap .classic_menu:nth-child(3) .classic_menu_icon{
    background-image: url("/img_new/classic_icon3.png");
}

#classic_wrap .classic_menu:nth-child(4) .classic_menu_icon{
    background-image: url("/img_new/classic_icon4.png");
}

#classic_wrap .classic_menu:nth-child(5) .classic_menu_icon{
    background-image: url("/img_new/classic_icon5.png");
}

#classic_wrap .classic_menu:nth-child(4) span{
    letter-spacing: 0.1px;
}

#classic_wrap .classic_menu .classic_menu_title{
    position: relative;
    display: table-cell;
    width: 108px;
    height: 44px;
    padding-left: 5px;
    background-color: #fff;
    color: var(--new_navy);
    font-size: 12px;
    font-weight: bold;
    line-height: 1.2;
    text-align: left;
    vertical-align: middle;
}

#classic_wrap .classic_menu:hover .classic_menu_title,
#classic_wrap .classic_menu:hover .classic_menu_icon{
    background-color: #ffc;
    cursor: pointer;
}

#classic_wrap .classic_menu .classic_menu_title span{
    vertical-align: bottom;
}

#classic_wrap .classic_menu .classic_menu_title .new_icon{
    position: absolute;
    top: 8px;
    right: 5px;
    animation-name: blink;
    animation-duration: 1.7s;
    animation-iteration-count: 4;/* infinite */
}

/* モーダル内デザイン */
#classic_modal {
    width: 830px;
    padding: 20px;
    color: var(--new_navy);
    font-size: 14px;
    box-sizing: border-box;
}

#classic_modal .conts_title {
    display: block;
    position: relative;
    padding: 2px 0 3px 13px;
    margin: 0 0 20px;
    border-left: var(--new_water) solid 7px;
    border-bottom: #ccc solid 1px;
    color: var(--new_navy);
    font-size: 18px;
    font-weight: bold;
    line-height: 1.6;
    letter-spacing: 0.1em;
    text-align: left;
}

#classic_modal .sale_ribbon {
    width: 100%;
    padding: 10px 0;
    background-color: var(--new_red);
    border-radius: 50px;
    color: #fff;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
}

#classic_modal .sale_ribbon a {
    color: #fff;
    text-decoration: none;
}

/* モーダル内広告 */
#classic_modal .cnt_classic{
    width: 100%;
    margin: 20px auto 10px;
    background-color: #fff;
    box-sizing: border-box;
    font-size: 0;
}

#classic_modal .cnt_classic .box_ad{
    display: inline-block;
    position: relative;
    width: 188px;
    margin-right: 10px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
}

#classic_modal .cnt_classic .box_ad .sale_icon {
    display: inline-block;
    position: absolute;
    top: -7px;
    right: 0;
    left: 0;
    width: 50px;
    padding: 5px;
    margin: auto;
    border-radius: 20px;
    background-color: var(--new_red);
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
}

#classic_modal .cnt_classic .box_ad:nth-child(4n){
    margin-right: 0;
}

#classic_modal .cnt_classic .box_ad .box_ad_inner{
    padding: 20px 10px 10px 10px;
}

#classic_modal .cnt_classic .title_classic{
    width: 100%;
    margin-top: 10px;
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 14px;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#classic_modal .cnt_classic .title_classic_short{
    width: 110px;
}

#classic_modal .cnt_classic .classic_ad a{
    display: block;
    margin-bottom: 10px;
}

#classic_modal .cnt_classic .classic_ad a img{
    display: block;
    margin: 0 auto;
}

#classic_modal .cnt_classic .cont_img{
    display: block;
    position: relative;
    width: 120px;
    max-width: 120px;
    min-width: 120px;
    height: 120px;
    margin: 0 auto 5px;
    background-color: #fff;
    overflow: hidden;
}

#classic_modal .cnt_classic .cont_img .over_img{
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    text-indent: -9999px;
    -moz-transform:translate3d(-50%, -50%, 0);
    -webkit-transform:translate3d(-50%, -50%, 0);
    transform:translate3d(-50%, -50%, 0);
    opacity: 0;
    z-index: 3;
    animation-name: blink-out;
    animation-duration: 1.7s;
    animation-iteration-count: 3;/* infinite */
    animation-fill-mode: forwards;
}

@keyframes blink-out{
    0%{opacity: 1;}
    50%{opacity: 0;}
    100%{opacity: 1;}
}

#classic_modal .cnt_classic .cont_img .cnr_round{
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -moz-transform: translate3d(-50%, -50%, 0);
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
}

#classic_modal .cnt_classic .cont_text{
    width: 100%;
}

#classic_modal .cnt_classic .cont_text .classic_pt{
    text-align: center;
    line-height: 1.6;
    vertical-align: middle;
}

#classic_modal .cnt_classic .cont_text .classic_pt .big{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.2;
}

#classic_modal .cnt_classic .cont_text .classic_pt .pt_after{
    font-size: 16px;
    font-weight: bold;
}

/* 定番ショップ下部広告 */
#classic_wrap .pr{
    display: block;
    width: 150px;
    padding: 5px 0;
    margin: 20px auto 0;
    background-color: #f2f2f2; 
    color: var(--new_navy);
    font-size: 12px;
    font-weight: bold;
    text-align: center;
}

#classic_wrap .ad_skyscraper{
    text-align: center;
}

/* ==================================================

 クリエイティブ文言

================================================== */
.attention_box{
    width: 980px;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
}
    
.attention_box p{
    padding-left: 1em;
    margin-bottom: 5px;
    color: var(--new_navy);
    font-size: 12px;
    line-height: 1.6;
    text-indent: -1em;
    word-break: break-all;
}
    
.attention_box p:last-child{
    margin-bottom: 0;
}
    
.attention_box a{
    text-decoration: none;
}

/* ==================================================

 キャンペーン&コンテンツ 基本

================================================== */
#outer{
    width: 980px;
    padding-bottom: 40px;
    margin: 0 auto;
    background-color: #f2f2f2;
    color: var(--new_navy);
    font-size: 14px;
    line-height: 1.6;
}

#outer img{
    vertical-align: bottom;
}

#outer .top_img{
    margin-bottom: 20px;
}

#outer .date{
    width: 660px;
    padding: 20px;
    margin: 0 auto 30px;
    background-color: #fff;
    box-shadow: 0px 1px 3px 0px #ccc;
    font-size: 18px;
    text-align: center;
}

/* ==================================================

 タブ

================================================== */
/* 2つのタブ */
#outer #tabs{
    width: 706px;
    margin: 40px auto;
    over-flow: hidden;
}

#outer #tabs .tab{
    display: block;
    float: left;
    width: 350px;
    padding: 20px 0;
    background-color: #fff;
    border-radius: 0 5px 5px 0;
    color: var(--new_navy);
    font-size: 18px;
    font-weight: bold;
    line-height: 20px;
    text-align: center;
}

#outer #tabs tab:hover{
    cursor: pointer;
}

#outer #tabs .tab:first-child{
    margin-right: 2px;
    border-radius: 5px 0 0 5px;
}

#outer #tabs .tab:hover,
#outer #tabs .tab.open{
    background-color: var(--new_red);
    color: #fff;
    cursor: pointer;
}

/* aタグの場合色は全部共通でホバー時はopacity */
#outer #tabs a.tab{
    background-color: var(--new_red);
    color: #fff;
}

#outer #tabs a.tab:hover{
    opacity: .8;
}

/* 3つのタブ */
#outer #tabs_3{
    width: 940px;
    margin: 40px auto;
}

#outer #tabs_3 .tab{
    float: left;
    width: 312px;
    padding: 20px 0;
    margin-right: 2px;
    background-color: #fff;
    color: var(--new_navy);
    font-size: 18px;
    font-weight: bold;
    line-height: 20px;
    text-align: center;
}

#outer #tabs_3 .tab:first-child{
    border-radius: 5px 0 0 5px;
}

#outer #tabs_3 .tab:last-child{
    margin-right: 0;
    border-radius: 0 5px 5px 0;
}

#outer #tabs_3 .tab:hover,
#outer #tabs_3 .tab.open{
    background-color: #1994da;
    color: #fff;
    cursor: pointer;
}

/* aタグの場合色は全部共通でホバー時はopacity */
#outer #tabs_3 a.tab{
    background-color: #1994da;
    color: #fff;
}

#outer #tabs_3 a.tab:hover{
    opacity: .8;
}

/* ==================================================

 基本箱

================================================== */
#outer .conts_box{
    position: relative;
    margin: 0 20px 30px;
    background-color: #fff;
    box-shadow: 0px 1px 3px 0px #ccc;
}

#outer .conts_pad{
    padding: 20px;
}

#outer .conts_box .conts_title{
    display: block;
    padding: 2px 0 3px 13px;
    margin: 0 0 20px;
    border-left: var(--new_water) solid 7px;
    border-bottom: #ccc solid 1px;
    color: var(--new_navy);
    font-size: 18px;
    font-weight: bold;
    line-height: 1.6;
    letter-spacing: 0.1em;
    text-align: left;
}

#outer .conts_box .msg_box{
    margin: 20px 20px 30px;
}

#outer .conts_box .msg_box .msg{
    font-size: 16px;
    line-height: 1.6;
    word-break: break-all;
}

#outer .conts_box .msg_box .msg_list{
    padding: 20px 0 0;
}

#outer .conts_box .msg_box .msg_list li{
    padding-left: 1em;
    font-size: 16px;
    line-height: 1.6;
    text-indent: -1em;
    word-break: break-all;
}

/* ==================================================

 説明フロー

================================================== */
#outer .flow_wrap{
    margin-bottom: 30px;
}

#outer .flow_wrap .flow_box_2{
    float: left;
    width: 440px;
    margin-right: 20px;
}

#outer .flow_wrap .flow_box_2:nth-child(2n){
    margin-right: 0;
}

#outer .flow_wrap .flow_box_3{
    float: left;
    width: 300px;
}

#outer .flow_wrap .flow_box p{
    font-size: 14px;
    line-height: 1.6;
    word-break:break-all;
}

/* タイトル1段 */
#outer .flow_wrap .head_box{
    border-bottom: 1px var(--new_water) solid;
}

#outer .flow_wrap .head_box dt,
#outer .flow_wrap .head_box dd{
    float: left;
    padding: 0 10px;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 58px;
    word-break: break-all;
}

#outer .flow_wrap .head_box .flow_no{
    width: 58px;
    background-color: var(--new_water);
    color: #fff;
    line-height: 58px;
    text-align: center;
    box-sizing: border-box;
}

/* タイトル2段 */
#outer .flow_wrap .head_box_2{
    border-bottom: 1px var(--new_water) solid;
}

#outer .flow_wrap .head_box_2 dt,
#outer .flow_wrap .head_box_2 dd{
    float: left;
    height: 85px;
    padding: 0 10px;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 85px;
    word-break:break-all;
}

#outer .flow_wrap .head_box_2 .flow_no{
    width: 58px;
    background-color: var(--new_water);
    color: #fff;
    text-align: center;
    box-sizing: border-box;
}

#outer .flow_wrap .head_box_2 .flow_title_2{
    padding: 20px 10px;
    line-height: 1.4;
    box-sizing: border-box;
}

#outer .flow_wrap .conts_pad p{
    font-size: 14px;
    line-height: 1.6;
    word-break:break-all;
}

/* 中見出し */
.conts_title_2{
    display: block;
    position: relative;
    padding: 0 0 0 20px;
    margin: 0 0 20px;
    border-bottom: #ccc solid 1px;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.6;
    text-align: left;
}

.conts_title_2:before{
    content: " ";
    position: absolute;
    top: 8px;
    left: 0;
    width: 7px;
    height: 7px;
    background-color: var(--new_water);
}

/* 階層が深いflow */
#outer .deep_flow_wrap{
    padding: 0 20px
}

#outer .deep_flow_wrap .conts_title_2{
    margin-bottom: 0;
}

#outer .inner_block{
    padding: 20px;
    margin-bottom: 20px;
    background-color: #fafafa;
}

#outer .inner_block dt{
    padding-bottom: 5px;
    margin-bottom: 10px;
    border-bottom: 1px #ccc solid;
    line-height: 1.6;
}

#outer .flow_noti{
    padding-top: 20px;
    margin-bottom: 20px;
    border-top: 1px var(--new_red) dashed;
}

#outer .flow_noti dd{
    padding: 10px 0 0 1em;
    font-size: 14px;
    letter-spacing: 0.5px;
    line-height: 1.6;
    word-break: break-all;
}

#outer .movie_box{
    margin-bottom: 30px;
}

#outer .movie_box iframe{
    display: block;
    margin: 0 auto;
    border: none;
}

/* ==================================================

 ページャー上 何件中何件までを表示

================================================== */
#outer .list_num{
    width: 50%;
    padding: 10px 0;
    margin: 0 auto 10px;
    background-color: #f2f2f2;
    border-radius: 30px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
}

/* ==================================================

 ページャー

================================================== */
#outer .pager_wrap{
    margin-bottom: 30px;
    text-align: center;
}

#outer .pager{
    display: inline-block;
    font-size: 0;
    vertical-align: bottom;
}

#outer .pager .hide{
    display: none;
}

#outer .pager a,
#outer .pager .current{
    display: inline-block;
    width: 30px;
    padding: 10px;
    margin-right: 10px;
    background-color: var(--new_navy);
    color: #fff;
    font-size: 14px;
    text-align: center;
    text-decoration: none;
}

#outer .pager span{
    display: inline-block;
    margin-right: 10px;
    font-size: 14px;
    text-align: center;
}

#outer .pager a:last-child{
    margin-right: 0;
}

#outer .pager .prev,
#outer .pager .next{
    width: 50px;
}

#outer .pager .current{
    background-color: #888;
    cursor: default;
}

/* ==================================================

 ご注意事項

================================================== */
#outer .notice_wrap .head_icon{
    position: absolute;
    top: -20px;
    left: 20px;
    padding: 10px 20px;
    background-color: var(--new_red);
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
}

#outer .notice_wrap ul{
    padding: 10px 0 0;
}

#outer .notice_wrap ul li{
    padding: 0 0 10px 1em;
    margin-bottom: 10px;
    border-bottom: 1px #ccc dotted;
    line-height: 1.6;
    text-indent: -1em;
    word-break:break-all;
}

#outer .notice_wrap ul li:last-child{
    padding-bottom: 0;
    margin-bottom: 0;
    border: none;
}

#outer .notice_wrap ul li div{
    line-height: 1.6;
}

#outer .notice_wrap ul li a{
    color: #1994da;
}

#outer .notice_wrap ul li a:hover{
    color: #fd9c00;
}

#outer .notice_wrap .enclos_box_wrap{
    padding: 0;
}

#outer .notice_wrap .enclos_box{
    padding: 20px;
    background-color: #f2f2f2;
    border-radius: 10px;
}

#outer .notice_wrap .enclos_box .enclos_tit{
    font-size: 14px;
    line-height: 1.6;
    text-indent: 0;
}

/* ==================================================

 お気に入りに追加・追加済みボタン

================================================== */
#outer .ad_fav_on{
    display: block;
    width: 100%;
    height: 40px;
    background-image: url("/img_new/ad_fav_on.png");
    background-repeat: no-repeat;
    background-position: center;
    border: 2px solid #1994da;
    cursor: pointer;
    text-indent: -9999px;
    box-sizing: border-box;
}

#outer .ad_fav_on:hover{
    opacity: .8;
}

#outer .ad_fav_off{
    display: block;
    width: 100%;
    height: 40px;
    background-image: url("/img_new/ad_fav_off.png");
    background-repeat: no-repeat;
    background-position: center;
    border: 2px solid var(--new_navy);
    text-indent: -9999px;
    box-sizing: border-box;
}

/* ==================================================

 ボタン

================================================== */
#outer .btn_wrap,
#outer .double_btn_wrap{
    width: 780px;
    margin: 30px auto 40px;
}

#main_col #outer .btn_wrap,
#main_col #outer .double_btn_wrap{
    width: 650px;
    margin: 30px auto 40px;
}

#outer .go_btn{
    display: block;
    width: 100%;
    padding: 20px 0;
    background-color: var(--new_red);
    color: #fff;
    cursor: pointer;
    font-size: 20px;
    font-weight: bold;
    line-height: 24px;
    text-align: center;
}

#outer .go_btn:hover{
    cursor: pointer;
    opacity: .8;
}

#outer .bg_blue{
    background-color: #1994DA;
}

#outer .bg_gray{
    background-color: var(--new_navy);
}

#outer .double_btn_wrap .go_btn{
    display: block;
    float: left;
    width: 380px;
}

#main_col #outer .double_btn_wrap .go_btn{
    display: block;
    float: left;
    width: 270px;
}

#outer .double_btn_wrap .go_btn:first-child{
    margin-right: 20px;
}

#outer .used_btn{
    display: block;
    width: 100%;
    padding: 20px 0;
    background-color: var(--new_navy);
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    line-height: 24px;
    text-align: center;
}

/* ==================================================

 モーダル

================================================== */
#outer .overlay_tuto{
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-color: rgba(0,0,0,0.6);
    z-index: 9999;
}

#outer .hide_btn{
    position: absolute;
    top: -50px;
    right: 0;
    width: 50px;
    height: 50px;
    color: #fff;
    cursor: pointer;
    font-size: 50px;
    font-weight: bold; 
    font-family: Arial, Baskerville, monospace;
    line-height: 50px;
    text-align: center;
}

#outer #modal_box{
    position: relative;
    width: 1020px;
    margin: 0 auto;
}

/* ==================================================

 color-box

================================================== */
/* colorboxのデフォルトのcssより先に読まれるため、優先度高くするためセレクタ深め */
body #cboxOverlay{
    background :none;
    background-color: #000;
    overflow: visible;
}

body #colorbox{
    overflow:visible;
}

#colorbox #cboxWrapper{
    overflow:visible;
}

#colorbox #cboxContent{
    overflow:visible;
}

#colorbox #cboxTopLeft,
#colorbox #cboxTopCenter,
#colorbox #cboxTopRight,
#colorbox #cboxMiddleLeft,
#colorbox #cboxMiddleRight,
#colorbox #cboxBottomLeft,
#colorbox #cboxBottomCenter,
#colorbox #cboxBottomRight{
    background:none;
    background-color: #fff;
}

#colorbox #cboxTopLeft    { border-radius: 10px 0 0 0; }
#colorbox #cboxTopRight   { border-radius: 0 10px 0 0; }
#colorbox #cboxBottomRight{ border-radius: 0 0 10px 0; }
#colorbox #cboxBottomLeft { border-radius: 0 0 0 10px; }

#colorbox #cboxPrevious{
    position: absolute;
    top: 50%;
    transform:translate(0,-50%);
    left: -100px;
    width: 50px;
    height: 50px;
    background-image: url("/js/modal/images/controls_income.png");
    background-color: transparent;
    background-repeat: no-repeat;
    background-size: auto;
    background-position: 0 0;
}

#colorbox #cboxPrevious:hover{
    background-position: 0 -50px;
}

#colorbox #cboxNext{
    position: absolute;
    top: 50%;
    transform:translate(0,-50%);
    left: auto;
    right: -100px;
    width: 50px;
    height: 50px;
    background-image: url("/js/modal/images/controls_income.png");
    background-color: transparent;
    background-repeat: no-repeat;
    background-size: auto;
    background-position: -50px 0;
    z-index: 999;
}

#colorbox #cboxNext:hover{
    background-position: -50px -50px;
}

#colorbox #cboxClose{
    top: auto;
    left: auto;
    right: -10px;
    bottom: -20px;
    width: 50px;
    height: 50px;
    background-image: url("/js/modal/images/controls_income.png");
    background-repeat: no-repeat;
    background-size: auto;
    background-position: -100px 0;
    z-index: 999;
}

/* ページネーション */
#colorbox #cboxCurrent{
    left: 50%;
    transform: translate(-50%,0);
    bottom: -10px;
    width: auto;
    padding: 8px;
    background-color: #f2f2f2;
    border-radius: 5px;
    font-size: 14px;
}

/* ==================================================

 マネーのミカタ動画

================================================== */
#outer .ad_movie_box{
    width: 100%;
    padding: 20px;
    margin: 20px auto 30px;
    background-color: #fff;
    box-shadow: 0 1px 3px 0 #ccc;
    text-align: center;
    box-sizing: border-box;
}

#outer .ad_movie_wrap{
    position: relative;
    width: 620px;
    margin: 0 auto;
}

#outer .ad_movie{
    position: relative;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
}

#outer .ad_movie iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* ==================================================

 登録方法動画

================================================== */
#outer .ad_method_box{
    width: 100%;
    padding: 20px;
    margin: 20px auto 30px;
    background-color: #fff;
    border: 1px solid #ccc;
    box-shadow: 0 1px 3px 0 #ccc;
    text-align: center;
    box-sizing: border-box;
    
}

#outer .ad_method_wrap{
    display: table;
    margin-bottom: 10px;
    height: 100%;
    overflow: hidden;
}

#outer .ad_method{
    display: table-cell;
    position: relative;
    width: 426px;
    height: 230px;
    vertical-align: middle;
}

#outer .ad_method iframe{
    width: 100%;
    height: 100%;
}

#outer .ad_method_detail{
    display: table-cell;
    width: 272px;
    padding: 0 20px 0 10px;
    font-size: 12px;
    line-height: 1.6;
    text-align: left;
    vertical-align: middle;
}

#outer .ad_method_detail ul li{
    padding-bottom: 5px;
    margin-bottom: 5px;
    border-bottom: 1px dashed #ccc;
    font-size: 12px;
    line-height: 1.6;
    text-align: left;
}

#outer .ad_method_detail ul li:last-child{
    border-bottom: none;
}

#outer .ad_method_detail ul li table{
    width: 252px;
    margin: 5px 10px;
}

#outer .ad_method_detail ul li table th{
    padding: 8px;
    background-color: var(--new_navy);
    border: 1px solid var(--new_navy);
    color: #fff;
    text-align: center;
}

#outer .ad_method_detail ul li table tr td{
    padding: 8px 10px;
    border: 1px solid #ccc;
    text-align: center;
}

#outer .ad_method_notes{
    font-size: 12px;
}

/* ==================================================

 最下部コンテンツバナー

================================================== */
.conts_bnr_wrap li{
    width: 16%;
}

.conts_bnr_wrap li:not(:last-child){
    margin-right: 0.8%;
}

.conts_bnr_wrap img{
    display: block;
} 

/* ==================================================

 もっと見る（https://pointi.jp/exchange/exchange.php?type=azdなど

================================================== */
.more_box_b,
.more_box_r{
    display: block;
    position: relative;
    width: 100%;
    border-top: #ccc solid 1px;
    text-decoration: none;
    text-align: center;
}

.more_box_b:hover,
.more_box_r:hover{
    cursor: pointer;
    opacity: .8;
}

.more_box_b span,
.more_box_r span{
    display: inline-block;
    position: relative;
    padding: 10px;
    margin: 0 auto;
    color: var(--new_navy);
    font-size: 14px;
    line-height: 24px;
    text-indent: -12px;
    text-align: center;
}

/* もっとみる ↓ */
.more_box_b span:before{
    content: "";
    position: absolute;
    top: 12px;
    right: -15px;
    display: block;
    width: 12px;
    height: 12px;
    background: transparent none repeat scroll 0 0;
    border-right: 1px solid #1994da;
    border-bottom: 1px solid #1994da;
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.more_box_b.close span:before{
    content: "";
    position: absolute;
    top: 20px;
    right: -15px;
    display: block;
    width: 12px;
    height: 12px;
    background: transparent none repeat scroll 0 0;
    border-right: none;
    border-bottom: none;
    border-left: 1px solid #1994da;
    border-top: 1px solid #1994da;
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* ==================================================

 会員ランク

================================================== */
.bg_rank .general{/* 一般 */
    background-color: #fdf9d8;
}
.bg_rank .silver{
    background-color: #e9e9e9;
}
.bg_rank .gold{
    background-color: #fde5d8;
}
.bg_rank .platinum{
    background-color: #fdd8e8;
}
.bg_rank .diamond{
    background-color: #d8f0fd;
}