/* <system section="theme" selected="98012380861710503"> */
/*
Responsive: yes
*/

@import url('https://fonts.googleapis.com/css?family=Montserrat:400,800');
*, *:before, *:after {box-sizing:border-box;}
body {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	color: var(--color10);
	font-family: "Montserrat", sans-serif;
	font-feature-settings : "pwid" 1;
	line-height: 1.8;
}

/**** カラー設定 ****/
@supports(--css: variables) {
:root {
--color0: #fff;	/* color1上にあるテキストカラー */
--color1: #333;	/* 濃い色（枠線など） */
--color2: #eee;	/* 薄い色 */
--colorlink: #4285f4;	/* リンクカラー */
--color10: #252525;	/* メインのテキストカラー */
--color20: #fff;	/* メインの背景カラー */
}
}


::selection {
	background: var(--color10);
	color: var(--color20);
}
::-moz-selection {
	background: var(--color10);
	color: var(--color20);
}
a{
	outline: none;
	color: var(--color10);
	text-decoration: none;
	transition: all 0.2s ease;
}
a:hover{
	text-decoration: underline;
}
a img,img{
	border: none;
	vertical-align: bottom;
}
p{
	margin :1.5rem 0;
	padding: 0 0 0 0;
}
h1,h2,h3,h4,h5,h6{
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	font-size: 100%;
}
small{
	font-size: 0.75rem;
}
b{
	font-weight: bold;
}
ul, ol{
	margin: 1.5rem 0;
	padding: 0 0 0 1.5rem;
}
li{
	margin-bottom: 0.5em;
}
dt{
	margin-top: 1rem;
}
p:first-child,
ul:first-child,
ol:first-child,
li:first-child{
	margin-top: 0;
}
p:last-child,
ul:last-child,
ol:last-child,
li:last-child{
	margin-bottom: 0;
}
p:empty{
	display: none;
}

hr{
	border-style: solid;
	border-width: 0;
	border-top: 3px solid var(--color1);
}
hr.dot{
	border-top: 6px dotted var(--color1);
}
hr.dash{
	border-top: 4px dashed var(--color1);
}

#globalheader-container{
	background: var(--color1);
	color: var(--color0);
}


/**** レイアウト ****/
#container-inner{
	position: relative;
	padding: 0 1rem;
}
#content{
	padding: 0 0 0 0;
}
#wrapper{
	padding: 0 0 0 0;
}
#box2{
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 0 0;
}
#box2-inner{
	width: 100%;
}


/* ブログタイトル */
#blog-title{
	border: 6px solid var(--color1);
	margin: 2rem auto;
	background: var(--color20);
	box-shadow: 8px 8px 0 rgba(0,0,0,0.2);
	max-width: 1060px;
}
.header-image-enable #blog-title #blog-title-inner{
	background-size: cover;
	height: auto;
}
#blog-title-content{
	padding: 1rem;
	text-align: center;
}
#title{
	font-size: 1.8rem;
	font-weight: bold;
}
#title a{
	color: var(--color10);
}
#blog-description{
	font-size: .85rem;
	color: var(--color10);
}

#top-editarea{}
#top-box{
	position: relative;
	border: 6px solid var(--color1);
	margin: 0 0 2rem 0;
	padding: 1rem;
	background: var(--color20);
	box-shadow: 8px 8px 0 rgba(0,0,0,0.2);
}

/* エントリー */

.entry,
.archive-entry{
	position: relative;
	border: 6px solid var(--color1);
	margin: 0 0 2rem 0;
	padding: 0 1rem 1rem 1rem;
	background: var(--color20);
	box-shadow: 8px 8px 0 rgba(0,0,0,0.2);
}
.entry-content{}
.page-entry .breadcrumb{
	margin: 0 0 0 0;
}

.entry-header{
	margin-bottom: 1.5rem;
}
.entry-header a{
	color: var(--color10);
}
.date{
	margin: 0 0 0.8rem -1rem;
	font-size: 0.8rem;
	color: var(--color0);
}
.date a{
	display: inline-block;
	color: var(--color0);
	font-weight: bold;
	padding: 0 0.5rem;
	background: var(--color1);
	border-right: 6px solid var(--color1);
	border-bottom: 4px solid var(--color1);
}
.date a::before{
	content: '\f043';
	font-family: blogicon;
	font-weight: normal;
}
.entry-title{
	margin: 0 0 0.3rem 0;
	text-align: center;
}
.entry-title-link{
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.3;
	word-break: break-all;
}
.page-entry .entry-title-link{
	font-size: 2rem;
}
.entry-categories{
	text-align:center;
}
.categories a{
	display: inline-block;
	background: var(--color2);
	color: var(--color1);
	font-size: 0.7rem;
	margin:0 2px 0 0;
	padding:2px 8px;
}
.categories a:last-of-type{
	margin:0 0 0 0;
}
.entry-content a.entry-see-more{
	display: block;
	background:var(--color1);
	border:6px solid var(--color1);
	font-size: 0.8rem;
	font-weight: bold;
	color: var(--color0);
	text-decoration: none;
	text-align: center;
	line-height: 3;
}
.entry-content a.entry-see-more::before{
	content: '\f024';
	font-family: blogicon;
	color: var(--color0);
	margin-right: 0.4em;
}
.entry-content a.entry-see-more:hover{
	color: var(--color1);
	background: var(--color20);
	text-decoration: none;
}
.entry-content a.entry-see-more:hover::before{
	color: var(--color1);
}
.page-index .comment-box,.page-index .author,.page-index .entry-footer-time,.page-index .entry-footer{
	display: none;
}

/* 記事編集ボタン */
.entry-header-menu a{
	position: absolute;
	z-index: 2;
	display: inline-block;
	padding: .2rem 1.5rem;
	box-shadow: 0px 0px 3px rgba(0,0,0,0.5);
	background: #333;
	line-height: 3;
} 
.entry-header-menu a{
	color: #fff;
}

:not(.page-index) .social-buttons{
	margin-bottom: 2rem;
}

/* コメント */
.comment-box{
	position: relative;
	margin: 1.5rem 0 0 0;
}
.comment{
	margin: 0 0 0 0;
	padding:0 0 0 0;
}
.comment li{
	list-style-type: none;
	margin: 1.5rem 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.comment li .comment-user-name{
	width: 100%;
	display: flex;
	margin: 0 0 0 0;
}
.comment li .hatena-id-icon{
	width: 64px;
	height: 64px;
	margin: 0 8px 12px 0;
}
.comment li .comment-user-id{
	font-size: .75rem;
	display: block;
	line-height: 1.3;
}

.comment li .comment-content{
	position: relative;
	background: var(--color2);
	border-radius: .8em;
	width: 100%;
	padding: 0 1em;
}
.comment li .comment-content::before{
	position: absolute;
	top: -12px;
	left: 32px;
	content: '';
	border-top: 16px solid transparent;
	border-left: 16px solid var(--color2);
}
.comment li .comment-content p{
	margin: 1em 0;
	line-height: 1.6;
}
.comment li .comment-metadata{
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	font-size: 0.8rem;
	text-align: right;
	width: 100%;
}
.leave-comment-title{
	display: inline-block;
	padding: 0.8em 1em 1.0em 1em;
	line-height: 1;
	background: var(--color0);
	color: var(--color1);
	border: 4px solid var(--color1);
}
.leave-comment-title:hover{
	background: var(--color1);
	color: var(--color0);
	text-decoration: none;
}
.leave-comment-title::before{
	position: relative;
	top: 0.3rem;
	content: "\f01d";
	font-family: blogicon;
	font-size: 1.5rem;
	line-height: 1rem;
	margin: 0 0.2em 0 0;
}

@media screen and (min-width: 900px){
.comment li .comment-user-name{width:64px;display:block;}
.comment li .hatena-id-icon{margin:0 0 0.2em 0;}
.comment li .comment-user-id .user-name-nickname{display:block;}
.comment li .comment-user-id{text-align:center;}
.comment li .comment-content{width:calc(100% - 80px);}
.comment li .comment-content::before{top:32px;left:-12px;border-top:16px solid var(--color2);border-left:12px solid transparent;}
}

.page-entry .entry-footer{margin:1.5rem 0 0 0;}
.page-entry .entry-footer-section{text-align:right;margin: 0 0 0 0;}

/* 見出し */
.entry-content h2{font-size:1.5rem;padding:0.7rem 0.5rem;margin:4rem 0 1.6rem 0;text-align:center;background:var(--color1);color:var(--color0);}
.entry-content h3{font-size:1.5rem;margin:1.8rem 0 1rem 0;padding:0 0 0 1.2em;position:relative;line-height:1.4;}
.entry-content h3::before{content:'';position:absolute;top:0;left:0;display:block;background:var(--color1);width:0.6em;height:0.6em;}
.entry-content h3::after{content:'';position:absolute;top:0.25em;left:0.25em;display:block;background:var(--color1);width:0.6em;height:0.6em;filter: opacity(50%);}

.entry-content h4{font-size:1.1rem;margin-top:1.5rem;padding:0 0 0 0.5em;border-left:6px solid var(--color1);}
.entry-content h5{margin-top:1.5rem;}
.entry-content h6{margin-top:1.5rem;}

.entry-content h3 + p{margin-top:1rem}
.entry-content h4 + p{margin-top:0.75rem}
.entry-content h5 + p{margin-top:0.5rem}
.entry-content h6 + p{margin-top:0.5rem}

.entry-content p{overflow:hidden;}
.entry-content a{color:var(--colorlink);text-decoration:underline;}

.entry-content .hatena-image-left,
.entry-content .hatena-image-right{
	max-width: 60%;
}


/* 目次 */
.table-of-contents{
	position:relative;
	border:3px solid var(--color1);
	padding:1rem 2rem;
}
.table-of-contents::before{
	content:'INDEX';
	position:absolute;
	top:-0.9rem;
	left:1rem;
	padding:0 0.6rem;
	font-weight:bold;
	background:var(--color20);
}
.table-of-contents li{
	margin: 0 0 0 0;
}
.table-of-contents ul{
	margin: 0 0 0 0;
}
.table-of-contents a{
	text-decoration:none;
}


.hatena-asin-detail{border: 3px solid var(--color1);position: relative;padding:0.8em 0.6em 0.8em 0.6em;}
.hatena-asin-detail .hatena-asin-detail-image{float: right;}
.hatena-asin-detail .hatena-asin-detail-info{flex: 1;}
.hatena-asin-detail .hatena-asin-detail-info li{margin: 0 0 0 0;}
.hatena-asin-detail::before{position:absolute;top:-2px;right:-2px;content:'\f034';font-family:blogicon;width:1.5rem;height:1.5rem;line-height:1.6rem;text-align:center;font-size:0.8rem;background:var(--color1);color:var(--color0);}
.hatena-rakuten-detail::before{content:'\f722';}

@media screen and (min-width: 900px){
.hatena-asin-detail{display: flex;padding:0.8em 1.5em 0.8em 0.6em;}
.hatena-asin-detail .hatena-asin-detail-image{float: none;}
}

blockquote{margin:1.5rem 0;padding:1.5em 1.5em 1.5em 3em;position:relative;font-size:90%;background-color:var(--color1);filter: brightness(470%);}
blockquote p{margin:1.5em 0;filter: brightness(26%);}
blockquote cite{display:block;font-style:oblique;font-size:0.8em;filter: brightness(26%);}
blockquote::before{
	position: absolute;
	top: 0;
	left: 0.4em;
	z-index: 2;
	font-family: blogicon;
	content:'\f704';
	font-size: 2em;
	color: var(--color1);
	height: 100%;
	filter: brightness(90%);
}

table{width:100%;border-collapse:collapse;margin:0 0 1.8em 0;}
th{border:1px solid #ccc;background:#eee;padding:0.5em;}
td{border:1px solid #ccc;padding:0.5em;}

pre.code{margin:1.5rem 0;padding:2.5em 1em 1em 1em;border:4px solid var(--color1);line-height:1.2;position:relative;
background: -webkit-linear-gradient(var(--color1), var(--color1) 2em, var(--color20) 2em, var(--color20) 100%);
background: linear-gradient(var(--color1), var(--color1) 2em, var(--color20) 2em, var(--color20) 100%);
}
pre.code::before{content:'\f038\0020'attr(data-lang);font-family:blogicon;position:absolute;top:0;left:0.5em;color:var(--color20);line-height:2;}

.exlink{border:1px solid #ccc;background:#f8f8f8;padding:0.7em;margin:0 0 1em 0;}
.exlink::before{content:"\f009";font-family:blogicon;margin-right:0.3em;}
.flexbox{-webkit-display:flex;display:flex;-webkit-justify-content:space-between;justify-content:space-between;}
.flexbox span:not(:first-of-type){margin-left:1%;}
.waku{border:1px solid #ccc;padding:1em;margin:1em 0;border-radius:2px;}
.animecite{display:block;font-size:80%;color:#666;margin-bottom:1.5em;}
.page-index .entry-content .animecite{display:none;}


/* 一覧表示形式 */
.archive-header-category{
	border: 6px solid var(--color1);
	margin: 0 0 2rem 0;
	padding: 1rem;
	background: var(--color20);
	box-shadow: 8px 8px 0 rgba(0,0,0,0.2);
}
.archive-header-category .archive-heading{
	margin:0 0 0 0;
}
.archive-header-category .archive-heading::before{
	font-family: blogicon;
	font-weight: normal;
	content: '\f022';
	margin-right:0.3em;
}
.archive-entry-header .entry-title{
	text-align: left;
}
.archive-entry .categories{
	margin-bottom: 1rem;
}
.page-archive .entry-thumb{
	float: right;
	margin: 0 0 0 10px;
}




/* ページャー */
.pager a{display:block;border:6px solid var(--color1);margin:1.5rem 0;padding:1rem 1rem 1rem 3rem;background:var(--color20);box-shadow:8px 8px 0 rgba(0,0,0,0.2);}
.page-index .pager a{text-align:center;font-size:0;text-decoration:none;color:var(--color1);padding:1rem 1rem 1rem 1rem;}
.page-index .pager a::before{display:inline-block;font-family: blogicon;content:'\f008';font-size:0.8rem;margin-right:0.3em;}
.page-index .pager a::after{display:inline-block;content:'MORE POSTS';font-size:0.8rem;padding:1em 0;font-weight:bold;}
.page-index .pager a:hover{background:var(--color1);color:var(--color0);}

.pager-arrow{display:none;}
.pager-prev, .pager-next{position:relative;display:block;}
.page-entry .pager-prev::before, .page-entry .pager-next::before{position:absolute;top:calc(50% - 0.8em);left:1rem;font-family: blogicon;font-size:3rem;opacity:0.1;}
.page-entry .pager-prev::before{content:'\f005';}
.page-entry .pager-next::before{content:'\f006';}

@media screen and (min-width: 768px){
.page-entry .pager{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	margin:1.5rem 0;
}
.page-entry .pager a{
	margin:0 0;height:100%;padding:1rem 1rem 1rem 1rem;
}
.page-entry .pager-prev, .page-entry .pager-next{width:48.5%;}
.page-entry .pager-prev{}
.page-entry .pager-next::before{left: auto;right:1.5rem;}
.page-entry .pager .pager-next{text-align:right;}
}


/* サイドバー */
.hatena-module{border:6px solid var(--color1);margin:0 0 2rem 0;background:var(--color20);box-shadow:8px 8px 0 rgba(0,0,0,0.2);}
.hatena-module:last-of-type{position: sticky;top:1rem;}
.hatena-module-title{color:var(--color0);font-size:1.2rem;background:var(--color1);border-bottom:2px solid var(--color1);font-weight:bold;margin:0 0 1rem 0;padding:0 0.5rem;line-height:2;text-transform:uppercase;text-align:center;letter-spacing:2px;}
.hatena-module-title a{color:var(--color0);}
.hatena-module-title::before{font-family: blogicon;font-weight:normal;}
.hatena-module-profile .hatena-module-title::before{content: '\f016';}
.hatena-module-search-box .hatena-module-title::before{content: '\f01a';}
.hatena-module-category .hatena-module-title::before{content: '\f022';}
.hatena-module-recent-comments .hatena-module-title::before{content: '\f01d';}
.hatena-module-archive .hatena-module-title::before{content: '\f039';}
.hatena-module-entries-access-ranking .hatena-module-title::before{content: '\f050';}
.hatena-module-links .hatena-module-title::before{content: '\f042';}
.hatena-module-recent-entries .hatena-module-title::before{content: '\f031';}
.hatena-module-related-entries .hatena-module-title::before{content: '\f019';}
.hatena-module-body{margin:1rem;line-height:1.5;}
.hatena-module-body a{}
.hatena-module-body a:hover{}


.search-form{position:relative;overflow:hidden;background:var(--color2);}
.search-form:after{content:"\f01a";font-family:blogicon;position:absolute;right:0;height:3rem;width:3rem;text-align:center;font-size:0.9rem;line-height:3rem;color:var(--color1);}
.search-module-input{border:0px;width:calc(100% - 3rem);height:3rem;font-size:0.9rem;line-height:3rem;padding:0 1em;background:var(--color2);}
.search-module-button{border:0px;background:transparent;color:transparent;position:absolute;right:0;height:3rem;width:3rem;z-index:2;}
.search-module-button:hover{cursor:pointer;}

.hatena-module-profile .profile-icon{float:left;margin:0 .5em 0 0;}
.profile-activities, .profile-description{clear:both;}

.hatena-urllist{margin:0 0 0 0;padding:0 0 0 1.4em;}
.hatena-urllist li{}
.hatena-urllist li a{color:var(--color10);}
.hatena-urllist li:first-child{}
.hatena-urllist li:last-child{}
.urllist-item-inner{}
.urllist-image{}
.urllist-date-link{}
.urllist-date-link a{display:block;overflow:hidden;font-weight:bold;font-size:1rem;line-height:1;border-bottom:2px solid var(--color1);margin-bottom:0.3em;}
.urllist-title{display:block;overflow:hidden;word-break:break-all;font-size:0.9rem;}
.recent-entries-item{}
.recent-entries-item:last-of-type{}
.urllist-with-thumbnails{padding:0 0 0 0;}
.archive-module-months{margin-top:0;}

.recent-comments{padding-left: 0;list-style-type:none;}
.recent-comments a{font-size:90%;}
.recent-comments .user-id{display:block;}
.recent-comments .hatena-id-icon{width:32px;height:32px;}

/* 関連記事 */
.entry-footer .hatena-module-related-entries{border:0;box-shadow:0 0 0;}
.entry-footer .hatena-module-related-entries .hatena-module-title{font-size:0;border-bottom:0;}
.entry-footer .hatena-module-related-entries .hatena-module-title::before{font-size:1.5rem;}
.entry-footer .hatena-module-related-entries .hatena-module-title::after{content:'Related entries';font-family: "Montserrat", sans-serif;font-weight:bold;font-size:1.5rem;}
.entry-footer .hatena-module-related-entries .hatena-module-body{margin:0 0 0 0;}
.entry-footer .related-entries-title{font-weight:bold;font-size:110%;}
.entry-footer .related-entries-item a{}
.entry-footer .related-entries-item a:hover{}
.entry-footer .related-entries-entry-body{}


/* アーカイブ */



/* フッター */
#footer{background:var(--color1);text-align:center;padding:2rem 0;color:var(--color0);}
#footer a{color:var(--color0);}
#footer a:hover{color:var(--color0);}
#footer-inner{}
.footer-address{}
.footer-address img{vertical-align:baseline;}
.services{margin:0 0 0 0;padding:0 0 0 0;}


/* ********メディアクエリ******** */


@media screen and (min-width: 768px){
#content-inner{display:flex;justify-content:space-between;}
#wrapper{width:calc(100% - 330px);}
#box2{width:300px;}
#blog-title-content{
	padding-top: calc(1rem + (100vw - 768px) * 0.1);
	padding-bottom: calc(1rem + (100vw - 768px) * 0.1);
}
.page-archive .entry-thumb{
	width: 180px;
	height: 180px;
}
}

@media screen and (min-width: 900px){
.entry,
.archive-entry{
	padding: 0 1.5rem 1.5rem 1.5rem;
}
.date{
	margin: 0 0 0.8rem -1.5rem;
}
}

@media screen and (min-width: 1112px){
#content{max-width:1060px;margin:0 auto;}
#content-inner{}
#wrapper{width:730px;}
#main{}
#box2{width:300px;}
#blog-title-content{
	padding-top: calc(1rem + 32.4px);
	padding-bottom: calc(1rem + 32.4px);
}
#top-box{max-width:1060px;margin-right: auto;margin-left: auto;}
.entry,
.archive-entry{
	padding: 0 2rem 2rem 2rem;
}
.date{
	margin: 0 0 0.8rem -2rem;
}
.hatena-module-body a{}
.hatena-module-body a:hover{}

}


/* </system> */

/* <system section="background" selected="fff"> */
body{background:#fff;}
/* </system> */

body {
    font-size: 14px;
    line-height: 1.6;
}
.entry-title{
	text-align: left;
}
.entry-categories{
	text-align:left;
}
#container-inner {
    position: relative;
    padding: 0rem;
}
/* ---------TOP------------ */
.archive-entry[data-uuid="26006613800466576"] {
    display: none;
}
.hatena-module.hatena-module-recent-entries {
    display: none;
}
/* 最新記事の1番目の要素を消す */
.recent-entries-item:nth-of-type(-n+1) {
    display: none;
}
/* 月間アーカイブから9999年を消す */
.archive-module-year[data-year="9999"] {
    display: none;
}
/* ---------ふい字------------ */
@font-face {
font-family: 'HuiFontP109';
src: url('https://cdn.blog.st-hatena.com/fonts/public/HuiFont/HuiFontP109.eot?version=1cb944db0eeca13f9892a4d8ff32d3');
src: url('https://cdn.blog.st-hatena.com/fonts/public/HuiFont/HuiFontP109.eot?version=1cb944db0eeca13f9892a4d8ff32d3') format('embedded-opentype'), url('https://cdn.blog.st-hatena.com/fonts/public/HuiFont/HuiFontP109.woff?version=1cb944db0eeca13f9892a4d8ff32d3') format('woff'), url('https://cdn.blog.st-hatena.com/fonts/public/HuiFont/HuiFontP109.ttf?version=1cb944db0eeca13f9892a4d8ff32d3') format('truetype'), url('https://cdn.blog.st-hatena.com/fonts/public/HuiFont/HuiFontP109.svg?version=1cb944db0eeca13f9892a4d8ff32d3') format('svg');
font-weight: normal;
font-style: normal;
} 

/* ---------タイトルをふい字に------------ */
#title a {
 font-family: 'HuiFontP109', sans-serif;
} 
#blog-description {
 font-family: 'HuiFontP109', sans-serif;
} 
#footer a {
 font-family: 'HuiFontP109', sans-serif;
} 
#footer p {
 font-family: 'HuiFontP109', sans-serif;
} 

/* フォント */
a,p,h1,h2,h3,h4,h5,body,.hatena-module-title,.entry-title.entry-content {
    /* font-family: "Sawarabi Gothic"; */
    /* font-family: 'Open Sans', sans-serif; */
     }
.header-image-enable #blog-title #blog-description {
    font-size: 90%;
}
.hatena-module-title {
  position: relative;
  padding: 0.25em 0;
}
.hatena-module-title {
    font-size: 17px;
    text-align: left;
    padding: 10px;
}
.header-image-enable #blog-title #title a {
    color: #000;
    text-shadow: 0 0 20px #fff;
}
.header-image-enable #blog-title #blog-title-inner, .header-image-only #blog-title #blog-title-inner {
    background-size: 1000px;
}
.header-image-enable #blog-title #blog-description {
    font-weight: 700;
    color: #000000;
    text-shadow: 0 0 10px #fff;
}

#box2 {
    max-width: 100%;
    background: hsla(0,0%,100%,0.8);
    padding: 1em 0;
}

/*上に戻るボタン*/
#page_top{
   width: 90px;
   height: 90px;
   position: fixed;
   right: 0;
   bottom: 0;
   opacity: 1.0;
}
#page_top a{
   position: relative;
   display: block;
   width: 90px;
   height: 90px;
   text-decoration: none;
}
#page_top a::before{
   font-family: 'Font Awesome 5 Free';
   font-weight: 900;
   content: '\f139';
   font-size: 30px;
   color: #666;
   position: absolute;
   width: 25px;
   height: 25px;
   top: -55px;
   bottom: 0;
   right: 0;
   left: 0;
   margin: auto;
   text-align: center;
}
#page_top a::after{
   content: 'PAGE TOP';
   font-size: 13px;
   color: #fff;
   position: absolute;
   top: 45px;
   bottom: 0;
   right: 0;
   left: 0;
   margin: auto;
   text-align: center;
   color: #666;
}

/*****グローバルメニュー****/
#menu{
    width: 100%;
    margin: 10px auto 20px;
    background: #333;/*７*/
}
#menu-inner{
    width: 1000px;/*１*/
    height: 40px;/*２*/
    margin: 0 auto;
    background: #333;/*８*/
}
#menu-btn{display: none;}
#menu-content{
    padding-left: 0;
    margin: 0;
    width: 100%;
    height: 100%;
    list-style-type: none;
}
#menu-content > li{
    position: relative;
    float: left;
    height: 100%;
    text-align: center;
}
#menu-content > li > a{
    position: relative;
    display: block;
    height: 100%;
    padding-left: 15px;/*３*/
    padding-right: 15px;/*３*/
    line-height: 40px;/*２*/
    background: #333;/*９*/
    color: #fff;/*10*/
    font-size: 80%;
    text-decoration: none;
    z-index: 2;
}
#menu-content > li > a:hover{
    background: #555;/*11*/
    color: #fff;/*12*/
}
#menu-content > li > a > .blogicon-chevron-down{margin-right: 5px;}
/*２階層目*/
#menu-content > li > ul.second-content{
    visibility: hidden;
    position: absolute;
    top: 0;
    margin: 0;
    padding-left: 0;
    list-style-type: none;
    z-index: -1;
}
#menu-content > li:hover > ul.second-content{
    visibility: visible;
    top: 40px;/*2*/
    z-index: 1;
    transition: all .3s;
}
#menu-content > li > ul.second-content > li{
    text-align: center;
    width: 250px;/*４*/
    height: 30px;/*５*/
}
#menu-content > li > ul.second-content > li > a{
    display: block;
    line-height: 40px;/*５*/
    background: #333;/*13*/
    color: #fff;/*14*/
    font-size: 80%;
    text-decoration: none;
}
#menu-content > li > ul.second-content > li > a:hover{
    background: #555;/*15*/
    color: #fff;/*16*/
}
/*******トグルメニュ*********/
@media screen and (max-width:960px){/*19*/
#menu-inner{
    width: 100%;
    height: auto;
}
#btn-content{text-align: right;}/*20*/
#menu-btn{
    display: inline-block;
    padding: 8px 15px;
    margin: 0px;
    cursor: pointer;
    background: #333;
    color: #fff;
    font-size: 100%;
    width: 100%;
}
#menu-content{
    display: none;
    width: 100%;
}
#menu-content > li{
    width: 100%;
    height: 40px;/*６*/
    float: none;
}
#menu-content > li > a{
    width: 100%;
    line-height: 40px;/*６*/
    padding: 0;
    text-decoration: none;
}
/*２階層目*/
#menu-content > li:hover > ul.second-content{display: none;}
#menu-content > li > a > .blogicon-chevron-down{display: none;}
}

/*--------------------------------------
  サイドバーのタイトルの横にアイコン設置
--------------------------------------*/
.hatena-module-title:before {
  font-family: FontAwesome;
  font-size: 1.2em;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.hatena-module-profile .hatena-module-title:before {content: "\f007";}
.hatena-module-search-box .hatena-module-title:before {content:'\f002'}
.hatena-module-links .hatena-module-title:before {content:'\f0c1'}
.hatena-module-recent-entries .hatena-module-title:before {content:'\f005'}
.hatena-module-archive .hatena-module-title:before {content:'\f187'}
.hatena-module-entries-access-ranking .hatena-module-title:before {content:'\f091'}
.hatena-module-category .hatena-module-title:before {content:'\f02c'}
.hatena-module-recent-comments .hatena-module-title:before {content:'\f086'}
.hatena-module-circles .hatena-module-title:before {content:'\f0c0'}
.hatena-module-related-entries .hatena-module-title:before {content:'\f00b'}

/*--------------------------------------
  フッター
--------------------------------------*/
#footer, #footer a {
    color: #fff;
}

#footer {
    background: #333;
    margin-top: 2em;
    padding-top: 2rem;
    padding-bottom: 2rem;
    text-align: center;
    font-size: .9rem;
}

/* カテゴリをタグっぽく表示*/
.hatena-module-category .hatena-urllist li {
    display: inline-block;
    width: auto;
    margin-bottom: 10px;
    padding: 5px 2px;
    border: none;
    background-color: #ededed; 
}

.hatena-module-category .hatena-urllist li a {
    display: inline;
}

.hatena-module-category a::before {
    content: "";
} 
/*-------------------------------------------------------------
  CSS デザイン
--------------------------------------------------------------*/
/* 吹き出し本体 - 枠線付きの吹き出し */
.balloon2{
  position: relative;
  padding: 10px;
  background-color: #565555;
  border: 2px solid #acabad;
  border-radius: 10px;         /* 角丸を指定 */
}

.box27 {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #62c1ce;
}
.box27 .box-title {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #62c1ce;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.box27 p {
    margin: 0; 
    padding: 0;
}
.box28 {
    position: relative;
    margin: 2em 0;
    padding: 0px 10px 7px;
    border: solid 2px #FFC107;
}
.box28 .box-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #FFC107;
    color: #ffffff;
    font-weight: bold;
}
.box28 p {
    margin: 0; 
    padding: 0;
}

/*-------------------------------------------------------------
  ソースコード デザイン
--------------------------------------------------------------*/
pre.code {
  position: relative;
}
pre.code[data-lang-label]::before {
  content: attr(data-lang-label);
  font-family: 'Helvetica Neue', 'Helvetica', 'Arial', 'Hiragino Kaku Gothic Pro', 'Meiryo', 'MS PGothic', sans-serif;
  font-style: italic;
  position: absolute;
  top: 0;
  right: 0;
  background-color: #333;
  border-radius: 0 0 0 4px;
  padding: 0 7px;
}

/*code-lineクラスの数でカウント*/
.code-line {
  counter-increment: linenumber;
}
/*偶数行のみ背景色を適用*/
.code-line:nth-child(even){
  background-color: #eee;
}

/*行番号を擬似要素として表示*/
.code-line::before {
  content: counter(linenumber);
  display:inline-block;
  color: #ccc;
  text-align: right;
  width: 35px;
  padding: 0 15px 0 0;
}

/*カレンダー*/
.date a::before {
	font-family: "blogicon";
	content: "\f043";
	margin-right: 2px;
}


/*============
nav
=============*/
nav {
  display: block;
  position: fixed;
  top: 0;
  left: -300px;
  bottom: 0;
  width: 300px;
  background: #ffffff;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: all .5s;
  z-index: 4;
  opacity: 0;
}
.open nav {
  left: 0;
  opacity: 1;
}
nav .inner {
  padding: 200px 25px 25px 25px;
}
nav .inner ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
nav .inner ul li {
  position: relative;
  margin: 0;
  border-bottom: 1px solid #333;
}
nav .inner ul li a {
  display: block;
  color: #333;
  font-size: 12px;
  padding: 1em;
  text-decoration: none;
  transition-duration: 0.2s;
}
nav .inner ul li a:hover {
  background: #e4e4e4;
}
@media screen and (max-width: 767px) {
  nav {
    left: -220px;
    width: 220px;
  }
}
/*============
.toggle_btn
=============*/
.toggle_btn {
  display: none; //block;
  position: fixed;
  top: 350px;
  right: 30px;
  width: 30px;
  height: 30px;
  transition: all .5s;
  cursor: pointer;
  z-index: 4;
}
.toggle_btn span {
  display: block;
  position: absolute;
  left: 0;
  width: 30px;
  height: 2px;
  background-color: #333;
  border-radius: 4px;
  transition: all .5s;
}
.toggle_btn span:nth-child(1) {
  top: 4px;
}
.toggle_btn span:nth-child(2) {
  top: 14px;
}
.toggle_btn span:nth-child(3) {
  bottom: 4px;
}
.open .toggle_btn span {
  background-color: #fff;
}
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translateY(10px) rotate(-315deg);
  transform: translateY(10px) rotate(-315deg);
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
}
.open .toggle_btn span:nth-child(3) {
  -webkit-transform: translateY(-10px) rotate(315deg);
  transform: translateY(-10px) rotate(315deg);
}
/*============
#mask
=============*/
#mask {
  display: none;
  transition: all .5s;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .8;
  z-index: 3;
  cursor: pointer;
}