
#body {
	margin: 0;
	padding: 0;
	background-color: rgba( 255, 255, 255, 1 );
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}
html,body{
	width: 100%;
	height: 100%;
	margin: 0;
}
a{
	text-decoration: none;
    color: black;
}
.bg_img{
	background-image: url(../image/top_bg.svg);
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: cover;
	height: 100vh;
}


/*flexbox*/

.flex_row {
	display: flex;
	flex-direction: row;
}
.flex_row input{
	margin-left: 10px;
}
.flex_row label{
	margin-top: auto;
	margin-bottom: auto;
}
.flex_col {
	display: flex;
	flex-direction: column;
}
.flex_col h2{
	margin-bottom: 0;
}
.flex_center{
	display: flex;
	justify-content:center;
}

/*ヘッダー関連--------------------------------------------*/

.header_container{

	position: relative;
	overflow:hidden;
	height:80px;
	padding:0;
	margin:0;
    background-image: url(../image/header_on_title.svg);
    background-repeat: no-repeat;
    background-size: 3000px 80px;
}

/*
.header_l{
	width:350px;
    background-image: url(../image/header_l.png);
    background-repeat: no-repeat;
    background-size: 350px 80px;
}

.header_r{
	display:flex;
	width:100%;
    background-repeat: x-repeat;
    background-size: 80px;
}
*/


.header_container h1{
	font-size:1.5em;
	color:#ffffff;
}

.user_info{
	position:absolute;
	right:0;
	font-size:0.8em;
	color: rgba( 0, 0, 0, 1 );
	text-align:right;
	display:flex;
	flex-direction: column;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-align-items: right;
	align-items: right;
	padding:5px 5px 5px 0px;
}

.pankuzu{
	background-color: rgba( 240, 240, 240, 1 );
	padding:5px 0px 5px 15px;

}

/*btn----------------------------------------------------*/

.btn{
/*	background-color: rgba( 80, 80, 80, 1 );*/
	background-color: rgba( 255, 255, 255, 1 );
	border-radius: 6px;
/*	color: rgba( 255, 255, 255, 1 );*/
/*	font-size:1em;*/
	margin:0px 0 0px 10px; 
	border:1px solid #000000;
}

.btn:hover {
	background-color: rgba( 215, 0, 40, 0.5 );
	cursor:pointer;
}

.btn:focus {
    box-shadow: 0 0 5px 0 rgba( 215, 0, 40, 0.6 );
    outline: 0;
}

.btn:active {
	-webkit-animation	: btn 0.3s ease-in; 
	-moz-animation		: btn 0.3s ease-in; 
	animation			: btn 0.3s ease-in;

}

@keyframes btn {
	from { transform: scale(1); }
	15% { transform: scale(1.4); }
	50% { transform: scale(0.8); }
	75% { transform: scale(1.1); }
	to { transform: scale(1); }
}


.logout_btn{
	font-size:0.5em;
}

/*中央配置-------------------------------------------------*/

.center_container{
	display: flex;
	flex-wrap:nowrap;
	flex-direction: column;
	justify-content:flex-start;
	align-items: center;
}

/*ログイン画面-------------------------------*/

.login_container{
	display: flex;
	flex-wrap:wrap;
	flex-direction: column;
	justify-content:flex-start;
	align-items: center;
	background-color: rgba( 255, 255, 255, 0.8 );
	margin-top:50px;
	padding:0;
	width:800px;
	max-height: 700px;
	border:1px solid rgba( 215, 0, 40, 0.3 );
}
.login_container h2{
	width: 780px;
	background: rgb( 215, 0, 40);
	color: white;
	padding-left: 20px;
	margin-top: 0;
	margin-bottom: 50px;
}
.login_container p{
	margin-top: 0;
	width: 90%;
}
#personal_info_id p{
	width: 500px;
}
.annnounce_container{
	margin-top:0;
	width:600px;
	border:1px solid rgba( 215, 0, 40, 0.3 );
	background-color: rgba( 255, 255, 255, 0.7 );
	padding:10px 0 10px 0;
}
.modal_inner .annnounce_container{
	padding-top: 0;
}
#form-table, .login_container tr{
	line-height: 45px;
}
.annnounce_title{
	margin-left:30px;
	font-weight:bold;
}
.modal_inner .annnounce_title{
    background: rgb( 215, 0, 40);
    color: white;
    margin-top: 0;
    margin-left: 0;
    padding-left: 1vw;
    margin-bottom: 1vw;
}
.annnounce_body{
	border:solid 1px #eeeeee;
	padding:5px;
	overflow-y: scroll;
	height:150px;
}
.modal_inner .annnounce_body{
	height: auto;
	overflow-y: initial;
	font-size: 0.8vw;
	margin-left: 1vw;
	border: none;
}
.modal_inner .annnounce_txt{
	font-size: 1vw;
	width: auto;
	margin: 1.5vw;
}
.annnounce_day{
	margin-left:5px;
	width:100px;
	margin-right:10px;
}
.modal_inner .annnounce_day{
	margin-left: 0.5vw;
}
.annnounce_body .flex_row{
	cursor: pointer;
}
.annnounce_txt{
	width:500px;
}

#user_id_txt,#pass_txt,#pass_txt_new1,#pass_txt_new2{
	width:300px;
}

/*ログイン画面：パス期限切れ-------------------------------*/

.expired{
	display:none;
	padding: 5px 20px 5px 20px;
	border-radius: 6px;
	background-color: rgba( 255, 255, 200, 1 );
}

/*入力フォーム関連-----------------------------------------*/

.row_group{
	text-align: center;
 	margin-bottom: 10px;
}
.data_container .row_group{
	display: flex;
}
.row_group input[type=text]:focus , .row_group select:focus, input[type=password]:focus{
	background-color: rgba( 215, 0, 40, 0.05 );
    outline: 0;
}

.row_group input[type=text], input[type=password], .row_group select, #user_id_txt{
/*	border-radius: 6px;*/
    border: 1px solid #ccc;
    height:2em;
}
.row_group select{
	height: 2.3em;
}
.row_group label{
	margin-right: 10px;
	width:200px;
	text-align: right;
}

.label_red {
	display: inline;
	padding: .1em .4em .1em;
	margin-left:5px;
	font-size: 70%;
	font-weight: bold;
	color: #fff;
	text-align: center;
	white-space: nowrap;
	vertical-align: baseline;
	border-radius: .25em;
	background-color: rgba( 255, 0, 0, 1 );
}



.control{
	display: flex;
	align-items: center;
	justify-content: center;
	margin: auto;
 	margin-bottom: 10px;
}
.control.flex_row{
	margin-left: inherit;
}
#acc_check{
	margin-left:20px;
}


/*表の入れ物----------------------------------------------*/

.data_container, .data_container_not{
	padding:0 20px 0 20px;
	width: calc(100% - 340px);
	margin-left: 300px;
	height: 100%;
	overflow-y: scroll;
}
.data_container_not{
	overflow: hidden;
	margin-left: 0;
}
table{
	width: auto;
	margin-left: auto;
	margin-right: auto;
}
.table_cont{
	position: relative;
	max-height:50vh;
	width:100%;
	margin-top: 15px;
	margin-bottom: 15px;
	overflow:auto;
/*	box-shadow: 0px 1px 4px 2px #00000070;*/
	overflow:scroll;
}

.table_data{
	border-collapse: collapse;
}


/*modal---------------------------------------------------*/


.overlay{
	display:none;
	position: fixed;
	z-index: 600;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0,0,0,0.5);
}

.overlay_new_user , .overlay_rev , .overlay_company{
	display:none;
	position: fixed;
	z-index: 400;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0,0,0,0.5);
}


.modal_box{
/*	display:none;*/
	position: flex;
	overflow-y: auto;
	margin: 0 auto;
	padding: 1em 1em 1em 1em;
	background: rgba(255,255,255,1);
	z-index: 9000;
	position: absolute;
	top: 50%;
/*	top: 200px;*/
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	border-radius: 6px;
}


.modal_revise_data , .modal_company{
/*	display:none;*/
	position: relative;
	overflow-y: auto;
	/*width: 600px;*/
	margin: 0 auto;
	padding: 1em 1em;
	background: rgba(255,255,255,1);
	z-index: 9000;
	position: absolute;
	top: 90px;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	border-radius: 6px;
}

.close_modal_btn , .close_modal_rev_btn , .close_modal_new_user_btn{
	line-height: 1.5;
	position: absolute;
	top: 0.5em;
	right: 0.5em;
	display: inline-block;
	width:40px;
	height:40px;
}

.personal_info{
	border: 1px solid #000;
	height:120px;
	overflow-y:scroll;
	padding:10px;
	line-height: 150%;
	width:700px;
}

.personal_info li{
	text-align: left;
	margin-bottom:1em;
}

.personal_info a{
	color: #0000ff;
	text-decoration: underline;
}
.ov0 , .ov1 , .ov2 , .ov3 , .ov4 , .ov5{
/*	display: none;*/
}

.user_new , .user_rev{
/*	display: none;*/
}

.company_new , .company_rev{
	display: none;
}

/* smartphone only */
.smart_brck_ng{
	position: fixed;
	z-index: 400;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0,0,0,0.5);
}

.smart_modal_box{
	overflow-y: auto;
	margin: 0 auto;
	padding: 1em 1em 1em 1em;
	background: rgba(255,255,255,1);
	z-index: 9000;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	border-radius: 6px;
	width:85%;
}

.smart_annnounce_container{
	margin-top:0;
	width: 100%;
	border:1px solid rgba( 215, 0, 40, 0.3 );
	background-color: rgba( 255, 255, 255, 0.7 );
	padding:0 0 10px 0;
}

.modal_inner .smart_annnounce_txt{
	font-size: 1vw;
	width: auto;
	margin: 1.5vw;
}

.modal_inner .smart_annnounce_title{
    background: rgb( 215, 0, 40);
    color: white;
    margin-top: 0;
    margin-left: 0;
    padding-left: 1vw;
    margin-bottom: 1vw;
}

@media screen and (max-width: 896px){
	.modal_inner .smart_annnounce_txt{
		font-size: 2.5vw;
		width: auto;
		margin: 1.5vw;
	}
	
	.modal_inner .smart_annnounce_title{
		background: rgb( 215, 0, 40);
		color: white;
		margin-top: 0;
		margin-left: 0;
		padding-left: 1vw;
		margin-bottom: 1vw;
		font-size: 2.5vw;
	}
}

@media screen and (max-width: 480px){
	.modal_inner .smart_annnounce_txt{
		font-size: 7vw;
		width: auto;
		margin: 1.5vw;
	}
	
	.modal_inner .smart_annnounce_title{
		background: rgb( 215, 0, 40);
		color: white;
		margin-top: 0;
		margin-left: 0;
		padding-left: 1vw;
		margin-bottom: 1vw;
		font-size: 7vw;
	}
}

/*top---------------------------------------------------*/

.menu_btn_container{
	align-items: stretch;
	width:80%;
	background:transparent;
}
 .warning{
 	background: white;
 	padding: 10px;
 	width: 700px;
	opacity: 0.75;
	margin-top: 50px;
 }
 .warning img{
 	height: 50px;
 }
 .warning > *{
 	color: black;
 	float: left;
 }
.menu_btn{
	margin-left: 5vw;
	margin-top: 30px;
	width: 25%;
	height: 10vw;
	background: white;
	opacity: 0.75;
    position: relative;
	border-radius:0px;
	border:3px solid rgb(80,80,80);
	stroke: #505050;
	fill: #505050;
	min-height: 40px;
	outline: none;
}
.menu_btn::before, .menu_btn::after{
    content: '';
    display: block;
    background: white;
    position: absolute;
    top: -3px;
    bottom: -3px;
    right: 30px;
    left: 30px;
}
.menu_btn::before{
    top: -3px;
    bottom: -3px;
    right: 30px;
    left: 30px;
}
.menu_btn::after{
	top: 30px;
    bottom: 30px;
    right: -3px;
    left: -3px;
}
.menu_btn:hover{
	cursor:pointer;
	border-color: rgb( 215, 0, 40);
	stroke: rgb( 215, 0, 40);
	fill: rgb( 215, 0, 40);
	color: rgb( 215, 0, 40);
}

.menu_btn svg{
	width:5vw;
	min-width:24px;
	stroke: inherit;
	min-height: 30px;
}
.menu_btn span{
	z-index: 1;
	position: relative;
	stroke: inherit;
	color: inherit;
}
.btn_title, .btn_sub{
	font-size:0.8vw;
	position: relative;
	z-index: 1;
}
.btn_title{
	font-weight:bold;
}
.btn_sub{
	margin-top: 1vw;
	color: #505050;
	height: 3vw;
}
.input_txt{
	margin-right:10px;
	width:34%;
}

.temp_select{
	margin-left:10px;
	width:40vw;
}
.menu_btn_container.org{
	width:300px;
	background: rgba(0,0,0,0.1);
	padding-top: 0;
	position: fixed;
}
.menu_btn_container.org p{
	padding: 15px;
	padding-right: 5px;
	margin: 0;
	color: white;
	background: #505050;
}
.menu_btn.org{
	width:100%;
	border-radius:0px 0px 0px 0px;
	border:1px solid #cccccc;
	background: #efefef;
	margin: 0;
	font-weight: normal;
	height: 3vw;
}
.menu_btn.org::before, .menu_btn.org::after{
	content: none;
}
.menu_btn.org svg{
	width:2vw;
	min-width:24px;
	float: left;
}
.menu_btn.org .btn_title{
	font-weight: inherit;
	font-size: 15px;
	margin-left: 50px;
	text-align: left;
}
#main{
	height: calc(100% - 80px);
}
.menu_btn_container.org{
	height: 100%;
}
#current{
	font-weight: bold !important;
	stroke: rgb( 215, 0, 40);
	fill: rgb( 215, 0, 40);
	color: rgb( 215, 0, 40);
}
#input_Subject{
	height: 25px;
}
.center_container .menu_btn{
	min-height: 100px;
}
td input[type=text], td select{
	width: 200px;
}
.selected td{
	background: #f3c4c6 !important;
}
#expand{
	float: right;
	cursor: pointer;
}
#expand svg{
	height: 30px;
	width: 30px;
}
.td_radio{
	display: none;
}
.demo{
	width: 30%;
	height: 15vw;
	margin-top: 60px;
}
.outside{
	margin-left: 0;
	padding-left: 0;
	padding-right: 0;
	width: 100%;
}
.outside h2, .outside p{
	text-align: center;
}
#sort_table th{
	position: sticky;
	top: -1px;
}
@media only screen and (max-width: 1400px) {
	.menu_btn_container{
		padding-top: 0;
	}
	.warning{
		margin-top: 40px;
	}
	.flex_col p{
		margin-top: 0;
	}
}
@media only screen and (max-width: 1100px) {
	.btn_title, .btn_sub{
		font-size: 1.2vw;
	}
	.menu_btn{
		height: 12vw;
	}
	.data_container_not{
		width: 650px;
	}
}





.overlay_brck_ng{
	position: fixed;
	z-index: 400;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0,0,0,0.5);
}


/*2021/10/26 M-3.html 操作マニュアルボタン・モーダル追加*/
.right_container{
	display: flex;
	justify-content: flex-end;
}
.modal_open{
	width: 180px;
	height: 55px;
	line-height: 55px;
	text-align: center;
	cursor: pointer;
	margin-right: 40px;
	margin-top: 20px;
}
.modal_close{
	width: 200px;
	height: 50px;
	margin: 120px auto 0px;
	line-height: 50px;
	text-align: center;
}
.modal_head{
	font-weight: bold;
	margin-bottom: 20px;
	padding: 0 40px;
}
.modal_body{
	width: 780px;
	height: 340px;
	padding: 0 40px;
}
.pdf_link{
	display: flex;
	align-items: center;
	margin-bottom: 10px;
	white-space: nowrap;
}.pdf_link span:hover{
	color: rgb( 215, 0, 40);
}
.icon_pdf{
	color: rgb( 215, 0, 40);
	transform: scale(1.5);
	margin-right: 5px;
}
/* SWF追記------------------------------------- */
input[type="text"]:read-only {
	background: lightgray;
	border: 1px solid #ccc;
}

.label_red:before {
	content: "\5FC5\9808";
}

.flex_row .footer-form {
	margin-top: auto;
	margin-bottom: auto;
}

.disable-row:not(.selected) > td {
	background-color: #808080 !important;
}

.disable-row {
	display: none;
}

.flex_row > .btn {
	width:300px;
	height:40px;
}

.download-btn {
	margin-left: 10px;
}

#csv-download {
	display: none;
}
/*
.modal_inner .btn {
	width:100px;
	height:40px;
}
*/
