@charset "utf-8";

body {
	/* フォントレンダリング設定: 1x解像度ではsubpixel、2x以上の解像度ではgrayscale */
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: unset;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
	body {
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
}
h1 { font-size: 1.8rem;}
h2 { font-size: 1.6rem;}
h3 { font-size: 1.4rem;}
h4 { font-size: 1.2rem;}
h5 { font-size: 1.0rem; font-weight: normal;}
h2, h3, h4, dt, strong, em {		/* -------- h1 は対応しない！ */
	font-weight: bold;
}
h1, h2, h3 {		/* -------- h4 は対応しない！ */
	font-family: 'M PLUS Rounded 1c', sans-serif;
}
a {
	text-decoration: none;
	transition: .3s;
	color: #33f;
}
a:link, a:visited, a:active, a:focus {
	text-decoration: none;
	color: #33f;
}
.table td a {
	text-decoration: none;
	transition: .3s;
}
.table td a:hover {
	color: #f63;
}
div a:hover, p a:hover, li a:hover, dd a:hover {
	text-decoration: none;
	color: #f63;
}
.text-white-shadow {
	text-shadow:
		1px 0 0 #fff, 0 1px 0 #fff, -1px 0 0 #fff, 0 -1px 0 #fff,
		1px 1px 2px rgba(255,255,255,0.8), -1px -1px 2px rgba(255,255,255,0.8);
}
.warning { color: red; }
.btn-block { margin-top: 2.4em;}
p,
section ul {
	padding-bottom: 0.8em;
}
p strong,
dd strong,
li strong,
td strong {
	color: #000;
	}
article,
section,
aside {
	margin-bottom: 30px;
}
section:after {
	content: "";
	display: block;
	clear: both;
}
section h2 + article {
	margin-top: 20px;
}
article p:last-child,
section p:last-child,
aside p:last-child {
	padding-bottom: 0;
}
dl dt {
	color: #000;
}
dl dd {
	padding-left: 2.0em;
	margin-bottom: 0.6em;
}
dl.dl_press {
	line-height: 1.2em;
}
h2 + p, h3 + p, h4 + p {
	margin-top: 0.25em;
}
section > h2,
section > h3,
.force_under_bar {
	color: #063;
	color: #333399;
	background: linear-gradient(transparent 60%, #ffff66 60%);
	display: inline;
}
section > h2 + p,
section > h3 + p {
	margin-top: 0.4em;
}

/* ------------------
------------------ */
body {
	background-color: #5F9292;
	color: #333;
}
.body_contents {
	background-color: #fff;
	color: #000;
	overflow: hidden;
}
.body_contents .frow-container {
	margin-top: 40px;
	padding-bottom: 10px;
}
header + .body_contents .frow-container,
.body_contents .frow-container + .frow-container {
	margin-top: 0;
}

/* ------------------
------------------ */
header {
	padding: 1.0em 0;		
	background-color: #f3f3f3;
}
header .frow-container {
	padding-bottom: 0;
}
header h1 {
	text-align: center;
	color: #339;
}

.top_nav .logo_mark {
	width: 46px;
	height: auto;
}
.top_nav:after {
	content: "";
	display: block;
	clear: both;
}
.top_nav > div:first-child {
	float: left;
}
.top_nav > div span {
	vertical-align: middle;
}
.top_nav > div:last-child  {
	float: right;
	text-align: right;
}
.top_nav > div span {
	color: #bbb;
}
.top_nav > div span a {
	transition: 0s;
	color: #339;
}
.top_nav > div span a:hover {
	opacity: 0.5;
}
.top_nav > div:first-child span+span { margin-right: 15px;}
.top_nav > div:last-child span+span { margin-left: 15px;}
.top_nav > div:first-child span:nth-child(2) {
	display: none;
	font-weight: bold;
}
@media (min-width: 768px) {
	.top_nav > div:first-child span:nth-child(2) {display: inline;}
}
/* ------------------
------------------ */
footer {
	padding: 20px 0 10px 0;
	color: #e3e3e3;
	text-align: center;
}
footer .areaQrCode {
	display: none;
}
address {
	font-style: normal;
	margin-bottom: 0.6em;
	padding-top: 35px;
}
.footer_CopyRight {
	padding: 10px 0;
}
.footer_CopyRight a {
	color: white;
}
@media (min-width: 768px) {
	footer { text-align: left;}
	footer .areaQrCode {
		display: block;
		float: right;
	}
	footer .areaQrCode img {
		border-radius: 4px;
	}
	address {
		padding-top: 0;
		padding-left: 50px;
	}
	.footer_CopyRight img { vertical-align: middle;}
}
/* --------------
操作メニュー
-------------- */
.domenu_list {
	list-style-type: none;
	padding-left: 0;
	margin-bottom: 30px;
}
.domenu_list li {
	display: block;
	border: solid 1px #97C0C0;
	border-bottom-width: 0;
	font-weight: bold;
	color: gray;
	position: relative;
	z-index: 1;
}
.domenu_list li:last-child {
	border-bottom-width: 1px;
}
.domenu_list li:before {
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translate(-50%, -50%);
	content: "\f054";
	color: blue;
	font-size: 12px;
	font-family: FontAwesome;
	z-index: -1;
}
.domenu_list li a,
.domenu_list li span.clickable {
	color: #333399;
	transition: 0s;
}
.domenu_list li span.disclick {
	color: #999999;
	font-weight: normal;
}
.domenu_list li.kugiri {
	height: 30px;
	border-width: 1px 0 0 0;
}
.domenu_list li.kugiri:before {
	content: none;
}
.domenu_list li a,
.domenu_list li span {
	display: block;
	width: 100%;
	padding: .8em 1.4em .8em .8em;
}
.domenu_list li a:hover,
.domenu_list li span.clickable:hover {
	background-color: #E7F7F7;
	cursor: pointer;
}
/* --------------
テーブルメニュー
-------------- */
.table_menu {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	border-bottom: solid 1px #97C0C0;
}
.table_menu th {
	line-height: 1.2em;
}
.table_menu td {
	border: solid 1px #97C0C0;
	border-bottom-width: 0;
	padding: .8em;
}
.tr_clickable,
.td_clickable {
	cursor: pointer;
}
.tr_clickable:hover,
.td_clickable:hover {
	box-shadow: 0 0 0 4px #ffff00 inset;
}
.bg_color_white { background-color: #eeeeee; }
.bg_color_red { background-color: #ff6600; color: white}
.bg_color_blue { background-color: #33aaff; color: white}
.bg_color_yellow { background-color: #00aa66; color: white}
.bg_color_gray { background-color: #e8e8e8; color: black}
.bg_color_pink { background-color: #fff9dd; color: black}
.mcolor_bokashi { color: #999; }
.mcolor_red { color: #f00; }
.mcolor_blue { color: #00f; }

.table_menu th br { display: none;}
.td_assyuku {
	line-height: 1em;
	padding: 0;
	font-size: 80%;
}
@media (min-width: 768px) {
	.table_menu th br { display: inline;}
	.table_menu .td_assyuku { font-size: 95%; }
}
/* --------------
項目入力（フォーム）
-------------- */
input[type="checkbox"] {
	/* transform-origin: center center; */
	transform: scale( 2.2 );
	vertical-align: middle;
	margin: 0 20px .2em 6px;
}
.input_chktxt_box {
	margin-bottom: 0.8em;
}
.input_chktxt_box input[type="checkbox"] {
	margin-right: 0;
}
/* ------------------
確認用リストボックス
------------------ */
.list_box {
	display: flex;
	flex-flow: row nowrap;
}
.list_box h3 {
	width: 15%;
	width: 4em;
	color: #5F9292;
}
.list_box_inn {
	width: 85%;
	width: calc( 100% - 4em);
}
.list_box_item,
.list_box_item2 {
	display: inline-block;
	margin-right: 1em;
	min-width: 12em;
	color: #333;
	font-weight: bold;
	line-height: 1.2em;
	margin-bottom: 10px;
}
.list_box_item2 {
	display: block;
	margin-right: 0;
}
/* ------------------
アイコン横並び
------------------ */
.icon_horizons {
	margin-bottom: 30px;
}
.icon_horizons > div {
	width: 120px;
	padding-left: 15px;
	padding-right: 15px;
	text-align: center;
}
.icon_hor_child {
	background-color: #CEEEEE;
	color: black;
	margin-bottom: 20px;
	border: 3px solid #9BB3B3;
	padding: 10px 0 5px 0;
	border-radius: 10px;
	cursor: pointer;
}
.icon_hor_child.is_ipan {
	background-color: #ccffcc;
}
.icon_hor_child.is_juyo {
	background-color: #ffff99;
}
.icon_hor_child.is_nini {
	background-color: #369;
	color: white;
}
.icon_hor_child.is_nodata {
	background-color: #fff;
	color: black;
}
.icon_hor_child.is_current,
.icon_hor_child:hover {
	border-color: red;
}
.icon_hor_child span {
	display: none;
}
@media (min-width: 768px) {
	.icon_horizons > div { width: 180px;}
	.icon_hor_child span { display: inline;}
}


/* ------------------
開閉記事
------------------ */
.dsp_onof, .dsp_onof_dummy {
	border: 1px solid #ccc;
	border-radius: 6px;
	padding: 10px;
	margin-bottom: 40px;
}
.dsp_onof_dummy h3 {
	color: #33f;
}
.dsp_onof_control {
	cursor: pointer;
	color: #33f;
	transition: .3s;
	position: relative;
}
.dsp_onof_control::after {
	position: absolute;
	top: 0;
	right: 0.1em;
	font-family: 'FontAwesome';
	content: "\f196";
}
.dsp_onof_control.is_open::after {
	position: absolute;
	top: 0;
	right: 0.1em;
	font-family: 'FontAwesome';
	content: "\f147";
}
.dsp_onof_control:hover {
	color: #f63;
}
.dsp_onof_body2 {
	display: none;
	margin-top: 20px;
}
.is_open + .dsp_onof_body2 {
	display: block;
}
/* ------------------
操作ボタン
------------------ */
.ope_button {
	display: inline-block;
	text-align: center;
	width: 100px;
	height: 100px;
	color: white;
	background-color: #aaa;
	border-radius: 50px;
	line-height: 100px;
	margin: 0;
	cursor: pointer;
	border: 0;
}
a.ope_button {
	color: white;
	transition: 0s;
}
.ope_button.is_2w {
	line-height: 30px;
	padding: 20px 0;
}
.ope_button.is_unclick {
	cursor: default;
}
.ope_button.is_ok { 				background-color: #33aaff; color: white;}
.ope_button.is_ok:hover {			background-color: #66bbff; color: white;}
.ope_button.is_cancel {			background-color: #ff6600; color: white;}
.ope_button.is_cancel:hover {	background-color: #ff9933; color: white;}
.ope_button.is_back {				background-color: #00aa66; color: white;}
.ope_button.is_back:hover {		background-color: #33cc99; color: white;}
.ope_button.is_print {			background-color: #6666cc; color: white;}
.ope_button.is_print:hover {		background-color: #9999dd; color: white;}

.ope_btnctl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	}
.ope_btnctl > * {
	max-width: 100%;
}
.ope_btnctl > div { text-align: center; }
.ope_btnctl.ctl_margin { margin-top: 30px; margin-bottom: 30px;}

/* 左１　残りが全部中心 */
.ope_btnctl.ope_3clm {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
		-ms-flex-direction: row;
			flex-direction: row;
	-webkit-box-align: start;
		-ms-flex-align: start;
			align-items: flex-start;
	-webkit-box-pack: start;
		-ms-flex-pack: start;
			justify-content: flex-start;
}
.ope_btnctl.ope_0clm {
 	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
		-ms-flex-direction: row;
			flex-direction: row;
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
}
.ope_btnctl.ope_3clm > div:first-child { width: 100px;}
.ope_btnctl.ope_3clm > div:nth-child(2) { width: calc( 100% - 100px );}
.ope_btnctl.ope_3clm > div:nth-child(2) .ope_button { margin: 0 15px;}
/* 左１　残りが右全部 */
.ope_btnctl.ope_2clm {
	-webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}
.ope_btnctl.ope_2clm > div:first-child { width: 100px;}
.ope_btnctl.ope_2clm > div:last-child {
	width: calc( 100% - 100px );
	}
/* 全部が中心 */
.ope_btnctl.ope_1clm .ope_button { margin: 0 20px;}
@media (min-width: 768px) {
	.ope_btnctl.ope_3clm > div:nth-child(2) { width: calc( 100% - 200px );}
	.ope_btnctl.ope_3clm > div:nth-child(2) .ope_button,
	.ope_btnctl.ope_1clm .ope_button { margin: 0 30px;}
}
.ope_btnctl button {
	background: inherit;
	border: none;
}

/* --------------
項目間移動
-------------- */
.page_move_ctl {
	text-align: center;
	padding-bottom: 10px;
}
.page_move_pre, .page_move_aft {
	display: inline-block;
	background-color: #aaccbb;
	color: white;
	margin: 0 10px;
	padding: 0 10px;
	height: 50px;
	line-height: 50px;
}
.page_move_pre { border-radius : 25px 4px 4px 25px; }
.page_move_aft { border-radius : 4px 25px 25px 4px; }
a .page_move_pre, a .page_move_aft {
	background-color: #00aa66;
}
a:hover .page_move_pre, a:hover .page_move_aft {
	background-color: #33cc99;
}

/* --------------
戻るボタン列
-------------- */
.nav_board {
	border: 3px solid #cccc33;
	border-radius: 6px;
	background-color: #ffffee;
	padding-bottom: .4em;
	float: right;
	margin-bottom: 30px;
}
.nav_board.nav_board_full { float: none;}
.nav_board.is_center {
	float: none;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
.nav_board h4 {
	font-size: 1em;
	padding: 8px 0;
	text-align: center;
	border-radius: 6px 6px 0 0;
	border-bottom: 1px solid #cccc33;
	background-color: #ffffbb;
	color: black;
}
.nav_board.is_left_flow p {
	margin-left: .6em;
	margin-right: .4em;
	color: black;
	text-align: left;
}
.nav_board p:last-child {
	padding-bottom: 0;
}
@media (min-width: 768px) {
	.nav_board { width: 80%;}
	.nav_board.nav_board_full { width: 100%;}
}
@media (min-width: 992px) {
	.nav_board { width: 75%;}
	.nav_board.nav_board_full { width: 100%;}
}
@media (min-width: 1200px) {
	.nav_board { width: 70%;}
	.nav_board.nav_board_full { width: 100%;}
}
/* --------------
状態スタンプ
-------------- */
.stamp_base {
	position: relative;
}
.stamp_child {
	position: absolute;
	top: 30px;
	right: 20px;
	opacity: 0.8;
	width: 100px;
	height: 3em;
	text-align: center;
	line-height: calc( 3em - 6px );
	border-radius: 10px;
	color: #ffff;
	color: black;
	font-weight: bold;
	transform: rotate(20deg);
	border: 3px solid black;
}
/*
.stamp_c0 { background-color: rgba(153, 153, 153, 0.8);}
.stamp_c1 { background-color: rgba(51, 153, 204, 0.8);}
.stamp_c2 { background-color: rgba(255, 102, 102, 0.8);}
*/
.stamp_c0 { display: none;}
/* -----------------
 モーダルウインドゥ
 ----------------- */
#modal-content {
	display: none;
	width: 85%;
	max-width: 1100px;
	max-height: 85%;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	overflow-x: hidden;
	position: fixed;
	top: 60px;
	left: calc( ( 100% - width ) / 2 );
	padding: 25px 16px 25px 25px;
	border-radius: 6px;
	background: #fff;
	z-index: 3;
}
#modal-overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 120%;
	background-color: rgba(0,0,0, 0.5);
	z-index: 2;
}
#modal_message .OneNote {
	margin-bottom: 30px;
	border: 1px solid #ccc;
	border: 2px solid #006;
	border-radius: 6px;
}
#modal_message .OneNote h4,
#modal_message .OneNote h5 {
	text-align: left;
	border-bottom: 1px solid #ccc;
	padding: 6px 0 6px 10px;
}
#modal_message .OneNote h4 {
	border-radius: 6px 6px 0 0;
}
#modal_message .OneNote h4.is_juyou { background-color: #ffff99;}
#modal_message .OneNote h4.is_ippan { background-color: #ccffcc;}
#modal_message .OneNote h4.is_nini {
	background-color: #369;
	color: white;
}
#modal_message .OneNote p {
	padding: 8px 6px 10px 10px;
}









