/*! Neo's Normalize https://neos21.net/ */
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium"),local("YuGothic-Medium")
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold"),local("YuGothic-Bold");
  font-weight: 700
}
:root {
  --nn-ratio-1: 1.3;
  --nn-ratio-2: calc(var(--nn-ratio-1) * var(--nn-ratio-1));
  --nn-ratio-4: calc(var(--nn-ratio-2) * var(--nn-ratio-2));
  --nn-ratio-8: calc(var(--nn-ratio-4) * var(--nn-ratio-4));
  --nn-space-default: calc(1rem * var(--nn-ratio-2));
  --nn-space-small: calc(var(--nn-space-default) / var(--nn-ratio-2));
  --nn-space-large: calc(var(--nn-space-default) * var(--nn-ratio-4));
  --nn-space-tiny: calc(var(--nn-space-small) / var(--nn-ratio-2));
  --nn-space-huge: calc(var(--nn-space-large) * var(--nn-ratio-4));
  --nn-space-indent-default: 1.85rem;
  --nn-font-family-sans-serif: -apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,YuGothic,"Yu Gothic","Noto Sans JP","Noto Sans CJK JP","Hiragino Sans","Hiragino Kaku Gothic ProN",Meiryo,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
  --nn-font-family-monospace: "Noto Sans Mono CJK JP",Osaka-mono,"MS Gothic",Menlo,Consolas,Courier,"Courier New",monospace,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
  --nn-font-family-serif: Georgia,YuMincho,"Yu Mincho","Noto Serif JP","Noto Serif CJK JP","Hiragino Mincho ProN","HGS明朝E",serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
  --nn-border-radius-default: 4px;
  --nn-colour-grey-100: #f6f7f8;
  --nn-colour-grey-200: #e9ecef;
  --nn-colour-grey-300: #dee2e6;
  --nn-colour-grey-400: #ced4da;
  --nn-colour-grey-500: #adb5bd;
  --nn-colour-grey-600: #6c757d;
  --nn-colour-grey-700: #495057;
  --nn-colour-grey-800: #343a40;
  --nn-colour-grey-900: #212529;
  --nn-colour-black: #000000;
  --nn-colour-grey: #808080;
  --nn-colour-white: #ffffff;
  --nn-colour-blue: #0070ff;
  --nn-colour-purple: #6610f3;
  --nn-colour-pink: #ff0099;
  --nn-colour-red: #f60010;
  --nn-colour-orange: #fd6f00;
  --nn-colour-yellow: #f6a300;
  --nn-colour-green: #009940;
  --nn-colour-teal: #009088;
  --nn-colour-cyan: #00d0f0;
  --nn-colour-base: #000102;
  --nn-colour-background: #fdfeff;
  --nn-colour-blockquote-border: #66ddaa;
  --nn-colour-blockquote-background: #ddffee
}
*,
::after,
::before {
  box-sizing: border-box
}
html {
  color: var(--nn-colour-base);
  font-family: var(--nn-font-family-sans-serif);
  overflow: hidden scroll;
  overflow-wrap: break-word;
  text-decoration-skip-ink: none;
  -webkit-text-decoration-skip: objects;
  line-height: 1.7;
  background: var(--nn-colour-background);
  cursor: default
}
body {
  margin: 0
}
code,
kbd,
pre,
samp,
textarea,
time,
var {
  font-family: var(--nn-font-family-monospace);
  font-style: normal
}
article,
aside,
footer,
header,
main,
section {
  margin: var(--nn-space-large) 0
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: var(--nn-space-large) 0 var(--nn-space-default)
}
h1 {
  font-size: 1.7rem
}
h2 {
  font-size: 1.5rem
}
h3 {
  font-size: 1.3rem
}
h4,
h5,
h6 {
  font-size: 1rem
}
blockquote,
details,
dl,
form,
nav,
ol,
p,
pre,
summary,
table,
ul {
  margin: var(--nn-space-default) 0
}
ol,
ul {
  padding-left: var(--nn-space-indent-default)
}
dd ol,
dd ul {
  padding-left: var(--nn-space-default)
}
ol ol,
ol ul,
ul ol,
ul ul {
  margin: 0
}
dt {
  margin: var(--nn-space-default) 0 var(--nn-space-tiny);
  font-weight: 700
}
dd {
  margin: 0 0 0 var(--nn-space-indent-default)
}
blockquote > :first-child,
dd > :first-child {
  margin-top: 0
}
blockquote > :last-child {
  margin-bottom: 0
}
address {
  font-style: normal
}
blockquote {
  border: 1px solid var(--nn-colour-blockquote-border);
  border-radius: var(--nn-border-radius-default);
  padding: var(--nn-space-default) var(--nn-space-small);
  background: var(--nn-colour-blockquote-background)
}
pre {
  border: 1px solid var(--nn-colour-grey-400);
  border-radius: var(--nn-border-radius-default);
  padding: var(--nn-space-small);
  font-size: 1em;
  line-height: 1.5;
  background: var(--nn-colour-grey-100);
  overflow: auto;
  overflow-wrap: normal;
  word-break: keep-all;
  white-space: pre
}
table {
  border-collapse: collapse
}
caption {
  margin: 0 0 calc(var(--nn-space-tiny)/ var(--nn-ratio-2));
  font-weight: 700
}
td,
th {
  border: 1px solid var(--nn-colour-grey-400);
  padding: calc(var(--nn-space-tiny)/ var(--nn-ratio-2)) var(--nn-space-tiny)
}
th {
  font-weight: 700;
  text-align: center;
  background: var(--nn-colour-grey-100)
}
td {
  vertical-align: top;
  background: var(--nn-colour-white)
}
summary {
  cursor: pointer
}
summary:hover {
  color: var(--nn-colour-pink)
}
hr {
  margin: var(--nn-space-large) 0;
  border: 0;
  border-bottom: 1px solid var(--nn-colour-grey-400)
}
:not(pre) a code,
:not(pre) a kbd,
:not(pre) a samp,
:not(pre) a var,
a {
  color: var(--nn-colour-blue);
  text-decoration: underline
}
a * {
  text-decoration: underline
}
a:active,
a:active *,
a:hover,
a:hover * {
  color: var(--nn-colour-pink)
}
:not(pre) em code,
:not(pre) em kbd,
:not(pre) em samp,
:not(pre) em var,
em,
em * {
  color: var(--nn-colour-green);
  font-style: normal;
  font-weight: 700
}
:not(pre) strong code,
:not(pre) strong kbd,
:not(pre) strong samp,
:not(pre) strong var,
strong,
strong * {
  color: var(--nn-colour-red)
}
:not(pre) b code,
:not(pre) b kbd,
:not(pre) b samp,
:not(pre) b var,
b,
b * {
  color: var(--nn-colour-yellow)
}
:not(pre) i code,
:not(pre) i kbd,
:not(pre) i samp,
:not(pre) i var,
i,
i * {
  color: var(--nn-colour-teal);
  font-weight: 700;
  font-style: normal
}
:not(pre) u code,
:not(pre) u kbd,
:not(pre) u samp,
:not(pre) u var,
u,
u * {
  color: var(--nn-colour-cyan);
  font-weight: 700
}
:not(pre) s code,
:not(pre) s kbd,
:not(pre) s samp,
:not(pre) s var,
s,
s * {
  color: var(--nn-colour-purple);
  font-weight: 700
}
code,
kbd,
samp,
var {
  font-size: 1em
}
:not(pre) > code,
:not(pre) > kbd,
:not(pre) > samp,
:not(pre) > var {
  margin: 0 calc(var(--nn-space-tiny)/ var(--nn-ratio-4));
  border: 1px solid var(--nn-colour-grey-400);
  border-radius: var(--nn-border-radius-default);
  padding: calc(var(--nn-space-tiny)/ var(--nn-ratio-8)) calc(var(--nn-space-tiny)/ var(--nn-ratio-2));
  font-size: .94em;
  background: var(--nn-colour-grey-100)
}
:not(pre) > code,
:not(pre) > code :hover,
:not(pre) > code:hover {
  color: var(--nn-colour-pink)
}
:not(pre) > kbd,
:not(pre) > kbd :hover,
:not(pre) > kbd:hover {
  color: var(--nn-colour-orange)
}
:not(pre) > samp,
:not(pre) > samp :hover,
:not(pre) > samp:hover {
  color: var(--nn-colour-purple)
}
:not(pre) > var,
:not(pre) > var :hover,
:not(pre) > var:hover {
  color: var(--nn-colour-cyan)
}
q,
q::after,
q::before {
  color: var(--nn-colour-green);
  text-decoration: underline dotted
}
q {
  quotes: "“" "”" "‘" "’";
  cursor: help
}
q::before {
  content: open-quote
}
q::after {
  content: close-quote
}
abbr[title],
dfn[title] {
  font-style: normal;
  text-decoration: underline dotted;
  cursor: help
}
textarea {
  margin: 0;
  border: 1px solid var(--nn-colour-grey-400);
  border-radius: var(--nn-border-radius-default);
  padding: calc(var(--nn-space-tiny)/ var(--nn-ratio-2)) var(--nn-space-tiny);
  font-size: inherit;
  background: 0 0;
  vertical-align: top
}
button,
input,
select {
  margin: 0;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  vertical-align: top
}
[type=button],
[type=password],
[type=reset],
[type=submit],
[type=text],
button {
  -webkit-appearance: none;
  border: 1px solid var(--nn-colour-grey-400);
  border-radius: var(--nn-border-radius-default);
  padding: calc(var(--nn-space-tiny)/ var(--nn-ratio-2)) var(--nn-space-tiny);
  background: 0 0
}
[type=button],
[type=reset],
[type=submit],
button {
  font-weight: 400;
  background: var(--nn-colour-grey-100);
  cursor: pointer
}
[type=button]:hover,
[type=reset]:hover,
[type=submit]:hover,
button:hover {
  background: var(--nn-colour-grey-200)
}
[type=button]:focus,
[type=reset]:focus,
[type=submit]:focus,
button:focus {
  background: var(--nn-colour-grey-300)
}
[type=checkbox],
[type=radio] {
  vertical-align: middle;
  cursor: pointer
}
[type=date],
[type=datetime-local],
[type=datetime],
[type=email],
[type=month],
[type=number],
[type=password],
[type=search],
[type=tel],
[type=text],
[type=time],
[type=url],
[type=week],
select,
textarea {
  background: var(--nn-colour-white)
}
[type=date],
[type=datetime-local],
[type=datetime],
[type=email],
[type=month],
[type=number],
[type=search],
[type=tel],
[type=time],
[type=url],
[type=week],
select {
  border: 1px solid var(--nn-colour-grey-400);
  border-radius: var(--nn-border-radius-default)
}
::-webkit-file-upload-button {
  color: inherit
}
/*! Neo's World [2024 Style] : Neo https://neos21.net/ */
:root {
  --nn-colour-base: #222324;
  --nn-colour-background: #fbfcfd;
  --font-size-default: 17px;
  --font-size-small: .86rem
}
html {
  font-size: var(--font-size-default);
  text-underline-offset: .1em;
  -webkit-text-size-adjust: 100%
}
@media (max-width:600px) {
  html {
    word-break: break-all
  }
}
body {
  padding: 0 0 var(--nn-space-default)!important
}
abbr[title],
dfn[title] {
  font-weight: 700
}
abbr[title]::after,
dfn[title]::after {
  content: " (" attr(title) ") ";
  font-size: var(--font-size-small)
}
img {
  max-width: 100%;
  outline: 1px solid var(--nn-colour-grey-200)
}
img[height] {
  height: auto
}
#container {
  --container-padding-side: .8rem;
  margin: 0 auto;
  padding: 0 var(--container-padding-side);
  max-width: 52rem
}
@media (orientation:landscape) {
  #container {
    padding-right: calc(env(safe-area-inset-right));
    padding-left: calc(env(safe-area-inset-left))
  }
}
#header {
  margin: calc(var(--nn-space-default) * var(--nn-ratio-2)) 0;
  line-height: 1.2
}
#header ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none
}
#header-brand {
  margin: var(--nn-space-small) 0
}
#header-brand-contents {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: calc(var(--nn-space-tiny)/ var(--nn-ratio-1))
}
#site-title a {
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap
}
#site-title a:not(:hover) {
  color: var(--nn-colour-black)
}
#header-links {
  --header-link-icon-width: 1.5rem;
  margin-top: 0;
  margin-bottom: 0;
  justify-self: end
}
#header-links ul {
  display: grid;
  grid-template-columns: repeat(4,var(--header-link-icon-width));
  column-gap: calc(var(--nn-space-tiny)/ var(--nn-ratio-1))
}
#header-links a::before {
  content: "";
  display: inline-block;
  width: var(--header-link-icon-width);
  height: 1.1rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1rem;
  opacity: .7
}
#header-link-about > a::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23343a40" d="M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 448c-110.532 0-200-89.431-200-200 0-110.495 89.472-200 200-200 110.491 0 200 89.471 200 200 0 110.53-89.431 200-200 200zm107.244-255.2c0 67.052-72.421 68.084-72.421 92.863V300c0 6.627-5.373 12-12 12h-45.647c-6.627 0-12-5.373-12-12v-8.659c0-35.745 27.1-50.034 47.579-61.516 17.561-9.845 28.324-16.541 28.324-29.579 0-17.246-21.999-28.693-39.784-28.693-23.189 0-33.894 10.977-48.942 29.969-4.057 5.12-11.46 6.071-16.666 2.124l-27.824-21.098c-5.107-3.872-6.251-11.066-2.644-16.363C184.846 131.491 214.94 112 261.794 112c49.071 0 101.45 38.304 101.45 88.8zM298 368c0 23.159-18.841 42-42 42s-42-18.841-42-42 18.841-42 42-42 42 18.841 42 42z"/></svg>')
}
#header-link-search > a::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23343a40" d="M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z"/></svg>')
}
#header-link-feeds > a::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="%23343a40" d="M128.081 415.959c0 35.369-28.672 64.041-64.041 64.041S0 451.328 0 415.959s28.672-64.041 64.041-64.041 64.04 28.673 64.04 64.041zm175.66 47.25c-8.354-154.6-132.185-278.587-286.95-286.95C7.656 175.765 0 183.105 0 192.253v48.069c0 8.415 6.49 15.472 14.887 16.018 111.832 7.284 201.473 96.702 208.772 208.772.547 8.397 7.604 14.887 16.018 14.887h48.069c9.149.001 16.489-7.655 15.995-16.79zm144.249.288C439.596 229.677 251.465 40.445 16.503 32.01 7.473 31.686 0 38.981 0 48.016v48.068c0 8.625 6.835 15.645 15.453 15.999 191.179 7.839 344.627 161.316 352.465 352.465.353 8.618 7.373 15.453 15.999 15.453h48.068c9.034-.001 16.329-7.474 16.005-16.504z"/></svg>')
}
#header-link-to-bottom > a::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="%23343a40" d="M143 352.3L7 216.3c-9.4-9.4-9.4-24.6 0-33.9l22.6-22.6c9.4-9.4 24.6-9.4 33.9 0l96.4 96.4 96.4-96.4c9.4-9.4 24.6-9.4 33.9 0l22.6 22.6c9.4 9.4 9.4 24.6 0 33.9l-136 136c-9.2 9.4-24.4 9.4-33.8 0z"/></svg>')
}
#header-links a:hover::before {
  opacity: 1
}
#header-links span {
  display: none
}
#global-nav {
  margin: var(--nn-space-small) 0
}
#global-nav ul {
  display: inline-grid;
  grid-template-columns: repeat(6,auto);
  column-gap: var(--nn-space-tiny)
}
@media (max-width:380px) {
  #global-nav ul {
    column-gap: calc(var(--nn-space-tiny)/ var(--nn-ratio-2));
    font-size: var(--font-size-small)
  }
}
#global-nav a {
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap
}
#path {
  margin: var(--nn-space-small) 0
}
#path ul {
  font-size: 0
}
#path li {
  display: inline-block;
  font-size: var(--font-size-small)
}
#path li::after {
  content: "/";
  color: var(--nn-colour-grey-400);
  margin-right: calc(var(--nn-space-tiny)/ var(--nn-ratio-1));
  margin-left: calc(var(--nn-space-tiny)/ var(--nn-ratio-1))
}
#path li:last-child::after {
  margin-right: 0
}
#path a {
  color: var(--nn-colour-grey-600);
  text-decoration: none
}
#path a:hover {
  text-decoration: underline
}
#main {
  margin: 0;
  padding-bottom: calc(var(--nn-space-default) * var(--nn-ratio-2))
}
#main > * {
  --nn-space-default: calc(1.3rem * var(--nn-ratio-2))
}
#header-date {
  margin: var(--nn-space-small) 0 calc(var(--nn-space-tiny)/ var(--nn-ratio-2));
  color: var(--nn-colour-grey-600);
  font-size: var(--font-size-small);
  line-height: 1.2
}
#page-title {
  margin: var(--nn-space-tiny) 0 calc(var(--nn-space-default) * var(--nn-ratio-2));
  color: var(--nn-colour-black);
  font-size: 1.5rem;
  line-height: 1.2
}
#footer {
  margin: 0;
  border-top: 1px solid var(--nn-colour-grey-400);
  color: var(--nn-colour-grey-800);
  text-align: right;
  white-space: nowrap
}
#date-time dl {
  margin: calc(var(--nn-space-default) * var(--nn-ratio-2)) 0;
  opacity: .8
}
#date-time dt {
  display: inline;
  font-weight: 400
}
#date-time dt::after {
  content: " : "
}
#date-time dd {
  display: inline;
  margin-left: 0
}
#date-time dd:not(:last-child)::after {
  content: "";
  display: block
}
#footer-links {
  text-align: center
}
#footer-links ul {
  margin: 0;
  padding-left: 0;
  display: inline-grid;
  grid-template-rows: auto;
  grid-template-columns: repeat(4,1fr);
  gap: calc(var(--nn-space-tiny)/ var(--nn-ratio-2));
  list-style: none
}
@media (max-width:380px) {
  #footer-links ul {
    grid-template-rows: repeat(2,auto);
    grid-template-columns: repeat(2,1fr)
  }
}
#footer-links a {
  color: inherit;
  text-decoration: none;
  opacity: .7
}
#footer-links a::before {
  content: "";
  display: inline-block;
  margin-bottom: -.15rem;
  width: 1.4rem;
  height: 1rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: .9rem
}
#footer-link-about a::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23343a40" d="M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 448c-110.532 0-200-89.431-200-200 0-110.495 89.472-200 200-200 110.491 0 200 89.471 200 200 0 110.53-89.431 200-200 200zm107.244-255.2c0 67.052-72.421 68.084-72.421 92.863V300c0 6.627-5.373 12-12 12h-45.647c-6.627 0-12-5.373-12-12v-8.659c0-35.745 27.1-50.034 47.579-61.516 17.561-9.845 28.324-16.541 28.324-29.579 0-17.246-21.999-28.693-39.784-28.693-23.189 0-33.894 10.977-48.942 29.969-4.057 5.12-11.46 6.071-16.666 2.124l-27.824-21.098c-5.107-3.872-6.251-11.066-2.644-16.363C184.846 131.491 214.94 112 261.794 112c49.071 0 101.45 38.304 101.45 88.8zM298 368c0 23.159-18.841 42-42 42s-42-18.841-42-42 18.841-42 42-42 42 18.841 42 42z"/></svg>')
}
#footer-link-search a::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23343a40" d="M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z"/></svg>')
}
#footer-link-feeds a::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="%23343a40" d="M128.081 415.959c0 35.369-28.672 64.041-64.041 64.041S0 451.328 0 415.959s28.672-64.041 64.041-64.041 64.04 28.673 64.04 64.041zm175.66 47.25c-8.354-154.6-132.185-278.587-286.95-286.95C7.656 175.765 0 183.105 0 192.253v48.069c0 8.415 6.49 15.472 14.887 16.018 111.832 7.284 201.473 96.702 208.772 208.772.547 8.397 7.604 14.887 16.018 14.887h48.069c9.149.001 16.489-7.655 15.995-16.79zm144.249.288C439.596 229.677 251.465 40.445 16.503 32.01 7.473 31.686 0 38.981 0 48.016v48.068c0 8.625 6.835 15.645 15.453 15.999 191.179 7.839 344.627 161.316 352.465 352.465.353 8.618 7.373 15.453 15.999 15.453h48.068c9.034-.001 16.329-7.474 16.005-16.504z"/></svg>')
}
#footer-link-github a::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path fill="%23343a40" d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>')
}
#footer-links a:hover {
  opacity: 1
}
#to-top a::before {
  content: "";
  display: inline-block;
  width: 1.5rem;
  height: 1.1rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="%23343a40" d="M177 159.7l136 136c9.4 9.4 9.4 24.6 0 33.9l-22.6 22.6c-9.4 9.4-24.6 9.4-33.9 0L160 255.9l-96.4 96.4c-9.4 9.4-24.6 9.4-33.9 0L7 329.7c-9.4-9.4-9.4-24.6 0-33.9l136-136c9.4-9.5 24.6-9.5 34-.1z"/></svg>');
  opacity: .7
}
#to-top a:hover::before {
  opacity: 1
}
#to-top span {
  display: none
}
h2 {
  border-bottom: 2px solid var(--nn-colour-cyan);
  padding-bottom: calc(var(--nn-space-tiny)/ var(--nn-ratio-8));
  line-height: 1.4
}
h3 {
  border-bottom: 1px solid var(--nn-colour-grey-600);
  padding-bottom: calc(var(--nn-space-tiny)/ var(--nn-ratio-8));
  line-height: 1.4
}
h3,
h4,
h5,
h6 {
  margin-top: calc(var(--nn-space-default) * var(--nn-ratio-2))
}
li > p:first-child {
  margin-top: 0;
  margin-bottom: 0
}
.ad-amazon,
.ad-general,
.ad-rakuten,
.ads,
.iframe-responsive,
.ins-block,
.table-wrapper {
  margin: var(--nn-space-default) 0
}
.header-link {
  --header-link-width: .8rem;
  position: relative;
  left: calc(var(--header-link-width) * -1);
  display: inline-block;
  margin-right: calc(var(--header-link-width) * -1);
  width: var(--header-link-width);
  color: rgba(128,128,128,.15);
  font-size: var(--font-size-small);
  font-weight: 400;
  text-align: center;
  text-decoration: none;
  vertical-align: middle
}
:hover > .header-link {
  color: rgba(128,128,128,.5)
}
.header-link:hover,
.header-link:hover * {
  color: rgba(128,128,128,.8)
}
.header-link-mark {
  text-decoration: none
}
.header-link-mark::before {
  content: "#";
  padding: .6rem 0
}
.ad-general {
  overflow-x: hidden;
  text-align: center
}
@media (min-width:700px) {
  .ads {
    display: flex;
    flex-wrap: wrap;
    gap: var(--nn-space-default) 1rem
  }
  .ads > .ad-amazon,
  .ads > .ad-rakuten {
    margin-top: 0;
    margin-bottom: 0;
    width: calc(50% - .5rem)
  }
}
.ad-amazon,
.ad-rakuten {
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: var(--nn-space-tiny);
  border: 1px solid var(--nn-colour-grey-400);
  border-radius: var(--nn-border-radius-default);
  padding: var(--nn-space-small);
  font-size: var(--font-size-small);
  line-height: 1.4;
  background: var(--nn-colour-white)
}
.ad-amazon::before,
.ad-rakuten::before {
  position: absolute;
  right: var(--nn-space-tiny);
  bottom: var(--nn-space-tiny);
  font-weight: 700
}
.ad-amazon::before {
  content: "Amazon";
  color: rgba(250,150,0,.7)
}
.ad-rakuten::before {
  content: "楽天市場";
  color: rgba(200,0,0,.7)
}
.ins-block {
  display: block;
  border: 1px solid var(--nn-colour-yellow);
  border-radius: var(--nn-border-radius-default);
  padding: var(--nn-space-small);
  text-decoration: none;
  background: #fffff2
}
.ins-block::before {
  content: "追記";
  display: block;
  margin-bottom: var(--nn-space-small);
  color: var(--nn-colour-yellow);
  font-size: var(--font-size-small);
  font-weight: 700
}
.ins-block > :first-child {
  margin-top: 0
}
.ins-block > :last-child {
  margin-bottom: 0
}
.iframe-responsive {
  position: relative;
  width: 100%;
  max-width: 560px
}
.iframe-responsive::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: calc(315 / 560 * 100%)
}
.iframe-responsive iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}
.table-wrapper {
  overflow-x: auto
}
.table-wrapper > table {
  margin-top: 0;
  margin-bottom: 0
}
dd.nested-list > ol,
dd.nested-list > ul,
dl.nested-list > dd > ol,
dl.nested-list > dd > ul,
ol.nested-list,
ul.nested-list {
  padding-left: .1rem
}
.monospace {
  font-family: var(--nn-font-family-monospace)
}
#container > .google-auto-placed,
#footer .google-auto-placed,
#header .google-auto-placed,
#page-title + .google-auto-placed {
  display: none!important
}
:not(pre) > code[class*=language-],
pre[class*=language-] {
  border: 0;
  background: #171c1d
}
.language-css .token.string,
.style .token.string,
.token.entity,
.token.operator,
.token.punctuation,
.token.url,
.token.variable,
code[class*=language-],
pre[class*=language-] {
  color: #f2f8f8
}
.token.cdata,
.token.comment,
.token.doctype,
.token.prolog {
  color: #8890a0
}
.token.constant,
.token.deleted,
.token.keyword,
.token.property,
.token.symbol,
.token.tag {
  color: #f92672
}
.token.boolean,
.token.number {
  color: #ae81ff
}
.token.attr-name,
.token.builtin,
.token.char,
.token.inserted,
.token.selector,
.token.string {
  color: #a6e22e
}
.token.atrule,
.token.attr-value,
.token.function {
  color: #e6db74
}
.token.important,
.token.regex {
  color: #fd971f
}
.token.bold,
.token.important,
.token.italic {
  font-weight: 700
}