﻿@import url("theme.css");
 


        /* Sphinx Read the Docs テーマ対応 CSS */
        
        /* h1: 最上位ヘッダー */
        h1 {
            font-size: 2.2rem;
            color: Artichoke;
            border-bottom: 4px solid grey;
            padding-bottom: 12px;
            margin-top: 2rem;
            margin-bottom: 1.5rem;
            font-weight: 700;
            position: relative;
        }
        
        h1::before {
            content: '';
            position: absolute;
            left: 0;
            bottom: -4px;
            width: 50%;
            height: 4px;
            background: #2d5016;
        }

        /* h2: 大セクション */
        h2 {
            font-size: 1.7rem;
            color: Artichoke;
            border-bottom: ;
            margin-top: 2.4rem;
            margin-bottom: 1.2rem;
            font-weight: 600;
            padding: 6px 12px;
            background: linear-gradient(90deg, rgba(45, 80, 22, 0.07), transparent);
            border-left: 6px solid #2d5016;
        }

        /* h3: 中セクション */
        h3 {
            font-size: 1.4rem;
            color: Artichoke;
            margin-top: 1.8rem;
            margin-bottom: 1rem;
            font-weight: 600;
            padding-left: 20px;
            border-left: 4px solid #2d5016;
            position: relative;
        }
        
/*        h3::before {
            content: '';
            position: absolute;
            left: -3px;
            top: 0;
            bottom: 0;
            width: 3px;
            background: linear-gradient(180deg, #e67e22, #d35400);
        } */

        /* h4: 小セクション */
        h4 {
            font-size: 1.2rem;
            color: Artichoke;
            margin-top: 1.5rem;
            margin-bottom: 0.8rem;
            font-weight: 600;
            padding-left: 28px;
            border-left: 2px solid #2d5016;
            position: relative;
        }
        
        h4::after {
            content: '▶';
            position: absolute;
            left: 8px;
            top: 50%;
            transform: translateY(-50%);
            font-size: 0.7em;
            color: #2d5016;
        }

        /* h5, h6: 補助的なヘッダー */
        h5 {
            font-size: 1.1rem;
            color: Artichoke;
            margin-top: 1.2rem;
            margin-bottom: 0.6rem;
            font-weight: 600;
            padding-left: 36px;
            border-left: 1px solid #bdc3c7;
        }

        h6 {
            font-size: 1rem;
            color: Artichoke;
            margin-top: 1rem;
            margin-bottom: 0.5rem;
            font-weight: 600;
            padding-left: 44px;
            border-left: 1px dotted #bdc3c7;
        }


        /* 区切り線の改善 */
        hr {
            border: none;
            border-top: 1px dashed #8c97a0;
            margin: 0.5rem 0;
        }

        hr.docutils {
            border: none;
            border-top: 1px dashed #d3d3d3;
            margin-top: 0;
            margin-bottom: 1rem;
        }

        /* Read the Docs テーマとの統合 */
        .rst-content h1,
        .rst-content h2,
        .rst-content h3,
        .rst-content h4,
        .rst-content h5,
        .rst-content h6 {
            font-family: inherit;
        }

        /* ナビゲーションとの調和 */
        .toctree-wrapper ul {
            border-left: 2px solid #ecf0f1;
            padding-left: 1rem;
        }

        /* モバイル対応 */
        @media (max-width: 768px) {
            h1 {
                font-size: 1.8rem;
                margin-top: 1.5rem;
            }
            
            h2 {
                font-size: 1.5rem;
                padding-left: 8px;
                border-left-width: 3px;
            }
            
            h3 {
                font-size: 1.3rem;
                padding-left: 15px;
            }
            
            h4 {
                font-size: 1.1rem;
                padding-left: 20px;
            }
            
            h5 {
                padding-left: 25px;
            }
            
            h6 {
                padding-left: 30px;
            }
        }

        /* ダークモード対応（Read the Docsテーマ用） */
        [data-theme="dark"] h1,
        [data-theme="dark"] h2,
        [data-theme="dark"] h3 {
            color: #ecf0f1;
        }
        
        [data-theme="dark"] h4,
        [data-theme="dark"] h5,
        [data-theme="dark"] h6 {
            color: #bdc3c7;
        }
        
        [data-theme="dark"] p,
        [data-theme="dark"] li {
            color: #ecf0f1;
        }

p {
	margin: 0 0 12px;
}

/* テーブル*/
.wy-table-responsive table td, .wy-table-responsive table th {
    white-space: normal !important;
}

html.writer-html5 table {
	table-layout: auto;
	width: 100%;
}


/* コードブロック<code></code>*/
.rst-content code,.rst-content tt,code {
	white-space:nowrap;max-width:100%;
	background:#fff;border:1px solid #e1e4e5;
	font-size:90%;
	padding:0 5px;
	font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;
	color:#e74c3c;
	overflow-x:auto
}

/* コードブロック<pre></pre>*/
.rst-content .linenodiv pre,.rst-content div[class^=highlight] pre,.rst-content pre.literal-block {
	font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;
	font-size:14px;
	line-height:1.4
	}

/* リストの中の<img>*/
li a img {
	margin: 5px 0px 10px 0px;
}

/* Footnote参照の表示を [数字] 形式に統一 */
a.footnote-reference {
    vertical-align: baseline;
}

a.footnote-reference::before {
    content: "[";
}

a.footnote-reference::after {
    content: "]";
}