/*----------------------------------------------------
デフォルトCSS

CSS記述ポリシー
[1] HTML要素、class属性、id属性の組み合わせに基づく記述順序
    1. (X)HTMLの標準要素のみ
    2. class 属性のみ
    3. id 属性のみ
    4. (X)HTMLの標準要素+class 属性
    5. (X)HTMLの標準要素+id 属性
    6. class属性+id 属性
    7. (X)HTMLの標準要素+class属性+id 属性

[2] HTML要素の記述順序
-----------
body
-----------
div
span
-----------
a:  擬似要素
img
br
hr
p
h1
h2
h3
h4
h5
h6
-----------
form
label
input
textarea
select
optgroup
checkbox
radio
button
-----------
ul
ol
li

dl
dt
dd
-----------
table
caption
thead
tfoot
tbody
col
colgroup
row
rowgroup
tr
td
-----------
q
cite
code
pre
kbd
script
noscript
samp
-----------
ruby
rtc
rt
rbc
rb
rp
-----------

[3] css プロパティの記述順序
   レイアウト要素→装飾要素 の順に記述する

   重なり合う要素は、背景から手前へ

   上下左右の位置を個別に指定する場合は、
   top -> right -> bottom -> left
   と、上から時計回りで記述

visibility
display
content

position

float
clear

width
hight

margin
padding

font-size
font-weight
font-family

text-align

border
	border-width
	border-style
	border-color

background
	background-color
	background-image
	background-position
	background-repeat
	background-attachment

----------------------------------------------------*/

* {
	margin: 0;
	padding: 0;
	font-family: "MS Pゴシック", "Osaka", sans-serif;
}

body {

	width: auto;

	font-size: 0.9em;
	text-align: center;

	background-color: #ffffff;
	color: #393939;
}

a img {
	border: 0;
}

img {
	margin: 0px;
	padding: 0px;
	border: 0;
}

div {
}

span {
}

a:link {
	color: #273ae7;
}

a:hover {
	color: #0071e1;
}

a:hover img {
	background-color: #faf8e4;
}

a: active {
	color: #999999;
}

a:visited {
	color: #9353d9;
}

h1 {
	margin-bottom: 10px;
	padding: 10px;

	font-weight: bold;
	font-size: 1.6em;
	text-align: center;

	background-color: #900;
	color: #ffffff;
}

h2 {
	font-weight: bold;
	font-size: 1.4em;
	text-align: center;

	background-color: #900;
	color: #ffffff;
}

h3 {
	font-weight: bold;
	font-size: 1.2em;
	text-align: center;

	background-color: #900;
	color: #ffffff;
}

h4 {
	font-weight: bold;
	font-size: 0.9em;
	text-align: center;

	background-color: #900;
	color: #ffffff;
}

h5 {
	font-weight: bold;
	font-size: 0.8em;
	text-align: center;

	background-color: #fff;
	color: #900;
}

h6 {
	font-weight: bold;
	font-size: 0.7em;
	text-align: center;

	background-color: #fff;
	color: #900;
}


form {
	margin: 10px;
	padding: 20px 0;

	border: 1px solid #f7de00;
}

label {
	display: block;

	clear: both;
	float: left;

	width: 150px;

	margin-top: 10px;
	margin-right: 10px;

	font-weight: bold;
	text-align: right;

	color: #1f2e07;
}

label:after {
	clear: both;
	margin-top: 10px;
}

input,
textarea,
select,
checkbox,
radio {
	margin-top: 10px;
}

input,
textarea,
select,
checkbox,
radio {
	background-color: #ffffff;
}

input:after,
textarea:after,
select:after {
	clear: both;
}

button {
	cursor: pointer;
	border: 0px;
}

li {
	margin: 15px 30px 15px 30px;
}


dt {
	font-weight: bold;
}

dd {
	margin-left: 50px;

	color: #900;
}

table {
	border-collapse: collapse;
}

table,
thead,
tfoot,
tbody,
tr,
td {
	margin: 0;
	padding: 0;

	border: none;
}


div.submit,
div.reset {
	margin-left: 150px;
}

/*--------------------------------
メインブロック
--------------------------------*/

div#wrapper {
	margin: auto;
	width: 900px;

	text-align: justify;
}

div#head {
	height: 100%;
	min-height: 110px;

	background-image:  url("img/bg-logo-qr.gif");
	background-repeat: no-repeat;
	background-position: 0px 10px;
}

div#head a:link,
div#head a:visited,
div#head a:hover {
	font-weight: bold;
}

#main {
	clear: both;

	float: left;

	width: 800px;
	min-height: 500px;
}

#sub {
	float: right;

	width: 196px;
	min-height: 500px;

	text-align: center;

}

div#sub dl.side-menu dd {
	margin: 5px auto 5px auto;
}

div#sub * {

	margin-right: auto;
	margin-left: auto;
}

div#foot {
	clear: both;
	text-align: center;
	font-size: 0.7em;
}

div#footer-banners {
	height: 31px;
	text-align: center;
	border-top:1px solid #999;
	background-color: #ccc;
}

div.footer-banner {
	float: left;
	height: 31px;
	margin-left: 1px;
	margin-right: 1px;
}

div.footer-banner:after {
	display: block;
	content: " ";
	visibility: hidden;
	clear: both;
}

.footer-menu {
	clear: both;
	padding-top: 5px;
	border-top: 3px solid #900;
}

.footer-menu-item {
	margin: 0 5px;
}

#footer-copy {
	margin-top: 5px;
}

/*---------------------------------
メインブロック (inner)
---------------------------------*/
dl#header-menu {
	height: 100%;
}

dl#login-info a:link,
dl#login-info a:visited,
dl#header-menu a:link,
dl#header-menu a:visited {
	color:#993;
}

dl#login-info a:hover,
dl#header-menu a:hover {
	color:#993;
}

dl#login-info dd,
dl#header-menu dd {
	float: right;

	margin: 0 10px 5px 0;
	padding: 0 2px 0 2px;

	font-size: 0.8em;
}

dl#header-menu:after {
	display: block;
	content: " ";
	visibility: hidden;
	clear: both;
}

div#logo {
	margin-left:300px;
}

div#topic-path-top {
}

div#main-primary {
}

div#main-secondary {
}

div#topic-path-bottom {
}



/*--------------------------------
メッセージブロック

一般のコメント
comment-message

アクションの正常なレスポンス
result-message

アクションの例外レスポンス
error-message
--------------------------------*/

div.comment-message {

	margin: auto;
	padding: 20px;

	border: 1px solid #ffa317;

	background-color: #ffffff;
	color: #333f22;
}

div.result-message {

	margin: auto;
	padding: 20px;

	border: 1px solid #aad500;

	background-color: #ffffff;
	color: #587802;
}

div.error-message {
	padding: 20px;

	border: 1px solid #f0066c;

	font-weight: bold;
	color: #f0066c;
}

div.note-message {
	margin: auto;
	padding: 8px 20px 8px 20px;

	border: 1px solid #d4c770;

	font-size: 0.8em;

	background-color: #ffffff;
	color: #534fa2;
}

form div.comment-message,
form div.note-message,
form div.error-message {
	margin-left: 160px;
	padding: 10px;

	width: 300px;
}

div.important-option {
	margin: 20px;

	padding: 20px;

	text-align: center;

	font-size: 2em;

	border: 3px solid #ff6832;
}

div.tree div.leaf,
div.tree div.leaves {
	margin-left: 30px;
}

div.tree .has-child {
	text-decoration:  underline;
	color: #8a4950;
}

fieldset {
	margin: 10px;
	padding: 10px;
	border: 1px solid #aaaaaa;
}

legend {
	margin-left: 100px;
	padding: 3px 10px;
	border: 1px solid #aaaaaa;
}


/*

#head {
	background-color: #e7deb4;
}

#topic-path-top {
	background-color: #e7deb4;
}

#main {
	float: left;
	width: 80%;
}

#main-primary {
	width: 66%;
	float: right;
	padding: 0 10px 10px 10px;
}

#main-secondary {
	width: 30%;
	float: left;
}

#sub {
	width: 20%;
	float: right;
}

#topic-path-bottom {
	background-color: #587802;
	clear: both;
}

#foot {
	background-color: #333f22;
}
*/

div.inner-form {
	padding: 10px;
}


/*----------------------------
	form
----------------------------*/
fieldset.tree {

	min-height: 1px;
	margin-top: 10px;

	border: none;
}


div.horizontal-cb div.checkbox label {
	display: inline;
	margin: 0;
	padding: 0;
	width: 1em;
}

div.horizontal-cb div.checkbox{
	width: 1.2em;
	float: left;
	margin: 0;
}

.horizontal-cb {
}


.horizontal-cb:after {
	display: block;
	content: " ";
	visibility: hidden;
	clear: both;
}

/*-------------------------
vertical cb
-------------------------*/
.vertical-cb {
	margin-left: 160px;
}

.vertical-cb checkbox{
	display: inline;
}

.vertical-cb label {
}

.vertical-cb>.checkbox>label {
	display: inline;
	clear: both;
	float: none;
	text-align: left;
	font-weight: normal;
}


.vertical-radioes {
	margin-left: 160px;
}

.vertical-radio-input input{
	display: inline;
}

.vertical-radio-input label {
	display: inline;
	clear: both;
	float: none;
	text-align: left;
}

.vertical-radio-input label {
	font-weight: normal;
}



table.form {
	margin:  10px auto 10px auto;
	padding: 10px;

	border: none;
}

textarea#HashContentOutline,
textarea#HashContentNote,
textarea#HashContentContent{
	font-size: 0.8em;
}

span.indispensable {
	color: #f0066c;
}

/*------------------------------
	list
------------------------------*/


/*-------------------------------
	document
	(nmecha.net/docs/public/)
-------------------------------*/
dl.doclist {
	width: 400px;

	margin: 50px auto;

}

dd.doclist {
	margin: 15px auto;
	padding: 10px;

	font-size: 1.5em;
}

div.document {
	margin: 15px;

	padding: 10px;

	line-height: 1.3em;
}

/*-----------------------------
	owner
-----------------------------*/

div.inportant-option {
	border: 2px solid #ba9;
	width: 200px;
	margin: 15px auto;
	padding: 10px;
	text-align: center;
	font-size: 1.3em;
}

/*-----------------------------
	paging
-----------------------------*/
div.paging {
	text-align: center;
	clear: both;
}

div.paging span{
	padding: 0 3px;
}

/*---------------------------
	main-manu-list
---------------------------*/
div.nav {
	border-left: 1px solid silver;
}

#main-menu-list {
	border-bottom: 1px solid silver;
	background-color: #faf5ef;
}

div.nav:after {
	content: " ";
	display: block;
	visibility: hidden;
	height: 0;
	clear: both;
}

div.nav ul {
	height: 100%;
}

div.nav * {
	margin: 0;
	padding: 0;
	display: block;
}

div.nav a {
	min-width: 80px;
	text-decoration: none;
	background-color: #fff;
}

div.nav a:hover {
	background-color: #f0ead9;
}

div.nav li {
	float: left;

	min-width: 87px;

	margin-bottom: 3px;

	text-align: center;
	list-style:  none;
	white-space: nowrap;

	border-top: 1px solid silver;
	border-right: 1px solid silver;
	border-bottom: 1px solid silver;
}

div.nav li.selected {
	border-top: 1px solid #ffa317;
	border-right: 1px solid #ffa317;
	background-color: #ffc337;
	color: #101000;
}

#main-menu-list li.selected {
	background-color: #ffccc1;
}

div.nav a {
	display: block;
}

div.nav:after {
	content: " ";
	display: block;
	visibility: hidden;
	clear: both;
}


div.nav li.menu-item {
}



/*------------------------------
	workspace
------------------------------*/
div#workspace ,
div#workspace  * {
	margin: 0;
	padding: 0;
}

div#workspace {
	margin: 10px 20px 10px 140px;

	height: 100%;

//	border: 1px solid #999;
}

div#workspace div.submit {
	padding: 5px;
	font-size: 1.2em;
}

div#workspace div#tab-menu .menu {
	float: left;

	height: 20px;

	padding: 5px;

	border: 1px solid #999;
}

div#workspace div#tab-menu:after {
	content: "";
	display: block;
	clear: both;
}

div#tab-menu {
	height: 30px;
}

div#tab-menu .selected {
	height: 40px;
	border-bottom: 0px;
}
div#tab-menu .link {
	background-color:  #e6e2d9;
}
div#tab-menu .link:hover {
	background-color:  #f0e9e9;
}

div#workarea {
	border: 1px solid #acacac;
	min-height: 300px;
	padding: 20px;
}

/*----------------------------
	javascript form
-----------------------------*/

.list-edit-set * {
	margin: 0;
	padding: 0;
}

div.list-head {
	margin: 1px 0;
	padding: 2px 0;
	height: 100%;
	border: 1px solid silver;
	background-color: #eee;

}
div.list-head * {
	float: left;
	text-align: center;
}

div.list-head:after {
	content: " ";
	display: block;
	visibility: hidden;
	clear: both;
}

div.h-name {
	width: 100px;
	margin-right: 10px;
}

div.h-price-note {
	width: 50px;
	font-size: 0.7em;
}

div.h-price {
	width: 50px;
	margin-right: 10px;
}

div.h-price-after {
	width: 70px;
	margin-right: 10px;
	font-size: 0.7em;
}

div.h-note {
	width: 200px;
	margin-right: 20px;
}

div.h-action {
	width: 190px;
}



input.price-note {
	width: 50px;
}


input.price {
	width: 45px;
}

span.price-suff {
	padding-right: 3px;
}

input.price-after {
	width: 35px;
	padding-right: 10px;
}

input.note {
	margin-left: 10px;
	width: 220px;
}

textarea.note {
	margin-left: 130px;
	clear: both;
	width: 300px;
	height: 250px;
	font-size: 0.8em;
}


.list-edit-set .inputfield {
	width: 100px;
	margin-right: 10px;
}

.list-edit-set .inputfield input{
	width: 90px;
}

.list-edit-set .actions {
	width: 163px;
}


.list-edit-set .actions img {
	cursor: pointer;
}

.list-edit-set .move {
	margin: 0 3px;
}

.list-edit-set .move img {
	margin: 0 1px;
}

.list-edit-set .list-edit-section {
	height: 25px;
	border: 1px solid silver;
}

.list-edit-set .rich {
	height: 300px;
}

.list-edit-section * {
	float: left;
}

.list-edit-section .inputfield {
	clear: both;
}

.list-edit-fieldset .controllers {
	margin: 5px auto 0 20px;
}

.list-edit-fieldset .controllers img {
	cursor: pointer;
}

input.update {
 display: block;
 margin: auto;
 padding: 6px;
 font-size: 1.5em;
 border: 2px solid #f0b369;
 background-color: #ffffff;
 color: #696969;
}

input.update:hover {
	background-color: #fdf6cf;
	cursor: pointer;
}

#remove-btn,
#add-btn,
#reset-btn,
#update-btn {

	background-color: white;
	width: 182px;
	margin: 10px auto;

}

#public-submit-btn,
#public-edit-btn,
#public-remove-btn,
#public-add-btn,
#public-reset-btn,
#public-update-btn {

	cursor: pointer;
	background-color: white;
	border: 0px;
	width: 122px;
	height: 37px;
	margin: 10px auto;

}


