@charset "utf-8";



/* 基本設定
-----------------------------------------------------------------------------------------*/
body {
	margin: 0;
	padding: 0;

	color:#333333;
	font-family:"メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", HiraKakuPro-W3, "ヒラギノ角ゴ Pro W3", "MS P ゴシック", verdana, sans-serif;

	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
}
@media print{
	body {
		font-size:10px;
	}
}
img {
	border:0;
	vertical-align: bottom;
}
a {
	color:#666666;
	text-decoration:none;
}
a:hover {
	color:#888888;
}

/* Material iconsを利用する */
.material-icons {
	display:inline-block;
	padding:4px;
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	color:#000000;
	line-height: 1;
	text-transform: none;
	/* WebKitブラウザサポート */
	-webkit-font-smoothing: antialiased;
	/* Chrome、Safariサポート */
	text-rendering: optimizeLegibility;
	/* Firefoxサポート */
	-moz-osx-font-smoothing: grayscale;
	/* IEサポート */
	font-feature-settings: 'liga';
}
a.material-icons:hover {
	border-radius: 20px;
	background:#f3f3f3;
	color:#000000;
	text-decoration:none;
}

/*スクロールバー*/
::-webkit-scrollbar {
	width: 8px;
}
::-webkit-scrollbar-track {
	box-shadow: inset 0 0 6px rgba(0, 0, 0, .1);
}
::-webkit-scrollbar-thumb {
	background-color: rgba(204, 204, 204, 100);
	box-shadow:0 0 0 1px rgba(255, 255, 255, .3);
}

.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
}



/* header
-----------------------------------------------------------------------------------------*/
#header {
	display:block;

	position:fixed;
	z-index:10;
	left:0;
	top:0;

	width:100%;
	height:100%;
}
#header h1 {
	position:absolute;
	z-index:100;
	left:0;
	top:0;

	border-bottom:1px solid #cccccc;

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

	width:calc(100% - 20px);
	height:25px;

	font-size:1.2em;
	line-height: 140%;
	text-align : left;
}
#header h1 img {
	height:25px;
}
#header > p {
	display:none;

	position:fixed;
	z-index:100;
	right:2px;
	top:2px;

	margin: 0;
	padding: 0;
	line-height: 100%;
}
@media screen and (max-width: 1024px){
	#header > p {
		display:block;
	}
}



/* navigation
-----------------------------------------------------------------------------------------*/
nav#navigation {
	display:block;
}
nav#navigation > div > p {
	position:absolute;
	z-index:100;
	right:10px;
	top:2px;

	margin: 0;
	padding: 0;

	font-size:0.8em;
	color:#666666;
	line-height: 100%;
	text-align : right;
}
nav#navigation > div > p span {
	display:inline-block;
	margin-top:10px;
	vertical-align:top;
}
nav#navigation > div > p a.material-icons {
	margin-right: 4px;
	color:#666666;
}
nav#navigation > div > div {
	position:absolute;
	z-index:100;
	left:0;
	top:36px;

	border-right:1px solid #cccccc;

	margin: 0;
	padding: 0;

	width:160px;
	height:calc(100% - 36px);

	font-size:0.8em;

	overflow:auto;
}
nav#navigation > div > div ul {
	margin: 10px;
	padding: 0;
	list-style:none;
}
nav#navigation > div > div ul li {
	margin: 0;
	padding: 0;
}
nav#navigation > div > div ul li a {
	display:block;
	margin: 0;
	padding: 5px;
}
nav#navigation > div > div ul li a:hover {
	background:#eeeeee;
}
nav#navigation > div > div dl {
	margin: 24px 0 0 0;
	padding: 0;
}
nav#navigation > div > div dl dt {
	position:relative;
	margin: 0 10px;
	padding: 5px;
	font-size:1.1em;
	font-weight:bold;
}
nav#navigation > div > div dl.folder dt {
	cursor:pointer;
}
nav#navigation > div > div dl.folder dt:hover {
	background:#eeeeee;
}
nav#navigation > div > div dl.folder.close dt:after {
	position:absolute;
	right:4px;
	font-family: 'Material Icons';
	content:"keyboard_arrow_down";
	font-size:1.4em;
}
nav#navigation > div > div dl.folder.open dt:after {
	position:absolute;
	right:4px;
	font-family: 'Material Icons';
	content:"keyboard_arrow_up";
	font-size:1.4em;
}
nav#navigation > div > div dl dd {
	margin: 0;
	padding: 0;
}
nav#navigation > div > div dl.folder dd {
	display:none;
}

@media screen and (max-width: 1024px){
	nav#navigation {
		display:none;
		z-index:1000;
		position:fixed;
		top:36px;
		right:0;
		width:160px;
		height:calc(100% - 36px);
		overflow:hidden;
	}
	nav#navigation > div {
		position:absolute;
		left:auto;
		right:-160px;
		top:0;
		background:#fafafa;
		border:0;
		width:100%;
		height:100%;
	}
	nav#navigation > div > p {
		position:static;
		margin: 0;
		padding: 10px 0;
		text-align:center;
	}
	nav#navigation > div > p a.material-icons {
		margin: 0 2px;
	}
	nav#navigation > div > div {
		position:static;
	}
}



/* section
-----------------------------------------------------------------------------------------*/
#main {
	display:block;

	position:absolute;
	z-index:20;
	right:0;
	top:36px;

	background:#f3f3f3;

	margin: 0;
	padding: 0;

	width: calc(100% - 160px);
	height:calc(100% - 36px);

	font-size:0.9em;

	overflow:auto;
}
#main header {
	display:block; 
	background:#ffffff;
	margin: 0 0 20px 0;
	padding: 16px 10px 10px 10px;
}
#main header h2 {
	margin: 0;
	padding: 0;
	line-height: 100%;
}
#main header h2 span {
	display:inline-block;
	margin: 0;
	padding: 6px 0;
	font-size:0.8em;
	color:#333333;
	line-height: 100%;
	text-align : left;
	font-weight:normal;
}
#main header h2 a.material-icons {
	margin-left: 8px;
	font-size:16px;
	color:#666666;
	vertical-align:middle;
}
#main form.search_panel {
	margin: 0 20px 20px 20px;
	padding: 0;

	font-size:0.8em;
	color: #000000;
	line-height: 160%;
	text-align : left;
}
#main form.search_panel input {
	width:auto;
}
@media screen and (max-width: 1024px){
	#main {
		width:100%;
	}
	#main form.search_panel {
		margin: 0 10px 20px 10px;
	}
}
@media screen and (max-width: 600px){
	#main {
		font-size:0.8em;
	}
}

#main > section {
	display:block;
	box-shadow:2px 2px 4px #cccccc;

	margin: 0 10px 10px 10px;
	padding: 0;

	vertical-align:top;
}
#main > section article {
	background:#ffffff;
	margin:0;
	padding:20px 10px;
}
#main > section article form {
	margin:0;
	padding:20px 0 0 0;
}
#main > section article h3 {
	border-left:4px solid #aaaaaa;

	margin: 40px 0 20px 0;
	padding: 2px 0 1px 4px;

	font-size:1.0em;
	line-height: 100%;
	text-align : left;
	font-weight:normal;
}
#main > section article *:first-child {
	margin-top:0;
}
#main > section article h3 a {
	text-decoration:underline;
}
#main > section article p {
	margin:20px 0 0 0;
	padding:0;

	font-size:0.9em;
	line-height: 160%;
}
#main > section article p.add a {
	display:inline-block;
	background:#eeeeee;
	margin:0;
	padding:12px 24px 12px 10px;
	font-size:1.0em;
	line-height: 100%;
	text-align : left;
}
#main > section article p.add a:after {
	position:absolute;
	content:"＋";
}
#main > section table.search_result {
	border-spacing:0;

	border-top:1px solid #cccccc;
	border-right:1px solid #cccccc;

	margin: 0;
	padding: 0;

	width:auto;

	font-size:0.8em;
	color: #000000;
	line-height: 140%;
	text-align : left;
}
#main > section table.search_result tr {
	cursor:pointer;
}
#main > section table.search_result tr:hover td {
	background:#f3f3f3;
}
#main > section table.search_result tr:hover td a.material-icons:hover {
	background:#ffffff;
}
#main > section table.search_result tr th {
	background:#eeeeee;
	border:0;

	border-bottom:1px solid #cccccc;
	border-left:1px solid #cccccc;

	margin:  0;
	padding: 2px 4px;

	text-align : center;
	font-weight:normal;
}
#main > section table.search_result tr td {
	border-bottom:1px solid #cccccc;
	border-left:1px solid #cccccc;

	margin:  0;
	padding: 2px 4px;
}
#main > section table.search_result tr td.button {
	text-align:center;
}
#main > section table.search_result tr td.button a,
#main > section table.search_result tr td.button span {
	display:inline-block;
	border-radius:8px;
	background:#000000;
	margin:  0;
	padding: 4px 4px;
	font-size:0.8em;
	color:#ffffff;
	line-height:100%;
}
#main > section table.search_result tr td.button a.now,
#main > section table.search_result tr td.button span.now {
	background:#ff0000;
}
#main > section table.search_result tr td.button a:hover {
	background:#666666;
}

#main > section p.icons {
	margin: 0 0 10px 0;
	padding: 0;
}

#main > section table.detail {
	border-spacing:0;

	border-top:1px solid #cccccc;
	border-right:1px solid #cccccc;

	margin: 0;
	padding: 0;

	width:auto;

	font-size:0.8em;
	color: #000000;
	line-height: 140%;
	text-align : left;
}
#main > section table.detail tr th {
	background:#eeeeee;
	border:0;

	border-bottom:1px solid #cccccc;
	border-left:1px solid #cccccc;

	margin:  0;
	padding: 2px 4px;

	text-align : left;
	font-weight:normal;
}
#main > section table.detail tr td {
	border-bottom:1px solid #cccccc;
	border-left:1px solid #cccccc;

	margin:  0;
	padding: 2px 4px;
}

#main > section table.search_replace {
	border-spacing:0;

	border-top:2px solid #666666;
	border-right:2px solid #666666;
	border-bottom:2px solid #666666;
	border-left:2px solid #666666;

	margin: 0;
	padding: 0;

	width:auto;

	font-size:0.8em;
	color: #000000;
	line-height: 140%;
	text-align : left;
}
#main > section table.search_replace tr th {
	background:#eeeeee;
	border:0;

	margin:  0;
	padding: 2px 4px;

	text-align : center;
	font-weight:normal;
}
#main > section table.search_replace tr td {
	margin:  0;
	padding: 2px 4px;
}
#main > section table.search_replace tr td span.replace {
	color:#ff0000;
	font-weight:bold;
	cursor:pointer;
}
#main > section table.search_replace tr td span.replace:hover {
	background:#ff0000;
	color:#ffffff;
}
#main > section table.search_replace tr td span.no_replace {
	color:#ff0000;
	font-weight:bold;
}

#main > section .scroll table {
	width:100%;
	white-space: nowrap;
}
#main > section .scroll{
	overflow: auto;　　　　/*tableをスクロールさせる*/
	white-space: nowrap;　　/*tableのセル内にある文字の折り返しを禁止*/
}
#main > section .scroll::-webkit-scrollbar{　　/*tableにスクロールバーを追加*/
	height: 5px;
}
#main > section .scroll::-webkit-scrollbar-track{　　/*tableにスクロールバーを追加*/
	background: #F1F1F1;
}
#main > section .scroll::-webkit-scrollbar-thumb {　　/*tableにスクロールバーを追加*/
	background: #BCBCBC;
}



/* pagination
-----------------------------------------------------------------------------------------*/
#main > section ul.pagination {
	margin: 30px 0 0 0;
	padding: 0;
	list-style:none;
}
#main > section ul.pagination li {
	display:inline-block;
	margin: 0 0 8px 0;
	padding: 0;
}
#main > section ul.pagination li a {
	display:block;

	border:1px solid #cccccc;
	border-radius:4px;

	margin: 0;
	padding: 10px;

	font-size:0.9em;
	color:#333333;
	line-height:100%;
	text-align:center;
}
#main > section ul.pagination li.current a {
	background:#eeeeee;
}
#main > section ul.pagination li a:hover {
	background:#eeeeee;
}



/* inputform
-----------------------------------------------------------------------------------------*/
div#inputform_bg {
	display:none;

	z-index:1000;
	position:fixed;
	top:0;
	left:0;

	background: rgba(0, 0, 0, 0.5);

	width:100%;
	height:100%;

	margin: 0;
	padding: 0;

	text-align:center;
}
iframe.inputform {
	display:none;

	z-index:1000;
	position:fixed;
	top:0;
	left:0;

	border:0;

    margin:4px 0 0 0;
	padding: 0;

	width:320px;
	height:680px;

	overflow: hidden;
}
iframe.inputform.estimate {
	width:740px;
}
