﻿@charset "UTF-8";

/*******************************************************************************
 * サイト設定
 *******************************************************************************/
/*******************************************************************************
 * 書式のリセット
 *******************************************************************************/
html, body, div, span, iframe, h1, h2, h3, h4, h5, h6, p, em, img, small, strong, var, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, nav, section, summary, time, mark, audio, video {
	margin:				0;
	padding:			0;
	border:				0;
	outline:			0;
	font-size:			100%;
	font-style:			normal;
	font-weight:		normal;
	vertical-align:		baseline;
	background:			transparent;
}
article, aside, figcaption, figure, footer, header, nav, section {
	display:			block;
}
html {
    display:			flex;
	flex-direction:		column;
	overflow-y:			scroll;
}
ul {
	list-style:			none;
}
a {
	margin:				0;
	padding:			0;
	font-size:			100%;
	vertical-align:		baseline;
	background:			transparent;
}
table {
	border-collapse:	collapse;
	border-spacing:		0;
}

img {
	max-width:			100%;
	height:				auto;
	border:				none;
	vertical-align:		middle;
}

/*********************************************************************
 * iOSのデフォルトスタイルをリセット
 *********************************************************************/
input, select, textarea {
	vertical-align:		middle;
	margin:				0;
	padding:			0;
	background:			none;
	border:				none;
	border-radius:		0;
	outline:			none;
	-webkit-appearance:	none;
	-moz-appearance:	none;
	appearance:			none;
	font-size:			16px;
}
select::-ms-expand {
    display:			none;
}
input {
	border-radius:		0;
	-webkit-box-sizing:	content-box;
	-webkit-appearance:	button;
	appearance:			button;
	border:				none;
	box-sizing:			border-box;
	outline:			none;
}
input::-webkit-search-decoration {
	display:			none;
}
input::focus {
	outline-offset:		-2px;
}
input::placeholder {
	color:				rgba(0, 0, 0, .4);
}
body {
    display:			flex;
	flex-direction:		column;
	width:				100%;
	min-height:			100vh;
	background:			#f3f3f3;
	font-size:			14px;
	font-family:		"Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	line-height:		1.7;
	color:				#333;
	min-width:			990px;
}
@media only screen and (max-width:800px){
	body{
		min-width:		0px;
	}
}

/*******************************************************************************
 * リンク
 *******************************************************************************/
a:link,
a:visited {
	color:	#333;
	text-decoration:	none;
}
a:hover,a:active {
	text-decoration:	none;
}
a.underline:link,
a.underline:visited {
	color:	#3f9ab8;
	text-decoration:	underline;
}
a.underline:hover,
a.underline:active {
	text-decoration:	none;
}

/*******************************************************************************
 * サイト幅
 *******************************************************************************/
.container {
	width:	990px;
}
@media only screen and (max-width:800px){
	.container {
		width:	100%;
	}
}

/*******************************************************************************
 * ログイン画面
 *******************************************************************************/
.wrap-login {
    display:			flex;
    align-items:		center;
	flex-grow:			1;
    justify-content:	center;
	background:			url('../../images/mainimage.png') 50% 50%;
	background-size:	cover;
}
.inner-contents {
	width:			100%;
	background:		rgba(255, 255, 255, .8);
	border:			solid #fff;
	border-width:	1px 0 1px 0;
	padding:		40px 0;
	margin:			0 auto;
}
.area-form {
	width:				600px;
	display:			flex;
	justify-content:	space-between;
	align-items:		center;
	margin:				0 auto;
}
.inner-contents a {
	color:				#333;
	line-height:		1;
	text-decoration:	underline;
}
.inner-contents a:hover {
	text-decoration:	none;
}
.area-form > figure {
	flex-shrink:	0;
	width:	250px;
}
.area-form > div {
	flex-grow:	1;
	padding-left:	30px;
}
.area-form input[type="text"],
.area-form input[type="password"] {
	width:	100%;
	height:	36px;
	background:	#fff;
	border:	solid 1px rgba(0, 0, 0, .2);
	border-radius:	3px;
	padding:	0 10px;
}

@media only screen and (max-width:800px){
	.inner-contents {
		width:	100%;
		border:	none;
		border-radius:	10px;
		padding:	30px;
		margin:	0 30px;
	}
	.area-form {
		width:	100%;
		display:	block;
	}
	.area-form > figure {
		width:	250px;
		margin:	0 auto 20px auto;
	}
	.area-form > div {
		padding-left:	0;
	}
}

/*******************************************************************************
 * ヘッダー
 *******************************************************************************/
.drower-btn {
	display:	none;
}
.sp-menu {
	display:	none;
}
.head-top {
	background:	#fff;
	box-shadow:	0px 2px 3px 1px rgba(0, 0, 0, .1);
}
.head-top > section {
	display:	flex;
	justify-content:	space-between;
	align-items:	center;
	width:	960px;
	margin:	0 auto;
}
.area-contact {
	display:		flex;
	align-items:	center;
}
.area-contact li {
	font-size:		12px;
	text-align:		center;
}

.area-contact li:nth-of-type(1) a,
.area-contact li:nth-of-type(2),
.area-contact li:nth-of-type(3) a {
	display:		block;
	color:			#fff;
	padding:		10px 20px;
}
.area-contact li:nth-of-type(1) a {
	background:		#34ac8a;
}
.area-contact li:nth-of-type(2) {
	background:		#46aae1;
}
.area-contact li:nth-of-type(3) a {
	background:		#e05745;
}

.area-contact li:nth-of-type(1) a::before,
.area-contact li:nth-of-type(2)::before,
.area-contact li:nth-of-type(3) a::before {
	content:		'';
	display:		block;
	width:			20px;
	height:			20px;
	margin:			0 auto 8px auto;
}
.area-contact li:nth-of-type(1) a::before {
	background:			url('../../images/ico-phone.png');
	background-size:	contain;
	
}
.area-contact li:nth-of-type(2)::before {
	background:			url('../../images/ico-mail.png');
	background-size:	contain;
}
.area-contact li:nth-of-type(3) a::before {
	background:			url('../../images/ico-fax.png');
	background-size:	contain;
}
.is-fixed {
	position:	fixed;
	top:		0;
	left:		0;
	z-index:	999;
	width:		100%;
}

/*******************************************************************************
 * ヘッダーメニュー
 *******************************************************************************/
.head-menu {
	list-style:			none;
	display:			flex;
	background-color:	#006400;
	align-items:		center;
	width:				960px;
	margin:				0 auto;
}
 
.head-menu li {
	width:				140px;
	text-align:			center;
	background-color:	#006400;
	height:				50px;
	line-height:		50px;
	margin-right:		2px;
}
 
.head-menu li a {
	text-decoration:	none;
	color:				#fff;
	font-weight:		bold;
	padding:			20px;
}

/*******************************************************************************
 * ダッシュボード用メニュー
 *******************************************************************************/
nav {
	display:	flex;
	justify-content:	space-between;
	flex-wrap:	wrap;
	width:	960px;
	margin:	0 auto;
}
nav::before,
nav::after {
	content:	'';
	display:	block;
	width:	calc((100% / 4) - 10px);
}
nav::before {
	order:	1;
}
nav > a {
	display:	block;
	width:	calc((100% / 4) - 10px);
	background:	#fff;
	border-style:	solid;
	border-width:	5px 0 0 5px;
	border-radius:	20px 0 20px 0;
	box-shadow:	0px 0px 6px -1px rgba(0, 0, 0, .2);
	margin-bottom:	14px;
	overflow:	hidden;
	transition:	.3s;
}
/*ボーダーカラー*/
nav > a:nth-of-type(1) {
	border-color:	rgba(63, 154, 184, .6);
}
nav > a:nth-of-type(2) {
	border-color:	rgba(90, 186, 92, .6);
}
nav > a:nth-of-type(3) {
	border-color:	rgba(234, 155, 28 , .6);
}
nav > a:nth-of-type(4) {
	border-color:	rgba(232, 94, 94, .6);
}
nav > a:nth-of-type(5) {
	border-color:	rgba(211, 205, 36, .6);
}
nav > a:nth-of-type(6) {
	border-color:	rgba(204, 204, 204, .6);
}
nav > a:nth-of-type(7) {
	border-color:	rgba(38, 153, 144, .3);
}

nav > a:hover {
	opacity:	.5;
}
nav > a > div {
	padding:	20px 15px;
}

/*テキストカラー*/
nav > a:nth-of-type(1) > div > dl dt {
	color:	#3f9ab8;
}
nav > a:nth-of-type(2) > div > dl dt {
	color:	#5aba5c ;
}
nav > a:nth-of-type(3) > div > dl dt {
	color:	#ea9b1c;
}
nav > a:nth-of-type(4) > div > dl dt {
	color:	#e85e5e ;
}
nav > a:nth-of-type(5) > div > dl dt {
	color:	#d3cd24;
}
nav > a:nth-of-type(6) > div > dl dt {
	color:	#aaa;
}
nav > a:nth-of-type(7) > div > dl dt {
	color:	#269990;
}
nav > a > div > figure {
	flex-shrink:	0;
	text-align:	center;
	margin-bottom:	10px;
}
nav > a > div > figure > img {
	width:		100%;
	height:		100%;
}
nav > a > div > dl > dt {
	font-size:	16px;
	font-weight:	bold;
	text-align:	center;
	margin-bottom:	10px;
}

@media only screen and (max-width:800px){
	.head-top {
		background:	#fff;
		box-shadow:	0px 2px 3px 1px rgba(0, 0, 0, .1);
	}
	.head-top > section {
		display:	block;
		width:	100%;
	}
	.head-top > section > h1 {
		padding:	20px;
		text-align:	center;
	}
	.area-contact li {
		width:	calc(100% / 3);
	}
	nav {
		width:	100%;
		padding:	0 15px;

	}
	nav::before,
	nav::after,
	nav > a {
		width:	calc((100% / 2) - 10px);
	}
}

@media only screen and (max-width:500px){
	header {
		position:	absolute;
		top:	0;
		left:	0;
		z-index:	5;
		width:	100%;
		transform:	translate3d(0,0,0);
	}
	.head-wrap {
		display:	none;
		height:	100vh;
		background:	rgba(0, 0, 0, .4);
	}
	.head-top > section > h1 {
		border-bottom:	solid 2px rgba(0, 0, 0, .1);
	}
	.drower-btn {
		display:	block;
		position:	fixed;
		top:	15px;
		right:	10px;
		width:	40px;
		height:	40px;
		background:	#3d6148;
		border-radius:	50%;
		cursor:	pointer;
		outline:	none;
		z-index:	1000;
	}
	.drower-btn span {
		display:	block;
		width:	24px;
		height:	2px;
		background:	#fff;
		transition:	0.4s;
	}
	.drower-btn span:nth-of-type(1) {
		position:	absolute;
		top:	9pt;
		left:	8px;
	}
	.drower-btn span:nth-of-type(2) {
		position:	absolute;
		top:	19px;
		left:	8px;
		opacity:	1;
	}
	.drower-btn span:nth-of-type(3) {
		position:	absolute;
		top:	26px;
		left:	8px;
	}
	.MenuOpen span:nth-of-type(1) {
		top:	19px;
		transform:	rotate(225deg);
	}
	.MenuOpen span:nth-of-type(2) {
		opacity:	0;
	}
	.MenuOpen span:nth-of-type(3) {
		top:	19px;
		transform:	rotate(-225deg);
	}
	.sp-menu {
		display:	block;
	}
	.sp-menu li {
		border-bottom:	solid 1px rgba(0, 0, 0, .1);
	}
	.sp-menu li a {
		position:	relative;
		display:	block;
		padding:	10px;
	}
	.sp-menu li a::after {
		position:	absolute;
		top:	50%;
		right:	10px;
		content:	'';
		display:	block;
		width:	6px;
		height:	6px;
		border:	solid #e05745;
		border-width:	1px 1px 0 0;
		transform:	translateY(-50%) rotate(45deg);
	}
	.area-contact {
		flex-wrap:		wrap;
	}
	.area-contact li {
		font-size:		16px;
		font-weight:	bold;
	}
	.area-contact li:nth-of-type(1), 
	.area-contact li:nth-of-type(2)	{
		width:			50%;
	}
	.area-contact li:nth-of-type(3) {
		width:			100%;
	}
	.area-contact li:nth-of-type(1) a,
	.area-contact li:nth-of-type(2),
	.area-contact li:nth-of-type(3) a {
		padding:		10px;
	}
	.area-contact li:nth-of-type(1) a::before,
	.area-contact li:nth-of-type(2)::before,
	.area-contact li:nth-of-type(3) a::before {
		display:		inline-block;
		margin:			0 8px 0 0;
		position:		relative;
		top:			4px;
	}
}

@media only screen and (max-width:400px){
	nav::before,
	nav::after,
	nav > a {
		width:	100%;
	}
}

/*******************************************************************************
 * コンテンツ
 *******************************************************************************/
.contents {
	flex-grow:		1;
	padding:		10px 0;
}
/*パンくず*/
.area-breadcrumb {
	background:		#fff;
	border:			solid 2px rgba(13, 57, 26, .1);
	border-radius:	5px;
	font-size:		0;
	padding:		10px 0;
}
.area-breadcrumb li {
	position:		relative;
	display:		inline-block;
	font-size:		14px;
	vertical-align:	middle;
	padding:		0 20px;
}
.area-breadcrumb li:not(:last-of-type)::after {
	position:		absolute;
	top:			50%;
	right:			0;
	transform:		translateY(-50%) rotate(45deg);
	content:		'';
	display:		inline-block;
	width:			6px;
	height:			6px;
	border:			solid #de574a;
	border-width:	1px 1px 0 0;
	margin-left:	10px;
}
.area-contents {
	background:		#fff;
	border-radius:	8px;
	padding:		20px;
}
@media only screen and (max-width:800px){
	.area-contents {
		padding:	10px 10px 20px;
	}
}
/*******************************************************************************
 * 見出し
 *******************************************************************************/
.head-contents {
	display:			flex;
	justify-content:	space-between;
	align-items:		center;
}
.ttl-common {
	font-size:		20px;
	font-weight:	bold;
	padding-left:	27px;
	text-indent:	-27px;
}
.ttl-common::before {
	position:		relative;
	top:			1px;
	content:		'\f111';
	font-family:	"Font Awesome 5 Free";
	font-weight:	400;
	font-size:		24px;
	color:			#de574a;
	margin-right:	6px;
}

.base-green01 {
	background:	#708e79;
	padding:	6px 10px;
}

@media only screen and (max-width:800px){
	.sp-block {
		display:	block;
	}
}

/*******************************************************************************
 * フォーム
 *******************************************************************************/
input.common,
select.common {
	height:			28px;
	border:			solid 1px rgba(0, 0, 0, .2);
	border-radius:	3px;
	font-size:		12px;
	padding:		0 10px;
}
textarea.common {
	border:			solid 1px rgba(0, 0, 0, .2);
	border-radius:	3px;
	font-size:		12px;
	padding:		0 10px;
}
.box-inline {
	display:		flex;
	align-items:	center;
}
.box-inline span {
	margin:	0 5px;
}
.box-calendar label {
	position:	relative;
	display:	block;
}
.box-calendar label::after {
	position:		absolute;
	top:			50%;
	right:			10px;
	transform:		translateY(-50%);
	display:		block;
	content:		'\f073';
	font-family:	"Font Awesome 5 Free";
	font-weight:	900;
	color:			#0d391a;
}

/*セレクト*/
.select-category label {
	position:	relative;
	display:	inline-block;
}
.select-category label::before {
	position:		absolute;
	top:			50%;
	right:			10px;
	transform:		translateY(-50%);
	display:		block;
	font-family:	"Font Awesome 5 Free";
	font-weight:	900;
	content:		"\f107";
	pointer-events:	none;
}
.select-category select {
	width:	auto;
	height:	28px;
	background:	#fff;
	border:	solid 1px rgba(0, 0, 0, .2);
	border-radius:	2px;
	padding:	0 30px 0 10px;
}

/*チェックボックス*/
.check-status {
	font-size:	12px;
}
.check-status input {
	display:	none;
}

.check-status input + label {
	display:	inline-block;
	width:	22px;
	height:	22px;
	border-radius:	2px;
	vertical-align:	bottom;
	cursor:	pointer;
}
.check-select + label {
	background:	#fff;
	border:	solid 1px rgba(0, 0, 0, .2);
	margin-right:	2px;
}
.check-select:checked + label {
	position:	relative;
	background:	rgba(42, 194, 120, .3);
}
.check-select:checked + label::before {
	display:		block;
	content:		'\f00c';
	font-family:	"Font Awesome 5 Free";
	font-weight:	900;
	position:		absolute;
	top:			50%;
	left:			50%;
	transform:		translate(-50%, -50%);
	color:			#2ac278;
	font-size:		14px;
	margin:			0 auto;
}

/*ラジオ*/
.radio-type01 {
	display:	none;
}
.radio-parts01 {
	display:	inline-block;
	position:	relative;
	padding-left:	24px;
	margin-right:	30px;
	vertical-align:	middle;
}
.radio-parts01::before {
	content:	"";
	display:	inline-block;
	position:	absolute;
	top:	0;
	left:	0;
	width:	20px;
	height:	20px;
	border:	solid 1px rgba(0, 0, 0, .2);
	border-radius:	50%;
}
.radio-type01:checked + .radio-parts01::after {
	content:	"";
	display:	block;
	position:	absolute;
	top:	0;
	left:	5px;
	bottom:	0;
	margin:	auto;
	width:	10px;
	height:	10px;
	background:	#34ac8a;
	border-radius:	50%;
}

/*ファイル参照*/
.select-files {
	display:	flex;
}
.select-files label {
	flex-shrink:	0;
	height:	28px;
	background:	#444;
	border-radius:	0 2px 2px 0;
	font-size:	12px;
	color:	#fff;
	padding:	5px 14px;
	cursor:	pointer;
}
.select-files label input {
	display:	none;
}
.select-files input {
	width:	auto;
	height:	28px;
	border:	solid rgba(0, 0, 0, .2);
	border-width:	1px 0 1px 1px;
	border-radius:	2px 0 0 2px;
	padding:	0 10px;
}
.field-text textarea {
	width:	auto;
	outline:	none;
	resize:	none;
	border:	solid 1px rgba(0, 0, 0, .2);
	border-radius:	2px;
	font-family:	"Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	font-size:	12px;
	padding:	10px;
	line-height:	1.6;
}

/*調整用*/
.field-text textarea {
	width:	100%;
}
.w100 {
	width:	100px;
}
.w120 {
	width:	120px;
}
.w150 {
	width:	150px;
}
.w200 {
	width:	200px;
}
.w300 {
	width:	300px;
}
@media only screen and (max-width:500px){
	.select-files input {
		width:		100%;
		flex-grow:	1;
	}
}
@media only screen and (max-width:380px){
	.w300 {
		width:		100%;
	}
}
/*******************************************************************************
 * お知らせ
 *******************************************************************************/
.news-list dl {
	display:	table;
	width:		100%;
}
.news-list dl {
	border-bottom:	dotted 1px rgba(0, 0, 0, .3);
	margin-bottom:	20px;
	padding-bottom:	20px;
}
.news-list dl dt,
.news-list dl dd {
	display:	table-cell;
}
.news-list dl dt {
	width:	120px;
}
.news-list dl dd p:first-of-type {
	font-weight:	bold;
	margin-bottom:	5px;
}

@media only screen and (max-width:500px){
	.news-list dl dt,
	.news-list dl dd {
		display:			block;
	}
	.news-list dl dt {
		display:			flex;
		justify-content:	center;
		align-items:		center;
		width:				100%;
		margin-bottom:		5px;
	}
	.news-list dl dt::after {
		display:			inline;
		flex-grow:			1;
		content:			'';
		border-top:			dotted 1px rgba(0, 0, 0, .3);
		margin-left:		.5em;
	}
	.news-list dl {
		border-bottom:		none;
		padding-bottom:		0;
	}
}

/*******************************************************************************
 * ボタン
 *******************************************************************************/
/*ボタン赤グラデーション*/
.btn-RedGrad {
	background:	#de574a; /* Old browsers */
	background:	-moz-linear-gradient(45deg, #de574a 0%, #ff0000 100%);														/* FF3.6-15 */
	background:	-webkit-linear-gradient(45deg, #de574a 0%,#ff0000 100%);													/* Chrome10-25,Safari5.1-6 */
	background:	linear-gradient(45deg, #de574a 0%,#ff0000 100%); 															/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter:		progid:DXImageTransform.Microsoft.gradient( startColorstr='#de574a', endColorstr='#ff0000',GradientType=1 );	/* IE6-9 fallback on horizontal gradient */
}

/*ボタン青グラデーション*/
.btn-BlueGrad {
	background:	#50cce5; /* Old browsers */
	background:	-moz-linear-gradient(45deg, #50cce5 0%, #1078e8 100%); /* FF3.6-15 */
	background:	-webkit-linear-gradient(45deg, #50cce5 0%,#1078e8 100%); /* Chrome10-25,Safari5.1-6 */
	background:	linear-gradient(45deg, #50cce5 0%,#1078e8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter:		progid:DXImageTransform.Microsoft.gradient( startColorstr='#50cce5', endColorstr='#1078e8',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}

.btn-common {
	display:		block;
	border-radius:	3px;
	font-size:		12px;
	font-weight:	bold;
	padding:		4px 10px;
}


/*ログイン*/
.btn-login {
	display:		inline-block;
	border-radius:	5px;
	box-shadow:		0px 2px 2px rgba(0, 0, 0, 0.29);
}
.btn-login input {
	font-family:	"Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	color:			#fff;
	font-weight:	bold;
	padding:		8px 30px;
	cursor:			pointer;
}

/*検索ボタン*/
.btn-search {
	position:		relative;
	display:		inline-block;
	color:			#333;
	font-size:		13px;
	padding-left:	15px;
	cursor:			pointer;
}
.btn-search::before,
.active::before {
	position:		absolute;
	left:			0;
	content:		'';
	display:		block;
	width:			6px;
	height:			6px;
	border:			solid #333;
	border-width:	1px 1px 0 0;
}
.btn-search::before {
	top:	8px;
	transform:	rotate(135deg);
	transition:	.3s
}
.active::before {
	top:	10px;
	transform:	 rotate(-45deg);
}


@media all and (-ms-high-contrast:	none) {
	.btn-search::before {
		top:	6px;
		transition:	.3s
	}
	.active::before {
		top:	9px;
	}
}

.btn-submit,
.btn-csv,
.btn-cancel {
	display:	inline-block;
	border-radius:	3px;
	padding:	6px 10px;
	text-align:	center;
	cursor:	pointer;
	line-height:	1;
}
.btn-submit input,
.btn-csv input,
.btn-cancel input,
.btn-submit a,
.btn-csv a,
.btn-cancel a {
	font-family:	"Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	color:			#fff;
	font-size:		12px;
	font-weight:	bold;
	cursor:			pointer;
}
.btn-submit {
	background:		#de574a;
}
.btn-csv{
	background:		#50cce5;
}
.btn-cancel {
	background:		#444;
}
.ico-awesome::before {
	display:		inline-block;
	position:		relative;
	font-family:	"Font Awesome 5 Free";
	color:			#fff;
	font-weight:	normal;
}
.ico-logout::before {
	font-weight:	900;
	content:		'\f08b';
	margin-right:	4px;
}
.ico-search::before {
	top:			1px;
	transform:		rotate(90deg);
	font-weight:	900;
	content:		'\f002';
}
.ico-preserve::before {
	top:			2px;
	font-weight:	400;
	content:		'\f14a';
}
.ico-cancel::before {
	top:			2px;
	font-weight:	900;
	content:		'\f00c';
}
.ico-export::before {
	top:			2px;
	font-weight:	900;
	content:		'\f019';
}
.ico-import::before {
	top:			1px;
	font-weight:	900;
	content:		'\f093';
}
.ico-plus::before {
	content:		'\f055';
	font-weight:	900;
	margin-right:	5px;
}

/*詳細*/
.btn-small {
	display:	inline-block;
	background:	#fdbd5d;
	border:	solid 2px rgba(0, 0, 0, .075);
	border-radius:	30px;
	font-size:	11px;
	padding:	0 10px;
}
/*新規登録*/
.btn-add::before {
	position:	relative;
	top:	2px;
	content:	'';
	display:	inline-block;
	width:	16px;
	height:	14px;
	background:	url('../../images/ico-add.png') 50% 50% no-repeat;
	background-size:	contain;
	margin-right:	2px;
}
/*インライン*/
.btn-col2 > div {
	display:	inline-block;
}
.btn-col2 > div:not(:last-of-type) {
	margin-right:	10px;
}

@media only screen and (max-width:800px){
.for-table {
	font-size:	14px;
	margin:	0 auto;
	padding:	2px 30px;

}
}
/************************************** テーブル*/
.table-layout01 {
	border-collapse:	collapse;
	width:				100%;
	border:				solid #d9d9d9;
	border-width:		0 1px 1px 1px;
	font-size:			13px;
	table-layout:		fixed;
	text-align:			left;
}
.table-layout01 th {
	background:		#3d6148;
	white-space:	nowrap;
	border-right:	solid 1px rgba(255, 255, 255, .4);
	color:			#fff;
	padding:		7px;
	text-align:		left;
}
.table-layout01 th:first-of-type {
	border-left:	solid 1px #3d6148;
}
.table-layout01 th:last-of-type {
	border-right:	solid 1px #3d6148;
}
.table-layout01 tbody tr:not(:last-of-type) {
	border-bottom:	dotted 1px #d9d9d9;
}
.table-layout01 tbody tr:nth-of-type(even) {
	background:		rgba(0, 0, 0, .05);
}
.table-layout01 td {
	border-right:	solid 1px #d9d9d9;
	white-space:	nowrap;
	overflow:		hidden;
	text-overflow:	ellipsis;
	padding:		7px;
}
.table-layout01 td:last-of-type {
	border-right:	none;
}


.table-layout02 {
	border-collapse:	collapse;
	width:	100%;
	border:	solid #d9d9d9;
	border-width:	1px 0 1px 0;
	font-size:	13px;
	text-align:	left;
}
.table-layout02 th {
	width:	20%;
	background:	#f3f3f3;
	color:	#333;
	padding:	8px 10px;
	border-bottom:	solid 1px #d9d9d9;
	text-align:	left;
}

.table-layout02 td {
	padding:	8px 10px;
}
.table-layout02 tr:not(:last-of-type) td {
	border-bottom:	dotted 1px #d9d9d9;
}

/*調整用*/
.table-col01 {
	width:	70px;
}
.table-col02 {
	width:	50px;
}
.pos-top {
	vertical-align:	top;
}

@media only screen and (max-width:800px){
.table-layout01 {
	border:	none;
}

.table-layout01 td,
.table-layout01 th {
    border:	0;
}
.table-layout01 thead {
    display:	none;
}
.table-layout01 tbody tr:not(:last-of-type) {
	border-bottom:	none;
}
.table-layout01 tbody tr:nth-of-type(even) {
	background:	#fff;
}
.table-layout01 tbody tr {
	display:	block;
	margin-bottom:	20px;
}
.table-layout01 tbody th {
	display:	block;
}
.table-layout01 tbody td {
	display:	flex;
	align-items:	center;
	width:	100%;
	background:	-moz-linear-gradient(left, #3d6148 30%, #ffffff 30%); /* FF3.6-15 */
	background:	-webkit-linear-gradient(left, #3d6148 30%,#ffffff 30%); /* Chrome10-25,Safari5.1-6 */
	background:	linear-gradient(to right, #3d6148 30%,#ffffff 30%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	border:	solid #d9d9d9;
	border-width:	0 1px 1px 1px;
	white-space:	normal;
	overflow:	hidden;
	text-overflow:	clip;
	padding:	10px;
}
.table-layout01 tbody td:first-of-type {
	border-top:	solid 1px #d9d9d9;
}
.table-layout01 tbody td:last-of-type {
	background:	none;
	border:	none;
	padding:	10px 0;
}
.table-layout01 tbody td::before {
	flex-shrink:	0;
}
.table-layout01 tbody td::before {
	width:	30%;
	content:	attr(label);
	color:	#fff;
	text-align:	left;
	padding-right:	10px;
	margin-right:	10px;
}
.table-layout01 tbody td:last-of-type::before {
	content:	none;
}
.table-layout02 {
	border-width:	0;
}
.table-layout02 th,
.table-layout02 td {
	display:	block;
}
.table-layout02 th {
	width:	100%;
	background:	#f3f3f3;
	color:	#333;
	padding:	8px 10px;
	border-top:	solid 1px #d9d9d9;
	border-bottom:	solid 1px #d9d9d9;
}

.table-layout02 td {
	padding:	8px 10px;
}
.table-layout02 tr:not(:last-of-type) td {
	border-bottom:	none;
}
}
/************************************** タブメニュー*/
label.panel_label {
	-webkit-user-select:	none;
	-moz-user-select:	none;
	-ms-user-select:	none;
	user-select:	none;
	display:	block;
	width:	100%;
	font-family:	"Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	color:	#3d6148;
	cursor:	pointer;
}
#panels main {
	display:	none;
	box-sizing:	border-box;
	max-height:	0;
	opacity:	0;
	overflow-y:	hidden;
}
#panel_ctrl01:checked ~ #panels #panel_inner01 main,
#panel_ctrl02:checked ~ #panels #panel_inner02 main {
	display:	inline;
	max-height:	initial;
	opacity:	1;
}

#panel_ctrl01:checked ~ .tabs_list #li-for-panel_inner01 label.panel_label,
#panel_ctrl02:checked ~ .tabs_list #li-for-panel_inner02 label.panel_label {
	background:	#3d6148;
	color:	#fff;
}

.tabs_list {
	display:	table;
	width:	100%;
	list-style:	none;
	font-size:	0;
	margin:	0;
	padding:	0;
	text-align:	center;
	margin-bottom:	30px;
}
.tabs_list li {
	display:	inline-table;
	width:	120px;
	height:	26px;
	line-height:	26px;
	border:	solid #3d6148;
	background:	#fff;
	border-width:	2px 0 2px 2px;
	font-size:	13px;
	text-align:	center;
}
.tabs_list li:first-of-type {
	border-radius:	3px 0 0 3px;
}
.tabs_list li:last-of-type {
	border-width:	2px;
	border-radius:	0 3px 3px 0;
}
.panel-radios {
	display:	none;
}
/************************************** ページネーション*/
.pagenation {
	font-size:	0;
}
.pagenation li {
	display:	inline-block;
	font-size:	12px;
	margin-right:	5px;
	text-align:	center;
}
.pagenation li.current {
	width:	26px;
	height:	26px;
	line-height:	26px;
	background:	#444;
	border-radius:	3px;
	border:	solid 1px #444;
	color:	#fff;
}
.pagenation li a {
	display:	block;
	width:	26px;
	height:	26px;
	line-height:	26px;
	background:	#fff;
	border:	solid 1px #444;
	border-radius:	3px;
	color:	#444;
	transition:	.3s;
}
.pagenation li a:hover {
	background:	#444;
	color:	#fff;
}
@media only screen and (max-width:800px){
	.pagenation {
		text-align:	center;
	}
}

/*******************************************************************************
 * フッター
 *******************************************************************************/
#page_top {
	position:		fixed;
	bottom:			20px;
	right:			20px;
	z-index:		1;
}
#page_top a {
	position:		relative;
	display:		block;
	width:			60px;
	height:			60px;
	border-radius:	50%;
	background:		#e05745;
	color:			#fff;
	text-align:		center;
}
#page_top a::before {
	position:		absolute;
	top:			60%;
	left:			50%;
	transform:		translate(-50%,-60%) rotate(-45deg);
	content:		'';
	display:		block;
	width:			20px;
	height:			20px;
	border:			solid #fff;
	border-width:	2px 2px 0 0;
}
footer {
	background:		#0d391a;
	font-size:		14px;
	color:			#fff;
	padding:		10px 0;
}