@charset "utf-8";
/*
  Theme: boilerplate
  Author: Hatena Blog Team
  Description:
    はてなブログのデザインCSSカスタマイズの土台に適したデザインテーマです。
    このテーマをもとにしてCSSを書くと比較的楽にカスタマイズできます。
    特定の部分（例えば記事本文の書式やコメント欄のスタイルなど）だけをコピーして使ってもかまいません。
    もちろんそのままの状態でも、シンプルなテーマとして使うことができます。
    このCSSおよびLESSファイルは自由に複製・再配布できます。
    このテーマをもとにしたデザインテーマの配布も自由です。

  Licensed under the MIT license.
*/
/*  import normalize */
/*! normalize.css v3.0.0 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html { font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%;/* 2 */ }
/**
 * Remove default margin.
 */
body { margin: 0; }
/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }
/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio, canvas, progress, video {display:inline-block; /* 1 */
  vertical-align: baseline;/* 2 */ }
/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
 display: none;
 height: 0;
}
/**
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */
[hidden], template {
 display: none;
}
/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a { background: transparent; }
/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active, a:hover { outline: 0; }
/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */
abbr[title] { border-bottom: 1px dotted; }
/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */
b, strong { font-weight: bold; }
/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn { font-style: italic; }
/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
h1 { font-size: 2em; margin:0; }
/**
 * Address styling not present in IE 8/9.
 */
/*mark { background: #ff0; color: #000; }*/
mark {background:linear-gradient(transparent 60%,#cce0f3 60%); font-weight:bold;}
/**
 * Address inconsistent and variable font size in all browsers.
 */
small { font-size: 80%; }
/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9.
 */
img { border: 0; }
/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
 overflow: hidden;
}
/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure { margin: 1em 40px; }
/**
 * Address differences between Firefox and other browsers.
 */
hr { -moz-box-sizing: content-box; box-sizing: content-box; height: 0; }
/**
 * Contain overflow in all browsers.
 */
pre { overflow: auto; }
/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1em; }
/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */
button, input, optgroup, select, textarea { color: inherit; /* 1 */
  font: inherit; /* 2 */
  margin: 0;/* 3 */ }
/**
 * Address `overflow` set to `hidden` in IE 8/9/10.
 */
button { overflow: visible; }
/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8+, and Opera
 * Correct `select` style inheritance in Firefox.
 */
button, select { text-transform: none; }
/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; /* 2 */
  cursor: pointer;/* 3 */ }
/**
 * Re-set default cursor for disabled elements.
 */
button[disabled], html input[disabled] { cursor: default; }
/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner, input::-moz-focus-inner {
 border: 0;
 padding: 0;
}
/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input { line-height: normal; }
/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; /* 1 */
  padding: 0;/* 2 */ }
/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button {
 height: auto;
}
/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] { -webkit-appearance: textfield; /* 1 */
  -moz-box-sizing: content-box; -webkit-box-sizing: content-box; /* 2 */
  box-sizing: content-box; }
/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
 -webkit-appearance: none;
}
/**
 * Define consistent border, margin, and padding.
 */
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }
/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend { border: 0; /* 1 */
  padding: 0;/* 2 */ }
/**
 * Remove default vertical scrollbar in IE 8/9.
 */
textarea { overflow: auto; }
/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup { font-weight: bold; }
/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table { border-collapse: collapse; border-spacing: 0; }
td, th { padding: 0; }
/*  import mixin */
.clearfix { display: block;  *zoom: 1;
}
.clearfix:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }
.inline-block { display: inline-block;  *display: inline;
 *zoom: 1;
}
.ellipsis { white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
/*  import variable */
/* Background color */
/* Background color */
/* Base text color */
/* Light text color */
/* h1~h6 text color */
/* Link text color */
/* Link text color(hover) */
/* Link text color(hover) */
/* Border color */
/* button background */
/* button hover backgroud */
/* Common */
html, body { font-family: 'Helvetica Neue', 'Helvetica', 'Arial', 'Hiragino Kaku Gothic Pro', 'Meiryo', 'MS PGothic', sans-serif; color: #454545; background-color: #ffffff; }
a { color: #1487bd; }
a:hover { color: #0f5373; }
a:visited { color: #789dae; }
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover, h1 a:visited, h2 a:visited, h3 a:visited, h4 a:visited, h5 a:visited, h6 a:visited { color: #333333; text-decoration: none; }
a.keyword { text-decoration: none; border-bottom: 1px dotted #dddddd; color: #454545; }
/* Buttons */
.btn { display: inline-block;  *display: inline;
 *zoom: 1;
padding: 4px 10px 4px; margin-bottom: 0; line-height: 18px; color: #454545; background-color: #ffffff; text-align: center; vertical-align: middle; border-top-right-radius: 2px; border-bottom-right-radius: 0; border-bottom-left-radius: 0; border-top-left-radius: 0; border-radius: 2px; background-clip: padding-box; cursor: pointer; font-size: 12px; text-decoration: none; font-weight: bold; border: 1px solid rgba(0, 0, 0, 0.2); text-decoration: none !important; }
.btn:hover { background-color: #f5f5f5; text-decoration: none !important; }
.btn-small { padding: 2px 10px !important; font-size: 11px !important; }
.btn-large { padding: 13px 19px; font-size: 17px; line-height: normal; font-weight: bold; }
/* ヘッダ（グローバルヘッダ）
  グローバルヘッダの中はiframeですが、
  #globalheader-container に背景色や文字色を指定することでirameの中にも色が反映されます。
*/
#globalheader-container { background-color: #333; color: #fff; position: fixed; top: 0; left: 0; width: 100%; }
/* container */
#container { width:100%; margin-left: auto; margin-right: auto; padding-top: 37px; }
#container #content {width:980px; margin:40px auto 0; display: block;  *zoom: 1;
}
#container #content:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }
.globalheader-off #container { padding-top: 0; }
/* 2カラムレイアウト */
#main { width: 640px; float: left; }
#box2 { width: 300px; float: right; }
/* 1カラムにしたい場合は下記のコメントアウトを外してください ----

#main {
    width: 100%;
    float: none;
}

#box2 {
    width: 100%;
    float: none;
}

#box2-inner {
    width: 960px;
    .clearfix;
    overflow: hidden;
}

.hatena-module {
    text-align: left;
    padding-right: 20px;
    width: 300px;
    float: left;

    &:nth-child(3n+1) {
        clear: both;
    }
}

---- END 1カラム */
/* header */
#blog-title {margin:30px 0 0; padding: 20px 0; /*border-bottom:solid 2px #f5f4f2;*/}
#title { margin: 0; }
#title a { color: #454545; }
#blog-description { font-weight: normal; font-size: 80%; margin: 5px 0 0 0; }
#blog-title-content {text-align:center;}
#blog-title-content > h1 {font-family: 'Oswald', sans-serif; font-size:48px;}

/* グローバルメニュー */
.gnav {width:auto; margin:0 auto; border-top:solid 2px #f5f4f2; border-bottom:solid 2px #f5f4f2;}
.gnav ul {width:auto; margin:0 auto; padding:0; display:table; /*table-layout:fixed;*/}
.gnav ul li {padding:0 18px; display:table-cell; vertical-align:middle; text-align:center; /*border-right:solid 1px #f0de98;*/}
.gnav ul li.home a:before {margin:0 3px 0 0; content:"\f015"; display: inline-table; font-family: FontAwesome; font-weight:normal;}
.gnav ul li.seo a:before {margin:0 4px 0 0; content:"\f013"; display: inline-table; font-family: FontAwesome; font-weight:normal;}
.gnav ul li.tool a:before {margin:0 5px 0 0; content:"\f0ad"; display: inline-table; font-family: FontAwesome; font-weight:normal;}
.gnav ul li.marke a:before {margin:0 3px 0 0; content:"\f201"; display: inline-table; font-family: FontAwesome; font-weight:normal;}
.gnav ul li.design a:before {margin:0 5px 0 0; content:"\f1c5"; display: inline-table; font-family: FontAwesome; font-weight:normal;}
.gnav ul li.css a:before {margin:0 4px 0 0; content:"\f121"; display: inline-table; font-family: FontAwesome; font-weight:normal;}
.gnav ul li.camera a:before {margin:0 4px 0 0; content:"\f030"; display: inline-table; font-family: FontAwesome; font-weight:normal;}
.gnav ul li.mail a:before {margin:0 4px 0 0; content:"\f003"; display: inline-table; font-family: FontAwesome; font-weight:normal;}
/*.gnav ul li:first-child {border-left:solid 1px #f0de98;}*/
.gnav ul li a {padding:15px 0; display:block; font-size:13px; color:#333; text-decoration:none; transition:all .3s;}
.gnav ul li a:hover {opacity:0.7; /*display:block; color:#fff; background-color:#d8af09;*/}

/* ヘッダ画像を設定したとき */
.header-image-enable #title { padding-top: 70px; }
.header-image-enable #title, .header-image-enable #blog-description { padding-left: 20px; }

/* パンくず（カテゴリーページで表示されます） */
#top-box {width:980px; margin: 10px auto 20px; font-size: 90%; display:table;}
#top-box .breadcrumb { border: 1px solid #dddddd; padding: 10px; }

/* entry */
.entry { position: relative; margin-bottom: 100px; }
.entry-header {padding:0; margin-bottom: 20px; border-bottom: 1px solid #dddddd; position: relative; }
/*.entry-title { margin:0 0 10px; line-height: 1.3; font-size: 160%; }*/
.entry-title {padding:10px; font-weight: bold; font-size:32px; position:relative; border-bottom:4px solid #ccc; font-family:Lato,"Open Sans","メイリオ",Meiryo; line-height:1.3;}
.entry-title::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  z-index: 2;
  content: '';
  width: 20%;
  height: 4px;
  background-color: #3498db;
}

/* 日付 */
.date { font-weight: bold; margin-bottom: 10px; }
.date a { color: #1487bd; text-decoration: none; font-size: 90%; }
.date a:before {content:"\f017"; display: inline-table; font-family: FontAwesome; font-weight:normal;}
.date {display:flex; align-items:center;}
.date:after {margin-left:5px; border-top:1px solid #d7e6f0; content:""; flex-grow:1;}
.lastmod {margin:0 0 0 13px; font-size:90%; color:#1487bd;}
.lastmod:before {margin:0 3px 0 0; content:"\f021"; display:inline-table; font-family:FontAwesome; font-weight:normal;}

/* カテゴリ */
.categories {margin:10px 0 0; font-size:80%; display:table;}
.categories a {margin:0 6px 0 0; padding:4px 8px; background-color:#3498db; color:#fff; font-size:90%; border-radius:2px; text-decoration:none; display:table; float:left; line-height:1.4;}
.categories a:hover {opacity:0.7;}
.categories.no-categories { margin: 0; }

/* 「編集する」ボタン */
.entry-header-menu { position: absolute; bottom: 0px; left: -60px; }
.entry-header-menu a { display: inline-block;  *display: inline;
 *zoom: 1;
padding: 4px 10px 4px; margin-bottom: 0; line-height: 18px; color: #454545; background-color: #ffffff; text-align: center; vertical-align: middle; border-top-right-radius: 2px; border-bottom-right-radius: 0; border-bottom-left-radius: 0; border-top-left-radius: 0; border-radius: 2px; background-clip: padding-box; cursor: pointer; font-size: 12px; text-decoration: none; font-weight: bold; border: 1px solid rgba(0, 0, 0, 0.2); text-decoration: none !important; }
.entry-header-menu a:hover { background-color: #f5f5f5; text-decoration: none !important; }
/* entry-content の中の書式 */
.entry-content { /*font-size: 95%;*/ line-height: 1.8; padding-bottom: 10px; border-bottom: 1px solid #dddddd; }
.entry-content p { margin: 0 0 1em 0; }
.entry-content img { max-width: 100%; }
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 { margin: 1.3em 0 0.8em 0; line-height: 1.5; }
.entry-content h1 {font-size:160%;}
.entry-content h2 {font-size:150%;}
.entry-content h3 {font-size:140%; padding:20px 5px; color:#3498db; border-top:solid 5px #3498db; border-bottom:solid 2px #cce0f3;}
.entry-content h4 {font-size:120%; padding:0 0 0 15px; color:#3498db; font-weight:normal; border-left:solid 3px #3498db;}
.entry-content h5 {font-size:14px;}
.entry-content h5:before {margin:0 5px 0 0; content:'\f078'; font-family:fontAwesome;}
.entry-content h6 { font-size: 100%; }
.entry-content table { border-collapse: collapse; border-spacing: 0; margin-bottom: 1em; }
.entry-content table img { max-width: none; }
.entry-content table th, .entry-content table td { border: 1px solid #ddd; padding: 5px 10px; }
.entry-content table th { background: #f5f5f5; }
.entry-content blockquote {border: 1px solid #dddddd; margin: 0 0 10px; padding:30px 20px; position:relative;}

.entry-content blockquote:before {position:absolute; top:5px; left:15px; content:'\f10d'; color:#ccc; font-size:20px; font-family:fontAwesome;}
.entry-content blockquote:after {position:absolute; bottom:5px; right:15px; content:'\f10e'; color:#ccc; font-size:20px; font-family:fontAwesome;}

.entry-content blockquote p { margin-top: 0; margin-bottom: 0; }
.entry-content pre {margin:0 0 10px; padding:20px; font-size:13px; line-height:1.6; border:1px solid #dddddd; white-space:pre;}
.entry-content pre > code { margin: 0; padding: 0; white-space: pre; border: 0; background: transparent; font-family: 'Monaco', 'Consolas', 'Courier New', Courier, monospace, sans-serif; }
.entry-content code { font-size: 90%; margin: 0 2px; padding: 0 5px; border: 1px solid #eaeaea; background-color: #f8f8f8; border-radius: 3px; font-family: 'Monaco', 'Consolas', 'Courier New', Courier, monospace, sans-serif; }
.entry-content .hatena-asin-detail li { line-height: 1.4; }
.entry-content a.entry-see-more {width:200px; font-weight:bold; color:#fff; display:table; height:40px; line-height:40px; text-align:center; background:#14afd6; text-decoration:none; border-radius:4px;}
.entry-content a.entry-see-more:hover {background:#62c9e4;}

/* 目次 */
ul.table-of-contents {padding:15px; background:#f5f4f2; list-style:inside decimal;}
ul.table-of-contents:before {width:100%; margin:0 auto 10px; padding:3px 0 6px 3px; content:"目次"; font-size:16px; border-bottom:solid 3px #3498db; display:table; line-height:1; box-sizing:border-box;}
ul.table-of-contents li {margin:10px 0 0 30px; font-size:16px; font-weight:bold; list-style:decimal;}
ul.table-of-contents li:first-child {margin-top:0;}
ul.table-of-contents li ul {padding:0;}
ul.table-of-contents li ul li {margin:3px 0 0; font-size:13px; font-weight:normal; list-style:none; line-height:1.8;}
ul.table-of-contents li ul li:before {margin:0 5px 0 0; content:"\f0da"; font-family:FontAwesome;}
ul.table-of-contents li ul li:first-child {margin-top:3px;}
ul.table-of-contents li ul li ul {margin:0 0 0 25px;}
ul.table-of-contents li ul li ul li {list-style:disc; font-size:11px;}
ul.table-of-contents li ul li ul li:first-child {margin:0;}
ul.table-of-contents li ul li ul li:before {content:none;}

/* 記事中サンプル */
.sample_triangle01 {width:0; height:0; border-width:10px; border-style:solid; border-color:#00F #F90 #0C0 #F00;}
.sample_triangle02 {width:0; height:0; border-width:10px; border-style:solid; border-color:#00F transparent transparent;}
.sample_triangle03 {margin:0 0 20px; position:relative; display:table;}
.sample_triangle03 a {padding:10px; border-radius:8px; background:#00F; color:#fff; text-decoration:none;}
.sample_triangle03 a:after {width:0; height:0; content:""; border-width:8px; border-style:solid; border-color:#00F transparent transparent; position:absolute; bottom:-22px; left:50%;}
.sample_triangle03 a:hover {opacity:0.5;}
.sample_triangle04 {margin:0 0 15px; padding:10px; border:solid 1px #999; border-radius:8px; text-decoration:none; position:relative; display:table;}
.sample_triangle04:before {width:0; height:0; content:""; border-width:8px; border-style:solid; border-color:#fff transparent transparent; position:absolute; bottom:-12px; left:50%; z-index:100;}
.sample_triangle04:after {width:0; height:0; content:""; border-width:8px; border-style:solid; border-color:#999 transparent transparent; position:absolute; bottom:-15px; left:50%;}
.sample_triangle05 {margin:0 0 10px; padding:0 0 0 15px; position:relative;}
.sample_triangle05:before {width:6px; height:6px; content:""; border-width:2px 2px 0 0; border-style:solid; border-color:#f00 #00f transparent transparent; position:absolute; bottom:9px; left:0px; transform: rotate(45deg);}
.date_20173031 {display:flex; align-items:center; text-align:center;}
.date_20173031:before {margin-right:5px; border-top:1px solid #ccc; content:""; flex-grow:1;}
.date_20173031:after {margin-left:5px; border-top:1px solid #ccc; content:""; flex-grow:1;}
.date_20173031_right {display:flex; align-items:center;}
.date_20173031_right:after {margin-left:5px; border-top:1px solid #ccc; content:""; flex-grow:1;}

/* Preタグ装飾 */
pre {margin: 1em 0 0 0; padding: 0.99em; font-family: "Courier New",Courier,monospace; font-size: 1em; color: #007000; background-color: #fafafa; border: solid 1px #bbbbbb; line-height: 120%; overflow-x: auto; overflow-y: auto; /* Mozilla */white-space: -moz-pre-wrap; /* Opera 4-6 */white-space: -pre-wrap; /* Opera 7 */white-space: -o-pre-wrap; /* CSS3 */white-space: pre-wrap!important; /* IE 5.5+ */word-wrap: break-word;}

.fade {-webkit-transition: 0.3s ease-in-out; -moz-transition: 0.3s ease-in-out; -o-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out;}
.fade:hover {opacity: 0.4; filter: alpha(opacity=60);}

/* entry-footer */
.entry-footer { margin-top: 10px; }
.entry-footer-section { font-size: 80%; color: #999999; }
.entry-footer-section a { color: #999999; }
.social-buttons, .entry-footer-html {width:100%; margin:15px 0 0; display:table;}

.ssImg{
    height: 80px;
    width: 80px;
    padding: 0;
}
.ssTitle{
    font-size: 90%;
}
.ssPanel{
    border-top: 1px solid rgb(228, 228, 228) !important;
    border-bottom: none !important;
    width: 49% !important;
    height: 100px !important;
    float: left !important;
    margin-right: 1% !important;
}
/*.ssLimitedContainerHeader > div > div > div{
     color: #ffffff ;
     background: #202f55;
     font-size: 16px ;
     padding: 10px 5px 10px 10px !important;
     margin-top: 15px;
}*/

/* 関連記事 */
ul.relation {margin:34px 0 18px 0; padding:12px 18px; position:relative; font-size:14px; display:table; list-style:none; border:solid 3px #cce0f3; border-radius:0 8px 8px;}
ul.relation:before {padding:6px 12px; content:"関連記事"; position:absolute; background:#3498db; font-size:13px; color:#fff; bottom:100%; left:0; line-height:1;}
ul.relation li {margin:10px 0 0; line-height:1.4; display:flex;}
ul.relation li:first-child {margin:0;}
ul.relation li:before {margin:0 5px 0 0; content:"\f044"; font-family:FontAwesome;}
@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) {
ul.relation:before {left:-3px;}
}

/*--------------------------------------
  ヨメレバ・カエレバ（PC）
--------------------------------------*/
.booklink-box, .kaerebalink-box{
    padding:25px;
    margin-bottom: 10px;
    border:double #CCC;
    overflow: hidden;
    font-size:small;
}
.booklink-image, .kaerebalink-image{
    margin:0 15px 0 0;
    float:left;
    min-width: 160px;
    text-align: center;
}
.booklink-image img, .kaerebalink-image img{
    margin:0 auto;
    text-align:center;
}
.booklink-info, .kaerebalink-info{
    margin:0;
    line-height:120%;
    overflow: hidden;
}
.booklink-name, .kaerebalink-name{
    margin-bottom:24px;
    line-height:1.5em;
}
.booklink-powered-date, .kaerebalink-powered-date{
     font-size:8px;
     margin-top:10px;
     font-family:verdana;
     line-height:120%;
}
.booklink-detail, .kaerebalink-detail{font-size: 12px;}
.booklink-powered-date, .kaerebalink-detail{margin-bottom:15px;}
.booklink-link2, .kaerebalink-link1{margin-top:10px;}
.booklink-link2 a,
.kaerebalink-link1 a{
    width:30%;
    -moz-border-radius:5px;
    -webkit-border-radius:5px;
    border-radius:5px;
    display:inline-block;
    margin:5px 2px 0 0;
    padding:10px 1px;
    text-align:center;
    float:left;
    text-decoration:none;
    font-weight:800;
    text-shadow:1px 1px 1px #dcdcdc;
    font-size:12px;
    color: #fff !important;
}
.booklink-link2 a:hover,
.kaerebalink-link1 a:hover{opacity: 0.6;}
.booklink-link2 a:active
.kaerebalink-link1 a:active{
    position:relative;
    top:1px;
}
/*ボタンずれ解消*/
.shoplinkamazon {display:flex;}
.shoplinkrakuten {display:flex;}
.shoplinkkindle {display:flex;}
.shoplinkkakakucom {display:flex;}
.shoplinkyahoo {display:flex;}
/*ボタンを変えるときはここから*/
.shoplinkamazon a{background-color:#FF9901 !important;}
.shoplinkrakuten a{background-color:#c20004 !important;}
.shoplinkkindle a{background-color:#007dcd !important;}
.shoplinkkakakucom a{background-color:#314995 !important;}
.shoplinkyahoo a{background-color:#7b0099 !important;}
/*ここまでを変更*/
.shoplinkyahoo img{display:none;}
.shoplinkyahoo a{font-size:10px;}
.booklink-footer{display: none;}

/*アプリーチカスタム*/
#appreach-box {border-radius: 5px; border: double 3px #ececec; margin-bottom: 10px;}
.appreach-links {margin-bottom:3px 0 10px;}
.appreach-footer{margin-bottom:0; line-height:0;}

/* フォローする */
.follow-btn {width:100%; margin:10px 0 15px;}
.follow-btn ul {width:100%; margin:0; padding:0; display:table; list-style:none;}
.follow-btn ul li {margin:0 3px 0 0; float:left;}
.follow-btn ul li:last-child {margin:0;}
.follow-btn a {width:98px; height:auto; padding:4px 0 5px; display:inline-block; line-height:22px; font-size:14px; text-align:center; text-decoration: none; border-radius:5px; box-sizing:border-box;}
.follow-btn a br {display:none;}
.follow-btn .hatena {color: #3D3F44; border: 2px solid #3D3F44; background: #ffffff; }
.follow-btn .twitter {color: #00ACEE; border: 2px solid #00ACEE; background: #ffffff;}
.follow-btn .feedly {color: #70CA3B; border: 2px solid #70CA3B; background: #ffffff;}
.follow-btn .hatena:hover {color: #ffffff; background: #3D3F44; transition: all .3s;}
.follow-btn .twitter:hover {color: #ffffff; background: #00ACEE; transition: all .3s;}
.follow-btn .feedly:hover { color: #ffffff; background: #70CA3B; transition: all .3s;}
.text-small {margin:2px auto 0; font-size:8px; display:table; line-height:1;}

/*share-botton*/
.share-buttons {margin:10px 0 0; text-align:center;}
.share-buttons .inner {width:100%; margin:5px 0 0; display:table;}
.share-buttons .inner a {width:124px; /*height:45px;*/ margin:0 5px 0 0; padding:5px; position: relative; display:inline-block; line-height: 25px; font-size:16px; text-align: center; color:#ffffff; text-decoration: none; float:left; box-sizing:border-box;}
.share-buttons .inner a:last-child {margin:0;}
.share-buttons .inner .share-text{
    font-size: 15px;
}
.share-buttons .inner .hatena-bookmark-button{
    background: #008fde;
    box-shadow: 0 3px #5478a5;
}
.share-buttons .inner .hatena-bookmark-button:hover{
    background: #1db4eb;
}
.share-buttons .inner .hatena-bookmark-button:active{
    background: #5478a5;
}
.share-buttons .inner .facebook-button{
    background: #305097;
    box-shadow: 0 3px #213254;
}
.share-buttons .inner .facebook-button:hover{
    background: #4c70ba;
}
.share-buttons .inner .facebook-button:active{
    background: #213254;
}
.share-buttons .inner .twitter-button{
    background: #55acee;
    box-shadow: 0 3px #0285b7;
}
.share-buttons .inner .twitter-button:hover{
    background: #83c3f3;
}
.share-buttons .inner .twitter-button:active{
    background: #0285b7;
}
.share-buttons .inner .googleplus-button{
    background: #db4a39;
    box-shadow: 0 3px #a23629;
}
.share-buttons .inner .googleplus-button:hover{
    background: #e47365;
}
.share-buttons .inner .googleplus-button:active{
    background: #a23629;
}
.share-buttons .inner .pocket-button{
    background: #ee4256;
    box-shadow: 0 3px 0 #b5392c;
}
.share-buttons .inner .pocket-button:hover{
    background: #f26f7f;
}
.share-buttons .inner .pocket-button:active{
    background: #b5392c;
}
.share-buttons .inner .share-buttons a:active{
    top: 3px;
    box-shadow: none;
}

/* 記事がよかったらいいねPC */
.p-entry__push {margin:10px 0 20px;
    display: table;
    table-layout: fix;
    width: 100%;
    background-color: #2b2b2b;
    color: #fff;
}
 
.p-entry__pushThumb {
    display: table-cell;
    min-width: 240px;
    background-position: center;
    background-size: cover;
}
 
.p-entry__pushLike {
    display: table-cell;
    padding: 20px;
    text-align: center;
    vertical-align: middle;
    line-height: 1.4;
    font-size: 20px;
}
 
.p-entry__pushButton {
    margin-top: 15px;
    display: inline-block;
    width: 200px;
    height: 40px;
    line-height: 40px;
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}
 
.p-entry__pushButtonLike {
    line-height: 1;
}
 
.p-entry__note {
    margin-top: 15px;
    font-size: 12px;
    color: #999;
}
 
.p-entry__tw-follow {
    margin-bottom: 10px;
    background: #f4f4f4;
    width: 100%;
    padding: 15px 0;
}
 
.p-entry__tw-follow__cont {
    text-align: center;
    font-size: 15px;
    color: #252525;
}
 
.p-entry__tw-follow__item {
    display: inline-block;
    vertical-align: middle;
    margin: 0 15px;
}

/* コメント */
.comment-box ul { list-style: none; margin: 0 0 15px 0; padding: 0; font-size: 95%; line-height: 1.7; }
.comment-box li { padding: 10px 0 10px 60px; border-bottom: 1px solid #dddddd; position: relative; }
.comment-box li:first-child { border-top: 1px solid #dddddd; }
.comment-box .read-more-comments { padding-left: 0; }
.comment-box .hatena-id-icon { position: absolute; top: 10px; left: 0; width: 50px !important; height: 50px !important; border-top-right-radius: 3px; border-bottom-right-radius: 0; border-bottom-left-radius: 0; border-top-left-radius: 0; border-radius: 3px; background-clip: padding-box; }
.comment-user-name { margin: 0 0 10px 0; font-weight: bold; }
.comment-content { font-size: 90%; margin: 0 0 10px 0; word-wrap: break-word; }
.comment-content p { margin: 0 0 10px 0; }
.comment-metadata { font-size: 80%; color: #999999; margin: 0; }
.comment-metadata a { color: #999999; }
.leave-comment-title { display: inline-block;  *display: inline;
 *zoom: 1;
padding: 4px 10px 4px; margin-bottom: 0; line-height: 18px; color: #454545; background-color: #ffffff; text-align: center; vertical-align: middle; border-top-right-radius: 2px; border-bottom-right-radius: 0; border-bottom-left-radius: 0; border-top-left-radius: 0; border-radius: 2px; background-clip: padding-box; cursor: pointer; font-size: 12px; text-decoration: none; font-weight: bold; border: 1px solid rgba(0, 0, 0, 0.2); text-decoration: none !important; }
.leave-comment-title:hover { background-color: #f5f5f5; text-decoration: none !important; }

/* おすすめ記事 */
.bottom_list {margin:15px 0 0; padding:20px; border:solid 1px #ddd;}
.bottom_list p.title {padding:2px 7px; font-size:12px; color:#fff; background:#3498db; border-radius:5px; display:table;}
.bottom_list ul {margin:8px 0 0; padding:0; list-style:none;}
.bottom_list ul li {margin:15px 0 0; line-height:1.4;}
.bottom_list ul li:first-child {margin:0;}
.bottom_list ul li:before {margin:0 5px 0 0; content:"\f046"; display:inline-table; font-family:FontAwesome; font-weight:normal;}

/* sidebar */
#box2 { font-size: 85%; line-height: 1.5; }
.hatena-module {width:100%; margin-bottom:30px; display:table;}
.hatena-module-title {padding:3px 0 3px 10px; border-left:solid 6px #cce0f3; font-weight: bold; margin-bottom: 15px; font-size: 120%; }
.hatena-module-title a { color: #454545; text-decoration: none; }
.hatena-module-title a:hover { text-decoration: underline; }

/* 関連記事 */
.urllist-date-link a time {margin:0 0 2px; font-size:11px; display:table;}/*日時*/
.recent-entries-title , .related-entries-title , .entries-access-ranking-title {font-size:14px; line-height:1.4;}/*タイトル*/
.bookmark-widget-counter {margin:3px 0 0; display:block;}/*はてブ*/
.recent-entries-categories , .entries-access-ranking-categories {margin:0;}/*カテゴリ*/

/* reader button */
.reader-button {
  width: 300px;
  height: 46px;
  margin-top: 0;
  margin-bottom: 20px;}
.reader-button-inner a {
  position: relative;
  display: table-cell;
  width: 300px;
  height: 46px;
  border-radius: 4px;
  background-color: #1bbb7c;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  box-shadow: 0 2px 4px rgba(0,0,0,.4);
  text-decoration: none;
  transition: all .6s;}
.reader-button-inner a:hover {
  top: 3px;
  box-shadow: none;
  transition: all .6s;}

/*サイドバータブメニュー*/
.tab{
    display: inline-block;
    padding: 8px 15px 5px 15px;/*横に入りきらない場合はこの２番目と４番目の数字を小さく*/
    background: #f0f0f0;/*反応していないタブの背景色*/
    border-radius: 5px 5px 0 0;
    font-size: 12px;/*横に入りきらない場合はここの数字を小さく*/
    cursor: pointer;
}
.active{
    color: white;
    background: black;/*反応しているタブの背景色*/
    border-radius: 5px 5px 0 0;
}
.hatena-module-title2{
    border-bottom: 3px solid black;/*タブの下線*/
}

/* Profile module */
.hatena-module-profile .profile-icon { float: left; margin: 0 10px 10px 0; border-top-right-radius: 5px; border-bottom-right-radius: 0; border-bottom-left-radius: 0; border-top-left-radius: 0; border-radius: 5px; background-clip: padding-box; }
.hatena-module-profile .id { display: block; font-weight: bold; font-size: 110%; margin-bottom: 5px; }
.hatena-module-profile .profile-description { font-size: 90%; }
.hatena-module-profile .profile-description p { margin-top: 0; }

/* ページトップへ戻るボタン */
#pagetop {
    position:fixed;
    bottom:10px;
    right:10px;
    padding:8px 15px;
    color:#fff;
    font-size:13px;
    text-decoration:none;
    background:#000;
    border-radius:5px;
}

/* ページトップへ戻るボタン：ホバー時 */
#pagetop:hover {
    background:#e74c3c;
    transition: 0.6s ;
}

/* ----- NEW_ENTRY ----- */
.htbl_new_entries {
  height: 100%;
  width: 100%;
}
.htbl_new_entry {
  position: relative;
  background: #ddd;
  width: 100%;
  height: 100px;
  overflow: hidden;
  margin-top: 1px;
  border-radius: 1px;
}
.htbl_new_entry_img { position: relative; top: -9px; min-height: 118px;}
.htbl_new_entry_text {
  position: absolute;
  top: 0px;
  word-break: break-all;
  overflow: hidden;
  background: rgba(15, 15, 15, 0.65);
  width: 90%;
  height: 100px;
  margin-top: 0px;
  padding: 0 5%;
  color: rgba(255, 255, 255, 0.95);
  text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
  -webkit-transition: all 0.35s ease-out;
  -moz-transition: all 0.35s ease-out;
  -o-transition: all 0.35s ease-out;
  transition: all 0.35s ease-out;
}
.htbl_new_entry_text:hover {
  background: rgba(255, 255, 255, 0.05);
  color: transparent;
  text-shadow: none;
  padding-top: 100px;
}
.htbl_new_entry_text span.entry_title {
  display: table-cell;
  vertical-align: middle;
  text-align: center; 
  height: 100px;
  font-size: 14px;
  font-weight: lighter;
}
.htbl_new_entry_text span.entry_date {
  position: absolute;
  bottom: 0;
  right: 5px;
  font-size: 10px;
  color: rgba(255, 255, 255, 0.4);
  text-shadow: none;
}

/* カテゴリ */
div.hatena-module-category div.hatena-module-body ul li a {
    color : #ffffff;    /* 文字色 */
}
div.hatena-module-category div.hatena-module-body ul li {
    display: inline-block; /* 横並びに変更 */
    border-radius: 6px;
    line-height: 10px;
    transition: none;
    background-color: #14afd6; /* お好きな色に */
    margin:5px 2px 0 0; /* 要素の間隔調整 */
    padding:8px;
} 
div.hatena-module-category div.hatena-module-body ul li:hover {
    opacity:0.6;
}

/* お問い合わせ */
.inquiry_wrap {margin:-25px 0 0;}
.inquiry_wrap a {width:100%; padding:15px 35px; background-color:#1abc9c; border-radius:4px; box-shadow:0 3px 0 #0e8c73; box-sizing:border-box; color:#fff; display:table; font-weight:bold; text-align:center; text-shadow:0 1px 1px rgba(0, 0, 0, 0.3); text-decoration:none;}
.inquiry_wrap a:before {margin:0 6px 0 0; font-family:FontAwesome; content:"\f003"; display:inline-table;}
.inquiry_wrap a:hover {opacity:0.6;}

/* urllist module
    リンク・最新記事・最近のコメント・月別アーカイブ・カテゴリモジュールは .hatena-urllist という共通の class が振られます
*/
.hatena-urllist { list-style: none; margin: 0 0 0 0; padding: 0 0 0 0; }
.hatena-urllist li { padding: 8px 0; border-bottom: 1px solid #dddddd; line-height: 1.5; }
.hatena-urllist li a { text-decoration: none; }

/* Search module */
.hatena-module-search-box .search-form { border: 1px solid #dddddd; border-top-right-radius: 3px; border-bottom-right-radius: 0; border-bottom-left-radius: 0; border-top-left-radius: 0; border-radius: 3px; background-clip: padding-box; width: 100%; -moz-box-sizing: border-box; box-sizing: border-box; position: relative; }
.hatena-module-search-box .search-module-input { padding: 5px; color: #454545; background: none; border: none; outline: none; height: 20px; width: 90%; }
.hatena-module-search-box .search-module-button { width: 20px; height: 20px; background: transparent url(https://cdn.blog.st-hatena.com/images/theme/search.png?version=263e782f4058acf5109a8ca03f06e0) no-repeat right center; border: none; outline: none; text-indent: -9999px; position: absolute; top: 5px; right: 5px; opacity: 0.5; filter: alpha(opacity=50); }
.hatena-module-search-box .search-module-button:hover { opacity: 0.85; filter: alpha(opacity=85); }

/* Pager */
.pager { margin: 1em 0; display: block;  *zoom: 1;
}
.pager:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }
.pager .pager-prev { float: left; text-align: left; width: 45%; }
.pager .pager-next { float: right; text-align: right; width: 45%; }

/* Footer */
#footer { padding: 30px 0; text-align: center; color: #999999; line-height: 1.5; font-size: 80%; }
#footer p { margin: 0; }
#footer a { color: #999999; }
#bottom-editarea {margin:30px 0 0; padding:35px 0 50px; background:#191970;}
#bottom-editarea .address {margin:0 auto; color:#fff; font-size:12px; display:table;}

/* About ページ */
.page-about dt { font-size: 16px; font-weight: bold; border-bottom: 1px solid #dfdfdf; margin-bottom: 5px; }
.page-about dd { margin-left: 0; margin-bottom: 30px; }

/* archive ページ */
.page-archive .archive-entries .archive-entry { margin-bottom: 3em; }
.page-archive .archive-entries .entry-title { font-size: 130%; margin: 0 0 .5em; }
.page-archive .archive-entries .categories { margin: 0 0 .5em; }
.page-archive .archive-entries .entry-description { margin: 0 0 1em; line-height: 1.7em; font-size: 95%; }
.page-archive .categories a { color: #fff; font-size: 70%; background: #aaa; padding: 3px 5px; border-radius: 3px; text-decoration: none; display: inline-block;  *display: inline;
 *zoom: 1;
margin-right: 2px; }

/*  import media queries */

/* Media Queries - Retina Display */
@media (-webkit-min-device-pixel-ratio: 2) {
 .hatena-module-search-box .search-module-button {
 background: transparent url(https://cdn.blog.st-hatena.com/images/theme/search@2x.png?version=263e782f4058acf5109a8ca03f06e0) no-repeat right center;
 background-size: 20px 20px;
}
}

/* Media Queries - Tablet */
@media (min-width: 768px) and (max-width: 1024px) {
 #container {
 width: 724px;
}
 #main {
 width: 460px;
}
 #box2 {
 width: 245px;
}
}

/* Media Queries - Small Tablet & Smartphone */
@media (max-width: 767px) {
 #globalheader-container {
 position: static;
}
 #container {
 width: 93.75%;
 word-wrap: break-word;
 overflow: hidden;
}
 #main {
 width: 100%;
 float: none;
}
 #box2 {
 width: 100%;
 float: none;
}
 #box2-inner {
 width: 100%;
}
 .hatena-module {
 width: 100%;
 float: none;
}
 .entry-header-menu {
 top: -30px;
 left: 0px;}

/* 記事中サンプル */
.sample_triangle01 {width:0; height:0; border-width:10px; border-style:solid; border-color:#00F #F90 #0C0 #F00;}
.sample_triangle02 {width:0; height:0; border-width:10px; border-style:solid; border-color:#00F transparent transparent;}
.sample_triangle03 {margin:0 0 20px; position:relative; display:table;}
.sample_triangle03 a {padding:10px; border-radius:8px; background:#00F; color:#fff; text-decoration:none;}
.sample_triangle03 a:after {width:0; height:0; content:""; border-width:8px; border-style:solid; border-color:#00F transparent transparent; position:absolute; bottom:-22px; left:50%;}
.sample_triangle03 a:hover {opacity:0.5;}
.sample_triangle04 {margin:0 0 15px; padding:10px; border:solid 1px #999; border-radius:8px; text-decoration:none; position:relative; display:table;}
.sample_triangle04:before {width:0; height:0; content:""; border-width:8px; border-style:solid; border-color:#fff transparent transparent; position:absolute; bottom:-12px; left:50%; z-index:100;}
.sample_triangle04:after {width:0; height:0; content:""; border-width:8px; border-style:solid; border-color:#999 transparent transparent; position:absolute; bottom:-15px; left:50%;}
.sample_triangle05 {margin:0 0 10px; padding:0 0 0 15px; position:relative;}
.sample_triangle05:before {width:6px; height:6px; content:""; border-width:2px 2px 0 0; border-style:solid; border-color:#f00 #00f transparent transparent; position:absolute; bottom:9px; left:0px; transform: rotate(45deg);}

}
/* Media Queries - Smartphone */