/* <system section="background" selected="photo-06"> */
body{ background-image: url('https://cdn.blog.st-hatena.com/images/theme/backgrounds/2014/photo-06.jpg?version=f5154c74e6e38109ce2f0c7b9afd51'); background-repeat: no-repeat; background-attachment: fixed; background-position: center top; background-size: cover; }

/* </system> */
@charset "UTF-8";@import url(https://fonts.googleapis.com/css?family=Allura);
/*! normalize.css v3.0.0 | MIT License | git.io/normalize */
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{margin:0}
article,aside,details,figcaption,figure,footer,header,hgroup,main,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:transparent}
a:active,a:hover{outline:0}
abbr[title]{border-bottom:1px dotted}
b,strong{font-weight:700}
dfn{font-style:italic}
h1{font-size:2em;margin:.67em 0}
mark{background:#ff0;color:#000}
small{font-size:80%}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}
img{border:0}
svg:not(:root){overflow:hidden}
figure{margin:1em 40px}
hr{box-sizing:content-box;height:0}
pre{overflow:auto}
code,kbd,pre,samp{font-family:monospace,monospace;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]{-webkit-appearance:button;cursor:pointer}
button[disabled],html input[disabled]{cursor:default}
button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}
input{line-height:normal}
input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}
input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}
input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}
input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}
fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}
legend{border:0;padding:0}
textarea{overflow:auto}
optgroup{font-weight:700}
table{border-collapse:collapse;border-spacing:0}td,th{padding:0}.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}

/* ========================================
   Base Typography & Colors (Tech Style)
   ======================================== */
@font-face{font-family:HuiFontP109;src:url(https://cdn.blog.st-hatena.com/fonts/public/HuiFont/HuiFontP109.eot?version=f5154c74e6e38109ce2f0c7b9afd51);src:url(https://cdn.blog.st-hatena.com/fonts/public/HuiFont/HuiFontP109.eot?version=f5154c74e6e38109ce2f0c7b9afd51) format("embedded-opentype"),url(https://cdn.blog.st-hatena.com/fonts/public/HuiFont/HuiFontP109.woff?version=f5154c74e6e38109ce2f0c7b9afd51) format("woff"),url(https://cdn.blog.st-hatena.com/fonts/public/HuiFont/HuiFontP109.ttf?version=f5154c74e6e38109ce2f0c7b9afd51) format("truetype"),url(https://cdn.blog.st-hatena.com/fonts/public/HuiFont/HuiFontP109.svg?version=f5154c74e6e38109ce2f0c7b9afd51) format("svg")}

/* ----------------------------------------
   モダンなシステムフォントスタックと文字詰め
   ---------------------------------------- */
body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  color: #1e293b; /* Slate 800: 真ッ黒ではなく、少し青みのある洗練されたダークグレー */
  letter-spacing: 0.03em;
  font-feature-settings: "palt"; /* 文字の隙間を美しく調整 */
}

h1 a,h1 a:hover,h1 a:visited,h2 a,h2 a:hover,h2 a:visited,h3 a,h3 a:hover,h3 a:visited,h4 a,h4 a:hover,h4 a:visited,h5 a,h5 a:hover,h5 a:visited,h6 a,h6 a:hover,h6 a:visited{text-decoration:none;font-weight:400}
a.keyword{text-decoration:none;border-bottom:1px dotted #cbd5e1;color:#1e293b}
a.keyword:hover{text-decoration:none!important}

/* Buttons */
.btn{display:inline-block;*display:inline;*zoom:1;padding:4px 10px;margin-bottom:0;line-height:18px;color:#0ea5e9;background-color:#f0f9ff;text-align:center;vertical-align:middle;border-radius:4px;background-clip:padding-box;cursor:pointer;font-size:12px;text-decoration:none;border:1px solid #0ea5e9}.btn,.btn:hover{text-decoration:none!important}.btn:hover{opacity:.8;filter:alpha(opacity=80)}.btn-small{padding:2px 10px!important;font-size:11px!important}.btn-large{padding:13px 19px;font-size:17px;line-height:normal;font-weight:700}

/* ヘッダ */
#globalheader-container{color:#333;position:fixed;top:0;left:0;width:100%;background:#fff;}
#container{width:1080px;margin-left:auto;margin-right:auto;padding-bottom:30px;padding-top:37px}#container #content{display:block;*zoom:1}#container #content:after{display:block;visibility:hidden;font-size:0;height:0;clear:both;content:"."}#container-inner{width:980px;background:#fff;border-radius:8px;box-shadow: 0 4px 20px rgba(0,0,0,0.03);background-clip:padding-box;margin-left:auto;margin-right:auto;padding-left:50px;padding-right:50px}.globalheader-off #container{padding-top:0}
#main{width:600px;float:left}#box2{width:300px;float:right}
#blog-title-inner{margin:50px 0 15px;padding:20px 250px;background:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/header-bg.png?version=f5154c74e6e38109ce2f0c7b9afd51) no-repeat 175px top}#blog-title-inner h1{font-size:40px;text-align:center;width:480px;margin-top:90px}#title{margin:0}#title a{color:#1e293b;font-family:HuiFontP109,sans-serif;font-weight:400}#blog-description{font-weight:400;font-size:80%;text-align:center;margin-top:10px;color:#64748b;}
#top-editarea,.header-image-enable #content{margin-top:40px}.header-image-enable #container-inner{padding-top:10px}.header-image-enable #blog-title-inner{margin:40px 0 15px}.header-image-enable #blog-title-inner h1{margin-top:0}.header-image-enable #title{padding-top:50px}.header-image-enable #blog-description,.header-image-enable #title{padding-left:20px}
#top-box{margin:10px auto 25px;font-size:90%}#top-box .breadcrumb a:hover{text-decoration:underline}

/* entry */
.entry{position:relative;margin-bottom:100px}.entry-header{padding:0 0 10px;margin-bottom:20px;position:relative}.entry-title{font-family:HuiFontP109,sans-serif;font-size:24px;width:500px;margin:0;margin-left:10px;line-height:1.2;display:inline-block;vertical-align:middle;margin-bottom:23px}.entry-title a{color:#0f172a}.customized-header{margin-top:50px}
.date{font-weight:400;margin-bottom:5px}.date a{color:#64748b;font-family:Allura,cursive;text-decoration:none}.entry-date{width:82px;height:82px;display:inline-block;line-height:1}.entry-date .date-year{display:inline-block;font-size:18px;margin-top:22px;margin-left:23px}.entry-date .hyphen{display:none}.entry-date .date-month{margin-left:17px}.entry-date .date-day,.entry-date .date-month{font-size:22px}
.categories{margin-top:5px;padding-top:20px;background:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/entry-title-border.png?version=f5154c74e6e38109ce2f0c7b9afd51) no-repeat 0 0;font-size:80%}.categories a{color:#0ea5e9;padding:4px 12px;margin-right:4px;background:#f0f9ff;border-radius:4px;display:inline;font-weight:bold;}.categories a:hover{text-decoration:none;opacity:.8;}
.entry-header-menu{position:absolute;top:0;right:0}.entry-header-menu a{display:inline-block;*display:inline;*zoom:1;padding:4px 10px;margin-bottom:0;line-height:18px;color:#0ea5e9;background-color:#f0f9ff;text-align:center;vertical-align:middle;border-radius:4px;cursor:pointer;font-size:12px;text-decoration:none;border:1px solid #0ea5e9;text-decoration:none!important}.entry-header-menu a:hover{opacity:.8;text-decoration:none!important}

/* ========================================
   Entry Content (本文領域 - ドキュメント風)
   ======================================== */
.entry-content {
  font-size: 16px;
  line-height: 1.9;
  color: #334155; /* やや落ち着いた色で長文の疲れを軽減 */
  padding-bottom: 10px;
}
.entry-content a { color: #0ea5e9; text-decoration: none; }
.entry-content a:hover{text-decoration:underline}
.entry-content p{margin:0 0 1.5em}
.entry-content img{max-width:100%; border-radius: 6px; box-shadow: 0 2px 8px rgba(0,0,0,0.05);}

/* ----------------------------------------
   見出し（背景色で白抜きに統一）
   ---------------------------------------- */
.entry-content h1, 
.entry-content h2, 
.entry-content h3, 
.entry-content h4, 
.entry-content h5, 
.entry-content h6 {
  font-weight: bold;
  color: #0f172a;
}

.entry-content h1 {
  font-size: 160%;
  margin: 1.6em 0 0.8em;
  padding-left: 0px;
}

/* 見出し (h2, h3, h4, h5) : 背景色で白抜きに統一 */
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5 {
  font-weight: bold;
  color: #ffffff; /* 白抜きテキスト */
  background-color: #1e293b; /* 統一背景色 (Slate 800) */
  padding: 16px 20px; /* パディングを共通化 */
  margin: 2em 0 1em;
  border-radius: 6px; /* 角丸を適用 */
  box-shadow: 0 2px 4px rgba(0,0,0,0.05); /* 影を適用 */
  line-height: 1.4;
  letter-spacing: 0.05em;
  border: none; /* 枠線を削除 */
}

/* 個別のフォントサイズとマージンの調整 */
.entry-content h2 {
  font-size: 140%;
  margin: 2.5em 0 1.2em;
}

.entry-content h3 {
  font-size: 125%;
}

.entry-content h4 {
  font-size: 110%;
}

.entry-content h5 {
  font-size: 100%;
}

.entry-content h6 {
  font-size: 100%;
}

/* 以前の装飾を削除 */
.entry-content h3::after,
.entry-content h4::before {
  display: none;
}

/* ----------------------------------------
   テーブル・引用・コード (エディタ風)
   ---------------------------------------- */
.entry-content table{border-collapse:collapse;border-spacing:0;margin-bottom:1.5em; width: 100%;}
.entry-content table th, .entry-content table td{border:1px solid #e2e8f0;padding:12px 16px;font-size: 95%;}
.entry-content table th{font-weight:bold;background:#f8fafc;color:#1e293b; text-align: left;}

/* 引用ブロック（GitHub風クリーン） */
.entry-content blockquote {
  border-left: 4px solid #94a3b8;
  margin: 0 0 1.5em;
  padding: 16px 24px;
  background-color: #f8fafc;
  border-radius: 0 8px 8px 0;
  color: #475569;
  font-size: 95%;
}
.entry-content blockquote p{margin-top:0;margin-bottom:0}

/* 埋め込みコード（VS Code風ダークテーマ） */
.entry-content pre {
  margin: 0 0 1.5em;
  white-space: pre;
}
pre.code {
  background: #1e1e1e; /* エディタのダーク色 */
  color: #d4d4d4;
  padding: 20px;
  border-radius: 8px;
  box-shadow: inset 0 0 0 1px #333;
  line-height: 1.6;
  font-size: 14px;
  overflow-x: auto;
}
.entry-content pre>code{margin:0;padding:0;white-space:pre;border:0;background:transparent;color:inherit;}
.entry-content code,.entry-content pre>code{font-family: "Fira Code", "Menlo", "Consolas", "Courier New", monospace;}
/* インラインコード */
.entry-content code{font-size:90%;margin:0 4px;padding:3px 6px;border:1px solid #e2e8f0;background-color:#f1f5f9;border-radius:4px;color:#db2777;}

.entry-content .hatena-asin-detail{border:none;border-left:4px solid #94a3b8;padding:20px;background:#f8fafc;border-radius: 0 8px 8px 0;}.entry-content .hatena-asin-detail li{line-height:1.5}.entry-content .hatena-asin-detail .hatena-asin-detail-title{font-weight:bold; color:#0f172a;}

.entry-footer{margin-top:20px}.entry-footer-section{font-size:80%;color:#94a3b8}.entry-footer-section a{color:#94a3b8}.entry-footer-html,.social-buttons{margin:30px 0}#bottom-editarea{padding-bottom:50px}

/* ========================================
   コメント・サイドバー・フッター
   ======================================== */
.comment-box ul{list-style:none;margin:0 0 15px;padding:0;font-size:95%}.comment-box li{padding:0 0 10px 60px;position:relative;margin-bottom:20px}.comment-box .read-more-comments{padding-left:0}.comment-box .hatena-id-icon{width:50px!important;height:50px!important;border-radius:6px;position:absolute;left:0;top:5px}.comment-nickname{display:inline-block;font-size:80%}.comment-user-name{display:inline-block;vertical-align:top;margin:0;padding-left:6px;margin-bottom:5px}.comment-user-name a:hover{text-decoration:underline}.comment-content{font-size:90%;word-wrap:break-word;width:515px;min-height:30px;display:inline-block;vertical-align:top;line-height:1.7;margin-left:7px;padding:12px 16px;background:#f8fafc;border-radius:8px;position:relative; border: 1px solid #e2e8f0;}.comment-content:after{right:100%;top:20px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none;border-right-color:#f8fafc;border-width:8px;margin-top:-8px}.comment-content p{margin:0 0 1em}.comment-metadata{font-size:80%;color:#94a3b8;margin:0;margin-top:10px;padding-left:6px;display:inline-block}.comment-metadata a{color:#94a3b8}.leave-comment-title{color:#0ea5e9;font-family:HuiFontP109,sans-serif;padding:15px 45px 13px 18px;background:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/comment.png?version=f5154c74e6e38109ce2f0c7b9afd51) no-repeat 100% 100%}.leave-comment-title:hover{text-decoration:none;color:#38bdf8}

#box2{font-size:85%;line-height:1.6}.hatena-module{margin-bottom:60px}.hatena-module-title{font-family:HuiFontP109,sans-serif;margin-bottom:15px;font-size:18px;padding:5px 0 5px 35px;background:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-html.png?version=f5154c74e6e38109ce2f0c7b9afd51) no-repeat 0; color:#1e293b;}.hatena-module-title a{color:#1e293b;text-decoration:none}.hatena-module-title a:hover{text-decoration:underline; color:#0ea5e9;}.urllist-image{margin-bottom:0!important; border-radius:4px;}
.hatena-module-profile .hatena-module-title{background:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-profile.png?version=f5154c74e6e38109ce2f0c7b9afd51) no-repeat 0}.hatena-module-profile .profile-icon{float:left;margin:0 10px 10px 0;border-radius:6px;}.hatena-module-profile .id{display:block;font-size:95%;margin-bottom:5px; font-weight:bold;}.hatena-module-profile .id a:hover{text-decoration:underline}.hatena-module-profile .profile-description{font-size:90%; color:#475569;}.hatena-module-profile .profile-description p{margin-top:0}.hatena-module-authors-list .hatena-module-title{background:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-profile.png?version=f5154c74e6e38109ce2f0c7b9afd51) no-repeat 0}
.hatena-urllist{list-style:none;margin:0;padding:0}.hatena-urllist li{padding:10px 0;border-bottom:1px solid #e2e8f0;line-height:1.5}.hatena-urllist li a{color:#334155;}.hatena-urllist li a:hover{text-decoration:underline; color:#0ea5e9;}
.hatena-module-search-box .hatena-module-title{background:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-search.png?version=f5154c74e6e38109ce2f0c7b9afd51) no-repeat 0}.hatena-module-search-box .search-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;width:100%;box-sizing:border-box;position:relative; overflow:hidden;}.hatena-module-search-box .search-module-input{padding:8px 10px;color:#1e293b;background:none;border:none;outline:none;height:24px;width:210px}.hatena-module-search-box .search-module-button{width:auto;height:40px;content:"検索";vertical-align:middle;font-family:sans-serif;font-weight:bold;color:#fff;border:none;outline:none;background:#0ea5e9;padding:0 1em;position:absolute;right:0;top:0; cursor:pointer;}.hatena-module-search-box .search-module-button:hover{opacity:.9}
.hatena-module-circles .hatena-module-title,.hatena-module-links .hatena-module-title{background:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-link.png?version=f5154c74e6e38109ce2f0c7b9afd51) no-repeat 0}
.hatena-module-recent-entries .hatena-module-title{background:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-recent.png?version=f5154c74e6e38109ce2f0c7b9afd51) no-repeat 0}.hatena-module-recent-entries .recent-entries li{font-size:95%}.hatena-module-recent-entries .recent-entries li .urllist-date-link{margin-bottom:5px; color:#94a3b8; font-size:85%;}.hatena-module-recent-entries .recent-entries li .recent-entries-entry-body{margin-top:5px}.hatena-module-recent-entries .recent-entries li a{font-weight:bold;}.hatena-module-recent-entries .recent-entries li .recent-entries-category-link{font-size:85%; font-weight:normal;}
.hatena-module-archive .hatena-module-title{background:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-archive.png?version=f5154c74e6e38109ce2f0c7b9afd51) no-repeat 0}
.hatena-module-recent-comments .hatena-module-title{background:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-comment.png?version=f5154c74e6e38109ce2f0c7b9afd51) no-repeat 0}
.hatena-module-entries-access-ranking .hatena-module-title{background:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-crown.png?version=f5154c74e6e38109ce2f0c7b9afd51) no-repeat 0}
.hatena-module-category .hatena-module-title{background:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-category.png?version=f5154c74e6e38109ce2f0c7b9afd51) no-repeat 0}
.hatena-module-html .hatena-module-title{background:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-html.png?version=f5154c74e6e38109ce2f0c7b9afd51) no-repeat 0}
.pager{margin:2em 0 40px;display:block;*zoom:1;font-size:95%}.pager:after{display:block;visibility:hidden;font-size:0;height:0;clear:both;content:"."}.pager a{padding:12px 20px;background:#f8fafc;display:inline-block;width:240px;border-radius:6px;color:#0ea5e9; font-weight:bold; border: 1px solid #e2e8f0; transition: all 0.2s;}.pager a:hover{text-decoration:none; background:#f0f9ff; border-color:#bae6fd;}.pager .pager-prev{float:left;text-align:left;}.pager .pager-next{float:right;text-align:right;}
#footer{padding:30px 0;text-align:center;color:#94a3b8;line-height:1.5;font-size:80%}#footer p{margin:0}#footer a{color:#94a3b8}
.page-about dt{font-size:16px;border-bottom:1px solid #e2e8f0;margin-bottom:15px;padding:7px 0 5px 40px; font-weight:bold;}.page-about dd{margin-left:0;margin-bottom:30px}
.page-archive .archive-entries{margin-top:50px}.page-archive .archive-entries .archive-entry{margin-bottom:3em}.page-archive .archive-entries .archive-entry .categories{padding-top:15px;margin-bottom:15px}.page-archive .archive-entries .archive-entry .categories a:hover{text-decoration:none}.page-archive .archive-entries .archive-entry .date{vertical-align:middle;background:none;width:100%;height:22px;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid #e2e8f0}.page-archive .archive-entries .archive-entry .date a{font-size:16px; font-family:HuiFontP109, sans-serif; font-weight:bold; color:#64748b;}.page-archive .archive-entries .entry-title{line-height:1.4;width:560px;margin-bottom:10px;padding-left:0px;padding-bottom:0;display:inline-block;vertical-align:middle; font-weight:bold;}.page-archive .archive-entries .entry-title a{color:#0f172a;}.page-archive .archive-entries .categories{background:none;margin:0 0 .9em}.page-archive .archive-entries .categories.no-categories{margin:0}.page-archive .archive-entries .categories a{color:#0ea5e9;padding:4px 12px;background:#f0f9ff;display:inline;border-radius:4px; font-weight:bold; font-size:85%;}.page-archive .archive-entries .entry-description{margin:0 0 1em;line-height:1.7em;font-size:95%; color:#475569;}

/* ========================================
   Media Queries
   ======================================== */
@media (-webkit-min-device-pixel-ratio:2){
  body:not(.header-image-enable) #blog-title-inner{background-image:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/header-bg@2x.png?version=f5154c74e6e38109ce2f0c7b9afd51);background-size:686px 163px}
  .date{background-size:82px 81px}
  .categories{background-image:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/entry-title-border@2x.png?version=f5154c74e6e38109ce2f0c7b9afd51);background-size:639px 6px}
  .entry-content h1,.entry-content h2,.entry-content h3{background-size:25px 12px}
  .leave-comment-title{background-image:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/comment@2x.png?version=f5154c74e6e38109ce2f0c7b9afd51);background-size:175px 29px}
  .hatena-module-title{background-image:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-html@2x.png?version=f5154c74e6e38109ce2f0c7b9afd51);background-size:30px 30px}
  .hatena-module-profile .hatena-module-title{background-image:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-profile@2x.png?version=f5154c74e6e38109ce2f0c7b9afd51);background-size:30px 30px}
  .hatena-module-search-box .hatena-module-title{background-image:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-search@2x.png?version=f5154c74e6e38109ce2f0c7b9afd51);background-size:30px 30px}
  .hatena-module-links .hatena-module-title{background-image:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-link@2x.png?version=f5154c74e6e38109ce2f0c7b9afd51);background-size:30px 30px}
  .hatena-module-recent-entries .hatena-module-title{background-image:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-recent@2x.png?version=f5154c74e6e38109ce2f0c7b9afd51);background-size:30px 30px}
  .hatena-module-archive .hatena-module-title{background-image:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-archive@2x.png?version=f5154c74e6e38109ce2f0c7b9afd51);background-size:30px 30px}
  .hatena-module-recent-comments .hatena-module-title{background-image:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-comment@2x.png?version=f5154c74e6e38109ce2f0c7b9afd51);background-size:30px 30px}
  .hatena-module-entries-access-ranking .hatena-module-title{background-image:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-crown@2x.png?version=f5154c74e6e38109ce2f0c7b9afd51);background-size:30px 30px}
  .hatena-module-category .hatena-module-title{background-image:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-category@2x.png?version=f5154c74e6e38109ce2f0c7b9afd51);background-size:30px 30px}
  .hatena-module-html .hatena-module-title{background-image:url(https://cdn.blog.st-hatena.com/css/theme/handwriting/img/side-html@2x.png?version=f5154c74e6e38109ce2f0c7b9afd51);background-size:30px 30px}
  .page-about dt,.page-archive .archive-entries .entry-title{background-size:25px 12px}
}

/* ========================================
   カスタマイズ機能（目次・マーカー・吹き出し・メニュー）
   ======================================== */
/* 目次 (UIライクなデザイン) */
.entry-content .table-of-contents {
  position: relative;
  margin: 0 0 2em;
  padding: 3em 1.5em 1.5em;
  background: #f8fafc;
  font-size: 95%;
  border-top: 4px solid #1e293b; 
  border-right: 1px solid #e2e8f0;
  border-bottom: 1px solid #e2e8f0;
  border-left: 1px solid #e2e8f0;
  border-radius: 4px;
  color: #0ea5e9;
  box-shadow: 0 1px 3px rgba(0,0,0,0.02);
}
.entry-content .table-of-contents::before {
  content: "Table of Contents";
  display: block;
  position: absolute;
  top: 14px;
  left: 50px;
  margin: 0;
  text-align: start;
  color: #1e293b;
  font-size: 110%;
  font-weight: bold;
  font-family: -apple-system, sans-serif;
}
.entry-content .table-of-contents::after {
  content: "\f039";
  font-family: blogicon;
  display: block;
  font-size: 100%;
  position: absolute;
  line-height: 30px;
  top: 10px;
  left: 12px;
  width: 30px;
  height: 30px;
  text-align: center;
  vertical-align: middle;
  border-radius: 4px;
  color: #fff;
  background: #1e293b; 
}
.entry-content .table-of-contents li {
  margin: .4em 0 0.8em 1.5em;
  list-style-type: decimal;
  line-height: 1.6em;
  font-weight: bold;
  color: #334155;
}
.entry-content .table-of-contents li ul {
  margin: 0.5em 0 1em .5em;
  padding: 0;
}
.entry-content .table-of-contents li ul li {
  margin: .4em 0 0 1em;
  list-style-type: none;
  font-weight: normal;
  font-size: 95%;
}
.entry-content .table-of-contents li ul li::before {
  content: "\f006";
  font-family: blogicon;
  margin-right: .5em;
  color: #cbd5e1;
}
.entry-content .table-of-contents li ul li ul li {
  font-size: 90%;
}
.entry-content .table-of-contents a {
  color: #0ea5e9;
  line-height: 1.6em;
  text-decoration: none;
}
.entry-content .table-of-contents a:hover {
  text-decoration: underline;
}

/* マーカー線 */
.marker-yellow {
  background: linear-gradient(transparent 60%, #fef08a 0%);
  font-weight: bold;
} 
.marker-red {
  background: linear-gradient(transparent 60%, #fecdd3 0%);
  font-weight: bold;
}
.marker-blue {
  background: linear-gradient(transparent 60%, #bae6fd 0%);
  font-weight: bold;
} 

/* 吹き出し (クリーンなフラットデザイン) */
.entry-content .l-fuki,
.entry-content .r-fuki {
  position: relative;
  width: calc(100% - 82px);
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  padding: 16px 20px;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
  box-shadow: 0 2px 4px rgba(0,0,0,.02);
  background-color: #fff;
  z-index: 1;
}
.entry-content .l-fuki {
  margin: 20px auto 36px 0;
}
.entry-content .r-fuki {
  margin: 20px 0 36px auto;
}
.entry-content .l-fuki::before,
.entry-content .r-fuki::before {
  position: absolute;
  content: "";
  top: 16px;
  width: 10px;
  height: 10px;
  border-right: 1px solid #e2e8f0;
  border-bottom: 1px solid #e2e8f0;
  background-color: #fff;
  z-index: 2;
}
.entry-content .l-fuki::before {
  right: -6px;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
.entry-content .r-fuki::before {
  left: -6px;
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
}
.entry-content .l-fuki::after,
.entry-content .r-fuki::after {
  position: absolute;
  content: "";
  width: 60px;
  height: 60px;
  top: -6px;
  border-radius: 50%;
  border: 2px solid #fff;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  box-shadow: 0 2px 6px rgba(0,0,0,0.08);
  box-sizing: border-box;
}
.entry-content .l-fuki::after {
  right: -82px;
}
.entry-content .r-fuki::after {
  left: -82px;
}

@media screen and (min-width: 478px) {
  .entry-content .l-fuki::after,
  .entry-content .r-fuki::after {
    width: 80px;
    height: 80px;
  }
  .entry-content .l-fuki,
  .entry-content .r-fuki {
    width: calc(100% - 106px);
  }
  .entry-content .l-fuki::after {
    right: -106px;
  }
  .entry-content .r-fuki::after {
    left: -106px;
  }
}

.sennin::after {background-image:url(https://cdn-ak.f.st-hatena.com/images/fotolife/s/skume/20221031/20221031011317.png);}
.kaeru::after {background-image:url(https://cdn-ak.f.st-hatena.com/images/fotolife/s/skume/20221031/20221031011332.png);}
.neko::after {background-image:url(https://cdn-ak.f.st-hatena.com/images/fotolife/s/skume/20221031/20221031011314.png);}

/* メニュー (グローバルナビゲーション) */
#menu {
  position: relative;
  width: 100%;
  padding-left: 0px;
  height: 48px; 
  background: #1e293b; 
}

#menu li {
  list-style-type: none;
  float: left;
  height: 48px;
  text-align: center;
  width: 20%;
}
#menu li a {
  display: block;
  color: #f8fafc;
  font-size: 14px;
  font-family: -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight: bold;
  line-height: 48px;
  text-decoration: none;
  letter-spacing: 0.05em;
  transition: all 0.2s ease;
}
#menu li:hover a {
  color: #0ea5e9;
  background: #0f172a; 
}

.menu-bar{
  display: none;
}