/*@import "https://fonts.googleapis.com/css?family=Roboto:400,500,700";*/
@import "https://fonts.googleapis.com/css?family=Noto+Sans";
/*@import "http://fonts.googleapis.com/earlyaccess/notosansjp.css";*/

html {
}
body {
    margin: 0;
    font-size: 14px;
    font-family: 'Noto Sans', sans-serif, 'Roboto', sans-serif;
    line-height: 1.7;
    color: #333333;
    
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
    display: block;
}
audio, canvas, progress, video {
    display: inline-block;
    vertical-align: baseline;
}
audio:not([controls]) {
    display: none;
    height: 0;
}
[hidden], template {
    display: none;
}
a {
    background-color: transparent;
}
a:active, a:hover {
    outline: 0 none;
}
abbr[title] {
    border-bottom: 1px dotted;
}
b, strong {
    font-weight: bold;
}
dfn {
    font-style: italic;
}
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}
mark {
    background: #ff0 none repeat scroll 0 0;
    color: #000;
}
small {
    font-size: 80%;
}
sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}
sup {
    top: -0.5em;
}
sub {
    bottom: -0.25em;
}
img {
    border: 0 none;
}
svg:not(:root) {
    overflow: hidden;
}
figure {
    margin: 1em 40px;
}
hr {
    box-sizing: content-box;
    height: 0;
}
pre {
    overflow: auto;
}
code, kbd, pre, samp {
    font-size: 1em;
}
button, input, optgroup, select, textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}
button {
    overflow: visible;
}
button, select {
    text-transform: none;
}
button, html input[type="button"], input[type="reset"], input[type="submit"] {
    cursor: pointer;
}
button[disabled], html input[disabled] {
    cursor: default;
}
button::-moz-focus-inner, input::-moz-focus-inner {
    border: 0 none;
    padding: 0;
}
input {
    line-height: normal;
}
input[type="checkbox"], input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}
input[type="search"] {
    box-sizing: content-box;
}
fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}
legend {
    border: 0 none;
    padding: 0;
}
textarea {
    overflow: auto;
}
optgroup {
    font-weight: bold;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
td, th {
    padding: 0;
}
body {
    font-size: 14px;
    font-family: 'Noto Sans', sans-serif, 'Roboto', sans-serif;
    line-height: 1.7;
    color: #333333;
}
h1, h2, h3, h4, h5, h6 {
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.4;
}
h1 {
    font-size: 2em;
    margin-bottom: 1em;
    margin-top: 2em;
}
h2 {
    font-size: 1.625em;
    margin-bottom: 1em;
    margin-top: 2em;
}
h3 {
    font-size: 1.375em;
    margin-bottom: 1em;
    margin-top: 1.5em;
}
h4 {
    font-size: 1.25em;
    margin-bottom: 1em;
    margin-top: 1em;
}
h5 {
    font-size: 1em;
    margin-bottom: 0.5em;
    margin-top: 1em;
}
h6 {
    font-size: 0.875em;
    margin-bottom: 0.5em;
    margin-top: 1em;
}
a {
    color: inherit;
    text-decoration: none;
    transition: color 0.15s ease-in-out 0s, background-color 0.15s ease-in-out 0s, opacity 0.15s ease-in-out 0s;
}
.entry-content a {
    text-decoration: underline;
}
.entry-content a.keyword {
    border-bottom: 1px dotted;
    text-decoration: none;
}
a:hover {
    color: #999;
}
p {
    margin: 0 0 1.6em;
}
img {
    height: auto;
    max-width: 100%;
    vertical-align: middle;
}
.entry-content .hatena-image-left {
    margin: 0 1.6em 1.6em 0;
}
.entry-content .hatena-image-right {
    margin: 0 0 1.6em 1.6em;
}
ul, ol {
    margin: 0 0 1.6em 2em;
    padding: 0;
}
li > ul, li > ol {
    margin-bottom: 0;
    margin-left: 1.5em;
}
dl {
    margin: 0;
}
dt {
    font-weight: 700;
}
dd {
    margin: 0 1.6em 1.5em;
}
table {
    border-top: 1px solid #e4e4e4;
    font-size: 93.8%;
    line-height: 1.5;
    margin: 0 0 1.7em;
    width: 100%;
}
th, td {
    border-bottom: 1px solid #e4e4e4;
    padding: 0.8em;
}
th {
    font-weight: 700;
}
pre {
    background-color: #333;
    color: #eee;
    font-size: 93.8%;
    line-height: 1.4;
    margin: 0 0 1.7em;
    max-width: 100%;
    padding: 1.7em;
    word-wrap: normal;
}
blockquote {
    background-color: #f8f8f8;
    font-style: italic;
    margin: 0 0 1.6em;
    padding: 1.6em 1.6em 1.6em 5.2em;
    position: relative;
}
blockquote *:last-child {
    margin-bottom: 0;
}
blockquote::before {
    color: #ccc;
    content: "“";
    font: 80px/1 Georgia,serif;
    left: 28px;
    position: absolute;
    top: 22px;
}
hr {
    background-color: #e4e4e4;
    border: 0 none;
    height: 1px;
    margin: 0 0 1.6em;
}
.hatena-asin-detail, .itunes-embed {
    border: 1px solid #e4e4e4;
    font-size: 93.8%;
    line-height: 1.5;
    margin: 0 0 1.7em;
    padding: 1.7em;
}
.hatena-asin-detail-info, .itunes-embed-info {
    overflow: hidden;
}
.hatena-asin-detail-title, .itunes-embed-title {
    margin-bottom: 8px !important;
}
.hatena-asin-detail-image, .itunes-embed-image {
    margin-right: 1.7em !important;
}
@media screen and (max-width: 479px) {
.hatena-asin-detail-image, .itunes-embed-image {
    width: 64px;
}
}
#container::before, #container::after, #container-inner::before, #container-inner::after, #blog-title::before, #blog-title::after, #blog-title-inner::before, #blog-title-inner::after, #content::before, #content::after, #content-inner::before, #content-inner::after, #main::before, #main::after, #main-inner::before, #main-inner::after, #footer::before, #footer::after, #footer-inner::before, #footer-inner::after, .entry::before, .entry::after, .archive-entry::before, .archive-entry::after, .entry-title::before, .entry-title::after, .entry-content::before, .entry-content::after, .date::before, .date::after, .categories::before, .categories::after, .pager::before, .pager::after, .hatena-urllist::before, .hatena-urllist::after {
    content: "";
    display: table;
}
#container::after, #container-inner::after, #blog-title::after, #blog-title-inner::after, #content::after, #content-inner::after, #main::after, #main-inner::after, #footer::after, #footer-inner::after, .entry::after, .archive-entry::after, .entry-title::after, .entry-content::after, .date::after, .categories::after, .pager::after, .hatena-urllist::after {
    clear: both;
}
#globalheader-container {
    background-color: #333;
    color: #fff;
}
#container {
    margin: 0 auto;
}
#blog-title {
    border-bottom: 1px solid #e4e4e4;
    padding: 48px 0;
}
#content {
    background-color: #fff;
    margin: 0 auto;
    padding: 48px 0 0;
}
#footer {
    background-color: #333;
    color: #fff;
    padding: 24px 0;
    text-align: center;
}
#blog-title-inner, #content-inner, #footer-inner {
    margin: 0 auto;
    max-width: 656px;
    padding: 0 20px;
}
#wrapper {
    border-bottom: 1px solid #e4e4e4;
    margin-bottom: 56px;
}
@media screen and (min-width: 480px) {
#blog-title-inner, #content-inner, #footer-inner {
    padding-left: 32px;
    padding-right: 32px;
}
}
@media screen and (min-width: 640px) {
#blog-title-inner, #content-inner, #footer-inner {
    padding-left: 48px;
    padding-right: 48px;
}
}
@media screen and (min-width: 960px) {
#globalheader-container {
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
}
#container {
    margin-top: 37px;
}
#blog-title-inner, #content-inner, #footer-inner {
    max-width: 1140px;
}
#wrapper {
    border-bottom: medium none;
    box-sizing: border-box;
    float: left;
    margin-right: -348px;
    padding-right: 348px;
    width: 100%;
}
#main {
    border-right: 1px solid #e4e4e4;
    box-sizing: border-box;
    padding-right: 48px;
}
#box2 {
    float: right;
    width: 300px;
}
}
.globalheader-off #container {
    margin-top: 0;
}
#title {
    display: inline-block;
    font-size: 32px;
    line-height: 1.2;
    margin: 0;
    padding: 0;
}
#blog-description {
    color: #666666;
    font-size: 93.8%;
    font-weight: 300;
    margin: 0;
    padding: 0;
}
.entry {
    border-bottom: 1px solid #e4e4e4;
    margin-bottom: 48px;
}
.entry-header {
    position: relative;
}
.entry-content {
    margin-bottom: 24px;
}
.entry-title {
    font-size: 1.625em;
    line-height: 1.2;
    margin-bottom: 32px;
    margin-top: 0;
}
.date {
    font-size: 87.5%;
    margin-bottom: 8px;
}
.date a {
}
.date a::before {
    content: "";
    display: inline-block;
    font: 16px/1 blogicon;
    margin-right: 6px;
    vertical-align: middle;
}
.categories {
    margin-bottom: 28px;
    margin-top: -16px;
}
.categories a {
    border: 1px solid #e4e4e4;
    border-radius: 2px;
    float: left;
    font-size: 87.5%;
    margin: 0 4px 4px 0;
    padding: 6px 10px;
}
.categories a:hover {
    background-color: #f8f8f8;
    color: #555;
}
.entry-header-menu {
    background-color: #fff;
    border-radius: 50%;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
    height: 48px;
    line-height: 1;
    position: absolute;
    right: -72px;
    text-align: center;
    top: 0;
    width: 48px;
}
.entry-header-menu a {
    font-size: 0;
}
.entry-header-menu a::before {
    content: "";
    font: 16px/48px blogicon;
    margin-left: 2px;
}
@media screen and (max-width: 959px) {
.entry-header-menu {
    display: none !important;
}
}
.entry-content .entry-see-more {
    background-color: #333;
    border-radius: 3px;
    color: #eee;
    display: inline-block;
    font-size: 87.5%;
    margin: 8px 0 24px;
    padding: 10px 16px;
    text-align: center;
    text-decoration: none;
}
.entry-content .entry-see-more:hover {
    background-color: #555;
    color: #eee;
}
.entry-footer {
    margin-bottom: 48px;
}
.social-buttons {
    margin-bottom: 16px;
}
.google-afc-image, .google-afc-text {
    margin-bottom: 32px;
}
.comment-box {
    font-size: 93.8%;
}
.comment-box ul {
    list-style: outside none none;
    margin: 1.7em 0;
    padding: 0;
}
.comment-user-name {
    margin-bottom: 8px;
    padding-left: 64px;
    position: relative;
}
.comment-user-name .hatena-id-icon {
    height: 40px;
    left: 0;
    position: absolute;
    top: 4px;
    width: 40px;
}
.comment-box .comment-content, .comment-box .comment-metadata {
    margin-left: 64px;
}
.comment-box .comment-content a {
    text-decoration: underline;
}
.leave-comment-title {
    border: 1px solid #e4e4e4;
    border-radius: 2px;
    display: inline-block;
    font-size: 87.5%;
    padding: 10px 16px;
}
.leave-comment-title:hover {
    background-color: #f8f8f8;
    color: #555;
    text-decoration: none;
}
.pager {
    margin-bottom: 48px;
}
.pager-prev {
    float: left;
    text-align: left;
    width: 48%;
}
.pager-next {
    float: right;
    text-align: right;
    width: 48%;
}
.pager-prev a, .pager-next a {
    font-size: 93.8%;
    text-decoration: underline;
}
.page-archive .archive-entry {
    border-bottom: 1px solid #e4e4e4;
    margin-bottom: 48px;
    padding-bottom: 48px;
}
.page-archive .entry-thumb {
    margin: 0 20px 20px 0;
}
#top-box {
    background-color: #f8f8f8;
    border-bottom: 1px solid #e4e4e4;
}
.breadcrumb {
    font-size: 87.5%;
    margin: 0 auto;
    max-width: 656px;
    padding: 24px 20px;
}
@media screen and (min-width: 480px) {
.breadcrumb {
    padding-left: 32px;
    padding-right: 32px;
}
}
@media screen and (min-width: 640px) {
.breadcrumb {
    padding-left: 48px;
    padding-right: 48px;
}
}
@media screen and (min-width: 960px) {
.breadcrumb {
    max-width: 1053px;
}
}
.hatena-module {
    font-size: 93.8%;
    line-height: 1.6;
    margin-bottom: 48px;
}
.hatena-module-title {
    letter-spacing: -0.01em;
    margin-bottom: 16px;
    margin-top: 0;
}
.hatena-module ul {
    margin-bottom: 0;
}
.hatena-urllist {
    list-style: outside none none;
    margin-left: 0;
    padding-left: 0;
}
.hatena-urllist li:first-child {
    border-top: medium none;
}
.hatena-urllist li {
    border-top: 1px solid #e4e4e4;
    line-height: 1.4;
    padding-bottom: 8px;
    padding-top: 8px;
}
.urllist-with-thumbnails li {
    padding-bottom: 16px;
    padding-top: 16px;
}
.urllist-with-thumbnails li .urllist-image {
    margin: 0 16px 0 0;
}
.urllist-title-link {
    font-size: inherit;
    overflow: hidden;
}
.urllist-date-link {
    font-size: 86.7%;
    margin-bottom: 2px;
    overflow: hidden;
}
.urllist-entry-body {
    color: #777;
    font-size: 86.7%;
    margin-top: 2px;
    overflow: hidden;
}
.urllist-categories {
    margin-top: 2px;
    overflow: hidden;
}
.urllist-category-link {
    font-size: 86.7%;
    margin-right: 4px;
}
.profile-icon {
    border-radius: 4px;
    float: left;
    margin: 0 16px 16px 0;
    overflow: hidden;
}
.profile-description {
    font-size: 86.7%;
    margin-top: 6px;
}
.hatena-module-recent-comments .recent-comments .user-id img {
    margin-right: 4px;
    vertical-align: middle;
}
.archive-module-calendar table {
    font-size: 86.7%;
    line-height: 36px;
}
.archive-module-calendar th, .archive-module-calendar td {
    padding: 0;
    text-align: center;
}
.archive-module-calendar th {
    padding: 2px 0;
}
.archive-module-calendar th a, .archive-module-calendar td a {
    text-decoration: underline;
}
.hatena-module-category .hatena-urllist li {
    border: medium none;
    float: left;
    margin: 0 4px 4px 0;
    padding: 0;
}
.hatena-module-category .hatena-urllist li a {
    border: 1px solid #e4e4e4;
    border-radius: 2px;
    display: block;
    font-size: 86.7%;
    padding: 6px 10px;
}
.hatena-module-category .hatena-urllist li a:hover {
    background-color: #f8f8f8;
    color: #555;
}
.hatena-module-search-box .search-form {
    position: relative;
}
.hatena-module-search-box .search-module-input, .hatena-module-search-box .search-module-button {
    box-sizing: border-box;
    position: relative;
}
.hatena-module-search-box .search-module-input {
    border: 1px solid #e4e4e4;
    box-shadow: none;
    font-size: 14px;
    height: 40px;
    outline: medium none;
    padding: 8px 32px 8px 8px;
    width: 100%;
}
.hatena-module-search-box .search-module-button {
    background: transparent url("https://cdn.blog.st-hatena.com/images/theme/search.png?version=51e0bf5e6c1f9737de644652753f52") no-repeat scroll right center;
    border: medium none;
    height: 24px;
    opacity: 0.4;
    outline: medium none;
    position: absolute;
    right: 8px;
    text-indent: -9999px;
    top: 8px;
    width: 24px;
}
.hatena-module-search-box .search-module-button:hover {
    opacity: 0.7;
}
#footer p {
    margin: 0;
}
#footer a {
    color: #ccc;
}
#footer a:hover {
    color: #eee;
}
#footer p, #footer address {
    font-size: 87.5%;
}
body {
    color: #333;
    font-size: 16px;
    line-height: 1.7;
}
ul {
    margin-left: 0;
}
.menu-toggle{
    display: none;
}
.entry-content ol, .entry-content ul {
    padding-left: 32px;
}
#fixed-related-post .related-post-content {
    padding: 0 !important;
    width: 100% !important;
}
.related-post-snippet {
    display: none;
}
#top-search {
    height: 30px;
    margin: 0 auto;
    position: absolute;
    top: 10px;
    width: 100%;
    z-index: 11;
}
#top-search-inner {
    height: 30px;
    margin: 0 auto;
    max-width: 1024px;
    position: relative;
    text-align: right;
    width: 100%;
}
#top-search .search-form {
    border-radius: 5px;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.137), 0 4px 8px 0 rgba(0, 0, 0, 0.28) inset;
    height: 30px;
    max-width: 200px;
    position: absolute;
    right: 10px;
    width: 30%;
}
#top-search .search-module-input {
    background: transparent none repeat scroll 0 0;
    border: medium none;
    border-radius: 5px;
    height: 100%;
    left: 0;
    position: absolute;
    width: 100%;
}
#top-search .search-module-input[type="text"] {
    color: #fff;
}
#top-search .search-module-button {
    background: transparent none repeat scroll 0 0;
    border: medium none;
    color: #a9a9a9;
    cursor: pointer;
    float: right;
    height: 100%;
    position: absolute;
    right: 0;
}
#menu .title {
    background: #333333 none repeat scroll 0 0;
    color: #ffffff;
    font-size: 90%;
    height: 40px;
    line-height: 50px;
}
#layer {
    background: #222 none repeat scroll 0 0;
    cursor: pointer;
    display: none;
    height: 150%;
    opacity: 0.4;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10;
}
.toggle-button {
    display: none;
}
#menu {
    height: 80px;
    background: #343838  none repeat scroll 0 0;/*グローバルメニュー背景色*/
    height: 80px;
    margin-bottom: 0;
    margin-left: 0;
    padding-left: 0;
    position: relative;
    width: 100%;
}
.menu-inner {
    height: 80px;
    margin: 0 auto;
    width: 1140px;
}
#menu > .menu-inner li {
    float: left;
    height: 80px;
    list-style-type: none;
    position: relative;
    text-align: center;
    width: 114px;
}
#menu > .menu-inner > li a {
    background: #343838 none repeat scroll 0 0;
    color: #ffffff;
    display: block;
    font-size: 70%;
    line-height: 80px;
    overflow: hidden;
    position: relative;
    width: 100%;
    z-index: 2;
}
@media screen and (min-width: 960px) {
#menu > .menu-inner li > a::after {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: -1;
}
#menu > .menu-inner > li > a:not(.selected)::after {
    bottom: -100%;
}
#menu > .menu-inner > li > a:hover::after {
    background: #aaaaaa none repeat scroll 0 0;
    bottom: 0;
    transition: all 0.3s ease 0s;
}
#menu > .menu-inner > li > a.selected {
    background: #333333 none repeat scroll 0 0;
}
#menu > .menu-inner > li > a.selected:hover {
    color: #333333;
    transition: all 0.3s ease 0s;
}
#menu > .menu-inner > li > a.selected::after {
    top: -100%;
}
#menu > .menu-inner > li > a.selected:hover::after {
    background: #3fbff0 none repeat scroll 0 0;
    color: #333333;
    top: 0;
    transition: all 0.3s ease 0s;
}
}
@media screen and (max-width: 960px) {
#menu-bar {
    width: 100%;
    z-index: 10;
}
#menu-bar-inner {
    margin: 0 auto;
    position: relative;
    width: 680px;
}
.toggle-button {
    background: #3fbff0 none repeat scroll 0 0;
    border-radius: 50%;
    bottom: -30px;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.137), 0 4px 8px 0 rgba(0, 0, 0, 0.28);
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-size: 16px;
    height: 60px;
    line-height: 60px;
    position: absolute;
    right: 0;
    text-align: center;
    text-decoration: none;
    width: 60px;
    z-index: 10;
}
#menu {
    background: #333 none repeat scroll 0 0;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.137), 0 4px 8px 0 rgba(0, 0, 0, 0.28);
    height: 100%;
    list-style-type: none;
    margin: 0;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0;
    position: fixed;
    right: -260px;
    top: 0;
    width: 260px;
    z-index: 20;
}
.menu-inner {
    height: 100%;
    position: static;
    width: 100%;
}
#menu > .menu-inner > li {
    border-top: 1px solid #eee;
    height: 35px;
    margin: 0 auto;
    text-align: center;
    width: 100%;
}
#menu > .menu-inner > li > a {
    background: #fff none repeat scroll 0 0;
    color: #494949;
    display: block;
    font-size: 70%;
    font-weight: bold;
    height: 100%;
    line-height: 35px;
    position: relative;
    width: 100%;
}
#menu > .menu-inner > li > a:hover {
    background: #3fbff0 none repeat scroll 0 0;
    color: #fff;
}
#menu > .menu-inner > li i {
    bottom: 10px;
    font-size: 120%;
    left: 10px;
    position: absolute;
}
.close-area {
    cursor: pointer;
    height: 100%;
}
}
@media screen and (max-width: 680px) {
#menu-bar-inner {
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.137), 0 4px 8px 0 rgba(0, 0, 0, 0.28);
    width: 100%;
}
.toggle-button {
    color: #fff;
    font-size: 14px;
    height: 50px;
    line-height: 50px;
    right: 10px;
    width: 50px;
}
#menu li a:hover {
    background: white none repeat scroll 0 0;
    color: #444;
}
#menu li a:active {
    background: #3fbff0 none repeat scroll 0 0;
    color: #fff;
}
}
@media screen and (max-width: 336px) {
.menu-toggle {
    padding-bottom: 3px;
    padding-top: 3px;
}
}
.hatena-star-user {
    z-index: 1;
}
#related-post-title {
    margin-top: 10px;
    text-align: center;
}
#related-post-title-text {
    font-size: 120%;
    font-weight: bold;
}
#related-post-title {
    background: #f0f0f0 none repeat scroll 0 0;
    border-top: 3px solid #283645;
    color: #444;
    margin: 0;
    padding: 5px;
}
#related-post-title a {
    color: blue;
    font-size: 80%;
}
.related-post-content {
    border-top: 1px solid #e4e4e4;
    display: inline-block;
    padding: 5px;
    vertical-align: top;
    width: calc(50% - 10px);
}
.related-post-content a {
    display: block;
    height: 100%;
    width: 100%;
}
.related-post-content img {
    float: right;
    margin: 10px;
    max-height: 80px;
    width: 80px;
}
.related-post-content .related-post-entrytitle {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 5px;
    margin-top: 0;
}
.related-post-content .related-post-date {
    font-size: 10px;
    margin-bottom: 0;
}
.related-post-content .related-post-snippet {
    font-size: 10px;
    margin: 0;
}
@media screen and (max-width: 680px) {
.related-post-content {
    padding: 0;
    width: 100%;
}
.related-post-content .related-post-entrytitle {
    font-size: 14px;
}
.related-post-content .related-post-snippet {
    display: none;
}
}
@media screen and (min-width: 961px) {
.pc-only-none {
    display: none;
}
}
@media screen and (max-width: 960px) {
.pc-only-show {
    display: none;
}
}
#top-box {
    background: #fff none repeat scroll 0 0;
}
.show-button {
    border: 2px solid black;
    border-radius: 5px;
    cursor: pointer;
    display: inline-block;
    padding: 10px 15px;
}
.show-button:hover {
    background: black none repeat scroll 0 0;
    color: white;
    transition: all 0.3s ease 0s;
}
.hide-area {
    border: 3px dotted #283645;
    border-radius: 5px;
    display: none;
    padding: 20px;
}
.table-of-contents {
    border: 1px solid #e4e4e4;
    border-radius: 5px;
    font-size: 90%;
    list-style-type: decimal;
    padding: 20px 10px 20px 40px;
}
.table-of-contents ul {
    font-size: 90%;
    list-style-type: decimal;
    margin-left: 0;
}
.table-of-contents::before {
    content: "目次";
    font-size: 150%;
    font-weight: bold;
    position: relative;
}
.gallery {
    background: #ededed none repeat scroll 0 0;
    border-radius: 5px;
    line-height: 0;
    margin-bottom: 10px;
    margin-top: 10px;
    padding: 20px 5%;
    width: 90%;
}
.mainimage {
    text-align: center;
}
.mainimage > img {
    max-width: 100%;
}
.thumbnails {
    margin: 10px 0 0;
    padding-left: 0;
}
.thumbnails li {
    border: 2px solid #ededed;
    float: left;
    list-style-type: none;
    margin: 0 2px 0 0;
    width: 60px;
}
.thumbnails li.selected {
    border: 2px solid #8ac2d0;
}
.clear {
    overflow: hidden;
}
.pc-none {
    display: none;
}
.pc-1none {
    display: none;
}
.small-text {
    font-size: 8px;
}
.page-about .entry-content img.profile-icon {
    height: 32px;
    width: 32px;
}
.category-page {
    border: 2px solid #202f55;
    border-radius: 5px;
    margin: 10px 0;
    padding: 20px;
    text-align: center;
}
.category-page ul {
    list-style-type: none;
    margin-bottom: 0;
    padding-left: 0;
}
.category-page a {
    color: blue;
}
#title a {
    color: #333333;
    font-weight: bold;
    letter-spacing: 2px;
}
#blog-description {
    color: #666666;
    font-size: 15px;
}
@media screen and (max-width: 960px) {
#blog-title {
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.137), 0 4px 8px 0 rgba(0, 0, 0, 0.28);
}
}
@media screen and (max-width: 680px) {
#blog-title {
    padding-bottom: 20px;
    padding-top: 30px;
    width: 100%;
}
#title a {
    font-size: 22px;
    letter-spacing: 0;
}
#blog-title-inner {
    padding: 0 15px;
}
#blog-description {
    font-size: 10px;
}
}
.categories {
    margin-bottom: 0;
}
.categories a {
    border: medium none;
    color: #888;
    font-size: 60%;
}
.categories a::before {
    content: ">>";
    margin-right: 3px;
}
.customized-header {
    position: relative;
}
.share-top {
    margin-bottom: 10px;
    text-align: right;
}
.share-top-inner a {
    background: #ffffff none repeat scroll 0 0;
    display: inline-block;
    font-size: 16px;
    height: 40px;
    line-height: 15px;
    position: relative;
    text-align: center;
    text-decoration: none;
    width: 50px;
}
.share-top .small-text {
    font-size: 10px;
}
.share-top .hatena-bookmark-button {
    color: #00a4de;
}
.share-top .twitter-button {
    color: #55acee;
}
.share-top .facebook-button {
    color: #405ba7;
}
.entry-content p {
    margin-bottom: 16px;
}
.entry-content table th {
    background: #f0f0f0 none repeat scroll 0 0;
}
.entry-content table td {
    text-align: center;
}
.caution {
    background: #ffdcdc none repeat scroll 0 0;
    border-radius: 5px;
    margin: 5px;
    padding: 40px 20px 30px;
    position: relative;
}
.caution::before {
    content: "Caution";
    font-weight: bold;
    position: absolute;
    top: 5px;
}
.background-dashed {
    border: 2px dashed #2f4052;
    border-radius: 5px;
    margin: 5px;
    padding: 20px;
}
.background-solid {
    border: 2px solid #444444;
    border-radius: 5px;
    margin: 5px;
    padding: 20px;
}
.background-gray {
    background: #f0f0f0 none repeat scroll 0 0;
    border-radius: 5px;
    margin: 5px;
    padding: 30px;
}
.background-blue {
    background: #eaf6fd none repeat scroll 0 0;
    border-radius: 5px;
    margin: 5px;
    padding: 30px;
}
.background-red {
    background: #ffdcdc none repeat scroll 0 0;
    border-radius: 5px;
    margin: 5px;
    padding: 30px;
}
.entry-content h3 {
    background: #343838 none repeat scroll 0 0;
    color: #ffffff;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.4;
    margin: 30px -10px 20px;
    padding: 20px 5px 20px 20px;
    position: relative;
}
.entry-content h4 {
    background: #f0f0f0 none repeat scroll 0 0;
    border-left: 3px solid #283645;
    color: #444;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.4;
    margin-left: -5px;
    margin-right: -5px;
    padding: 8px 15px;
}
.entry-content h5 {
    background: #fff none repeat scroll 0 0;
    color: #3f3f3f;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.4;
    margin-left: 15px;
    position: relative;
}
.entry-content h5::before {
    border: 5px solid #283645;
    content: "";
    left: -15px;
    position: absolute;
    top: calc(50% - 4px);
}
.entry-title {
    color: #2a2a2a;
    font-size: 30px;
    font-weight: bold;
    margin: 10px 0;
    padding: 20px 0;
}
.entry-content a {
    color: blue;
}
.entry-content a:hover {
    color: #28aae1;
}
.share-and-follow-btn {
    background: #f0f0f0 none repeat scroll 0 0;
    border-radius: 5px;
    margin-top: 10px;
    padding-bottom: 10px;
}
.share-balloon {
    margin-bottom: 10px;
}
.share-inner-balloon {
    text-align: center;
}
.share-btn {
    display: inline-block;
    width: 15%;
}
.share-figure {
    background: #ffffff none repeat scroll 0 0;
    border: 1px solid #444444;
    border-radius: 5px;
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
    color: #444444;
    display: block;
    font-size: 10px;
    height: 30px;
    line-height: 30px;
    margin: 0 auto;
    position: relative;
    text-align: center;
    width: 80%;
    z-index: 0;
}
.share-figure *::before {
    border-color: #ffffff transparent transparent;
    border-style: solid;
    border-width: 9px 9px 0;
    bottom: -9px;
    content: "";
    height: 0;
    left: 50%;
    margin-left: -9px;
    position: absolute;
    width: 0;
    z-index: 0;
}
.share-figure *::after {
    border-color: #444444 transparent transparent;
    border-style: solid;
    border-width: 10px 10px 0;
    bottom: -10px;
    content: "";
    height: 0;
    left: 50%;
    margin-left: -10px;
    position: absolute;
    width: 0;
    z-index: -1;
}
.share-figure:hover {
    color: #000000;
    font-size: 12px;
    transition: all 0.3s ease 0s;
}
.share-icon {
    border-radius: 5px;
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
    color: #ffffff;
    display: block;
    font-size: 18px;
    height: 35px;
    line-height: 30px;
    margin-top: 14px;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1) 0.2s;
    width: 100%;
}
.share-icon:hover {
    color: white;
}
.share-icon:active {
    box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2);
    transition-delay: 0s;
}
.share-and-follow-btn .hatena-bookmark-button {
    background: #00a4de none repeat scroll 0 0;
}
.share-and-follow-btn .twitter-button {
    background: #55acee none repeat scroll 0 0;
}
.share-and-follow-btn .googleplus-button {
    background: #c53727 none repeat scroll 0 0;
}
.share-and-follow-btn .facebook-button {
    background: #405ba7 none repeat scroll 0 0;
}
.share-and-follow-btn .pocket-button {
    background: #ee4256 none repeat scroll 0 0;
}
.follow_btn {
    width: 100%;
}
.follow_btn a {
    background: #fff none repeat scroll 0 0;
    border-radius: 5px;
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
    display: inline-block;
    font-size: 16px;
    height: 50px;
    line-height: 25px;
    margin-bottom: 10px;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1) 0.2s;
    width: 14%;
}
.follow_btn a.follow_hatena {
    border: 2px solid #3d3f44;
    color: #3d3f44;
}
.follow_btn a.follow_tw {
    border: 2px solid #00acee;
    color: #00acee;
}
.follow_btn a.follow_facebook {
    border: 2px solid #405ba7;
    color: #405ba7;
}
.follow_btn a.follow_instagram {
    border: 2px solid #3f729b;
    color: #3f729b;
}
.follow_btn a.follow_rss {
    border: 2px solid #70ca3b;
    color: #70ca3b;
}
.follow_btn a:active {
    box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2);
    transition-delay: 0s;
}
.pager-prev a {
    background: #343838 none repeat scroll 0 0;
    border-radius: 5px;
    color: white;
    display: block;
    font-size: 10px;
    padding: 10px 5px;
    text-align: center;
    text-decoration: none;
}
.pager-next a {
    background: #343838 none repeat scroll 0 0;
    border-radius: 5px;
    color: white;
    display: block;
    font-size: 10px;
    padding: 10px 5px;
    text-align: center;
    text-decoration: none;
}
.pager-prev a:hover {
    opacity: 0.8;
}
.pager-next a:hover {
    opacity: 0.8;
}
.page-index .entry-footer {
    display: none;
}
.entry-see-more {
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
    transition: box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1) 0.2s;
    width: 30%;
}
.entry-see-more:active {
    box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2);
    transition-delay: 0s;
}
#box2 {
    font-size: 90%;
}
#box2 .hatena-module-title {
    border-bottom: 3px solid #2f4052;
    display: none;
    padding-left: 10px;
}
#box2 .hatena-module-category li {
    margin: 0;
    width: 50%;
}
#box2 .hatena-module-category li a {
    -moz-border-bottom-colors: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    border-color: -moz-use-text-color -moz-use-text-color #ececec;
    border-image: none;
    border-style: none none solid;
    border-width: medium medium 1px;
}
#box2 .hatena-module-category li a::before {
    content: "";
    margin-right: 3px;
}
.hatena-fotolife {
    border: 1px solid black;
    display: block;
    margin: 0 auto;
}
#box2 .urllist-item {
    padding: 10px 0;
}
.tab {
    background: #f0f0f0 none repeat scroll 0 0;
    border-radius: 5px 5px 0 0;
    cursor: pointer;
    display: inline-block;
    font-size: 12px;
    padding: 10px 15px 5px;
}
.hatena-module-title2 {
    border-bottom: 3px solid #2f4052;
}
.active {
    background: #2f4052 none repeat scroll 0 0;
    border-radius: 5px 5px 0 0;
    color: white;
}
.hatena-module-recent-entries, .hatena-module-archive, .hatena-module-entries-access-ranking .hatena-module-title, .hatena-module-recent-entries .hatena-module-title, .hatena-module-archive .hatena-module-title {
    display: none;
}
.follow-btn a {
    background: #fff none repeat scroll 0 0;
    border-radius: 5px;
    display: inline-block;
    font-size: 20px;
    margin-top: 5px;
    padding-bottom: 5px;
    padding-top: 5px;
    text-align: center;
    text-decoration: none;
    width: 20%;
}
.follow-btn a.follow_hatena {
    color: #3d3f44;
}
.follow-btn a.follow_facebook {
    color: #405ba7;
}
.follow-btn a.follow_tw {
    color: #00acee;
}
.follow-btn a.follow_instagram {
    color: #3f729b;
}
.follow-btn a.follow_rss {
    color: #70ca3b;
}
.follow-btn a:hover {
    color: #fff;
    transition: all 0.3s ease 0s;
}
.follow-btn a.follow_hatena:hover {
    background: #3d3f44 none repeat scroll 0 0;
}
.follow-btn a.follow_facebook:hover {
    background: #405ba7 none repeat scroll 0 0;
}
.follow-btn a.follow_tw:hover {
    background: #00acee none repeat scroll 0 0;
}
.follow-btn a.follow_instagram:hover {
    background: #3f729b none repeat scroll 0 0;
}
.follow-btn a.follow_rss:hover {
    background: #70ca3b none repeat scroll 0 0;
}
@media (min-width: 968px) {
.fixed1 {
    position: fixed;
    top: 10px;
    width: 300px;
}
.fixed2 {
    position: fixed;
    top: 47px;
    width: 300px;
}
}
#pagetop {
    background: #283645 none repeat scroll 0 0;
    border-radius: 50%;
    bottom: 30px;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.137), 0 4px 8px 0 rgba(0, 0, 0, 0.28);
    display: none;
    height: 60px;
    position: fixed;
    right: 30px;
    text-align: center;
    text-decoration: none;
    width: 60px;
    z-index: 5;
}
#pagetop i {
    color: #fff;
    font-size: 20px;
    line-height: 55px;
}
.shoes {
    background: #283645 none repeat scroll 0 0;
    border-top: 3px solid #3fbff0;
    padding-bottom: 30px;
    padding-top: 10px;
    position: relative;
    z-index: 3;
}
.shoes h2 {
    color: #fff;
    font-size: 16px;
    text-align: center;
}
@media screen and (max-width: 960px) {
.pc-1none {
    display: initial;
}
#box2 {
    float: none;
    margin: 0 auto;
    width: 680px;
}
.hatena-module {
    width: 336px;
}
.hatena-module-html {
    float: right;
}
.hatena-module-search-box {
    float: left;
}
.hatena-module-profile {
    float: left;
}
.hatena-module-entries-access-ranking {
    float: right;
}
.hatena-module-recent-entries {
    float: right;
}
.hatena-module-archive {
    float: right;
}
.hatena-module-category {
    float: left;
}
.shoes {
    bottom: 0;
    position: relative;
}
}
@media screen and (max-width: 768px) {
.pc-none {
    display: initial;
}
.tablet-none {
    display: none;
}
#content {
    max-width: 100%;
    padding-top: 20px;
}
#content-inner {
    padding: 0;
    width: 100%;
}
#wrapper {
    max-width: 100%;
}
#main {
    max-width: 100%;
}
#main-inner {
    max-width: 100%;
}
.entry-title {
    margin: initial;
}
}
@media screen and (max-width: 680px) {
body {
    font-size: 15px;
}
#main {
    padding: 0 15px;
}
.mobile-none {
    display: none;
}
.tablet-none {
    display: initial;
}
.entry-title {
    font-size: 20px;
    margin-bottom: 10px;
    padding-top: 10px;
}
.share-top-inner a {
    width: 15%;
}
.entry-content h3 {
    font-size: 16px;
    margin-left: -15px;
    margin-right: -15px;
    padding: 15px 5px 15px 10px;
}
.entry-content h4 {
    font-size: 16px;
    margin-left: -10px;
    margin-right: -10px;
    padding: 10px 5px;
}
.entry-content h5 {
    font-size: 16px;
}
blockquote {
    font-size: 90%;
    padding: 40px 20px 30px;
}
blockquote::before {
    font-size: 40px;
}
.table-of-contents ul {
    margin-left: 0;
}
.table-of-contents > li > ul > li > ul {
    display: none;
}
.share-figure {
    width: 100%;
}
.share-btn {
    display: inline-block;
    width: 15%;
}
.follow_btn .figure {
    font-size: 10px;
}
.follow_btn a {
    height: 40px;
    line-height: 35px;
}
#box2 {
    margin: 0 auto;
    width: 90%;
}
#box2 .hatena-module {
    width: 100%;
}
.hatena-module {
    float: none;
}
#pagetop {
    bottom: 10px;
    height: 50px;
    right: 10px;
    width: 50px;
}
#pagetop i {
    line-height: 45px;
}
.shoes {
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.137), 0 4px 8px 0 rgba(0, 0, 0, 0.28);
}
.shoes h2 {
    font-size: 12px;
}
.share a {
    height: 40px;
    padding-top: 10px;
}
}
@media screen and (max-width: 336px) {
.categories {
    margin: 0;
}
.entry-title {
    margin: 0;
    padding-bottom: 0;
}
.hatena-asin-detail {
    padding: 10px;
}
.hatena-asin-detail-info li {
    font-size: 80%;
}
.hatena-asin-detail-image {
    width: 80px;
}
}
.hatena-asin-detail {
    position: relative;
}
.hatena-asin-detail > a, .hatena-asin-detail > div {
    position: relative;
    z-index: 2;
}
.hatena-asin-detail::before {
    bottom: 0;
    color: #ddd;
    content: ">>";
    cursor: default;
    display: inline-block;
    font: 36px/1 blogicon;
    position: absolute;
    right: 0;
    vertical-align: middle;
    z-index: 1;
}

/*シェアボタン*/
.share-flat{
    margin-bottom: 10px;
    text-align: center;
}
.share-flat-inner a {
    position: relative;
    display: inline-block;
    width: 19%;
    height: 20px;
    line-height: 20px;
    font-size: 16px;
    text-align: center;
    color: #ffffff;
    text-decoration: none;
}
.share-flat .small-text{
    font-size: 8px;
}
.share-flat .hatena-bookmark-button{
    /*background: #00A4DE;*/
    background: #343838;
}
.share-flat .twitter-button{
    /*background: #55ACEE;*/
    background: #343838;
}
.share-flat .googleplus-button{
    /*background: #C53727;*/
    background: #343838;
}
.share-flat .facebook-button{
    /*background: #405BA7;*/
    background: #343838;
}
.share-flat .pocket-button{
    /*background: #EE4256;*/
    background: #343838;
}
.share-flat a:hover{
    opacity: 0.5;
}

/*サイドバータブメニュー*/
.tab{
    display: inline-block;
    padding: 8px 15px 5px 15px;/*横に入りきらない場合はこの２番目と４番目の数字を小さく*/
    color: white;
    background: #666666;/*反応していないタブの背景色*/
    border-radius: 5px 5px 0 0;
    font-size: 12px;/*横に入りきらない場合はここの数字を小さく*/
    cursor: pointer;
}
.active{
    color: white;
    background: #343838;/*反応しているタブの背景色*/
    border-radius: 5px 5px 0 0;
}
.hatena-module-title2{
    border-bottom: 3px solid black;/*タブの下線*/
}