/*
html5doctor.com Reset Stylesheet v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
body {
    line-height: 1;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}
nav ul {
    list-style: none;
}
blockquote,
q {
    quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
    content: none;
}
a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
/* change colours to suit your needs */
ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}
/* change colours to suit your needs */
mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}
del {
    text-decoration: line-through;
}
abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
/* change border colour to suit your needs */
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}
input,
select {
    vertical-align: middle;
}

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

@font-face {
    font-family: "icon";
    src: url("/assets/fonts/icon.ttf?1satqo") format("truetype"),
        url("/assets/fonts/icon.woff?1satqo") format("woff"),
        url("/assets/fonts/icon.svg?1satqo#icon") format("svg");
    font-weight: normal;
    font-style: normal;
}

i {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: "icon" !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-feedly:before {
    content: "\e911";
}
.icon-line:before {
    content: "\e912";
}
.icon-pocket:before {
    content: "\e913";
}
.icon-hatebu:before {
    content: "\e914";
}
.icon-folder:before {
    content: "\e901";
}
.icon-facebook:before {
    content: "\e908";
}
.icon-twitter:before {
    content: "\e90c";
}
.icon-rss2:before {
    content: "\e910";
}
.icon-chevron-down:before {
    content: "\e90e";
}
.icon-chevron-thin-up:before {
    content: "\e900";
}
.icon-cross:before {
    content: "\e915";
}
.icon-heart:before {
    content: "\e902";
}
.icon-help-with-circle:before {
    content: "\e903";
}
.icon-home:before {
    content: "\e904";
}
.icon-info-with-circle:before {
    content: "\e905";
}
.icon-magnifying-glass:before {
    content: "\e90f";
}
.icon-medal:before {
    content: "\e906";
}
.icon-message:before {
    content: "\e90d";
}
.icon-price-tag:before {
    content: "\e907";
}
.icon-star:before {
    content: "\e909";
}
.icon-stopwatch:before {
    content: "\e90a";
}
.icon-typing:before {
    content: "\e90b";
}

/*
Theme Name: ryusoku
File Name: style.css
Version: 10.0.0
 */

/*
 * Utility
 */
.assistive-text {
    position: absolute !important;
    clip: rect(1px, 1px, 1px, 1px);
}

a {
    color: #07e;
    text-decoration: none;
    outline: none;
}

a:visited {
    color: #7759ae;
}

a:hover {
    color: #e32;
    text-decoration: none;
}
:focus,
:active {
    outline: 0;
}
#secondary a {
    color: #333;
}
#secondary a:hover {
    color: #07e;
}
#tertiary a {
    color: #333;
}
#tertiary a:hover {
    color: #07e;
}
img {
    vertical-align: bottom;
}

/*
 * pagetop
 */
#pagetop {
    display: none;
    position: fixed;
    left: auto;
    bottom: 15px;
    background-color: #eee;
    padding: 5px 2px 2px 5px;
    border-radius: 3px;
    margin-left: 1052px;
    width: 48px;
    height: 48px;
    cursor: pointer;
}
#pagetop i {
    font-size: 46px;
    color: #aaa;
}

/*
 * Sprite
 */
.sprite {
    display: inline-block;
    *zoom: 1;
    line-height: 32px;
    vertical-align: text-top;
    background-image: url("/assets/img/sprite.png");
    background-repeat: no-repeat;
    background-color: transparent;
    position: absolute;
    left: 0;
    top: 0;
}
.sprite-arrow-right {
    background-position: 0 0;
    width: 24px;
    height: 24px;
}
.sprite-hatebu-button {
    background-position: 0 -74px;
    width: 20px;
    height: 20px;
    position: relative;
    color: transparent;
}
.sprite-icon-facebook {
    background-position: 0 -144px;
    width: 32px;
    height: 32px;
}
.sprite-icon-google-plus {
    background-position: 0 -234px;
    width: 32px;
    height: 32px;
}
.sprite-icon-rss {
    background-position: -6px -327px;
    width: 32px;
    height: 32px;
}
.sprite-icon-twitter {
    background-position: -4px -418px;
    width: 32px;
    height: 32px;
}
.sprite-like-button {
    background-position: 0 -504px;
    width: 62px;
    height: 20px;
    position: relative;
    color: transparent;
}
.sprite-plus1-button {
    background-position: 0 -574px;
    width: 50px;
    height: 20px;
    position: relative;
    color: transparent;
}
.sprite-search {
    background-position: 0 -644px;
    width: 32px;
    height: 32px;
    right: 5px;
    left: inherit;
}
.sprite-square {
    background-position: 0 -726px;
    width: 5px;
    height: 5px;
}
.sprite-twitter-button {
    background-position: 0 -781px;
    width: 59px;
    height: 20px;
    position: relative;
    color: transparent;
}

/*
 * Social button
 */
#social-button {
    float: left;
    margin-right: 16px;
    margin-left: 0px;
}
#social-button li {
    float: left;
    position: relative;
    padding-left: 40px;
    margin-right: 16px;
}
#social-button a {
    line-height: 32px;
    color: #fff;
    display: block;
}
#social-button a:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
}
#social-button .icon {
    margin-top: 0px;
    top: 0;
    left: 0;
    position: absolute;
}
#social-button .last {
}
.icon-button-wrap {
    color: #fff;
    padding: 3px 8px 2px 5px;
    border-radius: 4px;
    display: inline-block;
    height: 18px;
    line-height: 11px;
}
.icon-button-wrap i {
    font-size: 16px;
    color: #fff;
    line-height: 100%;
}
.icon-button-wrap span {
    margin-left: 4px;
    font-size: 11px;
    line-height: 11px;
    letter-spacing: 0.5px;
    font-weight: bold;
    top: -2px;
    position: relative;
    color: #fff;
}
.icon-twitter-wrap {
    background: #1b95e0;
}
.icon-feedly-wrap {
    background: #6cc655;
}

/*
 * Search
 */
#search-form {
    margin-top: 15px;
    display: inline-block;
}
#search {
    position: relative;
    top: 7px;
    display: inline-block;
    width: 350px;
}
#search input[type="text"],
#search input[type="text"]:focus {
    display: inline-block;
    background-color: #fff;
    border: 1px solid #ccc;
    color: #333;
    font-size: 18px;
    padding: 0px 50px 0px 10px;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    outline: 0;
    height: 48px;
    width: 100%;
    -webkit-appearance: none;
    border-radius: 0;
}
#search input[type="text"]:focus {
    color: #111;
}
#search button[type="submit"] {
    position: absolute;
    top: 3px;
    right: -57px;
    font-size: 42px;
    background: transparent;
    border: 0;
    color: #999;
    padding: 0;
    margin: 0;
    height: 42px;
    width: 42px;
    cursor: pointer;
}
#search button i {
    position: relative;
    top: 0;
}

/*
 * Block Detail
 */
.bubble,
.sidewrapper,
#comment,
.article-option {
    padding: 3px;
    background: #eee;
    margin-bottom: 30px;
}
.bubble-inner,
.side,
#commentbody,
#comment-form-body,
#secondary .widget-popular {
    border: 1px solid #cacaca;
    background-color: #fff;
    position: relative;
}
#archive .bubble-inner {
}
#comment-form .button {
    color: white;
    -webkit-appearance: none;
    border-radius: 4px;
    background: rgb(66, 184, 221);
    padding: 0.5em 1em;
    text-decoration: none;
    border: 0;
    display: inline-block;
    zoom: 1;
    line-height: normal;
    white-space: nowrap;
    vertical-align: middle;
    text-align: center;
    cursor: pointer;
    user-select: none;
    font-family: sans-serif;
    font-weight: 100;
    font-size: 24px;
    letter-spacing: 0.01em;
}

/*
 * MessageBoard
 */
.message-board-outer {
    background-color: #eee;
}
.message-board-outer-2 {
    margin: 0 auto;
    width: 1220px;
    padding: 20px 0;
}
.message-board {
    padding-bottom: 5px;
}
.message-board i {
    font-size: 24px;
    color: #6593f7;
    margin-right: 10px;
    top: 4px;
    position: relative;
}

/*
 * menu
 */
#site-nav {
    background: #eaeaea;
}
#site-nav .container {
    background: #eaeaea;
    width: 1032px;
}

#site-nav li {
    display: inline-block;
}
#site-nav .col1 > ul {
    display: inline-block;
}
#site-nav .col1 > ul > li > a {
    padding: 20px 10px;
    color: #111;
    font-size: 16px;
    display: inline-block;
}
#site-nav .col1 > ul > li > a:hover {
    background-color: #fff;
}
.dropdown-button {
    color: #111;
    padding: 0px 20px;
    font-size: 16px;
    border: none;
    cursor: pointer;
    height: 56px;
    line-height: 56px;
    display: inline-block;
}
.dropdown {
    position: relative;
    display: inline-block;
}
.dropdown-content {
    display: none;
    position: absolute;
    background-color: #fff;
    min-width: 480px;
    padding: 0 20px;
    top: 54px;
    left: -97px;
    border: 1px solid #ccc;
    font-size: 16px;
    z-index: 1001;
}
.dropdown-content a {
    color: black;
    text-decoration: none;
}
.dropdown-content a:hover {
}
.dropdown:hover .dropdown-content {
    display: block;
}
.dropdown:hover .dropdown-button {
    background-color: #fff;
}
.dropdown i {
    top: 2px;
    position: relative;
    margin-left: 3px;
    line-height: 100%;
    font-size: 100%;
}
.dropdown .label {
    color: #999;
    padding: 15px 0;
    display: block;
}
.dropdown-content > ul {
    margin-bottom: 15px;
}
.dropdown-content ul a {
    line-height: 1.6;
}
.dropdown-content ul ul {
    margin-left: 20px;
}
.dropdown-content ul ul li {
    margin-right: 15px;
}
.dropdown-content a:hover {
    color: #07e;
}
.triangle {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 10px 10px 10px;
    border-color: transparent transparent #ccc transparent;
    left: 140px;
    position: absolute;
    top: -11px;
}
/*
 * Layout
 */
body {
    background: #fff;
}
.container {
    margin: 0 auto;
    width: 1032px;
    padding: 0 20px;
}

.col {
    float: left;
    margin-right: 15px;
    position: relative;
}

.last {
    margin-right: 0;
}
.heading {
    font-size: 24px;
    font-weight: bold;
    color: #111;
    background-color: #ffdd00;
    padding: 15px 20px;
}
#secondary .heading {
    font-size: 20px;
    padding: 13px;
}
#tertiary .heading {
    padding: 10px;
    font-size: 16px;
}

#masthead {
    background: #fff;
}
#masthead .container {
    width: 1032px;
}
#site-title {
    width: 407px;
}
#site-title a:hover {
    opacity: 0.7;
}
#masthead #subscription {
    font-size: 14px;
    color: #777;
    position: relative;
    margin: 15px 0 5px 0;
    width: 80%;
}
#masthead #subscription .cell {
    display: table-cell;
    vertical-align: middle;
}
#masthead .fb-like {
    height: 24px;
    margin-top: 8px;
    display: inline-block;
}

#related-links {
    width: 200px;
    margin-top: 23px;
}
#related-links a {
}

.breadcrumb {
    font-size: 13px;
    line-height: 32px;
    display: inline-block;
    *zoom: 1;
    padding: 0 16px;
    color: #fff;
    overflow: hidden;
    width: 595px;
    height: 31px;
}
.breadcrumb a {
    color: #fff;
}

#site-navigaion {
    background-color: #3a3a3a;
}

#site-navigaion .container {
    font-size: 13px;
    min-height: 32px;
    color: #363b3e;
}

#recommend-top {
    float: left;
}
#recommend-top .bubble {
    margin-bottom: 0;
    padding: 3px 3px 1px 3px;
}
#recommend-top .bubble-inner {
    width: 673px;
    height: 272px;
}

#menu-main li {
    float: left;
}

#main {
    margin-top: 15px;
}
#main .col {
    margin-right: 15px;
}
#main #tertiary.col {
    margin-right: 0;
}
#primary {
    display: inline-block;
    margin-left: 0;
    width: 688px;
}

#secondary {
    float: left;
    margin-left: 0;
    width: 300px;
}

#tertiary {
    width: 200px;
    margin-left: 0;
}
#footer {
    background: #eee;
    padding: 30px 20px;
    font-size: 13px;
    color: #333;
    text-align: center;
    border-radius: 5px;
    margin-bottom: 15px;
    margin-top: 15px;
}
#copyright {
    margin-top: 32px;
    font-size: 11px;
}
#copyright a {
    color: #aaa;
}

#footer li {
    list-style-type: none;
    margin-bottom: 12px;
}
#rrp {
    margin-bottom: 15px;
    display: inline-block;
}
.r-single #footer {
    border-radius: 0;
    margin-top: 30px;
    margin-bottom: 0;
    font-size: 16px;
    padding: 60px 30px;
    background: inherit;
    border-top: 1px solid #ccc;
}
.r-single #colophon {
    text-align: center;
    display: inline-block;
}
.r-single #footer li {
    float: left;
    margin-right: 15px;
    margin-bottom: 0;
}
.r-single #copyright {
    font-size: 14px;
    line-height: 1.6;
}

.ads-728-90,
.ads-300-250,
.ads-160-600,
.ads-336-280 {
    text-align: center;
}
.ads-728-90 {
    width: 728px;
    height: 90px;
}
.ads-300-250 {
    width: 300px;
    height: 250px;
}
.ads-160-600 {
    width: 160px;
    height: 600px;
}
.ads-336-280 {
    width: 336px;
    height: 280px;
}

/*
 * Archive page
 */
#archive.container {
    width: 1032px;
}
#archive #primary {
    width: 487px;
    margin-right: 30px;
}
#archive #secondary {
    width: 300px;
}
#archive #tertiary {
    width: 200px;
}
#archive .col.last {
    margin-right: 0;
}
#archive #content .ads-728-90 {
    margin: 16px 0;
}
#archive article {
    margin-bottom: 10px;
}
#archive article .col {
    width: 160px;
    padding-top: 30px;
}
#archive article .img-wrap:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
}
#archive article .img-wrap .no-img {
    width: 160px;
    height: 90px;
    background-color: #fff;
    background-image: url("/assets/img/no-img.png");
    background-repeat: no-repeat;
}
#archive article .col.last {
    width: 312px;
}
#archive article h1 {
    font-size: 20px;
    display: inline-block;
    line-height: 1.2;
}
#archive article h1 a:hover {
    text-decoration: none;
    color: #e32;
}
#archive article footer,
#article article header {
    font-size: 12px;
    color: #aaa;
    margin-top: 10px;
    line-height: 1.2;
    letter-spacing: 0.1px;
}
#article article header {
    font-size: 14px;
}
#archive article i,
#article article header i {
    margin-right: 3px;
    position: relative;
}
#archive article .icon-stopwatch #article article header .icon-stopwatch {
    top: 1px;
    font-size: 12px;
}
#article article header .icon-stopwatch {
    font-size: 14px;
}
#archive article time,
#article article header time {
    margin-right: 10px;
}
#archive article time:after,
#article article header time:after {
    content: "投稿";
    margin-left: 3px;
    font-size: 11px;
    color: #aaa;
}
#article article header time:after {
    font-size: 14px;
    margin-left: 5px;
}
#archive footer .icon-folder {
    font-size: 10px;
}
#archive footer .icon-stopwatch {
    font-size: 12px;
    top: 1px;
}
#archive article footer .category2:before {
    content: "/";
    font-size: 11px;
    color: #ccc;
    margin: 0 3px;
}
#article header a {
    text-decoration: none;
}
#article .res .id {
    border-radius: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}
#article .res .reply,
.comment .reply {
    font-size: 14px;
    display: inline-block;
    margin-left: 9px;
    cursor: pointer;
    color: #999;
}
#article .res .reply:hover,
.comment .reply:hover {
    color: #555;
}
.comment-wrap {
    position: absolute;
    top: 0;
    left: -21px;
    display: block;
    width: 60px;
    height: 60px;
}
.comment-wrap:hover {
    text-decoration: none;
}
.comment-wrap i {
    font-size: 64px;
    color: #6593f7;
    line-height: 1;
}
.comment-wrap:hover i {
    color: #e32;
}
.comment-wrap .comment-num {
    position: absolute;
    top: 17px;
    left: 0;
    color: #fff;
    text-decoration: none;
    width: 64px;
    font-size: 14px;
    display: block;
    text-align: center;
    line-height: 1;
}
.comment-wrap .comment-num:after {
    content: "コメ";
    font-size: 9px;
    display: block;
    color: #ddd;
    line-height: 1;
    margin-top: 1px;
}

/*
 * nav pager
 */
.nav-index {
    margin-top: 16px;
    margin-bottom: 20px;
}
.paging-number li,
.paging-next,
.paging-prev,
.paging-last {
    float: left;
}
.paging-next,
.paging-prev,
.paging-last,
.paging-number li {
    list-style-type: none;
    padding: 3px !important;
    background: #eee;
    margin-right: 4px !important;
    color: #ccc;
}
.paging-number .current {
    margin: 0 5px 0 0 !important;
}
.paging-number .current span {
    color: #333;
}
.paging-next a,
.paging-prev a,
.paging-last a,
.paging-number .current span,
.paging-number a {
    padding: 6px 8px !important;
    background: #fff;
    border: 1px solid #cacaca;
    display: inline-block !important;
    *zoom: 1 !important;
    font-weight: normal !important;
    font-size: 16px;
}
.paging-next a:hover,
.paging-prev a:hover,
.paging-last a:hover,
.paging-number a:hover {
    background: #f9f9f9;
    color: #ff6600;
    text-decoration: none !important;
}

/*
 * Article
 */
#article.container {
    width: 1032px;
}
#article #primary {
    width: 687px;
    margin-right: 45px;
}

#main #article #secondary {
    width: 300px;
    margin-right: 0;
}
#article #primary h1.heading {
    font-size: 36px;
    padding: 0;
    font-weight: bold;
    line-height: 1.2;
    background-color: inherit;
    margin-bottom: 15px;
    display: block;
}
#article header {
    position: relative;
    font-size: 16px;
}
#article header i,
#article header a {
    font-size: 16px;
}
#article .categories {
    margin-bottom: 15px;
    margin-top: 5px;
}
#article .category a {
    display: inline-block;
    background: #bababa;
    padding: 5px;
    color: #fff;
    font-size: 16px;
}
#article .category a:hover {
    background: #e32;
    color: #fff;
}
#article header time {
    font-size: 16px;
}
#article .entry-body {
    padding: 12px;
}
#article .entry-main {
    padding: 45px 0;
}
#article .res {
    margin-right: 30px;
    margin-left: 60px !important;
    margin-bottom: 20px;
    position: relative;
}
#article .res.selflinks {
    margin-left: 0 !important;
}
#article .fontsize-medium {
    font-size: 18px !important;
    line-height: 26px !important;
}
#article .fontsize-large {
    font-size: 24px !important;
    line-height: 32px !important;
}
#article .fontsize-x-large {
    font-size: 32px !important;
    line-height: 40px !important;
}
#article .fontsize-xx-large {
    font-size: 36px !important;
    line-height: 48px !important;
}
#article .res.nest1 {
    margin-left: 70px !important;
}
#article .res.nest2 {
    margin-left: 80px !important;
}
#article .res.nest3 {
    margin-left: 90px !important;
}
#article #ad_rs + .res.addres {
    margin-left: 0 !important;
}
#article #ad_rs + .res.addres img {
    max-height: 320px !important;
}
#article .num {
    color: #333;
    margin-right: 7px !important;
    font-size: 16px;
}
article main img {
    max-width: 100%;
}
footer .social-buttons {
    margin-bottom: 60px;
}
#article header .social-buttons {
    margin-top: 20px;
}
#article .social-buttons a {
    padding: 10px 71px 10px 10px;
    margin-right: 5px;
    display: table;
    float: left;
    border-radius: 3px;
}
#article .social-buttons a:hover {
    opacity: 0.5;
}
#article .social-buttons a i {
    font-size: 20px;
    line-height: 20px;
    display: table-cell;
    vertical-align: middle;
    padding-right: 15px;
}
#article .social-buttons a span {
    font-size: 18px;
    display: table-cell;
    vertical-align: middle;
    line-height: 18px;
}
.social-buttons a.twitter {
    background: #2cace2;
    color: #fff;
}
.social-buttons a.twitter i {
    position: relative;
}
.social-buttons a.facebook {
    background: #425daa;
    color: #fff;
}
.social-buttons a.facebook i {
    position: relative;
    top: 1px;
}
.social-buttons a.hatebu {
    background: #00a4de;
    color: #fff;
}
.social-buttons a.hatebu i {
    position: relative;
    top: 1px;
}
.social-buttons a.line {
    background: #00c300;
    color: #fff;
}
.social-buttons a.line i {
    position: relative;
    top: 1px;
}
.follow-buttons {
    margin-bottom: 60px;
}

.c-pk {
    position: absolute;
}
#article #primary .heading,
.related-articles h3 {
    background-color: inherit;
    padding: 0;
    display: inline-block;
    font-size: 24px;
    margin-bottom: 15px;
}
#article #primary .selflinks .heading {
    font-size: 24px !important;
    margin-bottom: 20px !important;
}
.related-articles {
    margin-bottom: 60px;
}
.related-article-title {
    font-size: 18px;
    line-height: 1.3;
    opacity: inherit;
    color: inherit;
    font-weight: bold;
}
.related-articles.with-image .related-article-image {
    padding-right: 10px !important;
}
.related-articles.with-image .related-article-image,
.related-articles.with-image .related-article-title {
    vertical-align: top !important;
}
.related-articles.with-image ul li {
    margin-bottom: 15px !important;
}

/*
 * plugin
 */
#profile {
    margin-bottom: 15px;
}
#profile .profile-header {
    text-align: center;
    background-color: #eee;
    position: relative;
    height: 60px;
    border-radius: 5px 5px 0 0;
}
#profile .profile-header img {
    border-radius: 50%;
    bottom: -22px;
    position: relative;
    border: 3px solid #fff;
}
#profile .profile-main {
    border: 1px solid #eee;
    border-top: 0;
    padding: 50px 15px 20px 15px;
    border-radius: 0 0 5px 5px;
}
#profile #profile-name {
    font-weight: bold;
    text-align: center;
    margin-bottom: 15px;
    font-size: 20px;
    color: #333;
}
#main #article #more .col,
#main #article-bottom .col {
    margin-right: 15px;
}
#main #article #more .col.last,
#main #article-bottom .col.last {
    margin-right: 0;
}
#more,
#article-bottom {
    margin-bottom: 45px;
}

/*
 * secondary widget
 */
#secondary ul {
    list-style-type: none;
}
.widget-area {
    font-size: 13px;
    line-height: 18px;
}

#secondary .widget-popular {
    border-top: 0;
}

#secondary .widget-popular a {
    position: relative;
    height: 43px;
    display: block;
}

#secondary .widget-popular img {
    position: absolute;
    height: auto;
    max-width: 45px;
    max-height: 40px;
    top: 8px;
    left: 50px;
    border: 3px solid #000;
}
#secondary .widget-popular .wp-title {
    padding: 0px 0px 0px 100px;
    display: inline-block;
    height: 40px;
    overflow: hidden;
}
#secondary .widget-popular .wp-rank {
    position: absolute;
    top: 8px;
    left: 12px;
    font-size: 35px;
    font-weight: bold;
    line-height: 46px;
}

/*
 * popularArticlesWithImage
 */
#main div.popularArticlesWithImage.A ul {
    counter-reset: li;
    list-style: decimal !important;
}
div.popularArticlesWithImage.A ul li {
    margin-bottom: 30px !important;
}
#main li.popularArticleWithImage:before {
    content: counter(li) "位";
    counter-increment: li;
    position: absolute;
    top: 0;
    left: 0;
    background: #f00;
    color: #fff;
    padding: 5px 10px;
    display: inline-block;
}
#main #tertiary li.popularArticleWithImage:before {
    background: #ff0;
    color: #333;
}
.popularArticleWithImage a {
    height: inherit !important;
    border-top: 0 !important;
}
div.popularArticlesWithImage.A ul li a {
    border-width: 0 !important;
}
.popularArticleWithImage a:hover img {
}
div.popularArticlesWithImage.A div.title {
    position: relative !important;
    bottom: inherit !important;
    left: inherit !important;
    height: inherit !important;
    font-size: 18px !important;
    line-height: 1.3 !important;
    opacity: inherit !important;
    overflow: inherit !important;
    color: inherit !important;
}
#secondary div.popularArticlesWithImage.A div.title {
    width: 290px !important;
}

#tertiary div.popularArticlesWithImage.A div.title {
    font-size: 16px !important;
    width: 190px !important;
}
#tertiary div.popularArticlesWithImage.A ul li {
    margin-bottom: 20px !important;
}

/*
 * fourth widget
 */
#fourth .sidewrapper {
    width: 184px;
    margin-right: 16px;
    float: left;
}
#fourth .sidewrapper {
}

/*
 * widget-popular
 */
#tertiary .widget-popular li {
    list-style-type: none;
}
#tertiary .widget-popular li a {
    display: block;
    position: relative;
    background: #000;
    margin-bottom: 8px;
    text-align: center;
    overflow: hidden;
    padding: 3px;
}
#tertiary .widget-popular li a:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
}
#tertiary .widget-popular li img {
}
#tertiary .widget-popular li .wp-count {
    position: absolute;
    background: #000;
    color: #fff;
    font-weight: bold;
    display: inline-block;
    *zoom: 1;
    padding: 3px;
    right: 0;
    top: 0;
}
#tertiary .widget-popular li .wp-title {
    position: absolute;
    display: block;
    left: 3px;
    bottom: 3px;
    background: #000;
    color: #fff;
    font-size: 11px;
    width: 148px;
    height: 26px;
    overflow: hidden;
    text-align: left;
    padding: 3px;
    line-height: 14px;
}

/*
 * hot
 */
#hot .container {
    width: 1032px;
    margin-bottom: 15px;
    margin-top: 15px;
}
#hot ul {
    counter-reset: li;
    list-style: decimal !important;
}
#hot li.popularArticleWithImage:after {
    content: counter(li) "位";
    counter-increment: li;
    border-radius: 50%;
    background: #ff0;
    width: 50px;
    height: 50px;
    display: inline-block;
    line-height: 50px;
    font-weight: bold;
    position: absolute;
    top: -5px;
    left: -13px;
    text-align: center;
    color: #333;
}
#hot .popularArticlesWithImage {
    width: 100% !important;
}
#hot .popularArticleWithImage {
    float: left;
    margin-right: 24px;
    width: 152px;
    background-color: #ccc;
}
#hot .popularArticlesWithImage ul li:last-child {
    margin-right: 0 !important;
}
#hot div.popularArticlesWithImage.A ul li {
    margin-bottom: 0 !important;
}
#hot li.popularArticleWithImage {
    margin-bottom: 0 !important;
}
#hot div.popularArticlesWithImage.A div.title {
    font-size: 13px !important;
}
/*
 * Widget amazon
 */
.widget-amazon {
    display: block;
    text-align: center;
}
.widget-amazon a {
    position: relative;
    display: block;
    border: 3px solid #000;
    margin-bottom: 8px;
    overflow: hidden;
    font-size: 11px;
    background: #000;
}
.widget-amazon a:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
}
.widget-amazon img {
    max-width: 154px;
    height: auto;
}
.widget-amazon .wa-title {
    position: absolute;
    bottom: 0;
    left: 0;
    background: #000;
    display: block;
    padding: 2px 3px;
    opacity: 0.8;
    filter: alpha(opacity=80);
    color: #fff;
    font-size: 11px;
    line-height: 11px;
    text-align: left;
    overflow: hidden;
    max-height: 32px;
}

/*
 * Sidebar widget
 */
.sidetitle,
.widget-wrap .wp-topic {
    background: #f9f9f9;
    padding: 0 12px;
    font-size: 13px;
    line-height: 39px;
    color: #666;
    position: relative;
    border: 1px solid #cacaca;
    border-bottom: 0;
}
.side {
    border-top: 0;
}
.sidebody a,
#secondary .widget-wrap a {
    padding: 8px 12px;
    border-top: 1px solid #cacaca;
    display: block;
}
.sidebody a:hover,
#secondary .widget-wrap a:hover {
    background: #f6f6f6;
    text-decoration: none;
}

/*
 * primary footer widget
 */
.primary-widget {
    margin-top: 16px;
}
#article .primary-widget .bubble {
    margin-top: 0;
}
.primary-widget h3,
.primary-widget .widget-topic,
.primary-widget #commenthead {
    font-weight: normal;
    font-size: 24px;
    margin: 0 30px;
    line-height: 20px;
    border-bottom: 3px solid #fa0;
    display: inline-block;
    *zoom: 1;
    padding: 0 0 12px 0;
    top: 3px;
    position: relative;
    color: #333;
    font-weight: bold;
}
#recommend-bottom .bubble {
    margin-bottom: 0;
    padding: 3px 3px 3px 3px;
}
#recommend-bottom .bubble-inner {
    width: 664px;
    height: 242px;
    overflow: hidden;
}

#recommend-entry-inner-iframe {
    width: 660px;
    height: 80px;
    margin: 20px 0;
}
.iframe-wrap {
    margin: 0;
    padding: 0;
    overflow: hidden;
}
#recommend-top {
    width: 681px;
    height: 280px;
}
#recommend-entry-iframe {
    width: 672px;
    height: 171px;
}
#recommend-bottom {
    width: 672px;
    height: 258px;
}
#recommend-top .bubble {
    margin: 0 0 0 0;
}
#recommend-entry-iframe .bubble-inner {
    height: 160px;
}
#recommend-entry-iframe iframe {
    margin: 0 0 0 -677px;
    width: 1341px;
    height: 160px;
}
#recommend-bottom iframe {
    margin: 0 0 0 -1397px;
    width: 3200px;
    height: 242px;
}
#recommend-entry-inner-iframe iframe {
    width: 2260px;
    height: 80px;
    margin-left: -1600px;
}
/*
 * Comment
 */
.comment {
    padding: 16px 30px 28px 30px;
    border-bottom: 1px solid #ccc;
}
.comment:nth-child(odd) {
    background: #f9f9f9;
}
.comment:last-child {
    border-bottom: 0;
}
.commentttl {
    margin-bottom: 16px;
    font-size: 12px;
    color: #777;
}
.commenttext {
    font-family: "ＭＳ Ｐゴシック", "MS PGothic", "Mona",
        "mona-gothic-jisx0208.1990-0", sans-serif !important;
    line-height: normal !important;
    font-weight: normal !important;
    font-size: 16px;
    font-variant: normal !important;
    color: #333;
}
.comment-popup,
.res-popup {
    position: relative;
    cursor: pointer;
    text-decoration: underline;
}
#popup {
    cursor: default;
    position: absolute;
    top: 5px;
    left: 4px;
    background: #fff;
    padding: 5px 10px 10px 10px;
    border: 2px solid #ccc;
    width: 500px;
}
.comment-popup .commentttl {
    margin-bottom: 5px;
}
.comment-num {
    font-size: 16px;
    margin-right: 5px;
    color: #555;
}
#comment-form-body {
    padding: 30px;
}
#comment-form-body li {
    margin-left: 20px;
    line-height: 20px;
    font-size: 13px;
    color: #666;
    margin-bottom: 10px;
}

#formbody {
    margin-top: 30px;
}
#text {
    width: 99%;
    height: 150px;
    font-size: 16px;
    color: #333;
    margin-bottom: 15px;
    border: 2px solid #ccc;
    outline: 0;
    border-radius: 0;
    -webkit-appearance: none;
}
#comment-submit:hover {
    opacity: 0.9;
}
#commentbody li {
    list-style-type: none;
}
.primary-widget #commenthead {
    line-height: 160%;
}
#comment-heading {
    margin-bottom: 10px;
    display: block;
    color: #777;
    font-weight: bold;
}

/*
 * Article pager
 */
#footer-page-nav {
    margin-bottom: 30px;
}
#footer-page-nav div {
    margin-bottom: 30px;
}
#footer-page-nav a {
    font-size: 18px;
    line-height: 1.3;
    opacity: inherit;
    font-weight: bold;
}
#footer-page-nav a:hover {
    color: #e32;
}
.gotohome {
    text-align: center;
    border-top: 1px solid #ccc;
    padding-top: 30px;
    margin-top: 30px;
}

/*
 * page
 */
.single {
    margin: 20px 30px 30px 0;
    color: #333333;
}
.single p {
    margin-bottom: 20px;
}
.single table {
    max-width: 100%;
    background-color: transparent;
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
    margin-bottom: 20px;
    font-size: 13px;
    line-height: 20px;
}
.single table caption {
    border-bottom: 3px solid #ccc;
    padding-bottom: 6px;
    font-weight: bold;
    text-align: left;
    padding-left: 6px;
    font-size: 14px;
    margin-top: 60px;
}
.single table th,
.single table td {
    padding: 8px;
    line-height: 20px;
    text-align: left;
    vertical-align: top;
    border-top: 1px solid #dddddd;
}

.single table th {
    font-weight: bold;
}

.single table thead th {
    vertical-align: bottom;
}

.single table caption + thead tr:first-child th,
.single table caption + thead tr:first-child td,
.single table colgroup + thead tr:first-child th,
.single table colgroup + thead tr:first-child td,
.single table thead:first-child tr:first-child th,
.single table thead:first-child tr:first-child td {
    border-top: 0;
}

.single h4 {
    margin: 60px 0 20px 0;
    border-bottom: 2px solid #ddd;
    padding-bottom: 12px;
}
.single h5 {
    font-size: 80%;
    margin: 30px 0 10px 0;
}
.single ul li {
    margin: 10px 0 0 20px;
}

/*
 * gift
 */
#gift img {
    max-width: 300px;
    height: auto;
}

/*
 * links
 */
#links {
    margin-top: 50px;
}
#links .col {
    width: 396px;
}
#links h5 {
    color: #eee;
    border-bottom: 2px solid #999;
    line-height: 25px;
    font-size: 14px;
    display: inline-block;
    padding: 0 7px;
    margin-bottom: 13px;
}
#links li {
    float: left;
    margin-right: 20px;
    list-style-type: none;
}
#links a {
    color: #fff;
    font-size: 13px;
    line-height: 26px;
}

/*
* article embed bottom iframe
*/
.embed-iframe {
    display: none !important;
    position: relative;
    left: inherit !important;
}
#embed-bottom-iframe {
    margin: 0 0 20px 0 !important;
}
#embed-bottom-iframe2 {
    margin: 0 0 20px 15px !important;
}

/* Twitter follow button*/
.twitter-follow-button {
    font-size: 13px;
    display: inline-block;
    top: 3px;
    position: relative !important;
}

/* Archive page follow buttons */
#follow_buttons .heading {
    background-color: #fff;
    padding-left: 0;
    padding-bottom: 0;
    font-size: 18px;
    font-weight: normal;
}
#follow_buttons #brand {
    font-weight: bold;
    color: #f33;
    margin-right: 3px;
}
#follow_buttons ul {
    margin-bottom: 15px;
    margin-top: 10px;
}
#follow_buttons li {
    list-style-type: none;
    margin-bottom: 5px;
}
#follow_buttons a {
    display: block;
    position: relative;
    color: #fff;
    padding: 10px 15px;
    border-radius: 3px;
    font-size: 14px;
}
#follow_buttons a:hover {
    opacity: 0.7;
    color: #fff;
}
#follow_buttons a i {
    position: relative;
    top: 2px;
    font-size: 18px;
    display: inline-block;
    color: #fff;
    margin-right: 15px;
}
.icon-facebook-wrap {
    background: #425daa;
}
.icon-twitter-wrap {
    background: #2cace2;
}
.icon-feedly-wrap {
    background: #6cc655;
}
.icon-rss2-wrap {
    background: #f56423;
}

#tertiary #follow_buttons .heading {
    font-size: 16px;
}
#tertiary #follow_buttons a {
    font-size: 13px;
    padding: 10px 10px;
}
#tertiary #follow_buttons a i {
    margin-right: 5px;
    font-size: 14px;
}

#sticky {
    position: sticky;
    top: 15px;
}
.fixedsticky {
    position: -webkit-sticky;
    position: -moz-sticky;
    position: -ms-sticky;
    position: -o-sticky;
    position: sticky;
}
/* When position: sticky is supported but native behavior is ignored */
.fixedsticky-withoutfixedfixed .fixedsticky-off,
.fixed-supported .fixedsticky-off {
    position: static;
}
.fixedsticky-withoutfixedfixed .fixedsticky-on,
.fixed-supported .fixedsticky-on {
    position: fixed;
}
.fixedsticky-dummy {
    display: none;
}
.fixedsticky-on + .fixedsticky-dummy {
    display: block;
}

.ads ins {
    background-color: transparent;
}
.article-footer-amazon {
    width: 687px;
    display: flex;
    flex-direction: row-row;
    flex-wrap: nowrap;
    justify-content: space-around;
    align-content: flex-start;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo,
        sans-serif;
}
.article-footer-amazon .amazon-items-wrap:nth-child(n + 2) {
    border-left: 1px solid #ccc;
}
.article-footer-amazon > div {
    display: block;
    width: 33.3%;
}
.article-footer-amazon .amazon-items-wrap > div,
.article-footer-amazon .amazon-items-wrap > li {
    padding: 24px;
}
.article-footer-amazon .img-wrap {
    text-align: center;
    clear: both;
    padding-top: 12px;
}
.article-footer-amazon .img-wrap img {
    max-width: 60%;
    height: auto;
}
.article-footer-amazon .DisplayAmount {
    box-sizing: border-box;
    font-size: 26px;
    line-height: normal;
}
.article-footer-amazon .DisplayAmount:before {
    content: "￥";
    top: -0.75em;
    right: 0.1em;
    font-size: 13px;
    position: relative;
}
.article-footer-amazon .DisplayAmount:after {
    content: "税込";
    white-space: nowrap;
    vertical-align: middle;
    font-size: 12px;
    line-height: 16px;
    position: relative;
    top: -0.1em;
    left: 0.5em;
}
.article-footer-amazon .SavingsPercentage {
    color: #cc0c39;
    font-weight: 300;
    vertical-align: middle;
    font-size: 22px;
    line-height: 30px;
    margin-right: 3px;
}
.article-footer-amazon .SavingsPercentage:before {
    content: "-";
}
.article-footer-amazon .SavingsPercentage:after {
    content: "%";
}
.article-footer-amazon .SavingBasisDisplayAmount,
.amazon-updated {
    display: block;
    vertical-align: middle;
    color: #565959;
    font-size: 12px;
    line-height: 16px;
    box-sizing: border-box;
}
.article-footer-amazon .SavingBasisDisplayAmount:before {
    content: "参考価格:";
}
.article-footer-amazon a,
.article-footer-amazon a:link,
.article-footer-amazon a:visited {
    text-decoration: none;
    color: #007185;
}
.article-footer-amazon a:hover {
    text-decoration: underline;
    cursor: pointer;
    color: #c7511f;
}
.article-footer-amazon a:active {
    text-decoration: underline;
    color: #c7511f;
}

.article-footer-amazon a {
    text-decoration: underline;
    cursor: pointer;
    color: #c7511f;
    font-size: 14px;
    line-height: 20px;
}
.article-footer-amazon .displaytitle-wrap {
    margin-top: 12px;
}
.article-footer-amazon .amount-wrap {
    margin-top: 12px;
}
.article-footer-amazon .amazon-items {
    list-style: none;
    margin: 0;
    padding: 0 12px;
    text-align: left;
}
.article-footer-amazon .rank-wrap {
    position: relative;
    font-size: 14px;
    line-height: 25px;
}
.article-footer-amazon .rank-wrap div:first-child {
    background-color: #c45500;
    color: #fff;
    padding: 0 8px;
    height: 25px;
    float: left;
}
.article-footer-amazon .rank-wrap div:nth-child(2) {
    border-right: 10px solid transparent;
    border-top: 25px solid;
    height: 0;
    width: 0;
    color: #c45500;
    margin-bottom: 0;
    float: left;
}
.article-footer-amazon .amazon-item {
    margin-bottom: 12px;
    border-top: 1px solid #ccc;
    padding-top: 12px;
}
.amazon-updated {
    margin: 10px;
    text-align: right;
}
.amazon-section {
    font-weight: 400;
    font-size: 20px;
    line-height: 30px;
}