@font-face{font-family:sourcehanscodejp;src:url(https://15km.jp/pv/fonts/SourceHanCodeJP/2.012R/SourceHanCodeJP.woff2)format("woff2");font-display:swap}@font-face{font-family:hackgen35console-regular;src:url(https://15km.jp/pv/fonts/hackgen/HackGen_NF_v2.9/HackGen35Console-Regular.woff2)format("woff2");font-display:swap}@font-face{font-family:zen kaku gothic new;font-style:normal;font-weight:400;font-display:swap;src:url(https://15km.jp/pv/fonts/Zen_Kaku_Gothic_New/ZenKakuGothicNew-Regular.ttf)format("truetype")}@font-face{font-family:zen kaku gothic new;font-style:normal;font-weight:500;font-display:swap;src:url(https://15km.jp/pv/fonts/Zen_Kaku_Gothic_New/ZenKakuGothicNew-Medium.ttf)format("truetype")}@font-face{font-family:zen kaku gothic new;font-style:normal;font-weight:700;font-display:swap;src:url(https://15km.jp/pv/fonts/Zen_Kaku_Gothic_New/ZenKakuGothicNew-Bold.ttf)format("truetype")}:root{--fonts-mono:"Menlo", "Cascadia Mono", monospace;--fonts-code:"Osaka-Mono", "SF Mono", "Menlo",
    "Cascadia Mono", monospace;--base-text-color:#b3b3b3}*,::after,::before{box-sizing:border-box}.bold{font-weight:600}html{text-underline-offset:.3em;-webkit-text-size-adjust:100%;font-size:95%}body{color:var(--base-text-color);background-color:#1c1c1e;font-family:var(--fonts-mono);font-size:1rem;font-weight:400;line-height:1.5;margin:0;text-align:left;width:100%}header{background-color:#000;position:sticky;top:0;z-index:1020;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:.5rem 1rem;.container { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; width: 100%; } .title { display: inline-block; padding-top: 0.3125rem; padding-bottom: 0.3125rem; margin-right: 1rem; font-size: 1.25rem; line-height: inherit; white-space: nowrap; } .hamburger { display: none; flex-direction: column; justify-content: space-around; width: 1.5rem; height: 1.5rem; background: transparent; border: none; cursor: pointer; padding: 0; z-index: 1030; } .hamburger span { width: 1.5rem; height: 0.15rem; background: var(--base-text-color); border-radius: 10px; transition: all 0.2s linear; position: relative; transform-origin: 1px; } .hamburger.active span:nth-child(1) { transform: rotate(45deg); } .hamburger.active span:nth-child(2) { opacity: 0; } .hamburger.active span:nth-child(3) { transform: rotate(-45deg); } nav { display: flex; ul { display: flex; flex-wrap: wrap; li { display: inline; margin-left: auto; margin-right: 1rem; } } } @media (max-width: 576px) { .hamburger { display: flex; } nav { position: fixed; top: 0; right: -100%; height: 100vh; width: min(12em, 100vw); background-color: #000; transition: right 0.2s ease-in-out; padding-top: 4rem; box-shadow: -2px 0 5px rgba(0, 0, 0, 0.5); } nav.active { right: 0; } nav ul { flex-direction: column; padding-left: 0; margin: 0; align-items: center; width: 100%; } nav ul li { margin: 0; margin-right: 0; padding: 1rem 1.5rem; border-bottom: 1px solid #333; width: 100%; text-align: center; } nav ul li a { display: block; width: 100%; } }}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media(min-width:576px){.container{max-width:540px}}@media(min-width:768px){.container{max-width:720px}}@media(min-width:992px){.container{max-width:920px}}main{margin-top:1.5rem;margin-bottom:1.5rem;display:flex;flex-direction:column}.post-list{display:flex;flex-direction:column;padding-left:0;padding-right:0;.anchor { text-decoration: none; display: block; margin: 0.25rem; } hr { margin: 0.5rem; }}.post-list-item{position:relative;display:flex;justify-content:space-between;padding-right:1.25rem;padding-left:1.25rem;padding-top:.85rem;padding-bottom:.6rem;h5 { text-decoration: underline; margin-bottom: 0.35rem; } small { padding-top: 0.45rem; }}footer{text-align:center;padding:1rem 0;border-top:1px solid #333;margin-top:3rem}.post-info-top{color:#989899;display:block;margin-top:.25rem;margin-bottom:.5rem;span { padding-right: 1rem; }}a:any-link{color:var(--base-text-color);text-decoration:underline;text-decoration-color:oklch(.67 0 0);text-decoration-thickness:1px}.article a:any-link{text-decoration:none;display:inline;padding-bottom:3px;padding-left:.1rem;padding-right:.1rem;background-image:linear-gradient( oklch(.67 0 0),oklch(.67 0 0) );background-size:100% 1px;background-repeat:no-repeat;background-position:0 calc(100% - 1px)}.external-link-icon{width:.8em;height:.8em;margin-left:.2em;vertical-align:top;display:inline}img{max-width:100%;max-height:70vh;margin-top:.3rem;margin-bottom:.3rem;vertical-align:middle}h5{font-size:1.25rem;font-weight:500}h1,h2,h3,h4,h5,p,figure{margin-top:0;margin-bottom:.8rem}p,li{overflow-wrap:anywhere}figure{margin-left:0;margin-right:auto}ul{margin-top:0;margin-bottom:0}small{font-size:.875rem}.hr{border:none;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.25);height:0;margin:.7rem}.article{font-family:toppan bunkyu mincho,凸版文久明朝,yu mincho,serif}h1{font-family:var(--fonts-mono)}.shiki{padding:.5rem .8rem;border-radius:5px;overflow-x:auto;font-size:1rem;margin-bottom:1rem;margin-top:.3rem;margin-right:0;margin-left:0;display:flex;box-sizing:border-box;code { display: block; flex: 1 0 100%; margin-bottom: 0.2rem; } span { font-style: normal !important; font-family: var(--fonts-code); }}p,li{code { word-break: break-all; margin: 0 0.2rem; padding: 0.1rem 0.2rem; border-radius: 3px; background-color: #282c34; font-style: normal !important; font-family: var(--fonts-code); font-size: 1rem; }}del{padding-left:.1rem;padding-right:.1rem}#search-input-div{display:flex}#search-input{width:100%;font-size:1.1rem;font-family:var(--fonts-mono);padding:.3rem;margin:.75rem 1.25rem;border:2px solid #64676a;border-radius:.1rem;background-color:#474b4f;color:#dbdfe0}#search-input:focus{outline:none;border:2px solid #1b53bb;box-shadow:0 0 0 2px rgba(4,129,225,.3)}#search-results{list-style-type:none;padding:0;a { font-size: 1.25rem; font-weight: 500; } p { margin-bottom: 0; } li:first-child { padding-top: 0.6rem; margin-top: 1.5rem; border-top: 1px solid #505050; } li { border-bottom: 1px solid #505050; padding-left: 1.25rem; padding-right: 1.25rem; padding-bottom: 0.6rem; margin-bottom: 0.6rem; overflow-wrap: anywhere; } li:last-child { border-bottom: none; } mark { color: #1c1c1e; background-color: #d1cfc4; padding-left: 0.05rem; padding-right: 0.05rem; margin-left: 0.05rem; margin-right: 0.05rem; }}blockquote{margin:.7rem 0;padding:1rem 1.5rem;border-left:4px solid #555;background-color:#28282a;color:silver}blockquote p{margin-bottom:0}blockquote footer{margin-top:.8rem;font-size:.9rem;color:gray;text-align:left;border-top:none}.post-nav{display:flex;justify-content:space-between;align-items:center;margin-top:1.7rem;padding-top:1rem;font-size:.85rem;color:#505050}.post-nav a{color:#505050;text-decoration-color:#505050}.post-nav a:hover{color:gray;text-decoration-color:gray}.post-nav .prev,.post-nav .next{color:#505050}.post-nav .prev:has(a:hover),.post-nav .next:has(a:hover){color:#626262}.post-nav .prev{text-align:left}.post-nav .next{text-align:right;margin-left:auto}