@charset 'utf-8';

/* ----------------------- Browser Default Initialization */
html {
    overflow-y: scroll;
}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
    margin: 0; padding: 0;
}
address, caption, cite, code, dfn, em, strong, th, var {
    font-style: normal;
}
table {
    border-collapse: collapse; border-spacing: 0;
}
caption, th {
    text-align: left;
}
q:before, q:after {
    content: '';
}
object, embed {
    vertical-align: top;
}
hr, legend {
    display: none;
}
h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
}
img, abbr, acronym, fieldset {
    border: 0;
}
li {
    list-style-type: none;
}

/* ----- HTML再定義 ------------------------------------ */
body {
    font-family: "verdana", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", "Sans-Serif";
    color: #666;
    line-height: 150%;
    background-color: #FFF;
}

html>/**/body {
    font-size: 12px;
}

* + html body {
    font-family: "メイリオ", "Meiryo";
}

p, li, dt, dd, address {
    color: #666;
    line-height: 1.4;
}
p {
    margin-bottom: 15px;
}
ul {
    margin: 0px 0px 20px 20px;
}
ul li ol li {
    margin: 0px 20px 0px 25px;
}
ul li ol {
    margin-bottom: 10px;
}
em {
    font-weight: bold;
}
img {
    margin-right: 10px;
    margin-bottom: 5px;
    border: 0px;
}
object {
    margin-left: 10px;
}

pre {
    width: 430px;
    margin: 10px;
    padding: 5px;
    border: 1px solid #EEEEEE;
    overflow: auto;
}
code, var, kbd {
    color: #000080;
    font-family: 'ＭＳ ゴシック', monospace;
    line-height: 1.2;
}
blockquote {
    margin: 10px;
    border-left: 2px solid #7777AA;
}
blockquote p {
    color: #999999;
}

form fieldset {
    border: 0px solid #000000;
}
form legend {
    display: none;
}
form input, form select {
    margin-right: 1px;
    padding: 1px;
    font-size: 90%;
}
@media screen {
    form input, form select {
        font-family: Verdana, Arial, sans-serif;
    }
}
form select {
    margin-top: 1px;
}
form p input {
    text-align: center;
}
form textarea {
    padding: 1px;
    font-family: 'ＭＳ ゴシック', Osaka, monospace;
    line-height: 1.2;
}

table {
    margin-bottom: 10px;
    border: 1px solid #666680;
    border-collapse: collapse;
}
table tr th {
    padding: 5px;
    border: 1px solid #AAAAAA;
    background-color: #EEEEEE;
    text-align: center;
}
table tr td {
    padding: 5px;
    border: 1px solid #AAAAAA;
}
table tr td input {
    margin: -2px;
}

a, a:link, a:visited {
    text-decoration: none;
    color: #333;
}
a:hover {
    text-decoration: underline;
    color: #333;
}
a:active {
    text-decoration: underline;
    color: #333;
}

/* ----- 基本構造 -------------------------------------- */
div#container {
    width: 800px;
    margin: 0px auto;
    border-left: 1px solid #000;
    border-right: 1px solid #000;
    background-color: #FFFFFF;
}

div#header {
    clear: both;
    width: 780px;
    height: 110px;
    padding: 10px;
    background: #CCCC66;
    font-size: 150%;
    color: #333;
}

/* PC端隐藏菜单 */
div#menu {
    display: none; /* 默认隐藏菜单 */
}

div#menu {
    float: none;
    clear: both;
    margin-bottom: 10px;
    background-color: #FFF;
}

div#menu ul {
    padding: 5px 10px;
}
div#menu ul li {
    display: inline;
    float: right;
    margin-right: 10px;
}

div#navigation {
    width: 220px;
    float: right;
}
div#logs {
    float: left;
}
div#diary, div#comment, div#trackback {
    margin: 0px 15px;
}

div#page, div#navi, div#contents, div#work, div#form, div#canvas, div#env, div#status {
    float: none;
    clear: both;
    padding: 0px 15px;
}
div#footer {
    float: none;
    clear: both;
}

/* ----- ヘッダー -------------------------------------- */
@media screen {
    div#header h1 a {
        font-family: Verdana, Arial, sans-serif;
    }
}
#globalNavi {
    width: 790px;
    height: 20px;
    background: #FFCC66;
    margin: 0px;
    padding-left: 10px;
    /*for mac-ie5.x*/
    /*\*//*/
    overflow: hidden;
    /**/
}
#globalNavi a {
    margin: 0px 5px;
    list-style: none;
}

#globalNavi li {
    float: left;
    list-style-type: none;
}

#globalNavi .gnavi02 {
    margin-left: 10px;
    margin-right: 5px;
}

/* ----- メニュー -------------------------------------- */
div#menu h2 {
    display: none;
}

div#menu ul {
    padding: 5px 10px;
}
div#menu ul li {
    display: inline;
    float: right;
    margin-right: 10px;
}

/* ----- ナビゲーション -------------------------------- */
div#navigation h2 {
    margin: 7px 7px 17px 7px;
    padding: 5px;
    color: #000;
    background-color: #CCCC66;
}

div#navigation ul {
    margin: 0px 10px 0px 12px;
}
div#navigation ul li {
    margin: 0px 0px 0px 0px;
    list-style-type: none;
}
div#navigation ul li ul {
    margin: 0px 0px 0px 20px;
}

div#navigation dl {
    margin: 0px 10px 0px 12px;
}
div#navigation dl dt {
}
div#navigation dl dd {
}

div#navigation form dl {
}
div#navigation form dl dt {
    display: none;
}
div#navigation form dl dd {
}
div#navigation form p {
    margin-left: 12px;
    margin-bottom: 0px;
}

div#navigation table {
    width: 180px;
    margin: -2px 0px 7px 7px;
    border: 0px solid #AAAAAA;
}
@media screen {
    div#navigation table {
        margin: -2px auto 7px auto;
    }
}
div#navigation table tr th {
    padding: 5px;
    border: 0px solid #AAAAAA;
    background-color: #FFFFFF;
    text-align: left;
}
div#navigation table tr td {
    padding: 3px;
    border: 0px solid #AAAAAA;
    text-align: center;
}
@media screen {
    div#navigation table tr td {
        padding: 5px;
    }
}

div#navigation .day {
    color: #444444;
}
div#navigation .satday {
    color: #4444CC;
}
div#navigation .sunday {
    color: #CC4444;
}
div#navigation .today {
    background-color: #EEEEEE;
}

div#navigation .calender {
    margin: 2px 10px;
}
div#navigation .calender li {
    display: inline;
    margin-right: 10px;
}

div#navigation .block {
    margin-right: 15px;
    margin-bottom: 10px;
    padding-bottom: 20px;
    border: 1px solid #000;
}

/* ----- 記事一覧 -------------------------------------- */
div#logs {
    width: 498px;
}
html>body div#logs {
    width: 580px; /* PC端固定宽度 */
}

div#diary .diary {
    margin-bottom: 10px;
    padding: 2px;
    border: 1px solid #000;
}

div#diary h2 {
    display: none;
}
div#diary h3 {
    margin: 5px 5px 20px 5px;
    padding: 5px;
    color: #000;
    background-color: #CCCC66;
}
div#diary h4 {
    margin: 10px;
}

div#diary .text * {
    font-size: x-small;
}
html>body div#diary .text * {
    font-size: small;
}
div#diary .text p {
    margin: 15px 10px;
}
div#diary .text ul {
    margin: 15px 30px;
}
div#diary .text ol {
    margin: 15px 40px;
}

div#diary .info {
    margin: 5px 10px;
    text-align: right;
}
div#diary .info * {
    font-size: 10px;
}
div#diary .info li {
    display: inline;
    margin-left: 5px;
}

div#diary .list {
    border: 1px solid #AAAAAA;
    margin: 0px 0px 10px 20px;
    padding: 5px 10px;
}
div#diary .list h4 {
    border-bottom: 1px solid #CCCCCC;
    margin: 0px 0px 15px 0px;
    padding: 3px 5px;
    color: #444444;
    background-color: #FFFFFF;
}
div#diary .list ul {
    margin: 0px 0px 10px 20px;
}
div#diary .list dl dt {
    margin: 0px 5px;
    font-weight: bold;
}
div#diary .list dl dd {
    margin: 10px 10px 0px 15px;
}

div#trackback h2 {
    margin-bottom: 15px;
    padding: 5px;
    border-top: 3px double #999999;
    border-bottom: 3px double #999999;
}
div#trackback dl {
    margin-bottom: 10px;
    padding: 2px 2px 10px 2px;
    border: 1px solid #AAAAAA;
}
div#trackback dl dt {
    margin-top: 10px;
    margin-left: 10px;
}
div#trackback dl dd {
    margin-left: 30px;
}

div#comment .comment {
    margin-bottom: 10px;
    padding: 2px 2px 10px 2px;
    border: 1px solid #AAAAAA;
}

div#comment h2 {
    margin-bottom: 15px;
    padding: 5px;
    border-top: 3px double #999999;
    border-bottom: 3px double #999999;
}
div#comment h3 {
    margin: 5px 5px 10px 5px;
    padding: 5px;
}

div#comment .text * {
    font-size: x-small;
}
html>body div#comment .text * {
    font-size: small;
}
div#comment .text p {
    margin: 10px;
}

/* ----- ページ移動 ------------------------------------ */
div#page h2 {
    display: none;
}

div#page ul {
    margin: 0px;
}
div#page ul li {
    display: inline;
    margin-right: 10px;
}

/* ----- ナビゲーション -------------------------------- */
div#navi h2 {
    display: none;
}

div#navi ul {
    margin: 5px 0px;
    text-align: right;
}
div#navi ul li {
    display: inline;
    margin-left: 5px;
}

div#navi form dl {
}
div#navi form dl dt {
    display: none;
}
div#navi form dl dd {
    float: left;
}
div#navi form input {
    padding: 0px;
}

/* ----- コンテンツ ------------------------------------ */
div#contents h2 {
    margin-bottom: 15px;
    padding: 5px;
    border-top: 3px double #999999;
    border-bottom: 3px double #999999;
}
div#contents h3 {
    margin-bottom: 15px;
    padding: 3px 0px;
    border-bottom: 1px double #999999;
}
div#contents h4 {
    margin-bottom: 10px;
}

div#contents dl {
    margin-bottom: 20px;
}
div#contents dl dt {
    margin-top: 10px;
}
div#contents dl dd {
    margin-left: 30px;
}

/* ----- 処理選択 -------------------------------------- */
div#work h2 {
    margin-bottom: 15px;
    padding: 5px;
    border-top: 3px double #999999;
    border-bottom: 3px double #999999;
}

div#work form {
    margin: 10px 0px;
}
div#work form dl dt {
    display: none;
}
div#work form dl dd {
    float: left;
}
div#work form input {
    padding: 0px;
}

/* ----- フォーム -------------------------------------- */
div#form h2 {
    margin-bottom: 15px;
    padding: 5px;
    border-top: 3px double #999999;
    border-bottom: 3px double #999999;
}

div#form form {
    margin-bottom: 10px;
}
div#form form dl {
    margin-bottom: 20px;
}
div#form form dl dt {
    float: left;
    clear: left;
    width: 5em;
}
div#form form dl dd {
}
div#form form dl dd textarea {
    margin-top: 2px;
}
div#form form ul {
    margin: 0px 0px 20px 0px;
}
div#form form ul li {
    list-style-type: none;
}

/* ----- 環境設定 -------------------------------------- */
div#env h2 {
    margin-bottom: 15px;
    padding: 5px;
    border-top: 3px double #999999;
    border-bottom: 3px double #999999;
}
div#env h3 {
    margin-bottom: 15px;
    padding: 5px;
    background-color: #EEEEEE;
}

div#env dl {
    margin-bottom: 20px;
}
div#env dl dd {
    margin-bottom: 10px;
}

div#env form {
    margin-bottom: 20px;
}
div#env form p {
    margin-bottom: 20px;
}

/* ----- キャンバス ------------------------------------ */
div#canvas h2 {
    margin-bottom: 15px;
    padding: 5px;
    border-top: 3px double #999999;
    border-bottom: 3px double #999999;
}
div#canvas applet {
    margin-bottom: 15px;
}

/* ----- ステータス ------------------------------------ */
div#status h2 {
    margin-bottom: 15px;
    padding: 5px;
    border-top: 3px double #999999;
    border-bottom: 3px double #999999;
}
div#status h3 {
    margin-bottom: 15px;
    padding: 3px 0px;
    border-bottom: 1px double #999999;
}
div#status h4 {
    margin-bottom: 10px;
}

div#status dl {
    margin-bottom: 20px;
}
div#status dl dt {
    float: left;
    clear: left;
    width: 10em;
}
div#status dl dd {
}

/* ----- フッター -------------------------------------- */
div#footer address {
    padding: 10px 15px 20px 15px;
    color: #000;
    background-color: #CCCC66;
}

/* ----- 個別指定 -------------------------------------- */
.new {
    color: #FF0000;
}

/* ----- 手机端样式 ------------------------------------ */
@media only screen and (max-width: 768px) {
    div#container {
        width: 100%;
        border-left: none;
        border-right: none;
    }

    div#header {
        width: 100%;
        padding: 10px 5px;
        font-size: 120%;
    }

    div#navigation {
        width: 100%;
        float: none;
    }

    div#logs {
        width: 100%;
        float: none;
    }

    html>body div#logs {
        width: 100%; /* 手机端宽度自适应 */
        box-sizing: border-box; /* 确保内边距和边框不增加宽度 */
        padding: 0 10px; /* 添加适当的内边距，避免内容贴边 */
    }

    div#diary, div#comment, div#trackback {
        margin: 0px 5px;
    }

    #globalNavi {
        width: 100%;
        padding-left: 5px;
    }

    div#menu {
        display: block; /* 显示菜单 */
        position: relative; /* 为折叠按钮定位 */
        margin-bottom: 10px;
        background-color: #FFF;
    }

    div#menu ul {
        display: none; /* 默认隐藏菜单项 */
        padding: 0;
        margin: 0;
        background-color: #f9f9f9;
        border: 1px solid #ddd;
    }

    div#menu ul li {
        display: block; /* 每个菜单项单独一行 */
        float: none;
        margin: 0;
        padding: 10px;
        border-bottom: 1px solid #ddd;
    }

    div#menu ul li:last-child {
        border-bottom: none; /* 最后一个菜单项去掉边框 */
    }

    /* 折叠按钮样式 */
    div#menu .menu-toggle {
        display: block; /* 显示折叠按钮 */
        padding: 10px;
        background-color: #CCCC66;
        color: #333;
        cursor: pointer;
    }

    /* 展开菜单时的样式 */
    div#menu.active ul {
        display: block; /* 显示菜单项 */
    }
}

    div#navigation table {
        width: 100%;
    }

    div#footer address {
        padding: 10px 5px 20px 5px;
    }
}