/*文字ｺｰﾄﾞ*/
@charset "utf-8";

@font-face {
	font-family:"font";
	src:url("../font/Noto_Sans_JP/NotoSansJP-Regular.otf");
}

/*ﾌﾞﾗｳｻﾞが勝手に付ける枠線を無効化*/
:focus {
	/*outline:none;*/
}

/*全体*/
* {
	font-family:"font";
	font-size:15px;
	color:#353535;
	margin:0;
	padding:0;
}

/*html*/
html {
	overflow-y:scroll;
}

/*ﾎﾞﾃﾞｨ*/
body {
}

/*ﾘﾝｸ*/
a {
	color:#000000;
}

a:hover {
	color:#ea8100 !important;
}

/*ﾗｲﾝ*/
hr {
	margin:20px 0;
	border-top:1px dashed #aaaaaa;
}

/*画像*/
img {
	image-rendering:-webkit-optimize-contrast;/*画像ぼやけ対応*/
}

/*ﾃｷｽﾄ*/
input[type="text"], 
input[type="password"],
input[type="number"] {
	box-sizing:border-box;
	width:150px;
	height:26px;
	border:1px solid #d4d4d4;
	border-radius:3px;
	padding:2px;
}

/*ｾﾚｸﾄﾎﾞｯｸｽ*/
select {
	box-sizing:border-box;
	height:26px;
	background-color:#ffffff;
	border:1px solid #d4d4d4;
	border-radius:3px;
	padding:1px;
}

/*ﾃｷｽﾄｴﾘｱ*/
textarea {
	box-sizing:border-box;
	width:100%;
	height:120px;
	border:1px solid #d4d4d4;
	padding:3px;
	margin-bottom:-3px;
}

/*ﾎﾞﾀﾝ*/
input[type="button"], 
input[type="submit"] {
	box-sizing:border-box;
	color:#ffffff;
	background-color:#00aa00;
	border:1px solid #00aa00;
	border-radius:10px;
	padding:5px 1px 7px 1px;
	width:130px;
	transition:.3s;
}

input[type="button"]:hover, 
input[type="submit"]:hover {
	color:#00aa00;
	background-color:#ffffff;
	border:1px solid #00aa00;
}

input[type="button"]:disabled, 
input[type="submit"]:disabled {
	color:#ffffff;
	background-color:#d5d5d5;
	border:1px solid #d5d5d5;
}

/*ﾁｪｯｸﾎﾞｯｸｽ*/
input[type="checkbox"] {
	display:none;
}

input[type="checkbox"] + label {
	display:none;
	box-sizing:border-box;
	cursor:pointer;
	display:inline-block;
	position:relative;
	padding-left:25px;
	padding-right:10px;
	vertical-align:top;
}

input[type="checkbox"] + label::before {
	content:"";
	position:absolute;
	display:block;
	box-sizing:border-box;
	width:18px;
	height:18px;
	margin-top:-8px;
	left:0;
	top:50%;
	border:1px solid #d4d4d4;/*□枠色*/
	background-color:#ffffff;/*□背景色*/
}

input[type="checkbox"]:checked + label {
	color:#0000ff;/*選択文字色*/
}

input[type="checkbox"]:checked + label::after {
	content:"";
	position:absolute;
	display:block;
	box-sizing:border-box;
	width:16px;
	height:10px;
	margin-top:-9px;
	top:50%;
	left:3px;
	transform:rotate(-45deg);
	border-bottom:3px solid;
	border-left:3px solid;
	border-color:#0000ff;/*選択ﾚ色*/
}

/*ﾗｼﾞｵﾎﾞﾀﾝ*/
input[type="radio"] {
	display:none;
}

input[type="radio"] + label {
	box-sizing:border-box;
	cursor:pointer;
	display:inline-block;
	padding-left:20px;
	position:relative;
	margin-right:10px;
	/*font-size:21px;*/
	/*font-weight:bold;*/
}

input[type="radio"] + label::before {
	content:"";
	display:block;
	position:absolute;
	top:3px;
	left:0;
	width:16px;
	height:16px;
	border:1px solid #999999;
	border-radius:50%;
	background-color:#ffffff;
}

input[type="radio"]:checked + label {
	color:#0000ff;/*選択文字色*/
}

input[type="radio"]:checked + label::after {
	content:"";
	display:block;
	position:absolute;
	top:6px;
	left:3px;
	width:12px;
	height:12px;
	border-radius:50%;
	background-color:#0000ff;/*選択●色*/
}

/*ﾌｧｲﾙ*/
input[type="file"] {
	font-size:13px;/*14以上だとtdのheightが33px以上になる*/
}

/*ﾍﾞｰｽ*/
.area_base {
	box-sizing:border-box;
	width:100%;
	margin:0 auto;
	padding:0;
}

/*ﾛｰﾄﾞ*/
.area_load {
	width:100%;
	height:100%;
	background-color:#000000;
	opacity:0.5;
	top:0;
	left:0;
	position:fixed;
	z-index:998;
	display:none;
}

.area_load img {
	top:calc(50% - 16px);
	left:calc(50% - 16px);
	position:fixed;
	z-index:999;
}

/*ﾒｲﾝ*/
.area_main {
	background-color:#f4f4f4;
	box-sizing:border-box;
	padding:30px;
	margin:0 auto;
	width:800px;
	border:1px solid #d4d4d4;
	border-top:0;
	border-bottom:0;
}

/*SP*/ 
@media screen and (max-width:600px) {
	.area_main {
		width:100%;
		padding:15px;
	}
}

/*回り込み解除*/
.clear {
	clear:both;
}

/*ｻｸｾｽ･ｴﾗｰ*/
.top_suc,
.top_err,
.det_suc,
.det_err {
	padding:3px;
	text-align:left;
	font-weight:normal;
	border-radius:3px;
}

.top_suc {
	border:1px solid #0000ff;
	background-color:#d5d5ff;
	color:#0000ff;
	margin-bottom:8px;
}

.top_err {
	border:1px solid #ff0000;
	background-color:#ffd5d5;
	color:#ff0000;
	margin-bottom:8px;
}

.det_suc {
	border:1px solid #0000ff;
	background-color:#d5d5ff;
	color:#0000ff;
	margin-top:3px;
}

.det_err {
	border:1px solid #ff0000;
	background-color:#ffd5d5;
	color:#ff0000;
	margin-top:3px;
}

/*装飾文字*/
.txt_deco1 {
	font-weight:bold;
	color:#ffffff;
	text-shadow:1px 1px 1px #bf0000, 
				-1px 1px 1px #bf0000, 
				1px -1px 1px #bf0000, 
				-1px -1px 1px #bf0000, 
				1px 1px 1px #bf0000, 
				-1px 1px 1px #bf0000, 
				1px -1px 1px #bf0000, 
				-1px -1px 1px #bf0000;
}

.txt_deco2 {
	font-weight:bold;
	color:#ffffff;
	text-shadow:1px 1px 1px #2a2a2a, 
				-1px 1px 1px #2a2a2a, 
				1px -1px 1px #2a2a2a, 
				-1px -1px 1px #2a2a2a, 
				1px 1px 1px #2a2a2a, 
				-1px 1px 1px #2a2a2a, 
				1px -1px 1px #2a2a2a, 
				-1px -1px 1px #2a2a2a;
}

/*ﾎﾞﾀﾝ*/
.div_btn {
	margin:15px 0;
	text-align:center;
}

/*必須*/
.need {
	font-size:10px;
	color:#ff0000;
	text-align:right;
	float:right;
	margin-top:3px;
}

/*ﾘﾝｸ*/
.link {
	cursor:pointer;
	text-decoration:underline;
}

.link:hover {
	color:#ea8100 !important;
}

/*汎用*/
/*ﾃｰﾌﾞﾙ*/
.tbl_001 {
	width:100%;
	border-collapse:collapse;
}

.tbl_001 tr td {
	box-sizing:border-box;
	border:0;
}

/*一覧用*/
/*tbl_101(行色固定+ﾏｳｽｵｰﾊﾞｰ有り)*/
/*tbl_102(奇数行白+ﾏｳｽｵｰﾊﾞｰ有り)*/
/*tbl_103(偶数行白+ﾏｳｽｵｰﾊﾞｰ有り)*/
.tbl_101,
.tbl_102,
.tbl_103 {
	width:100%;
	border-collapse:collapse;
}

.tbl_101 tr th,
.tbl_102 tr th,
.tbl_103 tr th {
	box-sizing:border-box;
	background-color:#d4d4d4;
	border:1px solid #aaaaaa;
	text-align:left;
	padding:3px;
	font-weight:normal;
	height:33px;
}

.tbl_101 tr td,
.tbl_102 tr td,
.tbl_103 tr td {
	box-sizing:border-box;
	border:1px solid #aaaaaa;
	text-align:left;
	padding:3px;
	height:33px;
}

.tbl_101 tr {
	background-color:#ffffff;
}

.tbl_102 tr:nth-child(odd) {
	background-color:#ffffdf;
}

.tbl_102 tr:nth-child(even) {
	background-color:#ffffff;
}

.tbl_103 tr:nth-child(odd) {
	background-color:#ffffff;
}

.tbl_103 tr:nth-child(even) {
	background-color:#ffffdf;
}

.tbl_101 tr:hover,
.tbl_102 tr:hover,
.tbl_103 tr:hover {
	background-color:#ffecd5;
}

/*tbl_104(行色固定+ﾏｳｽｵｰﾊﾞｰ有り)*/
/*tbl_105(奇数行白+ﾏｳｽｵｰﾊﾞｰ有り)*/
/*tbl_106(偶数行白+ﾏｳｽｵｰﾊﾞｰ有り)*/
.tbl_104,
.tbl_105,
.tbl_106 {
	width:100%;
	border-collapse:collapse;
}

.tbl_104 tr th,
.tbl_105 tr th,
.tbl_106 tr th {
	box-sizing:border-box;
	background-color:#d4d4d4;
	border:1px solid #aaaaaa;
	text-align:left;
	padding:3px;
	font-weight:normal;
	height:33px;
}

.tbl_104 tr td,
.tbl_105 tr td,
.tbl_106 tr td {
	box-sizing:border-box;
	border:1px solid #aaaaaa;
	text-align:left;
	padding:3px;
	height:33px;
}

.tbl_104 tbody {
	background-color:#ffffff;
}

.tbl_105 tbody:nth-child(odd) {
	background-color:#ffffdf;
}

.tbl_105 tbody:nth-child(even) {
	background-color:#ffffff;
}

.tbl_106 tbody:nth-child(odd) {
	background-color:#ffffff;
}

.tbl_106 tbody:nth-child(even) {
	background-color:#ffffdf;
}

.tbl_104 tbody:hover,
.tbl_105 tbody:hover,
.tbl_106 tbody:hover {
	background-color:#ffecd5;
}

/*検索用*/
/*tbl_201*/
.tbl_201 {
	width:100%;
	border-collapse:collapse;
}

.tbl_201 tr th {
	box-sizing:border-box;
	background-color:#d4d4d4;
	border:1px solid #aaaaaa;
	text-align:left;
	padding:3px;
	width:150px;
	font-weight:normal;
	height:33px;
}

.tbl_201 tr td {
	box-sizing:border-box;
	background-color:#ffffff;
	border:1px solid #aaaaaa;
	text-align:left;
	padding:3px;
	width:449.5px;
	height:33px;
}

/*詳細用*/
/*tbl_301(行色固定+ﾏｳｽｵｰﾊﾞｰ無し)*/
/*tbl_302(奇数行白+ﾏｳｽｵｰﾊﾞｰ無し)*/
/*tbl_303(偶数行白+ﾏｳｽｵｰﾊﾞｰ無し)*/
.tbl_301,
.tbl_302,
.tbl_303 {
	width:100%;
	border-collapse:collapse;
}

.tbl_301 tr th,
.tbl_302 tr th,
.tbl_303 tr th {
	box-sizing:border-box;
	background-color:#d4d4d4;
	border:1px solid #aaaaaa;
	text-align:left;
	padding:3px;
	width:150px;
	font-weight:normal;
	height:33px;
}

.tbl_301 tr td,
.tbl_302 tr td,
.tbl_303 tr td {
	box-sizing:border-box;
	border:1px solid #aaaaaa;
	text-align:left;
	padding:3px;
	height:33px;
}

.tbl_301 tr {
	background-color:#ffffff;
}

.tbl_302 tr:nth-child(odd) {
	background-color:#ffffdf;
}

.tbl_302 tr:nth-child(even) {
	background-color:#ffffff;
}

.tbl_303 tr:nth-child(odd) {
	background-color:#ffffff;
}

.tbl_303 tr:nth-child(even) {
	background-color:#ffffdf;
}

/*ﾄｯﾌﾟへ*/
.img_totop {
	display:none;
	position:fixed;
	right:calc(50% - (800px / 2) + 30px);
	bottom:30px;
	z-index:600;
}

/*SP*/ 
@media screen and (max-width:600px) {
	.img_totop {
		right:20px;
		bottom:20px;
	}
}





/*必須*/
.asterisk {
	color:#ff0000;
	font-size:15px;
	font-weight:normal;
}

/*太字*/
.f-bold {
	font-weight:bold;
}

/*上部*/
.div_top {
	margin-bottom:15px;
	padding:10px;
	background-color:#ffffff;
	border:1px solid #d4d4d4;
	border-radius:10px;
	border-top:15px solid #00aa00;
}

.div_top p:nth-child(1) {
	font-size:18px;
	font-weight:bold;
	margin-bottom:15px;
}

/*入力項目*/
.div_input {
	margin-bottom:15px;
	padding:10px;
	background-color:#ffffff;
	border:1px solid #d4d4d4;
	border-radius:10px;
}

.div_input p:nth-child(1) {
	font-size:18px;
	font-weight:bold;
	border-bottom:1px solid #d4d4d4;
	margin-bottom:10px;
	padding-bottom:5px;
}

.div_input ul {
	margin:0 0 0 22px;
}