/* <system section="theme" selected="neutral"> */
/* @charset "UTF-8";@import"https://fonts.googleapis.com/css?family=Inter:300,400,500,700|Noto+Sans+JP&display=swap";/*!
  Theme: Neutral
  Author: Hatena Blog Team
  Description: 文章が読みやすいシンプルなテーマ です
  Responsive: yes
 */*{margin:0;padding:0}html,body{font-family:Inter,Noto Sans JP,Helvetica Neue,Source Han Sans,Segoe UI,sans-serif;font-size:100%;font-style:normal;word-wrap:break-word}a{color:#333;text-decoration:none}a:hover{color:#1a237e}#globalheader-container{background:#fff}#blog-title{margin:32px 0 80px}@media screen and (min-width: 992px){#blog-title{margin:72px 0 120px}}#blog-title #blog-title-inner{position:relative}#blog-title #blog-title-content{width:90%;margin:auto;padding:0;text-align:center}#blog-title #blog-title-content #title{line-height:1}#blog-title #blog-title-content #title a{font-size:20px;font-weight:500}@media screen and (min-width: 992px){#blog-title #blog-title-content #title a{font-size:32px}}#blog-title #blog-title-content #blog-description{font-size:14px;font-weight:400;color:#888;margin:14px 0 0}@media screen and (min-width: 992px){#blog-title #blog-title-content #blog-description{font-size:16px}}.header-image-enable #blog-title-content{position:absolute;top:50%;left:50%;transform:translateY(-50%) translate(-50%)}.header-image-enable #blog-title-inner #title a,.header-image-enable #blog-title-inner #blog-description{text-shadow:0 0 10px #333}.header-image-enable #blog-title-inner #blog-description{color:#fff!important}#top-editarea{margin:0 0 32px}#top-box .breadcrumb-inner a,#top-box .breadcrumb-inner span{font-size:14px;color:#888}#content-inner{display:flex;flex-flow:column;justify-content:center}@media screen and (min-width: 992px){#content-inner{flex-flow:row}}#content-inner #main{width:auto;margin:auto}@media screen and (min-width: 992px){#content-inner #main{width:620px;margin:0 32px 0 0}}#content-inner #main-inner{margin:0 0 24px}#content-inner #box2{width:auto;margin:0 1em}@media screen and (min-width: 992px){#content-inner #box2{width:300px}}#content-inner #box2-inner{padding:80px 0 0}@media screen and (min-width: 992px){#content-inner #box2-inner{padding:0}}#bottom-editarea{max-width:960px;margin:24px 16px}@media screen and (min-width: 560px){#bottom-editarea{margin:24px auto}}#footer{padding:32px 0;font-size:90%;text-align:center;color:#333}#footer #footer-inner{width:auto;margin:auto 1rem}@media screen and (min-width: 992px){#footer #footer-inner{width:1000px;margin:auto}}#footer address,#footer p{margin:0 8px 0 0;display:inline-block}#footer address .footer-address-name,#footer p .footer-address-name{text-align:left}#footer .footer-address a>img{vertical-align:sub}#top-box{margin:0 1em 1em}@media screen and (min-width: 992px){#top-box{max-width:960px;margin:16px auto}}#top-box .breadcrumb-link span:hover,#top-box .breadcrumb-child-link span:hover,#top-box .breadcrumb-link span:focus,#top-box .breadcrumb-child-link span:focus{color:#333}.entry{margin:0 0 80px;padding:24px 1em 40px;background:#fff;border-radius:4px}.entry .entry-inner .entry-header{position:relative;margin:0 0 32px}.entry .entry-inner .entry-header .date a{font-size:14px;color:#888}@media screen and (min-width: 992px){.entry .entry-inner .entry-header .date{font-size:18px}}.entry .entry-inner .entry-header .date-last-updated{font-size:14px;color:#888}.entry .entry-inner .entry-header .entry-title{font-size:28px;margin:16px 0;padding:0;text-align:left}@media screen and (min-width: 992px){.entry .entry-inner .entry-header .entry-title{font-size:30px;margin:24px 0 32px}}.entry .entry-inner .entry-header .entry-categories .entry-category-link{font-size:12px;background:#f5f5f5;padding:.45em;margin:0 0 4px;border-radius:4px;display:inline-block}.entry .entry-inner .entry-header .entry-header-menu{position:absolute;top:0;right:0}.entry .entry-inner .entry-header .entry-header-menu a{font-size:14px;padding:.45em;border:1px solid #d9d9d9;border-radius:4px}.entry .entry-inner .entry-header .entry-header-menu a:hover,.entry .entry-inner .entry-header .entry-header-menu a:focus{background:#f5f5f5;border:1px solid #f5f5f5;color:#1a237e}.entry .entry-inner .entry-content .entry-category-link{display:inline-block;color:#333;background:#e0e0e0;padding:.4rem .8rem;border-radius:4px;margin:0 0 8px;font-size:12px}.entry .entry-inner .entry-content .entry-category-link:hover,.entry .entry-inner .entry-content .entry-category-link:focus{color:#333}@media screen and (min-width: 992px){.entry .entry-inner .entry-content .entry-category-link{font-size:14px}}.entry .entry-inner .entry-content .table-of-contents{background:#f5f5f5;border-radius:4px;margin:0;padding:1.6em}.entry .entry-inner .entry-content .table-of-contents li>ul{margin-left:1.5em}.entry .entry-inner .entry-content .table-of-contents ul li{line-height:1.5}.entry .entry-inner .entry-content .table-of-contents li,.entry .entry-inner .entry-content .table-of-contents a{color:#1a237e}.entry .entry-inner .entry-footer{margin:72px 0 0}.entry .entry-inner .entry-footer .entry-footer-section{font-size:14px}.entry .entry-inner p{font-size:18px;line-height:1.8;letter-spacing:.5px;font-style:normal;margin:33px 0;color:#454545}.entry .entry-inner p .keyword{border-bottom:1px dotted #333}.entry .entry-inner p .keyword:hover,.entry .entry-inner p .keyword:focus{border-bottom:1px solid #333;text-decoration:none}.entry .entry-inner p a{color:#1a237e}.entry .entry-inner p a:hover,.entry .entry-inner p a:focus{text-decoration:underline}.entry .entry-inner p code{background:#272822;color:#f8f8f2}.entry .entry-inner h1,.entry .entry-inner h2,.entry .entry-inner h3,.entry .entry-inner h4,.entry .entry-inner h5,.entry .entry-inner h6{margin:33px 0}.entry .entry-inner h1{font-size:28px}@media screen and (min-width: 992px){.entry .entry-inner h1{font-size:30px}}.entry .entry-inner h2{font-size:26px}@media screen and (min-width: 992px){.entry .entry-inner h2{font-size:28px}}.entry .entry-inner h3{font-size:24px}@media screen and (min-width: 992px){.entry .entry-inner h3{font-size:26px}}.entry .entry-inner h4{font-size:22px}@media screen and (min-width: 992px){.entry .entry-inner h4{font-size:24px}}.entry .entry-inner h5{font-size:20px}@media screen and (min-width: 992px){.entry .entry-inner h5{font-size:22px}}.entry .entry-inner h6{font-size:16px}@media screen and (min-width: 992px){.entry .entry-inner h6{font-size:20px}}.entry .entry-inner ul,.entry .entry-inner ol,.entry .entry-inner dl{margin-inline-start:1.5em}.entry .entry-inner ul li,.entry .entry-inner ol li,.entry .entry-inner dl li{line-height:1.8}.entry .entry-inner hr{margin:16px 0;border:none;border-top:1px solid #d9d9d9}.entry .entry-inner dd{margin-inline-start:40px}.entry .entry-inner blockquote{background:#fff;border-left:3px solid #e0e0e0;border-radius:4px;padding:16px;font-size:14px}.entry .entry-inner blockquote p{margin:16px 0;font-size:16px;line-height:1.6;font-style:oblique}.entry .entry-inner blockquote p cite{font-style:initial;font-size:14px}.entry .entry-inner pre{margin:0 0 24px;padding:16px 8px;background:#272822;color:#f8f8f2;border-radius:4px}.entry .entry-inner pre .synComment{color:#75715e}.entry .entry-inner pre .synSpecial{color:#e6db74}.entry .entry-inner pre .synType{color:#66d9ef}.entry .entry-inner pre .synPreProc,.entry .entry-inner pre .synStatement{color:#f92672}.entry .entry-inner pre .synIdentifier{color:#a6e22e}.entry .entry-inner pre .synConstant{color:#ae81ff}.entry .entry-inner table{width:100%;border-collapse:collapse;margin:0 0 16px;font-size:14px;border:1px solid #d9d9d9;border-radius:4px;overflow:hidden;border-collapse:unset;border-spacing:0}.entry .entry-inner table th{background:#d9d9d9;padding:.45em;border-right:1px solid #fff}.entry .entry-inner table th:last-child{border-right:none}.entry .entry-inner table tbody{display:table-row-group;text-align:center}.entry .entry-inner table tbody tr{display:table-row}.entry .entry-inner table tbody tr:nth-child(2n){background:#f5f5f5}.entry .entry-inner table tbody td{padding:.45em;border-right:1px solid #d9d9d9}.entry .entry-inner table tbody td:last-child{border-right:none}.entry .entry-inner .footnote{font-size:14px}.entry .entry-inner .entry-see-more{color:#333;border:1px solid #d9d9d9;font-size:16px;border-radius:4px;padding:.6em .8em}.entry .entry-inner .entry-see-more:hover{background:#f5f5f5;border:1px solid #f5f5f5;color:#1a237e;transition:color .3s}.entry .entry-inner .entry-footer-ad{margin:8px 0 0;padding:8px 4px;border:1px solid #d9d9d9;border-radius:4px}.entry .entry-inner .hatena-star-container{margin:0 0 24px}.entry .entry-inner .social-buttons{margin:24px 0}.entry .entry-inner .entry-footer-modules .hatena-module-title{font-size:18px;margin:0 0 24px}.entry .entry-inner .entry-footer-modules .hatena-module{margin:0;padding:1em 0}.entry .entry-inner .entry-footer-modules .related-entries,.entry .entry-inner .entry-footer-modules .entries-access-ranking,.entry .entry-inner .entry-footer-modules .recent-entries{margin:0}.entry .entry-inner .comment-box{margin:32px 0 0}.entry .entry-inner .comment-box .comment{margin:0}.entry .entry-inner .comment-box .comment .entry-comment{list-style:none;margin:0 0 32px}.entry .entry-inner .comment-box .comment .comment-user-name{margin:0 0 4px;display:flex;align-items:center}.entry .entry-inner .comment-box .comment .comment-user-name .hatena-id-icon{width:20px;height:20px;border-radius:4px;margin:0 8px 0 0}.entry .entry-inner .comment-box .comment .comment-content{margin:0 0 16px}.entry .entry-inner .comment-box .comment .comment-content p{font-size:16px;line-height:1.6;margin:16px 0}.entry .entry-inner .comment-box .comment .comment-metadata{margin:0;font-size:14px;color:#888}.entry .entry-inner .comment-box .leave-comment-title{border:1px solid #d9d9d9;border-radius:4px;color:#333;padding:8px 16px;font-size:16px}@media screen and (min-width: 992px){.entry .entry-inner .comment-box .leave-comment-title{font-size:14px}}.entry .entry-inner .comment-box .leave-comment-title:hover,.entry .entry-inner .comment-box .leave-comment-title:focus{color:#1a237e;background:#f5f5f5;border:1px solid #f5f5f5}.pager .pager-prev,.pager .pager-next{width:100%;position:relative;display:inline-block;background:#fff;border-radius:4px}.pager .pager-prev a,.pager .pager-next a{padding:1em;display:block}.pager .pager-prev:hover,.pager .pager-next:hover,.pager .pager-prev:focus,.pager .pager-next:focus{color:#1a237e}.pager .pager-prev .pager-arrow,.pager .pager-next .pager-arrow{font-size:32px;height:32px;line-height:32px;position:absolute;display:block;top:0;bottom:0;margin:auto;color:#d9d9d9}.pager.permalink{background:#fff;display:flex;justify-content:space-between;align-items:center;border-radius:4px;margin:24px 16px;padding:8px 16px;line-height:1.5}@media screen and (min-width: 992px){.pager.permalink{margin:32px auto}}.pager.permalink .pager-prev{margin-right:auto;padding:0 0 0 32px}.pager.permalink .pager-prev a{text-align:left;padding-left:0}.pager.permalink .pager-prev .pager-arrow{left:0}.pager.permalink .pager-next{margin-left:auto;padding:0 32px 0 0}.pager.permalink .pager-next a{text-align:right;padding-right:0}.pager.permalink .pager-next .pager-arrow{right:0}.page-index .pager{border-radius:4px;justify-content:center;text-align:center}.page-index .pager .pager-prev,.page-index .pager .pager-next{display:block}.hatena-module{background:#fff;margin:0 0 32px;padding:16px;border-radius:4px}.hatena-module .hatena-module-title{font-size:20px;font-weight:700;margin:0 0 24px}.hatena-module .hatena-module-title a{color:#333}.hatena-module .hatena-module-body,.hatena-module .hatena-urllist{padding:0}.hatena-module .hatena-module-body .urllist-item,.hatena-module .hatena-urllist .urllist-item{list-style:none;margin:0 0 32px}.hatena-module .hatena-module-body .urllist-item:last-child,.hatena-module .hatena-urllist .urllist-item:last-child{margin-bottom:0}.hatena-module .hatena-module-body .urllist-item .urllist-item-inner .urllist-title-link,.hatena-module .hatena-urllist .urllist-item .urllist-item-inner .urllist-title-link{color:#333;margin:0 0 8px;font-size:16px;line-height:1.6;display:inline;text-align:justify}.hatena-module .hatena-module-body .urllist-item .urllist-item-inner .urllist-title-link:hover,.hatena-module .hatena-urllist .urllist-item .urllist-item-inner .urllist-title-link:hover{color:#1a237e}.hatena-module .hatena-module-body .urllist-item .urllist-item-inner .urllist-date-link,.hatena-module .hatena-urllist .urllist-item .urllist-item-inner .urllist-date-link{margin:0 0 4px}.hatena-module .hatena-module-body .urllist-item .urllist-item-inner .urllist-date-link time,.hatena-module .hatena-urllist .urllist-item .urllist-item-inner .urllist-date-link time{color:#888}.hatena-module .hatena-module-body .urllist-item .urllist-item-inner .urllist-categories,.hatena-module .hatena-urllist .urllist-item .urllist-item-inner .urllist-categories{margin:4px 0 0}.hatena-module .hatena-module-body .urllist-item .urllist-item-inner .urllist-categories .urllist-category-link,.hatena-module .hatena-urllist .urllist-item .urllist-item-inner .urllist-categories .urllist-category-link{display:inline-block;background:#f5f5f5;margin:0 0 8px;padding:.4em;font-size:12px;border-radius:4px}.hatena-module .hatena-module-body .urllist-item .urllist-item-inner .urllist-categories .urllist-category-link:hover,.hatena-module .hatena-urllist .urllist-item .urllist-item-inner .urllist-categories .urllist-category-link:hover{color:#1a237e}.hatena-module .hatena-module-body .urllist-item .urllist-item-inner .urllist-entry-body,.hatena-module .hatena-urllist .urllist-item .urllist-item-inner .urllist-entry-body{color:#888;font-size:14px;margin:0 0 8px;text-align:justify}.hatena-module .hatena-module-body .urllist-image,.hatena-module .hatena-urllist .urllist-image{border-radius:4px}.hatena-module .hatena-module-body .urllist-see-more-link,.hatena-module .hatena-urllist .urllist-see-more-link{border:1px solid #f5f5f5;border-radius:4px;padding:.45em}.hatena-module .hatena-module-body .urllist-see-more-link:hover,.hatena-module .hatena-urllist .urllist-see-more-link:hover,.hatena-module .hatena-module-body .urllist-see-more-link:focus,.hatena-module .hatena-urllist .urllist-see-more-link:focus{color:#1a237e;background:#f5f5f5}.hatena-module .hatena-module-body .archive-module-year,.hatena-module .hatena-urllist .archive-module-year{margin:0 0 16px}.hatena-module .hatena-module-body .archive-module-year:last-child,.hatena-module .hatena-urllist .archive-module-year:last-child{margin:0}.search-form{display:flex;justify-content:center;border:1px solid #d9d9d9;border-radius:4px;overflow:hidden;position:relative}.search-form .search-module-input{width:100%;font-size:.8em;outline:0;border:none;margin:0;padding:.6em}.search-form .search-module-button{width:16px;height:16px;background:transparent url(https://cdn.blog.st-hatena.com/css/theme/neutral/images/search.png?version=42f79471deb2125a73b7c416e7e81d) no-repeat 50%;background-size:16px 16px;position:absolute;top:7px;right:6px;border:none;padding:.6em;outline:0;text-indent:-9999px;opacity:.5;cursor:pointer}.search-form .search-module-button:hover,.search-form .search-module-button:focus{transition:color .3s;opacity:1}.hatena-module-profile .hatena-module-body{display:flex;flex-direction:column;text-align:center}.hatena-module-profile .hatena-module-body .profile-icon{border-radius:4px;margin:0 0 8px}.hatena-module-profile .hatena-module-body .profile-description{margin:8px 0 0}.hatena-module-profile .hatena-module-body .profile-description p{font-size:14px;text-align:left}.hatena-module-profile .hatena-module-body .hatena-follow-button-box{margin:24px auto}.hatena-module-category .hatena-urllist li{list-style:none;margin:0 0 16px}.hatena-module-category .hatena-urllist li:last-child{margin-bottom:0}.hatena-module-category .hatena-urllist li a{color:#333;display:inline-block;background:#f5f5f5;padding:.4rem;border-radius:4px;font-size:14px}.hatena-module-category .hatena-urllist li a:hover,.hatena-module-category .hatena-urllist li a:focus{color:#1a237e}.hatena-module-recent-comments .recent-comments .hatena-id-icon{border-radius:4px}.hatena-module-recent-comments .recent-comments li{list-style:none;margin:0 0 16px}.hatena-module-recent-comments .recent-comments li:last-child{margin-bottom:0}.hatena-module-recent-comments .recent-comments .recent-comment-time{color:#888;font-style:normal}.hatena-module-links .hatena-urllist{list-style:none;line-height:1.8}.hatena-module-authors-list .authors-urllist{margin:0 0 8px}.hatena-module-authors-list .authors-urllist a{display:flex;align-items:center}.hatena-module-authors-list .authors-urllist .authors-user-icon{border-radius:4px;width:32px}.hatena-module-circles .circle-urllist li{display:flex;margin:0 0 16px;align-items:center}.hatena-module-circles .circle-urllist li:last-child{margin-bottom:0}.hatena-module-html ul{margin-inline-start:1.2em}.hatena-module-html p,.hatena-module-html pre{line-height:1.6;margin:16px 0}.hatena-module-html code,.hatena-module-html .code{background:#272822;color:#f8f8f2;padding:.24em;border-radius:4px;font-size:14px}.hatena-module-archive .calendar-day a{color:#888}.page-archive .archive-entries{background:#fff;padding:32px 16px 40px;border-radius:4px}.page-archive .archive-heading{margin:0 0 32px;background:#fff;border-radius:4px;padding:16px}.page-archive .search-result{background:#fff;border-radius:4px;padding:16px 16px 40px}.archive-header-category{background:#fff;border-radius:4px}.archive-header-category .archive-heading{margin:0;padding:16px}.page-archive-category .archive-header-category{margin:0 0 40px}.page-archive-category .archive-header-category .archive-heading{background:#f5f5f5;padding:4px 8px;margin:16px;border-radius:4px;display:inline-block;font-size:16px}.page-archive-category .archive-header-category .archive-heading .archive-entries .archive-entry{margin:0 0 72px}.page-archive-category .archive-header-category .archive-heading .archive-entries .archive-entry:last-child{margin-bottom:0}.page-archive-category .archive-header-category .archive-heading .entry-title{font-size:22px;line-height:1.5em}.page-archive-category .archive-header-category .archive-heading .entry-title a{color:#333}.page-archive-category .archive-header-category .archive-heading .entry-title a:hover,.page-archive-category .archive-header-category .archive-heading .entry-title a:focus{color:#1a237e}.page-archive-category .archive-category-link{color:#333;background-color:#f5f5f5;margin:0 0 8px;padding:.4em;border-radius:4px}.archive-entry{margin:0 0 40px}@media screen and (min-width: 992px){.archive-entry{margin:0 0 72px}}.archive-entry:last-child{margin-bottom:0}.archive-entry .archive-entry-header .date{margin:0 0 8px}.archive-entry .archive-entry-header .date time{color:#888;font-size:14px}@media screen and (min-width: 992px){.archive-entry .archive-entry-header .date{font-size:18px}}.archive-entry .archive-entry-header .entry-title{margin:0 0 16px}.archive-entry .archive-entry-header .entry-title .entry-title-link{font-size:18px}@media screen and (min-width: 992px){.archive-entry .archive-entry-header .entry-title .entry-title-link{font-size:22px;margin:0 0 24px}}.archive-entry .archive-entry-header .highlight,.archive-entry .archive-entry-body .highlight{background:#faeacb;border-radius:4px;border:none}.archive-entry .categories{margin:0 0 8px}.archive-entry .categories .archive-category-link{font-size:12px;background:#f5f5f5;margin:0 0 8px;padding:.45em;border-radius:4px;display:inline-block}.archive-entry .entry-thumb{border-radius:4px;width:80px;height:80px}@media screen and (min-width: 992px){.archive-entry .entry-thumb{width:100px;height:100px}}.archive-entry .archive-entry-body .entry-description{font-size:14px;line-height:1.5;margin:0 0 8px}.page-about .entry-content{margin:0 0 24px}.page-about .entry-content img.profile-icon{width:24px;height:24px;border-radius:4px;margin:0 8px 0 0}.page-about .entry-content dl{margin:24px 0 0}.page-about .entry-content dt{font-size:18px;line-height:1.8;margin:0 0 8px}.page-about .entry-content dd{margin-bottom:16px}.page-about .entry-content dd li{list-style:disc;color:#1a237e;font-size:16px}.page-about .entry-content dd li a:hover{text-decoration:underline}
  */
/* </system> */

/* <system section="background" selected="f4f1ea"> */
body{background:#f4f1ea;}
/* </system> */
.mo-author a:hover {
    opacity: .5;
}
a.mo-author-img {
    text-align: center;
    display: block;
}
.mo-author img {
    border-radius: 50%;
    box-shadow: 1px 2px 2px 2px rgb(0 0 0 / 20%);
}
a.mo-author-name {
    text-align: center;
    display: block;
    font-size: 1.2rem;
    color: #333;
    font-weight: bold;
    text-decoration: none;
}
.mo-author p {
    margin: 0.3em 0;
}
ul.mo-sns-btn {
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    list-style: none;
}
ul.mo-sns-btn li {
    margin: 2px;
    line-height: 40px;
    border-radius: 50%;
    height: 40px;
    width: 40px;
}
ul.mo-sns-btn a {
    color: #fff;
    background-color: #dfdfdf;
    display: block;
    padding: 0 10px;
    text-align: center;
}
li.mo-snsbtn-hatena a:hover {
    background-color: #000;
}
li.mo-snsbtn-twitter a:hover {
    background-color: #1DA1F2;
}
li.mo-snsbtn-facebook a:hover {
    background-color: #1877f2;
}
li.mo-snsbtn-insta a:hover {
    background-color: #f13f79;
}
li.mo-snsbtn-rss a:hover {
    background-color: #ee802f;
}
li.mo-snsbtn-mail a:hover {
    background-color: red;
}

@media (max-width: 767px) {
    .dotted-box {
        padding: 10px 15px; /* モバイル時に余白を減らす */
    }
    .mo-author {
        display: flex;
        gap: 10px;
    }
    .mo-author-left {
    padding: 10px;
    }
    .mo-author img {
        border-radius: 50%;
        box-shadow: 1px 2px 2px 2px rgb(0 0 0 / 20%);
        height: 70px !important;
        width: 70px !important;
        max-width: none !important;
        min-width: auto !important;
        max-height: none !important;
        min-height: auto !important;
    }
}

/* 目次全体のデザイン（背景色と上下ボーダー） */
.table-of-contents {
    background-color: #f4f1ea !important; /* 強制的に囲みと同じ水色を適用 */
    border-top: 4px solid #d2c7b7 !important; /* 上のボーダー */
    border-bottom: 4px solid #d2c7b7 !important; /* 下のボーダー */
    padding: 15px !important; /* 内側の余白 */
    margin-bottom: 20px !important; /* 下の要素との余白 */
    border-radius: 10px !important; /* 角を丸く */
}

.table-of-contents::before {
    content: "≡ 目次"; /* 三本線＋目次 */
    font-weight: bold !important;
    font-size: 20px !important;
    display: flex !important;
    align-items: center !important;
    color: #6d7d4d !important; /* 目次タイトルの色を黒 */
    border-bottom: 2px solid #d2c7b7 !important; /* 下線を追加 */
    padding-bottom: 5px !important;
    margin-bottom: 10px !important;
}

/* 目次内の見出し（h3, h4）の色を黒に統一 */
.table-of-contents h3,
.table-of-contents h4 {
    color: #6d7d4d !important; /* 文字色を黒 */
}

/* 本文の大見出し（h3）の左側に縦線を追加 */
h3 {
    border-left: 4px solid #6d7d4d; /* 縦線 */
    padding-left: 10px; /* 縦線と文字の間に余白 */
    font-weight: bold; /* 強調 */
    font-size: 18px;
    margin-bottom: 10px; /* 見出し下の余白 */
}


/* 本文の小見出し（h4）のインデントを調整 */
h4 {
    padding-left: 20px; /* h3より深くする */
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 10px;
    position: relative;
}

/* 本文の小見出し（h4） */
h4 {
    position: relative; /* ::before の基準を確保 */
    padding-left: 30px; /* ▶ の分の余白を確保 */
    line-height: 1.6; /* 行の高さを適度に設定 */
    font-size: 20px; /* 見出しのフォントサイズ */
}

/* 小見出しの前に ▶ を追加 */
h4::before {
    content: "\25BA"; /* ► */
    color: #6d7d4d;
    font-size: 22px; /* ▶ のサイズ */
    font-weight: bold;
    position: absolute;
    left: 5px; /* 左の余白を調整 */
    top: 50%; /* 少し上に調整 */
    transform: translateY(-50%); /* さらに上へ */
}


/* 目次のリスト項目（li）の文字色を黒に */
.table-of-contents li {
    color: #6d7d4d !important; /* リスト項目の文字を黒 */
}

/* 目次のリンクの色を黒に */
.table-of-contents a {
    color: #6d7d4d !important; /* リンクの色を黒 */
    text-decoration: none !important; /* 下線を削除 */
}

/* 目次の大見出し（リスト）に左側の縦線を追加し、リストマーカーを削除 */
.table-of-contents > ul > li, .table-of-contents > ol > li {
    list-style: none !important; /* リストマーカーを削除 */
    position: relative !important;
    padding-left: 15px !important; /* 文字との余白 */
    color: #6d7d4d !important; /* 見出しの文字色を黒 */
}

/* 目次の大見出しの左側に縦棒を追加 */
.table-of-contents > ul > li::before, .table-of-contents > ol > li::before {
    content: "|"; /* 縦棒 */
    color: #6d7d4d !important; /* 縦棒の色を黒 */
    font-weight: bold !important;
    position: absolute !important;
    left: 0 !important;
}

/* 目次の小見出し（サブリスト）に小さめの◆を追加し、色を黒に変更 */
.table-of-contents ul ul li::before, .table-of-contents ol ul li::before {
    content: "⬩"; /* 小さめの◆ */
    color: #6d7d4d !important; /* 黒色 */
    font-size: 10px !important; /* 小さくする */
    font-weight: bold !important;
    margin-right: 5px !important;
}

/* 目次の小見出し（h4）に「▶」を追加 */
.table-of-contents ul li {
    position: relative;
    padding-left: 25px; /* アイコンの分だけ余白を確保 */
}

/* 目次の各項目の前に ► を追加 */
.table-of-contents ul li::before {
    content: "\25BA"; /* ► に変更 */
    color: #6d7d4d; /* アイコンの色 */
    font-size: 16px; /* アイコンのサイズ */
    font-weight: bold;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.table-of-contents ul li {
  margin-left: 1em
}

ul.table-of-contents,
ul.table-of-contents li,
ul.table-of-contents ul li {
  list-style:  "｜";
}

h4 {
    position: relative;
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 10px;
    padding-bottom: 5px; /* 下線との間隔 */
    border-bottom: 2px solid #6d7d4d; /* 水色の下線 */
}

.highlight {
    background-color: #f4f1ea; /* 薄い水色 */
    padding: 2px 4px; /* 文字と背景の間の余白 */
    border-radius: 4px; /* 角を丸くする */
    
    }
.dotted-box {
    border: 2px solid #d2c7b7;
    padding: 12px 18px;
    background-color: #f4f1ea;
    display: block;
    width: 100%;
    max-width: 100%;
    border-radius: 10px;
    margin: 15px 0;
    box-sizing: border-box;
}

.dotted-separator {
    border-bottom: 1px dotted #666;
    margin: 10px 0;
}


.marker-effect {
    background: linear-gradient(transparent 60%, rgba(244, 218, 200, 0.7) 60%);
    color: #333; /* 黒 */
    padding: 2px 4px;
    border-radius: 2px;
}



@media (max-width: 767px) {
    h4 {
        line-height: 1.8 !important; /* 行の高さを確保して圧縮を防ぐ */
    }
    .table-of-contents {
        padding: 10px !important; /* スマホでは余白を少し減らす */
        font-size: 14px !important; /* 文字サイズを少し小さめに */
    }
    .table-of-contents li {
        padding-left: 10px !important;
    }
    .table-of-contents > ul > li::before, 
    .table-of-contents > ol > li::before {
        left: -5px !important; /* 縦棒の位置を調整 */
    }
    .table-of-contents ul li::before {
        left: -2px !important;
    }
}

.table-of-contents {
    overflow-x: auto;
    white-space: nowrap;
}

.fixed-button {
    position: fixed; /* 固定表示 */
    bottom: 20px;    /* 画面下から20px */
    right: 20px;     /* 画面右から20px */
    background-color: #ffcc00; /* ボタンの背景色 */
    padding: 10px 20px;        /* ボタンの余白 */
    border-radius: 5px;        /* ボタンの角を丸く */
    color: white;              /* 文字色 */
    font-size: 16px;           /* フォントサイズ */
    text-decoration: none;     /* テキストの下線を削除 */
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2); /* 影をつける */
    z-index: 9999;             /* 他の要素の上に表示 */
}

/* 丸い「トップへ戻る」ボタン */
.scroll-to-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 50px;
    height: 50px;
    background-color: #f4f1ea;
    border: 2px solid #f4f1ea; /* 画像の薄い青 */
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    z-index: 9999;
    transition: background-color 0.3s, transform 0.2s;
}

/* ホバー時のエフェクト */
.scroll-to-top:hover {
    background-color: rgba(244, 231, 234, 0.5); /* 薄い青の半透明 */
    transform: scale(1.1);
}

/* 上向き矢印のデザイン */
.scroll-to-top::before {
    content: "▲";
    font-size: 18px;
    color: #6d7d4d; /* 矢印の色も画像の薄い青 */
}

#toc-content {
  max-height: 200px;  /* 最初は200pxの高さで表示 */
  overflow: hidden;
  transition: max-height 0.5s ease-in-out;
}

#toc-container.expanded #toc-content {
  max-height: 1000px; /* 展開時に十分な高さを確保 */
}

/* 目次のデザイン */
#toc-container {
  position: relative;
  background: #f4f1ea; /* 目次の背景色（薄い水色） */
  border: 1px solid #d2c7b7; /* 枠線を水色に */
  padding: 10px;
  border-radius: 10px; /* 角を丸く */
  max-height: 200px; /* 初期の高さ */
  overflow: hidden;
  transition: max-height 0.5s ease-in-out;
}

/* 外側の白い枠を削除（影や余白をなくす） */
.table-of-contents {
  background-color: transparent !important; /* 透明にする */
  border: none !important; /* 枠線なし */
  box-shadow: none !important; /* 影を消す */
  padding: 0 !important; /* 不要な余白を削除 */
}

/* 目次の下部にグラデーションをつけて、徐々に透明に */
#toc-container::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0px; /* 「もっと見る」ボタンの高さ分を調整 */
  width: 100%;
  height: 150px; /* グラデーションの高さ */
  background: linear-gradient(to bottom, rgba(244, 231, 234, 0) 0%, #f4f1ea 100%);
  pointer-events: none; /* クリックを無効化 */
}

/* 展開時にグラデーションを消す */
#toc-container.expanded::after {
  display: none;
}

/* 目次を開いたときの高さ */
#toc-container.expanded {
  max-height: 1000px; /* 高さを大きく */
}

/* 「もっと見る」ボタンのデザイン */
#toggle-toc {
  display: block;
  position: absolute;
  bottom: 5px;
  left: 50%;
  transform: translateX(-50%);
  padding: 8px 15px;
  border: none;
  background: #faf9f6;
  color: #6d7d4d;
  cursor: pointer;
  font-size: 14px;
  border-radius: 20px; /* 角を丸める */
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  transition: background 0.3s;
  border: 2px solid #d2c7b7; /* ボタンの枠を濃いグレーに */
  z-index: 2; /* ボタンを最前面に */
}

/* ボタンのホバー時 */
#toggle-toc:hover {
  background: #f4f1ea;
}

/* もっと見るの上の白い線を削除 */
#toc-container hr {
  display: none !important;
}
span.author.vcard {

display:none;

}
/* ナビゲーションバーのスタイル */
.fixed-navbar {
    background-color: #f4f1ea;
    border-bottom: 1px solid #d2c7b7;
    text-align: center;
    padding: 10px 0;
    font-family: 'ヒラギノ角ゴ ProN W3';
}

.fixed-navbar a {
    text-decoration: none;
    color: #6d7d4d;
    font-weight: bold;
    margin: 0 15px;
    transition: color 0.3s;
    position: relative;
}

/* ホバー時の文字色変更 */
.fixed-navbar a:hover {
    color: #4d5a33;
}

/* ドロップダウンのスタイル */
.dropdown {
    position: relative;
    display: inline-block;
}

.dropdown-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    background-color: #f4f1ea;
    border: 1px solid #d2c7b7;
    border-radius: 4px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    min-width: 150px;
    text-align: left;
    z-index: 1000;
}

.dropdown-menu li {
    list-style: none;
}

.dropdown-menu li a {
    display: block;
    padding: 5px 15px;
    color: #6d7d4d;
    text-decoration: none;
    transition: color 0.3s;
}

/* ドロップダウン内のホバー時の文字色変更 */
.dropdown-menu li a:hover {
    color: #4d5a33;
}

/* ホバー時にドロップダウンを表示 */
.dropdown:hover .dropdown-menu {
    display: block;
}

@media (max-width: 480px){

#blog-title-inner {background-size: contain!important; }
}
/* タイトル画像上下の余白を調整 */
#blog-title {
margin: 0px auto 0px auto;
padding: 0;
}
/*** シンプルなデザイン ***/
.page-archive .archive-entries {
    display: flex;
    flex-wrap: wrap;
}

.page-archive .archive-entries .archive-entry {
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    padding: 10px;
    width: 100%;
    height: auto;
    margin-bottom: 2em;
}

@media (min-width: 481px) {
   .page-archive .archive-entries .archive-entry {
        width: 50%;
} 
}

.archive-entry-header {
    display: flex;
    flex-direction: column-reverse;
    order: 2;
    width: 100%;
}

.page-archive .archive-entries .entry-title {
    line-height: 1.5;
    font-size: 18px;
    margin: .5em 0;
    padding: 0;
    font-weight: bold;
}

.page-archive .entry-title a {
    font-size: 18px;
}

.page-archive .archive-entries .entry-thumb-link {
    position: relative;
    padding-top: 56.25%;
    overflow: hidden;
    border-radius: 6px;
    box-shadow: rgba(50, 50, 93, 0.15) 0px 2px 5px -1px, rgba(0, 0, 0, 0.2) 0px 1px 3px -1px;
    width: 100%;
    height: auto;
}

.page-archive .entry-thumb {
    background-size: cover;
    background-position: 50%;
    border-radius: 0;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    padding: 0;
    transition: .25s ease-in-out;
}

.page-archive .archive-entries .categories {
    order: 3;
    margin: 0;
    padding: 0;
}

.page-archive .entry-thumb::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,.3);
    opacity: 0;
    transition: .25s ease-in-out;
}

.page-archive .archive-entries .archive-entry:hover .entry-thumb {
    transform: scale(1.05);
}

.page-archive .archive-entries .archive-entry:hover .entry-thumb::before {
    opacity: 1;
}

.archive-entry-body {
    display: none;
}

.custom-box {
    border: 3px double #6B8E23; /* オリーブグリーンの二重線 */
    padding: 0px 20px; /* 上下：狭め、左右：広め */
    line-height: 1.5;
    margin: 0; /* 上下の余白をさらに少なめに */
    font-size: 14px;
    font-family: sans-serif;
}

.custom-box legend {
    padding: 0 10px;
    margin: 0px; /* タイトル下の余白をなくす */
}

.custom-box .title {
    font-size: 20px;
    color: #6B8E23; /* オリーブグリーン */
    font-weight: bold;
    margin: 0;
  　padding: 0;
}

/* レスポンシブ対応：スマホ表示用 */
@media (max-width: 480px) {
    .fixed-navbar {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        padding: 5px 0;
    }
    
    .fixed-navbar a {
        flex-shrink: 0;
        padding: 5px 10px;
        margin: 0;
        font-size: 12px;  /* 文字サイズを小さく */
        display: inline-block;
        text-decoration: none;
    }
    
    /* ホバー時の色変更（背景色ではなく文字色） */
    .fixed-navbar a:hover {
        color: #4d5a33;
    }
}

.simple-box {
    border: 3px 6B8E23; /* オリーブグリーンで二重線 */
    padding: 0px 20px; /* 上下の余白を少なく、左右を多めに */
    background-color: #f4f1ea; /* 背景色はそのまま */
    border-radius: 0; /* 角を丸くしない */
    box-sizing: border-box;
    margin: 0; /* 上下の余白をなくす */
    width: 100%;
    max-width: 100%; /* 幅を親要素に合わせる */
    position: relative;
}

.simple-box .title {
    display: none; /* 左上の見出しを非表示に */
}
.double-box { 
    border: 3px double #6d7d4d; /* 二重線のオリーブ色 */
    padding: 12px 18px;
    background-color: transparent; /* 背景色をなしに設定 */
    display: block;
    width: 100%;
    max-width: 100%;
    border-radius: 0; /* 角を丸くしない */
    margin: 15px 0;
    box-sizing: border-box;
}

.info-box {
    border: 3px double #6d7d4d; /* 二重線のオリーブ色 */
    padding: 20px 18px;
    background-color: transparent; /* 背景色なし */
    display: block;
    width: 100%;
    max-width: 100%;
    border-radius: 0; /* 角を丸くしない */
    margin: 15px 0;
    box-sizing: border-box;
    position: relative; /* タイトルの配置に必要 */
}

.info-title {
    position: absolute;
    top: -12px;
    left: 15px;
    background-color: #fff; /* タイトル背景色（白） */
    color: #6d7d4d; /* オリーブ色に合わせた文字色 */
    font-weight: bold;
    padding: 0 5px;
    font-size: 16px;
}


