@charset "utf-8";

/* 目次
-------------------------------------------------------------
【全体】
【ヘッダとフッタ】header／footer
【コンテンツ部フォーマット】
【ページ共通】

【トップページ】最新／特集／オピニオン／注目の記事／人気記事ランキング（※共通パーツアレンジ用記述）／スライドエリア／今日のオススメ記事

【カテゴリTOP】（→共通パーツ）（キービジュアル／記事リスト／おすすめ記事）
【連載TOP】連載／新着記事 一覧
【ブログTOP】ブログTOP_1／ブログTOP_2（→共通パーツ）（キービジュアル／記事リスト）
【ブログ記事詳細＜2カラム＞】（→記事詳細と同内容）
【記事詳細＜3カラム・2カラム＞】メインパート／この記事の関連記事／あわせて読みたい関連本／広告エリア
【記事詳細（続きを読む）＜3カラム・2カラム＞】
【検索結果 一覧】（→共通パーツ）
【人気記事ランキング一覧】
【週刊新潮最新号（目次ページ）】週刊新潮 最新号／記事リスト（※共通パーツのアレンジ）／最新号目次

【右サイド】共通／バナーエリア／もう読みましたか？／好評連載／デイリー新潮をフォローする／最新号／注目の記事／人気記事ランキング※共用パーツアレンジ用記述／話題の本
【右サイド（ブログパーツ）】ブログコラム／ブログ記事リスト
【左サイド】

【共通パーツ】人気記事ランキング／ページネーション／キービジュアル／記事リスト／今日のオススメ記事／アイモバイル テキスト広告
-------------------------------------------------------------*/

/* 全体
-------------------------------------------------------------*/

html {
    font-size: 62.5%;
}

body {
    font-size: 1.4rem;
    font-family: 'Lucida Grande','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;
    line-height: 1.4;
    background: #f2f2f2;
    border-top: solid 2px #ff2800;
    border-bottom: solid 2px #ff2800;
}

html:before,html:after,body:before,body:after{
    content:"";
    background:#ff2800;
    position:fixed;
    display:block;
    z-index:100;
}

body:before{
    width:2px;
    top:0;
    bottom:0;
    right:0;
}
body:after{
    width:2px;
    top:0;
    bottom:0;
    left:0;
}

div.e_frame,
#fixed_header_bg {
    display: none;
}

a {
    text-decoration: none;
}

a:link {
    color: #161b6f;
}

a:visited {
    color: #161b6f;
}

a:hover {
    color: #161b6f;
}

a:active {
    color: #161b6f;
}

#main img {
    opacity: 1 !important
}

.PC_ONLY {display:none !important;}


/* beacon */
.beacon {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 0 !important;
    position: absolute;
    z-index: -1000;
    width: 1px !important;
    height: 1px !important;
}

/* ヘッダとフッタ
-------------------------------------------------------------*/

/* header */

#sp_header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index:9999;
    background: #ff2800;
    border: solid 2px #ff2800;
    border-bottom: none;
}
#sp_header h1 {
    width :100%;
    margin: 0 auto;
    padding: 10px 10px;
    background: #fff;
    border-bottom: none;
}
#sp_header h1 img {
    display: inline-block;
    width: 180px;
    height: auto;
}
#sp_header p {
    position: absolute;
    top: 10px;
    right: 14px;
    width :30px;
    opacity: 0.3;
}
#sp_header p img {
    width :100%;
    height: auto;
}
#sp_header p span.dw {
    position: absolute;
    top: 0;
    right: 0;
}

#sp_header nav {
    display: none;
}

#sp_header form {
    width: 86%;
    margin: 15px auto 15px;
    background: #fff;
}
#sp_header form input.txt {
    display: inline-block;
    width: 85%;
    padding: 0.9em 0 0.8em 1em;
    vertical-align: top;
    border: none;
    font-size: 16px;
    line-height: 1;
}
#sp_header form input.btn {
    display: inline-block;
    width: 14%;
    height: 3em;
    margin: 1% 0 0;
    border: none;
    background: url("/common/img/sp_search_btn.png") no-repeat 55% 55%;
    background-size: 75%;
}
#sp_header .main {
    width: 86%;
    margin: 0 auto 15px;
    background: #fff;
    border-bottom: solid 1px #ccc;
    border-right: solid 1px #ccc;
}
#sp_header .main li {
    width: 33%;
    padding: 0.85em 0 0.6em;
    float: left;
    text-align: center;
    border-top: solid 1px #ccc;
    border-left: solid 1px #ccc;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1;
}
#sp_header .main img {
    display: none;
}
#sp_header .main li a {
    color: #000;
}
#sp_header .main li.current {
    background: #ff2700;
}
#sp_header .main li.current a {
    color: #fff;
}
#sp_header .main li:nth-child(2),
#sp_header .main li:nth-child(5),
#sp_header .main li:nth-child(8) {
    width: 34%;
}
#sp_header a.ranking_sp {
    display: block;
    width: 86%;
    height: auto;
    margin: 0 auto 15px;
    padding: 0.6em 0 0.4em;
    background: #fff url(../img/sp_icon_ranking.png) no-repeat 30% center;
    background-size: 1.4em;
    text-align: center;
}

#header_entire {
    position: static !important;
}

header#header {
    position: relative;
    margin: 0 0 15px;
    background: #fff;
    overflow: visible;
}

header h1,
header nav,
header aside .date,
header aside .banner {
    display: none;
}
header aside {
    padding-top: 60px;
    background: #fff;
}

header aside .banner_sp {
    margin: 0 0 10px;
    position: relative;
    z-index:200;
}

header aside .topics {
    margin: 0 15px 10px;
    background: url("../img/sp_ttl_topics.png") no-repeat right center;
    background-size: contain;
}
header aside .topics dt {
    display: none;
}

header aside .topics dd {}

header aside .topics li {
    margin-bottom: 5px;
}
header aside .topics li:last-child {
    margin-bottom: 0;
}
header aside .topics li a {
    display: inline-block;
    padding: 0 0 0 11px;
    width: 80%;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    background: url(../img/bg_marker.png) no-repeat 0 5px;
    font-weight: bold;
}

/* footer */

#footer {
    position: relative;
    padding: 0 0 20px;
    background: #fff;
}

footer p.pagetop {
    padding: 0.5em 0;
    background: #ff2700;
    text-align: center;
}
footer p.pagetop a {
    display: block;
    color: #fff !important;
    font-size: 1.6rem;
    font-weight: bold;
}

footer nav .main {
    display: none;
}

footer nav .sub {
    margin: 25px 25px 0;
}
footer nav .sub li {
    margin: 0 0 10px;
    padding: 0 0 10px;
    border-bottom: solid 1px #ddd;
}
footer nav .sub li:last-child {
    border-bottom: none;
}

footer aside .copy {
    margin: 0 25px;
    text-align: right;
    font-size: 1rem;
    color: #999;
}

/* コンテンツ部フォーマット
-------------------------------------------------------------*/

article.contents_n {
    background: #fff url(../img/bg_sec.png) repeat-x left top;
    margin: 0 0 20px;
    padding: 0;
}

/* ページ共通
-------------------------------------------------------------*/

.pc_img {
    display: none;
}
.pc_txt {
    display: none;
}
.pc_div {
    display: none;
}

article.contents {
    /*background: #fff;*/
}

article.contents section {
    position: relative;
    margin: 0 15px 15px;
    padding: 0 15px;
    background: #fff url(../img/bg_sec.png) repeat-x left top;
    text-align: center;
}

#main {
    margin-top: 0 !important;
}
#main h2.typ1 {
    display: inline-block;
    margin: -3px auto 13px;
    padding: 8px 15px 5px;
    color: #fff;
    background: #000;
    font-size: 1.6rem;
    font-weight: bold;
}
#main h2.typ2 {
    text-align: left;
    margin: 0 0 15px;
    font-size: 1.8rem;
    font-weight: bold;
}
#main h2.typ3 {
    display: inline-block;
    margin: 10px auto 13px;
    font-size: 1.6rem;
    font-weight: bold;
}
#main h3.typ1 {
    margin: 0 0 15px;
    padding: 20px 0 0;
    background: url(../img/bg_title_t1.png) no-repeat center top;
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
}

p.open_btn {
    margin: 0;
    padding: 0.6em 0;
    text-align: center;
    border: solid 1px #ccc;
}
p.open_btn span {
    display: inline-block;
    padding: 0 0 0 1.4em;
    background: url(../img/sp_more_bg.png) no-repeat 0 0.3em;
    background-size: 1.2em;
    color: #161b6f;
    font-weight: bold;
}
p.open_btn span.txt2 {
    display: none;
}
p.open_btn.open span {
    background: url(../img/sp_more_up_bg.png) no-repeat 0 0.3em;
    background-size: 1.2em;
}

/* トップページ
-------------------------------------------------------------*/

/* 最新 */

.index .contents .latest_news {
    margin: 0;
    padding: 0;
    background: none;
}
.index .contents .latest_header {
    margin: 0 15px 0;
}
.index .contents .latest_header > a {
    display: block;
}
.index .contents .latest_header > a p.pic {
    float: left;
    display: block;
    margin: 0 10px 10px 0;
    width: 60px;
    height: 60px;
    background-color: #f2f2f2;
    border: 1px solid #e5e5e5;
    text-align: center;
}
.index .contents .latest_header > a p.pic img {
    width: auto;
    height: 58px;
}
.index .contents .latest_header > a p.ttl {
    display: block;
    min-height: 60px;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.2;
    margin: 0 0 10px 0;
}
.index .contents .latest_header > a p.ttl sub {
    display: block;
    margin: 5px 0 0;
    text-align: right;
    font-size: 1.2rem;
    font-weight: normal;
    font-style: italic;
    color: #c6c7d9;
}
.index .contents .latest_header ul.slide {
    display: none;
}
.index .contents .latest_header a sub:before {
    content: ' - ';
}


.index .contents .latest_title {
    background: #fff;
    padding-bottom:15px;
}

.index .contents .latest_title li {
    margin-bottom: 10px;
    line-height: 1.2;
}
.index .contents .latest_title li.hide {
    display: none;
}
.index .contents .latest_title a {
    display: block;
}
.index .contents .latest_title a p.pic {
    display: block;
    float: left;
    margin: 0 10px 0 0;
    width: 60px;
    height: 60px;
    background-color: #f2f2f2;
    border: 1px solid #e5e5e5;
    text-align: center;
    overflow: hidden;
}
.index .contents .latest_title a p.pic img {
    width: auto;
    height: 58px;
}
.index .contents .latest_title a p.ttl {
    display: block;
    min-height: 60px;
    font-size: 1.4rem;
    font-weight: bold;
    overflow: hidden;
}
.index .contents .latest_title a p.ttl sub {
    margin: 5px 0 0;
    text-align: right;
    font-size: 1.2rem;
    font-weight: normal;
    font-style: italic;
    color: #c6c7d9;
}
.index .contents .latest_title a sub:before {
    content: ' - ';
}

/* 特集 */

.index .contents .special_contents ul {
    margin-bottom: 8px;
}
.index .contents .special_contents li {
    margin-bottom: 7px;
}
.index .contents .special_contents li a {
    display: inline-block;
    padding: 0 0 0 10px;
    background: url(../img/bg_marker.png) no-repeat 0 7px;
}
article.contents section .go_list {
    display: none;
}

/* オピニオン */

.index .contents .opinion li {
    margin-bottom: 10px;
}

.index .contents .opinion li a {
    display: block;
    overflow: hidden;
}

.index .contents .opinion li a div {
    float: left;
    margin-right: 10px;
    width: 60px;
}

.index .contents .opinion li a div img {
    height: auto;
    vertical-align: top;
    width: 60px;
}

/* （左コラム枠） */

.index .contents .index_column_left {
    margin: 0;
    padding: 0;
    background: none;
}

/* 注目の記事 */

.index .contents .focused_issue {
    margin: 0 15px 15px;
}

.index .contents .focused_issue > div {
    margin-bottom: 10px;
}

.index .contents .focused_issue div a div {
    margin-bottom: 5px;
    text-align: center;
}

.index .contents .focused_issue div a div img {
    vertical-align: top;
}

.index .contents .focused_issue div a p {
    font-weight: bold;
    font-size: 1.6rem;
}

.index .contents .focused_issue li {
    margin-bottom: 10px;
}

.index .contents .focused_issue li a {
    display: block;
    overflow: hidden;
}

.index .contents .focused_issue li a div {
    float: left;
    margin-right: 10px;
    width: 90px;
}

.index .contents .focused_issue li a div img {
    width: 90px;
    vertical-align: top;
    height: auto;
}

/* 人気記事ランキング（→共通パーツ） */

.index .contents .index_ranking {}


/* （右コラム枠） */

.index .contents .index_column_right {
    margin: 0;
    padding: 0;
    background: none;
}

/* スライドエリア */

.index .contents .slidearea_outer {
    display: none;
}
.index .contents .slidearea_outer_sp {
    background: none;
    width: 240px;
    margin: 0 auto;
    padding: 0;
}
.index .contents .slidearea_outer_sp .slidearea {
    width: 100%;
    overflow: hidden;
    position: relative;
}
.index .contents .slidearea_outer_sp .slidearea ul {
    position: absolute;
    left: 0;
    top: 0;
    overflow: hidden;
}
.index .contents .slidearea_outer_sp .slidearea li {
    margin: 0;
    width: 240px;
    float: left;
}

.index .contents .slidearea_outer_sp .slidearea li a {
    display: block;
}

.index .contents .slidearea_outer_sp .slidearea li a div {
    margin-bottom: 5px;
    overflow: hidden;
    text-align: center;
    width: 240px;
}

.index .contents .slidearea_outer_sp .slidearea li a div img {
    height: 180px;
    vertical-align: top;
    width: auto;
}
.index .contents .slidearea_outer_sp .ctrl {
    clear: both;
    text-align: center;
    display: inline-block;
}
.index .contents .slidearea_outer_sp .ctrl li {
    float: left;
}
.index .contents .slidearea_outer_sp .ctrl li.num {
    width: 7em;
    text-align: center;
}
.index .contents .slidearea_outer_sp .ctrl li.num em {
    font-size: 2.2em;
    font-weight: bold;
    color: #ff2700;
}
.index .contents .slidearea_outer_sp .ctrl li.btn {
    position: relative;
    top: 5px;
}
.index .contents .slidearea_outer_sp .ctrl li.btn a {
    display: block;
    width: 50px;
    padding: 10px 0 0;
}
.index .contents .slidearea_outer_sp .ctrl li.btn:first-child a {
    text-align: right;
}
.index .contents .slidearea_outer_sp .ctrl li.btn a.disable {
    opacity: 0.3;
}

/* 今日のオススメ記事 */

.index .contents .todays_recommend ul {
    margin-bottom: 7px;
}
.index .contents .todays_recommend li {
    margin-bottom: 7px;
}

.index .contents .todays_recommend li a {
    background: url(../img/bg_marker.png) no-repeat 0 7px;
    display: inline-block;
    padding-left: 10px;
}

.index .contents .todays_recommend li a div {
    display: none;
}

/* 話題の本 */

.index .contents .popular_book {
    padding: 0;
    background-color: transparent;
}

.index .contents .popular_book ul {}

.index .contents .popular_book li {
    position: relative;
    margin: 0 0 15px;
    padding: 0 0 0 92px;
}
.index .contents .popular_book li.hide {
    display: none;
}
.index .contents .popular_book img {
    position: absolute;
    top: 0;
    left: 0;
    width: 80px;
    height: auto;
}
.index .contents .popular_book dt {
    margin: 0 0 8px;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.2;
}

.index .contents .popular_book dt:first-letter {
    position: relative;
    top: 0.1em;
    float: left;
    margin-right: 3px;
    font-size: 3rem;
    line-height: 1;
}
.index .contents .popular_book dd {
    line-height: 1.4;
    color: #666;
}

.index .contents .popular_book dd.txt {
    position: relative;
    height: 4em;
}
.index .contents .popular_book dd.txt div.ellipsis {
    position: absolute;
    bottom: 0;
    right: 0;
    height: 1.2em;
    background: #f2f2f2;
}

/* カテゴリTOP（→共通パーツ）（キービジュアル／記事リスト／おすすめ記事）
-------------------------------------------------------------*/

/* 連載TOP
-------------------------------------------------------------*/

/* 連載 */

.serial .contents .marin_part {
    margin: 0;
    padding: 15px 15px 0;
}
.serial .contents .marin_part .headliner {
    margin: 0 0 20px;
}
.serial .contents .marin_part .headliner li {
    padding: 0 0 20px;
}

.serial .contents .marin_part .headliner li a dl {
    overflow: hidden;
}

.serial .contents .marin_part .headliner li a dl dt {
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 5px;
}

.serial .contents .marin_part .headliner li a dl .pic {
    float: left;
    margin-right: 10px;
    width: 100px;
}

.serial .contents .marin_part .headliner li a dl .pic img {
    height:auto;
    vertical-align: top;
    width: 100px;
}

.serial .contents .marin_part .headliner li a dl .txt {
    color: #666;
}

/* 新着記事 一覧 */

.serial .contents .marin_part .list {
    margin: 0 0 20px;
}
.serial .contents .marin_part .list li > a.hover {
    display: block;
    padding: 10px 0;
    background: #f2f2f2;
}
.serial .contents .marin_part .list li > a.hover img {
    display: block;
    margin: 0 auto;
    width: 160px;
    height: auto;
}
.serial .contents .marin_part .list > li {
    padding: 0 0 15px;
}
.serial .contents .marin_part .list li dt.serial {
    position: relative;
    margin: 10px 0 0;
    padding-left: 2.8em;
    font-size: 1.4rem;
    overflow: visible;
}
.serial .contents .marin_part .list li dt.serial span {
    position: absolute;
    top: -1px;
    left: 0;
    display: inline-block;
    margin-right: 5px;
    padding: 1px 3px 0;
    border: solid 1px #333;
    font-size: 1.2rem;
}
.serial .contents .marin_part .list li dt.title {
    margin: 8px 0 10px;
    font-size: 1.8rem;
    font-weight: bold;
}
.serial .contents .marin_part .list li dd.txt li {
    margin-bottom: 2px;
}
.serial .contents .marin_part .list li dd.txt li a {
    display: inline-block;
    padding: 0 0 0 10px;
    background: url(../img/bg_marker.png) no-repeat 0 7px;
    font-size: 1.6rem;
}
.serial .contents .marin_part .list li dd.txt p {
    margin: 5px 0 5px;
    text-align: right;
}
.serial .contents .marin_part .list li dd.txt p a {
    display: inline-block;
    padding: 0 14px 0 0;
    background: url(../img/arrow_red_r.png) no-repeat right 5px;
    font-size: 1.5rem;
}

/* ブログTOP
-------------------------------------------------------------*/

/* ブログTOP_1 */

.blog_top.t1 .contents .panel_display {
    margin: 0 15px 15px;
    padding: 0;
    background: #f2f2f2;
}

.blog_top.t1 .contents .panel_display ul.list {}

.blog_top.t1 .contents .panel_display ul.list li {
    border-top: solid 3px #ff2700;
    margin: 0 0 15px;
}
.blog_top.t1 .contents .panel_display ul.list li a {
    display: block;
    padding: 15px 15px 15px;
    background: #fff;
}
.blog_top.t1 .contents .panel_display ul.list li p.pic img {
    width: 100%;
    height: auto;
}
.blog_top.t1 .contents .panel_display ul.list li p.dat {
    margin: 5px 0 3px;
    font-size: 1.5rem;
    color: #666;
}
.blog_top.t1 .contents .panel_display ul.list li p.txt {
    font-size: 1.8rem;
    font-weight: bold;
}

/* ブログTOP_2（→共通パーツ）（キービジュアル／記事リスト） */

.blog_top.t2 .category_list .headliner dd.hl_cat {
    display: block;
    margin: 0 0 5px;
    font-size: 1.2rem;
    font-weight: bold;
    color: #c6c7d9;
}
.blog_top.t2 .category_list .headliner dd.hl_dat {
    display: block;
    padding: 3px 2px 0 0;
    font-size: 1.2rem;
    font-style: italic;
    text-align: right;
    color: #c6c7d9;
}

.blog_top.t2 .category_list dt {
    display: inline;
}
.blog_top.t2 .category_list dd.dat {
    display: inline;
    margin-left: 0.5em;
    color: #666;
}
.blog_top.t2 .category_list dd.txt {
    margin-top: 10px;
}

/* ブログ記事詳細＜2カラム＞（→記事詳細と同内容）
-------------------------------------------------------------*/

.article_detail.c2.blog article.contents {
    margin: 0 0 30px !important;
}

.article_detail .main_part .blog_pic1,
.article_detail .main_part .blog_pic2 {
    margin: 0 0 20px;
}
.article_detail .main_part .blog_pic1 img,
.article_detail .main_part .blog_pic2 img {
    display: block;
    width: 100%;
    height: auto;
}

.article_detail .main_part .blog_dat {
    margin: 10px 0 10px;
}


/* 記事詳細＜3カラム・2カラム＞
-------------------------------------------------------------*/

.article_detail article.contents,
.article_detail article.contents_n {
    overflow: visible;
}

/* メインパート */

.main_part div.wp_txt h4,
.main_part div.wp_txt p {
    font-size: 1.6rem;
    line-height: 1.8;
    margin-bottom: 20px;
    overflow: visible;
}

.main_part div.wp_txt h4 {
    font-weight: bold;
}

.main_part div.wp_txt p a {
    text-decoration: underline;
}

.main_part div.wp_txt .pic_main {
    width: 100% !important;
}

.main_part div.wp_txt .pic_cols {
    width: 100% !important;
}

.main_part div.wp_txt .pic_cols .pic,
.main_part div.wp_txt .pic_left .pic,
.main_part div.wp_txt .pic_right .pic {
    margin: 0 auto 20px;
}

.main_part div.wp_txt .pic_main img {
    display: block;
    height: auto;
    width: 100% !important;
}

.main_part div.wp_txt .pic_cols .pic img,
.main_part div.wp_txt .pic_left .pic img,
.main_part div.wp_txt .pic_right .pic img {
    display: block;
}

.main_part div.wp_txt .pic_main span,
.main_part div.wp_txt .pic_cols span,
.main_part div.wp_txt .pic_left .pic span,
.main_part div.wp_txt .pic_right .pic span {
    background: #f4f4f4;
    color: #000;
    display: block;
    font-size: 1.2rem;
    line-height: 1.4;
    padding: 5px;
}

.main_part div.wp_txt .quote_from {
    font-size: 77%;
    text-align: right;
}

.main_part div.wp_txt img {
    max-width: 100% !important;
    height: auto;
    margin: 0;
}

.main_part div.wp_txt .alignleft,
.main_part div.wp_txt .alignright,
.main_part div.wp_txt .aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.article_detail .main_part {
    margin: 0;
    padding: 0 20px;
    text-align: center;
    overflow: visible;
    z-index: 3;
}

.article_detail .main_part h2 {}

.article_detail .main_part h3 {
    margin: 0;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.2;
}
.article_detail .main_part p.banner {
    display: inline-block;
    float: right;
    padding: 5px 10px 5px;
    background: #999;
    color: #fff;
    font-size: 1.6rem;
    margin-bottom: 20px;
}
.article_detail .main_part ul.social {
    clear: both;
    margin: 15px 0;
}
.article_detail .main_part ul.social li {
    float: left;
    margin-right: 5px;
}
.article_detail .main_part dl.onsale {
    border-top: solid 1px #ccc;
    border-bottom: solid 1px #ccc;
    margin: 0 0 20px;
    padding: 0 0 10px;
}
.article_detail .main_part dl.onsale dt {
    display: block;
    width: 7em;
    margin: 0 0 10px;
    padding: 5px 0 5px;
    border: solid 1px #ccc;
    text-align: center;
    border-top: none;
    font-size: 1.4rem;
    font-weight: bold;
}
.article_detail .main_part dl.onsale dd p.pic {
    float: left;
    width: 30%;
    margin-right: 15px;
    overflow: visible;
}
.article_detail .main_part dl.onsale dd p.pic img {
    width: 100%;
    height: auto;
    box-shadow: 1px 1px 9px #ccc;
    -ms-box-shadow: 1px 1px 9px #ccc;
}
.article_detail .main_part dl.onsale dd ul.txt {
    margin: 0 0 10px;
    overflow: hidden;
}
.article_detail .main_part dl.onsale dd ul.txt li {
    background: url(../img/bg_marker_disc.png) no-repeat 0 5px;
    padding: 0 0 5px 10px;
    font-weight: bold;
}
.article_detail .main_part dl.onsale dd p.ttl {
    margin: 0 0 15px;
    margin-left: 34%;
    font-size: 1.4rem;
}
.article_detail .main_part dl.onsale dd p.btn {
    width: 65%;
    margin-left: 35%;
}
.article_detail .main_part dl.onsale dd p.btn img {
    width: 100%;
    height: auto;
}
.article_detail .main_part aside.col {
    padding: 20px 0 15px;
    margin: 0 0 20px;
    background: #f2f2f2;
    text-align: center;
    overflow: visible;
}
.article_detail .main_part aside.col img {
    display: block;
    width: 190px;
    height: auto;
}
.article_detail .main_part aside.col p {
    display: block;
    margin: 0 auto;
    width: 190px;
    overflow: visible;
}
.article_detail .main_part aside.col p.ttl {
    display: inline-block;
    margin: 15px 0 10px;
    text-align: left;
    font-size: 1.5rem;
    line-height: 1.4;
}
.article_detail .main_part aside.col p.pic img {
    box-shadow: 0 0 24px #ccc;
    -ms-box-shadow: 0 0 24px #ccc;
}
.article_detail .main_part aside.col p.btn img {
    display: block;
    width: 190px;
    margin: 0 auto 10px;
}
.article_detail .main_part aside.col dl.netshop {
    position: relative;
    width: 190px;
    margin: 0 auto 5px;
    overflow: visible;
}
.article_detail .main_part aside.col dl.netshop img {
    display: block;
    width: 100%;
    height: auto;
}
.article_detail .main_part aside.col dl.netshop dt {
    position: relative;
    cursor: pointer;
}
.article_detail .main_part aside.col dl.netshop dt img {
    display: block;
}
.article_detail .main_part aside.col dl.netshop dt img.netshop_ot {
    position: absolute;
    top: 0;
    left: 0;
}
.article_detail .main_part aside.col dl.netshop dd {
    display: none;
    position: absolute;
    top: 32px;
    left: 0px;
    border: solid 2px #ff5c3e;
    background: #fff;
}
.article_detail .main_part aside.col dl.netshop dd li {
    border-top: solid 2px #ff5c3e;
}

.article_detail .main_part > p.prof {
    margin: 0 0 15px;
    line-height: 1.4;
    overflow: visible;
}
.article_detail .main_part ul.s45 {
    float:right;
    margin: 0 0 10px;
    vertical-align: top;
}
.article_detail .main_part ul.s45 li.pic {
    position: relative;
    top: 2px;
    display: inline-block;
    vertical-align: middle;
}
.article_detail .main_part ul.s45 li.txt {
    display: inline-block;
    font-weight: bold;
    vertical-align: middle;
}
.article_detail .main_part ul.s45 li.ntc {
    padding-left: 11px;
    font-size: 1rem;
}
.article_detail .main_part ul.tag {
    clear: both;
}
.article_detail .main_part ul.tag li {
    float: left;
    margin: 0 5px 5px 0;
    padding: 3px 6px;
    border: solid 1px #ccc;
    border-radius: 4px;
}
.article_detail .main_part ul.tag li a {
    font-size: 1.3rem;
}

/* この記事の関連記事 */

.article_detail .related_article {
    margin: 0;
    padding: 0 20px 15px;
    background: #fff;
}
.article_detail .related_article ul {
    margin-bottom: 15px;
}
.article_detail .related_article li {
    margin-bottom: 10px;
}
.article_detail .related_article li:last-child {
    margin-bottom: 0;
}
.article_detail .related_article a {
    display: inline-block;
    padding: 0 0 0 12px;
    background: url(../img/bg_marker.png) no-repeat 2px 7px;
    font-weight: bold;
}
.article_detail .related_article a sub {
    margin: 5px 0 0;
    text-align: right;
    font-size: 1rem;
    font-weight: normal;
    font-style: italic;
    color: #c6c7d9;
}
.article_detail .related_article a span.hover {
    color: #ff2700;
}
.article_detail .related_article a sub:before {
    content: ' - ';
}

/* あわせて読みたい関連本 */

.article_detail .related_book {
    margin: 0;
    padding: 0 20px 15px;
    background: #fff;
    border-bottom: #fff solid 1px;
    overflow: visible;
}
.article_detail .related_book > ul {
    margin-bottom: 15px;
    overflow: visible;
}
.article_detail .related_book > ul:last-child {
    margin-bottom: 0;
}
.article_detail .related_book > ul > li {
    display:block;
    width: 100%;
    margin: 0 0 15px;
    background: #f2f2f2;
    overflow: visible;
}.article_detail .related_book > ul > li:last-child {
    margin-bottom: 0;
}

.article_detail .related_book > ul > li:after {
    content: ".";
    clear: both;
    height: 0;
    font-size: 0%;
    display: block;
    visibility: hidden;
}

.article_detail .related_book > ul > li p.pic {
    float: left;
    width: 105px;
}
.article_detail .related_book > ul > li p.pic img {
    margin: 15px;
    width: 70px;
    height: auto;
    box-shadow: 0 0 12px #999;
    -ms-box-shadow: 0 0 12px #999;
}
.article_detail .related_book > ul > li p.txt {
    padding: 15px 15px 15px 0;
    height: auto !important;
}

.article_detail .related_book dl.netshop {
    position: relative;
    width: 160px;
    margin: 0 15px 15px 105px;
    overflow: visible;
}
.article_detail .related_book dl.netshop img {
    display: block;
    width: 100%;
    height: auto;
}
.article_detail .related_book dl.netshop dt {
    position: relative;
    cursor: pointer;
}
.article_detail .related_book dl.netshop dt img {
    display: block;
}
.article_detail .related_book dl.netshop dt img.netshop_ot {
    position: absolute;
    top: 0;
    left: 0;
}
.article_detail .related_book dl.netshop dd {
    display: none;
    position: absolute;
    top: 28px;
    left: 0px;
    width: 160px;
    border: solid 2px #ff5c3e;
    background: #fff;
    z-index: 30;
}
.article_detail .related_book dl.netshop dd li {
    width: 160px;
    margin: 0;
    padding: 0;
    border-top: solid 1px #ff5c3e;
}

/* 広告エリア */

.article_detail .article_adv_area {
    display: none;
}

/* 記事詳細（続きを読む）＜3カラム・2カラム＞
-------------------------------------------------------------*/

.article_detail .main_part p.btn_full_txt {
    margin: 0 0 10px;
    text-align: center;
}
.article_detail .main_part p.btn_full_txt a {
    display: inline-block;
    width: 96%;
    padding: 7px 0 7px;
    border-top: solid 1px #ddd;
    background: #f2f2f2;
    /* background: #f2f2f2 url(../img/arrow_red_r_ot.png) no-repeat right center; */
    font-size: 1.7rem;
    font-weight: bold;
}

/* 検索結果 一覧（→共通パーツ）
-------------------------------------------------------------*/

/* 人気記事ランキング一覧
-------------------------------------------------------------*/

section.ranking_list {
    margin: 0 0 15px !important;
    padding: 20px 15px 15px !important;
}
section.ranking_list p.leadcopy {
    margin: 0 0 5px;
    line-height: 1.6;
}

article.contents section.page_ranking {
    margin: 0 !important;
    padding: 20px 15px 0 !important;
}
article.contents section.page_ranking_list p.leadcopy {
    margin: 0 0 5px;
    line-height: 1.6;
}

div.rankinglist {
    background: #fff;
    padding: 0 15px 15px !important;
}

dl.ranking_page {
    position: relative;
}
.ranking_page > dt {
    position: relative;
    top: 10px;
    float:left;
    width: 32%;
    padding: 5px 0 5px;
    text-align:center;
    background: #f2f2f2;
    font-weight: bold;
    cursor: pointer;
    border-top: solid 1px #f2f2f2;
    z-index: 1;
}

.ranking_page > dt.middle {
    margin: 0 2%;
}
.ranking_page > dt.active {
    background: #fff;
    border: solid 1px #ccc;
    border-bottom: none;
    color:#ff2700;
    position: relative;
    z-index: 3;
}
.ranking_page > dd {
    position:absolute;
    top: 0;
    left:0;
    z-index: 2;
    border-top: solid 1px #ccc;
}
.ranking_page ol {
    padding: 0;
}
.ranking_page ol li {
    position: relative;
    padding: 10px 0 10px 32px;
    border-bottom: solid 1px #ccc;
}
.ranking_page ol li:first-child {
    font-weight: bold;
    font-size: 123.1%;
}
.ranking_page ol li:before {
    position: absolute;
    top: 10px;
    left: 0;
    float: left;
    width: 1.6em;
    margin: 0 10px 0 0;
    padding: 3px 0 3px;
    font-size: 12pt;
    font-weight: bold;
    color: #fff;
    background: #ff2700;
    text-align: center;
    line-height: 1;
}

.ranking_page .rp_ol1 {
    counter-reset: rp_ol_1;
}

.ranking_page .rp_ol1 li:before {
    counter-increment: rp_ol_1;
    content: counter(rp_ol_1);
}

.ranking_page .rp_ol2 {
    counter-reset: rp_ol_2;
}

.ranking_page .rp_ol2 li:before {
    counter-increment: rp_ol_2;
    content: counter(rp_ol_2);
}

.ranking_page .rp_ol3 {
    counter-reset: rp_ol_3;
}

.ranking_page .rp_ol3 li:before {
    counter-increment: rp_ol_3;
    content: counter(rp_ol_3);
}

.ranking_page .adv {
    margin: 10px 0 10px;
}
.ranking_page .adv.clone {
    margin: 14px 0 0;
    padding: 0 0 10px;
    border-bottom: solid 1px #ccc;
}
.ranking_page .adv .ttl {
    display: block;
    margin-bottom: 2px;
    font-size: 1.6rem;
    font-weight: bold;
}
.ranking_page .adv .url {
    display: block;
    margin-bottom: 2px;
    font-size: 1.4rem;
    font-style: italic;
}
.ranking_page .adv .txt {
    font-size: 1.1rem;
    color: #666;
}
.ranking_page .adv .mis {
    margin: 5px 0 0;
    text-align: right;
    font-size: 1rem;
    font-weight: normal;
    font-style: italic;
    color: #c6c7d9;
}
.ranking_page .adv .mis:before {
    content: ' - ';
}

/* 著作権・リンクについて
-------------------------------------------------------------*/

.copyright_list {
    margin-bottom: 15px !important;
    padding: 20px 15px 15px !important;
}

.copyright_list p,
.copyright_list ul {
    margin-bottom: 5px;
    line-height: 1.6;
}

/* 週刊新潮最新号（目次ページ）
-------------------------------------------------------------*/

/* 週刊新潮 最新号 */

.latest_issue.cover_and_adv {
    margin: 0 !important;
    padding: 20px 15px 15px !important;
}
.latest_issue.cover_and_adv h2 {
    margin-bottom: 20px !important;
}
.latest_issue.cover_and_adv p.cover {
    float: left;
    width: 35%;
    margin: 0 0 20px 0;
    overflow: visible;
}
.latest_issue.cover_and_adv p.cover img {
    width: 100%;
    height: auto;
    box-shadow: 1px 1px 8px #999;
}
.latest_issue.cover_and_adv ul {
    float: right;
    width: 60%;
    margin: 0 0 5px;
}
.latest_issue.cover_and_adv ul li {
    background: url(../img/bg_marker_disc.png) no-repeat 0 5px;
    padding: 0 0 5px 12px;
    font-weight: bold;
}
.latest_issue.cover_and_adv p.ttl {
    float: right;
    width: 60%;
    margin: 0 0 10px;
}
.latest_issue.cover_and_adv p.btn {
    float: right;
    width: 60%;
    margin: 0 0 30px;
}
.latest_issue.cover_and_adv p.btn img {
    width: 100%;
    height: auto;
}
.latest_issue.cover_and_adv p.pic {
    clear: both;
}
.latest_issue.cover_and_adv p.pic img {
    width: 100%;
    height: auto;
}

/* 記事リスト（※共通パーツのアレンジ） */

.latest_issue.category_list {
    margin: 0 0 20px;
    padding-top: 0 !important;
    background: #fff;
}
.latest_issue.category_list ul.list li.hide{
    display: none;
}

.latest_issue.category_list .go_list {
    display: none;
}
.latest_issue.category_list .go_list_box {
    display: none;
}
.latest_issue.category_list .open_btn {
    width: 100%;
    margin: 20px 0 30px;
    padding: 10px 0 12px;
    background: #e2e2e2;
}

/* 最新号目次 */

.latest_issue .latest_issue_index {
    margin: 0 0 30px;
}
.latest_issue .latest_issue_index dt {
    margin: 8px 0 0;
    padding: 12px 0 2px;
    border-top: solid 1px #ccc;
    font-size: 1.6rem;
    font-weight: normal;
    color: #000 !important;
}
.latest_issue .latest_issue_index dt:first-child {
    margin: 0;
    padding: 0 0 2px;
    border-top: none;
}

/* 右サイド
-------------------------------------------------------------*/

/* 共通 */

aside.sub_right div.adv_outer {
    position: static !important;
    height: auto !important;
}
aside.sub_right {
    position: static !important;
    height: auto !important;
}

.sub_right ul.adv > li {
    margin: 0 15px 25px;
}

.sub_right ul.adv .ttl_side_t1 {
    margin: 0 0 10px;
    padding: 10px 0 0;
    background: url(../img/bg_title_t1.png) no-repeat center top;
    text-align: center;
    font-size: 1.6rem;
    font-weight: bold;
}

.sub_right ul.adv .ttl_side_t2 {
    display: inline-block;
    margin: -3px auto 13px;
    padding: 8px 15px 5px;
    color: #fff;
    background: #000;
    font-size: 108%;
    font-weight: bold;
}

/* バナーエリア（右サイド） */

.sub_right ul.adv li.banner_area {
    width: 80%;
    margin: 15px auto 15px;
}
.sub_right ul.adv li.banner_area_full {
    width: 100%;
    margin: 15px auto 15px;
    text-aligin: center;
}
.sub_right ul.adv li.banner_area div {
    margin: 0 auto 10px;
}
.sub_right ul.adv li.banner_area img {
    display: block;
    width: 100%;
    height: auto;
}

/* もう読みましたか？（右サイド） */

.sub_right ul.adv li.haveyouread_side ul {
    text-align: center;
}

.sub_right ul.adv li.haveyouread_side li {
    display: inline-block;
    width: 43%;
    margin: 0 8px;
    vertical-align: top;
}

.sub_right ul.adv li.haveyouread_side li a  {
    display: block;
}

.sub_right ul.adv li.haveyouread_side li a div {
    margin-bottom: 5px;
}

.sub_right ul.adv li.haveyouread_side li a div img {
    height: auto;
    vertical-align: top;
    width: 100%;
}

.sub_right ul.adv li.haveyouread_side li a p {
    font-size: 1.2rem;
}

/* 好評連載（右サイド） */

.sub_right ul.adv li.serial_side dd {
    margin-bottom: 15px;
}

.sub_right ul.adv li.serial_side dd:last-child {
    margin-bottom: 0;
}

.sub_right ul.adv li.serial_side a {
    display: block;
    overflow: hidden;
}

.sub_right ul.adv li.serial_side a div {
    float: left;
    width: 35%;
}

.sub_right ul.adv li.serial_side a div img {
    height: auto;
    vertical-align: top;
    width: 100%;
}

.sub_right ul.adv li.serial_side a p {
    float: right;
    width: 60%;
}

.sub_right ul.adv li.serial_side a .txt {
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 5px;
}

.sub_right ul.adv li.serial_side a .series {
    color: #666;
    margin-bottom: 5px;
}

.sub_right ul.adv li.serial_side a .date {
    color: #c6c7d9;
    font-size: 1.1rem;
}

/* デイリー新潮をフォローする（右サイド） */

.sub_right ul.adv li.social_side ul {
    text-align: center;
}
.sub_right ul.adv li.social_side li {
    display: inline-block;
    margin: 0 12px;
}
.sub_right ul.adv li.social_side li img  {
    height: 25px;
    width: auto;
}

/* 最新号（右サイド） */

.sub_right ul.adv li.latest_issue_side {
    background: #e2e2e2;
}
.sub_right ul.adv li.latest_issue_side dl {
    margin: 0 0 20px;
    text-align: center;
}
.sub_right ul.adv li.latest_issue_side dt {
    display: inline-block;
    margin: 0 auto 5px;
    padding: 5px 15px 5px;
    color: #fff;
    background: #000;
    font-size: 1.5rem;
    font-weight: bold;
}
.sub_right ul.adv li.latest_issue_side ul {
    margin: 5px 0 0;
    text-align: center;
}
.sub_right ul.adv li.latest_issue_side li {
    display: inline-block;
    width: 45%;
    margin: 0 0.5%;
    text-align: center;
    font-size: 1.4rem;
    overflow: visible;
}
.sub_right ul.adv li.latest_issue_side li img {
    width: 90%;
    height: auto;
    margin: 5px 0;
    box-shadow: 1px 1px 14px #999;
    -ms-box-shadow: 1px 1px 14px #999;
}


/* 注目の記事（右サイド） */

.sub_right ul.adv li.focused_issue_side dl {
    padding: 0 15px;
    background: #fff url(../img/bg_sec.png) repeat-x left top;
    text-align: center;
}

.sub_right ul.adv li.focused_issue_side {
    margin-bottom: 30px;
}

.sub_right ul.adv li.focused_issue_side dl dd > div {
    margin-bottom: 10px;
}

.sub_right ul.adv li.focused_issue_side dl dd div a {
    display: block;
}

.sub_right ul.adv li.focused_issue_side dl dd div a div {
    margin: 0 auto 10px;
    width: 160px;
}

.sub_right ul.adv li.focused_issue_side dl dd div a div img {
    height: auto;
    vertical-align: top;
    width: 160px;
}

.sub_right ul.adv li.focused_issue_side dl dd div a p {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.3;
}

.sub_right ul.adv li.focused_issue_side li {
    margin-bottom: 15px;
}
.sub_right ul.adv li.focused_issue_side li a {
    display: block;
    overflow: hidden;
}

.sub_right ul.adv li.focused_issue_side li a div {
    float: left;
    margin-right: 10px;
    width: 90px;
}

.sub_right ul.adv li.focused_issue_side li a div img {
    height: auto;
    vertical-align: top;
    width: 90px;
}

.sub_right ul.adv li.focused_issue_side li a p {
    font-size: 1.4rem;
}

/* 人気記事ランキング（右サイド）※共用パーツアレンジ用記述 */

.sub_right ul.adv li.ranking_side > dl {
    padding: 0 15px;
    background: #fff url(../img/bg_sec.png) repeat-x left top;
    text-align: center;
}

/* 話題の本（右サイド） */

.sub_right ul.adv li.popular_book_side {
    background: url(../img/bg_sec.png) repeat-x left top;
    margin-bottom: 10px;
}
.sub_right ul.adv li.popular_book_side > dl {
    text-align: center;
}
.sub_right ul.adv li.popular_book_side > dl > dt {
    display: inline-block;
    margin: -3px auto 13px;
    padding: 8px 15px 5px;
    color: #fff;
    background: #000;
    font-size: 108%;
    font-weight: bold;
}
.sub_right ul.adv li.popular_book_side .topics {
    margin: 0;
}
.sub_right ul.adv li.popular_book_side .topics li {
    margin: 0 0 15px;
}
.sub_right ul.adv li.popular_book_side .topics li.hide {
    display: none;
}
.sub_right ul.adv li.popular_book_side .topics li:last-child {
    border-bottom: none;
}
.sub_right ul.adv li.popular_book_side .topics dt {
    font-size: 108%;
    font-weight: bold;
    line-height: 1.5;
}
.sub_right ul.adv li.popular_book_side .topics dt:first-letter {
    float: left;
    margin-right: 3px;
    font-size: 277%;
    line-height: 1;
}
.sub_right ul.adv li.popular_book_side .topics dd.pic img {
    display: none;
}
.sub_right ul.adv li.popular_book_side .topics a > img {
    float: left;
    width: 90px;
    height: auto;
    margin-right: 10px;
}

.sub_right ul.adv li.popular_book_side .topics dd.txt {
    position: relative;
    height: 4em;
}
.sub_right ul.adv li.popular_book_side .topics dd.txt div.ellipsis {
    position: absolute;
    bottom: 0;
    right: 0;
    height: 1.2em;
    background: #f2f2f2;
}

/* 右サイド（ブログパーツ）
-------------------------------------------------------------*/

.sub_right ul.blog_parts {
    margin: 10px 15px 15px;
}

.sub_right ul.blog_parts > li {
    margin: 0 0 10px;
}

.sub_right ul.blog_parts > li:last-child {
    margin-bottom: 0;
}

.sub_right ul.blog_parts > li.banner_area {
    width: 80%;
    margin: 15px auto 15px;
}

.sub_right ul.blog_parts > li.banner_area_full {
    width: 100%;
    margin: 15px auto 15px;
    text-aligin: center;
}

.sub_right ul.blog_parts > li.banner_area img {
    display: block;
    width: 100%;
    height: auto;
}


/* ブログコラム */

.sub_right li.blog_column dt {
    margin: 0 0 15px;
    padding: 15px 0 0;
    background: url(../img/bg_title_t1.png) no-repeat center top;
    text-align: center;
    font-size: 1.6rem;
    font-weight: bold;
}
.sub_right li.blog_column dd.pic {
    margin: 0 0 10px;
}
.sub_right li.blog_column dd.pic img {
    width: 100%;
    height: auto;
}
.sub_right li.blog_column dd.txt {
    margin: 0 0 10px;
    line-height: 1.4;
}
.sub_right li.blog_column dd.txt a {
    text-decoration: underline;
}

.sub_right li.blog_column dd.link {
    margin: 0 0 10px;
    padding: 0 0 3px 11px;
    background: url(../img/bg_marker.png) no-repeat 0 5px;
}

/* ブログ記事リスト */

.sub_right li.blog_title_list > dl > dt {
    margin: 0 0 15px;
    padding: 15px 0 0;
    background: url(../img/bg_title_t1.png) no-repeat center top;
    text-align: center;
    font-size: 1.6rem;
    font-weight: bold;
}


.sub_right li.blog_title_list dl dd dl {
    border-bottom: solid 1px #ddd;
}
.sub_right li.blog_title_list dl dd dl dt {
    border-top: solid 1px #ddd;
}
.sub_right li.blog_title_list dl dd dl dt a {
    display: block;
    padding: 10px 0 10px 15px;
    background: url(../img/arrow_red_right.png) no-repeat 0 14px;
    font-weight: bold;
}
.sub_right li.blog_title_list dl dd dl dt.open a {
    background: url(../img/arrow_red_down.png) no-repeat 0 14px;
}
.sub_right li.blog_title_list dl dd dl dd {
    display: none;
    margin-bottom: 3px;
}
.sub_right li.blog_title_list dl dd dl dd li a {
    display: block;
    padding: 0 0 8px 15px;
}

.sub_right li.blog_title_list dl dd dl dd li a:before {
    content: ' - ';
}

/* 左サイド
-------------------------------------------------------------*/

.sub_left dl {
    margin: 0 15px;
}
.sub_left dl dt {
    margin: 0 0 15px;
    padding: 15px 0 0;
    background: url(../img/bg_title_t1.png) no-repeat center top;
    text-align: center;
    font-size: 1.6rem;
    font-weight: bold;
}
.sub_left dl dd {
    margin: 0 0 15px;
}
.sub_left dl dd li {
    margin: 0 0 10px;
    padding: 10px 0 0;
    border-top: solid 1px #ddd;
}

.sub_left dl dd.list2 ul {
    text-align: center;
}
.sub_left dl dd.list2 li {
    display: inline-block;
    width: 43%;
    padding: 0;
    margin: 0 1%;
    vertical-align: top;
    border: none;
}

.sub_left dl dd.list2 li a {
    display: block;
}

.sub_left dl dd.list2 li a div img {
    height: auto;
    vertical-align: top;
    width: 100%;
}

/* 共通パーツ
-------------------------------------------------------------*/

/* 人気記事ランキング */

dl.ranking {
    position: relative;
}
.ranking > dt {
    position: relative;
    float:left;
    width: 32%;
    padding: 5px 0 5px;
    text-align:center;
    background: #f2f2f2;
    font-weight: bold;
    cursor: pointer;
    border: solid 1px #f2f2f2;
    z-index: 1;
}
.ranking > dt.middle {
    margin: 0 2%;
}
.ranking > dt.active {
    background: #fff;
    border: solid 1px #ccc;
    border-bottom: none;
    color:#ff2700;
    position: relative;
    z-index: 3;
}
.ranking > dd {
    position:absolute;
    top: 0;
    left:0;
    width: 100%;
    z-index: 2;
}
.ranking ol {
    padding: 15px 0 0;
    border-top: solid 1px #ccc;
}
.ranking ol li {
    position: relative;
    min-height: 2.4em;
    margin: 0 0 9px;
    padding: 0 0 8px 36px;
    border-bottom: solid 1px #ccc;
}
.ranking ol li:first-child {
    font-weight: bold;
}
.ranking ol li:before {
    position: absolute;
    top: 0;
    left: 0;
    float: left;
    margin: 0 10px 0 0;
    padding: 3px 6px 3px;
    font-size: 16pt;
    font-weight: bold;
    color: #fff;
    background: #ff2700;
    text-align: center;
    line-height: 1;
}

.ranking .ol1 {
    counter-reset: sec4b_1;
}

.ranking .ol1 li:before {
    counter-increment: sec4b_1;
    content: counter(sec4b_1);
}

.ranking .ol2 {
    counter-reset: sec4b_2;
}

.ranking .ol2 li:before {
    counter-increment: sec4b_2;
    content: counter(sec4b_2);
}

.ranking .ol3 {
    counter-reset: sec4b_3;
}

.ranking .ol3 li:before {
    counter-increment: sec4b_3;
    content: counter(sec4b_3);
}

.ranking .adv {
    margin-bottom: 10px;
}
.ranking .adv .ttl {
    display: block;
    margin-bottom: 2px;
    font-size: 1.6rem;
    font-weight: bold;
}
.ranking .adv .url {
    display: block;
    margin-bottom: 5px;
    font-size: 1.4rem;
    font-style: italic;
}
.ranking .adv .txt {
    font-size: 1.1rem;
    color: #666;
}
.ranking .adv .mis {
    margin: 5px 0 0;
    text-align: right;
    font-size: 1rem;
    font-weight: normal;
    font-style: italic;
    color: #c6c7d9;
}
.ranking .adv .mis:before {
    content: ' - ';
}
.ranking .go_list_box {
    margin-bottom: 15px;
    text-align: center;
    background: #f2f2f2;
    border-top: solid 1px #ddd;
}
.ranking .go_list_box a {
    display: block;
    padding: 10px 0 12px;
}

/* ページネーション */

.page_nav {
    margin: 10px 0 30px;
    display: box;
    display: -webkit-box;
    display: -moz-box;
    box-pack: center;
    -webkit-box-pack: center;
    -moz-box-pack: center;
}
.page_nav li {
    box-flex: 1;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    text-align: center;
}

.page_nav li a,
.page_nav li span {
    display: block;
    margin: 0 5px;
    padding: 6px 0 3px;
    border: solid 1px #ff2700;
    border-radius: 4px;
    background: #fff;
    text-align: center;
}
.page_nav li.current a,
.page_nav li.current span {
    background: #ff2700;
    color: #fff;
}

.page_nav li.before,
.page_nav li.after,
.page_nav li.dot {
    display: none;
}


/* キービジュアル */

.keyvisual {
    margin: 0 15px 20px !important;
    padding: 0 !important;
    background: #f2f2f2 !important;
}
.keyvisual p.txt {
    margin: 10px 0 0;
    font-size: 1.5rem;
    line-height: 1.8;
}
.keyvisual p.txt a {
    text-decoration: underline;
}
.keyvisual p img {
    display: block;
    width: 100%;
    height: auto;
}

/* 記事リスト */

.category_list {
    padding-top: 20px !important;
}

.category_list dt {
    margin: 0;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.2;
    color: #161b6f;
}
.category_list dd.txt {
    display: none;
}

.category_list .headliner {
    position: relative;
    margin: 0 0 10px ;
    padding: 0 0 0 70px;
    min-height: 60px;
}
.category_list .headliner dd.pic {
    display: block;
    position: static;
    float: left;
    margin: 0 10px 0 0;
    width: 60px;
    height: 60px;
    background-color: #f2f2f2;
    border: 1px solid #e5e5e5;
    text-align: center;
}

.category_list .headliner dd.pic {
    position: absolute;
    top: 0;
    left: 0;
    width: 60px;
    height: 60px;
    background-color: #f2f2f2;
    border: 1px solid #e5e5e5;
    text-align: center;
}

.category_list .headliner dd.pic img {
    width: auto;
    height: 58px;
}
.category_list .headliner dd.hl_cat,
.category_list .headliner dd.hl_dat {
    display: none;
}

.category_list .list li {
    position: relative;
    margin: 0 0 10px ;
    padding: 0 0 0 70px;
    min-height: 60px;
}
.category_list .list li dd.pic {
    position: absolute;
    top: 0;
    left: 0;
    width: 60px;
    height: 60px;
    background-color: #f2f2f2;
    border: 1px solid #e5e5e5;
    text-align: center;
}

.category_list .list li dd.pic img {
    width: auto;
    height: 58px;
}

/* 今日のオススメ記事 */

.recommend li {
    margin-bottom: 15px;
}
.recommend li img {
    float: left;
    margin-right: 10px;
}
.recommend li span {
    display: block;
    overflow: hidden;
}
.recommend li sub {
    margin: 0 2px 0 0;
    font-size: 1rem;
    font-style: italic;
    color: #c6c7d9;
}
.recommend li sub:before {
    content: ' - ';
}

/* アイモバイル テキスト広告 */

.recommend div.imobile_adv {
    margin: -15px 0 15px;
}
.recommend div.imobile_adv_inner_1 {
    margin: 0 0 15px;
    max-height: 100px;
}
.recommend div div.imobile_adv_inner_1 {
    display: none;
}
.recommend div.imobile_adv_inner_2 {
    margin: 15px 0 0;
    max-height: 100px;
}

.todays_recommend div.imobile_adv_inner_1 {
    max-height: 100px;
    margin: 0 0 15px;
}
.todays_recommend div.imobile_adv_inner_2 {
    max-height: 100px;
    margin: 0 0 15px;
}

div.imobile_adv_inner_1 sub,
div.imobile_adv_inner_2 sub {
    margin: 0 2px 0 0;
    font-size: 1rem;
    font-style: italic;
    color: #c6c7d9;
}
div.imobile_adv_inner_1 sub:before,
div.imobile_adv_inner_2 sub:before {
    content: ' - ';
}


/* 広告（再整理） */

.ad_area {
    display: block;
    width: 100%;
    margin: 0 0 15px;
    padding: 0;
    position: relative;
    z-index:200;
}

.ad_area .banner_area {
    display: block;
    margin: 0 auto 15px;
    text-align: center;
}

.ad_area .banner_area:last-child {
    margin-bottom: 0;
}

#main article.contents .ad_area {
}

#main article.contents_n .ad_area {
}

#main aside.sub_left .ad_area {
}
