:root {
    --main-text: #000000;
    --main-bg: #ffffff;

    --item_a: #007bff;
    --item_a_hover: #003b79;

    --cmt : #005f00;
    --var : #379ac1;
    --str : #91082a;
    --arr : #ffda06;
    --func : #0019ba;
    --func_name : #007bff;
    --rtn : #b60092;

    --outer_frame : #6c6c6c;
    --inner_frame: #d0d0d0;
    --th_bg : #e1ffff;
    --tr_even : #f2f2f2;
    --tr_odd : #ffffff;
}

:root[theme="dark"] {
    --main-text: #ffffff;
    --main-bg: #000000;

    --cmt : #52993E;
    --item_a: #82b1ff;
    --item_a_hover: #007bff;
    
    --cmt: #7ec699;
    --var: #9cdaf2;
    --str: #f27983;
    --arr: #fff176;
    --func: #6a74cc;
    --func_name: #82b1ff;
    --rtn : #ff52dc;

    --outer_frame : #acacac;
    --inner_frame: #8d8d8d;
    --th_bg : #2f8686;
    --tr_even : #131313;
    --tr_odd : #000000;
}

html {
    color: var(--main-text);
    background-color: var(--main-bg);
}

body {
    color: var(--main-text);
}

a {
    color: var(--item_a);
}

.item a {
    color: var(--item_a);
}

.item a:hover {
    color: var(--item_a_hover);
    text-decoration:none;
}

.cmt {
    color: var(--cmt);
}

.var {
    color: var(--var);
}

.str {
    color: var(--str);
}

.arr, .block {
    color: var(--arr);
}

.item a,
.item .str {

    font-size: 25px;
}

.func {
    color: var(--func);
}

.func_name {
    color: var(--func_name);
}

.rtn {
    color: var(--rtn);
}

.indent {
    margin-left: 20px;
}

/* テーブルのスタイル */
table {
    color : var(--main-text);
    border-collapse: collapse;
    min-width: 50%;
    max-width: 99%;
    border: 1px solid var(--outer_frame);
}

/* テーブルのヘッダ */
th {
    color : var(--main-text);
    background-color: var(--th_bg);
    border: 1px solid var(--inner_frame);
    padding: 2px;
    padding-left: 8px;
    padding-right: 8px;
    text-align: center;
}

/* テーブルのセル */
td {
    color : var(--main-text);
    border: 1px solid var(--inner_frame);
    padding: 2px;
    padding-left: 8px;
    padding-right: 8px;
}

th:first-child, td:first-child {
    border-left: none;
}

tr:first-child th {
    border-top: none;
}

tr:last-child td {
    border-bottom: none;
}

th:last-child, td:last-child {
    border-right: none;
}

/* テーブルの行 */
tr:nth-child(even) {
    background-color: var(--tr_even);
}
tr:nth-child(odd) {
    background-color: var(--tr_odd);
}