/* <system section="theme" selected="26006613683917723"> */
@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Roboto+Mono&family=Sawarabi+Gothic&family=Grand+Hotel&display=swap');
@font-face {
  font-family: 'Setofont';
  src: url('https://cdn.leafscape.be/setofont/setofont_web.woff2') format("woff2")
}


/*! 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 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  overflow: visible
}

pre {
  font-family: 'Roboto Mono', monospace;
  font-size: 1em
}

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

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

b, strong {
  font-weight: inherit
}

b {
  font-weight: bolder
}

strong {
  color: #ff4040;
  letter-spacing: 1px;
  font-weight: 900
}

code, kbd, samp {
  font-family: 'Roboto Mono', 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: -0.25em
}

sup {
  top: -0.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: 'Setofont', 'Sawarabi Gothic', 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 {
  -webkit-box-sizing: border-box;
  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"] {
  -webkit-box-sizing: border-box;
  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
}

html, body {
  font-family: 'Setofont', 'Sawarabi Gothic', sans-serif;
  color: #6d696f;
  background-color: #fff;
  line-height: 1.7
}

p {
  color: #6d696f;
  font-family: 'Setofont', 'Sawarabi Gothic', sans-serif
}

a {
  color: #ee8ea0;
  text-decoration: none;
  transition: ease .4s;
  border-bottom: 0 solid #ee8ea0
}

a:hover {
  color: #8ea1ed;
  text-decoration: none
}

.entry-content a:hover {
  border-bottom: 2px solid #8EA1ED55
}

h1, h2, h3, h4, h5, h6 {
  color: #555;
  line-height: 1.5
}

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

h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {
  color: #555
}

::selection {
  background: #8EA1EDaa;
  color: #fff
}

.entry-content img {
  display: block;
  max-width: 100%;
  margin: 0 auto
}

#content-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

@media(min-width:769px) {
  #content-inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row
  }
}

#content {
  padding: 0 10px;
  margin: 0 auto
}

#wrapper, #box2 {
  margin: 0 auto;
  padding: 10px
}

@media(max-width:480px) {
  #wrapper, #box2 {
    padding: 0
  }
}

@media(min-width:481px) {
  #box2 {
    width: 97%
  }
}

@media(max-width:768px) {
  #box2 {
    border-top: 3px solid #ddd;
    padding-top: 20px;
    margin-top: 20px
  }
}

@media(min-width:769px) {
  #wrapper {
    width: 70%;
    max-width: 720px
  }
  #box2 {
    width: 30%
  }
}

@media(min-width:1025px) {
  #wrapper {
    max-width: 800px
  }
  #box2 {
    max-width: 400px
  }
}

@media(min-width:1334px) {
  #wrapper {
    width: 60%;
    max-width: 1000px
  }
  #box2 {
    max-width: 40%;
    max-width: 666px
  }
}

#globalheader-container {
  background-color: #EE8EA066;
  color: #fff
}

#blog-title {
  margin: 0;
  text-align: center;
  background: #EE8EA066
}

#title {
  margin: 0;
  padding: 10px 0 2px;
  font-size: 50px
}

#title a {
  color: #fff;
  text-shadow: 1px 1px 4px #ee8ea0
}

#title a:hover {
  color: #fff;
  text-decoration: none;
  font-size: 53px;
  opacity: .75
}

@media screen and (max-width:480px) {
  #title {
    font-size: 40px
  }
  #title a:hover {
    font-size: 42px
  }
}

#blog-description {
  font-weight: normal;
  font-size: 13px;
  margin: 0;
  padding: 0 0 10px;
  color: #6d696f
}

.header-image-enable #blog-title {
  margin: 0 0 2em
}

.header-image-enable #blog-title-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.header-image-enable #blog-title-content {
  margin-left: 10px;
  margin-right: 10px
}

#top-editarea {
  margin-bottom: 10px
}

#menu-list {
  display: block;
  width: 100%;
  background: #eee;
  text-align: center;
  list-style: none;
  font-size: 0;
  padding-left: 0;
  margin: 0;
  line-height: 1;
  transition: ease .4s
}

#menu-list li {
  display: inline-block;
  margin: 0;
  margin: 8px;
  font-size: 16px;
  border-bottom: 1px solid #EE8EA066
}

#menu-list li a {
  display: block;
  padding: 4px;
  position: relative
}

#menu-list li a:before, #menu-list li a:after {
  font-family: 'blogicon';
  content: '\f048';
  font-size: 8px;
  opacity: .5
}

#menu-list li a:before {
  padding-right: 3px
}

#menu-list li a:after {
  padding-left: 3px
}

#menu-list li a:hover {
  z-index: 1000;
  border-bottom: 6px solid #EE8EA066;
  background: #EE8EA066;
  color: #fff;
  text-shadow: 1px 1px 2px #ee8ea0;
  transform: scale(1.15)
}

#menu-list li ul {
  display: none;
  padding-top: 5px;
  position: relative;
  transition: .4s
}

#menu-list li:hover ul {
  display: block;
  position: absolute;
  top: 0, left:0;
  padding-left: 15px;
  z-index: 998;
  background: #eee;
  border: 1px solid #EE8EA066;
  opacity: .9
}

#menu-list li ul li a:before {
  font-family: 'blogicon';
  content: '\f006';
  font-size: 15px;
  position: absolute;
  top: 5px;
  left: -12px;
  z-index: 999;
  color: #666;
  padding: 0 3px
}

#menu-list li ul li {
  display: block;
  margin: 0 5px 0 0;
  padding: 0 5px;
  line-height: 25px
}

#menu-list li ul li a:hover {
  transform: translateY(0)
}

#menu-list li li a:before, #menu-list li li a:after {
  content: ''
}

@media screen and (max-width:480px) {
  label[for="menu-button"] {
    padding: 2px 0 5px 10px;
    display: block;
    background: #eee;
    cursor: pointer;
    font-size: 18px
  }
  input[type="checkbox"] {
    display: none
  }
  #menu-list {
    height: 0;
    overflow: hidden;
    opacity: 0;
    transition: ease-in.4s
  }
  input[type="checkbox"]:checked+#menu-list {
    display: block;
    height: auto;
    opacity: 1
  }
}

@media screen and (min-width:481px) {
  #top-editarea #menu-button, label[for="menu-button"] {
    display: none
  }
}

#top-box {
  margin: 1em 0;
  padding: 0 10px
}

@media(min-width:1025px) {
  #top-box {
    padding: 0 30px
  }
}

.breadcrumb {
  font-size: 14px;
  line-height: 1.2
}

.breadcrumb a {
  color: #6d696f
}

.breadcrumb a:hover {
  border-bottom: 0;
  opacity: .7
}

.breadcrumb-link:before {
  font-family: 'blogicon';
  content: '\f017'
}

.page-entry .breadcrumb {
  margin: 0 10px
}

.page-index #main, .page-entry #main {
  border: 1px solid #ddd;
  padding: 10px;
  box-shadow: 1px 1px 4px #eee
}

@media(min-width:481px) {
  .page-index #main, .page-entry #main {
    padding: 15px
  }
}

@media(min-width:1025px) {
  .page-index #main, .page-entry #main {
    padding: 30px
  }
}

.entry {
  position: relative;
  margin-bottom: 2em
}

.entry-header {
  padding-bottom: 1em;
  margin-bottom: 1em;
  border-bottom: 3px double #ccc;
  position: relative
}

.entry-header a:hover {
  opacity: .7
}

.date {
  font-family: 'Grand Hotel', 'setofont', sans-serif;
  letter-spacing: 1px;
  font-size: 16px;
  line-height: 1.2
}

.date a {
  color: #999;
  text-decoration: none
}

.entry-header .date {
  position: absolute;
  top: -32px;
  right: 0;
  font-size: 18px
}

.entry-header .date:before {
  font-family: 'blogicon';
  content: "\f043";
  color: #EE8EA066;
  vertical-align: middle
}

.categories a:nth-child(n+2) {
  display: none
}

.page-index .entry-header .categories, .entry-header .categories {
  position: absolute;
  display: inline-block;
  top: -32px;
  left: -10px;
  box-sizing: border-box;
  margin: 0;
  padding: 0 12px;
  line-height: 25px;
  background: #ee8ea0;
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2)
}

.page-index .entry-header .categories a, .entry-header .categories a {
  color: #fff;
  font-size: 17px
}

.page-index .entry-header .categories:before, .entry-header .categories:before {
  position: absolute;
  content: '';
  top: 0;
  left: -7px;
  border: 0;
  height: 34px;
  width: 7px;
  background: #ee8ea0;
  border-radius: 5px 0 0 5px
}

.page-index .entry-header .categories:after, .entry-header .categories:after {
  position: absolute;
  content: '';
  bottom: -7px;
  left: -5px;
  border: 0;
  height: 7px;
  width: 5px;
  background: #a6606d;
  border-radius: 5px 0 0 5px
}

@media(min-width:481px) {
  .page-index .entry-header .categories, .entry-header .categories {
    top: -35px;
    left: -15px;
    line-height: 30px
  }
  .page-index .entry-header .categories:before, .entry-header .categories:before {
    height: 40px
  }
}

@media(min-width:1025px) {
  .page-index .entry-header .categories, .entry-header .categories {
    top: -45px;
    left: -30px
  }
}

.entry-title {
  margin: 30px 0 0;
  font-size: 24px;
  font-weight: 900;
  font-style: oblique;
  letter-spacing: -1px;
  line-height: 1.2
}

.entry-header-menu {
  position: absolute;
  top: 0;
  right: 0
}

.entry-content img, .entry-content video {
  max-width: 100%;
  height: auto
}

.entry-content a.hatena-fotolife:hover {
  border-bottom: 0
}

.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
  margin: 1.7em 0 .5em 0;
  padding: 5px 8px
}

.entry-content h1 {
  font-size: 30px;
  padding: 10px 12px;
  background: #EE8EA066
}

.entry-content h2 {
  font-size: 28px;
  border-top: 6px double #EE8EA044;
  border-bottom: 6px double #EE8EA044;
  background: #EE8EA044
}

.entry-content h3 {
  font-size: 24px;
  padding: 8px;
  border-top: 2px solid #EE8EA044;
  border-bottom: 2px solid #EE8EA044;
  background: #EE8EA022
}

.entry-content h4 {
  font-size: 22px;
  border-top: 1px solid #EE8EA044;
  border-bottom: 1px solid #EE8EA044;
  background: #EE8EA011
}

.entry-content h5 {
  font-size: 20px;
  border-bottom: 2px dashed #EE8EA044
}

.entry-content h6 {
  font-size: 18px;
  border-bottom: 2px dotted #EE8EA044
}

.entry-content p {
  font-size: 17px;
  line-height: 1.5
}

@media(max-width:480px) {
  .entry-content h1 {
    font-size: 22px
  }
  .entry-content h2 {
    font-size: 20px
  }
  .entry-content h3 {
    font-size: 19px
  }
  .entry-content h4 {
    font-size: 18px
  }
  .entry-content h5 {
    font-size: 17px
  }
  .entry-content h6 {
    font-size: 17px
  }
}

.entry-content p, .entry-content ul, .entry-content ol, .entry-content dl, .entry-content table {
  margin: 1.5em 1em;
  padding: 0
}

.entry-content ul, .entry-content ol {
  padding-left: 1.5em
}

@media(max-width:480px) {
  .entry-content p, .entry-content ul, .entry-content ol, .entry-content dd, .entry-content table {
    margin: 1.5em 5px
  }
}

.entry-content hr {
  width: 70% !important;
  border-top: 3px dotted #ccc !important;
  margin: 1.5em 0
}

.entry-content u {
  text-decoration: none;
  background: linear-gradient(rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 30%, yellow);
  border-bottom: 5px solid yellow
}

.entry-content i {
  letter-spacing: -1px
}

.entry-content a.keyword {
  border-bottom: 2px dotted #eee
}

.entry-content a.keyword:hover {
  opacity: .7
}

.entry-content ul li ul, .entry-content ul li ol, .entry-content ol li ul, .entry-content ol li ol {
  margin-bottom: 0
}

.entry-content table {
  border-collapse: collapse;
  border-spacing: 0;
  border-bottom: 1em;
  margin-bottom: 1em;
  width: 100%;
  overflow: auto;
  display: block;
  font-size: 90%
}

.entry-content table th, .entry-content table td {
  border: 1px solid #ddd;
  padding: 5px 10px
}

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

.entry-content dt {
  float: left
}

.entry-content dt::after {
  content: "："
}

.entry-content blockquote {
  border: 1px solid #ddd;
  margin: 0 0 10px;
  padding: 1em 1em 1em 55px;
  position: relative
}

.entry-content blockquote:before {
  font-family: 'blogicon';
  content: '\f704';
  position: absolute;
  top: -10px;
  left: 8px;
  font-size: 50px
}

.entry-content blockquote p:first-child {
  margin-top: 0
}

.entry-content blockquote p:last-child {
  margin-bottom: 0
}

.entry-content cite {
  font-size: 12px
}

.entry-content pre, .entry-content code {
  font-family: 'Roboto Mono', monospace
}

.entry-content pre {
  background: #f5f5f5;
  white-space: pre-wrap;
  text-overflow: ellipsis;
  border: 1px solid #f1f1f1;
  font-size: 95%;
  line-height: 1.3;
  padding: 1.2em;
  margin: 1.5em 1em
}

@media(max-width:480px) {
  .entry-content pre {
    margin: 1.5em 5px
  }
}

.entry-content pre>code {
  margin: 0;
  padding: 0;
  white-space: pre;
  border: 0;
  background-color: transparent;
  font-family: 'Roboto Mono', monospace
}

.entry-content code {
  font-size: 90%;
  margin: 0 2px;
  padding: 0 5px;
  background-color: #f5f5f5;
  border-radius: 3px
}

.entry-content hr {
  width: 50%;
  border: 0;
  border: 0;
  border-top: 1px solid #ddd;
  margin: 2em auto
}

.entry-content .table-of-contents {
  padding: 50px 2em 1em 3em;
  margin: 1em auto;
  background: #fafafa;
  border: 1px dotted #ddd;
  position: relative;
  max-width: 500px
}

.entry-content .table-of-contents ul {
  margin: 2px 0 0 10px
}

.entry-content .table-of-contents:before {
  content: ' ー index ー';
  position: absolute;
  top: 6px;
  left: 16px;
  font-size: 20px;
  color: #999;
  font-weight: 900
}

.entry-content .table-of-contents li {
  transition: ease .4s
}

.entry-content .table-of-contents li:hover {
  transform: translate(3px, 0)
}

.entry-content .table-of-contents li a {
  display: block
}

.entry-content .table-of-contents li a:hover {
  border-bottom: 0
}

.entry-content .table-of-contents li {
  border-bottom: 1px solid #ddd;
  padding: 2px
}

.entry-content .table-of-contents li li, .entry-content .table-of-contents li:last-child {
  border-bottom: 0
}

.entry-footer {
  margin-top: 2em;
  border-top: 10px dotted #eee;
  border-bottom: 10px dotted #eee
}

.entry-footer .social-buttons {
  margin-bottom: 1em
}

.entry-footer-section {
  color: #999;
  font-size: .9rem
}

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

.comment-box {
  margin: 1.5em 0
}

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

@media(min-width:768px) {
  .comment-box .comment {
    font-size: .9rem
  }
}

.comment-box .entry-comment {
  padding: 10px 0 10px 60px;
  border-bottom: 1px solid #ddd;
  position: relative
}

.comment-box .entry-comment:first-child {
  border-top: 1px solid #ddd
}

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

.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 .4em 0;
  font-weight: bold
}

.comment-content {
  margin: 0 0 .4em 0;
  word-wrap: break-word;
  color: #454545;
  font-size: .85rem
}

.comment-content p {
  margin: 0 0 .6em 0
}

.comment-metadata {
  color: #999;
  margin: 0;
  font-size: .8rem
}

.comment-metadata a {
  color: #999
}

.leave-comment-title {
  padding: .6em 1em;
  font-size: .85rem;
  border: 1px solid #ddd
}

.pager {
  margin: 1.5em 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

.hatena-module {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 20px;
  border: 1px solid #ddd;
  padding: 10px;
  box-shadow: 1px 1px 4px #eee
}

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

@media(min-width:1025px) {
  .hatena-module {
    padding: 20px
  }
}

.hatena-module-title {
  margin-bottom: 8px;
  padding: 0;
  border-bottom: 4px dotted #EE8EA033;
  font-size: 20px;
  font-weight: bold
}

.hatena-module-title:before {
  font-family: 'blogicon';
  content: '\f048';
  font-size: 16px;
  color: #EE8EA066
}

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

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

.hatena-module-body {
  line-height: 1.2
}

.hatena-module-profile .profile-icon {
  float: left;
  margin: 0 10px 10px 0
}

.hatena-module-profile .id {
  display: block;
  font-weight: bold;
  margin-bottom: .5em
}

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

.hatena-follow-button-box {
  font-size: 14px !important
}

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

.hatena-urllist li {
  padding: 8px 0;
  border-bottom: 1px dotted #ddd
}

.hatena-urllist li:last-child {
  padding-bottom: 0;
  border-bottom: 0
}

.urllist-date-link a {
  color: #aaa
}

a.urllist-title-link {
  color: #555
}

.hatena-module-category .hatena-urllist li a {
  color: #666
}

.hatena-urllist .urllist-item {
  position: relative
}

.hatena-urllist .urllist-category-link {
  font-size: .7rem;
  position: absolute;
  top: 8px;
  right: 0
}

.hatena-urllist .urllist-categories a:nth-child(n+2) {
  display: none
}

.hatena-urllist .urllist-entry-body {
  margin-top: .3em
}

.urllist-title-link {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: -1px
}

.hatena-module-search-box .search-form {
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.hatena-module-search-box .search-module-input {
  -webkit-box-flex: 1;
  -ms-flex: 1 0;
  flex: 1 0;
  padding: 5px;
  color: #454545;
  background: 0;
  border: 0;
  outline: 0;
  height: 20px
}

.hatena-module-search-box .search-module-button {
  width: 24px;
  height: 24px;
  margin-right: 5px;
  background: transparent url("data:image/svg+xml,%3Csvgxmlns='http://www.w3.org/2000/svg'viewBox='002020'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:none;%7D%3C/style%3E%3C/defs%3E%3Ctitle%3Esearch%3C/title%3E%3Cpathd='M16.7,15l-3.4-3.3h-.1a5.4,5.4,0,0,0,.9-3.1,5.6,5.6,0,1,0-5.6,5.6,5.4,5.4,0,0,0,3.1-.9.1.1,0,0,0,.1.1L15,16.7a1.1,1.1,0,0,0,.8.3,1.6,1.6,0,0,0,.9-.3,1.4,1.4,0,0,0,0-1.7M8.5,12.3A3.8,3.8,0,0,1,4.8,8.5,3.8,3.8,0,0,1,8.5,4.7a3.9,3.9,0,0,1,3.8,3.8,3.8,3.8,0,0,1-3.8,3.8'/%3E%3Crectclass='a'width='20'height='20'/%3E%3C/svg%3E") no-repeat center;
  background-size: 20px 20px;
  border: 0;
  outline: 0;
  color: transparent;
  overflow: hidden;
  opacity: .5;
  cursor: pointer
}

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

.hatena-module-archive {
  font-family: 'Grand Hotel', 'setofont', sans-serif;
  letter-spacing: 1px
}

.page-about .entry-content dt {
  font-weight: bold;
  border-bottom: 1px solid #ddd;
  margin-bottom: .5em
}

.page-about .entry-content dd {
  margin-left: 0;
  margin-bottom: 2em
}

.page-index .archive-entries, .page-archive .archive-entries {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between
}

.page-index .archive-entry, .page-archive .archive-entry {
  margin: 0;
  padding: 10px;
  box-sizing: border-box;
  box-shadow: 1px 1px 4px #eee;
  border: 1px solid #ddd;
  position: relative;
  display: -webkit-flex;
  display: flex;
  flex-direction: column
}

@media screen and (max-width:480px) {
  .page-index .archive-entry, .page-archive .archive-entry {
    width: 100%;
    margin: 10px 0
  }
}

@media screen and (min-width:481px) {
  .page-index .archive-entry, .page-archive .archive-entry {
    width: calc(48% - 1px);
    margin: 0 0 10px 0
  }
}

@media screen and (min-width:769px) {
  .page-index .archive-entry, .page-archive .archive-entry {
    width: calc(48% - 10px);
    margin: 0 8px 20px 8px
  }
}

.page-archive .entry-thumb {
  float: none;
  display: block;
  width: 100% !important;
  height: 0 !important;
  padding-bottom: 62%;
  background-position: center center;
  background-size: cover;
  border-radius: 5px
}

.entry-thumb-link:hover {
  opacity: .9;
  transform: scale(1.025)
}

.page-archive .entry-thumb-link {
  order: 1
}

.page-archive .archive-entry-header {
  margin: 5px 0 0;
  order: 2;
  position: relative
}

.page-archive .date {
  position: absolute;
  bottom: -15px;
  left: 0
}

.page-archive .date:before {
  font-family: 'Setofont', 'Sawarabi Gothic', sans-serif;
  font-size: 15px;
  letter-spacing: 0;
  color: #999;
  content: 'Date';
  padding-right: 32px
}

.page-archive .entry-title {
  margin: 0 0 12px;
  padding-top: 18px;
  border-bottom: 4px dotted #EE8EA033;
  position: relative;
  font-size: 20px;
  letter-spacing: -1.5px;
  line-height: 1.3;
  height: 80px;
  overflow: hidden
}

.page-archive .entry-title a:hover {
  opacity: .7
}

.page-archive .entry-title:before {
  position: absolute;
  content: 'Title';
  font-size: 15px;
  color: #999;
  font-weight: 400;
  top: 0;
  left: 0
}

.page-archive .categories {
  order: 3;
  margin-top: 12px;
  font-size: 15px;
  color: #999
}

.page-archive .categories:before {
  content: 'Category'
}

.page-archive .archive-entry-body {
  order: 4;
  margin-top: 6px;
  border-top: 4px dotted #EE8EA033
}

.page-archive .entry-description {
  display: none
}

.page-archive .social-buttons {
  display: none
}

.page-archive .archive-entry-tags-wrapper {
  margin: 0
}

.archive-entry-tags {
  padding-left: 10px
}

.entry-tags-wrapper {
  margin: 1em 0
}

.entry-tags {
  padding-left: 10px;
  position: relative
}

.archive-entry-tag .archive-entry-tag-link, .entry-tag .entry-tag-link {
  color: #fff;
  padding: 1px 4px;
  line-height: 1.5;
  font-size: 14px;
  background-color: #EE8EA066;
  border-radius: 0;
  margin: 0 5px 0 0;
  text-decoration: none;
  position: relative
}

.entry-tag .entry-tag-link {
  border: 0;
  font-size: 17px
}

.archive-entry-tag .archive-entry-tag-label, .entry-tag .entry-tag-label {
  margin-left: 0
}

.archive-entry-tag .archive-entry-tag-link:before, .entry-tag .entry-tag-link:before {
  position: absolute;
  top: 0;
  left: -15px;
  content: '';
  border-width: 12px 11px 11px 0;
  border-style: solid;
  border-color: #fff #EE8EA066 #fff #fff;
  padding-left: 4px;
  transition: ease .4s
}

.entry-tag .entry-tag-link:before {
  border-width: 13px 11px 14px 0
}

.archive-entry-tag .archive-entry-tag-link:after, .entry-tag .entry-tag-link:after {
  position: absolute;
  top: calc(50% - 2px);
  left: -6px;
  width: 4px;
  height: 4px;
  content: '';
  border-radius: 50%;
  background: #fff
}

.archive-entry-tag .archive-entry-tag-link:hover, .entry-tag .entry-tag-link:hover {
  background-color: #8EA1ED66
}

.archive-entry-tag .archive-entry-tag-link:hover:before, .entry-tag .entry-tag-link:hover:before {
  border-color: #fff #8EA1ED66 #fff #fff
}

.archive-entry-tag .archive-entry-tag-icon, .entry-tag .entry-tag-icon {
  width: 0;
  height: 0
}

.archive-header-category {
  margin: 0 0 1em;
  padding: 10px;
  text-align: center;
  border-top: 8px dotted #EE8EA033;
  border-bottom: 8px dotted #EE8EA033
}

.archive-header-category .archive-heading {
  font-size: 30px;
  margin: 0
}

#footer {
  margin-top: 2em;
  padding: 1rem 0;
  text-align: center;
  font-size: .8rem;
  color: #fff;
  background: #EE8EA066
}

#footer a {
  color: #fff
}

#footer p {
  margin: .5em auto
}

.box {
  margin: 1.5em 1em;
  padding: 1em
}

@media(max-width:480px) {
  .box {
    margin: 1.5em 5px
  }
}

.box p, box ul, box ol {
  margin: 0;
  padding: 1em
}

.entry-content .box ul, .entry-content .box ol {
  margin: 0;
  padding: 1em 1em 1em 2em
}

.simple-box {
  border: 3px double #EE8EA044;
  border-radius: 5px
}

.haikei-box {
  background: #EE8EA044;
  border-radius: 5px
}

.stripe-box {
  background: -webkit-repeating-linear-gradient(-45deg, #EE8EA033, #EE8EA033 3px, #EE8EA011 3px, #EE8EA011 7px);
  background: repeating-linear-gradient(-45deg, #EE8EA033, #EE8EA033 3px, #EE8EA011 3px, #EE8EA011 7px)
}

.nuno-box {
  margin: calc(1.5em + 8px) calc(1em + 8px);
  background-color: #EE8EA044;
  box-shadow: 0 0 0 8px #EE8EA044;
  border: 2px dashed #fff;
  border-radius: 1px
}

@media(max-width:480px) {
  .nuno-box {
    margin: calc(1.5em + 8px) calc(5px + 8px)
  }
}

.title-out-box {
  margin-top: calc(1.5em + 32px);
  position: relative;
  border: 3px solid #EE8EA088
}

.title-out-box .title {
  position: absolute;
  display: inline-block;
  top: -32px;
  left: -3px;
  padding: 2px 10px;
  height: 25px;
  line-height: 25px;
  font-size: 17px;
  background: #EE8EA088;
  color: #fff;
  font-weight: bold;
  border-radius: 5px 5px 0 0
}

.title-middle-box {
  margin-top: calc(1.5em + 13px);
  position: relative;
  border: 3px solid #ddd;
  border-radius: 10px
}

.title-middle-box .title {
  position: absolute;
  display: inline-block;
  top: -13px;
  left: 10px;
  padding: 0 9px;
  line-height: 1;
  font-size: 19px;
  background: #fff;
  color: #666;
  font-weight: bold
}

.title-in-box {
  padding-top: calc(1em + 20px);
  position: relative;
  border: 3px solid #EE8EA088
}

.title-in-box .title {
  position: absolute;
  display: inline-block;
  top: -1px;
  left: -1px;
  padding: 0 10px 2px 8px;
  height: 25px;
  line-height: 25px;
  font-size: 17px;
  background: #EE8EA088;
  color: #fff;
  font-weight: bold
}

.clip-box {
  position: relative;
  background: #efe8e3;
  box-shadow: 4px 4px 1px #d3cdc9;
  padding-right: 38px
}

.clip-box p {
  color: #644b39
}

.clip-box:before {
  position: absolute;
  content: '';
  top: -15px;
  right: 10px;
  height: 55px;
  width: 15px;
  border: 3px solid #aaa;
  background-color: none;
  border-radius: 12px;
  box-shadow: 1px 1px 2px #ddd;
  transform: rotate(10deg);
  z-index: 1
}

.clip-box:after {
  position: absolute;
  content: '';
  top: 0;
  width: 10px;
  right: 20px;
  border: solid 5px #efe8e3;
  z-index: 2
}

#page_top {
  display: inline-block;
  font-size: 30px;
  line-height: 60px;
  height: 60px;
  width: 60px;
  border-radius: 50%;
  background-color: #555;
  opacity: .5;
  color: #fff;
  position: fixed;
  right: 10px;
  bottom: 10px;
  text-align: center;
  vertical-align: middle;
  z-index: 9999
}

@media(max-width:767px) {
  #page_top a {
    display: block
  }
}

#page_top:hover, #page_top a:hover {
  background: #ee8ea0
}
/* </system> */

/* <system section="background" selected="fff"> */
body{background:#fff;}
/* </system> */