* {
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

body {

	width: 1760px;
	margin: 10px auto;
	font-family: 'trebuchet MS', 'Lucida sans', Arial;
	font-size: 14px;
	color: #444;
	background-color: #fff;
	-webkit-print-color-adjust: exact;
	print-color-adjust: exact;
}

hr {
	border: 0;
	height: 0;
	border-top: 1px solid rgba(0, 0, 0, 0.1);
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	margin: 0;

}

table {
	border-collapse: collapse;
	/* IE7 and lower */
	border-spacing: 0;
}

h1 {
	margin: 0;
	font-size: 20px;
	padding: 0.4em 0.5em;
	/*文字の上下 左右の余白*/
	color: #494949;
	/*文字色*/
	background: #f4f4f4;
	/*背景色*/
	border-left: solid 5px #d2d2d2;
	/*左線*/
	border-bottom: solid 3px #d7d7d7;
	/*下線*/
}

h2 {
	margin: 0;
	margin-top: 5px;
	margin-bottom: 5px;
	width: 200px;
	font-size: 14px;
	color: #505050;
	/*文字色*/
	padding: 0.5em;
	/*文字周りの余白*/
	display: block;
	/*おまじない*/
	line-height: 1.3;
	/*行高*/
	background: #dadada;
	/*背景色*/

	border-radius: 25px 0px 0px 25px;
	/*左側の角を丸く*/
}

h2:before {
	content: '●';
	color: white;
	margin-right: 8px;
}

h3 {
	padding-left: 10px;
	border-bottom: 2px solid #ccc;
}

h4 {
	padding-left: 10px;
	width: 20em;
	border-bottom: 2px dotted #ccc;
}

h5 {
	position: relative;
	width: 10em;
	padding: 5px 5px 5px 42px;
	background: #77c3df;
	font-size: 12px;
	color: white;
	margin-left: 0px;
	line-height: 1.3;
	z-index: -1;
}

h5:before {
	position: absolute;
	content: '';
	left: -2px;
	top: -2px;
	border: none;
	border-left: solid 40px white;
	border-bottom: solid 79px transparent;
	z-index: -2
}

p {
	line-height: 28px;
}

.company_table {
	width: 900px;
	border: solid #ccc 1px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	-webkit-box-shadow: 0 1px 1px #ccc;
	-moz-box-shadow: 0 1px 1px #ccc;
	box-shadow: 0 1px 1px #ccc;
}



.company_table tr:hover {
	background: #fbf8e9;
	-o-transition: all 0.1s ease-in-out;
	-webkit-transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-ms-transition: all 0.1s ease-in-out;
	transition: all 0.1s ease-in-out;
}

.company_table td,
.company_table th {
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
	padding: 10px;
	text-align: left;
}

.company_table th {

	background-color: #d8d8d8;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#fcebeb), to(#d8d8d8));
	background-image: -webkit-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -moz-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -ms-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -o-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: linear-gradient(top, #d8d8d8, #d8d8d8);
	-webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	-moz-box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	border-top: none;
	text-shadow: 0 1px 0 rgba(255, 255, 255, .5);
	text-align: center;
}

.company_table td:first-child,
.company_table th:first-child {
	border-left: none;

}

.company_table tr:first-child th:first-child {
	-moz-border-radius: 6px 0 0 0;
	-webkit-border-radius: 6px 0 0 0;
	border-radius: 6px 0 0 0;
}

.company_table tr:first-child th:last-child {
	-moz-border-radius: 0 6px 0 0;
	-webkit-border-radius: 0 6px 0 0;
	border-radius: 0 6px 0 0;
}

.company_table tr:first-child td {
	border-top: 0px solid #ccc;
}

.company_table th:only-child {
	-moz-border-radius: 6px 6px 0 0;
	-webkit-border-radius: 6px 6px 0 0;
	border-radius: 6px 6px 0 0;
}

.company_table tr:last-child td:first-child {
	-moz-border-radius: 0 0 0 6px;
	-webkit-border-radius: 0 0 0 6px;
	border-radius: 0 0 0 6px;
}

.company_table tr:last-child td:last-child {
	-moz-border-radius: 0 0 6px 0;
	-webkit-border-radius: 0 0 6px 0;
	border-radius: 0 0 6px 0;
}

.company_table tr:last-child th:first-child {
	-moz-border-radius: 0 0 0 6px;
	-webkit-border-radius: 0 0 0 6px;
	border-radius: 0 0 0 6px;
}

.company_table .section_title {
	text-align: center;
}

.one_title {
	-moz-border-radius: 6px 6px 0 0 !important;
	-webkit-border-radius: 6px 6px 0 0 !important;
	border-radius: 6px 6px 0 0 !important;
}

.company_table input[type="text"] {
	width: 300px;
}

.company_table .tradename {
	width: 200px;
}

.company_table .ceo {
	width: 100px;
}

.company_table .category {
	width: 150px;
}

.company_table .action {
	width: 150px;
}


.manage_etc_table {
	width: 900px;
	border: solid #ccc 1px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	-webkit-box-shadow: 0 1px 1px #ccc;
	-moz-box-shadow: 0 1px 1px #ccc;
	box-shadow: 0 1px 1px #ccc;
	margin-bottom: 15px;
}

.manage_etc_table td,
.manage_etc_table th {
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
	padding: 5px;
	font-size: 12px;
	text-align: left;
}

.manage_etc_table th {

	background-color: #e2e2e2;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#e2e2e2));
	background-image: -webkit-linear-gradient(top, #f6f6f6, #e2e2e2);
	background-image: -moz-linear-gradient(top, #f6f6f6, #e2e2e2);
	background-image: -ms-linear-gradient(top, #f6f6f6, #e2e2e2);
	background-image: -o-linear-gradient(top, #f6f6f6, #e2e2e2);
	background-image: linear-gradient(top, #f6f6f6, #e2e2e2);
	-webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	-moz-box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	border-top: none;
	text-shadow: 0 1px 0 rgba(255, 255, 255, .5);
	text-align: center;
}

.manage_etc_table tr:first-child th:first-child {
	-moz-border-radius: 6px 0 0 0;
	-webkit-border-radius: 6px 0 0 0;
	border-radius: 6px 0 0 0;
}

.manage_etc_table tr:first-child th:last-child {
	-moz-border-radius: 0 6px 0 0;
	-webkit-border-radius: 0 6px 0 0;
	border-radius: 0 6px 0 0;
}

.manage_etc_table tr:last-child td:last-child {
	-moz-border-radius: 0 0 6px 0;
	-webkit-border-radius: 0 0 6px 0;
	border-radius: 0 0 6px 0;
}

.manage_etc_table tr:last-child td:first-child {
	-moz-border-radius: 0 0 0 6px;
	-webkit-border-radius: 0 0 0 6px;
	border-radius: 0 0 0 6px;
}

.action {
	width: 100px;
}

.manage_etc_table input[type="text"] {
	width: 90px;
}

.history {
	width: 1760px;
	box-sizing: border-box;
}


.history .modified {
	table-layout: fixed;
	width: 115px;
}

.history .expenses {
	table-layout: fixed;
	width: 90px;
}

.history .summary {
	table-layout: fixed;
	width: 100px;
}

.history .period {
	table-layout: fixed;
	width: 50px;
}

.history .trading_date {
	table-layout: fixed;
	width: 70px;
}

.history .target_date {
	table-layout: fixed;
	width: 100px;
}

.history .edit_user {
	text-align: center;
}


.history .payment_type {
	table-layout: fixed;
	width: 50px;
}

.history .in_out {
	table-layout: fixed;
	width: 50px;
}

.history .target {
	table-layout: fixed;
	width: 100px;
}

.history .amount {
	table-layout: fixed;
	width: 100px;
}

.history .delete {
	table-layout: fixed;
	width: 30px;
}

.color td {
	background-color: #ffefef;
}

.white td {
	background-color: #ffffff;
}

.entry_item {

	box-sizing: border-box;
}

.entry_item td {
	box-sizing: border-box;
}

.entry_item tr:first-child td {
	border-top: 0;
}

.entry_item tr:last-child td {
	border-bottom: 0;
}

.entry_item tr td:first-child {
	border-left: 0;
}

.entry_item tr td:last-child {
	border-right: 0;
}

.entry_item .payments {
	width: 90px;
	text-align: right;
}

.debit_memo,
.credit_memo {
	box-sizing: border-box;
	width: 200px;
}

.debit_memo tr:first-child td,
.credit_memo tr:first-child td {
	border-top: 0;
}

.debit_memo tr:last-child td,
.credit_memo tr:last-child td {
	border-bottom: 0;
}


.debit_memo tr td {
	border-left: 0;
}

.credit_memo tr td {
	border-right: 0;
}


.entry_memo {
	width: 199px;
	box-sizing: border-box;
	float: left;
}


.manage {
	width: 550px;
}

.manage th {
	border-top: 1px solid #ccc;
}

.manage tr:first-child th {
	border-top: none;
}

.manage tr:first-child th:first-child {
	-moz-border-radius: 6px 6px 0 0;
	-webkit-border-radius: 6px 6px 0 0;
	border-radius: 6px 6px 0 0;
}

.text-right {
	text-align: right !important;
}

.calendar_table {
	width: 1000px;
}

table td .month {
	height: 500px;
	overflow: scroll;
}

fieldset .month {
	padding: 10px;
}

table td .month_all {
	width: 200px;
	height: 500px;
	overflow: scroll;
}

fieldset .month_all {
	padding: 10px;
}

.red {
	background-color: #d94542;
	color: #FFF;
	padding: 5px;
	font-size: 12px;
	-moz-border-radius: 3px 3px 3px 3px;
	-webkit-border-radius: 3px 3px 3px 3px;
	border-radius: 3px 3px 3px 3px;
	margin: 2px;
	font-weight: bold;
}

.green {
	background-color: #a7d050;
	color: #FFF;
	padding: 5px;
	font-size: 12px;
	-moz-border-radius: 3px 3px 3px 3px;
	-webkit-border-radius: 3px 3px 3px 3px;
	border-radius: 3px 3px 3px 3px;
	margin: 2px;
	font-weight: bold;
}

.open .red,
.open .green {
	font-weight: normal;
}

.chk_btn {
	font-size: 12px;
	padding: 1px;
}

#menu ul,
#sub_menu ul,
#third_menu ul {
	padding: 0;
	font-size: 0;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-pack: start;
	-moz-box-pack: start;
	-webkit-flex-pack: start;
	-moz-flex-pack: start;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	-moz-justify-content: flex-start;
	justify-content: flex-start;
}

#menu li,
#sub_menu li,
#third_menu li {
	padding: 5px;
	background-color: #d8d8d8;
	font-size: 15px;
	text-align: center;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#d8d8d8), to(#d8d8d8));
	background-image: -webkit-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -moz-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -ms-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -o-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: linear-gradient(top, #d8d8d8, #d8d8d8);
	-webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	-moz-box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	border-top: none;
	text-shadow: 0 1px 0 rgba(255, 255, 255, .5);
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	list-style: none;
	font-weight: bold;

}

#third_menu li {
	font-size: 12px;
}

#menu li:first-child,
#sub_menu li:first-child,
#third_menu li:first-child {
	border-right: 1px solid #ccc;
	-moz-border-radius: 6px 0 0 6px;
	-webkit-border-radius: 6px 0 0 6px;
	border-radius: 6px 0 0 6px;
}

#menu li:last-child,
#sub_menu li:last-child,
#third_menu li:last-child {
	border-right: 1px solid #ccc;
	-moz-border-radius: 0 6px 6px 0;
	-webkit-border-radius: 0 6px 6px 0;
	border-radius: 0 6px 6px 0;
}

#menu li:hover,
#sub_menu li:hover,
#third_menu li:hover {
	background-color: #9d9a9a;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#9d9a9a), to(#d8d8d8));
	background-image: -webkit-linear-gradient(top, #9d9a9a, #d8d8d8);
	background-image: -moz-linear-gradient(top, #9d9a9a, #d8d8d8);
	background-image: -ms-linear-gradient(top, #9d9a9a, #d8d8d8);
	background-image: -o-linear-gradient(top, #9d9a9a, #d8d8d8);
	background-image: linear-gradient(top, #9d9a9a, #d8d8d8);
}

#menu li.focus,
#sub_menu li.focus,
#third_menu li.focus {
	background-color: #9d9a9a;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#9d9a9a), to(#d8d8d8));
	background-image: -webkit-linear-gradient(top, #9d9a9a, #d8d8d8);
	background-image: -moz-linear-gradient(top, #9d9a9a, #d8d8d8);
	background-image: -ms-linear-gradient(top, #9d9a9a, #d8d8d8);
	background-image: -o-linear-gradient(top, #9d9a9a, #d8d8d8);
	background-image: linear-gradient(top, #9d9a9a, #d8d8d8);
}

#menu li a,
#sub_menu li a,
#third_menu li a {
	display: block;
	text-decoration: none;
	color: #444;
}


#menu,
#sub_menu,
#third_menu {
	width: 100%;
	display: flex;
	margin-bottom: 10px;
}

#edit_menu {
	width: 900px;
	margin-right: 20px;

}

#sub_edit_menu {
	margin-left: 0px;
}

#edit_menu li {
	width: 25%;
}

#sub_edit_menu li {
	min-width: 150px;
}

#third_menu {
	margin-left: 0px;
}

#third_menu li {
	width: 100px;
}


#function_menu {
	width: 250px;
	margin: 0;
}

#function_menu li {
	width: 50%;
}

#table_container {
	width: 900px;
	margin-bottom: 20px;
}

#message,
.message {
	color: #FF0000;
	font-weight: bold;
}

.errorMessage {
	color: #FF0000;
	font-weight: bold;
}

ol {
	padding-left: 20px;
	margin-top: 5px;
	margin-bottom: 5px;
}

#head {
	margin-top: 0;
	padding: 5px;
	background-color: #d8d8d8;
	font-size: 15px;
	text-align: center;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#d8d8d8), to(#d8d8d8));
	background-image: -webkit-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -moz-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -ms-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -o-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: linear-gradient(top, #d8d8d8, #d8d8d8);
	-webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	-moz-box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	border-top: none;
	text-shadow: 0 1px 0 rgba(255, 255, 255, .5);
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	list-style: none;
	-moz-border-radius: 6px 6px 6px 6px;
	-webkit-border-radius: 6px 6px 6px 6px;
	border-radius: 6px 6px 6px 6px;

}

fieldset {
	padding: 20px;
	border: 1px solid #ccc;
	box-shadow: 0 2px 6px rgba(0, 0, 0, .15);
	border-radius: 6px 6px 6px 6px;
}

legend {
	font-size: 20px;
	font-weight: bold;
	padding: 5px;
}

label {
	font-size: 12px;
}

.payment {
	border: 1px solid #666;
	padding: 5px;
	padding-left: 10px;
	padding-right: 10px;
	margin: 5px;


}


#house,
#house2,
#other,
#other2,
#payment_date {
	width: 100px;
	margin: 5px;
	position: relative;
}

.u_price {
	width: 80px;
	margin: 5px;
	position: relative;
}

.quantity {
	width: 30px;
	margin: 5px;
	position: relative;
}


#other_company {
	width: 200px;
}

#from_company,
#in_out {
	margin: 5px;
}


.amount {
	margin: 5px;
	width: 100px;
}


#left_box {
	float: left;
	width: 560px;
	padding: 5px;
	border: 1px solid #ccc;
	box-shadow: 0 2px 6px rgba(0, 0, 0, .15);
	border-radius: 6px 6px 6px 6px
}

#right_box {
	float: right;
	width: 400px;
	padding: 5px;
	border: 1px solid #ccc;
	box-shadow: 0 2px 6px rgba(0, 0, 0, .15);
	border-radius: 6px 6px 6px 6px
}

.btn {
	cursor: pointer;

}

.menu_link {
	display: inline-block;
	background-color: #EFEFEF;
	border: 1px solid #CCC;
	border-radius: 5px;
	padding-left: 5px;
	padding-right: 5px;
	margin-bottom: 5px;
	margin-top: 5px;
	color: #333;
	font-weight: bold;
	text-decoration: none;
}


.menu_link:hover {
	background-color: #CCC;
}

.active {
	background-color: #CCC;
}

.no_link {
	display: inline-block;
	background-color: #EFEFEF;
	border: 1px solid #CCC;
	border-radius: 5px;
	padding-left: 5px;
	padding-right: 5px;
	margin-bottom: 5px;
	margin-top: 5px;
	font-size: 12px;
	color: #333;
	font-weight: bold;
	text-decoration: none;
}

.no_link:hover {
	background-color: #CCC;
}


.no_link_act {
	display: inline-block;
	background-color: #CCC;
	border: 1px solid #CCC;
	border-radius: 5px;
	padding-left: 5px;
	padding-right: 5px;
	margin-bottom: 5px;
	margin-top: 5px;
	font-size: 12px;
	color: #333;
	font-weight: bold;
	text-decoration: none;
}


button,
.button {
	display: inline-block;
	background-color: #EFEFEF;
	border: 1px solid #CCC;
	border-radius: 5px;
	padding-left: 5px;
	padding-right: 5px;
	color: #333;
	font-weight: bold;
	text-decoration: none;
	cursor: pointer;
}

button:hover {
	background-color: #CCC;
}

fieldset {

	border: 1px solid #ccc;
	width: 300px;
}

/*
fieldset label{
	display:inline-block;
	margin-right:5px;
	width: 80px;
}
*/

fieldset input {
	width: 200px;
}

fieldset input[type=checkbox] {
	width: 20px;
	color: red;
}

fieldset legend {
	background-color: #d8d8d8;
	font-size: 15px;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#d8d8d8), to(#d8d8d8));
	background-image: -webkit-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -moz-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -ms-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -o-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: linear-gradient(top, #d8d8d8, #d8d8d8);
}

fieldset #login,
fieldset #signUp {
	width: 100px;
	margin-left: 200px;
}


.user_table {
	width: 600px;
	border: solid #ccc 1px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	-webkit-box-shadow: 0 1px 1px #ccc;
	-moz-box-shadow: 0 1px 1px #ccc;
	box-shadow: 0 1px 1px #ccc;
	margin-bottom: 10px;
}

.user_table input {
	width: 100px;
}

.user_table th {
	background-color: #d8d8d8;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#d8d8d8), to(#d8d8d8));
	background-image: -webkit-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -moz-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -ms-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: -o-linear-gradient(top, #d8d8d8, #d8d8d8);
	background-image: linear-gradient(top, #d8d8d8, #d8d8d8);
	-webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	-moz-box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	border-top: none;
	text-shadow: 0 1px 0 rgba(255, 255, 255, .5);
	text-align: center;

}

.user_table td,
.user_table th {
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
	padding: 10px;
	text-align: left;
}

.user_table tr {
	width: 400px;
}

.input_manage {
	width: 950px;
}

#loginForm label {
	display: inline-block;
	width: 70px;
}

#loginForm br {
	height: 150px;
}


#assign label {
	font-size: 15px;
}

#assign li {
	list-style: none;
	border-bottom: dashed 1px #CCC;
}



.relation_company {
	background-color: #EFEFEF;
	border: 1px solid #CCC;
	border-radius: 5px;
	padding-left: 5px;
	padding-right: 5px;
	margin-bottom: 5px;
	margin-top: 5px;
	color: #333;
	font-weight: bold;
	text-decoration: none;
	white-space: nowrap;
}


.box_left {
	width: 400px;
	float: left;
}

.box_right {
	float: left;
}


/* 給与テーブル　*/

table.type1 {
	margin: 2.0vw;
	border-collapse: separate;
	border-spacing: 0;
	text-align: left;
	line-height: 2.0;
	border-top: 2px solid #ccc;
	border-left: 2px solid #ccc;
	margin-left: auto;
	margin-right: auto;
}

table.type1 th {
	font-family: 'Mplus 1p';
	font-size: 3.0vw;
	padding: 8px;
	font-weight: 500;
	vertical-align: middle;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
	background: #eee;
}

table.type1 td {
	font-family: 'Mplus 1p';
	font-size: 1.5vw;
	font-weight: 400;
	padding: 10px;
	vertical-align: middle;
	border-right: 2px solid #ccc;
	border-bottom: 2px solid #ccc;
}

table.type2 {
	margin: 0.5vw;
	border-collapse: separate;
	border-spacing: 0;
	text-align: left;
	line-height: 1.5;
	border-top: 2px solid #ccc;
	border-left: 2px solid #ccc;
	margin-left: 20px;
	margin-right: auto;
}

table.type2 th {
	font-family: 'Mplus 1p';
	font-size: 1.0vw;
	padding: 10px;
	font-weight: 500;
	vertical-align: middle;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
	background: #eee;
}

table.type2 td {
	font-family: 'Mplus 1p';
	font-size: 12px;
	font-weight: 400;
	padding: 10px;
	vertical-align: middle;
	border-right: 2px solid #ccc;
	border-bottom: 2px solid #ccc;
}

table.type2 input {
	width: 100px;
}

#p_total,
#d_total,
#t_total {
	font-size: 20px;
}

/*
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
　　　　　　　　株式会社設立チェックシート
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
*/

.establishment_sheet {
	width: 1200px;
	border: 2px solid;
	font-size: 12px;
}

.establishment_sheet caption {
	text-align: left;
	font-size: 16px;
}

.establishment_sheet td,
.establishment_sheet th {
	border-left: 1px solid #CCC;
	border-bottom: 1px solid #000;
}

.establishment_sheet input[type="text"] {
	width: 80%;
}

td>table {
	margin-left: -1px;
	z-index: 0;
}

.establishment_sheet_sub {

	width: 100%;
	font-size: 12px;
}

.establishment_sheet_sub td {
	border-left: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
}

.need_document {
	width: 800px;
	border: 1px solid;
	margin-top: 10px;
}


.double_entry table {
	border-collapse: collapse;
	border: 1px solid #ccc;
	margin: 0 auto;
}

.double_entry td,
.double_entry th {
	border-collapse: collapse;
	border: 1px solid #ccc;

	padding: 0px;
}

.double_entry th {
	background: #EFEFEF;
}

/*
tbody{
	
}
*/


.document_link {
	font-size: 20px;
	display: inline-block;
	background-color: #EFEFEF;
	border: 1px solid #CCC;
	border-radius: 5px;
	padding-left: 5px;
	padding-right: 5px;
	margin-bottom: 5px;
	margin-top: 5px;
	color: #333;
	font-weight: bold;
	text-decoration: none;
}

.check_sheet_item_name {
	display: inline-block;
	width: 300px;

}

.file {
	display: none;

}

.tag_name {
	font-weight: bold;
}

.fixed_btn {
	position: fixed;
	bottom: 10px;
	right: 10px;
	padding: 6px 40px;
}

.fixed_btn_top {
	position: fixed;
	bottom: 60px;
	right: 10px;
	padding: 6px 40px;
}


table {
	border-collapse: collapse;
}

td,
th {
	border: 1px solid #ccc;
	padding: 10px;
}

th {
	background: #EFEFEF;
}

/**
checkbox Toggle
*/

.checkbox_wrap {
	height: 25px;
	position: relative;
	display: inline-block;
	padding-right: 60px;
}

.checkbox_wrap input {
	opacity: 0;
}

.checkbox_wrap label {
	width: 50px;
	height: 25px;
	box-sizing: border-box;
	float: left;
	border-radius: 50px;
	position: relative;
	cursor: pointer;
	transition: .3s ease;
	box-shadow: 0 0 4px rgba(0, 0, 0, .3);
}

.checkbox_wrap input:focus+label,
.checkbox_wrap input:focus+label:before {
	box-shadow: 0 0 4px #34abff;
}

.checkbox_wrap input:checked+label {
	background: #4BD865;
}

.checkbox_wrap label:before {
	content: '';
	width: 20px;
	height: 20px;
	position: absolute;
	background: white;
	left: 5px;
	top: 2.5px;
	box-sizing: border-box;
	color: black;
	border-radius: 50px;
	box-shadow: 0 0 4px rgba(0, 0, 0, .3);
	transition: .3s;
}

.checkbox_wrap input[type=checkbox]:checked+label:before {
	left: 26px;
}

.checkbox_wrap label span {
	width: 100px;
	position: absolute;
	left: calc(100% + 15px);
	font-size: 12px;
	line-height: 25px;
}


.parent_child:hover {
	cursor: pointer;
}


.label_tag {
	background-color: #CCC;
	border-left: 3px solid #666;
	padding: 5px;
	border-radius: 3px;
	font-weight: bold;
}


ul.pattern {
	padding: 0.5em 1em 0.5em 2.3em;
	position: relative;
}

ul li.pattern {
	line-height: 1.5;
	padding: 0.5em 0;
	list-style-type: none !important;
}

ul li.pattern:before {

	font-family: "Font Awesome 5 Free";
	content: "\f138";
	/*アイコンの種類*/
	font-weight: 900;
	position: absolute;
	left: 1em;
	/*左端からのアイコンまでの距離*/
	color: #5f5f5f;
	/*アイコン色*/
}

ul li.pattern a {
	text-decoration: none;
	color: #333;
}

ul li.pattern a:hover {
	background-color: #CCC;
}


/*********************************
******請求書基本シート用のCSS
*********************************/

.base_sheet {
	width: 1200px;
	padding: 10px;
	margin: 10px;
	border: solid 1px #000;

}

.estimated_sheet,
.invoice_sheet,
.invoice_sheetB,
.invoice_sheetBrent {
	width: 800px;

	margin: 10px;

}

.estimated_sheet label {
	width: 50px;
	font-size: 14px;
}


.Claimant {
	padding-left: 10px;
	margin-top: 20px;
	width: 200px;
	float: left;
}

.Claimant label {
	width: 60px;
	font-size: 12px;
	border-bottom: 3px double #CCC;

}

.Claimant p {
	display: block;
	font-size: 12px;
	margin: 0;
	margin-top: 5px;
	white-space: nowrap;
	border-bottom: 1px solid #CCC;
}

.base_sheet p {
	line-height: normal;
}

.box_title {
	text-align: center;
}

.base_sheet .title {
	font-size: 24px;
	font-weight: bold;
	border-bottom: solid 3px #000;
	padding-left: 50px;
	padding-right: 50px;
}


.estimated_sheet .title,
.invoice_sheet .title {
	font-size: 24px;
	letter-spacing: 1em;
	font-weight: bold;
	padding-left: 50px;
	padding-right: 50px;
	border-bottom: 2px solid #000;

}


.box_top {
	height: 350px;
	/* border: solid 1px #000; */
}

.estimated_sheet .box_top,
.invoice_sheet .box_top {
	height: 300px;
}

.box_left {
	width: 65%;
	height: 100%;
	float: left;
}

.invoice_sheet .box_left {
	width: 55%;
	height: 100%;
	float: left;
}

.box_right {
	width: 35%;
	height: 100%;
	float: left;
}

.estimated_sheet .box_center {
	width: 5%;
	height: 100%;
	float: left;
}

.estimated_sheet .box_right {
	width: 30%;
	float: left;
}

.invoice_sheet .box_right {
	width: 45%;
	height: 100%;
	float: left;
}


.TargetName {
	font-size: 18px;
	margin-top: 50px;
	width: 330px;
	max-width: 330px;
	border: 1px solid #CCC;
	border-bottom: 1px solid #000;
	text-align: center;
}


span.TargetName {
	border: 0;
	border-bottom: 1px solid #000;
	display: inline-block;
}

.sama {
	font-size: 13px;
}

label.address,
label.building,
label.targetContact,
label.targetPhoneNo {
	font-size: 12px;
	width: auto;
	height: 24px;
	margin-right: 10px;
	display: inline-block;
}

input[type="text"].address,
input[type="text"].building {
	font-size: 12px;
	border: 1px solid #CCC;
	width: 300px;
}

input[type="text"].targetContact,
input[type="text"].targetPhoneNo {
	font-size: 12px;
	border: 1px solid #CCC;
}

.invoice_total {
	font-size: 20px;
	font-weight: bold;
}

.label_total {
	text-align: center;
	display: inline-block;
	width: 100px;
}

.num_total {
	text-align: center;
	display: inline-block;
	width: 300px;
}

.invoice_total {
	width: 435px;
	border-bottom: solid 2px #000;
}

table.invoice_date {
	width: 100%;
	font-size: 12px;
}

table.invoice_date th {
	font-size: 12px;
}

table.invoice_date td {
	text-align: right;
}

table.invoice_date td,
table.invoice_date th {
	padding: 5px;
}

table.invoice_date input[type="text"] {
	width: 200px;
}

table.invoice_date .InvoiceNumber {
	text-align: right;
}


.company_info {
	margin-top: 50px;
}

.company_info p {
	margin: 2px;
}

.company_info label {
	font-size: 12px;
	width: 60px;
	height: 24px;
}

.company_info input[type="text"] {
	font-size: 12px;
	border: 1px solid #CCC;
}


table.invoice_base {
	width: 100%;
}

table.invoice_base th {
	font-size: 12px;

}

table.invoice_base th,
table.invoice_base td {
	padding: 0px;
	padding-left: 5px;
	padding-right: 5px;
	padding-top: 2px;
	padding-bottom: 2px;
	height: 22px;
}

table.invoice_base input[type="text"] {
	margin: 1px;
	width: 100%;
	border: 1px solid #CCC;
}

table.invoice_base th.left {
	text-align: left;
	padding-left: 20px;
}

table.invoice_base td.right,
table.invoice_base input[type="text"].right {
	text-align: right;
	width: 60px;
}

table.white_table {
	width: 100%;
}

.white_table th,
.white_table td {
	border: none;
	font-size: 13px;
	font-weight: normal;
	background-color: white;
	padding: 0;
	padding-left: 10px;
}

.invoice_sheetB .box_left {
	padding-top: 10px;
	width: 55%;
	white-space: nowrap;
}

.invoice_sheetB .box_center {
	padding-top: 10px;
	width: 2%;
	float: left;
	white-space: nowrap;
}

.invoice_sheetB .box_right {
	padding-top: 10px;
	width: 43%;
}


.invoice_sheetB .TargetName {
	font-weight: bold;
	font-size: 20px;
	vertical-align: text-bottom;
	border-bottom: 2px solid #000;
}

.invoice_sheetB .label_total {
	font-size: 16px;
}

.invoice_sheetB .invoice_total {
	width: 330px;
}

.invoice_sheetB .num_total {
	width: 230px;
}

.invoice_sheetB .box_top {
	height: 290px;
}

.line_table th,
.line_table td {
	border: 1px solid #000 !important;
	padding: 3px;
}

.line_table th {
	font-weight: bold;
	font-size: 11px;
}

.line_table td {
	height: 31px;
	text-align: center;
}

table.line_bold {
	margin-top: 20px;
}

.line_bold th,
.line_bold td {
	border: 2px solid #000;
	width: 50%;
	font-size: 15px;
	padding: 5px;
}

.ReceiptDate_box {
	margin-top: 10px;
	height: 20px;
	text-align: right;
}

.ReceiptDate {
	width: 45%;
	border-bottom: 1px solid #000;
	height: 20px;
	display: inline-block;
	text-align: left;
}

.text-bold {
	font-weight: bold !important;
}

.postscript {
	margin-top: 10px;
	border-bottom: 2px solid #000;

}

.invoice_list_table {
	font-size: 11px;
}

.stamp_img {
	width: 85px;
}

.stamp_margin {
	margin: 20px;
}

.invoice_sheetBrent .TargetName {
	margin-top: 10px;
}

.invoice_sheetBrent .box_left {
	padding-top: 10px;
	width: 55%;
	white-space: nowrap;
}

.invoice_sheetBrent .box_center {
	padding-top: 10px;
	width: 0%;
	float: left;
	white-space: nowrap;
}

.invoice_sheetBrent .box_right {
	padding-top: 10px;
	width: 45%;
}

.invoice_sheetBrent .title {
	border-bottom: 3px double #000;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
}

.min_font_table {
	margin-top: 10px;
}

.min_font_table td {
	font-size: 12px;
	height: 18px;
	padding: 1px;
}

.bank_account th {
	font-size: 14px;
}

.bank_account td {
	height: 20px;
	padding: 1px;
	font-size: 12px;
}

.subjectVAT_table table {
	border-collapse: separate;
}

.subjectVAT_table td {
	padding: 5px;
	font-size: 12px;
}

.subjectVAT_table th {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 1;
	font-size: 12px;
}

.subjectVAT_table .indent {
	width: 20px;
	height: 31px;

}

.subjectVAT_table input[type="number"] {
	width: 50px;
	text-align: right;
	-moz-appearance: textfield;
	appearance: textfield;
}

.no-spin::-webkit-inner-spin-button,
.no-spin::-webkit-outer-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
	-moz-appearance: textfield !important;
	appearance: textfield !important;
}

pre {
	/* font-family: monospace; */
	font-size: 12px;
}

.Recorded {
	padding: 5px;
	border-radius: 5px;
	margin: 3px;
	background-color: red;
	color: white;
	font-weight: bold;
	display: inline-block;
}

.csv_export {
	background-color: yellow;
	color: #000;
	padding: 3px;
	margin-left: 10px;
	text-decoration: none;
	border-radius: 3px;
	box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 1px 3px 1px;
}

.csv_export:hover {
	background-color: red;
	color: #FFF;

}


.box_base_money {
	margin-top: 20px;
}

.box_base_money input[type="number"] {
	text-align: right;
}

.box_base_money label {
	display: inline-block;
	text-align: center;
	width: 90px;
	font-size: 16px;
	background-color: #d8d8d8;
	padding: 5px;
	border-radius: 5px;
	box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 1px 3px 1px;
}

.box_cost_entry {
	width: 500px;
}


.box_cost_entry label {
	display: inline-block;
	text-align: center;
	width: 150px;
	font-size: 12px;
	font-weight: bold;
	background-color: #d7d6eb;
	padding: 2px;
	border-radius: 5px;
	box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 1px 3px 1px;

}

.box_cost_entry input[type="number"] {
	text-align: right;
	width: 200px;
}

input[type="checkbox"] {
	cursor: pointer;
}

.wrap_right {
	text-align: right;
}

.l_btn {
	font-size: 14px;
	padding: 5px 10px;
}

.wrap_table {
	display: table;
}

.wrap_table-cell {
	display: table-cell;
}

.sticky_table {
	width: 1000px;
	box-sizing: border-box;
}

.sticky_table thead {
	/* 縦スクロール時に固定する */
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	/* tbody内のセルより手前に表示する */
	z-index: 1;
}

.sticky_table thead th {
	position: relative;

}

.sticky_table thead th::before {
	content: "";

	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	border-bottom: 1px solid #CCC;
	border-right: 1px solid #CCC;
}

.ceo_error {
	float: left;
	padding-left: 10px;

}

.ceo_error p {
	margin: 0 0 5px 0;
	color: #FF0000;
}

.ceo_error .CEO_name {
	font-size: 1.5rem;
}

table.invoice {
	font-size: 0.7rem;
}

table.invoice tr td,
table.invoice tr th {
	width: 33%;
	text-align: center;
}

table.min_tax {
	margin-top: 15px;
}

table.min_tax tr th,
table.min_tax tr td {
	width: 33%;
	padding: 2px;
	text-align: center;
	border-color: #000;
	background-color: #FFF;
}

/*
LV
*/
.lv_list {
	list-style: none;
	margin: 0 0 0 20px;
	padding: 0;
}

.lv_list li {
	display: inline-block;
	padding: 0 15px;
	margin-right: 10px;
	background-color: #d8d8d8;
	border-radius: 5px;
	font-size: 0.8rem;
	cursor: pointer;
}

.lv_list li.active {
	background-color: #696969;
	color: #FFF;
	font-weight: bold;
}

#menus {
	display: none;
	width: 450px;
}

.menus,
.menus ul {
	list-style: none;
	padding-left: 20px;
}

.menus li span,
.ex_menus {
	display: inline-block;
	background-color: #eeeeee;
	padding: 3px;
	box-shadow: 0 0 5px rgba(0, 0, 0, .3);
	cursor: pointer;
	font-size: 12px;
}

.ex_menus {
	cursor: auto;
}

.menus label input {
	display: none;
}

.menus label input:checked+span,
.on {
	color: #FFF;
	background-color: #696969;
	font-weight: bold;
}

input.red {
	background-color: #FF0000;
	color: #FFFFFF;
	font-weight: bold;
}

.purpose input[type='text'] {
	width: 600px;
}