/* <system section="theme" selected="reach"> */
@charset "UTF-8";/*!
  Theme: Reach
  Author: Hatena Blog Team
  Responsive: yes
*//*! normalize.css v2.1.0 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em;margin:.67em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}hr{box-sizing:content-box;height:0}mark{background:#ff0;color:#000}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre-wrap}q{quotes:"“" "”" "‘" "’"}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:0}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}button,input{line-height:normal}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}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}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}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing: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}.border-box{-ms-box-sizing:border-box;box-sizing:border-box}.ellipsis{white-space:nowrap;-webkit-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}html,body{font-family:Helvetica Neue,Helvetica,Arial,Hiragino Kaku Gothic Pro,Meiryo,MS PGothic,sans-serif;color:#555}body{background-color:#e2e2e2;background-image:url(https://cdn.blog.st-hatena.com/css/theme/reach/images/bg.png?version=91c41b360e6a7ae97c782b55fe9425);background-repeat:repeat}.customized-background-image{background-size:inherit!important}a{color:#429bb2}a:hover{color:#328094}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:#333;text-decoration:none}a.keyword{text-decoration:none;border-bottom:1px dotted #d5d5d5;color:#555}.btn{display:inline-block;*display: inline;*zoom: 1;padding:4px 10px;margin-bottom:0;line-height:18px;color:#555;background-color:#fff;border:1px solid #d5d5d5;text-align:center;vertical-align:middle;cursor:pointer;font-size:12px;text-decoration:none;font-weight:700;text-decoration:none!important;-webkit-border-top-right-radius:2px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:2px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-radius:2px;-moz-background-clip:padding;background-clip:padding-box}.btn:hover{text-decoration:none!important;color:#429bb2}.btn-primary{background-color:#429bb2;color:#fff;font-weight:400;border:1px solid transparent}.btn-primary:hover{background-color:#328094;color:#fff}.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{background-color:#333!important;color:#fff;position:sticky;top:0;width:100%}#container{margin-bottom:30px}#content{width:960px;margin-left:auto;margin-right:auto;display:block;*zoom: 1}#content:after{display:block;visibility:hidden;font-size:0;height:0;clear:both;content:"."}#main{width:620px;float:right}#box2{width:320px;float:left}#blog-title{margin:0 0 20px;padding:30px 0;background:#fff;border-bottom:1px solid #d5d5d5;line-height:1.3}#blog-title-inner{width:960px;margin-left:auto;margin-right:auto}#title{margin:0;font-size:160%}#title a{color:#429bb2}#blog-description{font-weight:400;font-size:80%;margin:5px 0 0;line-height:1.5}.header-image-enable #blog-title{margin:20px auto;padding:0;width:960px;border-bottom:none}.header-image-enable #blog-title-inner{width:958px;background-color:#fff;-webkit-border-top-right-radius:4px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-radius:4px;-moz-background-clip:padding;background-clip:padding-box;border:1px solid #d5d5d5}.header-image-enable #title{padding-top:70px}.header-image-enable #title,.header-image-enable #blog-description{padding-left:20px}#top-box{margin-left:auto;margin-right:auto;font-size:90%;width:960px}.entry{position:relative;margin-bottom:20px;background:#fff;-webkit-border-top-right-radius:4px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-radius:4px;-moz-background-clip:padding;background-clip:padding-box;border:1px solid #d5d5d5}.entry .entry-inner{padding:20px}.entry-header{padding:0 0 10px;margin-bottom:20px;border-bottom:5px solid #d5d5d5;position:relative}.entry-title{margin:0;line-height:1.3;font-size:160%}.date{margin-bottom:10px}.date a{font-weight:700;text-decoration:none;font-size:80%}.date-last-updated{font-size:80%;font-weight:700;color:#789dae}.categories{margin-top:10px;font-size:80%}.categories a{display:inline-block;*display: inline;*zoom: 1;padding:4px 10px;margin-bottom:0;line-height:18px;color:#555;background-color:#fff;border:1px solid #d5d5d5;text-align:center;vertical-align:middle;cursor:pointer;font-size:12px;text-decoration:none;font-weight:700;text-decoration:none!important;-webkit-border-top-right-radius:2px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:2px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-radius:2px;-moz-background-clip:padding;background-clip:padding-box;background-color:#429bb2;color:#fff;font-weight:400;border:1px solid transparent;padding:1px 7px!important;font-size:11px!important}.categories a:hover{text-decoration:none!important;color:#429bb2}.categories a:hover{background-color:#328094;color:#fff}.categories.no-categories{margin:0}.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:#555;background-color:#fff;border:1px solid #d5d5d5;text-align:center;vertical-align:middle;cursor:pointer;font-size:12px;text-decoration:none;font-weight:700;text-decoration:none!important;-webkit-border-top-right-radius:2px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:2px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-radius:2px;-moz-background-clip:padding;background-clip:padding-box}.entry-header-menu a:hover{text-decoration:none!important;color:#429bb2}.entry-content{font-size:95%;line-height:1.7;padding-bottom:10px;border-bottom:1px solid #d5d5d5}.entry-content p{margin:0 0 1em}.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 .8em;line-height:1.5}.entry-content h1{font-size:160%}.entry-content h2{font-size:150%}.entry-content h3{font-size:140%}.entry-content h4{font-size:130%}.entry-content h5{font-size:110%}.entry-content h6{font-size:100%}.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6,.entry-content .footnote-number{scroll-margin-top:56px}.entry-content table{border-collapse:collapse;border-spacing:0;margin-bottom:1em}.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 #d5d5d5;margin:0 0 10px;padding:20px}.entry-content blockquote p{margin-top:0;margin-bottom:0}.entry-content pre{border:1px solid #ddd;margin:0 0 10px;padding:15px;background:#f0f0f0;font-size:95%;line-height:1.5;-webkit-border-top-right-radius:4px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-radius:4px;-moz-background-clip:padding;background-clip:padding-box}.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-footer{margin-top:10px}.entry-footer-section{font-size:80%;color:#999}.entry-footer-section a{color:#999}.social-buttons,.entry-footer-html{margin:10px 0}.comment-box ul{list-style:none;margin:0 0 15px;padding:0;font-size:90%}.comment-box li{padding:10px 0 10px 60px;border-bottom:1px solid #d5d5d5;position:relative}.comment-box li:first-child{border-top:1px solid #d5d5d5}.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;-webkit-border-top-right-radius:3px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:3px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-radius:3px;-moz-background-clip:padding;background-clip:padding-box}.comment-user-name{margin:0 0 10px;font-weight:700}.comment-content{font-size:90%;margin:0 0 10px;word-wrap:break-word}.comment-content p{margin:0 0 10px}.comment-metadata{font-size:80%;color:#999;margin:0}.comment-metadata a{color:#999}.leave-comment-title{display:inline-block;*display: inline;*zoom: 1;padding:4px 10px;margin-bottom:0;line-height:18px;color:#555;background-color:#fff;border:1px solid #d5d5d5;text-align:center;vertical-align:middle;cursor:pointer;font-size:12px;text-decoration:none;font-weight:700;text-decoration:none!important;-webkit-border-top-right-radius:2px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:2px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-radius:2px;-moz-background-clip:padding;background-clip:padding-box}.leave-comment-title:hover{text-decoration:none!important;color:#429bb2}#box2{font-size:85%;line-height:1.5}#box2 .hatena-module{padding:10px;-webkit-border-top-right-radius:4px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-radius:4px;-moz-background-clip:padding;background-clip:padding-box;border:1px solid #d5d5d5}.hatena-module{background:#fff;margin-bottom:20px}.hatena-module-title{font-weight:700;margin:5px 0 15px;font-size:110%;color:#333}.hatena-module-title a{color:#333;text-decoration:none}.hatena-module-title a:hover{text-decoration:underline}.hatena-module-profile .profile-icon{float:left;margin:0 10px 10px 0;-webkit-border-top-right-radius:5px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:5px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-radius:5px;-moz-background-clip:padding;background-clip:padding-box}.hatena-module-profile .id{display:block;font-weight:700;font-size:110%;margin-bottom:5px}.hatena-module-profile .profile-description{font-size:95%}.hatena-module-profile .profile-description p{margin-top:0}.hatena-urllist{list-style:none;margin:0;padding:0}.hatena-urllist li{padding:8px 0;border-bottom:1px solid #d5d5d5;line-height:1.5}.hatena-urllist li:first-child{padding-top:0}.hatena-urllist li a{text-decoration:none}.hatena-urllist li a:hover{text-decoration:underline}.hatena-module-search-box .search-form{border:1px solid #d5d5d5;-webkit-border-top-right-radius:3px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:3px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-radius:3px;-moz-background-clip:padding;background-clip:padding-box;width:100%;-ms-box-sizing:border-box;box-sizing:border-box;position:relative}.hatena-module-search-box .search-module-input{padding:5px;color:#555;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=91c41b360e6a7ae97c782b55fe9425) no-repeat right center;border:none;outline:none;text-indent:-9999px;position:absolute;top:5px;right:5px;-moz-opacity:.5;-khtml-opacity:.5;-webkit-opacity:.5;opacity:.5;filter:alpha(opacity=50)}.hatena-module-search-box .search-module-button:hover{-moz-opacity:.85;-khtml-opacity:.85;-webkit-opacity:.85;opacity:.85;filter:alpha(opacity=85)}.pager{margin:20px 0;padding:20px 0;text-align:center;border-top:1px solid #d5d5d5;border-bottom:1px solid #d5d5d5;font-size:80%;font-weight:700}.pager a{color:#555;text-decoration:none}.pager a:hover{text-decoration:underline}.pager .pager-next{margin-left:1em}#top-editarea,#bottom-editarea,.breadcrumb{width:938px;margin-left:auto;margin-right:auto;display:block;*zoom: 1;padding:10px;background:#fff;border:1px solid #d5d5d5;-webkit-border-top-right-radius:4px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-radius:4px;-moz-background-clip:padding;background-clip:padding-box;margin-bottom:20px}#top-editarea:after,#bottom-editarea:after,.breadcrumb:after{display:block;visibility:hidden;font-size:0;height:0;clear:both;content:"."}#footer{padding:30px 0;text-align:center;color:#999;line-height:1.5;font-size:80%}#footer p{margin:0}#footer a{color:#999}.page-about dt{font-size:16px;font-weight:700;border-bottom:1px solid #dfdfdf;margin-bottom:5px}.page-about dd{margin-left:0;margin-bottom:30px}.page-archive #main{padding:20px;background:#fff;margin-bottom:20px;width:578px;-webkit-border-top-right-radius:4px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-radius:4px;-moz-background-clip:padding;background-clip:padding-box;border:1px solid #d5d5d5}.page-archive #main section{margin-bottom:20px}.page-archive #main .entry-title{margin-bottom:5px;text-decoration:none;font-size:80%;color:#333;font-size:100%;font-weight:700}.page-archive #main .entry-title a{color:#429bb2}.page-archive #main ul{list-style:none;margin:0;padding:0}.page-archive #main ul li{padding:8px 0;border-bottom:1px solid #d5d5d5;line-height:1.5}.page-archive #main ul li:first-child{padding-top:0}.page-archive #main ul li a{text-decoration:none}.page-archive #main ul li a:hover{text-decoration:underline}.page-archive .categories{margin:10px 0}.page-archive .categories a{display:inline-block;*display: inline;*zoom: 1;padding:4px 10px;margin-bottom:0;line-height:18px;color:#555;background-color:#fff;border:1px solid #d5d5d5;text-align:center;vertical-align:middle;cursor:pointer;font-size:12px;text-decoration:none;font-weight:700;text-decoration:none!important;-webkit-border-top-right-radius:2px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:2px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-radius:2px;-moz-background-clip:padding;background-clip:padding-box;font-weight:400}.page-archive .categories a:hover{text-decoration:none!important;color:#429bb2}@media(-webkit-min-device-pixel-ratio:2){body{background:url(https://cdn.blog.st-hatena.com/css/theme/reach/images/bg@2x.png?version=91c41b360e6a7ae97c782b55fe9425);background-size:200px 200px}.hatena-module-search-box .search-module-button{background:transparent url(https://cdn.blog.st-hatena.com/images/theme/search@2x.png?version=91c41b360e6a7ae97c782b55fe9425) no-repeat right center;background-size:20px 20px}}@media(min-width:768px)and (max-width:1024px){#content,#blog-title-inner,.header-image-enable #blog-title,.header-image-enable #blog-title-inner,#top-box{width:724px}#top-editarea,#bottom-editarea{width:704px}#main{width:460px}.page-archive #main{width:420px}#box2{width:245px}}@media(max-width:767px){#globalheader-container{position:static}#blog-title{margin-top:0;padding-top:30px}#container{word-wrap:break-word;overflow:hidden}#content,#blog-title-inner,.header-image-enable #blog-title,#top-box,#top-editarea,#bottom-editarea{width:93.75%}#content img,#blog-title-inner img,.header-image-enable #blog-title img,#top-box img,#top-editarea img,#bottom-editarea img{max-width:100%}.header-image-enable #blog-title-inner{width:auto}.header-image-enable #title,.header-image-enable #blog-description{padding-right:20px}#main{width:100%;float:none}.page-archive #main,.page-archive .breadcrumb{width:100%;float:none;box-sizing:border-box}.page-archive #top-box,.page-archive #bottom-editarea{width:93.75%;box-sizing:border-box}#box2{width:100%;float:none}#box2-inner{width:100%}.hatena-module{float:none}}

/* </system> */

/* <system section="background" selected="undefined"> */

/* </system> */
/* Ventiaデザイン最適化カラースキーム */
:root {
  --main-color: #2c3e50;
  --accent-color: #3498db;
  --emphasis-color: #e74c3c;
  --bg-color: #f9f9f9;
  --text-color: #333;
  --border-color: #eee;
}

/* ダークモード対応 */
@media (prefers-color-scheme: dark) {
  :root {
    --main-color: #1a2634;
    --accent-color: #2980b9;
    --emphasis-color: #c0392b;
    --bg-color: #1a1a1a;
    --text-color: #eee;
    --border-color: #333;
  }
}

/* タイポグラフィ設定 - 2025年最適化版 */
.entry-title {
  font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', sans-serif;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.4;
}

.entry-content {
  font-family: 'Helvetica Neue', Arial, 'Hiragino Sans', sans-serif;
  line-height: 1.9;
  font-size: 16px;
  letter-spacing: 0.5px;
  word-spacing: 1px;
}

/* 見出しスタイル - Font Awesome 6対応 */
.entry-content h2 {
  border-left: 5px solid var(--accent-color);
  padding-left: 12px;
  font-size: 1.4rem;
  margin: 2.5em 0 1.2em;
}

.entry-content h3 {
  border-bottom: 2px solid var(--border-color);
  padding-bottom: 6px;
  font-size: 1.2rem;
  margin: 2em 0 1em;
}

.entry-content h4 {
  font-size: 1.1rem;
  margin: 1.8em 0 0.8em;
  color: var(--main-color);
}

/* スマホ表示調整 */
@media screen and (max-width: 768px) {
  .entry-content {
    font-size: 15px;
    line-height: 1.8;
  }
  
  .entry-content h2 {
    font-size: 1.3rem;
  }
  
  .entry-content h3 {
    font-size: 1.1rem;
  }
}

/* テーブルの横スクロール対応 */
.table-responsive {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin-bottom: 1.5em;
}

/* 吹き出しスタイルの改善 */
.balloon-left {
  display: flex;
  align-items: flex-start;
  margin: 2em 0;
}

.balloon-image {
  margin: 0;
  min-width: 60px;
  width: 60px;
}

.balloon-text {
  position: relative;
  background: var(--bg-color);
  border: 2px solid var(--border-color);
  border-radius: 10px;
  padding: 1em;
  margin-left: 15px;
}

.balloon-text:before,
.balloon-text:after {
  content: "";
  position: absolute;
  left: -10px;
  top: 20px;
  border: 5px solid transparent;
}

.balloon-text:before {
  border-right: 10px solid var(--border-color);
  margin-left: -2px;
}

.balloon-text:after {
  border-right: 10px solid var(--bg-color);
}

/* ボックス共通スタイル */
.information-box,
.success-box,
.warning-box,
.solution-box {
  margin: 2em 0;
  padding: 1.5em;
  border-radius: 5px;
  position: relative;
}

/* 情報ボックス */
.information-box {
  background-color: rgba(52, 152, 219, 0.1);
  border-left: 5px solid var(--accent-color);
}

/* 成功ボックス */
.success-box {
  background-color: rgba(46, 204, 113, 0.1);
  border-left: 5px solid #2ecc71;
}

/* 警告ボックス */
.warning-box {
  background-color: rgba(231, 76, 60, 0.1);
  border-left: 5px solid var(--emphasis-color);
}

/* 対策ボックス */
.solution-box {
  background-color: rgba(241, 196, 15, 0.1);
  border-left: 5px solid #f1c40f;
}

/* モバイル最適化 */
@media (max-width: 480px) {
  .entry-content {
    padding: 0 10px;
  }
  
  a, button {
    min-height: 44px;
    min-width: 44px;
    display: inline-flex;
    align-items: center;
  }
  
  .table-responsive table {
    font-size: 14px;
  }
}

/* 引用番号リンクの44pxタップ領域問題の修正（2026-08-07）
   上の a, button は全<a>に inline-flex + 44px を当てるため、
   引用番号 <sup><a href="#refN"> と href 無しのアンカー先 <a id="refN">
   まで44px角の箱になり行送りが壊れる。
   WCAG 2.5.8 はインラインリンクを対象外と定めるため除外してよい。 */
@media (max-width: 480px) {
  .entry-content sup a,
  .entry-content a:not([href]) {
    display: inline;
    min-width: 0;
    min-height: 0;
    line-height: inherit;
    vertical-align: baseline;
  }
  .entry-content sup a { padding: 0 1px; }
}

/* 本文中インラインリンクの44pxタップ領域の解除（2026-08-07）
   上の a, button の inline-flex は行内で分割できない原子的インラインボックスに
   なるため、文中リンクが1行に押し込まれて行送りが壊れる。
   WCAG 2.5.8 はインラインリンクを対象外と定めるので解除してよい。
   タップ領域は上下 padding 6px で確保する（inline 要素の上下 padding は
   行の高さを変えずにヒット領域だけ広げる。17px → 29px）。
   見出しアンカーと画像リンクは箱のままが正しいので除外。
   :has() 非対応ブラウザではブロック全体が無効になり従来表示へ戻るだけ。
   ロールバックはこのブロックの削除のみ。詳細と実測値:
   medical-content/blog/hatena-design-css/patch_inline_link_tap_target.css */
@media (max-width: 480px) {
  .entry-content a[href]:not(.heading-anchor-link):not(:has(img)) {
    display: inline;
    min-width: 0;
    min-height: 0;
    line-height: inherit;
    vertical-align: baseline;
    padding: 6px 0;
  }

  /* 引用番号は上のルールと同詳細度・後置で padding を戻す */
  .entry-content sup a[href]:not(.heading-anchor-link) {
    padding: 0 1px;
  }
}

/* === ichisouzo-home-20261013: reversible homepage layer === */
#blog-title{height:auto!important;max-width:960px;width:calc(100% - 32px);margin:24px auto 16px;border-radius:12px;overflow:hidden;box-sizing:border-box;}
#blog-title-inner{height:168px!important;min-height:0!important;background-size:cover!important;background-position:center 47%!important;display:flex;align-items:center;}
#blog-title-inner:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,36,51,.8),rgba(7,36,51,.18));pointer-events:none;}
#blog-title-content{position:relative!important;top:auto!important;left:auto!important;width:100%;padding:24px!important;box-sizing:border-box;}
#title{margin:0 0 9px!important;line-height:1.45!important;font-size:27px!important;}
#title a{display:block;min-height:0;color:#fff!important;text-shadow:0 1px 3px #123;}
#blog-description{margin:0!important;color:#fff!important;font-size:14px!important;line-height:1.6!important;}
#top-editarea{width:calc(100% - 32px)!important;max-width:960px;box-sizing:border-box;padding:0!important;margin:0 auto 24px!important;border:0!important;background:transparent!important;box-shadow:none!important;}
.ich-nav-wrap{background:#fff;border:1px solid #dce6ec;border-radius:10px;overflow:hidden;}
.ich-primary-nav{display:flex;align-items:center;gap:4px 16px;flex-wrap:wrap;padding:12px 16px;}
.ich-primary-nav>a{font-size:15px;font-weight:700;color:#174c64;text-decoration:none;display:inline-flex;align-items:center;min-height:40px;}
.ich-primary-nav>a:hover,.ich-external-nav a:hover,.ich-topic-nav a:hover{text-decoration:underline;}
.ich-primary-nav .ich-nav-home{color:#23384d;}
.ich-search{display:flex;flex:1 1 255px;gap:6px;max-width:360px;margin-left:auto;}
.ich-search input{box-sizing:border-box;width:0;min-width:0;flex:1;border:1px solid #bbcdd8;border-radius:6px;padding:9px 10px;font:inherit;font-size:14px;background:#fff;color:#23384d;}
.ich-search button{border:0;border-radius:6px;padding:9px 14px;background:#1b607b;color:#fff;font-size:14px;cursor:pointer;min-width:54px;min-height:40px;}
.ich-external-nav{display:flex;flex-wrap:wrap;gap:4px 20px;padding:8px 16px;border-top:1px solid #edf1f4;}
.ich-external-nav a{color:#516879;font-size:13px;text-decoration:none;min-height:28px;display:inline-flex;align-items:center;}
.ich-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.ich-home-only{display:none;}
.page-index .ich-home-only{display:block;}
.ich-home-intro{padding:21px 0 0;color:#23384d;}
.ich-intro{margin:0 0 8px;font-size:17px;line-height:1.9;font-weight:600;}
.ich-author{margin:0 0 16px;font-size:13px;line-height:1.8;color:#526777;}
.ich-author a{color:#1b607b;display:inline;min-height:0;min-width:0;}
.ich-topic-nav{display:flex;flex-wrap:wrap;gap:8px;}
.ich-topic-nav a{background:#fff;border:1px solid #cbdbe4;border-radius:20px;padding:6px 13px;font-size:13px;color:#24536a;text-decoration:none;min-height:30px;box-sizing:border-box;display:inline-flex;align-items:center;}
.ich-all-categories{font-size:13px;margin-top:12px;line-height:1.8;}
.ich-all-categories summary{cursor:pointer;color:#24536a;padding:7px 0;}
#ich-category-list{background:#fff;border:1px solid #dce6ec;border-radius:8px;padding:12px;}
#ich-category-list ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 12px;}
#ich-category-list li{margin:0;padding:0;border:0;overflow-wrap:anywhere;}
#ich-category-list a{display:block;min-height:30px;min-width:0;font-size:13px;line-height:1.6;color:#24536a;text-decoration:none;}
.ich-featured{margin-top:20px;color:#23384d;}
.ich-featured h2,.ich-latest-title{font-size:19px;line-height:1.5;margin:0 0 12px;font-weight:700;}
.ich-featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.ich-feature{display:flex!important;flex-direction:column;align-items:flex-start!important;gap:8px;min-width:0;min-height:0;box-sizing:border-box;padding:16px;background:#fff;border:1px solid #ccdde6;border-top:3px solid #2e8194;border-radius:8px;text-decoration:none!important;color:#253f50;line-height:1.6;}
.ich-feature:hover{border-color:#2e8194;background:#f5fbfd;}
.ich-eyebrow{font-size:11px;color:#2d728a;font-weight:700;letter-spacing:.04em;}
.ich-feature strong{font-size:16px;line-height:1.6;}
.ich-feature>span:last-child{font-size:12px;color:#526777;}
.ich-latest-title{margin:26px 0 0!important;color:#23384d;}
body.page-index{background:#f3f6f8;}
.page-index #content{max-width:960px;width:calc(100% - 32px);margin:0 auto;}
.page-index #wrapper,.page-index #main,.page-index #main-inner{width:100%;max-width:100%;float:none;box-sizing:border-box;margin:0;padding:0;border:0;background:transparent;box-shadow:none;}
.page-index #box2{display:none;}
.page-index .archive-entries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}
.page-index .archive-entry{box-sizing:border-box;min-width:0;display:flex;flex-direction:column;margin:0;padding:0;background:#fff;border:1px solid #dce6ec;border-radius:10px;overflow:hidden;}
.page-index .archive-entry-header{padding:16px 18px 6px;}
.page-index .archive-date{font-size:12px;line-height:1.6;margin:0 0 8px;}
.page-index .archive-entry .entry-title{font-size:21px;line-height:1.55;margin:0;overflow-wrap:anywhere;}
.page-index .archive-entry .entry-title a{color:#203e50;text-decoration:none;display:block;min-width:0;min-height:0;}
.page-index .archive-entry .entry-title a:hover{text-decoration:underline;}
.page-index .archive-entry>.categories{padding:0 18px;margin:0;display:flex;flex-wrap:wrap;gap:5px;}
.page-index .archive-entry>.categories a{font-size:11px;line-height:1.5;padding:3px 7px;min-height:0;min-width:0;margin:0;display:inline-block;border-radius:3px;}
.page-index .entry-thumb-link{order:-1;display:block;min-height:0;min-width:0;}
.page-index .entry-thumb{float:none;width:100%;height:220px;margin:0;background-size:cover;background-position:center;}
.page-index .archive-entry-body{padding:10px 18px 16px;box-sizing:border-box;}
.page-index .entry-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;font-size:14px;line-height:1.85;color:#4d6270;margin:0 0 10px;}
.page-index .archive-entry .social-buttons{font-size:11px;}
.page-index .pager{margin:24px 0;}
@media(max-width:700px){
#blog-title{margin-top:16px;width:calc(100% - 24px);}
#blog-title-inner{height:150px!important;}
#blog-title-content{padding:17px!important;}
#title{font-size:21px!important;}
#blog-description{font-size:12px!important;}
#top-editarea,.page-index #content{width:calc(100% - 24px)!important;}
.ich-primary-nav{gap:2px 15px;padding:10px 12px;}
.ich-primary-nav>a{font-size:14px;}
.ich-search{flex-basis:100%;max-width:none;margin:5px 0 0;}
.ich-search input{font-size:16px;}
.ich-external-nav{gap:1px 15px;padding:7px 12px;}
.ich-external-nav a{font-size:12px;}
.ich-intro{font-size:15px;line-height:1.85;}
.ich-author{font-size:12px;}
.ich-topic-nav{gap:6px;}
.ich-topic-nav a{font-size:12px;padding:5px 10px;}
#ich-category-list ul{grid-template-columns:repeat(2,minmax(0,1fr));}
.ich-featured-grid{grid-template-columns:1fr;gap:9px;}
.ich-feature{padding:12px 14px;gap:4px;}
.ich-feature strong{font-size:15px;}
.ich-feature br{display:none;}
.page-index .archive-entries{grid-template-columns:1fr;gap:18px;}
.page-index .entry-thumb{height:200px;}
.page-index .archive-entry .entry-title{font-size:19px;line-height:1.6;}
.page-index .archive-entry-header{padding:14px 15px 7px;}
.page-index .archive-entry>.categories{padding:0 15px;}
.page-index .archive-entry-body{padding:10px 15px 15px;}
}
/* === end ichisouzo-home-20261013 === */

/* Reach theme specificity corrections verified at narrow widths */
#title{padding:0!important;}
#blog-description{padding:0!important;}
.page-index .archive-entry .entry-title{font-size:21px!important;}
.page-index .archive-entry .entry-title a{color:#203e50!important;}
@media(max-width:700px){.page-index .archive-entry .entry-title{font-size:19px!important;}}

/* === ichisouzo-discovery-20261013: reader pathways === */
.ich-external-nav{align-items:center;gap:7px 18px;padding:10px 16px;background:#f3f8fb;}
a.ich-lab-home-cta,.ich-external-nav a.ich-lab-home-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;box-sizing:border-box;min-height:44px;min-width:0;padding:10px 16px;border-radius:7px;background:#185c72;color:#fff!important;font-size:14px;font-weight:700;line-height:1.5;text-decoration:none!important;}
a.ich-lab-home-cta:hover,.ich-external-nav a.ich-lab-home-cta:hover{background:#10485c;}
.ich-subscribe-inline{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin:14px 0;color:#526777;font-size:13px;line-height:1.7;}
.ich-subscribe-inline iframe{width:150px!important;height:28px!important;max-width:100%;border:0;display:block;}
.ich-popular{margin-top:22px;padding:18px;background:#fff;border:1px solid #d6e3eb;border-radius:10px;color:#23384d;scroll-margin-top:20px;}
.ich-popular-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 16px;margin-bottom:10px;}
.ich-popular-heading h2{margin:0;font-size:19px;line-height:1.6;}
.ich-popular-heading>span{font-size:12px;color:#5a7080;}
.ich-popular ol{padding-left:27px;margin:0;}
.ich-popular li{padding:6px 0 6px 3px;line-height:1.65;border-bottom:1px solid #edf2f5;}
.ich-popular li::marker{color:#2b778f;font-size:13px;font-weight:bold;}
.ich-popular li a{color:#254b61;text-decoration:none;font-size:14px;line-height:1.7;display:block;min-width:0;min-height:0;overflow-wrap:anywhere;}
.ich-popular li a:hover{text-decoration:underline;}
.ich-popular-more summary{cursor:pointer;font-size:13px;color:#24536a;padding:11px 0;}
.ich-popular-note{margin:12px 0 7px;font-size:11px;color:#667d8b;line-height:1.6;}
.ich-hatena-discovery{display:flex;align-items:center;flex-wrap:wrap;gap:4px 16px;font-size:12px;color:#667d8b;}
.ich-hatena-discovery a{display:inline;min-height:0;min-width:0;color:#476c80;font-size:12px;line-height:1.7;text-decoration:underline;}
.ich-reader-cta{margin:28px 0;padding:22px;border:1px solid #c6d8e5;border-radius:10px;background:#f3f8fc;color:#23384d;line-height:1.8;}
.ich-reader-cta p{margin:0 0 12px;font-size:15px;}
.ich-reader-cta .ich-reader-title{font-size:18px;font-weight:bold;}
.ich-reader-cta .ich-reader-links{margin:14px 0 0;font-size:13px;}
.ich-reader-links a{display:inline;min-height:0;min-width:0;color:#24536a;font-size:13px;}
.ich-reader-cta .ich-subscribe-inline{margin-top:18px;}
@media(max-width:700px){
.ich-primary-nav{column-gap:13px;}
.ich-external-nav{padding:10px 12px;gap:7px 14px;}
.ich-external-nav a.ich-lab-home-cta{flex-basis:100%;justify-content:space-between;font-size:14px;}
.ich-popular{padding:14px;}
.ich-popular-heading h2{font-size:18px;}
.ich-popular-heading>span{font-size:11px;}
.ich-reader-cta{padding:18px;}
}
/* === end ichisouzo-discovery-20261013 === */

/* === ichisouzo-home-order-20261015: featured links below the current article list === */
.page-index #bottom-editarea{width:calc(100% - 32px);max-width:960px;box-sizing:border-box;padding:0;margin:28px auto 32px;border:0;background:transparent;box-shadow:none;}
.ich-home-bottom .ich-featured{margin-top:0;}
.ich-home-bottom .ich-hatena-discovery{margin-top:20px;padding:16px 0 0;border-top:1px solid #d7e2e9;}
body:not(.page-index) #bottom-editarea:has(>.ich-home-bottom){display:none;}
@media(max-width:700px){.page-index #bottom-editarea{width:calc(100% - 24px);margin-top:24px;}}
/* === end ichisouzo-home-order-20261015 === */

/* === ichisouzo-group-support-20261015: official banners and save button === */
.page-entry .entry-footer{display:flex;flex-direction:column;}
.page-entry .entry-footer > .customized-footer{order:-1;width:100%;box-sizing:border-box;display:flex;flex-direction:column;}
.page-entry .customized-footer > .entry-footer-html{order:-1;width:100%;box-sizing:border-box;}
.ich-group-support,.ich-save-article{box-sizing:border-box;margin:24px 0;padding:20px;border:1px solid #d8e2e8;border-radius:10px;background:#f5f9fb;color:#274552;}
.ich-group-support h2,.ich-save-article h2{margin:0 0 10px;padding:0;border:0;background:none;font-size:19px;line-height:1.5;}
.ich-group-support p,.ich-save-article p{margin:0 0 14px;font-size:15px;line-height:1.8;}
.ich-group-banner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.ich-group-banner-grid .embed-group{margin:0;width:auto;max-width:none;border:1px solid #b9cdd6;border-radius:8px;background:#fff;overflow:hidden;}
.ich-group-banner-grid .embed-group-link{display:flex;align-items:center;gap:12px;box-sizing:border-box;min-height:84px;width:100%;max-width:none;box-shadow:none;border-radius:0;padding:12px;text-decoration:none;color:#184f63;}
.ich-group-banner-grid .embed-group-link:hover,.ich-group-banner-grid .embed-group-link:focus-visible{background:#eaf5fa;outline:2px solid #26718a;outline-offset:-2px;}
.ich-group-banner-grid .embed-group-icon{flex:0 0 40px;width:40px;margin:0;}
.ich-group-banner-grid .embed-group-icon img{display:block;width:40px;height:40px;margin:0;}
.ich-group-banner-grid .embed-group-content{min-width:0;margin:0;}
.ich-group-banner-grid .embed-group-title-label{display:block;font-size:11px;color:#687f89;line-height:1.5;}
.ich-group-banner-grid .embed-group-title{font-size:15px;font-weight:700;line-height:1.6;white-space:normal;overflow-wrap:anywhere;}
.ich-group-support .ich-group-note{margin:14px 0 0;font-size:12px;color:#62757f;}
.ich-group-note a{margin-left:6px;text-decoration:underline;}
.ich-save-article{background:#fff;border-left:4px solid #00a4de;}
.ich-bookmark-control{min-height:44px;}
.page-entry .entry-footer > .social-buttons .social-button-item:has(iframe.hatena-bookmark-button-frame){display:none;}
@media(max-width:700px){.ich-group-support,.ich-save-article{padding:16px;}.ich-group-banner-grid{grid-template-columns:1fr;}.ich-group-banner-grid .embed-group-link{min-height:76px;}}
/* === end ichisouzo-group-support-20261015 === */

/* Hide only the old ordinary participation module; official ranking banners remain. */
.page-entry #entry-footer-primary-modules > .hatena-module-circles{display:none;}
