/*  Typo
----------------------------------------------- */

a:link, a:visited
{
    text-decoration: underline;
    color:#EC4413;
}
a:active { 	text-decoration: underline; }
a:hover { text-decoration:none; }


h1 { font:bold 18px/140% "Trebuchet MS", Verdana, sans-serif; }
h2 { font:bold 14px/140% "Trebuchet MS", Verdana, sans-serif; }

p {	font: 11px/140% Verdana, Geneva, Arial, Helvetica, sans-serif;}

/*  Layout
----------------------------------------------- */

body {
    background: #333333 url(https://u.jimcdn.com/cms/o/s63f1c09f0784bbd1/userlayout/img/bg.gif?t=1734777991) no-repeat top left;
    padding:35px 0 0 0;
    margin:0;
    font: 11px/140% Verdana, Geneva, Arial, Helvetica, sans-serif;
}

#container
{
    margin:0 auto;
    width:834px;
    background:white;
}

#header
{
    padding:17px;
}

#header h1,
#header a
{
    padding:0;
    font-family:"Helvetica","Lucida Sans Unicode",Tahoma,Verdana,Arial,Helvetica,sans-serif;
    font-size:30px;
    font-weight:normal;
    text-decoration:none;
    line-height:1.3em;
    color:#666666;
    text-align:right;
}

#header a:hover { text-decoration:none;  }


#navigation
{
    float:left;
    width:220px;
    padding:17px;

}
#sidebar
{
    padding-top:10px;
}

#content
{
    float:right;

    width:530px;
    padding:17px;

}

#footer
{
    clear:both;
    margin-top:10px;
    background:url(https://u.jimcdn.com/cms/o/s63f1c09f0784bbd1/userlayout/img/footer-bg.gif?t=1734777992) repeat-x top;
    height:65px;
}

#footer .gutter 
{
    height:30px;
    padding:35px 15px 0 90px;
}

/*  Navigation
----------------------------------------------- */

ul.mainNav1,
ul.mainNav2
{
    margin:0;
    padding: 0;
}


ul.mainNav1 li,
ul.mainNav2 li
{
    display: inline;
    margin: 0;	
    padding: 0;
}


ul.mainNav1 li a,
ul.mainNav2 li a
{
    font:normal 11px/140% Verdana, Geneva, Arial, Helvetica, sans-serif;
    text-decoration: none;
    display: block;
    color:#333;
    border-bottom:1px solid #CCC;
}


ul.mainNav1 li a { padding:4px 4px 4px 4px; }
ul.mainNav2 li a { padding:4px 4px 4px 14px; }
ul.mainNav3 li a { padding:4px 4px 4px 24px; }


ul.mainNav1 a:hover
{
    background:#EEE;
    color:black;
}

ul.mainNav1 a.current { font-weight:bold; }

/*  Tree View (のすたるじあ ツリービュー)
----------------------------------------------- */

/* フォルダ行 */
#nst-tree-root .nst-toggle { display: none; }

#nst-tree-root .nst-folder-label {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 4px 4px 4px 4px;
    cursor: pointer;
    color: #333;
    user-select: none;
    line-height: 140%;
    border-bottom: 1px solid #CCC;
    text-decoration: none;
    font: normal 11px/140% Verdana, Geneva, Arial, Helvetica, sans-serif;
}
#nst-tree-root .nst-folder-label:hover { background: #EEE; color: black; }

/* 末端リンク（既存 a:link の color:#EC4413 を上書き） */
#nst-tree-root a.nst-leaf,
#nst-tree-root a.nst-leaf:link,
#nst-tree-root a.nst-leaf:visited {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 4px 4px 4px 4px;
    color: #333;
    text-decoration: none;
    line-height: 140%;
    border-bottom: 1px solid #CCC;
    font: normal 11px/140% Verdana, Geneva, Arial, Helvetica, sans-serif;
}
#nst-tree-root a.nst-leaf:hover {
    background: #EEE;
    color: black;
    text-decoration: none;
}
#nst-tree-root a.nst-leaf.active,
#nst-tree-root a.nst-leaf.active:visited {
    font-weight: bold;
    color: #333;
}

/* 子要素の開閉 */
#nst-tree-root .nst-children         { display: none; padding-left: 10px; }
#nst-tree-root .nst-toggle:checked ~ .nst-children { display: block; }

/* 矢印アイコン */
#nst-tree-root .nst-arrow {
    width: 12px;
    height: 12px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
#nst-tree-root .nst-arrow::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-left: 6px solid #aaa;
    transition: transform .18s;
}
#nst-tree-root .nst-toggle:checked ~ .nst-folder-label .nst-arrow::before {
    transform: rotate(90deg);
}

/* SVGアイコン共通 */
#nst-tree-root .nst-icon   { width: 15px; height: 15px; flex-shrink: 0; }
#nst-tree-root .nst-spacer { width: 12px; flex-shrink: 0; }

/* フォルダ開閉アイコン切り替え */
#nst-tree-root .nst-icon-fo { display: none; }
#nst-tree-root .nst-toggle:checked ~ .nst-folder-label .nst-icon-fc { display: none; }
#nst-tree-root .nst-toggle:checked ~ .nst-folder-label .nst-icon-fo { display: inline; }

/*  Content iframe エリア
----------------------------------------------- */
#nst-content-area {
    width: 100%;
    height: 560px;  /* ■幅調整時にあわせて変更してください */
    display: flex;
    flex-direction: column;
}
#nst-placeholder {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: #999;
    font: 11px/140% Verdana, Geneva, Arial, Helvetica, sans-serif;
    text-align: center;
    border: 1px dashed #CCC;
}
#nst-frame {
    width: 100%;
    flex: 1;
    border: 1px solid #CCC;
    display: none;
}