@charset "utf-8";

/* ………………………………………………………………………………………… */
/* てがろぐ -Fumy Otegaru Memo Logger- 標準スタイルシート for Ver 4.1.0 */
/* ………………………………………………………………………………………… */
/* ※装飾面のカスタマイズ方法については、配布サイト内にある「カスタマイズ方法」ページ https://www.nishishi.com/cgi/tegalog/custom/ の『装飾のカスタマイズ方法』区画にある解説や記述例もご参照下さい。 */

/* ============================================= */
/*      skin name : galaxy                       */
/*      Copyright : 2023 Serenity                */
/*      利用規約を遵守の上、ご利用ください。     */
/*      二次配布・販売は禁止しております。       */
/*      https://serenity.talemaze.xyz/           */
/* ============================================= */

/* ==== 配色 ==== */
:root { 
    --theme-color1: #7293DC;
    --theme-color2: #6B76BA;
    --theme-color3: #bd68ee;
    --theme-color4: #000C16;
    --color-white: #fff;
    --color-link: #d1a162;
    --text-color: var(--color-white);
    --menu-bg: #7099ad85;
    --bg-color: #000c16ce;
    --bg-color2: #000c16;
}

/* ================================ */
/*     リセットCSS                  */
/*     基本触らない方がいいもの     */
/* ================================ */
* {
    box-sizing: border-box;
}

html {
    font-size: 62.5%;
}

:focus {
    border: none;
}

a {
    text-decoration: none;
}

a,a::after,a::before,
button,button::after,button::before,
input,select,label:has(input) {
    transition: all 0.3s;
}

a,a::after,a::before,
button,button::after,button::before,
input,select,label:has(input[type="checkbox"]),label:has(input[type="radio"])
{
    cursor: pointer;
}

button,input {
    border: none;
    border: 0;
}

button {
    background: transparent;
}

input,textarea {
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    outline: none;
    border:2px solid transparent;
}

input[type="text"],textarea {
    cursor: auto;
}

dl,ul,ol,form {
    margin: 0;
    word-break: break-all;
}

p {
    margin: 25px 0;
    word-break: break-all;
}

p:first-child {
    margin-top: 0;
}

p:last-child {
    margin-bottom: 0;
}

@media only screen and (max-width: 1024px) {
    p:last-child {
        margin-bottom: 0;
    }
}

/* ============================================== */
/*     レイアウト                                 */
/*     変更する際はここから下をおすすめします     */
/* ============================================== */
/* ==== 全体 ==== */
body,button,input,textarea{
    font: 400 1.6rem/calc(1.6rem + 1.05rem) 'Zen Old Mincho', serif;
    background-color: var(--bg-color);
    color: var(--text-color);
}

body{
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    width: 100%;
    position: relative;
}

body::before,body::after{
    content: "";
    height: 100%;
    width: 100%;
    position: fixed;
}

body::before{
    background-image: url(images/galaxy.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-attachment: fixed;
    background-size: cover;
    z-index: -5;
}

body::after{
    background-image: linear-gradient(135deg,transparent 15%, var(--bg-color) 20%,var(--bg-color) 85%,transparent 100%);
    z-index: -3;
}

/* ==== リンク ==== */
a{
    color: var(--color-link);
}

a:hover{
    opacity: 0.5;
}

a:not([href]){
    opacity: 0.5;
    cursor: default;
}

a[target="_blank"]{
    position: relative;
}

a[target="_blank"]::before{
    content: "\e157";
    font-family: "Material Icons";
    display: inline-block;
    transform: rotate(-45deg);
}

a.btn{
    text-align: center;
    padding: 2px 2.5px;
    line-height: calc(1.6rem * 2);
    color: var(--color-white);
    background-color: var(--theme-color1);
}

.url {
    word-break:break-all;
}

/* ==== フォーム ==== */
.required{ position: relative; }
.required::after{
    content: "*";
    color: red;
    position: absolute;
    top: -5px;
}

input,textarea{
    background: #9eb8f0;
    padding: 2px;
    color: var(--text-color);
}

input{
    width: calc(1.6rem * 15);
    max-width: 100%;
}

textarea{
    width: 100%;
}

label:has(input){
    display: inline-block;
}

input[type="checkbox"],input[type="radio"]{
    display: none;
}

textarea{
    height: calc((1.6rem + 1.25rem) * 4);
}

input::placeholder,textarea::placeholder{
    color: var(--theme-color2);
}

input:hover,input:focus,textarea:hover,textarea:focus,
button:hover,label:has(input[type="checkbox"]),label:has(input[type="radio"]){
    border:2px solid var(--color-white);
}

label:has(input[type="checkbox"]),label:has(input[type="radio"]){
    border-color: transparent;
}

input[type="button"],input[type="submit"],
label:has(input[type="checkbox"]),label:has(input[type="radio"]),
button{
    width: auto;
    margin: 2px;
    padding: 0 2px;
    color: var(--text-color);
    background-color: var(--theme-color1);
}

input[type="button"]:hover,input[type="submit"]:hover,
label:has(input:checked),
button:hover{
    opacity: 0.5;
}

label:has(input:checked){
    opacity: 0.5;
}

/* ==== hタグ ==== */
h1,h2,h3,h4,h5,h6{
    font-family: 'Playball', 'Yomogi', serif;
    font-weight: 400;
    margin: 20px 0;
}

h1,h2,h3{
    color: var(--theme-color3);
}

h1{
    font-size: calc(1.6rem * 3);
    line-height: calc(1.6rem * 3);
}

h1 a,h2 a,h3 a{
    color: var(--theme-color3);
    position: relative;
}

h1 span,h2 span,h3 span{
    display: inline-block;
    position: relative;
}

h1 a span,h1 span span,
h2 a span,h2 span span,
h3 a span,h3 span span{
    height: 100%;
    white-space: nowrap;
    opacity: 0.2;
    position: absolute;
    top: 0;
    right: calc(1.6rem * -2.5);
}

h1 a:hover,h2 a:hover,h3 a:hover{
    opacity: 1;
}

h1 a:hover{
    text-shadow:5px 5px 5px var(--theme-color2);
}

h2{
    font-size: calc(1.6rem * 3);
    line-height: calc(1.6rem * 3);
    margin: 50px 0;
}

h2 a:hover{
    text-shadow: 3px 3px 4px var(--theme-color2);
}

h3{
    font-size: calc(1.6rem * 2);
    line-height: calc(1.6rem * 2);
    margin: 25px 0;
}

h3::before{
    content: "";
    font-size: calc(1.6rem * 2);
    border-left: 5px solid var(--theme-color3);
    padding-right: 10px;
}

h2:first-child,h3:first-child{
    margin-top: 0;
}

h3 a:hover{
    text-shadow: 2px 2px 3px var(--theme-color2);
}

h3 span,h3 a{
    padding: 10px calc(1.6rem * 2) 5px 0;
}

h3 a span{
    border: none;
    bottom: -7px;
}

h3 span span,h4 span{
    border: none;
    bottom: 0px;
}

h4,h5{
    font-size: calc(1.6rem * 1.3);
    line-height: calc(1.6rem * 1.3);
    margin: 25px 0;
}

h4{
    font-weight: bold;
}

h5::before{
    content: "";
    font-size: 1.6rem;
    line-height: 1.6rem;
    border-left: 3px solid var(--text-color);
    padding-right: 10px;
}

/* ==== ヘッダー ==== */
header{
    padding-top: 50px;
    height: 200px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

header h1{
    text-align: center;
}

header nav ul{
    padding: 0;
    list-style: none;
    display: flex;
	justify-content: center;
}

header nav ul li:not(:last-of-type)::after{
    content: "/";
    margin:0 5px;
}

header.scroll{
    position: fixed;
    padding-top: 0px;
    top: -350px;
    width: auto;
    left: 0;
    z-index: 5;
    transform: rotate(-20deg);
}

header.scroll::before{
    content: "";
    background-color: var(--theme-color4);
    display: inline-block;
    position: absolute;
    top: 0;
    left: -50px;
    width: 700px;
    height: 150px;
    filter: blur(20px);
}

.in{
    animation: smooth-in 0.5s ease-in-out forwards;
}

@keyframes smooth-in{
    0%{
        top: -350px;
    }
    100%{
        top: 0;
    }
}

.out{
    animation: smooth-out 0.5s ease-in-out forwards;
}

@keyframes smooth-out{
    0%{
        top: 0;
    }
    100%{
        top: -350px;
    }
}

header.scroll h1{
    text-align: left;
    margin-top: 40px;
    margin-left: 20px;
    margin-bottom: 0;
}

header.scroll nav{
    position: relative;
}

header.scroll nav ul{
    margin-left: 10px;
}

#sp-menu{ display: none; }

/* ==== メイン ==== */
main{
    width: 100%;
    max-width: 800px;
    margin: auto;
    text-align: center;
}

body:has(header) main{
    margin: 200px auto 50px;
    text-align: left;
}

article{
    margin: 25px 0;
    padding: 25px;
}

section{
    margin: 25px 1.6rem 100px;
    padding: 25px;
    border: 2px solid var(--theme-color2);
    background-color: var(--bg-color2);
}

section:last-child{
    margin-bottom: 0;
}

/* ==== フッター ==== */
footer{
    text-align: center;
    margin-top: 100px;
}

footer p{
    margin: 0;
    color: var(--color-white);
}

footer nav{
    position: fixed;
    bottom: 50px;
    width: 100%;
    z-index: 1;
    color: var(--color-white);
}

footer nav ul{
    list-style: none;
    display: flex;
    justify-content: center;
    padding: 0;
}

footer nav ul li{
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 0 2px;
}

footer nav ul li button,footer nav ul li a{
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    border: none;
    background-color: var(--theme-color1);
    color: var(--color-white);
}

footer nav ul li a{
    display: inline-block;
    text-align: center;
    font-size: 20px;
    line-height: 30px;
}

footer nav ul li button::after,footer nav ul li a::after{
    font-family: "Material Icons";
}

footer nav ul li#pagetop button::after{
    content: "\eacf";
}

footer nav ul li#home a::after{
    content: "\e88a";
}

footer nav ul li#prev a::after{
    content: "\e5cb";
}

footer nav ul li#next a::after{
    content: "\e5cc";
}

footer nav ul li#toc a::after{
    content: "\e8de";
}

/* ==== レスポンシブ ==== */
@media only screen and (max-width:1024px){
    /* ==== ヘッダー ==== */
    header{
        position: static;
    }

    header nav{
        display: none;
        position: fixed;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%;
        z-index: 5;
        background-color: transparent;
    }

    header.open nav{
        animation: smooth-show 0.5s ease-in forwards;
    }

    @keyframes smooth-show {
        0%{
            background-color: transparent;
        }
        100%{
            background-color: var(--menu-bg);
        }
    }

    header.close nav{
        animation: smooth-hide 0.5s ease-in forwards;
    }

    @keyframes smooth-hide {
        0%{
            background-color: var(--menu-bg);
        }
        100%{
            background-color: transparent;
        }
    }

    header.open nav,header.close nav{
        display: block;
    }
    
    header.open nav ul,header.close nav ul{
        position: fixed;
        display: flex;
        flex-direction: column;
        justify-content: center;
        right: -50%;
        width: 40%;
        height: 100%;
        margin-left: 50%;
        background-color: var(--theme-color2);
        animation: smooth-in 0.5s ease-in-out forwards;
        z-index: 10;
    }

    header.close nav ul{
        right: 0;
        animation: smooth-out 0.5s ease-in-out forwards;
    }

    @keyframes smooth-in{
        0%{
            right: -50%;
        }
        100%{
            right: 0;
        }
    }

    @keyframes smooth-out{
        0%{
            right: 0;
        }
        100%{
            right: -50%;
        }
    }

    header.open nav ul li,header.close nav ul li{
        margin: 10px auto;
        margin-left: 20px;
    }

    header.open nav a,header.close nav a{
        color: var(--color-white);
    }

    header.open nav ul li:not(:last-of-type)::after,
    header.close nav ul li:not(:last-of-type)::after{
        content: "";
    }

    #sp-menu{
        display: block;
        position: fixed;
        top: 20px;
        right: 20px;
        width: 50px;
        height: 50px;
        background-color: var(--theme-color1);
        color: var(--color-link);
        z-index: 10;
    }

    button#sp-menu:hover{
        opacity: 1;
    }

    #sp-menu::after{
        content: "\e5d2";
        font-family: "Material Icons";
        font-size: 30px;
        line-height: 50px;
    }

    #sp-menu.open:after{
        content: "\e5cd";
        font-size: 40px;
    }

    /* ==== メイン ==== */
    body:has(header) main{
        margin: auto;
    }
}

dl dt,dl dd,
dl.row dt,dl.row dd{
    margin: 0 0 0.8rem;
}

dl dd,dl.row dd{
    padding: 0 0 0.8rem calc(1.6rem * 3);
}

dl.row{
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    width: 100%;
}

dl.row dt{
    width: calc(1.6rem * 10);
}

dl.row dd{
    width: calc(100% - calc(1.6rem * 10));
}

dl.row.disc dd{
    padding: 0 0 0.8rem;
}

dl.row.disc dd::before{
    content:"・・・";
}

dl.underline dd,dl.underline dd,
dl.row.underline dt{
    border-bottom: 1px solid var(--theme-color2);
}

dl.border{
    border: 1px solid var(--theme-color2);
    padding: 1.6rem;
}

dl.border dt:last-of-type,dl.border dd:last-of-type{
    border: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

/* ==== 小説ページ ==== */
section#NOVEL-MAIN{
    border: none;
    padding: 25px 0px;
}

/* ==== 水平線 ==== */
hr{
    margin: 70px auto;
    height: 1.6rem;
	background: linear-gradient(-45deg,transparent 35%,var(--theme-color2) 45%, var(--theme-color2) 55%,transparent 65%);
	background-size: 1.6rem 1.6rem;
    width: calc(1.6rem*5);
	border: none;
}

/* ==== その他 ==== */
.block{ display: block; }
.center{ text-align: center; }
.right{ text-align: right; }
.border{ 
    border: 1px solid var(--theme-color2);
    padding: 1.6rem;
}
.dotted{
    border: 1px dotted var(--theme-color2);
    padding: 1.6rem;
}
.dashed{
    border: 1px dashed var(--theme-color2);
    padding: 1.6rem;
}
.border-2{
    border-width: 2px;
}
.playball{ font-family: 'Playball', cursive; }
.kleeone{ font-family: 'Klee One', serif; }
.zenoldmincho{ font-family: 'Zen Old Mincho', serif; }
.zenkaku{ font-family: 'Zen Kaku Gothic New', sans-serif; }

/* ==== レスポンシブ ==== */
@media only screen and (max-width:1024px){
    /* 1列解除 */
    dl.row{
        display: block;
    }

    dl.row dt,dl.row dd{
        width: 100%;
    }
    
    dl.row.underline dt{
        border: none;
    }
}

/* ====================================== */
/* ==== 通常の装飾とてがろぐ専用記法 ==== */
/* ====================================== */
/* ==== 強調 ==== */
em,.decorationE{
    background: linear-gradient(180deg, transparent 70%, var(--theme-color2) 70%);
    font-style: italic;
}

.decorationE img {
    outline: 8px ridge var(--theme-color2);
}

/* ==== 太字 ==== */
.decorationB {
    font-weight: bold;
}

.decorationB img {
    box-shadow: 5px 5px 5px var(--theme-color2);
}

/* ==== 斜体 ==== */
.decorationI {
    font-style: italic;
}

.decorationI img {
    box-shadow: -5px 5px 5px var(--theme-color4);
}

/* ==== 下線 ==== */
.decorationU {
    text-decoration-line: underline;
    text-decoration-style: double;
    text-decoration-color: var(--theme-color2);
}

.decorationU img {
    box-shadow: 5px 5px 5px var(--theme-color2);
}

/* ==== 引用 ==== */
.decorationQ {
    margin: 1em 0.3em 1em 1em;
    padding: 0.75em 0.5em;
    border-left: 5px double var(--theme-color3);
    background-color: #6a6a7e;
    font-size: 0.95em;
    display: block;
}

.decorationQ::before,
.decorationQ::after {
    content: '';
}

.decorationQ + br {
    display: none;
}

.decorationQ img {
    vertical-align: middle;
}

/* ==== 取り消し線 ==== */
.decorationD {
    color: rgb(109, 109, 109);
    text-decoration-line: line-through;
    text-decoration-color: red;
}

.decorationD img {
    opacity: 0.5;
}

/* ==== 小文字 ==== */
.decorationS {
    font-size: 0.8rem;
}

.decorationS img {
    border-radius: 10px;
    vertical-align: middle;
}

/* ==== 極小文字 ==== */
.decorationT {
    font-size: 0.6rem;
}

.decorationT img {
    max-height: 75px;
    width: auto;
    vertical-align: middle;
}

/* ==== リスト ==== */
ul.row, ul.listdeco-rowSlash, ul.listdeco-rowDisc{
    list-style: none;
    padding: 0;
    font-size: 0;
}

ul.row li, ul.listdeco-rowSlash li, ul.listdeco-rowDisc li{
    display: inline;
    font-size: 1.6rem;
}

ul.row li::after, ul.listdeco-rowSlash li::after, ul.listdeco-rowDisc li::after{
    margin: 0 5px;
}

ul.row.slash li::after, ul.listdeco-rowSlash li::after{
    content: "/";
}

ul.row.disc li::after, ul.listdeco-rowDisc li::after{
    content: "・";
    margin: 0;
}

ul.row li:last-child:after, ul.listdeco-rowSlash li:last-child:after, ul.listdeco-rowDisc li:last-child:after{
    content:"";
}

/* ==== 重要 ==== */
strong,.deco-strong{
    font-weight: bold;
    background: var(--theme-color2);
}

/* ==== 背景に文字 ==== */
span:has(span.back),.deco-span{
    display: inline-block;
    position: relative;
}

span.back, .deco-back, .deco-right, .deco-up, .deco-rightUp{
    height: 100%;
    white-space: nowrap;
    opacity: 0.2;
    position: absolute;
    left: calc(1.6rem * -0.5);
}

span.right,.deco-right, .deco-rightUp{
    left: auto;
    right: calc(1.6rem * -0.5);
}

span.up, .deco-up, .deco-rightUp{
    top: calc(1.6rem / -2);
}

/* ==== 埋め込み画像 画像ボックス(FIGオプション指定時) ==== */
.embeddedpictbox {
    margin: 0;
    padding: 0;
    display: inline-table;
    border-collapse: collapse;
    border: 1px solid #e0eee0;
    vertical-align: top;
}

/* ==== キャプション ==== */
.embeddedpictbox figcaption {
    display: table-caption;
    caption-side: bottom;
    font-size: 0.8em;
    text-align: center;
    background-color: var(--theme-color2);
}

/* ==== 画像ボックスに含まれる画像 ==== */
.embeddedpictbox img {
    vertical-align: middle;
}

/* ==== 画像リンク ==== */
.imagelink {
    display: inline-block;
    line-height: 1;
    vertical-align: inherit;
}

/* ==== 画像そのもの ==== */
.embeddedimage {
    max-width: 100%;
    max-height: 240px;
    width: auto;
    height: auto;
}

/* ==== フラグ付き画像 ==== */
figure.nsfw {
    overflow: hidden;
}

.imagelink.nsfw {
    overflow: hidden;
}

img.nsfw {
    filter: blur(10px);
}

/* ==== 埋め込み動画 ==== */
@media all and (max-width: 799px) {
    .embeddedmovie {
        display: inline-block;
        max-width: 100%;
        width: auto;
        height: auto;
    }
}

/* ==== 埋め込みTweet ==== */
blockquote.twitter-tweet {
    background-color: #f8f8f8;
    border: 1px dashed #ddd;
    border-radius: 9px;
    margin: 0.3em 0;
    padding: 1em;
    font-size: 0.95em;
    color: #999;
    text-shadow: 1px 1px 1px #fff;
}

/* ==== 埋め込みツイートの横幅を強制的に制限 ==== */
div.twitter-tweet {
    max-width: 350px !important;
}

/* ==== 検索語のハイライト ==== */
.searchword {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #fcc45d 60%);
}

/* ====================== */
/* ==== 投稿フォーム ==== */
/* ====================== */
.postform {
    margin: 1.6rem;
    padding: 1.6rem;
    border: 1px solid var(--theme-color3);
}

.postform p {
    margin: 0;
}

/* =========================== */
/* ==== 文字装飾ボタン群 ==== */
/* =========================== */
/* ==== 掲載領域全体 ==== */
.decoBtns {
    display: inline-block;
}

/* ==== 太字:B ==== */
.decoBtnB {
    font-weight: bold;
}

/* ==== 取消線:D ==== */
.decoBtnD {
    text-decoration: line-through;
    text-decoration-color: red;
    text-decoration-style: double;
}

/* ==== 強調:E ==== */
.decoBtnE {
    font-weight: bold;
    color: blue;
}

/* ==== 斜体:I ==== */
.decoBtnI {
    font-style: italic;
}

/* ==== 引用:Q ==== */
.decoBtnQ {}

/* ==== 小さめ:S ==== */
.decoBtnS {}

/* ==== 極小:T ==== */
.decoBtnT {
    font-size: 11px !important;
}

/* ==== 下線:U ==== */
.decoBtnU {
    text-decoration: underline;
    text-decoration-color: red;
}

/* ==== 文字色:C ==== */
.decoBtnC {
    color: red;
}

/* ==== 背景色:M ==== */
.decoBtnM {
    color: blue;
}

@media all and (min-width: 800px) {
    .decoBtns {
        margin-top: 0;
    }
}

.situation:empty { display: none; }

/* ==== 日付境界バー ==== */
.dateseparator {
    display: none;
}

/* ==== 日付境界バー内のリンク(ボタン) ==== */
.dateseparator a {
    display: inline-block;
    text-align: center;
    padding: 0 5px;
    font-size: small;
    color: var(--color-white);
    background-color: var(--theme-color3);
}

/* logは検索時見えないようにする */
body:not(.home) #LOG h2{
    display: none;
}

/* ======================================== */
/* ==== 投稿ボックス(一発言)ごとの表示 ==== */
/* ======================================== */
.onelogbox {
    margin: 25px 1.6rem;
    position: relative;
}

.onelogbox:has(.newsign:not(:empty)){
    padding-top: calc(25px + 1.6rem);
}

/* ==== 本文 ==== */
.comment{
    display: none;
}

body.onelog .comment{
    display: block;
}

/* ==== 先頭固定 ==== */
.fixedseparator{
    display: none;
}

/* ==== New!サイン部分 ==== */
.newsign:empty{
    display: none;
}
.newsign {
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    padding: 2px 5px;
    color: var(--color-white);
    background-color: #f04242;
}

/* 先頭固定の場合は背景色を変える */
.newsign:has(.fixed){
    background-color: var(--theme-color4);
}

/* ==== 投稿ボックスのh3 ====  */
.onelogbox h3{
    margin: 0 0 10px;
}

/* ==== 続きを読むリンク（ボタン） */
/* ※注：「続きを読む」機能は、JavaScriptが無効な閲覧環境では機能せず、その場合はボタンも表示されません。 */
/* ==== ボタン枠の装飾(共通) ==== */
.readmorebutton {
    text-align: center;
    padding: 0 3px;
    color: var(--color-white);
    background-color: var(--theme-color1);
}

.readmoreclose{
    padding: 3px;
}

/* ==== 投稿日時のリンク ==== */
.postdate a {
    display: inline-block;
    font-size: small;
}

/* ==== 投稿情報 ==== */
.onloginfo{
    position: relative;
    text-align: right;
    font-size: small;
    margin-right: 25px;
}

/* ==== カテゴリアイコン ==== */
.categoryicon img {
    height: 1.2em;
    width: auto;
    vertical-align: text-top;
    margin: 0 1px;
}

/* ==== 編集リンク ==== */
.editlink a{
    position: relative;
}

.editlink a::after {
    font-family: "Material Icons";
    content: "\e745";
    font-size: 25px;
    position: absolute;
}

/* ================================ */
/* ==== 鍵付き(パスワード保護) ==== */
/* ================================ */
.logstatus-lock h3::before{
    font-family: "Material Icons";
    content: "\e897";
    line-height: calc(1.6rem + 1.05rem);
    border-left: none;
    padding-right: 10px;
}

/* ==== 鍵違いエラーの表示 ==== */
.passkeyerror {
    color: #f04242;
}

/* ==== 入力フォーム枠 ==== */
.passkeybox {
    display: block;
}

/* ====================================================================== */
/* ユーティリティリンク群の装飾
   各投稿の個別ページでのみ表示される囲みナビ用の装飾です。
   表示項目の取捨選択や詳細な装飾方法は
   https://www.nishishi.com/cgi/tegalog/custom/#customizecss-utilitylinkbox をご覧下さい。                                                         */
/* ====================================================================== */
.utilitylinks {
    margin: 25px 0 100px;
    padding: 25px;
    border: 1px solid var(--theme-color2);
}

/* ======================================== */
/* ==== ページ番号リンク群ボックス全体 ==== */
/* ======================================== */
/* ==== ページ番号リンクの数字 ==== */
.pagenumlink {
    padding: 5px 9px;
    width: 25px;
    height: 25px;
    color: var(--color-white);
    background-color: var(--theme-color3);
}

/* ==== 現在のページ番号の装飾 ==== */
.pagenumhere {
    color: var(--theme-color3);
    background-color: var(--bg-color);
    border: 1px solid var(--theme-color3);
}

/* ========================= */
/* ==== カテゴリーツリー ==== */
/* ===== TOCとして利用 ===== */
/* ========================= */
ul.cattree{
    padding: 0;
    list-style: none;
}

ul.cattree .num{
    display: none;
}

ul.cattree ul{
    padding-left: 1.6rem;
}

ul.cattree ul li::before{
    content: "-";
    margin-right: 5px;
}