@charset "UTF-8";
@import "https://fonts.googleapis.com/css?family=Source+Code+Pro:400,700";
/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
html{
    color:#000;
    background:#fff;
}
code.white{
    background:#fff;
}
blockquote,body,code,dd,div,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,input,legend,li,ol,p,pre,td,textarea,th,ul{
    margin:0;
    padding:0
}
table.text-table, td.normal{
    border-collapse:collapse;
    border-spacing:0;
    /* my */
    background: #e8f8ff;
}
fieldset,img{
    border:0
}
address,caption,cite,code,dfn,em,strong,th,var{
    font-style:normal;
    font-weight:400
}
ol,ul{
    list-style:none
}
th{
    text-align:left
}
h1,h2,h3,h4,h5,h6{
    font-size:100%;
    font-weight:400
}
q:after,q:before{
    content:""
}
abbr,acronym{
    border:0;
    font-variant:normal
}
sub{
    vertical-align:text-bottom
}
input,select,textarea{
    font-family:inherit;
    font-size:inherit;
    font-weight:inherit;
    font-size:100%
}
legend{
    color:#000
}
#yui3-css-stamp.cssreset{
    display:none
}
/* theme CSS */
/* common */
/* my
a{
    text-decoration:none;
    border-bottom:1px solid #aaa
}
a,a:hover{
    color:#000
}
a:hover{
    border-bottom:1px solid #000
}
*/
/* my */
::selection{
    background: #90ff90;
}
::-moz-selection{
    background: #90ff90
}
/* structure */
/* my  */
/*
body,html{
    background:#f4f4ef
}
*/
body{
    font-size:16px;
    font-family:Helvetica Neue,Helvetica,Univers,Arial,Hiragino Kaku Gothic Pro,Meiryo,MS PGothic,sans-serif
}
#globalheader-container{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    background:#f4f4ef
}
#container{
    border-top:1px solid #c9c9c3;
    margin:38px 0 0
}

/*  my */
#blog-title{
    display: none;
}
#blog-title{
    border-bottom:1px solid #c9c9c3;
    text-align:center
}
#blog-title-inner{
    padding:30px 40px 40px;
    background:url(https://cdn.blog.st-hatena.com/css/theme/wideboard/header.png?version=fe967752226f156c62744b632f2e86) no-repeat top;
    border-top:1px solid #fff
}
#blog-title-inner a{
    border:none
}
#blog-title-inner a:hover{
    border-bottom:1px solid #000
}
.header-image-enable #blog-title-inner{
    height:auto!important
}
.header-image-enable #blog-title{
    border-top:none
}
.header-image-only #blog-title-inner{
    height:70px!important
}
.header-image-only #blog-title{
    border-top:none
}
#blog-title+#content,#blog-title+#top-box,#blog-title+#top-editarea{
    border-top:1px solid #fff
}
#bottom-editarea,#top-box,#top-editarea{
    padding:80px 80px 0
}
#bottom-editarea{
    padding-bottom:40px
}
#content{
    margin:0 auto
}
#content-inner{
    margin:80px 80px 0
}
#box2{
    border-top:1px solid #c9c9c3;
    margin:160px 0 0;
    font-size:14px
}
#box2-inner{
    border-top:1px solid #fff;
    padding:20px 0 0;
    overflow:hidden
}
#footer{
    border-top:1px solid #c9c9c3;
    margin:120px 80px 0
}
#footer-inner{
    border-top:1px solid #fff;
    text-align:right;
    padding:10px 0 20px;
    font-size:12px;
    color:#aaa;
    line-height:1.8
}
#footer-inner a{
    color:#666;
    border:none
}
#footer-inner a:hover{
    border-bottom:1px solid #000
}
/* detail */
#title a{
    font-size:28px;
    text-shadow:0 1px 1px #a0a0a0;
    letter-spacing:1px
}
/* my */
/* borrowed from #title */
#top-editarea{
    border-bottom:1px solid #c9c9c3;

    text-shadow:0 1px 1px #a0a0a0;
    letter-spacing:1px;
}

#top-editarea :link, #top-editarea :visited, #top-editarea :active{
    color: blue;;
}
/* my */
#title a{
    text-decoration: none;
}

#blog-description,#title a{
    font-weight:700;
    font-family:Source Code Pro,sans-serif
}
#blog-description{
    margin:10px 0 0;
    color:#333;
    font-size:14px
    /* text-shadow: 0px 1px 2px @bk3;
     */
}
.entry{
    clear:both;
    overflow:hidden;
    position:relative;
    margin:0 0 160px
}
.entry-header a{
    border:none
}
/* my */
div.date a{
    /* display: none; */
    text-decoration: none;
}

.date a{
    font-size:14px;
    letter-spacing:1px;
    margin:0 0 0 2px;
    font-weight:700;
}
.date a:hover{
    border-bottom:1px solid #000
}
.page-entry .date,.page-index .date{
    position:absolute;
    top:0;
    left:32px;
    z-index:3
}

/* my */
.entry-title-link{
    text-decoration: none;
}

.entry .entry-title{
    position:relative;
    padding:26px 35px 0 33px
}
.entry .entry-title:before{
    content:"";
    display:block;
    width:23px;
    height:23px;
    background:#000;
    float:left;
    position:absolute;
    top:28px;
    left:0
}
.entry .entry-title a{
    font-size:23px;
    margin:0 0 10px;
    display:inline-block;
    font-weight:700;
    line-height:23px;
    line-height:30px
}
.entry .categories{
    position:absolute;
    top:0;
    left:140px
}
.entry .categories a{
    font-size:12px;
    margin:0 3px 0 0;
    background:#fff;
    padding:0 3px
}
.entry .categories a:hover{
    border-bottom:1px solid #000
}
.entry-header-menu{
    position:absolute;
    top:25px;
    right:0;
    width:26px;
    height:26px;
    z-index:8000;
    line-height:26px
}
.entry-header-menu a{
    border-bottom:1px solid #777;
    background:url(https://cdn.blog.st-hatena.com/css/theme/wideboard/edit.png?version=fe967752226f156c62744b632f2e86) no-repeat 0 0;
    text-indent:-9999px;
    display:block;
    border:none
}
.entry-header-menu a:hover{
    opacity:.5
}
.entry-content{
    margin:40px 0 0
}
.entry-content p{
    line-height:1.8;
    margin:10px 0 0;
    font-size:16px
}

/* my */
/*
.entry-content p a{
    color:#4048af;
    border-bottom:1px solid #a8aaca
}
.entry-content p a:hover{
    border-bottom:1px solid #4048af
}
*/

/* my: nuke keyword links */
.keyword{
    text-decoration: none;
}

.entry-content p .keyword{
    color:#000;
    text-decoration:none;
    border-bottom:1px solid #fff;
}

.entry-content p .keyword:hover{
    color:#000;
    border-bottom:1px solid #000;
    /* my */
    text-decoration:none;
}

.entry-content img{
    max-width:100%;
    vertical-align:bottom;
    margin:7px 0;
    text-decoration:none
}
.entry-content .hatena-fotolife,.entry-content .http-image{
    border:none
}
.entry-content img.hatena-image-left{
    margin:0 15px 0 0
}
.entry-content img.hatena-image-right{
    margin:0 0 0 15px
}
.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6{
    line-height:1;
    margin:40px 0 10px
}
.entry-content h1{
    font-weight:700;
    font-size:21px;
    padding:10px 10px 10px 41px;
    border:1px solid #aaa;
    position:relative
}
.entry-content h1:before{
    content:"";
    display:block;
    width:21px;
    height:21px;
    background:#666;
    float:left;
    position:absolute;
    top:10px;
    left:10px
}
.entry-content h2{
    font-weight:700;
    font-size:20px;
    padding:0 0 10px 30px;
    border-bottom:1px solid #aaa;
    position:relative
}
.entry-content h2:before{
    content:"";
    display:block;
    width:20px;
    height:20px;
    background:#666;
    float:left;
    position:absolute;
    top:0;
    left:0
}
.entry-content h3{
    font-weight:700;
    font-size:19px;
    padding:0 0 5px 29px;
    position:relative
}
.entry-content h3:before{
    content:"";
    display:block;
    width:19px;
    height:19px;
    background:#666;
    float:left;
    position:absolute;
    top:0;
    left:0
}
.entry-content h4{
    font-weight:700;
    font-size:18px;
    border-bottom:1px solid #aaa;
    padding:0 0 10px
}
.entry-content h5{
    font-weight:700;
    font-size:17px
}
.entry-content h6{
    font-weight:700;
    font-size:16px
}
.entry-content pre{
    padding:20px 25px;
    color:#000;
    font-size:14px;
    line-height:1.5;
    background:#fff;
    border:1px solid #ccc;
    font-family:Source Code Pro,sans-serif;
    font-weight:400;
    margin:10px 0 0
}
.entry-content ol{
    margin:10px 0 0
}
.entry-content ol li{
    /* list-style-type:decimal-leading-zero; */
    /* my */
    list-style-type: decimal;
    margin:0 0 10px 2em
}
.entry-content ol li ol,.entry-content ol li ul{
    margin:10px 0
}
.entry-content ul{
    margin:10px 0 0
}
.entry-content ul li{
    list-style-type:disc;
    margin:0 0 10px 1.5em
}
.entry-content ul li ol,.entry-content ul li ul{
    margin:10px 0
}
.entry-content dl{
    margin:10px 0 0
}
.entry-content dd{
    margin:0 0 0 1.5em
}
.entry-content table{
    border-top:1px solid #c9c9c3;
    border-left:1px solid #c9c9c3;
    margin:10px 0 0
}
.entry-content td,.entry-content th{
    padding:10px;
    border-right:1px solid #c9c9c3;
    border-bottom:1px solid #c9c9c3
}
.entry-content th{
    font-weight:700;
    background:#eee
}
/*
.entry-content td{
    background:#fff
}
*/
.entry-content blockquote{
    background:#fff;
    padding:10px 25px 20px;
    border:1px solid #fff;
    border-radius:5px;
    color:#666;
    margin:20px 0;
    font-style:italic
}
.entry-content blockquote li,.entry-content blockquote p{
    font-size:15px;
    font-style:italic
}
.entry-content blockquote cite{
    margin:20px 0 0;
    color:#a0a0a0;
    display:block;
    font-size:13px;
    border-top:3px double #eee;
    padding:10px 0 0
    /* position: relative;
     */
}
.entry-content blockquote cite:before{
    content:"Source: "
}
.entry-content .hatena-id-icon{
    vertical-align:middle
}
.hatena-asin-detail{
    padding:20px 21px!important;
    border:1px dotted #aaa;
    background:#f0f0f0;
    display:block;
    border-radius:5px;
    margin:10px 0 0;
    position:relative;
    font-size:14px
}
.hatena-asin-detail a{
    overflow:hidden;
    display:inline-block;
    width:auto;
    float:left
}
.hatena-asin-detail .hatena-asin-detail-info{
    float:left;
    margin:0 0 0 15px
}
.hatena-asin-detail .hatena-asin-detail-info ul{
    overflow:hidden;
    margin:10px 0 0;
    padding:0
}
.hatena-asin-detail .hatena-asin-detail-info li{
    list-style-type:none;
    margin:5px 0 0
}
.hatena-asin-detail .hatena-asin-detail-info a{
    float:none;
    width:auto;
    display:inline
}
.hatena-asin-detail .hatena-asin-detail-title{
    font-size:16px
}
.hatena-asin-detail .hatena-asin-detail-image{
    border:none;
    margin:0
}
.comment{
    border-bottom:1px dotted #a0a0a0;
    margin:0 0 20px;
    max-width:500px;
    font-size:14px
}
.comment li{
    padding:10px 0 0;
    border-top:1px dotted #a0a0a0
}
.read-more-comments{
    margin:0!important;
    padding:0!important;
    border:none!important
}
.read-more-comments a{
    display:block;
    padding:20px 0!important;
    border-top:1px dotted #a0a0a0;
    border-bottom:none
}
.read-more-comments a:hover{
    background:#e7e7e0
}
.comment-box{
    clear:both;
    overflow:hidden
}
.comment-box li{
    margin:0 0 20px
}
.comment-box .comment-user-name{
    position:relative;
    padding:0 0 0 50px;
    margin:0 0 10px
}
.comment-box .comment-user-name img{
    width:40px;
    height:40px;
    position:absolute;
    top:0;
    left:0
}
.comment-box .comment-content,.comment-box .comment-metadata{
    margin:0 0 0 50px
}
.comment-box .comment-content{
    line-height:1.8
}
.comment-box .comment-metadata{
    margin-top:10px;
    font-size:12px
}
.leave-comment-title{
    overflow:hidden;
    display:inline-block;
    border:1px solid #eee;
    border-radius:3px;
    box-shadow:0 1px 2px 1px #ccc;
    padding:10px 10px 8px;
    font-size:13px;
    font-weight:700;
    margin:0 0 5px 3px;
    background:#efefef;
    background:linear-gradient(180deg,#efefef 31%,#e8e8e8);
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#efefef",endColorstr="#e8e8e8",GradientType=0)
}
.leave-comment-title:hover{
    border:none;
    border:1px solid #eee;
    border-radius:3px;
    background:#efefef;
    background:linear-gradient(180deg,#efefef 31%,#dbdbdb);
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#efefef",endColorstr="#dbdbdb",GradientType=0);
    box-shadow:0 1px 2px 1px #ccc
}
.entry-footer{
    padding:17px 0 0;
    margin:16px 0 0
}
.entry-footer-section{
    float:right;
    min-width:100px;
    text-align:right;
    font-size:14px;
    margin:0 0 10px;
    height:24px
}
.entry-footer-html{
    margin:10px 0 0
}
.google-afc{
    clear:both;
    margin-top:5px
}
.google-afc div#google_afc_user_container{
    margin:0
}
.hatena-star-container{
    width:auto;
    margin:0 0 10px!important
}
.social-buttons{
    margin-bottom:10px
}
.customized-footer{
    width:auto;
    margin:0 0 10px
}
.hatena-bookmark-comment-iframe{
    clear:both
}
#box2 .hatena-module{
    width:240px;
    float:left;
    margin:20px 20px 40px 0
}
#box2 .hatena-module-body{
    font-size:14px;
    padding:0 20px 0 0
}
.hatena-module{
    min-height:220px;
    margin-bottom:40px
}
.hatena-module-title{
    font-weight:700;
    text-decoration:none;
    margin:0 0 8px;
    font-size:16px;
    padding:0 20px 0 0
}
.hatena-module-title a{
    border:none
}
.hatena-module-title a:hover{
    text-decoration:underline
}
.hatena-module-body{
    font-size:14px
}
.hatena-module-body li{
    margin:0 0 10px
}
.hatena-module-body a{
    border-bottom:1px solid #c9c9c3
}
.hatena-module-body a:hover{
    border-bottom:1px solid #000
}
.profile-icon{
    clear:both;
    display:block;
    margin:15px 0 5px
}
.profile-description{
    line-height:1.5;
    width:156px;
    font-size:13px;
    margin:5px 0 0
}
.id a{
    border:none
}
.recent-entries-entry-title{
    line-height:1.8
}
.hatena-module-recent-comments li .recent-comment-time{
    padding:0 2px
}
/* 記事モジュール */
.urllist-item{
    padding-bottom:10px;
    border-bottom:1px solid #ddd
}
.search-module-input{
    border-top:none;
    border-right:none;
    border-bottom:1px solid #c9c9c3;
    border-left:none;
    background:#fff;
    font-size:14px;
    line-height:1;
    height:24px;
    margin:0;
    padding:5px 6px 3px;
    width:140px;
    float:left
}
.search-module-input:focus{
    outline:none
}
.search-module-button{
    border-top:none;
    border-right:none;
    border-bottom:1px solid #c9c9c3;
    border-left:none;
    background:#fff url(https://cdn.blog.st-hatena.com/css/theme/wideboard/search.png?version=fe967752226f156c62744b632f2e86) no-repeat 50%;
    font-size:14px;
    line-height:1;
    height:33px;
    width:34px;
    margin:0 0 0 -1px;
    text-indent:-9999px
}
.search-module-button:hover{
    background:#e7e7e0 url(https://cdn.blog.st-hatena.com/css/theme/wideboard/search.png?version=fe967752226f156c62744b632f2e86) no-repeat 50%
}
.pager{
    overflow:hidden;
    font-size:18px;
    width:461px;
    margin:0 auto
}
.pager-next{
    float:right;
    border-left:1px dotted #a0a0a0;
    text-align:right
}
.pager-next a{
    padding:0 20px 0 10px;
    background:url(https://cdn.blog.st-hatena.com/css/theme/wideboard/next.png?version=fe967752226f156c62744b632f2e86) no-repeat 100%;
    vertical-align:middle;
    border-bottom:1px solid #f4f4ef;
    width:200px;
    line-height:1.5;
    word-wrap:break-word;
    display:inline-block
}
.pager-next a:hover{
    border-bottom:1px solid #000
}
.pager-prev{
    float:left
}
.pager-prev a{
    padding:0 10px 0 20px;
    background:url(https://cdn.blog.st-hatena.com/css/theme/wideboard/prev.png?version=fe967752226f156c62744b632f2e86) no-repeat 0;
    border-bottom:1px solid #f4f4ef;
    width:200px;
    line-height:1.5;
    word-wrap:break-word;
    display:inline-block
}
.pager-prev a:hover{
    border-bottom:1px solid #000
}
#bottom-editarea{
    margin:0 auto;
    overflow:hidden
}
#cboxOverlay{
    background:#000
}
/* About page */
.page-about dl{
    overflow:hidden
}
.page-about dt{
    float:left;
    width:134px;
    height:25px;
    padding:15px 0 30px 16px;
    margin:0 20px 0 0;
    font-weight:700;
    letter-spacing:1px;
    clear:both;
    border-top:1px dotted #c9c9c3;
    text-align:right
}
.page-about dd{
    width:auto;
    height:auto;
    line-height:20px;
    padding:15px 0 35px;
    border-top:1px dotted #c9c9c3;
    overflow:hidden
}
.page-about dd .about-subscription-count{
    margin:0 10px 0 0
}
.page-about dd .profile-icon{
    display:inline;
    margin:0;
    vertical-align:middle
}
/* Archive page */
.page-archive .autopagerize_page_element{
    margin:30px auto 0;
    padding:15px 0 0
    /* max-width: 880px;
     */
}
.page-archive .autopagerize_page_element h1{
    padding:0 0 5px;
    margin:0 0 20px;
    border-bottom:1px dotted #a0a0a0
}
.page-archive .autopagerize_page_element h1 a{
    text-decoration:none;
    border:none;
    font-size:18px;
    font-weight:800;
    font-family:Source Code Pro,sans-serif;
    letter-spacing:2px
}
.page-archive .autopagerize_page_element li{
    list-style-type:square;
    margin-bottom:10px;
    margin:0 0 10px 1em;
    line-height:1.5
}
.page-archive .autopagerize_page_element .categories a{
    background:#fff;
    padding:2px 3px 2px 5px;
    border:none;
    font-size:12px;
    letter-spacing:2px;
    vertical-align:middle;
    display:inline-block;
    border-bottom:1px solid #f4f4ef;
    margin:0 2px 0 0
}
.page-archive .autopagerize_page_element .categories a:last-child{
    margin:0 10px 0 0
}
.page-archive .autopagerize_page_element .categories a:hover{
    border-bottom:1px solid #000
}
.page-archive .autopagerize_page_element .entry-title{
    line-height:1.8
}
.page-archive .autopagerize_page_element .bookmark-widget-counter,.page-archive .autopagerize_page_element .star-container a{
    border:none
}
/* Retina */
@media (-webkit-min-device-pixel-ratio:2){
    .search-module-button{
        background:url(https://cdn.blog.st-hatena.com/css/theme/wideboard/search@2x.png?version=fe967752226f156c62744b632f2e86) no-repeat 50%;
        background-size:20px 20px
    }
    .entry-header-menu a{
        background:url(https://cdn.blog.st-hatena.com/css/theme/wideboard/edit@2x.png?version=fe967752226f156c62744b632f2e86) no-repeat 0 0;
        background-size:26px 26px
    }
    .pager-next a{
        background:url(https://cdn.blog.st-hatena.com/css/theme/wideboard/next@2x.png?version=fe967752226f156c62744b632f2e86) no-repeat 100%;
        background-size:9px 10px
    }
    .pager-prev a{
        background:url(https://cdn.blog.st-hatena.com/css/theme/wideboard/prev@2x.png?version=fe967752226f156c62744b632f2e86) no-repeat 0;
        background-size:9px 10px
    }
}

/* my */
body{background:#D0ECEA;}

/* my: ol */
ol {
    counter-reset: item;
}

ol > li {
    counter-increment: item;
}

ol ol > li {
    display: block;
}

ol ol > li:before {
    content: counters(item, ".") ". ";
    margin-left: -20px;
}
/* does not work:
 https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Lists_and_Counters/Using_CSS_counters */

ul.list-indent {
    margin-left: 2em;
    list-style-type: circle !important;
}

/* my */
.emph{
    font-weight: bold;
}

div.toc{
    border: 1px solid black;
    width: 25em;
    background: #e8f8ff;
}

div.box{
    border: 1px solid black;
    background: #e8f8ff;
    padding-left: 2%;
    padding-right: 2%;
    padding-bottom: 2%;
    margin-top: 2%;
}

.larger{
    font-size: 150%
}
caption{
    text-align:center;
    padding-bottom: 1%;
}

.center{
    text-align:center;
}

.alch{
    background: #ffd0e0;
} /* 錬金 */
.ul{
    background: #e8f8ff;
}
