/* Responsive: yes */

/* <system section="theme" selected="12921228815728169090"> */
@charset "utf-8";
/*
	Theme: Written
	Version: 1.0.1
	Author: jclv
	Description: http://jclv.co
           _      __
          (_)____/ /   __
         / / ___/ / | / /
        / / /__/ /| |/ /
     __/ /\___/_/ |___/
    /___/

    Licensed under the MIT license.
*/
@import url("http://maxcdn.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css");
@import url("https://fonts.googleapis.com/css?family=Lato:400,900|Open+Sans:400,700");
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],/* 1 */
input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}body{color:#333;background-color:transparent;font-family:'Open Sans',Arial,Helvetica,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif}a{color:#444;text-decoration:none;-webkit-transition:.3s ease;-moz-transition:.3s ease;-o-transition:.3s ease;transition:.3s ease}a:hover{color:#85c226;text-decoration:none}pre{padding:.5em;background:#f7f7f7;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px}#container{width:1020px;background-color:#fff;margin:1px auto 0;padding-top:.5em;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px}#container-inner{width:960px;margin:0 auto}#blog-title-inner{border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px}#blog-title{margin:1em 0 2em}#blog-title h1{font-family:Lato,'Open Sans','メイリオ',Meiryo;font-size:2.4em;font-weight:900;margin:.5em 0 0}#blog-title h1 a{color:#333}#blog-title h1 a:hover{color:#85c226;text-decoration:none}header h2{color:#666;font-size:.8em;font-family:'Open Sans',Meiryo;font-weight:100}#top-box{width:960px;margin:0 auto;font-size:.8em}#top-box .breadcrumb{padding-bottom:1.5em;color:#c0c0c0}#top-box .breadcrumb a,#top-box .breadcrumb span{color:#444;padding:0 .1em}#top-box .breadcrumb a:hover{color:#85c226}#content{width:960px;margin:0 auto}#content-inner{text-align:left}#wrapper{width:650px;float:left}#main{float:left;width:650px;min-height:90px;padding-bottom:1em}#main:after{content:".";display:block;height:0;font-size:0;clear:both;visibility:hidden}#box1{display:none}#box2{width:270px;float:right;text-align:left}#bottom-box{clear:both}#content:after{content:" ";display:block;height:0;visibility:hidden;clear:both}article{padding-bottom:3em}section.day{margin-bottom:40px}.entry{margin-bottom:100px;position:relative;width:100%;border-bottom:1px solid rgba(0,0,0,.1)}.entry-header{position:relative;padding-bottom:1.7em}.date{font-size:.8em;position:absolute;left:0;bottom:0;line-height:1em}.date a{color:#999}.date .hyphen{display:none}.date .date-month:before,.date .date-day:before{font-size:1.1em;content:'\2022';color:#ccc;padding:0 .3em}.entry-title{text-align:left;margin:0;font-size:1.6em;font-family:Lato,'Open Sans','メイリオ',Meiryo;font-weight:900;line-height:140%}.entry-title-empty{display:none}.entry-title a{position:relative}.categories{position:absolute;bottom:0;right:0;line-height:1em}.categories:before{font-family:FontAwesome;font-size:1em;content:'\f02b';color:#c0c0c0;margin-right:.2em}.categories a{color:#666;font-size:.8em;margin-right:.4em;white-space:nowrap}.categories a:hover{text-decoration:none;color:#808080;border-bottom:2px solid #85c226}.no-categories:before{display:none}.entry-header-menu a{display:block;font-size:.8em;padding:.15em .5em;color:#fff;background:#333;position:absolute;right:0;top:0;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px}.entry-header-menu a:hover{background:#808080;text-decoration:none}.entry .entry-category-area{padding:5px 0;color:#aaa;font-size:.8em}.entry .entry-category a{color:#444;margin-left:5px;padding:3px 6px;border:1px solid #e0e0e0}.entry .entry-category a:hover{color:#fff;text-decoration:none;border:1px solid #85c226}.entry-footer{display:block;margin-top:30px;color:#444;font-size:.8em}.entry-footer .social-buttons{margin-bottom:15px}.entry-footer-section{color:#999;padding-bottom:1em}.pager{position:relative;height:2em}.pager span{position:absolute}.pager span.pager-next{top:0;right:0}.pager span.pager-prev{top:0;left:0}.pager a{font-size:.8em;color:#444;line-height:1.5em}.pager a span{display:none}.pager span.pager-next a:after{content:'\f054';font-family:FontAwesome;font-size:1em;padding-left:.2em;line-height:3em}.pager span.pager-prev a:before{content:'\f053';font-family:FontAwesome;font-size:1em;padding-right:.2em;line-height:3em}.pager a:hover{color:#85c226}.entry-content{font-size:.94em;line-height:1.7em;margin:1.3em 0}.entry-content img{max-width:650px}.entry-content img.hatena-fotolife{border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px}.entry-content p{margin:.8em 0}.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6{margin:1em 0 .5em}.entry-content h1{font-size:150%}.entry-content h2{font-size:140%}.entry-content h3{font-size:130%}.entry-content h4{font-size:120%}.entry-content h5{font-size:110%}.entry-content h6{font-size:100%}.entry-content ul,.entry-content ol{margin-left:1.5em;padding:0}.entry blockquote{padding:1em;margin:1em 0;color:#808080;border-left:7px solid #e0e0e0}.entry blockquote p{margin-top:0;margin-bottom:0}.entry-content table{border-collapse:collapse;border-spacing:0;border:2px solid #d0d0d0}.entry-content table th,.entry-content table td{border:1px solid #e0e0e0;padding:5px 10px}.entry-content table th{background:#fafafa}a.keyword{color:#666;text-decoration:none;border-bottom:1px solid #e0e0e0}a.keyword:hover{border-color:#85c226}pre.lang-aa{font-size:1em;line-height:110%}.comment{margin:0 0 1em;padding:0;font-size:1em;clear:both;}.comment li{list-style:none;padding:.5em 0}.comment-user-name{font-size:1.1em;margin-bottom:.5em}.comment-content p{line-height:1.7em;margin:.5em 0;word-wrap:break-word}.comment-metadata{display:inline}.comment-metadata,.comment-metadata a{color:#c0c0c0}.leave-comment-title{float:right;font-size:1.2em;display:inline-block;*display:inline;*zoom:1;color:#808080;-webkit-transition:.3s ease;-moz-transition:.3s ease;-o-transition:.3s ease;transition:.3s ease;cursor:pointer}.leave-comment-title:hover{text-decoration:none;color:#85c226}.leave-comment-title:before{content:'\f0e5';color:#808080;font-family:FontAwesome;font-size:1.5em;padding-right:.2em;-webkit-transition:.3s ease;-moz-transition:.3s ease;-o-transition:.3s ease;transition:.3s ease}.leave-comment-title:hover:before{color:#85c226;content:'\f075'}.hatena-module{font-size:.9em;padding-bottom:50px}.hatena-module-title{text-align:left;font-size:1.2em;font-weight:normal;padding-bottom:10px;color:#666;border-bottom:2px solid #e0e0e0}.hatena-module-title a,.hatena-module-title a:hover,.hatena-module-title a:visited{font-size:1em;color:#444}.hatena-module-title:before{color:#666;font-family:FontAwesome;font-size:1.5em;padding-right:.3em}.hatena-module-body{padding-top:15px}.hatena-module-body ul{margin:0;padding:0;list-style:none}.hatena-module-body ul li{line-height:1.75em}.hatena-module-body ul li.archive{border:none}.hatena-module-profile .id{display:block;line-height:2em}.hatena-module-profile .hatena-module-title:before{content:'\f007'}.profile-icon{border-radius:50%;-webkit-border-radius:50%;-moz-border-radius:50%}.hatena-module-profile .profile-description{margin:0 0 5px;line-height:1.5em}form.search-form{margin-top:10px}form.search-form input{border:1px solid #ccc;vertical-align:middle}.hatena-module-search-box .hatena-module-title{display:none}.hatena-module-search-box .hatena-module-title:before{content:'\f002'}.search-form .search-module-input{width:130px;padding:.2em .4em;margin:0;font-size:1em;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px}.search-form .search-module-button{height:23px;width:23px;border:none;text-indent:-999px;margin-left:-3px;*margin-left:-5px;cursor:pointer;background:url(https://cdn.blog.st-hatena.com/images/theme/search.png?version=2789d874a2f9b79f9e81907e65b90f) 50% 50% no-repeat}.hatena-urllist{list-style:none;margin:0;padding:0}.hatena-urllist li{line-height:1.7em}.hatena-urllist li a{text-decoration:none}.hatena-module-links .hatena-module-title:before{content:'\f135'}.hatena-module-links .hatena-urllist li:before{font-size:1.1em;content:'\2022';color:#c0c0c0;padding-right:.4em}.hatena-module-recent-entries ul li div{line-height:1.3em;font-size:.9em}.hatena-module-entries-access-ranking ul li div{line-height:1.3em;font-size:.9em;padding:4px 0}.hatena-module-recent-entries .recent-entries-item-inner{padding:4px 0}.hatena-module-recent-entries .hatena-module-title:before{content:'\f005'}.hatena-module-recent-entries .recent-entries-title-link:before,.hatena-module-entries-access-ranking .entries-access-ranking-title:before{font-family:"Open Sans";content:'\2022';color:rgba(0,0,0,.3);padding-right:.4em}.hatena-module-recent-entries .recent-entries-image,.hatena-module-entries-access-ranking img{vertical-align:top;margin:0 4px 0 0;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px}.hatena-module-archive .hatena-module-title:before{content:'\f133'}.hatena-module-entries-access-ranking .hatena-module-title:before{content:'\f091'}.hatena-module-category .hatena-module-title:before{content:'\f02c';padding-right:.1em}.hatena-module-category .hatena-module-body ul:after{content:".";display:block;clear:both;height:0;visibility:hidden}.hatena-module-category .hatena-module-body li{float:left;display:block}.hatena-module-category .hatena-module-body li a:before{font-size:1.1em;content:'\2022';color:#c0c0c0;padding:0 .3em}.hatena-module-recent-comments .hatena-module-title:before{content:'\f086'}.hatena-module-recent-comments .recent-comment-time{color:#666;font-style:normal}.hatena-module-circles .hatena-module-title:before{content:'\f0c0'}#footer-box{clear:both}#footer-area1,#footer-area2,#footer-area3,#footer-area4{width:220px;float:left}#footer-area1,#footer-area2,#footer-area3{margin-right:40px}#footer-area4:after{content:"";display:block;height:0;visibility:hidden;clear:both}#bottom-editarea{font-size:.8em;padding-bottom:1em}#footer{clear:both;width:960px;text-align:left;font-size:.8em;padding-top:1em;margin:0 auto}#footer address{margin:0}#footer p{margin:2px 0 3em}#footer a{color:#444}#footer a:hover{color:#85c226;text-decoration:none}#footer a img{border-radius:50%;-webkit-border-radius:50%;-moz-border-radius:50%}.page-about dt{font-size:1.35em;font-weight:normal;color:#999;margin-bottom:.5em}.page-about dd{margin-left:0;margin-bottom:2em}.page-about .etnry-content img.profile-icon{height:16px;width:16px}.page-archive .date{position:static;padding-bottom:1em}.page-archive .archive-entries .entry-title{margin-bottom:.3em;line-height:1.5em}.page-archive .archive-entries section{margin-bottom:30px}.page-archive .archive-entries .categories{margin-bottom:10px;position:static}.page-archive .archive-entries p{font-size:.8em;line-height:1.5em}@media (-webkit-min-device-pixel-ratio: 2){.hatena-module-search-box .search-module-button{background:transparent url(https://cdn.blog.st-hatena.com/images/theme/search@2x.png) no-repeat right center;background-size:20px 20px}}@media (min-width: 768px) and (max-width: 1024px){#container{width:724px}#container-inner{width:704px}#navigation{width:704px}#main{width:480px}#content{width:704px}#wrapper{width:480px}.entry-content img{max-width:480px}#box2{width:204px}#top-box{width:480px}#footer{width:704px}}@media (max-width: 767px){#globalheader-container{position:static}#container{width:93.75%;word-wrap:break-word;overflow:hidden}#container-inner,#navigation,#wrapper,#content,#top-box{width:100%}#blog-title{text-align:center}#footer{width:93.75%}#main{width:100%;float:none}.entry-content img{max-width:100%}#box2{width:100%;float:none}#box2-inner{width:100%}.hatena-module{width:100%;float:none}.entry-header-menu{top:-30px;left:0}}
/* </system> */

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


/* ==================================================
   黒色中国2.5 正式採用版
   共通設定
================================================== */

/* ヘッダー外枠 */
#blog-title {
    margin: 0;
    padding: 0;
    text-align: center;
}

/* ヘッダー画像を1602×314pxの比率で全表示 */
.header-image-only #blog-title-inner,
.header-image-enable #blog-title-inner {
    position: relative;
    display: block;

    width: 100% !important;
    max-width: 1602px !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1602 / 314;

    margin: 0 auto !important;
    padding: 0 !important;

    background-size: 100% 100% !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;

    box-sizing: border-box;
}

/* 既存のブログタイトルを透明なホームリンクとして再利用 */
#title {
    position: absolute !important;
    z-index: 20;

    display: block !important;

    left: 2%;
    top: 26%;
    width: 30%;
    height: 44%;

    margin: 0 !important;
    padding: 0 !important;
}

#title a {
    display: block !important;
    width: 100%;
    height: 100%;

    overflow: hidden;
    text-indent: -9999px;

    color: transparent !important;
    background: transparent !important;

    font-size: 0 !important;
    line-height: 0 !important;

    outline: none;
    cursor: pointer;
}

/* ヘッダー説明文は画像内に含まれるため非表示 */
#blog-description {
    display: none !important;
}


/* ==================================================
   上部ナビゲーション
================================================== */

#cssmenu {
    width: 100%;
    max-width: 1602px;

    /* ヘッダーへ密着 */
    margin: 0 auto 20px;
    padding: 0;

    box-sizing: border-box;

    /* ヘッダーの黒と区別できる、やや暗めのグレー */
    border-top: 0;
    border-bottom: 1px solid #686868;
    background: #7f7f7f;
}

#cssmenu ul {
    display: flex !important;
    align-items: stretch;
    flex-wrap: wrap;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
    line-height: 1;
}

#cssmenu ul::after {
    display: none !important;
    content: none !important;
}

#cssmenu ul li {
    display: block !important;
    float: none !important;

    margin: 0 !important;
    padding: 0 !important;
}

#cssmenu ul li a {
    position: relative;

    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 0.45em;

    min-height: 44px;
    padding: 0 22px !important;

    color: #ffffff !important;
    background: transparent !important;

    font-family: Arial, "Helvetica Neue", sans-serif;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.06em;
    line-height: 1.3;
    text-transform: none;

    text-decoration: none !important;

    transition:
        color 0.2s ease,
        background-color 0.2s ease;
}

/* 旧メニュー由来の点・下線を無効化 */
#cssmenu ul li a::before,
#cssmenu ul li a::after {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    content: none !important;
}

#cssmenu ul li a:hover,
#cssmenu ul li a:focus-visible {
    color: #ffffff !important;
    background: rgba(0, 0, 0, 0.10) !important;
    text-decoration: none !important;
}

#cssmenu ul li a i {
    color: inherit;
    font-size: 16px;
    line-height: 1;
}

/* 台湾徒歩一周 */
#cssmenu .menu-taiwan a {
    color: #ffffff !important;
}

#cssmenu .menu-taiwan a:hover,
#cssmenu .menu-taiwan a:focus-visible {
    color: #ffffff !important;
    background: rgba(0, 0, 0, 0.12) !important;
}


/* ==================================================
   サイドバー：共通
================================================== */

.hatena-module-title {
    font-size: 16px;
}

.profile-description {
    font-size: 14px;
    line-height: 1.7;
}

.urllist-item-inner.recent-entries-item-inner {
    font-size: 14px;
}

.hatena-module-entries-access-ranking {
    font-size: 14px;
}

/* 月別アーカイブ */
.archive-module-year-title,
.archive-module-month-title {
    font-size: 14px;
}

.archive-module-year,
.archive-module-month {
    line-height: 1;
}

.archive-module-year {
    padding-top: 0 !important;
}

/* カテゴリー */
.hatena-module-category .hatena-urllist li {
    padding: 0.1em 0;
}

.hatena-module-category .hatena-urllist li a {
    font-size: 14px;
}


/* ==================================================
   記事本文：共通
================================================== */

.entry-content {
    font-size: 16px;
    line-height: 1.8;
}

.entry-content blockquote {
    position: relative;

    margin: 0.8em 0;
    padding: 20px 55px;

    border: 1px solid #fff;
    background: rgba(245, 245, 245, 0.8);

    color: #222;
}

.entry-content h3 {
    padding: 10px 15px;

    border-left: 10px solid #2b2e2e;
    background: #f3f3f3;

    color: #444;
}

.entry-content h4 {
    padding: 10px 15px;

    border-left: 0;
    background: #f3f3f3;

    color: #444;
}


/* ==================================================
   PC版：769px以上
================================================== */

@media screen and (min-width: 769px) {

    /* 記事末尾の「コメントを書く」 */
    .page-entry .comment-box {
        height: auto !important;
        min-height: 0 !important;

        margin: 16px 0 0 !important;
        padding: 0 !important;

        border-top: 0 !important;
        border-bottom: 0 !important;
    }

    .page-entry .leave-comment-title {
        display: block !important;
        width: 250px !important;

        margin: 0 0 0 auto !important;
        padding: 11px 16px !important;

        box-sizing: border-box;

        border: 2px solid #444 !important;
        border-radius: 4px !important;
        background: #fff !important;

        color: #444 !important;

        font-size: 16px !important;
        font-weight: 700 !important;
        line-height: 1.4 !important;
        text-align: center !important;
        text-decoration: none !important;
    }

    .page-entry .leave-comment-title:hover,
    .page-entry .leave-comment-title:focus {
        color: #fff !important;
        background: #444 !important;
        text-decoration: none !important;
    }

    /* 記事末尾に残る大きな余白を圧縮 */
    .page-entry #main-inner > .entry,
    .page-entry #main-inner > article.entry,
    .page-entry .entry {
        margin-bottom: 16px !important;
    }

    /* 前後の記事へのリンク */
    .page-entry .pager {
        clear: both !important;

        min-height: 0 !important;
        margin: 0 0 24px !important;
        padding: 0 !important;
    }

    .page-entry .pager .pager-prev,
    .page-entry .pager .pager-next {
        margin: 0 !important;
        padding: 0 !important;
    }

    .page-entry .pager a {
        display: block !important;

        margin: 0 !important;
        padding: 12px 14px !important;

        border-top: 1px solid #ddd !important;
        border-bottom: 1px solid #ddd !important;

        color: #444 !important;

        font-size: 15px !important;
        line-height: 1.55 !important;
        text-decoration: none !important;
    }
}


/* ==================================================
   大画面PC版：1200px以上
================================================== */

@media screen and (min-width: 1200px) {

    /* 記事タイトル */
    .entry-title {
        margin-bottom: 26px;
        padding-bottom: 1.3em;

        background:
            url("https://cdn-ak.f.st-hatena.com/images/fotolife/S/SikisimaHisayuki/20150209/20150209230038.gif")
            repeat-x bottom left;

        font-size: 1.6em;
    }

    .entry-title:hover {
        text-decoration: none;
    }

    /* PC版だけPROFILEをサイドバー先頭へ */
    #box2-inner {
        display: flex;
        flex-direction: column;
    }

    #box2-inner > .hatena-module-profile {
        order: -1;
    }

    /* 続きを読む */
    .entry-see-more {
        display: block;

        width: 200px;
        height: 40px;

        border: 2px solid #333;
        border-radius: 3px;
        background: #333;

        color: #fff;

        font-weight: bold;
        line-height: 40px;
        text-align: center;
        text-decoration: none;
    }

    .entry-see-more:hover {
        border-color: #545252;
        background: #545252;
        color: #fff;
        text-decoration: none;
    }

    /* PC版リンク */
    a {
        text-decoration: none;
    }

    a:hover {
        text-decoration: underline;
    }

    /* ==============================================
       ヨメレバ・カエレバ：旧記事互換
    ============================================== */

    .booklink-box,
    .kaerebalink-box {
        overflow: hidden;

        margin-bottom: 10px;
        padding: 25px;

        border: double #ccc;

        font-size: small;
    }

    .booklink-image,
    .kaerebalink-image {
        float: left;

        min-width: 160px;
        margin: 0 15px 0 0;

        text-align: center;
    }

    .booklink-image img,
    .kaerebalink-image img {
        margin: 0 auto;
        text-align: center;
    }

    .booklink-info,
    .kaerebalink-info {
        overflow: hidden;
        margin: 0;
        line-height: 120%;
    }

    .booklink-name,
    .kaerebalink-name {
        margin-bottom: 24px;
        line-height: 1.5;
    }

    .booklink-powered-date,
    .kaerebalink-powered-date {
        margin-top: 10px;

        font-family: Verdana, sans-serif;
        font-size: 8px;
        line-height: 120%;
    }

    .booklink-detail,
    .kaerebalink-detail {
        font-size: 12px;
    }

    .booklink-powered-date,
    .kaerebalink-detail {
        margin-bottom: 15px;
    }

    .booklink-link2,
    .kaerebalink-link1 {
        margin-top: 10px;
    }

    .booklink-link2 a,
    .kaerebalink-link1 a {
        float: left;
        display: inline-block;

        width: 30%;
        margin: 5px 2px 0 0;
        padding: 10px 1px;

        border-radius: 5px;

        color: #fff !important;

        font-size: 12px;
        font-weight: 800;
        text-align: center;
        text-decoration: none;
        text-shadow: 1px 1px 1px #dcdcdc;
    }

    .booklink-link2 a:hover,
    .kaerebalink-link1 a:hover {
        opacity: 0.6;
    }

    .booklink-link2 a:active,
    .kaerebalink-link1 a:active {
        position: relative;
        top: 1px;
    }

    .shoplinkamazon a {
        background-color: #ff9901 !important;
    }

    .shoplinkrakuten a {
        background-color: #c20004 !important;
    }

    .shoplinkkindle a {
        background-color: #007dcd !important;
    }

    .shoplinkkakakucom a {
        background-color: #314995 !important;
    }

    .shoplinkyahoo a {
        background-color: #7b0099 !important;
        font-size: 10px;
    }

    .shoplinkyahoo img,
    .booklink-footer {
        display: none;
    }
}


/* ==================================================
   スマートフォン版：768px以下
================================================== */

@media screen and (max-width: 768px) {

    /* ==============================================
       ヘッダー・ナビゲーション
    ============================================== */

    #cssmenu {
        margin-top: 0 !important;
        margin-bottom: 20px !important;
    }

    /* ABOUT・CONTACT・台湾徒歩一周を1行に並べる */
    #cssmenu ul {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    /* 今後追加する4項目目以降はスマホでは表示しない */
    #cssmenu ul li:nth-child(n + 4) {
        display: none !important;
    }

    #cssmenu ul li a {
        min-height: 40px;
        padding: 0 5px !important;

        font-size: 13px;
        letter-spacing: 0.02em;
        white-space: nowrap;
    }

    #cssmenu ul li a i {
        font-size: 15px;
    }

    /* 台湾徒歩一周も同じ1行の中に配置 */
    #cssmenu .menu-taiwan {
        grid-column: auto;
        border-top: 0;
    }


    /* ==============================================
       記事タイトル
    ============================================== */

    .entry-title {
        margin: 0 0 14px !important;
        padding: 0 !important;

        background: none !important;

        font-size: 26px !important;
        font-weight: 700;
        line-height: 1.35 !important;
        letter-spacing: 0 !important;

        word-break: auto-phrase;
        line-break: strict;
        overflow-wrap: normal;
    }

    .entry-title a {
        color: #333 !important;

        font-size: inherit !important;
        line-height: inherit !important;
        text-decoration: none !important;
    }


    /* ==============================================
       記事本文
    ============================================== */

    .entry-content {
        min-width: 0;

        font-size: 18px !important;
        line-height: 1.8 !important;
        letter-spacing: 0.01em;

        overflow-wrap: break-word;
    }

    .entry-content p {
        margin-top: 0;
        margin-bottom: 1.25em;
    }

    .entry-content ul,
    .entry-content ol {
        margin: 1em 0 1.4em;
        padding-left: 1.5em;
    }

    .entry-content li {
        margin-bottom: 0.5em;
    }

    .entry-content a {
        overflow-wrap: anywhere;
    }


    /* ==============================================
       引用・X埋め込み
    ============================================== */

    .entry-content blockquote:not(.twitter-tweet) {
        margin: 1.2em 0 !important;
        padding: 16px 18px !important;

        border: 0 !important;
        border-left: 4px solid #333 !important;
        background: #f5f5f5 !important;

        color: #222 !important;

        font-size: 18px !important;
        line-height: 1.75 !important;
        text-align: left !important;
    }

    .entry-content blockquote:not(.twitter-tweet) p {
        margin: 0 !important;
    }

    .entry-content blockquote:not(.twitter-tweet) strong,
    .entry-content blockquote:not(.twitter-tweet) b {
        font-size: 20px !important;
        font-weight: 700;
        line-height: 1.65 !important;
    }

    .entry-content blockquote.twitter-tweet {
        width: 100% !important;
        max-width: 100% !important;

        margin: 0 auto 24px !important;
        padding: 0 !important;

        border: 0 !important;
        background: transparent !important;

        font-size: inherit !important;
        line-height: inherit !important;
        text-align: left !important;
    }


    /* ==============================================
       記事内見出し
    ============================================== */

    .entry-content h3 {
        margin: 2.2em 0 1em !important;
        padding: 12px 14px !important;

        border: 0 !important;
        border-left: 5px solid #2b2e2e !important;
        background: #f3f3f3 !important;

        color: #333 !important;

        font-size: 23px !important;
        font-weight: 700;
        line-height: 1.5 !important;
        letter-spacing: 0.01em;

        word-break: auto-phrase;
    }

    .entry-content h4 {
        margin: 1.9em 0 0.8em !important;
        padding: 0 0 0.45em !important;

        border: 0 !important;
        border-bottom: 1px solid #c8c8c8 !important;
        background: transparent !important;

        color: #333 !important;

        font-size: 20px !important;
        font-weight: 700;
        line-height: 1.55 !important;
        letter-spacing: 0.01em;

        word-break: auto-phrase;
    }


    /* ==============================================
       目次
    ============================================== */

    .entry-content p:has(+ .table-of-contents) {
        margin: 1.7em 0 0.35em !important;

        color: #333;

        font-size: 18px;
        font-weight: 700;
        line-height: 1.5;
    }

    .entry-content .table-of-contents {
        margin: 0 0 1.8em !important;
        padding: 0 0 0 1.25em !important;

        border: 0 !important;
        background: transparent !important;

        font-size: 17px !important;
        line-height: 1.55 !important;
    }

    .entry-content .table-of-contents li {
        margin: 0.3em 0 !important;
        padding: 0 !important;
    }

    .entry-content .table-of-contents li a {
        color: #444 !important;
        line-height: inherit !important;
        text-decoration: none !important;
    }

    .entry-content .table-of-contents li a:hover,
    .entry-content .table-of-contents li a:focus {
        color: #000 !important;
        text-decoration: underline !important;
    }

    .entry-content .table-of-contents ul {
        margin: 0.25em 0 0.2em !important;
        padding-left: 1.15em !important;
    }


    /* ==============================================
       画像・動画・埋め込み
    ============================================== */

    .entry-content img,
    .entry-content video,
    .entry-content svg {
        display: block;

        max-width: 100% !important;
        height: auto !important;

        box-sizing: border-box;
    }

    .entry-content iframe,
    .entry-content object,
    .entry-content embed {
        max-width: 100% !important;
        width: 100% !important;

        box-sizing: border-box;
    }

    .entry-content iframe[src*="youtube.com"],
    .entry-content iframe[src*="youtube-nocookie.com"],
    .entry-content iframe[src*="youtu.be"],
    .entry-content iframe[src*="vimeo.com"] {
        aspect-ratio: 16 / 9;
        height: auto !important;
    }

    .entry-content .embed-wrapper,
    .entry-content .hatena-iframe-container,
    .entry-content .hatenablogcard,
    .entry-content .hatena-asin-detail {
        max-width: 100% !important;
        width: 100% !important;

        box-sizing: border-box;
    }

    .entry-content table {
        display: block;

        max-width: 100% !important;
        overflow-x: auto;

        box-sizing: border-box;
        -webkit-overflow-scrolling: touch;
    }

    .entry-content pre {
        max-width: 100% !important;
        overflow-x: auto;

        box-sizing: border-box;
        -webkit-overflow-scrolling: touch;
    }


    /* ==============================================
       旧ヨメレバ・カエレバ
    ============================================== */

    .booklink-box,
    .kaerebalink-box {
        overflow: hidden !important;

        max-width: 100% !important;
        margin: 1.5em 0 !important;
        padding: 16px !important;

        border: 1px solid #d3d3d3 !important;
        box-sizing: border-box;

        font-size: 15px !important;
    }

    .booklink-image,
    .kaerebalink-image {
        float: none !important;

        width: 100% !important;
        min-width: 0 !important;

        margin: 0 0 16px !important;

        text-align: center !important;
    }

    .booklink-image img,
    .kaerebalink-image img {
        display: inline-block !important;

        width: auto !important;
        max-width: 100% !important;
        height: auto !important;

        margin: 0 auto !important;
    }

    .booklink-info,
    .kaerebalink-info {
        overflow: visible !important;

        width: 100% !important;
        margin: 0 !important;
    }

    .booklink-name,
    .kaerebalink-name {
        margin-bottom: 14px !important;

        font-size: 16px !important;
        line-height: 1.65 !important;
    }

    .booklink-link2,
    .kaerebalink-link1 {
        display: grid !important;
        grid-template-columns: 1fr;
        gap: 8px;

        width: 100% !important;
        margin-top: 14px !important;
    }

    .booklink-link2 a,
    .kaerebalink-link1 a {
        float: none !important;
        display: block !important;

        width: 100% !important;
        margin: 0 !important;
        padding: 12px 10px !important;

        box-sizing: border-box;

        font-size: 14px !important;
        line-height: 1.4 !important;
    }


    /* ==============================================
       はてなブックマークコメント
    ============================================== */

    div#hatena-bookmark-container {
        overflow: hidden !important;

        margin: 28px 0 32px !important;
        padding: 0 !important;

        border: 1px solid #d5d5d5 !important;
        border-radius: 8px !important;
        background: #fff !important;
        box-shadow: none !important;
    }

    div#hatena-bookmark-container div.hatena-bookmark-title {
        margin: 0 !important;
        padding: 0 !important;

        border: 0 !important;
        background: #292929 !important;
    }

    div#hatena-bookmark-container
    div.hatena-bookmark-comment-header {
        padding: 12px 14px !important;

        font-size: 16px !important;
        line-height: 1.5 !important;
    }

    div#hatena-bookmark-container
    div.hatena-bookmark-comment-header a {
        color: #f2f2f2 !important;

        font-size: 16px !important;
        font-weight: 700 !important;
        text-decoration: none !important;
    }

    div#hatena-bookmark-container
    .hatena-bookmark-users {
        color: #c8a34e !important;

        font-size: 14px !important;
        font-weight: 400 !important;
    }

    div#hatena-bookmark-container
    ul#hatena-bookmark-list-container {
        margin: 0 !important;
        padding: 0 !important;

        border: 0 !important;
        background: #fff !important;

        list-style: none !important;
    }

    /* スマホではコメント本文の抜粋を非表示 */
    div#hatena-bookmark-container
    ul#hatena-bookmark-list-container
    > li.hatena-bookmark-item:not(.hatena-bookmark-addcomment-container) {
        display: none !important;
    }

    div#hatena-bookmark-container
    li.hatena-bookmark-addcomment-container {
        display: block !important;

        margin: 0 !important;
        padding: 14px !important;

        border: 0 !important;
        background: #fff !important;
    }

    div#hatena-bookmark-container
    .hatena-bookmark-addcomment a {
        display: block !important;

        padding: 11px 12px !important;

        border: 1px solid #cfcfcf !important;
        border-radius: 5px !important;
        background: #f6f6f6 !important;

        color: #333 !important;

        font-size: 16px !important;
        font-weight: 700 !important;
        line-height: 1.4 !important;
        text-align: center !important;
        text-decoration: none !important;
    }

    div#hatena-bookmark-container
    .hatena-bookmark-footer {
        margin: 0 !important;
        padding: 0 14px 14px !important;

        border: 0 !important;
        background: #fff !important;
    }

    div#hatena-bookmark-container
    .hatena-bookmark-showall-comment {
        display: none !important;
    }

    div#hatena-bookmark-container
    .hatena-bookmark-entrypage-link {
        display: block !important;
        float: none !important;

        width: 100% !important;
        margin: 0 !important;

        text-align: center !important;
    }

    div#hatena-bookmark-container
    .hatena-bookmark-entrypage-link a {
        display: block !important;

        padding: 10px 12px !important;

        border: 1px solid #cfcfcf !important;
        border-radius: 5px !important;

        color: #444 !important;

        font-size: 15px !important;
        line-height: 1.4 !important;
        text-decoration: none !important;
    }


    /* ==============================================
       共有ボタン
    ============================================== */

    .entry-footer .social-buttons {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: flex-start !important;
        gap: 8px !important;

        margin: 18px 0 12px !important;
        padding: 0 !important;

        line-height: 1 !important;
    }

    .entry-footer .social-button-item {
        float: none !important;
        display: block !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    .entry-footer .social-button-item iframe,
    .entry-footer .social-button-item img {
        max-width: 100% !important;
    }


    /* ==============================================
       関連記事
    ============================================== */

    .entry-footer-modules {
        margin-top: 14px !important;
        margin-bottom: 14px !important;
    }

    .entry-footer-modules
    .hatena-module-related-entries {
        margin: 0 0 14px !important;
        padding: 0 !important;
    }

    .entry-footer-modules
    .hatena-module-related-entries
    .hatena-module-title {
        margin: 0 0 8px !important;
        padding: 0 0 10px !important;

        border-bottom: 2px solid #333 !important;

        color: #333 !important;

        font-size: 21px !important;
        font-weight: 700 !important;
        line-height: 1.45 !important;
    }

    .entry-footer-modules
    .related-entries {
        margin: 0 !important;
        padding: 0 !important;

        list-style: none !important;
    }

    .entry-footer-modules
    .related-entries-item {
        margin: 0 !important;
        padding: 15px 0 !important;

        border-bottom: 1px solid #dedede !important;
    }

    .entry-footer-modules
    .related-entries-item:last-child {
        border-bottom: 0 !important;
    }

    .entry-footer-modules
    .related-entries-item-inner {
        margin: 0 !important;
        padding: 0 !important;
    }

    .entry-footer-modules
    .related-entries-item a {
        color: #333 !important;

        font-size: 17px !important;
        font-weight: 600 !important;
        line-height: 1.55 !important;
        text-decoration: none !important;

        word-break: auto-phrase;
    }

    .entry-footer-modules
    .related-entries-item a:hover,
    .entry-footer-modules
    .related-entries-item a:focus {
        color: #000 !important;
        text-decoration: underline !important;
    }

    .entry-footer-modules
    .related-entries-date {
        display: block !important;

        margin-bottom: 4px !important;

        color: #888 !important;

        font-size: 13px !important;
        line-height: 1.4 !important;
    }

    .entry-footer-modules
    .related-entries-entry-body {
        margin-top: 5px !important;

        color: #666 !important;

        font-size: 14px !important;
        line-height: 1.6 !important;
    }


    /* ==============================================
       記事末尾広告
    ============================================== */

    .entry-footer-ad {
        margin-top: 14px !important;
        margin-bottom: 14px !important;
    }


    /* ==============================================
       「コメントを書く」
    ============================================== */

    .page-entry .comment-box {
        height: auto !important;
        min-height: 0 !important;

        margin: 12px 0 0 !important;
        padding: 0 !important;

        border-top: 0 !important;
        border-bottom: 0 !important;
    }

    .page-entry .comment-box .comment {
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    .page-entry .comment-box .comment:empty {
        display: none !important;
    }

    .page-entry .leave-comment-title {
        display: block !important;

        width: 100% !important;
        margin: 0 !important;
        padding: 12px 14px !important;

        box-sizing: border-box;

        border: 2px solid #333 !important;
        border-radius: 4px !important;
        background: #fff !important;

        color: #333 !important;

        font-size: 17px !important;
        font-weight: 700 !important;
        line-height: 1.4 !important;
        text-align: center !important;
        text-decoration: none !important;
    }

    .page-entry .leave-comment-title:hover,
    .page-entry .leave-comment-title:focus {
        color: #fff !important;
        background: #333 !important;
        text-decoration: none !important;
    }


    /* ==============================================
       前後の記事へのリンク
    ============================================== */

    .page-entry #main-inner > .entry,
    .page-entry #main-inner > article.entry,
    .page-entry .entry {
        margin-bottom: 10px !important;
    }

    .page-entry .pager {
        clear: both !important;

        min-height: 0 !important;
        margin: 0 0 18px !important;
        padding: 0 !important;
    }

    .page-entry .pager .pager-prev,
    .page-entry .pager .pager-next {
        margin: 0 !important;
        padding: 0 !important;
    }

    .page-entry .pager a {
        display: block !important;

        margin: 0 !important;
        padding: 13px 10px !important;

        border-top: 1px solid #ddd !important;
        border-bottom: 1px solid #ddd !important;

        color: #444 !important;

        font-size: 16px !important;
        line-height: 1.55 !important;
        text-decoration: none !important;
    }


    /* ==============================================
       サイドバー：プロフィール
    ============================================== */

    #box2-inner > .hatena-module-profile {
        margin-bottom: 14px !important;
        padding-bottom: 0 !important;
    }

    #box2-inner > .hatena-module-profile .hatena-module-body {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }

    #box2 .hatena-module-profile img.profile-icon,
    #box2 .hatena-module-profile .profile-icon img,
    #box2 .hatena-module-profile .profile-icon-link img {
        display: block !important;

        width: 104px !important;
        height: 104px !important;
        max-width: 104px !important;
        max-height: 104px !important;

        margin: 0 0 16px !important;

        border-radius: 50% !important;
        object-fit: cover;
    }

    #box2 .hatena-module-profile .profile-icon,
    #box2 .hatena-module-profile .profile-icon-link {
        max-width: 104px !important;
        height: auto !important;
    }

    .hatena-module-profile .profile-description {
        font-size: 16px !important;
        line-height: 1.75 !important;
    }

    .hatena-module-profile .profile-description p {
        margin-top: 0 !important;
        margin-bottom: 1em !important;
    }

    #box2-inner > .hatena-module-profile .profile-about {
        display: block;

        margin: 12px 0 0 !important;
        padding: 0 !important;

        font-size: 16px !important;
        line-height: 1.5 !important;
    }


    /* ==============================================
       サイドバー：検索欄
    ============================================== */

    #box2-inner > .hatena-module-search-box {
        margin: 0 0 22px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    #box2-inner > .hatena-module-search-box
    .hatena-module-title:empty {
        display: none !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    #box2-inner > .hatena-module-search-box
    .hatena-module-body {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    .hatena-module-search-box .search-form {
        display: flex !important;
        align-items: center;
        gap: 8px;

        width: 100% !important;
    }

    .hatena-module-search-box .search-module-input {
        flex: 1 1 auto;

        min-width: 0;
        height: 46px !important;
        padding: 7px 12px !important;

        box-sizing: border-box;

        font-size: 17px !important;
        line-height: 1.4 !important;
    }

    .hatena-module-search-box .search-module-button {
        flex: 0 0 46px;

        width: 46px !important;
        height: 46px !important;
        margin: 0 !important;
    }

    #box2-inner > .hatena-module-category {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
}


/* auto-phrase非対応ブラウザー用 */
@supports not (word-break: auto-phrase) {
    @media screen and (max-width: 768px) {
        .entry-title,
        .entry-content h3,
        .entry-content h4,
        .entry-footer-modules .related-entries-item a {
            word-break: normal;
            overflow-wrap: break-word;
        }
    }
}
