@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,700;1,400;1,500;1,700&family=Noto+Sans+JP:wght@400;500;700&display=swap');

/* <system section="theme"> */
/*!
Theme: Media-v2
Author: Hatena Blog Team
Description: はてなCMSのデフォルトテーマです
Responsive: yes
*//*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [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{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}*{box-sizing:border-box}html,body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;color:#3d3f44;background-color:#fff;line-height:1.5;word-wrap:break-word}a{color:#5684d7;text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{color:#3d3f44;line-height:1.3}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{color:#3d3f44}.blog-header:not(.is-touch) .blog-header-inner{margin-left:10px;margin-right:10px}@media(min-width:768px){.blog-header:not(.is-touch) .blog-header-inner{width:720px;margin:auto;padding-left:0;padding-right:0}}@media(min-width:992px){.blog-header:not(.is-touch) .blog-header-inner{width:940px}}@media(min-width:1200px){.blog-header:not(.is-touch) .blog-header-inner{width:1140px}}.blog-header-inner{padding:1.2rem 0;text-align:center}@media(min-width:768px){.blog-header-inner{padding:1.5rem 0}}.blog-header-fullwidth .blog-header-inner{margin:0;width:auto;padding:0}.blog-title-heading{margin:0 auto;font-size:1.5rem}@media(min-width:576px){.blog-title-heading{font-size:1.8rem}}.blog-title-heading img{vertical-align:middle;max-width:100%}.blog-description{color:#9aa5ab;line-height:1.3;margin:.5rem 0 0;font-size:.8rem;display:none}@media(min-width:576px){.blog-description{display:block}}@media(min-width:576px){.navbar:not(.is-touch){margin-bottom:2rem}}@media(min-width:576px){.navbar:not(.is-touch) .navbar-inner{margin-left:10px;margin-right:10px}}@media(min-width:576px)and (min-width:768px){.navbar:not(.is-touch) .navbar-inner{width:720px;margin:auto;padding-left:0;padding-right:0}}@media(min-width:576px)and (min-width:992px){.navbar:not(.is-touch) .navbar-inner{width:940px}}@media(min-width:576px)and (min-width:1200px){.navbar:not(.is-touch) .navbar-inner{width:1140px}}.navbar{background-color:#f7f8f9;margin-bottom:1.5rem;border-bottom:4px solid #5684d7}.navbar .navbar-inner{display:flex;justify-content:space-between}.navbar-list{position:relative;display:flex;margin:0 auto;padding:0;align-items:left;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;white-space:nowrap;flex-wrap:nowrap}@media(min-width:576px){.navbar-list{flex-wrap:wrap;white-space:normal}}.navbar.is-open .navbar-list{flex-wrap:wrap;white-space:normal;overflow:visible}.navbar.is-open .navbar-list:after{display:none}.navbar-list li{list-style:none;max-width:15rem}.navbar-list a{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;height:44px;padding:0 .6rem;font-size:.8rem;line-height:1.3;font-weight:700;color:#5684d7}.navbar-list a:after{content:"";position:absolute;top:0;left:0;display:block;width:100%;height:100%;background-color:#0000;transition:background-color .2s}.navbar-list a:hover{text-decoration:none}.navbar-list a:hover:after{background-color:#00000014}@media(min-width:768px){.navbar-list a{font-size:.95rem;padding:0 1rem;height:3.5rem}}.navbar-toggle-nav{position:relative;text-align:center}@media(min-width:576px){.navbar-toggle-nav{display:none}}.navbar-toggle-nav:after{content:"";display:block;position:absolute;top:0;left:-30px;width:30px;height:44px;background:linear-gradient(to right,#f7f8f900,#f7f8f9)}@media(min-width:576px){.navbar-toggle-nav:after{display:none}}.navbar-toggle-btn{position:relative;background-size:16px 12px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;cursor:pointer}.navbar-toggle-btn:after{content:"";position:absolute;top:0;left:0;display:block;width:100%;height:100%;background-color:#0000;transition:background-color .2s}.navbar-toggle-btn:hover{color:transparent;text-decoration:none}.navbar-toggle-btn:hover:after{background-color:#00000014}.navbar.is-open .navbar-toggle-btn .navbar-toggle-btn-open,.navbar-toggle-btn .navbar-toggle-btn-close{display:none}.navbar.is-open .navbar-toggle-btn .navbar-toggle-btn-close{display:inline}.navbar-toggle-btn-icon line{stroke:#5684d7}.entry-content{line-height:1.7;font-size:.9rem}@media(min-width:576px){.entry-content{font-size:1rem}}.entry-content a.keyword{text-decoration:none;border-bottom:1px dotted #DFE5E7;color:#3d3f44}.entry-content p{margin:1rem 0}.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:1em 0 .8em;line-height:1.3}.entry-content h2,.entry-content h3{padding-bottom:.1em;border-bottom:1px solid #DFE5E7}.entry-content h1{font-size:150%}@media(min-width:768px){.entry-content h1{font-size:160%}}.entry-content h2{font-size:140%}@media(min-width:768px){.entry-content h2{font-size:150%}}.entry-content h3{font-size:130%}@media(min-width:768px){.entry-content h3{font-size:140%}}.entry-content h4{font-size:120%}@media(min-width:768px){.entry-content h4{font-size:130%}}.entry-content h5{font-size:110%}@media(min-width:768px){.entry-content h5{font-size:110%}}.entry-content h6{font-size:100%}.entry-content ul,.entry-content ol,.entry-content dd{margin:0 0 1em 1.5em;padding:0}.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 table{border-collapse:collapse;border-spacing:0;border-bottom:1rem;margin-bottom:1rem;width:100%;overflow:auto;display:block;font-size:.8rem}@media(min-width:576px){.entry-content table{font-size:.9rem}}.entry-content table th,.entry-content table td{border:1px solid #DFE5E7;padding:5px 10px}.entry-content table th{background:#f7f8f9}.entry-content .hatena-asin-detail li{line-height:1.4}.entry-content blockquote{margin:1rem 0;padding:5px 5px 5px 15px;border-left:3px solid #DFE5E7}@media(min-width:768px){.entry-content blockquote{margin:1.5rem 2rem;padding:5px 20px}}.entry-content blockquote p:first-child{margin-top:0}.entry-content blockquote p:last-child{margin-bottom:0}.entry-content pre,.entry-content code{font-family:Monaco,Consolas,Courier New,Courier,monospace,sans-serif}.entry-content pre{background:#f7f8f9;border:none;white-space:pre-wrap;text-overflow:ellipsis ellipsis;font-size:100%;line-height:1.3;font-size:.8rem;padding:10px}@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 2px;padding:0 5px;background-color:#f7f8f9;border-radius:3px}.entry-content hr{width:50%;border:0;border:none;border-top:1px solid #DFE5E7;margin:2em auto}.entry-content .hatena-asin-detail,.entry-content .itunes-embed{background-color:#f7f8f9;border-color:#dfe5e7}.entry-content .entry-see-more{width:100%;box-sizing:border-box;text-decoration:none}.entry-content .table-of-contents{padding:1em 1em 1em 2em;margin:1em 0;border:1px solid #DFE5E7}.hatena-module-title{font-weight:700;margin-bottom:1rem;padding-top:0;padding-bottom:5px;font-size:1.2rem;border-top:0;border-bottom:1px solid #bdccd4;color:#5684d7;position:relative}.hatena-module-title a{color:#5684d7;text-decoration:none}.hatena-module-title a:hover{text-decoration:underline}.hatena-module-title:after{content:"";position:absolute;display:block;bottom:-1px;left:0;z-index:1;width:70px;border-bottom:4px solid #5684d7}.hatena-module{margin-bottom:2rem}.hatena-urllist{margin:0;padding:0}.hatena-urllist li{list-style:none;padding-bottom:.8rem;margin-bottom:.8rem;border-bottom:1px solid #DFE5E7}.hatena-urllist li:last-child{border:none;margin-bottom:0;padding-bottom:0}.hatena-urllist .urllist-title-link{font-weight:700;color:#3d3f44;font-size:.9rem;line-height:1.5}@media(min-width:576px){.hatena-urllist .urllist-title-link{font-size:1rem}}@media(min-width:768px){.hatena-urllist .urllist-title-link{font-size:1.1rem}}.urllist-date-link{font-size:.8rem}.urllist-date-link a{color:#9aa5ab}.urllist-entry-body{font-size:.85rem;color:#55585f;margin-top:.3rem}.urllist-categories{margin-top:.3rem}.urllist-image{max-width:100%}.urllist-see-more-link{display:inline-block;text-align:center;padding:.6rem 1rem;cursor:pointer;line-height:1.5;font-size:.8rem;overflow:hidden;background-color:#79878f;color:#fff;font-weight:700;border-radius:.2rem;text-decoration:none!important;transition:all .2s}.urllist-see-more-link:hover{background-color:#616d74;color:#fff;text-decoration:none}.urllist-see-more-link img,.urllist-see-more-link svg{vertical-align:top;margin-right:.3em}@media(min-width:576px){#header-modules .hatena-urllist,#top-page-header-modules .hatena-urllist{display:flex;flex-wrap:wrap;margin:0 -.7rem;padding:0}}@media(min-width:992px){#header-modules .hatena-urllist,#top-page-header-modules .hatena-urllist{margin:0 -1rem}}#header-modules .urllist-item,#top-page-header-modules .urllist-item{margin-bottom:2rem;padding-bottom:0;border-bottom:none;box-sizing:border-box}#header-modules .urllist-item:last-child,#top-page-header-modules .urllist-item:last-child{margin-bottom:0}@media(min-width:576px){#header-modules .urllist-item,#top-page-header-modules .urllist-item{margin-bottom:0;width:33.3333%;padding:0 .7rem}}@media(min-width:992px){#header-modules .urllist-item,#top-page-header-modules .urllist-item{padding:0 1rem}}#header-modules .urllist-image-link,#top-page-header-modules .urllist-image-link{display:flex;align-items:center;justify-content:center;margin:0 0 .5rem}#header-modules .urllist-image,#top-page-header-modules .urllist-image{max-width:100%;float:none;display:block;margin-right:0;margin-bottom:0}#header-modules .urllist-title-link,#top-page-header-modules .urllist-title-link{font-size:1rem}@media(min-width:768px){#header-modules .urllist-title-link,#top-page-header-modules .urllist-title-link{font-size:1.1rem}}.footer:not(.is-touch) .footer-inner{margin-left:10px;margin-right:10px}@media(min-width:768px){.footer:not(.is-touch) .footer-inner{width:720px;margin:auto;padding-left:0;padding-right:0}}@media(min-width:992px){.footer:not(.is-touch) .footer-inner{width:940px}}@media(min-width:1200px){.footer:not(.is-touch) .footer-inner{width:1140px}}.footer{padding:2rem 0;font-size:.85rem;text-align:center;background:transparent}.footer .footer-nav ul{list-style:none;margin:0 0 1rem;padding:0}.footer .footer-nav ul li{display:inline-block;margin:.6rem .6rem 0 0;padding-right:.6rem;border-right:1px solid #DFE5E7}.footer .footer-nav ul li:last-child{border-right:0;margin-right:0;padding-right:0}.footer address{font-style:normal;color:#9aa5ab}.footer a{color:#9aa5ab;text-decoration:none}.footer a:hover{text-decoration:underline}#content{margin-left:10px;margin-right:10px}@media(min-width:768px){#content{width:720px;margin:auto;padding-left:0;padding-right:0}}@media(min-width:992px){#content{width:940px}}@media(min-width:1200px){#content{width:1140px}}@media(min-width:768px){#content-inner{display:flex;margin:0 -.7rem}}@media(min-width:992px){#content-inner{margin:0 -1rem}}@media(min-width:768px){#wrapper{width:66.6666%;padding:0 .7rem}}@media(min-width:992px){#wrapper{padding:0 1rem}}@media(min-width:768px){#box2{width:33.3333%;padding:0 .7rem}}@media(min-width:992px){#box2{padding:0 1rem}}@media(min-width:768px){.static-page-layout-header-footer #content-inner{display:block;margin:0}}@media(min-width:992px){.static-page-layout-header-footer #content-inner{margin:0}}@media(min-width:768px){.static-page-layout-header-footer #wrapper{width:auto;padding:0}}@media(min-width:992px){.static-page-layout-header-footer #wrapper{padding:0}}.entry{margin-bottom:3rem}.entry-header{position:relative;margin-bottom:1.5rem}.date{font-size:.8rem}.date a,.date-last-updated{color:#9aa5ab}.entry-header-menu{position:absolute;top:0;right:0}.entry-header-menu a{display:inline-block;text-align:center;padding:.6rem 1rem;cursor:pointer;line-height:1.5;font-size:.8rem;overflow:hidden;background-color:#79878f;color:#fff;font-weight:700;border-radius:.2rem;text-decoration:none!important;transition:all .2s;padding:.3em .7em;font-size:.75rem}.entry-header-menu a:hover{background-color:#616d74;color:#fff;text-decoration:none}.entry-header-menu a img,.entry-header-menu a svg{vertical-align:top;margin-right:.3em}.entry-title{font-size:1.5rem;margin:.5rem 0}@media(min-width:576px){.entry-title{font-size:1.7rem}}.entry-title a{text-decoration:none}.entry-title a:hover{text-decoration:underline}.entry-footer{margin-top:1rem}.entry-footer-section{font-size:.8rem;color:#9aa5ab}.entry-footer-section a{color:#9aa5ab}.entry-footer-section a:hover{text-decoration:underline}.comment-box ul{list-style:none;margin:0 0 15px;padding:0;font-size:.9rem}.comment-box li{padding:10px 0 10px 60px;border-bottom:1px solid #DFE5E7;position:relative}.comment-box li:first-child{border-top:1px solid #DFE5E7}.comment-box .hatena-id-icon{position:absolute;top:10px;left:0;width:50px!important;height:50px!important;border-radius:3px}.comment-user-name{margin:0 0 10px;font-weight:700}.comment-content{font-size:.85rem;margin:0 0 10px;word-wrap:break-word}.comment-content p{margin:0 0 10px}.comment-metadata{font-size:.8rem;color:#9aa5ab;margin:0}.comment-metadata a{color:#9aa5ab}.leave-comment-title{display:inline-block;text-align:center;padding:.6rem 1rem;cursor:pointer;line-height:1.5;font-size:.8rem;overflow:hidden;background-color:#79878f;color:#fff;font-weight:700;border-radius:.2rem;text-decoration:none!important;transition:all .2s}.leave-comment-title:hover{background-color:#616d74;color:#fff;text-decoration:none}.leave-comment-title img,.leave-comment-title svg{vertical-align:top;margin-right:.3em}.pager{font-size:.9rem;display:flex;align-items:center;justify-content:center;width:100%;line-height:1.5;border-top:1px solid #DFE5E7;border-bottom:1px solid #DFE5E7;text-align:center;margin:1.5em auto}.pager a{color:#3d3f44;font-weight:700;text-decoration:none}.pager a:hover{text-decoration:underline}.pager .pager-next,.pager .pager-prev{position:relative;width:50%}.pager .pager-next a,.pager .pager-prev a{display:block;padding:1rem}@media(min-width:768px){.pager .pager-next a,.pager .pager-prev a{padding:.5rem}}.pager .pager-next .pager-arrow,.pager .pager-prev .pager-arrow{font-size:20px;height:20px;line-height:.7;position:absolute;display:block;top:0;bottom:0;margin:auto;color:#dfe5e7}@media(min-width:768px){.pager .pager-next .pager-arrow,.pager .pager-prev .pager-arrow{font-size:30px;height:30px}}.pager.permalink .pager-next{text-align:right}.pager.permalink .pager-next a{padding-right:20px}@media(min-width:768px){.pager.permalink .pager-next a{padding-right:40px}}.pager.permalink .pager-next .pager-arrow{right:0}.pager.permalink .pager-prev{text-align:left}.pager.permalink .pager-prev a{padding-left:20px}@media(min-width:768px){.pager.permalink .pager-prev a{padding-left:40px}}.pager.permalink .pager-prev .pager-arrow{left:0}#main .urllist-item{padding-bottom:1rem;margin-bottom:1rem}#main .urllist-image{max-width:50%;margin-right:1rem;margin-bottom:0}@media(min-width:992px){#main .urllist-image{max-width:100%}}#header-modules .urllist-see-more{text-align:right}#main .urllist-see-more-link{display:block;width:100%}.urllist-read-more-btn{display:inline-block;text-align:center;padding:.6rem 1rem;cursor:pointer;line-height:1.5;font-size:.8rem;overflow:hidden;background-color:#79878f;color:#fff;font-weight:700;border-radius:.2rem;text-decoration:none!important;transition:all .2s;display:block;width:100%}.urllist-read-more-btn:hover{background-color:#616d74;color:#fff;text-decoration:none}.urllist-read-more-btn img,.urllist-read-more-btn svg{vertical-align:top;margin-right:.3em}#entry-footer-secondary-modules .hatena-module:first-child{margin-top:1.5rem}.entry-footer-modules .urllist-title-link{font-size:.9rem}@media(min-width:992px){.entry-footer-modules .urllist-title-link{font-size:1rem}}#box2{font-size:.85rem}#box2 .hatena-module{background-color:#f7f8f9;padding:1rem}#box2 .hatena-module-title{font-size:1rem}#box2 .urllist-title-link{font-size:.9rem}#box2 .urllist-category-link{background-color:#fff}#box2 .urllist-entry-body{font-size:.8rem}#box2 .hatena-module-html{background-color:transparent;padding:0}.hatena-module-profile .hatena-module-body:after{content:" ";display:block;clear:both}.hatena-module-profile .profile-icon{float:left;margin:0 10px 10px 0;border-radius:5px}.hatena-module-profile .id{display:block;font-weight:700;font-size:1rem;margin-bottom:.5rem}.hatena-module-profile .profile-description p{margin-top:0}.hatena-urllist .archive-module-year{padding-bottom:0;border-bottom:0}.search-form{position:relative}.search-form .search-module-input{width:100%;border:2px solid #DFE5E7;padding:.5rem .5rem .5rem 30px;color:#3d3f44;outline:none;font-size:1rem;background:#fff url(https://cdn.blog.st-hatena.com/css/theme/media-v2/images/search.svg?version=d4bf362598b41b8d89b73662365e5f) no-repeat 5px center;background-size:20px 20px}.search-form .search-module-input:hover{border-color:#bdccd4}.search-form .search-module-input:focus{border-color:#9aa5ab}.search-form .search-module-button{height:0;width:0;border:0;padding:0;position:absolute;border:none;outline:none;opacity:0}.hatena-module-category .hatena-urllist li{padding-bottom:0;border-bottom:0}.entry-category-link,.urllist-category-link{color:#7e8c94;background-color:#f7f8f9;padding:.1rem .2rem;line-height:1.2em;font-size:.8rem;text-decoration:none;display:inline-block;margin:0 .4rem .3rem 0}.entry-category-link:hover,.urllist-category-link:hover{color:#718088;text-decoration:none;background-color:#e0e4e8}.categories{margin:.3rem 0}#top-box{margin-left:10px;margin-right:10px;margin-bottom:1rem!important}@media(min-width:768px){#top-box{width:720px;margin:auto;padding-left:0;padding-right:0}}@media(min-width:992px){#top-box{width:940px}}@media(min-width:1200px){#top-box{width:1140px}}#top-box .breadcrumb{font-size:.9rem;color:#9aa5ab}.page-about dt{font-size:16px;font-weight:700;border-bottom:1px solid #DFE5E7;margin-bottom:5px}.page-about dd{margin-left:0;margin-bottom:30px}.page-archive .archive-entry{margin-bottom:1.5rem}@media(min-width:768px){.page-archive .archive-entry{margin-bottom:3rem}}.page-archive .entry-title{margin:0 0 .5rem;font-size:1rem}@media(min-width:768px){.page-archive .entry-title{font-size:1.1rem}}.page-archive .entry-thumb{width:80px;height:80px;background-size:cover}@media(min-width:576px){.page-archive .entry-thumb{width:100px;height:100px}}.page-archive .categories a{color:#7e8c94;background-color:#f7f8f9;padding:.1rem .2rem;line-height:1.2em;font-size:.8rem;text-decoration:none;display:inline-block;margin:0 .4rem .3rem 0}.page-archive .categories a:hover{color:#718088;text-decoration:none;background-color:#e0e4e8}.page-archive .entry-description{margin:.5rem 0;font-size:.85rem}@media(min-width:576px){.page-archive .entry-description{font-size:.9rem}}.archive-heading{font-weight:700;margin-bottom:1rem;padding-top:0;padding-bottom:5px;font-size:1.2rem;border-top:0;border-bottom:1px solid #bdccd4;color:#5684d7;position:relative}.archive-heading a{color:#5684d7;text-decoration:none}.archive-heading a:hover{text-decoration:underline}.archive-heading:after{content:"";position:absolute;display:block;bottom:-1px;left:0;z-index:1;width:70px;border-bottom:4px solid #5684d7}.archive-description{font-size:.85rem}@media(min-width:576px){.archive-description{font-size:.9rem}}

/* </system> */

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


body {
  font-family: 'Noto Sans JP', sans-serif;
}

/* ヘッダー */
.blog-header{
    background-color: #004831;
    border-bottom: 4px solid var(--flesh_green, #C4D700);
    padding: 0 40px;
}
.blog-header:not(.is-touch) .blog-header-inner {
    max-width: 1240px;
    width: 100%;
    margin: auto;
    padding: 20px 0;
}
h1.blog-title-heading{
    line-height: 1;
    font-size: 1em;
    text-align: left;
}
.blog-title-heading img{
    width: 214px;
}
.navbar{
    border-bottom: none;
    background-color: #fff;
}
.navbar:not(.is-touch) {
    margin: 44px 0;
}
.navbar-list li{
    border-left: 1px solid var(--achromatic-100, #DCDCDC);
    border-right: 1px solid var(--achromatic-100, #DCDCDC);
}
.navbar-list li:not(:first-child){
    border-left: none;
}
.navbar-list a{
    font-weight: 700;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0;
    text-align: center;
    color: #333333;
    height: auto;
    padding: 7.5px 40px;
}
.navbar-toggle-btn.is-open .navbar-toggle-btn-open,.navbar-toggle-btn .navbar-toggle-btn-close{
    display: none;
}
.navbar-toggle-btn.is-open .navbar-toggle-btn-close{
    display:inline;
}
.navbar-toggle-btn-icon line{
    stroke: #FFFFFF;
}
.navbar-toggle-nav:after{
    display:none;
}
.header-categories,.header-search{
    display: none;
}
.header-categories .hatena-module-category .hatena-urllist{
    display: flex;
    margin-bottom: 0;
    gap: 8px;
    flex-wrap: wrap;
}
.header-categories .hatena-module-category .hatena-urllist li{
    margin: 0;
}
.header-categories .hatena-module-category .hatena-urllist a{
    padding: 4px 8px 4px 17px;
    border-radius: var(--radius-XS, 2px);
    border: 1px solid var(--trad_green, #004831);
    background: var(--achromatic-00, #FFF);
    color: var(--trad_green, #004831);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 11px;
    font-weight: 400;
    line-height: 140%;
    position: relative;
    margin: 0;
    text-decoration: none;
    display: inline-block;
}
.header-categories .hatena-module-category .hatena-urllist a::before{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 6px;
    content: "#";
}
@media (max-width: 767px) {
    .blog-header{
        padding: 0 20px;
    }
    .blog-header:not(.is-touch) .blog-header-inner {
        display: flex;
        justify-content: space-between;
    }
    .hamburger{
        position: relative;
        width: 100%;
    }
    .navbar:not(.is-touch){
        margin: 0;
        background-color: #C4D700;
        display: none;
        position: absolute;
        z-index: 10;
        width: 100%;
    }
    .navbar.is-open:not(.is-touch){
        display: block;
        padding: 0 20px;
    }
    .navbar-list{
        flex-direction: column;
        width: 100%;
    }
    .navbar-list li{
        width: 100%;
        max-width: none;
        border: none;
        border-bottom: 1px solid var(--achromatic-00, #FFF);
    }
    .navbar-list li a{
        padding: 24px 40px;
        color: var(--trad_green, #004831);
        font-size: 16px;
        line-height: 150%;
    }
    .navbar-toggle-nav{
        display: block;
    }
    .navbar-toggle-btn{
        width: 24px;
        height: 24px;
    }
   .header-categories,.header-search{
        display: block;
    }
    .hatena-module-custom-kv{
        margin: 24px auto;
        width: calc(100% * (335 / 375));
    }
}
.search-form .search-module-input{
    font-size: 14px;
    padding: .5rem 30px .5rem .5rem;
    background: #fff url(https://cdn.blog.st-hatena.com/css/theme/media-v2/images/search.svg?version=5e24f5f…) no-repeat right 12px center;
    background-size: 16px 16px;
}

/* フッター */
.footer{
    margin-top: 120px;
    background-color: #004831;
    padding: 40px 40px 64px;
}
.footer:not(.is-touch) .footer-inner{
    max-width: 1240px;
    width: 100%;
    margin: auto;
    text-align: left;
}
.footer-inner-logo{
    display: inline-block;
    margin-bottom: 40px;
}
.footer-inner img{
    width: 214px;
}
.footer-nav{
    display: flex;
    justify-content: space-between;
}
.footer .footer-nav ul{
    margin-bottom: 0;
    display: flex;
    justify-content: space-between;
    gap: 32px;
}
.footer .footer-nav ul li{
    font-weight: 500;
    font-size: 13px;
    line-height: 160%;
    letter-spacing: 0;
    border: none;
    margin: 0;
    padding: 0;
}
.footer .footer-nav ul li a{
    color: var(--achromatic-00, #FFF);
    font-family: var(--EN_Montserrat, Montserrat);
    font-size: 13px;
    font-weight: 500;
    line-height: 160%; /* 20.8px */
}
.footer .footer-nav ul li a:hover{
    text-decoration: underline;
}
.footer .footer-nav p{
    color: var(--achromatic-00, #FFF);
    font-family: var(--EN_Montserrat, Montserrat);
    font-size: 11px;
    font-weight: 500;
    line-height: 160%; /* 17.6px */
    letter-spacing: 0;
    border: none;
    margin: 0;
}
@media (max-width: 767px) {
    .footer{
        padding: 40px 16px 64px;
    }
    .footer:not(.is-touch) .footer-inner{
        text-align: center;
    }
    .footer-nav{
        flex-direction: column;
        gap: 12px;
    }
    .footer .footer-nav ul{
        justify-content: center;
        flex-wrap: wrap;
        gap: 16px 32px;
    }
}
.entry-footer{
    width: 100%;
    margin: 0 auto;
    max-width: 800px;
}

/* サイドバー */
#box2{
    padding: 0;
    width: 320px;
    flex-shrink: 0;
}
#box2 .hatena-module{
    background-color: #fff;
    margin-bottom: 0;
    padding: 0;
}
#box2 .hatena-module-profile,#box2 .hatena-module-category,#box2 .hatena-module-entries-access-ranking{
    margin-top: 64px;
}
#box2 .hatena-module-title{
    color: var(--text-default, #333);
    text-overflow: ellipsis;
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 18px;
    font-weight: 700;
    line-height: 160%; /* 28.8px */
    border: none;
    padding-bottom: 0;
    margin-bottom: 16px;
}
#box2 .hatena-module-title:after{
    display: none;
}
#box2 .hatena-module-career{
    display: flex;
    flex-direction: column;
    gap: 64px;
}
#box2 .hatena-module-career img{
    border-radius: var(--radius-M, 8px);
    border: 1px solid var(--achromatic-100, #DCDCDC);
    box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.08);
}
#box2 .hatena-module-profile .profile-icon{
    float: none;
    width: 100%;
    border-radius: var(--radius-M, 8px);
    border: 1px solid #DCDCDC;
}
#box2 .hatena-module-profile .id,#box2 .hatena-module-profile .profile-about{
    display: none;
}
#box2 .hatena-module-category .hatena-urllist{
    display: flex;
    margin-bottom: 0;
    gap: 8px;
    flex-wrap: wrap;
}
#box2 .hatena-module-category .hatena-urllist li{
    margin: 0;
}
#box2 .hatena-module-category .hatena-urllist a{
    padding: 4px 8px 4px 17px;
    border-radius: var(--radius-XS, 2px);
    border: 1px solid var(--trad_green, #004831);
    background: var(--achromatic-00, #FFF);
    color: var(--trad_green, #004831);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 11px;
    font-weight: 400;
    line-height: 140%;
    position: relative;
    margin: 0;
    text-decoration: none;
    display: inline-block;
}
#box2 .hatena-module-category .hatena-urllist a::before{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 6px;
    content: "#";
}
#box2 .hatena-module-category .hatena-urllist a:hover{
    background: var(--achromatic-00, #004831);
    color: var(--trad_green, #FFF);
}
#box2 .hatena-module-search-box{
    padding-top: 0;
    margin-top: 24px;
}
#box2 .hatena-module-search-box .hatena-module-title{
    display: none;
}
#box2 .entries-access-ranking-item-inner{
    display: flex;
    gap: 12px;
}
#box2 .entries-access-ranking-item-inner a:first-child{
    flex-shrink: 0;
}
#box2 .entries-access-ranking-item-inner a:last-child{
    color: var(--text-default, #333);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 160%; /* 22.4px */
}
#box2 .entries-access-ranking-item-inner a:last-child:hover{
    color: var(--trad_green_right, #0A8664);
    text-decoration: none;
}
#box2 .urllist-with-thumbnails li .urllist-image{
    float: none;
    margin: 0;
    width: 144px;
    border-radius: var(--radius-S, 4px);
}
@media (max-width: 1280px) {
    #box2 {
        margin: 0 auto;
        max-width: 800px;
        width: 90%
    }
}
@media (max-width: 767px) {
    #box2{
        margin: 0 auto 120px;
        width: calc(100% * (335 / 375));
    }
}

/* パンくず */
#top-box{
    padding-top: 24px;
    margin-bottom: 64px!important;
    max-width: 1240px;
    width: 100%;
}
.breadcrumb-link,.breadcrumb-child-link{
    color: var(--trad_green_right, #0A8664);
    text-align: center;
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: 160%; /* 19.2px */
}
.breadcrumb-child{
    color: var(--text-default, #333);
    text-align: center;
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: 160%; /* 19.2px */
}

/* 日付 */
.urllist-date-link a,.archive-date a,.entry-date a{
    pointer-events: none;
}

/* カテゴリ */
.archive-heading {
    margin-bottom: 40px;
    color: var(--text-default, #333);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: 160%;
    border: none;
    padding: 0;
    padding-left: 32px;
    margin-top: 0;
}
.archive-header-category .archive-heading {
    margin-bottom: 40px;
    font-size: 40px;
}
.archive-heading:before {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    content: "";
    width: 12px;
    height: 12px;
    flex-shrink: 0;
    border-radius: 2px;
    background: var(--trad_green_right, #0A8664);
}
.archive-heading:after {
    display: none;
}
.entry-category-link,.page-archive .hamburger .categories a{
    padding: 4px 8px 4px 17px;
    border-radius: var(--radius-XS, 2px);
    border: 1px solid var(--trad_green, #004831);
    background: var(--achromatic-00, #FFF);
    color: var(--trad_green, #004831);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 11px;
    font-weight: 400;
    line-height: 140%; /* 15.4px */
    position: relative;
    margin: 0;
}
.entry-category-link:before,.page-archive .hamburger .categories a:before{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 6px;
    content: "#";
}
.entry-category-link:hover{
    background: var(--achromatic-00, #004831);
    color: var(--trad_green, #FFF);
}
.hamburger .hatena-module-title{
    color: var(--trad_green, #004831);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 18px;
    font-weight: 700;
    line-height: 160%; /* 28.8px */
    border-bottom: none;
    margin: 32px 0 16px;
    padding-bottom: 0;
    display: none;
}
.hamburger .hatena-module-title:after{
    border-bottom: none;
}
.categories{
    margin-top: 0;
    margin-bottom: 24px;
    display: none;
    gap: 8px;
    flex-wrap: wrap;
}
.entry-inner .categories{
    display: flex;
}
.archive-entry .categories{
    margin: 0;
    margin-top: 16px;
    gap: 8px;
    flex-wrap: wrap;
    display: flex;
    padding-left: 298px;
}
.archive-entry .categories .archive-category-link {
    padding: 4px 8px 4px 17px;
    border-radius: var(--radius-XS, 2px);
    border: 1px solid var(--trad_green, #004831);
    background: var(--achromatic-00, #FFF);
    color: var(--trad_green, #004831);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 11px;
    font-weight: 400;
    line-height: 140%;
    position: relative;
    margin: 0;
}
.archive-entry .categories .archive-category-link:before {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 6px;
    content: "#";
}
.archive-entry .categories .archive-category-link:hover{
    background: var(--achromatic-00, #004831);
    color: var(--trad_green, #FFF);
}
.archive-entry .archive-entry-body{
    display: none;
}
.page-archive .archive-entry{
    position: relative;
    min-height: 176px;
    border-bottom: 1px solid #DFE5E7;
    padding-bottom: 32px;
    margin-bottom: 32px;
}
.page-archive .archive-entry:last-child{
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}
.page-archive .entry-thumb-link{
    position: absolute;
    top: 0;
}
.page-archive .entry-thumb{
    width: 274px;
    height: 144px;
    float: none;
    margin-right: 0;
    border-radius: var(--radius-M, 6.447px);
}
.page-archive .archive-date{
    color: var(--text-gray, #707070);
    /* body/s */
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 14px;
    font-weight: 500;
    line-height: 160%; /* 22.4px */
}
.page-archive .archive-entry-header{
    padding-left: 298px;
    margin: 8px 0 16px;
}
.page-archive .entry-title{
    color: var(--text-default, #333);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 18px;
    font-weight: 700;
    line-height: 160%; /* 28.8px */
    margin-top: 8px;
}
.page-archive .entry-title a:hover{
    color: var(--trad_green_right, #0A8664);
    text-decoration: none;
}
@media (max-width: 1280px) {
    .archive-entries{
        margin: 0 auto;
        width: calc(100% * (335 / 375));
    }
    .page-archive .archive-entry-header{
        padding-left: 0;
        margin: 24px 0 16px;
        order: 1;
    }
    .page-archive .archive-entry{
        display: flex;
        flex-direction: column;
        min-height: auto;
    }
    .page-archive .entry-thumb-link{
        position: relative;
        order: 0;
    }
    .archive-entry .categories{
        padding-left: 0;
        order: 2;
        margin-top: 0;
    }
    .page-archive .entry-thumb{
        width: 100%;
        max-width: 800px;
        height: auto;
        aspect-ratio: 335 / 176;
        margin: 0 auto;
    }
}
@media (max-width: 767px) {
    .archive-header-category{
        margin: 0 auto 40px;
        width: calc(100% * (335 / 375));
    }
    .hamburger .hatena-module-title{
        display: block;
    }
    .categories{
        display: flex;
    }
    .archive-entries{
        margin: 0 auto 120px;
        width: calc(100% * (335 / 375));
    }
    .page-archive .archive-entry-header{
        padding-left: 0;
        margin: 24px 0 16px;
        order: 1;
    }
    .page-archive .archive-entry{
        display: flex;
        flex-direction: column;
        min-height: auto;
    }
    .page-archive .entry-thumb-link{
        position: relative;
        order: 0;
    }
    .archive-entry .categories{
        padding-left: 0;
        order: 2;
        margin-top: 0;
    }
    .page-archive .entry-thumb{
        width: 100%;
        height: auto;
        aspect-ratio: 335 / 176;
    }
}

/* SNSアイコン */
.hatena-star-container{
    margin-bottom: 0;
}
#entry-footer-secondary-modules .hatena-module:first-child.hatena-module-custom-sns{
    margin-top: 16px;
}
.sns-icon-footer{
    display: flex;
    gap: 12px;
}
.sns-icon-footer{
    display: flex;
    gap: 12px;
}
.sns-icon-img img{
    height: 40px;
}

/* 関連記事 */
#entry-footer-secondary-modules .hatena-module-related-entries{
    margin-top: 64px;
}
#entry-footer-secondary-modules .hatena-module-related-entries .urllist-item {
    padding-bottom: 32px;
    margin-bottom: 32px;
}
#entry-footer-secondary-modules .hatena-module-related-entries .hatena-module-title{
    color: var(--text-default, #333);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 30px;
    font-weight: 700;
    line-height: 160%; /* 48px */
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 32px;
}
#entry-footer-secondary-modules .hatena-module-related-entries .hatena-module-title:after{
    display: none;
}
#entry-footer-secondary-modules .hatena-module-related-entries .urllist-date-link {
    padding: 8px 0;
    color: var(--text-gray, #707070);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 160%;
}
#entry-footer-secondary-modules .hatena-module-related-entries .urllist-title-link {
    color: var(--text-default, #333);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 18px;
    font-weight: 700;
    line-height: 160%;
}
#entry-footer-secondary-modules .hatena-module-related-entries .urllist-title-link:hover {
    color: var(--trad_green_right, #0A8664);
    text-decoration: none;
}
#entry-footer-secondary-modules .hatena-module-related-entries .urllist-with-thumbnails .urllist-item .urllist-categories {
    margin: 0;
    margin-top: 16px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
#entry-footer-secondary-modules .hatena-module-related-entries .urllist-with-thumbnails .urllist-item .urllist-category-link {
    padding: 4px 8px 4px 17px;
    border-radius: var(--radius-XS, 2px);
    border: 1px solid var(--trad_green, #004831);
    background: var(--achromatic-00, #FFF);
    color: var(--trad_green, #004831);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 11px;
    font-weight: 400;
    line-height: 140%;
    position: relative;
    margin: 0;
}
#entry-footer-secondary-modules .hatena-module-related-entries .urllist-with-thumbnails .urllist-item .urllist-category-link:before {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 6px;
    content: "#";
}
#entry-footer-secondary-modules .hatena-module-related-entries .urllist-with-thumbnails .urllist-item .urllist-category-link:hover {
    background: var(--achromatic-00, #004831);
    color: var(--trad_green, #FFF);
}
@media (max-width: 767px) {
    #entry-footer-secondary-modules .hatena-module-related-entries .urllist-with-thumbnails li .urllist-image-link {
        display: inline-block;
        width: 100%;
    }
    #entry-footer-secondary-modules .hatena-module-related-entries .urllist-with-thumbnails li .urllist-image {
        float: none;
        margin: 0;
        width: 100%;
        max-width: none;
    }
}

/* トップページ */
#content{
    max-width: 1328px;
    width: 100%;
    margin: 0 auto;
}
.page-index #content{
    max-width: 1408px;
    padding: 0 40px;
}
.mv-img{
    width: 100%;
}
.hatena-module-recent-entries,#content-inner{
    max-width: 1240px;
    width: 100%;
    margin: 0 auto;
    justify-content: center;
}
#content-inner{
    gap: 64px;
}
.hatena-module-recent-entries,#content-inner #wrapper {
    padding: 0;
    width: 100%;
}
.hatena-module-recent-entries .hatena-module-title,.hatena-module-custom-pickup .hatena-module-title{
    margin-bottom: 40px;
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 40px;
    font-weight: 700;
    line-height: 160%;
    border: none;
    padding: 0;
    padding-left: 32px;
}
.hatena-module-custom-pickup .hatena-module-title{
    color: var(--text-default, #333);
    font-family: var(--EN_Montserrat, Montserrat);
}
.hatena-module-recent-entries .hatena-module-title:before,.hatena-module-custom-pickup .hatena-module-title:before{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    content: "";
    width: 12px;
    height: 12px;
    flex-shrink: 0;
    border-radius: 2px;
    background: var(--trad_green_right, #0A8664);
}
.hatena-module-recent-entries .hatena-module-title:after,.hatena-module-custom-pickup .hatena-module-title:after{
    display: none;
}
.hatena-module-recent-entries .hatena-module-title a{
    color: var(--text-default, #333);
    pointer-events: none;
}
#header-modules .hatena-module-custom-pickup{
    max-width: 1240px;
    width: 100%;
    margin: 64px auto 120px;
}
#header-modules .hatena-module-custom-pickup .urllist-with-thumbnails{
    display: flex;
    justify-content: center;
    gap: 64px;
    margin: 0;
    flex-wrap: nowrap;
}
#header-modules .hatena-module-custom-pickup .urllist-with-thumbnails .urllist-item{
    padding: 0;
    flex: 1;
}
#header-modules .hatena-module-custom-pickup .urllist-with-thumbnails .urllist-item .urllist-image{
    width: 100%;
    border-radius: var(--radius-M, 8px);
}
#header-modules .hatena-module-custom-pickup .urllist-with-thumbnails .urllist-item .urllist-image-link{
    margin-bottom: 24px;
}
#header-modules .hatena-module-custom-pickup .urllist-with-thumbnails .urllist-item .urllist-date-link{
    color: var(--text-gray, #707070);
    /* body/s */
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 14px;
    font-weight: 500;
    line-height: 160%; /* 22.4px */
    margin-bottom: 8px;
}
#header-modules .hatena-module-custom-pickup .urllist-with-thumbnails .urllist-item .urllist-title-link{
    color: var(--text-default, #333);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 20px;
    font-weight: 700;
    line-height: 160%; /* 32px */
    display: inline-block;
    margin-bottom: 16px;
}
#header-modules .hatena-module-custom-pickup .urllist-with-thumbnails .urllist-item .urllist-title-link:hover{
    color: var(--trad_green_right, #0A8664);
    text-decoration: none;
}
#header-modules .hatena-module-custom-pickup .urllist-with-thumbnails .urllist-item .urllist-categories{
    margin: 0;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
#header-modules .hatena-module-custom-pickup .urllist-with-thumbnails .urllist-item .urllist-category-link{
    padding: 4px 8px 4px 17px;
    border-radius: var(--radius-XS, 2px);
    border: 1px solid var(--trad_green, #004831);
    background: var(--achromatic-00, #FFF);
    color: var(--trad_green, #004831);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 11px;
    font-weight: 400;
    line-height: 140%;
    position: relative;
    margin: 0;
}
#header-modules .hatena-module-custom-pickup .urllist-with-thumbnails .urllist-item .urllist-category-link:before{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 6px;
    content: "#";
}
#header-modules .hatena-module-custom-pickup .urllist-with-thumbnails .urllist-item .urllist-category-link:hover{
    background: var(--achromatic-00, #004831);
    color: var(--trad_green, #FFF);
}
#main .hatena-module-custom-latestarticle .urllist-item{
    padding-bottom: 32px;
    margin-bottom: 32px;
    border-bottom: 1px solid var(--achromatic-50, #F1F1F1);
}
#main .hatena-module-custom-latestarticle .urllist-item:last-child{
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
}
#main .hatena-module-custom-latestarticle .urllist-date-link{
    padding: 8px 0;
    color: var(--text-gray, #707070);
    /* body/s */
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 160%; /* 22.4px *//
}
#main .hatena-module-custom-latestarticle .urllist-title-link{
    color: var(--text-default, #333);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 18px;
    font-weight: 700;
    line-height: 160%; /* 28.8px */
}
#main .hatena-module-custom-latestarticle .urllist-title-link:hover{
    color: var(--trad_green_right, #0A8664);
    text-decoration: none;
}
#main .hatena-module-custom-latestarticle .urllist-with-thumbnails .urllist-item .urllist-image{
    border-radius: var(--radius-M, 6.447px);
}
#main .hatena-module-custom-latestarticle .urllist-with-thumbnails .urllist-item .urllist-categories{
    margin: 0;
    margin-top: 16px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
#main .hatena-module-custom-latestarticle .urllist-with-thumbnails .urllist-item .urllist-category-link{
    padding: 4px 8px 4px 17px;
    border-radius: var(--radius-XS, 2px);
    border: 1px solid var(--trad_green, #004831);
    background: var(--achromatic-00, #FFF);
    color: var(--trad_green, #004831);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 11px;
    font-weight: 400;
    line-height: 140%;
    position: relative;
    margin: 0;
}
#main .hatena-module-custom-latestarticle .urllist-with-thumbnails .urllist-item .urllist-category-link:before{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 6px;
    content: "#";
}
#main .hatena-module-custom-latestarticle .urllist-with-thumbnails .urllist-item .urllist-category-link:hover{
    background: var(--achromatic-00, #004831);
    color: var(--trad_green, #FFF);
}
.urllist-read-more{
    margin-top: 64px;
}
.urllist-read-more-btn{
    width: 320px;
    padding: 8px 40px;
    margin: 0 auto;
    border-radius: var(--radius-M, 8px);
    background: var(--trad_green, #004831);
    color: var(--achromatic-00, #FFF);
    text-align: center;
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 16px;
    font-weight: 700;
    line-height: 200%; /* 32px */
    position: relative;
    transition: 0s;
}
.urllist-read-more-btn:after{
    position: absolute;
    content: '';
    width: 16px;
    height: 16px;
    top: 50%;
    transform: translateY(-50%);
    right: 16px;
    background-image: url(https://cdn.blog.st-hatena.com/files/17179246901345666073/17179246901353767941);
    background-size: contain;
    background-repeat: no-repeat;
}
.urllist-read-more-btn:hover{
    padding: 7px 39px;
    border: 1px solid var(--trad_green, #004831);
    background: var(--achromatic-00, #FFF);
    color: var(--trad_green, #004831);
}
.urllist-read-more-btn:hover:after{
    background-image: url(https://cdn.blog.st-hatena.com/files/17179246901345666073/17179246901356517605);
    right: 15px;
}
.hatena-module-custom-populararticle .hatena-urllist{
    list-style: none;
    counter-reset: item;
}
.hatena-module-custom-populararticle .hatena-urllist li{
    position: relative;
    padding-bottom: 0;
    margin-bottom: 16px;
    border-bottom: none;
}
.hatena-module-custom-populararticle .hatena-urllist li:before{
    position: absolute;
    left: 4px;
    top: 4px;
    content: '';
    width: 20px;
    height: 20px;
    counter-increment: item;
    content: counter(item);
    background-color: #C4D700;
    border-radius: 100px;
    color: var(--trad_green, #004831);
    font-family: var(--EN_Montserrat, Montserrat);
    font-size: 11.667px;
    font-weight: 500;
    line-height: 160%; /* 18.667px */
    display: flex;
    justify-content: center;
    align-items: flex-end;
}
@media (max-width: 1280px) {
    #content-inner{
        flex-direction: column;
        padding: 0 40px;
    }
    .page-index #content-inner{
        padding: 0;
    }
}
@media (max-width: 767px) {
    .page-index #content{
        padding: 0;
    }
    #content-inner{
        padding: 0;
    }
    #header-modules .hatena-module-custom-pickup{
        margin: 64px auto 120px;
        width: calc(100% * (335 / 375));
    }
    #header-modules .hatena-module-custom-pickup .urllist-with-thumbnails{
        flex-direction: column;
    }
    #header-modules .hatena-module-custom-pickup .urllist-with-thumbnails .urllist-item{
        padding: 0;
        flex: 1;
        margin-bottom: 0;
        width: auto;
    }
    #main .hatena-module-custom-latestarticle {
        margin: 64px auto 40px;
        width: calc(100% * (335 / 375));
    }
    #main .hatena-module-custom-latestarticle .urllist-with-thumbnails li .urllist-image-link{
        display: inline-block;
        width: 100%;
    }
    #main .hatena-module-custom-latestarticle .urllist-with-thumbnails li .urllist-image{
        float: none;
        margin: 0;
        width: 100%;
        max-width: none;
    }
    .urllist-read-more{
        margin-top: 40px;
        margin-bottom: 120px;
    }
    .hatena-module-recent-entries .hatena-module-title,.hatena-module-custom-pickup .hatena-module-title{
        margin-bottom: 32px;
        font-size: 32px;
        padding-left: 22px;
    }
}

/* 記事詳細 */
.entry-header{
    margin: 0 0 40px;
}
.entry-title{
    margin: 16px 0;
    color: var(--text-default, #333);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 36px;
    font-weight: 700;
    line-height: 160%; /* 57.6px */
}
.page-entry .entry-title a{
    pointer-events: none;
}
.entry-header + .entry-content{
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
    margin-top: 104px;
}
.page-entry #box2 {
    display: none;
}
.page-entry #content {
    width: 100%;
}
.page-entry #main {
    width: 100%;
    float: none;
}
.page-entry #wrapper{
    max-width: 1080px;
    width: 100%;
    padding: 0;
    margin: 0 auto;
}
.entry-content ul li,.entry-content ol li{
    color: var(--text-default, #333);
    /* article/L */
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 18px;
    font-weight: 400;
    line-height: 200%; /* 36px */
}
.entry-content ol {
    list-style-type: none;
    padding-left: 0; /* デフォルトの余白をリセット */
    margin: 0;
}
.entry-content ol {
    counter-reset: parent-count;
}
.entry-content ol > li {
    counter-increment: parent-count;
    position: relative;
    padding-left: 26px;
}
.entry-content ol > li::before {
    content: counter(parent-count) ". ";
    position: absolute;
    top: 0;
    left: 0;
}
.entry-content ol li ol {
    counter-reset: child-count;
}
.entry-content ol li ol li {
    counter-increment: child-count;
    padding-left: 40px;
}
.entry-content ol li ol li::before {
    content: counter(parent-count) "-" counter(child-count) ". ";
}
.entry-content ul.table-of-contents {
    list-style: none;
    padding: 32px;
    border-radius: var(--radius-L, 16px);
    background: var(--bg, #F5F5F5);
    border: none;
    margin: 40px 0 0;
    padding-top: 72px;
    position: relative;
}
.entry-content ul.table-of-contents::before {
    position: absolute;
    top: 32px;
    left: 32px;
    content: "目次";
    color: var(--text-default, #333);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 18px;
    font-weight: 700;
    line-height: 160%; /* 28.8px */
}
.entry-content ul.table-of-contents li {
    padding-left: 1.5em;
    align-self: stretch;
    color: #3B3C3E;
    color: var(--text-default, #333);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 16px;
    font-weight: 500;
    line-height: 200%; /* 32px */
    position: relative;
}
.entry-content ul.table-of-contents li a{
    color: #3B3C3E;
    text-decoration: none;
}
.entry-content ul.table-of-contents li:before {
    position: absolute;
    content: '・';
    right: 97.5%;
    color: #3B3C3E;
}
.entry-content ul.table-of-contents ul {
    list-style: none;
    padding-left: 20px;
    counter-reset: item;
    margin-left: 0;
}
.entry-content ul.table-of-contents ul li {
    padding-left: 0;
}
.entry-content ul.table-of-contents ul li::before {
    content: "・";
    display: inline-block;
    right: 100.5%;
}
.entry-content ul.table-of-contents ul ul{
    display: none;
}
.entry-content h2{
    color: var(--text-default, #333);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 30px;
    font-weight: 700;
    line-height: 160%; /* 48px */
    margin: 120px 0 24px;
    padding-left: 32px;
    padding-bottom: 0;
    border-bottom: none;
    position: relative;
}
.entry-content h2:before{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    content: "";
    width: 12px;
    height: 12px;
    border-radius: 2px;
    background: var(--trad_green_right, #0A8664);
}
.entry-content h2:after{
    position: absolute;
    bottom: -24px;
    left: 0;
    content: "";
    width: 100%;
    height: 1px;
    background: var(--achromatic-100, #DCDCDC);
}
.entry-content h3{
    color: var(--text-default, #333);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 24px;
    font-weight: 700;
    line-height: 160%; /* 38.4px */
    margin: 64px 0 44px;
    padding-left: 28px;
    border-bottom: none;
    position: relative;
}
.entry-content h2 + *{
    margin-top: 64px;
}
.entry-content h2 + h3{
    margin: 88px 0 44px;
}
.entry-content h3:before{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    content: "";
    width: 4px;
    height: 46px;
    background: var(--trad_green_right, #0A8664);
}
.entry-content h4{
    color: var(--trad_green_right, #0A8664);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 20px;
    font-weight: 700;
    line-height: 160%; /* 32px */
    margin: 40px 0 0;
    border-bottom: none;
}
.entry-content h5{
    color: var(--text-default, #333);
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 18px;
    font-weight: 700;
    line-height: 160%; /* 28.8px */
    margin: 40px 0;
}
.entry-content p{
    color: var(--text-default, #333);
    /* article/L */
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 18px;
    font-weight: 400;
    line-height: 200%; /* 36px */
}
.entry-content p + p{
    margin-top: 32px;
}
.entry-content h2 + p{
    margin-top: 88px;
}
.entry-content p.note{
    color: var(--text-gray, #707070);
    /* article/S */
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 14px;
    font-weight: 400;
    line-height: 200%; /* 28px */
    margin: 0;
    list-style: none;
    position: relative;
    padding-left: 14px;
}
.entry-content p.note:before{
    position: absolute;
    top: 0;
    left: 0;
    content: "※";
}
.entry-content p.small-text{
    color: var(--text-gray, #707070);
    /* article/S */
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 14px;
    font-weight: 400;
    line-height: 200%; /* 28px */
    margin: 0;
}
.entry-content h2 + p.small-text{
    margin-top: 88px;
}
.entry-content p.reference{
    color: var(--text-default, #333);
    text-align: right;
    /* article/S */
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 200%; /* 28px */
    margin: 12px 0 0;
}
.entry-content a{
    color: var(--trad_green_right, #0A8664);
    /* article/S_u */
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-style: normal;
    font-weight: 400;
    line-height: 200%;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: auto;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
    text-underline-position: from-font;
}
.entry-content a[target="_blank"] {
    position: relative;
    padding-right: 16px;
}
.entry-content a[target="_blank"]::after {
    position: absolute;
    content: '';
    width: 14px;
    height: 14px;
    bottom: 2px;
    right: 0;
    background-image: url(https://cdn.blog.st-hatena.com/files/17179246901345666073/17179246901353855792);
    background-size: contain;
    background-repeat: no-repeat;
}
.entry-content blockquote{
    margin: 0;
    padding: 32px;
    position: relative;
    border-radius: var(--radius-L, 16px);
    background: var(--bg, #F5F5F5);
    border: none;
}
.entry-content blockquote:before{
    position: absolute;
    content: '';
    width: 24px;
    height: 24px;
    top: -4px;
    left: 16px;
    background-image: url(https://cdn.blog.st-hatena.com/files/17179246901345666073/17179246901353850573);
    background-size: contain;
    background-repeat: no-repeat;
}
.entry-content table{
    display: table;
    border: 1px solid var(--achromatic-100, #DCDCDC);
    margin: 0;
}
.entry-content table + table{
    margin-top: 32px;
}
.entry-content .custom-table1 tr{
    display: flex;
    width: 100%;
    border-bottom: 1px solid var(--achromatic-100, #DCDCDC);
}
.entry-content .custom-table1 tr:last-child{
    border-bottom: none;
}
.entry-content .custom-table1 th,.entry-content .custom-table1 td{
    display: flex;
    padding: 14px 18px;
    align-items: center;
    color: var(--text-default, #333);
    /* article/M */
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 16px;
    line-height: 200%; /* 32px */
    font-weight: 400;
    border: none;
}
.entry-content .custom-table1 th{
    background-color: var(--bg, #F5F5F5);
    width: calc(100% * (88 / 800));
}
.entry-content .custom-table1 td{
    width: calc(100% * (712 / 800));
}
.entry-content .custom-table1 tr{
    display: flex;
    width: 100%;
}
.entry-content .custom-table2 tr{
    display: flex;
    width: 100%;
}
.entry-content .custom-table2 th,.entry-content .custom-table2 td{
    display: flex;
    padding: 14px 18px;
    align-items: center;
    color: var(--text-default, #333);
    /* article/M */
    font-family: var(--JP_Noto-sans-JP, "Noto Sans JP");
    font-size: 16px;
    line-height: 200%; /* 32px */
    font-weight: 400;
    width: 100%;
    border: none;
    border-right: 1px solid var(--achromatic-100, #DCDCDC);
}
.entry-content .custom-table2 th:last-child,.entry-content .custom-table2 td:last-child{
    border: none;
}
.entry-content .custom-table2 th{
    background-color: var(--bg, #F5F5F5);
}
.entry-content pre.code{
    background-color: #3D4245;
    color: #fff;
    padding: 32px;
}
.entry-tags-wrapper{
    margin-top: 64px;    
}
.page-entry .pager{
    display: none;
}

.hatena-module-career a:hover{
    opacity: .8;
}

@media (max-width: 1280px) {
    .page-archive #top-box,.page-entry #top-box{
        padding: 0 40px;
        padding-top: 24px;
    }
}
@media (max-width: 767px) {
    .page-archive #top-box,.page-entry #top-box{
        padding: 0;
        padding-top: 24px;
    }
    .page-archive #top-box{
        width: calc(100% * (335 / 375));
        margin: 0 auto;
        margin-bottom: 40px!important;
    }
    .page-entry #top-box{
        width: calc(100% * (335 / 375));
        margin: 0 auto;
        margin-bottom: 40px!important;
    }
    .entry-title{
        font-size: 32px;
    }
    .entry-inner{
        margin: 24px auto;
        width: calc(100% * (335 / 375));
    }
    .entry-content ul.table-of-contents li {
        padding-left: 1em;
    }
    .entry-content h2{
        font-size: 24px;
    }
    .entry-content h3{
        font-size: 20px;
        padding-left: 20px;
    }
    .entry-content h5{
        margin: 32px 0;
    }
    .entry-content h2 + h3{
        margin: 64px 0 44px;
    }
    .entry-content h2 + p{
        margin-top: 64px;
    }
    .entry-content h2 + p.small-text{
        margin-top: 64px;
    }
    .entry-content .custom-table1 th{
        width: calc(100% * (88 / 335));
    }
    .entry-content .custom-table1 td{
        width: calc(100% * (247 / 335));
    }
    .search-result{
        padding-left: 16px;
    }
    mjx-container[jax="CHTML"][display="true"] {
        display: block;
        overflow-x: auto;
        overflow-y: hidden;
    }
}