@charset "utf-8";

/* 記事下部にある固定エリアのタイトルの部分を調整 */
.entry-footer-modules .hatena-module-html .hatena-module-title {
  margin-left: 0px;
}


/* タイトル部分のデザイン */
/* タイトルのフォントを変更 */
@font-face {
  font-family: 'Cica';
  src: url('https://font.utakata.app/Cica-Bold.ttf') format('truetype');
}
h1#title {
  font-family: 'Cica', Impact;
  font-size: 2.4em;
}
/* タイトルと説明の間を開ける */
h2#blog-description {
  margin-top: 20px;
  font-size: 0.8em;
}

/* タイトル下のメニューのデザイン */
#top-editarea {
  padding: 0px;
  text-align: center;
}

.header-nav {
  background-color: #aaa;
  width: 100%;
}

.header-menu {
  margin: 0px;
}

.header-menu li {
  display: inline-block;
  padding: 10px 20px;
}

.header-menu li:hover {
  background-color: #ddd;
  color: #1487bd;
}

.header-menu a {
  color: #fff;
  font-weight: bold;
  text-decoration: none;
}

.header-menu a:visited {
  color: #fff;
}

/* 右にあるHTMLモジュールだけタイトルがずれるので調整する */
.hatena-module-html .hatena-module-title {
  margin-top: 20px;
  margin-left: 20px;
}

  /*
    ここから下ははてなブログのテーマをそのまま
    Theme: thumbnail
    Author: rokuzeudon
    Description:
    一覧ページでサムネイル画像が際立つテーマです
    Responsive: yes
   */

#box2-inner, svg:not(:root) {
    overflow: hidden
}

button, hr, input {
    overflow: visible
}

progress, sub, sup {
    vertical-align: baseline
}

#container #content:after, .clearfix:after {
    visibility: hidden;
    height: 0;
    content: ".";
    clear: both
}

#title a, .btn, a.keyword, body, html {
    color: #454545
}

html {
    line-height: 1.15;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

.clearfix, article, aside, details, figcaption, figure, footer, header, main, menu, nav, section {
    display: block
}

audio, canvas, progress, video {
    display: inline-block
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

figure {
    margin: 1em 40px
}

hr {
    box-sizing: content-box;
    height: 0
}

code, kbd, pre, samp {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects;
    color: #1487bd
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted
}

b, strong {
    font-weight: bolder
}

dfn {
    font-style: italic
}

mark {
    background-color: #ff0;
    color: #000
}

small {
    font-size: 80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

audio:not([controls]) {
    display: none;
    height: 0
}

img {
    border-style: none
}

button, input, optgroup, select, textarea {
    font-family: sans-serif;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button, select {
    text-transform: none
}

[type=reset], [type=submit], button, html [type=button] {
    -webkit-appearance: button
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
    outline: ButtonText dotted 1px
}

fieldset {
    padding: .35em .75em .625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

.btn, .entry-header .entry-header-menu a, .leave-comment-title {
    vertical-align: middle;
    text-align: center;
    cursor: pointer
}

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
}

.btn, .btn-large {
    font-weight: 700
}

summary {
    display: list-item
}

[hidden], template {
    display: none
}

.clearfix:after {
    display: block;
    font-size: 0
}

.maxwidth-content {
    max-width: 80em;
    margin: auto;
    padding: 1em
}

#blog-title, #title, .header-image-enable #blog-title-inner {
    margin: 0
}

body, html {
    font-family: 'Noto Sans Japanese', -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    background: #f5f5f5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

html {
    font-size: 625%
}

body {
    font-size: .16em
}

a:visited {
    color: #789dae
}

a:hover {
    color: #0f5373
}

h1 a, h1 a:hover, h1 a:visited, h2 a, h2 a:hover, h2 a:visited, h3 a, h3 a:hover, h3 a:visited, h4 a, h4 a:hover, h4 a:visited, h5 a, h5 a:hover, h5 a:visited, h6 a, h6 a:hover, h6 a:visited {
    color: #333;
    text-decoration: none
}

a.keyword {
    text-decoration: none;
    border-bottom: .01rem dotted #ddd
}

.btn, .btn:hover {
    text-decoration: none!important
}

.btn {
    display: inline-block;
    padding: .04rem .1rem;
    margin-bottom: 0;
    line-height: .18rem;
    background-color: #fff;
    border-radius: .02rem;
    background-clip: padding-box;
    font-size: .12rem;
    border: .01rem solid rgba(0, 0, 0, .2)
}

#box2-inner, #content-inner {
    display: -webkit-box;
    display: -ms-flexbox
}

.btn:hover {
    background-color: #f5f5f5
}

.btn-small {
    padding: .02rem .1rem!important;
    font-size: .11rem!important
}

.btn-large {
    padding: .13rem .19rem;
    font-size: .17rem;
    line-height: normal
}

#globalheader-container {
    background-color: #333;
    color: #fff;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%
}

#container {
    padding-top: 32px
}

#container #content {
    display: block
}

#container #content:after {
    display: block;
    font-size: 0
}

.globalheader-off #container {
    padding-top: 0
}

#content-inner {
    display: flex
}

#main {
    width: 100%
}

#main-inner {
    max-width: 80em;
    margin: auto;
    padding: 0 .1rem
}

#wrapper {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

#box2 {
    width: 320px;
    line-height: 1.5
}

#box2-inner {
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: left;
    -ms-flex-pack: left;
    justify-content: left;
    font-size: 85%
}

#blog-title-inner {
    margin: 0 0 .4rem;
    padding: 0 .3rem;
    text-align: center;
    background-size: cover
}

#title {
    padding: .7rem 0 0
}

#blog-description {
    font-weight: 400;
    font-size: 80%;
    margin: .05rem 0 0
}

#top-box {
    background: rgba(0, 0, 0, .02);
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee
}

.breadcrumb {
    max-width: 80em;
    margin: auto;
    padding: 1em;
    font-size: 90%
}

.breadcrumb {
    padding: .5em 1.5em
}

.entry {
    position: relative;
    margin: 0 0 .4rem
}

.entry::after {
    content: "";
    display: block;
    width: 100%;
    height: .8em;
    background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .05) 10%, rgba(0, 0, 0, .05) 90%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .05) 10%, rgba(0, 0, 0, .05) 90%, rgba(0, 0, 0, 0) 100%)
}

.entry-inner {
    max-width: 40em;
    margin: .2rem auto .4rem;
    padding: 1em;
    background: #fff
}

.entry-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column;
    padding: 0 0 .1rem;
    margin-bottom: .2rem;
    border-bottom: .01rem solid #ddd;
    position: relative
}

.entry-header .entry-title {
    margin: 0;
    line-height: 1.3;
    font-size: 160%;
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0
}

.entry-header .date {
    font-weight: 700;
    margin: .1rem 0 0;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
}

.entry-header .date a {
    color: #1487bd;
    text-decoration: none;
    font-size: 90%
}

.entry-header .categories {
    margin-top: .1rem;
    font-size: 80%;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

.entry-header .categories a {
    color: #999;
    text-decoration: none
}

.entry-header .categories.no-categories {
    margin: 0
}

.entry-header .social-buttons {
    margin: .2rem 0 0;
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3
}

.entry-header .entry-header-menu {
    position: absolute;
    bottom: 0;
    left: -.6rem
}

.entry-header .entry-header-menu a {
    display: inline-block;
    padding: .04rem .1rem;
    margin-bottom: 0;
    line-height: .18rem;
    color: #454545;
    background-color: #fff;
    border-radius: .02rem;
    background-clip: padding-box;
    font-size: .12rem;
    font-weight: 700;
    border: .01rem solid rgba(0, 0, 0, .2);
    text-decoration: none!important
}

.entry-header .entry-header-menu a:hover {
    background-color: #f5f5f5;
    text-decoration: none!important
}

.entry-content {
    font-size: 95%;
    line-height: 1.7;
    padding-bottom: .1rem;
    border-bottom: .01rem solid #ddd
}

.entry-content blockquote, .entry-content ol, .entry-content p, .entry-content table, .entry-content ul {
    margin: 0 0 1em
}

.entry-content img {
    max-width: 100%
}

.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
    margin: 3em 0 .8em;
    line-height: 1.5
}

.entry-content h1 {
    font-size: 160%
}

.entry-content h2 {
    font-size: 150%
}

.entry-content h3 {
    font-size: 140%
}

.entry-content h4 {
    font-size: 130%
}

.entry-content h5 {
    font-size: 110%
}

.entry-content h6 {
    font-size: 100%
}

.entry-content table {
    border-collapse: collapse;
    border-spacing: 0;
    margin-bottom: 1em
}

.entry-content table img {
    max-width: none
}

.entry-content table td, .entry-content table th {
    border: .01rem solid #ddd;
    padding: .05rem .1rem
}

.entry-content table th {
    background: #f5f5f5
}

.entry-content blockquote {
    border: .01rem solid #ddd;
    margin: 0 0 .1rem;
    padding: .3rem;
    border-radius: .06rem;
    font-style: italic;
    background: rgba(255, 255, 255, .4)
}

.entry-content blockquote:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "“";
    font-family: serif;
    font-size: 300%;
    line-height: 1em;
    color: #ccc
}

.entry-content blockquote:after {
    position: absolute;
    bottom: 0;
    right: .15rem;
    content: "”";
    font-family: serif;
    font-size: 300%;
    line-height: 0;
    color: #ccc
}

.entry-content code, .entry-content pre>code {
    font-family: Monaco, Consolas, 'Courier New', Courier, monospace, sans-serif
}

.comment-metadata, .comment-metadata a, .entry-footer-section a {
    color: #999
}

.entry-content blockquote p {
    margin: 0 auto
}

.entry-content pre {
    border: .01rem solid #ddd;
    margin: 0 0 .1rem;
    padding: .2rem;
    white-space: pre
}

.entry-content pre>code {
    margin: 0;
    padding: 0;
    white-space: pre;
    border: 0;
    background: 0 0
}

.entry-content code {
    font-size: 90%;
    margin: 0 .02rem;
    padding: 0 .05rem;
    border: .01rem solid #eaeaea;
    background-color: #f8f8f8;
    border-radius: .3rem
}

.entry-content .hatena-asin-detail li {
    line-height: 1.4
}

.entry-footer {
    margin-top: .1rem
}

.entry-footer-section {
    font-size: 80%;
    color: #999
}

.entry-footer-html, .social-buttons {
    margin: .1rem 0
}

.comment-box {
    margin: 0 0 .3rem
}

.comment-box ul {
    list-style: none;
    margin: 0 0 .15rem;
    padding: 0;
    font-size: 95%;
    line-height: 1.7
}

.comment-box ul::before {
    content: "コメント";
    display: block;
    font-weight: 700;
    margin: .25rem 0 .15rem;
    font-size: 120%
}

.comment-content, .comment-content p {
    margin: 0 0 .1rem
}

.comment-box li {
    padding: .1rem 0 .1rem .6rem;
    border-bottom: .01rem solid #ddd;
    position: relative
}

.comment-box li:first-child {
    border-top: .01rem solid #ddd
}

.comment-box .read-more-comments {
    padding-left: 0
}

.comment-box .hatena-id-icon {
    position: absolute;
    top: .1rem;
    left: 0;
    width: .5rem!important;
    height: .5rem!important;
    border-radius: .03rem;
    background-clip: padding-box
}

.comment-user-name {
    margin: 0 0 .1rem;
    font-weight: 700
}

.comment-content {
    font-size: 90%;
    word-wrap: break-word
}

.comment-metadata {
    font-size: 80%;
    margin: 0
}

.leave-comment-title {
    display: inline-block;
    padding: .04rem .1rem;
    margin-bottom: 0;
    line-height: .18rem;
    color: #454545;
    background-color: #fff;
    border-radius: .02rem;
    background-clip: padding-box;
    font-size: .12rem;
    font-weight: 700;
    border: .01rem solid rgba(0, 0, 0, .2);
    text-decoration: none!important
}

.leave-comment-title:hover {
    background-color: #f5f5f5;
    text-decoration: none!important
}

.hatena-module {
    position: relative;
    margin: .2rem .2rem 0 0;
    padding: .2rem;
    box-sizing: border-box;
    width: 100%;
    background: rgba(255, 255, 255, .6)
}

.hatena-module-title {
    font-weight: 700;
    margin-bottom: .15rem;
    font-size: 120%
}

.hatena-module-title a {
    color: #454545;
    text-decoration: none
}

.hatena-module-title a:hover {
    text-decoration: underline
}

.hatena-urllist li a, .page-archive .archive-entry-header .date a, .pager a {
    text-decoration: none
}

.hatena-module-html {
    padding: 0
}

.hatena-module-profile .profile-icon {
    float: left;
    margin: 0 .1rem .1rem 0;
    border-radius: .05rem;
    background-clip: padding-box
}

.hatena-module-profile .id {
    display: block;
    font-weight: 700;
    font-size: 110%;
    margin-bottom: .05rem
}

.hatena-module-profile .profile-description {
    font-size: 90%
}

.hatena-module-profile .profile-description p {
    margin-top: 0
}

.hatena-urllist {
    list-style: none;
    margin: 0;
    padding: 0
}

.hatena-urllist li {
    padding: .08rem 0;
    border-bottom: .01rem solid #ddd;
    line-height: 1.5
}

.hatena-module-search-box .search-form {
    border: .01rem solid #ddd;
    border-radius: .03rem;
    background-clip: padding-box;
    width: 100%;
    box-sizing: border-box;
    position: relative
}

.hatena-module-search-box .search-module-input {
    padding: .05rem;
    color: #454545;
    background: 0 0;
    border: none;
    outline: 0;
    height: .2rem;
    width: 90%
}

.hatena-module-search-box .search-module-button {
    width: .2rem;
    height: .2rem;
    background: url(https://cdn.blog.st-hatena.com/images/theme/search.png) right center no-repeat;
    border: none;
    outline: 0;
    text-indent: -99.99rem;
    position: absolute;
    top: .05rem;
    right: .05rem;
    opacity: .5
}

.hatena-module-search-box .search-module-button:hover {
    opacity: .85
}

.pager {
    max-width: 80em;
    margin: auto;
    padding: 1em;
    text-align: center;
    clear: both
}

.pager a {
    display: inline-block;
    margin: 2em 0;
    padding: 1em .6em;
    vertical-align: top;
    color: #1487bd;
    -webkit-transition: ease .14s;
    transition: ease .14s
}

.pager a:hover {
    color: #1487bd;
    -webkit-transition: ease .14s;
    transition: ease .14s
}

.pager .pager-next, .pager .pager-prev {
    display: inline-block;
    width: 20em
}

.pager .pager-next a, .pager .pager-prev a {
    color: #999;
    position: relative
}

.pager .pager-next a::before, .pager .pager-prev a::before {
    content: "";
    display: block;
    position: relative;
    top: 0;
    margin: 0 auto .6em;
    width: 5em;
    height: 5em;
    border-radius: 50%;
    text-align: center;
    border: 1px solid #1487bd;
    -webkit-transition: ease-in .2s;
    transition: ease-in .2s
}

.pager .pager-next a:hover, .pager .pager-prev a:hover {
    color: #0f5373
}

.pager .pager-next a:hover::before, .pager .pager-prev a:hover::before {
    top: -.65em;
    background-color: #fff;
    -webkit-transition: ease-out .2s;
    transition: ease-out .2s
}

.pager .pager-next a::after, .pager .pager-prev a::after {
    position: absolute;
    top: 1.85em;
    right: 0;
    font-size: 150%;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    color: #1487bd;
    -webkit-transition: ease-in .2s;
    transition: ease-in .2s
}

#footer, #footer a {
    color: #999
}

.pager .pager-next a:hover::after, .pager .pager-prev a:hover::after {
    top: 1.4em;
    -webkit-transition: ease-out .2s;
    transition: ease-out .2s
}

.pager .pager-next a::after {
    content: "▲"!important;
    left: .06rem
}

.pager .pager-prev a::after {
    content: "▼"!important;
    left: -.06rem
}

.pager-arrow {
    display: none
}

#footer {
    padding: .3rem 0;
    text-align: center;
    line-height: 1.5;
    font-size: 80%
}

#footer p {
    margin: 0
}

.page-about dt {
    font-size: .16rem;
    font-weight: 700;
    border-bottom: .01rem solid #ddd;
    margin-bottom: .05rem
}

.page-about dd {
    margin-left: 0;
    margin-bottom: .3rem
}

.page-archive .archive-heading {
    margin: 2em 0;
    font-size: 1.5em;
    text-align: center
}

.page-archive .archive-entries {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: left;
    -ms-flex-pack: left;
    justify-content: left
}

.page-archive .archive-entry {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    margin: .2rem 1%;
    width: 48%;
    padding: 0 .2rem .2rem;
    box-sizing: border-box;
    background: #fff
}

.page-archive .archive-entry-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
}

.page-archive .archive-entry-header .date {
    margin: .1rem 0;
    width: 100%;
    font-size: 90%;
    font-weight: 400;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
}

.page-archive .archive-entry-header .entry-title {
    margin: .25rem 0 .1rem;
    width: 100%;
    font-size: 120%;
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0
}

.page-archive .categories {
    margin: 0;
    width: 100%;
    font-size: 90%;
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3
}

.page-archive .categories a {
    display: inline-block;
    margin: 0 .02rem .04rem 0;
    padding: .03rem .05rem;
    font-size: 85%;
    text-decoration: none;
    color: #fff;
    background: #aaa;
    border-radius: .03rem
}

.page-archive .entry-description {
    margin: 0;
    line-height: 1.5;
    font-size: 90%
}

.page-archive .entry-thumb-link {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0;
    width: 100%
}

.page-archive .entry-thumb {
    position: relative;
    margin: 0 0 0 -.2rem;
    width: calc(100% + .4rem);
    height: 22vw;
    max-height: 3rem;
    background-position: center
}

.page-archive .entry-thumb::before {
    content: "";
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0;
    -webkit-transition: ease .14s;
    transition: ease .14s
}

.page-archive .entry-thumb:hover::before {
    opacity: .6;
    -webkit-transition: ease .14s;
    transition: ease .14s
}

.page-archive .entry-thumb::after {
    content: "READ MORE";
    display: block;
    position: relative;
    margin: auto;
    top: -13vw;
    font-size: 3vw;
    font-weight: 700;
    font-style: italic;
    text-align: center;
    color: #fff;
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 0;
    -webkit-transition: ease .14s;
    transition: ease .14s
}

.page-archive .entry-thumb:hover::after {
    -webkit-transform: scale(1.04);
    transform: scale(1.04);
    opacity: .6;
    -webkit-transition: ease .14s;
    transition: ease .14s
}

.page-archive .archive-entry-body {
    margin: 0 0 .1rem;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

.entry-see-more {
    display: inline-block;
    padding: .04rem .1rem;
    margin-bottom: 0;
    line-height: .18rem;
    color: #454545;
    background-color: #fff;
    text-align: center;
    vertical-align: middle;
    border-radius: .02rem;
    background-clip: padding-box;
    cursor: pointer;
    font-size: .12rem;
    font-weight: 700;
    border: .01rem solid rgba(0, 0, 0, .2);
    text-decoration: none!important
}

.entry-see-more:hover {
    background-color: #f5f5f5;
    text-decoration: none!important
}

.entry-footer .hatena-module-related-entries {
    width: 100%;
    margin: .6rem 0 0;
    padding: .2rem 0;
    font-size: 95%;
    background: 0 0
}

.entry-footer .hatena-module-related-entries a {
    font-size: 100%
}

.entry-footer .hatena-module-related-entries .urllist-date-link {
    font-size: 75%;
    pointer-events: none
}

.entry-footer .hatena-module-related-entries .urllist-date-link a {
    color: #999
}

.entry-footer .hatena-module-related-entries .urllist-with-thumbnails li .urllist-image {
    margin: 0 .7em 0 0
}

.entry-footer .hatena-module-related-entries .urllist-entry-body {
    margin: 0 0 .08rem
}

@media (max-width:480px) {
    .entry-footer .hatena-module-related-entries .urllist-entry-body {
        display: none
    }
}

.table-of-contents {
    padding: .2rem .3rem;
    border: 1px solid #ddd;
    border-radius: .06rem;
    background: rgba(255, 255, 255, .4);
    font-size: 90%
}

.table-of-contents::before {
    content: "目次";
    display: block;
    margin: 0 0 .06rem;
    padding: 0 0 .06rem;
    border-bottom: 1px solid #ddd;
    font-size: 110%
}

.table-of-contents li {
    margin: 0 0 0 .2rem;
    list-style-type: decimal
}

.table-of-contents li ul {
    padding: 0 0 0 .3rem
}

.table-of-contents li ul li {
    margin: 0
}

.ad-online-afc {
    max-width: 60em;
    margin: auto;
    padding: 1em;
    background: #fff
}

@media (max-width:480px) {
    .ad-online-afc {
        padding: 0
    }
}

.page-entry .breadcrumb {
    margin-bottom: 0
}

#box2, .pager {
    box-sizing: border-box
}

@media (-webkit-min-device-pixel-ratio:2) {
    .hatena-module-search-box .search-module-button {
        background: url(https://cdn.blog.st-hatena.com/images/theme/search@2x.png) right center no-repeat;
        background-size: .2rem .2rem
    }
}

@media (max-width:767px) {
    #globalheader-container {
        position: static
    }
    #container {
        word-wrap: break-word;
        overflow: hidden;
        padding-top: 0
    }
    #content-inner {
        -ms-flex-flow: wrap;
        flex-flow: wrap
    }
    #wrapper {
        -webkit-box-flex: 1;
        -ms-flex: auto;
        flex: auto
    }
    #box2 {
        width: 100%
    }
    .hatena-module {
        margin: .1rem .2rem;
        width: 100%
    }
    .entry-header-menu {
        top: -.1rem;
        left: 0
    }
    .pager {
        padding: 1em 0
    }
    .pager .pager-next, .pager .pager-prev {
        width: 49%
    }
    .page-archive .entry-thumb {
        height: 25vw
    }
    .page-archive .entry-thumb::after {
        top: -14vw;
        font-size: 4vw
    }
}

@media (max-width:480px) {
    .page-archive .archive-entry {
        margin: 0 0 .3rem;
        width: 100%
    }
    .page-archive .archive-entry:first-child {
        margin: .3rem 0
    }
    .page-archive .entry-thumb {
        height: 50vw
    }
    .page-archive .entry-thumb::after {
        top: -28vw;
        font-size: 8vw
    }
}
