/* <system section="theme" selected="smooth"> */
@charset "UTF-8";/*!
Theme: Smooth
Author: Hatena Blog Team
Responsive: yes
*//*!
 * Bootstrap Reboot v4.2.1 (https://getbootstrap.com/)
 * Copyright 2011-2018 The Bootstrap Authors
 * Copyright 2011-2018 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
 */*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[title],abbr[data-original-title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):hover,a:not([href]):not([tabindex]):focus{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}pre,code,kbd,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}html,body{background:#f9fafb;font-family:helvetica,Segoe UI,游ゴシック体,YuGothic,游ゴシック Medium,Yu Gothic Medium,游ゴシック,Yu Gothic,メイリオ,Meiryo,sans-serif;color:#293030}html{line-height:1}body{font-size:17px;line-height:1.6}img{vertical-align:baseline}a{color:#293030}a:hover{color:#586767;transition:all .3s}.date{margin:0 0 .7em;font-size:.9rem}.date a{color:#6f8383}.date a:hover{color:#a5b3b3}.date-last-updated{color:#6f8383;font-size:.9rem}#globalheader-container{position:sticky;top:0;background:#f9fafb}#container{word-wrap:break-word}#blog-title{max-width:1280px;margin:auto;padding:4% 5%;text-align:center}#title{font-size:150%;font-family:Times New Roman,游明朝体,YuMincho,游明朝,Yu Mincho,serif;font-weight:400}@media(min-width:768px){#title{font-size:215%}}#blog-description{font-size:90%;font-weight:400}#content-inner{width:100%;display:flex;flex-direction:column}@media(min-width:768px){#content-inner{flex-direction:row;margin:auto;padding:0 20px}}@media(min-width:1200px){#content-inner{width:1200px}}#wrapper{flex:0 0 100%;max-width:100%}@media(min-width:768px){#wrapper{flex:0 0 75%;max-width:75%}}@media(min-width:1020px){#main{padding:0 3% 0 0}}.header-image-enable #blog-title,.header-image-only #blog-title{padding:0 0 1.5em}@media(min-width:1200px){.header-image-enable #blog-title,.header-image-only #blog-title{width:1160px}}.header-image-enable #blog-title #blog-title-inner,.header-image-only #blog-title #blog-title-inner{display:flex;align-items:center;justify-content:center;height:50vw;max-height:200px}@media(min-width:1200px){.header-image-enable #blog-title #blog-title-inner,.header-image-only #blog-title #blog-title-inner{background-size:100%}}.header-image-enable #blog-title-content,.header-image-only #blog-title-content{margin:0 .5em}.breadcrumb{font-size:.9rem}.categories{margin-bottom:2em}.categories a{display:inline-block;background:#e9f0f2;margin:0 .3em 0 0;padding:0 10px;font-size:12px}.pager{text-align:center;margin:3em .8em}@media(min-width:1020px){.pager{margin:0}}.pager a{display:inline-block;width:100%;background:#eff1f5;padding:.7em 1.2em;border:none;font-weight:400;font-size:.9rem;color:#293030}.pager a:hover{background-color:#e9ecf1;text-decoration:none}.pager .pager-next,.pager .pager-prev{width:100%;padding:.5em 0}.pager .pager-prev+.pager-next{margin-left:1em;padding-left:1em}@media(min-width:768px){.pager .pager-prev+.pager-next{margin-left:1.5em;padding-left:1.5em}}.pager.permalink{display:flex;justify-content:center;align-items:center;text-align:center}.hatena-urllist{padding-left:0;list-style:none}.hatena-urllist li{border-top:1px dotted #cfd8d8;padding-top:10px;padding-bottom:10px}.hatena-urllist .archive-module-year,.hatena-urllist .archive-module-month{line-height:2}.hatena-urllist .urllist-date-link a{color:#6f8383}.hatena-urllist .urllist-category-link{display:inline-block;background:#e9f0f2;margin:.5em .3em 0 0;padding:3px 10px;font-size:12px;line-height:1.3}.hatena-urllist .urllist-category-link:hover{background:#d9e5e9;text-decoration:none;transition:background .3s}.hatena-urllist .urllist-entry-body{margin-top:10px}.hatena-module{margin-bottom:3em;padding-left:20px;padding-right:20px;font-size:.85rem}.hatena-module:last-child{margin-bottom:0}.hatena-module-title{margin-bottom:12px;font-family:Times New Roman,游明朝体,YuMincho,游明朝,Yu Mincho,serif;font-size:20px}.hatena-module-body{font-size:15px}.hatena-module-body .urllist-title-link{font-size:100%}.hatena-module-body .archive-module-button{display:inline-block;width:15px;height:15px}.hatena-module-body .archive-module-hide-button,.hatena-module-body .archive-module-show-button{position:absolute;overflow:hidden;width:15px;height:15px;text-indent:-15px}.hatena-module-body .archive-module-hide-button:after,.hatena-module-body .archive-module-show-button:after{content:"";top:50%;display:inline-block;position:absolute;width:8px;height:8px;margin-top:-.1em;border-top:1px solid #6f8383;border-right:1px solid #6f8383}.hatena-module-body .archive-module-hide-button{transform:rotate(135deg);margin-top:.2em}.hatena-module-body .archive-module-show-button{transform:rotate(45deg);margin-top:.2em}@media(min-width:481px){.search-result-form{margin:0 1em}}.search-result+p{background:#fff;border:1px solid #f0f1f1;margin:0 0 3em;padding:8% 0;font-weight:700;text-align:center}.search-form,.search-result-form{position:relative;width:100%;background:#fff;margin:auto;border:1px solid #eee;box-sizing:border-box}.search-form:hover,.search-result-form:hover{border-color:#ddd}.search-module-input,.search-result-form .search-result-input{width:90%;height:30px;padding:5px;background:#fff;border:none;outline:none}.search-module-input::-webkit-input-placeholder,.search-result-form .search-result-input::-webkit-input-placeholder,.search-module-input::-placeholder,.search-result-form .search-result-input::-placeholder{color:#9faba9}.search-module-button,.search-result-form .search-result-button{width:20px;height:20px;background:transparent url(https://cdn.blog.st-hatena.com/images/theme/search@2x.png?version=1cfa012d72dc961c7b6c993afd7f99) no-repeat right center;background-size:20px 20px;border:none;outline:none;text-indent:-9999px;position:absolute;top:5px;right:5px;opacity:.5;cursor:pointer}.search-module-button:hover,.search-result-form .search-result-button:hover{opacity:.85}#top-box{margin:0 auto;padding:0 10px}@media(min-width:768px){#top-box{padding:0 20px}}@media(min-width:1200px){#top-box{max-width:1200px}}.entry{background:#fff;border:1px solid #f0f1f1;margin-bottom:2em;padding:8% 5%}@media(min-width:768px){.entry{padding:8% 9% 5%}}.entry-header{position:relative;margin-bottom:1.5em}@media(min-width:481px){.entry-header{margin-bottom:3em}}.entry-header-menu{position:absolute;top:0;right:0;margin-bottom:1em}.entry-header-menu a{background:#f9fafb;border:1px solid #cfd8d8;padding:5px 10px;font-size:.9rem}.entry-header-menu a:hover{background:#f3f5f7;text-decoration:none}.entry-title{margin-bottom:.5em;font-family:Times New Roman,游明朝体,YuMincho,游明朝,Yu Mincho,serif;font-size:130%;font-weight:400;line-height:1.5}@media(min-width:768px){.entry-title{font-size:190%}}.entry-content{line-height:1.85}.entry-content a{color:#119e4d}.entry-content a:hover{color:#0c7037}.entry-content a.keyword{-webkit-text-decoration:underline dotted #cfd8d8;text-decoration:underline dotted #cfd8d8}.entry-content a.keyword:hover{color:#586767;-webkit-text-decoration:underline dotted #ffffff;text-decoration:underline dotted #ffffff}.entry-content img,.entry-content video{max-width:100%;height:auto}.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6{margin:1.5em 0 .8em;line-height:1.3}.entry-content h1{padding-bottom:15px;font-size:190%;border-bottom:1px solid #cfd8d8}.entry-content h2{font-size:165%}.entry-content h3{padding-bottom:10px;font-size:140%;border-bottom:1px solid #cfd8d8}.entry-content h4{font-size:130%}.entry-content h5{padding-bottom:10px;font-size:120%;border-bottom:1px solid #cfd8d8}.entry-content h6{font-size:100%}.entry-content ul,.entry-content ol,.entry-content dd{margin:0 0 1em 1.5em;padding:0;line-height:1.7}.entry-content ul li ul,.entry-content ol li ul,.entry-content dd li ul,.entry-content ul li ol,.entry-content ol li ol,.entry-content dd li ol{margin-bottom:0}.entry-content dl{margin-top:2em}.entry-content dl dt{margin-bottom:.8em}.entry-content p{margin:0 0 .7em}.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 blockquote{position:relative;padding:9px 15px 9px 40px;border:1px solid #f0f1f1}@media(min-width:1020px){.entry-content blockquote{padding:20px 20px 20px 60px}}.entry-content blockquote:before{display:inline-block;position:absolute;top:10px;left:10px;vertical-align:middle;content:"“";font-size:40px;font-family:Times New Roman,游明朝体,YuMincho,游明朝,Yu Mincho,serif;color:#6f8383;line-height:1}@media(min-width:1020px){.entry-content blockquote:before{left:15px;font-size:70px}}.entry-content blockquote p{margin-bottom:0}.entry-content blockquote cite{display:block;margin-top:.5rem;text-align:right;font-size:85%;line-height:1.3}.entry-content table{border-collapse:collapse;border-spacing:0;border-bottom:1em;margin-bottom:1em;width:100%;overflow:auto;display:block}.entry-content table th,.entry-content table td{border:1px solid #f0f1f1;padding:5px 10px}.entry-content table th{background:#f9fafb}.entry-content pre,.entry-content code{font-family:Monaco,Consolas,Courier New,Courier,monospace,sans-serif}.entry-content pre{background:#293030;border:none;white-space:pre-wrap;text-overflow:ellipsis ellipsis;font-size:100%;font-size:.9rem;padding:10px;color:#ccc}@media(min-width:768px){.entry-content pre{font-size:.85rem;padding:15px}}.entry-content pre>code{margin:0;padding:0;white-space:pre;border:none;background-color:transparent;font-family:Monaco,Consolas,Courier New,Courier,monospace,sans-serif}.entry-content code{font-size:90%;margin:0 .1em;padding:0 5px;border-radius:3px}.entry-content .table-of-contents{background:#f9fafb;margin-left:0;padding:15px 10px 15px 35px;font-size:16px}@media(min-width:768px){.entry-content .table-of-contents{padding:20px 20px 20px 50px}}.entry-footer{margin-top:1em}.entry-footer-modules .hatena-module{padding:0}.entry-footer-section{margin-bottom:8px;color:#6f8383;font-size:.9rem}.entry-footer-section a{color:#6f8383}.entry-footer-ad{margin-left:-9%;margin-right:-9%}.comment-box{margin:0 -5%;padding:5% 5% 0;border-top:1px solid #f0f1f1}@media(min-width:768px){.comment-box{margin:0 -11%;padding:20px 11% 0}}.comment-box .leave-comment-title{background:#f9fafb;border:1px solid #cfd8d8;padding:.5rem 1rem;font-size:.9rem}.comment-box .leave-comment-title:hover{background:#f3f5f7}.comment-box .comment{list-style:none;padding-left:0}.comment-box .comment a{color:#119e4d}.comment-box .comment a:hover{color:#0c7037}.comment-box .comment .comment-user-id{font-size:14px;font-weight:700}.comment-box .comment .entry-comment{padding:20px 0 0;border-top:1px solid #f0f1ff;color:#6f8383}.comment-box .comment .entry-comment:first-child{padding-top:0;border-top:none}.comment-box .comment .entry-comment .comment-content{word-wrap:break-word}.comment-box .comment .entry-comment .comment-content p{font-size:14px}.comment-box .comment .entry-comment time{font-size:12px}.comment-box .comment .read-more-comments{font-size:14px}@media(min-width:1020px){.comment-box .comment .read-more-comments{margin-right:25px}}.comment-box .comment .read-more-comments a{position:relative;display:inline-block}.comment-box .comment .read-more-comments a:after{content:"";top:20%;left:-20px;display:inline-block;position:absolute;width:8px;height:8px;border-top:1px solid #119e4d;border-right:1px solid #119e4d;transform:rotate(135deg);margin-top:1px}#box2{flex:0 0 100%;max-width:100%;background:#fff3;padding:1em 0}@media(min-width:768px){#box2{flex:0 0 25%;max-width:25%}}#box2 .hatena-urllist>li:last-child{border-bottom:1px dotted #cfd8d8}.hatena-module-profile .profile-icon-link{display:inline;float:left;margin-right:.7em}.hatena-module-profile .profile-icon-link .profile-icon{border-radius:400px}@media(min-width:1020px){.hatena-module-profile .profile-icon-link{display:block;float:none;margin-right:0}}.hatena-module-profile .id{display:block}.hatena-module-profile .id a{color:#119e4d;font-weight:700}.hatena-module-profile .id a:hover{color:#0c7037}.hatena-module-profile .profile-description p{font-size:80%}.archive-module-calendar .calendar-day a{color:#119e4d;font-weight:700}.archive-module-calendar .calendar-day a:hover{color:#0c7037}.hatena-module-recent-comments .user-id span{font-size:12px;opacity:.7}#footer{background:#fff;margin-top:2em;padding-top:2rem;padding-bottom:2rem;text-align:center;font-size:.9rem;color:#6f8383}#footer a{color:#6f8383}#footer p{margin:.5em auto}.archive-header-category{margin-bottom:.3em}.page-archive .archive-heading{margin:.5em .7em 1.3em;line-height:1.5}@media(min-width:1020px){.page-archive .archive-heading{margin:.5em 0 1.3em}}.page-archive .archive-entries-sort{margin-left:1.2em}@media(min-width:768px){.page-archive .archive-entries-sort{margin-left:0}}.page-archive .archive-entry{background:#fff;border:1px solid #f0f1f1;margin-bottom:30px;padding:9% 6% 6%}@media(min-width:768px){.page-archive .archive-entry{padding:6%}}@media(min-width:768px){.page-archive .archive-entry .entry-title{font-size:150%}}

/* </system> */

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

/* =====================================
目次のデザイン変更
===================================== */
.entry-content .table-of-contents{
position:relative;
margin-left:0;
padding:15px 10px 15px 35px;
font-size:100%;
font-weight:bold;
list-style-type:decimal;
background:#fff;
border-top:40px solid #90caf3;
border-left:2px solid #90caf3;
border-right:2px solid #90caf3;
border-bottom:2px solid #90caf3;
line-height:200%;
border-radius:3px;
color:#444;
}

/* 「Contents」の周囲変更（※引用符が崩れていたので通常の ' " に修正） */
.entry-content .table-of-contents::before{
font-family:'blogicon';
content:"\f039";
display:block;
font-size:130%;
font-weight:bold;
position:absolute;
top:-35px;
left:35px;
color:#fff !important;
}

/* リンクの色変更と下線を消す */
.entry-content .table-of-contents li a{
color:#444;
text-decoration:none;
}

/* ハイライト（em） */
article em{
text-decoration:none;
font-style:normal;
background:linear-gradient(transparent 70%, #ffff7f 70%);
}

/* テーブル枠 */
table, th, td{
border:1px solid #333;
}

/* =====================================
ページトップへ戻るボタン
===================================== */
#pagetop{
position:fixed;
bottom:60px;
right:22px;
padding:3px 10px;
margin-bottom:env(safe-area-inset-bottom);
color:rgba(70,130,180,0.8);
background-color:rgba(70,130,180,0.1);
border:2px solid rgba(70,130,180,0.8);
border-radius:50%;
text-align:center;
font-size:20px;
z-index:10;
}
#pagetop:hover{
background-color:rgba(70,130,180,0.3);
}

/* ボタン押下時にスルスル動く */
html{
scroll-behavior:smooth;
}

/* 特定アーカイブ非表示 */
.archive-entry[data-uuid="6802418398527601035"]{
display:none;
}

/* =====================================
ブログタイトルのh1を非表示
===================================== */
.page-entry #blog-title h1,
.page-archive #blog-title h1{
display:none !important;
}
.page-entry #blog-title a,
.page-archive #blog-title a{
font-size:20px;
}

/* =====================================
ブログカード内のhタグのスタイルをリセット
===================================== */
.entry-content .embed-card h3,
.entry-content .embed-card h4,
.entry-content .hatena-bookmark-card h3,
.entry-content .hatena-bookmark-card h4{
font-size:16px !important;
font-weight:normal !important;
margin:0 !important;
padding:0 !important;
line-height:1.5 !important;
color:inherit !important;
}

/* =====================================
グローバルメニュー（新構成用）
対象: #global-menu 系のみ
他要素には影響しないよう限定
===================================== */

#global-menu{
width:100%;
margin:10px auto;
background:#000;
z-index:9999;
}

#global-menu.is-fixed{
position:fixed;
top:0;
left:0;
right:0;
}

#global-menu-inner{
width:1000px;
min-height:50px;
margin:0 auto;
background:#000;
}

#global-menu-btn{
display:none;
appearance:none;
border:0;
background:#000;
color:#fff;
font-size:12px;
line-height:1;
padding:10px 16px;
cursor:pointer;
}

#global-menu-content{
display:flex;
align-items:stretch;
justify-content:space-between;
margin:0;
padding:0;
list-style:none;
width:100%;
min-height:50px;
}

#global-menu-content > li{
flex:1 1 0;
min-width:0;
position:relative;
text-align:center;
}

#global-menu-content > li > a,
#global-menu .menu-parent .parent-link{
display:flex;
align-items:center;
justify-content:center;
min-height:50px;
width:100%;
padding:0 12px;
background:#000;
color:#fff;
font-size:12px;
line-height:1.4;
text-decoration:none;
box-sizing:border-box;
}

#global-menu-content > li > a:hover,
#global-menu .menu-parent .parent-link:hover

#global-menu .menu-parent{
display:flex;
align-items:stretch;
min-height:50px;
}

#global-menu .menu-parent .parent-link{
flex:1 1 auto;
}

#global-menu .sub-toggle{
display:none;
appearance:none;
border:0;
border-left:1px solid rgba(255,255,255,.15);
background:#000;
color:#fff;
padding:0 14px;
font-size:16px;
cursor:pointer;
}

#global-menu .sub-toggle:hover

#global-menu .sub-menu{
display:block;
position:absolute;
top:100%;
left:0;
width:280px;
margin:0;
padding:0;
list-style:none;
background:#000;
z-index:10000;
box-shadow:0 6px 18px rgba(0,0,0,.18);
}

#global-menu .sub-menu[hidden]{
display:none !important;
}

#global-menu .sub-menu li{
width:100%;
text-align:left;
}

#global-menu .sub-menu a{
display:block;
padding:12px 16px;
color:#fff;
text-decoration:none;
white-space:normal;
font-size:12px;
line-height:1.6;
border-top:1px solid rgba(255,255,255,.08);
background:#000;
box-sizing:border-box;
}

#global-menu .sub-menu a:hover

#global-menu-spacer{
display:none;
width:100%;
}

/* PC */
@media (min-width:961px){
#global-menu .has-sub:hover > .sub-menu{
display:block !important;
}
}

/* スマホ */
@media (max-width:960px){
#global-menu{
position:fixed;
top:0;
left:0;
right:0;
margin:0;
z-index:99999;
}

#global-menu-inner{
width:100%;
min-height:auto;
}

#global-menu-btn{
display:inline-block;
margin:6px 8px;
}

#global-menu-content{
display:block;
width:100%;
min-height:auto;
max-height:calc(100vh - 64px);
overflow-y:auto;
-webkit-overflow-scrolling:touch;
background:#000;
}

#global-menu-content[hidden]{
display:none !important;
}

#global-menu-content > li{
display:block;
width:100%;
text-align:left;
position:static;
}

#global-menu-content > li > a{
justify-content:flex-start;
min-height:44px;
padding:0 16px;
}

#global-menu .menu-parent{
display:flex;
align-items:center;
justify-content:space-between;
min-height:44px;
}

#global-menu .menu-parent .parent-link{
justify-content:flex-start;
min-height:44px;
padding:0 16px;
}

#global-menu .sub-toggle{
display:inline-flex;
align-items:center;
justify-content:center;
min-height:44px;
padding:0 16px;
border-left:0;
}

#global-menu .sub-menu{
position:static;
width:100%;
box-shadow:none;
background:#222;
}

#global-menu .sub-menu a{
padding:12px 18px;
font-size:12px;
border-top:1px solid rgba(255,255,255,.12);
background:#222;
}

#global-menu .sub-menu a:hover

#global-menu-spacer{
display:block;
}
}

/* ===== 横スクロール（右に余白）対策：基本 ===== */
html, body {
max-width: 100%;
overflow-x: hidden;
}

/* 画像・動画・iframeがはみ出さない */
img, video, iframe {
max-width: 100%;
height: auto;
}

/* 表はスマホで横スクロールに逃がす（サイト全体の横スクロールを防ぐ） */
.entry-content table {
display: block;
width: 100%;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
}
/* =========================
Home Top (WP移行前提)
※固定ページ /home 用
“SEOの情報サイトらしい”見やすさ重視
========================= */

.hp-top{
--bg: #f6faf7;
--card: #ffffff;
--text: #0f172a;
--muted: rgba(15, 23, 42, .72);
--line: rgba(15, 23, 42, .12);
--accent: #1f7a3a;   /* 緑系 */
--accent2:#0f5f2a;
--shadow: 0 10px 30px rgba(15,23,42,.06);

max-width: 1100px;
margin: 0 auto;
padding: 0 16px 22px;
color: var(--text);
}

/* ===== Hero ===== */
.hp-hero{
padding: 18px 0 10px;
}
.hp-heroBox{
background: linear-gradient(180deg, #ffffff 0%, var(--bg) 100%);
border: 1px solid var(--line);
border-radius: 18px;
padding: 18px 18px 16px;
box-shadow: var(--shadow);
}
.hp-eyebrow{
margin: 0 0 8px;
font-size: 13px;
color: var(--muted);
}
.hp-h1{
margin: 0 0 10px;
font-size: 28px;
line-height: 1.3;
letter-spacing: .2px;
}
.hp-lead{
margin: 0 0 14px;
line-height: 1.95;
color: var(--muted);
}
.hp-lead strong{ color: var(--text); }

/* CTA */
.hp-ctaRow{
display:flex;
gap: 10px;
flex-wrap: wrap;
margin: 0 0 12px;
}
.hp-ctaRow--center{ justify-content:center; }

.hp-btn{
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
padding: 10px 14px;
border-radius: 12px;
text-decoration: none;
font-weight: 800;
font-size: 14px;
border: 1px solid var(--line);
transition: transform .12s ease, box-shadow .12s ease, background .12s ease;
}
.hp-btn:hover{
transform: translateY(-1px);
box-shadow: 0 8px 18px rgba(15,23,42,.08);
}
.hp-btn--primary{
background: var(--accent);
color:#fff;
border-color: rgba(0,0,0,0);
}
.hp-btn--primary:hover{ background: var(--accent2); }
.hp-btn--ghost{
background:#fff;
color: var(--text);
}

/* Badges */
.hp-badges{
list-style: none;
padding: 0;
margin: 0;
display: flex;
gap: 8px;
flex-wrap: wrap;
}
.hp-badges li{
border: 1px solid var(--line);
background: #fff;
padding: 6px 10px;
border-radius: 999px;
font-size: 12px;
color: rgba(15,23,42,.78);
}

/* ===== Section ===== */
.hp-section{ padding: 16px 0; }
.hp-h2{
margin: 0 0 10px;
font-size: 20px;
line-height: 1.35;
}
.hp-sub{
margin: -2px 0 12px;
color: var(--muted);
line-height: 1.9;
font-size: 14px;
}
.hp-h3{ margin: 0 0 8px; font-size: 16px; }
.hp-text{ margin: 0; line-height: 1.9; color: var(--muted); }
.hp-note{ opacity: .78; margin-top: 8px; font-size: 12px; }
.hp-mt14{ margin-top: 14px; }

/* ===== Grids ===== */
.hp-grid3{
display: grid;
grid-template-columns: repeat(3, minmax(0,1fr));
gap: 14px;
}
.hp-grid2{
display: grid;
grid-template-columns: repeat(2, minmax(0,1fr));
gap: 14px;
}

/* Cards */
.hp-card{
display: block;
background: var(--card);
border: 1px solid var(--line);
border-radius: 16px;
padding: 14px;
text-decoration: none;
color: inherit;
box-shadow: 0 6px 18px rgba(15,23,42,.04);
transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.hp-card:hover{
transform: translateY(-1px);
box-shadow: 0 12px 28px rgba(15,23,42,.08);
border-color: rgba(31,122,58,.28);
}
.hp-card__title{
margin: 0 0 6px;
font-weight: 900;
letter-spacing: .2px;
}
.hp-card__text{
margin: 0;
line-height: 1.9;
color: var(--muted);
font-size: 14px;
}
.hp-card__link{
display: inline-block;
margin-top: 10px;
font-weight: 900;
color: var(--accent);
}

/* “カテゴリ/ツール”で少し雰囲気を変える */
.hp-card--cat .hp-card__title::before{
content: "📚";
margin-right: 8px;
}
.hp-card--tool .hp-card__title::before{
content: "🧰";
margin-right: 8px;
}

/* ===== Featured list ===== */
.hp-list{ display: grid; gap: 10px; }
.hp-listItem{
display: flex;
gap: 12px;
justify-content: space-between;
align-items: flex-start;
background: #fff;
border: 1px solid var(--line);
border-radius: 14px;
padding: 12px 14px;
text-decoration:none;
color: inherit;
transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.hp-listItem:hover{
transform: translateY(-1px);
box-shadow: 0 12px 28px rgba(15,23,42,.08);
border-color: rgba(31,122,58,.28);
}
.hp-listItem__title{
font-weight: 900;
line-height: 1.55;
margin: 0 0 4px;
}
.hp-listItem__desc{
color: var(--muted);
line-height: 1.85;
font-size: 13px;
}
.hp-listItem__meta{
font-size: 12px;
color: rgba(15,23,42,.62);
border: 1px solid var(--line);
background: var(--bg);
padding: 6px 10px;
border-radius: 999px;
white-space: nowrap;
}

/* ===== About / CTA ===== */
.hp-about{
display: grid;
grid-template-columns: 1fr;
gap: 14px;
}
.hp-about__box{
background:#fff;
border:1px solid var(--line);
border-radius: 16px;
padding: 14px;
box-shadow: 0 6px 18px rgba(15,23,42,.04);
}
.hp-bullets{
margin: 0;
padding-left: 18px;
line-height: 1.95;
color: var(--muted);
}
.hp-bullets li{ margin: 6px 0; }

.hp-cta{
text-align: center;
background: linear-gradient(180deg, #ffffff 0%, var(--bg) 100%);
border: 1px solid var(--line);
border-radius: 16px;
padding: 16px 14px;
box-shadow: var(--shadow);
}

/* Footer */
.hp-footer{
margin: 10px 0 0;
padding: 14px 0 0;
border-top: 1px solid var(--line);
font-size: 13px;
color: var(--muted);
display: flex;
gap: 10px;
align-items: center;
justify-content: center;
}
.hp-footer a{
color: var(--muted);
text-decoration: none;
border-bottom: 1px dotted rgba(15,23,42,.35);
}
.hp-footer a:hover{ color: var(--accent); border-bottom-color: rgba(31,122,58,.55); }
.hp-footer__sep{ opacity: .5; }

/* ===== Responsive ===== */
@media (max-width: 960px){
.hp-h1{ font-size: 22px; }
.hp-grid3{ grid-template-columns: 1fr; }
.hp-grid2{ grid-template-columns: 1fr; }
.hp-listItem{ flex-direction: column; }
.hp-listItem__meta{ white-space: normal; }
}
/* =========================
/tools (Fixed Page)
Green & Simple, readable
========================= */

.tp-tools{
max-width: 1100px;
margin: 0 auto;
padding: 0 16px;
}

/* base */
.tp-tools *{ box-sizing: border-box; }
.tp-tools a{ color: inherit; }
.tp-tools p, .tp-tools li{ line-height: 1.95; }

.tp-hero{
padding: 26px 0 10px;
}
.tp-eyebrow{
margin: 0 0 10px;
font-size: 13px;
opacity: .75;
letter-spacing: .02em;
}
.tp-h1{
margin: 0 0 12px;
font-size: 30px;
line-height: 1.25;
font-weight: 800;
}
.tp-lead{
margin: 0 0 16px;
font-size: 15px;
opacity: .92;
}

.tp-heroLinks{
display: flex;
gap: 10px;
flex-wrap: wrap;
margin: 0 0 12px;
}

.tp-btn{
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
padding: 11px 14px;
border-radius: 12px;
text-decoration: none;
font-weight: 800;
font-size: 14px;
transition: transform .08s ease, opacity .08s ease;
}
.tp-btn:hover{ transform: translateY(-1px); opacity: .92; }

.tp-btn--primary{
background: #0f5132;         /* deep green */
color: #fff;
border: 1px solid #0f5132;
}
.tp-btn--ghost{
background: #fff;
color: #0f5132;
border: 1px solid rgba(15,81,50,.25);
}

.tp-badges{
list-style: none;
padding: 0;
margin: 0;
display: flex;
gap: 8px;
flex-wrap: wrap;
}
.tp-badges li{
border: 1px solid rgba(0,0,0,.10);
background: #fff;
padding: 6px 10px;
border-radius: 999px;
font-size: 12px;
opacity: .92;
}

/* sections */
.tp-section{
padding: 18px 0;
}
.tp-section--soft{
margin-top: 4px;
padding: 18px 14px;
background: rgba(15,81,50,.05);
border: 1px solid rgba(15,81,50,.12);
border-radius: 16px;
}
.tp-h2{
margin: 0 0 12px;
font-size: 20px;
font-weight: 900;
}
.tp-h3{
margin: 0;
font-size: 16px;
font-weight: 900;
}
.tp-mini{
margin: 8px 0 0;
font-size: 13px;
opacity: .82;
}
.tp-text{
margin: 10px 0 0;
font-size: 14px;
}
.tp-note{
margin: 12px 0 0;
font-size: 12px;
opacity: .75;
}

/* grid cards */
.tp-grid{
display: grid;
grid-template-columns: repeat(3, minmax(0,1fr));
gap: 14px;
}
.tp-card{
background: #fff;
border: 1px solid rgba(0,0,0,.12);
border-radius: 16px;
padding: 14px;
}
.tp-cardHead{
border-bottom: 1px solid rgba(0,0,0,.06);
padding-bottom: 12px;
margin-bottom: 12px;
}
.tp-points{
margin: 0;
padding-left: 18px;
font-size: 14px;
}
.tp-actions{
display: grid;
grid-template-columns: 1fr 1fr;
gap: 10px;
margin-top: 12px;
}
.tp-card--soon{
border-color: rgba(15,81,50,.20);
}
.tp-soonBox{
margin-top: 8px;
padding: 12px;
background: rgba(15,81,50,.04);
border: 1px dashed rgba(15,81,50,.25);
border-radius: 14px;
}

/* steps */
.tp-steps{
margin: 0;
padding-left: 18px;
display: grid;
gap: 10px;
}
.tp-steps li strong{
display: block;
font-weight: 900;
margin-bottom: 2px;
}
.tp-steps li span{
display: block;
font-size: 13px;
opacity: .85;
}

/* chips */
.tp-kLinks{
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-top: 12px;
}
.tp-chip{
display: inline-block;
padding: 8px 10px;
border-radius: 999px;
text-decoration: none;
background: #fff;
border: 1px solid rgba(15,81,50,.18);
color: #0f5132;
font-weight: 800;
font-size: 13px;
}
.tp-chip:hover

/* CTA */
.tp-cta{
text-align: left;
background: #fff;
border: 1px solid rgba(0,0,0,.12);
border-radius: 16px;
padding: 16px 14px;
}

/* responsive */
@media (max-width: 960px){
.tp-h1{ font-size: 24px; }
.tp-grid{ grid-template-columns: 1fr; }
.tp-actions{ grid-template-columns: 1fr; }
}
/* =========================
/tools：公開中ツールを1カラム（PCも縦並びで見やすく）
========================= */
.tp-tools .tp-grid{
grid-template-columns: 1fr !important; /* 3/2カラム指定を完全に上書き */
gap: 16px;
}

/* 横幅が広すぎると読みにくいので、カード自体を少し細くして中央寄せ */
@media (min-width: 961px){
.tp-tools .tp-grid{
max-width: 860px;     /* お好みで 760〜920px */
margin-left: auto;
margin-right: auto;
}
.tp-tools .tp-card{
padding: 18px;        /* 余白を少し増やす（任意） */
}
}
/* =====================================
/home 専用：右余白解消・1カラム化
対象: body.static-page-home のみ
===================================== */

/* 全体の器を広げる */
body.static-page-home #container,
body.static-page-home #container-inner,
body.static-page-home #content,
body.static-page-home #content-inner{
width:100% !important;
max-width:none !important;
box-sizing:border-box !important;
}

/* 2カラムの親を1カラム化 */
body.static-page-home #wrapper{
width:100% !important;
max-width:none !important;
float:none !important;
margin:0 auto !important;
padding:0 !important;
display:block !important;
box-sizing:border-box !important;
}

/* メイン本文を全幅に */
body.static-page-home #main{
width:100% !important;
max-width:none !important;
float:none !important;
margin:0 !important;
padding:0 !important;
box-sizing:border-box !important;
}

body.static-page-home #main-inner{
width:100% !important;
max-width:none !important;
margin:0 !important;
padding:0 !important;
box-sizing:border-box !important;
}

/* 空のサイドバーを完全に消す */
body.static-page-home #box1,
body.static-page-home #box1-inner{
display:none !important;
width:0 !important;
max-width:0 !important;
min-width:0 !important;
margin:0 !important;
padding:0 !important;
overflow:hidden !important;
}

/* Home本文だけ中央寄せで見やすい幅に */
body.static-page-home .entry-content > .hp-top{
max-width:1100px !important;
margin:0 auto !important;
}

/* entry-content 自体も横幅を使う */
body.static-page-home .entry-content{
width:100% !important;
max-width:none !important;
margin:0 !important;
box-sizing:border-box !important;
}

/* PCで見たときの左右余白 */
@media (min-width: 961px){
body.static-page-home #content-inner{
padding-left:24px !important;
padding-right:24px !important;
}
}

/* スマホ */
@media (max-width: 960px){
body.static-page-home #content-inner{
padding-left:12px !important;
padding-right:12px !important;
}

body.static-page-home .entry-content > .hp-top{
max-width:none !important;
}
}
/* =====================================
グローバルメニュー補正
PCではサブメニューを通常非表示、ホバー時のみ表示
===================================== */
@media (min-width: 961px) {
#global-menu {
height: auto !important;
min-height: 50px !important;
overflow: visible !important;
}

#global-menu-inner {
height: 50px !important;
min-height: 50px !important;
overflow: visible !important;
}

#global-menu-content {
display: flex !important;
align-items: stretch !important;
height: 50px !important;
min-height: 50px !important;
overflow: visible !important;
}

#global-menu-content > li {
position: relative !important;
height: 50px !important;
}

#global-menu .sub-menu {
display: none !important;
position: absolute !important;
top: 50px !important;
left: 0 !important;
width: 280px !important;
margin: 0 !important;
padding: 0 !important;
background: #000 !important;
z-index: 10000 !important;
box-shadow: 0 6px 18px rgba(0,0,0,.18) !important;
}

#global-menu .has-sub:hover > .sub-menu {
display: block !important;
}

#global-menu .sub-menu li {
display: block !important;
width: 100% !important;
height: auto !important;
text-align: left !important;
}

#global-menu .sub-menu a {
display: block !important;
width: 100% !important;
padding: 12px 16px !important;
color: #fff !important;
background: #000 !important;
text-decoration: none !important;
white-space: normal !important;
font-size: 12px !important;
line-height: 1.6 !important;
border-top: 1px solid rgba(255,255,255,.08) !important;
box-sizing: border-box !important;
}

#global-menu .sub-menu a:hover {
background: #fff !important;
color: #ff1493 !important;
}
}
/* =====================================
グローバルメニュー：通常リンクのホバー時位置ズレ補正
TOP・お問い合わせなどサブメニューなし項目の上下移動を防ぐ
===================================== */
@media (min-width: 961px) {
#global-menu-content > li > a,
#global-menu .menu-parent,
#global-menu .menu-parent .parent-link {
height: 50px !important;
min-height: 50px !important;
line-height: 1.4 !important;
box-sizing: border-box !important;
}

#global-menu-content > li > a,
#global-menu .menu-parent .parent-link {
display: flex !important;
align-items: center !important;
justify-content: center !important;
padding-top: 0 !important;
padding-bottom: 0 !important;
transform: none !important;
position: relative !important;
top: 0 !important;
}

#global-menu-content > li > a:hover,
#global-menu .menu-parent .parent-link:hover {
transform: none !important;
position: relative !important;
top: 0 !important;
}

#global-menu-content > li {
height: 50px !important;
min-height: 50px !important;
display: flex !important;
align-items: stretch !important;
}

#global-menu-content > li > a {
flex: 1 1 auto !important;
}
}
/* =====================================
/home 専用 追加デザイン調整
既存CSSは変更せず、疑似トップページのみ上書き
対象: body.static-page-home の .hp-top 内だけ
===================================== */

/* /home 全体の見やすさ調整 */
body.static-page-home .entry-content > .hp-top{
max-width:1100px !important;
margin:0 auto !important;
padding:0 16px 28px !important;
color:#0f172a;
box-sizing:border-box;
}

body.static-page-home .entry-content > .hp-top *,
body.static-page-home .entry-content > .hp-top *::before,
body.static-page-home .entry-content > .hp-top *::after{
box-sizing:border-box;
}

body.static-page-home .entry-content > .hp-top a{
text-decoration:none;
}

/* Heroを少し強く、トップページらしくする */
body.static-page-home .entry-content > .hp-top .hp-hero{
padding:18px 0 14px;
}

body.static-page-home .entry-content > .hp-top .hp-heroBox{
position:relative;
overflow:hidden;
padding:26px 24px 22px;
border-radius:22px;
border:1px solid rgba(15,23,42,.12);
background:
radial-gradient(circle at top right, rgba(34,197,94,.16) 0%, rgba(34,197,94,0) 36%),
linear-gradient(180deg, #ffffff 0%, #f6fbf7 100%);
box-shadow:0 12px 34px rgba(15,23,42,.07);
}

body.static-page-home .entry-content > .hp-top .hp-eyebrow{
margin:0 0 10px;
color:rgba(15,23,42,.72);
font-size:13px;
letter-spacing:.02em;
}

body.static-page-home .entry-content > .hp-top .hp-h1{
margin:0 0 12px;
color:#0f172a;
font-size:30px;
line-height:1.35;
letter-spacing:.02em;
font-weight:900;
}

body.static-page-home .entry-content > .hp-top .hp-lead{
max-width:860px;
margin:0 0 18px;
color:rgba(15,23,42,.72);
font-size:15px;
line-height:2;
}

body.static-page-home .entry-content > .hp-top .hp-lead strong{
color:#0f172a;
}

/* CTAボタン調整 */
body.static-page-home .entry-content > .hp-top .hp-ctaRow{
display:flex;
flex-wrap:wrap;
gap:10px;
margin:0 0 14px;
}

body.static-page-home .entry-content > .hp-top .hp-ctaRow--center{
justify-content:center;
}

body.static-page-home .entry-content > .hp-top .hp-ctaRow--hero{
margin-bottom:16px;
}

body.static-page-home .entry-content > .hp-top .hp-btn{
display:inline-flex;
align-items:center;
justify-content:center;
min-height:44px;
padding:10px 16px;
border-radius:999px;
border:1px solid rgba(15,23,42,.12);
background:#ffffff;
color:#0f172a !important;
text-decoration:none !important;
font-size:14px;
font-weight:900;
line-height:1.4;
transition:transform .14s ease, box-shadow .14s ease, background .14s ease, border-color .14s ease;
}

body.static-page-home .entry-content > .hp-top .hp-btn:hover{
transform:translateY(-1px);
box-shadow:0 10px 22px rgba(15,23,42,.10);
text-decoration:none !important;
}

body.static-page-home .entry-content > .hp-top .hp-btn--primary{
background:#15803d;
border-color:#15803d;
color:#ffffff !important;
}

body.static-page-home .entry-content > .hp-top .hp-btn--primary:hover

body.static-page-home .entry-content > .hp-top .hp-btn--ghost{
background:#ffffff;
color:#0f172a !important;
}

/* バッジ */
body.static-page-home .entry-content > .hp-top .hp-badges{
display:flex;
flex-wrap:wrap;
gap:8px;
margin:0;
padding:0;
list-style:none;
}

body.static-page-home .entry-content > .hp-top .hp-badges li{
margin:0;
padding:6px 10px;
border:1px solid rgba(15,23,42,.12);
border-radius:999px;
background:#ffffff;
color:rgba(15,23,42,.76);
font-size:12px;
font-weight:700;
line-height:1.3;
}

/* セクション見出しと余白 */
body.static-page-home .entry-content > .hp-top .hp-section{
padding:20px 0;
}

body.static-page-home .entry-content > .hp-top .hp-section--soft{
margin:10px 0;
padding:22px 18px;
background:#ecfdf5;
border:1px solid rgba(21,128,61,.16);
border-radius:22px;
}

body.static-page-home .entry-content > .hp-top .hp-sectionHead{
margin:0 0 14px;
}

body.static-page-home .entry-content > .hp-top .hp-sectionHead--center{
text-align:center;
}

body.static-page-home .entry-content > .hp-top .hp-h2{
margin:0 0 10px;
color:#0f172a;
font-size:22px;
line-height:1.45;
font-weight:900;
letter-spacing:.01em;
}

body.static-page-home .entry-content > .hp-top .hp-h3{
margin:0 0 8px;
color:#0f172a;
font-size:16px;
line-height:1.55;
font-weight:900;
}

body.static-page-home .entry-content > .hp-top .hp-sub,
body.static-page-home .entry-content > .hp-top .hp-text{
margin:0;
color:rgba(15,23,42,.72);
font-size:14px;
line-height:1.95;
}

body.static-page-home .entry-content > .hp-top .hp-note{
margin:10px 0 0;
color:rgba(15,23,42,.64);
font-size:12px;
line-height:1.8;
}

body.static-page-home .entry-content > .hp-top .hp-mt14{
margin-top:14px;
}

body.static-page-home .entry-content > .hp-top .hp-mt16{
margin-top:16px;
}

/* グリッド */
body.static-page-home .entry-content > .hp-top .hp-grid3{
display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:14px;
}

body.static-page-home .entry-content > .hp-top .hp-grid2{
display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:14px;
}

/* カード */
body.static-page-home .entry-content > .hp-top .hp-card{
display:block;
min-height:100%;
padding:17px 16px;
background:#ffffff;
border:1px solid rgba(15,23,42,.12);
border-radius:18px;
color:inherit;
text-decoration:none !important;
box-shadow:0 8px 22px rgba(15,23,42,.045);
transition:transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}

body.static-page-home .entry-content > .hp-top .hp-card:hover{
transform:translateY(-2px);
border-color:rgba(21,128,61,.32);
box-shadow:0 14px 34px rgba(15,23,42,.10);
text-decoration:none !important;
}

body.static-page-home .entry-content > .hp-top .hp-card__label{
display:inline-block;
margin:0 0 9px;
padding:3px 9px;
border-radius:999px;
background:#ecfdf5;
color:#166534;
font-size:12px;
font-weight:900;
line-height:1.4;
}

body.static-page-home .entry-content > .hp-top .hp-card__title{
margin:0 0 8px;
color:#0f172a;
font-size:16px;
font-weight:900;
line-height:1.55;
}

body.static-page-home .entry-content > .hp-top .hp-card__title::before{
content:none !important;
}

body.static-page-home .entry-content > .hp-top .hp-card__text{
margin:0;
color:rgba(15,23,42,.72);
font-size:14px;
line-height:1.9;
}

body.static-page-home .entry-content > .hp-top .hp-card__link{
display:inline-block;
margin-top:12px;
color:#166534;
font-size:14px;
font-weight:900;
}

body.static-page-home .entry-content > .hp-top .hp-card--tool .hp-card__label{
background:#e0f2fe;
color:#075985;
}

body.static-page-home .entry-content > .hp-top .hp-card--community .hp-card__label{
background:#eff6ff;
color:#1d4ed8;
}

/* おすすめ記事リスト */
body.static-page-home .entry-content > .hp-top .hp-list{
display:grid;
gap:10px;
}

body.static-page-home .entry-content > .hp-top .hp-listItem{
display:flex;
gap:14px;
align-items:flex-start;
justify-content:space-between;
padding:14px 16px;
background:#ffffff;
border:1px solid rgba(15,23,42,.12);
border-radius:16px;
color:inherit;
text-decoration:none !important;
box-shadow:0 6px 18px rgba(15,23,42,.04);
transition:transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}

body.static-page-home .entry-content > .hp-top .hp-listItem:hover{
transform:translateY(-1px);
border-color:rgba(21,128,61,.32);
box-shadow:0 12px 28px rgba(15,23,42,.08);
text-decoration:none !important;
}

body.static-page-home .entry-content > .hp-top .hp-listItem__title{
margin:0 0 5px;
color:#0f172a;
font-size:15px;
font-weight:900;
line-height:1.6;
}

body.static-page-home .entry-content > .hp-top .hp-listItem__desc{
color:rgba(15,23,42,.72);
font-size:13px;
line-height:1.85;
}

body.static-page-home .entry-content > .hp-top .hp-listItem__meta{
flex:0 0 auto;
padding:6px 10px;
border:1px solid rgba(15,23,42,.12);
border-radius:999px;
background:#f6fbf7;
color:rgba(15,23,42,.64);
font-size:12px;
font-weight:700;
white-space:nowrap;
}

/* About / CTA */
body.static-page-home .entry-content > .hp-top .hp-about{
display:grid;
grid-template-columns:1fr;
gap:14px;
}

body.static-page-home .entry-content > .hp-top .hp-about__box,
body.static-page-home .entry-content > .hp-top .hp-cta{
padding:18px 18px;
background:#ffffff;
border:1px solid rgba(15,23,42,.12);
border-radius:20px;
box-shadow:0 8px 22px rgba(15,23,42,.045);
}

body.static-page-home .entry-content > .hp-top .hp-cta{
text-align:center;
background:
radial-gradient(circle at top left, rgba(34,197,94,.12) 0%, rgba(34,197,94,0) 32%),
linear-gradient(180deg, #ffffff 0%, #f6fbf7 100%);
}

body.static-page-home .entry-content > .hp-top .hp-bullets{
margin:0;
padding-left:20px;
color:rgba(15,23,42,.72);
line-height:1.95;
}

body.static-page-home .entry-content > .hp-top .hp-bullets li{
margin:6px 0;
}

/* Footer */
body.static-page-home .entry-content > .hp-top .hp-footer{
display:flex;
align-items:center;
justify-content:center;
margin:10px 0 0;
padding:16px 0 0;
border-top:1px solid rgba(15,23,42,.12);
color:rgba(15,23,42,.72);
font-size:13px;
}

body.static-page-home .entry-content > .hp-top .hp-footer a{
color:rgba(15,23,42,.72);
text-decoration:none;
border-bottom:1px dotted rgba(15,23,42,.35);
}

body.static-page-home .entry-content > .hp-top .hp-footer a:hover{
color:#166534;
border-bottom-color:rgba(21,128,61,.55);
}

/* スマホ表示 */
@media (max-width:960px){
body.static-page-home .entry-content > .hp-top{
padding:0 10px 22px !important;
}

body.static-page-home .entry-content > .hp-top .hp-hero{
padding:12px 0 8px;
}

body.static-page-home .entry-content > .hp-top .hp-heroBox{
padding:20px 16px 18px;
border-radius:18px;
}

body.static-page-home .entry-content > .hp-top .hp-h1{
font-size:23px;
}

body.static-page-home .entry-content > .hp-top .hp-lead{
font-size:14px;
line-height:1.9;
}

body.static-page-home .entry-content > .hp-top .hp-ctaRow{
display:grid;
grid-template-columns:1fr;
gap:9px;
}

body.static-page-home .entry-content > .hp-top .hp-btn{
width:100%;
min-height:44px;
text-align:center;
}

body.static-page-home .entry-content > .hp-top .hp-section{
padding:17px 0;
}

body.static-page-home .entry-content > .hp-top .hp-section--soft{
padding:18px 14px;
border-radius:18px;
}

body.static-page-home .entry-content > .hp-top .hp-sectionHead--center{
text-align:left;
}

body.static-page-home .entry-content > .hp-top .hp-h2{
font-size:19px;
}

body.static-page-home .entry-content > .hp-top .hp-grid3,
body.static-page-home .entry-content > .hp-top .hp-grid2{
grid-template-columns:1fr;
gap:12px;
}

body.static-page-home .entry-content > .hp-top .hp-listItem{
display:block;
padding:14px;
}

body.static-page-home .entry-content > .hp-top .hp-listItem__meta{
display:inline-block;
margin-top:10px;
white-space:normal;
}

body.static-page-home .entry-content > .hp-top .hp-about__box,
body.static-page-home .entry-content > .hp-top .hp-cta{
padding:16px 14px;
border-radius:18px;
}
}
/* =========================
SEO日報 トップページ スマホ記事一覧改善
20260625
========================= */
@media screen and (max-width: 767px) {

/* 記事一覧全体 */
.page-index .archive-entry,
.page-archive .archive-entry {
padding: 18px 16px 20px !important;
margin: 0 0 14px !important;
border-bottom: 1px solid #eee !important;
background: #fff !important;
}

/* 日付 */
.page-index .archive-entry .date,
.page-archive .archive-entry .date,
.page-index .archive-entry .entry-date,
.page-archive .archive-entry .entry-date {
margin-bottom: 8px !important;
font-size: 13px !important;
color: #6b7280 !important;
line-height: 1.4 !important;
}

/* タイトル */
.page-index .archive-entry .entry-title,
.page-archive .archive-entry .entry-title {
margin: 0 0 10px !important;
font-size: 19px !important;
line-height: 1.55 !important;
font-weight: 700 !important;
letter-spacing: 0.01em !important;
}

.page-index .archive-entry .entry-title a,
.page-archive .archive-entry .entry-title a {
color: #111827 !important;
text-decoration: none !important;
}

/* カテゴリ */
.page-index .archive-entry .categories,
.page-archive .archive-entry .categories {
margin: 0 0 12px !important;
}

.page-index .archive-entry .categories a,
.page-archive .archive-entry .categories a {
display: inline-block !important;
padding: 3px 9px !important;
font-size: 12px !important;
line-height: 1.4 !important;
color: #22543d !important;
background: #eef8f1 !important;
border-radius: 3px !important;
text-decoration: none !important;
}

/* 本文エリア */
.page-index .archive-entry .entry-thumb-link,
.page-archive .archive-entry .entry-thumb-link {
float: left !important;
width: 96px !important;
height: 72px !important;
margin: 2px 14px 8px 0 !important;
}

/* サムネイル */
.page-index .archive-entry .entry-thumb,
.page-archive .archive-entry .entry-thumb {
width: 96px !important;
height: 72px !important;
object-fit: cover !important;
border-radius: 6px !important;
}

/* 抜粋文 */
.page-index .archive-entry .entry-description,
.page-archive .archive-entry .entry-description {
margin: 0 !important;
font-size: 14px !important;
line-height: 1.75 !important;
color: #374151 !important;

```
display: -webkit-box !important;
-webkit-line-clamp: 3 !important;
-webkit-box-orient: vertical !important;
overflow: hidden !important;
```

}

/* 回り込み解除 */
.page-index .archive-entry::after,
.page-archive .archive-entry::after {
content: "" !important;
display: block !important;
clear: both !important;
}

/* スター・ブックマーク周辺が目立つ場合は非表示 */
.page-index .archive-entry .social-buttons,
.page-archive .archive-entry .social-buttons,
.page-index .archive-entry .hatena-star-container,
.page-archive .archive-entry .hatena-star-container {
display: none !important;
}
}
.profile-about {
  display: none !important;
}

/* =========================
SEO日報 サイドバープロフィール 整理版
========================= */

/* プロフィールモジュール全体 */
.hatena-module-profile,
.hatena-module-profile .hatena-module-body {
margin-bottom: 18px !important;
}

/* 見出し */
.hatena-module-profile .hatena-module-title {
margin-bottom: 12px !important;
}

/* プロフィール画像 */
.hatena-module-profile .profile-icon,
.hatena-module-profile .profile-icon-link,
.hatena-module-profile img.profile-icon,
.hatena-module-profile .profile-image,
.hatena-module-profile .profile-image img {
display: block !important;
float: none !important;
width: 76px !important;
height: 76px !important;
margin: 0 0 0 0 !important;
padding: 0 !important;
object-fit: cover !important;
}

/* プロフィール本文の親要素 */
.hatena-module-profile .profile-description {
clear: both !important;
margin: -5px 0 0 !important;
padding: 0 !important;
}

/* はてな側で自動挿入されるbr対策 */
.sn-sidebar-profile > br,
.sn-sidebar-profile-note > br {
display: none !important;
}

/* 自作プロフィール本文 */
.sn-sidebar-profile {
margin: 0 !important;
padding: 0 !important;
font-size: 13.5px !important;
line-height: 1.62 !important;
color: #111827 !important;
}

.sn-sidebar-profile p {
margin: 0 0 6px !important;
padding: 0 !important;
}

.sn-sidebar-profile strong {
font-weight: 700 !important;
}

/* 2段落目から緑枠まで */
.sn-sidebar-profile > p:nth-of-type(2) {
margin-bottom: 5px !important;
}

/* 信頼情報ボックス */
.sn-sidebar-profile-note {
margin: 5px 0 8px !important;
padding: 2px 9px 6px !important;
background: #f0fdf4 !important;
border: 1px solid #bbf7d0 !important;
border-radius: 9px !important;
}

/* 緑枠内の行 */
.sn-sidebar-profile-note p {
display: grid !important;
grid-template-columns: 1em 1fr !important;
column-gap: 3px !important;
align-items: start !important;
margin: 0 0 3px !important;
padding: 0 !important;
font-size: 12.6px !important;
line-height: 1.4 !important;
color: #14532d !important;
}

.sn-sidebar-profile-note p:first-child {
margin-top: 0 !important;
}

.sn-sidebar-profile-note p:last-child {
margin-bottom: 0 !important;
}

/* チェックマーク */
.sn-sidebar-profile-note p::before {
content: "✓" !important;
position: static !important;
display: inline-block !important;
width: 1em !important;
color: #10b981 !important;
font-weight: 700 !important;
line-height: 1.4 !important;
}

/* aboutリンクボタン */
.sn-sidebar-profile-link {
margin: 8px 0 6px !important;
padding: 0 !important;
}

.sn-sidebar-profile-link a {
display: block !important;
padding: 6px 10px !important;
border: 1px solid #10b981 !important;
border-radius: 999px !important;
background: #ffffff !important;
color: #047857 !important;
font-size: 13px !important;
font-weight: 700 !important;
text-align: center !important;
text-decoration: none !important;
line-height: 1.4 !important;
}

.sn-sidebar-profile-link a:hover {
background: #ecfdf5 !important;
color: #065f46 !important;
}

/* 読者になる・Xボタン周辺 */
.hatena-module-profile .hatena-follow-button-box,
.hatena-module-profile .hatena-follow-button,
.hatena-module-profile .twitter-follow-button {
margin-top: 4px !important;
}

/* 標準の「このブログについて」を非表示 */
.profile-about {
display: none !important;
}
