@charset "UTF-8";


/*================================================
 *  CSSリセット
================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0;word-wrap: break-word;}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*================================================
 *  一般・共通設定
================================================*/

html, body { overflow-x: auto; }

body {
	font-size:16px;
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	line-height:1.6;
	background: #f2f2f2;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	color: #000;
	counter-reset: crt-counter;
}

.wh{ background: #fff; }

@font-face {
	font-family: 'mplus';
	src: url('webfonts/font.eot');
	src: url('webfonts/font.eot?#iefix') format('embedded-opentype'),
		url('webfonts/font.woff') format('woff'),
		url('webfonts/font.ttf') format('truetype');
}

.mplus { font-family: 'mplus'; }

.bgg {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: auto;
}

.aligncenter{
	display:flex;
	align-items: center;
}

.pointer{ cursor: pointer; }

.err{ color : red; }

.clear {clear:both;}

.eye-btn {
	background: none;
	border: none;
	cursor: pointer;
	font-size: 16px;
	margin-left: 5px;
}

/* For modern browsers */
.clearfix:before,
.clearfix:after {
	content:"";
	display:table;
}

.clearfix:after { clear:both; }

.header_m {
	width:100%;
	height:700px;
}

.pt50{ padding-top:50px; }

.mb5{ margin-bottom:5px; }
.mb10{ margin-bottom:10px; }
.mb20{ margin-bottom:20px; }
.mb30{ margin-bottom:30px; }
.mb60{ margin-bottom:60px; }
.mb100{ margin-bottom:100px; }

.mt10{ margin-top: 10px; }
.mt20{ margin-top: 20px; }

.ml10{ margin-left:10px; }
.ml20{ margin-left:20px; }
.ml25{ margin-left:25px; }

.minw100{ min-width:100px; }

.margin20{ margin:20px; }

.w80{ width: 80px; }
.w120{ width: 120px; }

.tacenter{ text-align : center; }

a {
	color:#0071BC;
	text-decoration:none;
}
	a:hover { color:#000; }

	a:link{
		-webkit-transition: 0.2s linear;
		transition: 0.2s linear;
	}

h1 {
	font-size:30px;
	margin-bottom: 20px;
	font-weight: bold;
	font-family: 'mplus';
}

h2 {
	font-size:22px;
	margin: 0 0 20px;
	font-weight: bold;
	font-family: 'mplus';
}

h3 {
	font-size: 18px;
	font-family: 'mplus';
	font-weight: bold;
	margin: 0 0 10px;
}

h4 {
	font-weight: bold;
	font-size: 18px;
}

	h4::before{
		margin-right: 10px;
		font-weight: normal;
	}

h5 { font-weight: bold; }

h6 {
	margin-bottom:0.25em;
	padding-left:5px;
	font-size:16px;
	font-weight:bold;
}

img { vertical-align:bottom; }

em { 
	font-family: helvetica, arial, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, Meiryo-italic, sans-serif;
	font-style: italic; 
}

strong { font-weight:bold; }

pre {
	margin:1em 0;
	padding:1em;
}

blockquote {
	margin-bottom:1em;
	padding:1em;
	border:1px dotted #ddd;
	border-left:5px solid #ddd;
}

ruby { position: relative; }

	ruby rt {
		position: relative;
		top: 0.3ex;
		font-size:11px;
	}

.page{
	width: 980px;
	margin: 0 auto;
	height:30px;
}

	.page ul li {
		display:inline-block;
		float:right;
		text-align:center;
		background:#f5b300;
		margin-right:7px;
		width:30px;
	}

		.page ul li:first-child{ margin-right:0; }

	.page ul li a,
	.page ul li.active a{
		padding-top: 1px;
		padding-bottom:20px;
		display: block;
		color: #ffffff;
		height: 9px;
	}

		.page ul li a:hover{
			background: #f8d168;
			text-decoration: none;
			color: #000;
		}

	.page ul li.active a{ color: #000; }

.active_pg{
	background:#ffffff !important;
	color: #000000;
	border: #f5b300 1px solid;
	box-sizing: border-box;
	height: 25px;
	padding-top: 1px;
	padding-bottom:27px;
}

.menu_active{ background-color:#009E60; }
.folder_active {
	color : white;
	background-color:#5780c4; 
}

/*================================================
 *  ヘッダー
================================================*/

header{
	margin:0 auto 0;
	width:100%;
	height: 80px;
	box-shadow: 0 0px 5px rgb(33 37 56 / 25%);
	background: #fff;
	position: fixed;
	z-index: 99;
}

.rOver img:hover {
	opacity:0.6;
	filter:alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
}

.h_con{
	width: 98%;
	margin: auto;
	display: flex;
	align-content: center;
	height: 80px;
	flex-wrap: wrap;
	justify-content: space-between;
}

.logo_edit img{ max-height:50px; }
.logo img{ max-height:50px; }

	.logo::before{
		content: "";
		background-color: #0071BC;
		height: 50px;
		width: 50px;
		-webkit-mask: url("../img/v_logoD.png");
		mask: url("../img/v_logoD.png");
		-webkit-mask-size: cover;
		mask-size: cover;
		vertical-align: middle;
		border: 0;
		margin: auto;
		line-height: 53px;
		display: inline-block;
		margin-right: 20px;
	}

.mypage {
	position: relative;
	display: inline-block;
}

.mypage-btn {
	display:flex;
	align-items: center;
	flex-wrap: wrap;
	cursor: pointer;
	text-align: center;
	border: none;
	background: #fff;
	max-width: 240px;
	padding-right: 35px;
	transition: 0.3s ;		
}

	.mypage-btn span{
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
		max-width: 139px;
	}

	.mypage-btn::after{
		font-family: "Font Awesome 5 Free";
		content: '\f078';
		font-weight: 900;
		font-size: 12px;
		display: inline-block;
		position: absolute;
		right: 10px;
		top: 50%;
		transform: translateY(-50%);
	}

	.mypage-btn:hover{ background: #ccc; }

.mypage-menu {
	display: none;
	position: absolute;
	top: 130%;
	background: white;
	border: 1px solid #ddd;
	width: 150px;
	border-radius: 5px;
	overflow: hidden;
	right: 10px;
}

	.mypage-menu a {
		display: block;
		padding: 10px;
		text-decoration: none;
		color: #000;
	}

		.mypage-menu a:hover { background: #f5f5f5; }

.u_icon{
	width: 45px;
	margin-right: 15px;
	
}

	.u_icon img{
		border-radius: 100vh;
		width: 100%;
		object-fit: cover;
		border: #ccc 1px solid;
		aspect-ratio: 1 / 1;
	}

.set_sel_team{
	margin-left: auto;
	margin-right: 10px;
	padding-right: 40px;
	align-items: center;
	display: flex;
}

.set{
	border-right: 1px solid #cccccc;
	margin-right: 10px;
	padding-right: 20px;
}

	.set ul{
		display: flex;	
		gap:15px;
	}

		.set ul li a{
			border: 1px solid #ccc;
			display: block;
			width: 45px;
			height: 45px;
			text-decoration: none;
			text-align: center;
			line-height: 45px;
			border-radius: 5px;
			color: #B3B3B3;
			font-size: 20px;
		}

			.set ul li a:hover{
				background: #ccc;
				color: #fff;
			}

.mainC{
	width: 100%;
	display: flex;
	min-width: 1000px;
}

.menu{
	width: 15%;
	height: calc(100vh - 80px);
	background: #182A38;
	max-width: 300px;
	min-width: 180px;
	position: fixed;
	margin-top: 80px;
	overflow: auto;
	z-index:1500;
}

	.menu i{ margin-right:10px; }

.contents{
	width: calc(100% - 15%);
	margin:80px auto 0 15%;
	padding: 15px 0;
	box-sizing: border-box;
}
.contentsN{
	width: 100%;
	margin:10px auto 0 ;
	padding: 10px 0;
	box-sizing: border-box;
}

.con_bdy{
	width: 95%;
	margin:20px auto 0;
}

	.con_bdy.no_data{
		margin:20px auto 0;
		display: flex;
		justify-content: center;
		align-content: center;
		flex-wrap: wrap;
		height: calc(100% - 60px);
		flex-direction: column;
		font-size: 20px;
	}

		.no_data::before{
			display: block;
			content: url("../camera/img/nodata.png");
			margin:0 auto;
		}

.menu ul{
	display: flex;
	flex-direction: column;
	color: #fff;
	font-size: min(3vw,16px);
	font-family: 'mplus';
	margin-top: 20px;
}

	.menu ul li{
		flex-direction: column;
		justify-content: center;
		flex-wrap: wrap;
		transition: 0.2s linear;
		padding: 10px 10px;
	}
	
	.menu ul li a{
		color: #fff;
		text-decoration: none;
		display: block;
	}
	
		.menu ul li:hover{ background: #0071BC; }
		.menu ul li.on{ background: #0071BC; }

.open_m{
	cursor: pointer;
	margin: 0;
	position: relative;
}

	.open_m::after {
		font-family: "Font Awesome 5 Free";
		content: '\f078';
		font-weight: 900;
		font-size: 12px;
		display: inline-block;
		position: absolute;
		right: 10px;
		top: 50%;
		transform: translateY(-50%);
	}

	.open_m.active::after {
		font-family: "Font Awesome 5 Free";
		content: '\f077';
		font-weight: 900;
		font-size: 12px;
		display: inline-block;
		position: absolute;
		right: 10px;
		top: 50%;
		transform: translateY(-50%);
	}

.open-group ul{
	margin-top: 0;
	margin-left: 25px;
}

	.open-group ul li a{ display: block; }

.open-group2 {
	overflow: hidden;
	height: 0;
	transition: height 0.5s ease-out;
}

.wrap{
	margin:0 auto 10px;
	display: flex;
	gap:2%;
}

	.wrap:last-child{ margin-bottom: 0; }

.tit{
	border-bottom: 1px solid #ccc;
	font-family: 'mplus';
	font-size: 18px;
	padding: 10px 10px 5px;
	display: flex;
	justify-content: space-between;
	font-weight: bold;
}

.tit2 {
	border-bottom: 1px solid #ccc;
	font-family: 'mplus';
	font-size: 18px;
	padding: 10px 10px 5px;
	display: flex;
	justify-content: space-between;
	font-weight: bold;
}

.titB{
	display: flex;
	justify-content: space-between;
}

	.titB img:hover{
		transition: .5s;
		-webkit-transform: rotateY(360deg);
		transform: rotateY(360deg);
	}

.titC{
	font-family: 'mplus';
	font-weight: bold;
}

.titD{
	font-family: 'mplus';
	font-weight: bold;
	margin-bottom: 10px;
	margin-right: 10px;
}

.wrt{ cursor: pointer; }

	.wrt::before{
		font-family: "Font Awesome 5 Free";
		content: '\f044';
		font-weight: 900;
		font-size: 20px;
		display: inline-block;
		margin-right: 10px;
		color: #B3B3B3;
		transition: 0.3s ;	
	}

	.wrt:hover::before{ color: #4d4d4d; }

.qus::before{
	font-family: "Font Awesome 5 Free";
	content: '\f4ad';
	font-weight: 900;
	font-size: 20px;
	display: inline-block;
	margin-right: 10px;
	color: #B3B3B3;
	transition: 0.3s ;	
}

	.qus:hover::before{ color: #4d4d4d; }

.detail{
	padding: 10px;
	max-height: 180px;
	overflow: auto;
}

	.detail ul li a{
		padding: 10px 20px;
		display: block;
		text-decoration: none;
		color: #4d4d4d;
	}

	.detail ul li:nth-child(2n) a{ background: rgba(0,113,188,.2); }
	
	.detail ul li a:hover{
		background: #0071BC;
		color: #fff;
	}

.src {
	width: 40%;
	display: flex;
	justify-content: flex-end;
}

.func{
	display: flex;
	gap:10px;
	margin-bottom: 10px;
	justify-content: space-between;
	min-height : 35px;
	align-items: center;
}

	.func p{ font-family: 'mplus'; }

.func_d ul{
	display: flex;
	font-family: 'mplus';
}

	.func_d ul li a{
		width:50px; 
		background: #fff;
		display: block;
		text-align: center;
		color: #000;
	}

	.func_d ul li:first-child a{
		border-right: 1px solid #ccc;
		border-radius: 5px 0 0 5px;
	}

	.func_d ul li:last-child a{
		border-left: 1px solid #ccc;
		border-radius:0 5px 5px 0;
	}
	
	.func_d ul li a:hover{ background: #ccc; }

.idx{ margin-left: 3em; }

	.idx ul {
		gap:10px;
		flex-wrap: wrap;
		counter-reset: idx-counter;
	}

		.idx ul li{
			width: 100%;
			counter-increment: idx-counter;
		}

			.idx ul li::before {
				counter-increment: number 1;
				content: counter(idx-counter) ".";
				margin-right: 5px;
			}

.crt{
	counter-increment: crt-counter;
	padding: 15px 0;
	border-bottom: 1px solid #ccc;
}

	.crt:last-child{ border-bottom: none; }

	.crt h2::before{
		counter-increment: number 0;
		content: counter(crt-counter) ". ";
		margin-right: 5px;
	}

	.crt h2 + h3 { counter-reset: h3-counter;  }
	
	.crt h3 {
		counter-increment: h3-counter; 
		margin-top: 20px;
		margin-left: 1.5em;
	}

		.crt h3::before {
			content: counter(crt-counter) "-" counter(h3-counter) ". ";
			margin-right: 5px;
		}

.h_contents{ display: flex; }

.cont{
	width: 70%;
	margin: auto;
}

.cont2{
	width: 80%;
	margin: auto;
	background: #fff;
	padding: 20px;
	box-sizing: border-box;
	border-radius: 10px;
	box-shadow: 0px 0px 10px rgba(204,204,204, 50%);
	min-height: calc(100% - 80px);
}

.contentsD{
	border-radius: 10px;
	width: 100%;
	background: #fff;
	min-height: 180px;
	overflow: hidden;
	box-shadow: 0px 0px 10px rgba(204,204,204, 50%);
}


.cont3{
	width: 70%;
	margin: auto;
	background: #fff;
	padding: 20px;
	box-sizing: border-box;
	border-radius: 10px;
	box-shadow: 0px 0px 10px rgba(204,204,204, 50%);
}

.contP{
	width: 95%;
	display: flex;
	justify-content: space-between;
	gap:2%;
	margin: auto;
}

.contP2{
	width: 100%;
	display: flex;
	justify-content: space-between;
	gap:2%;
	margin: auto;
}

.contH {
	width: calc(100% - 300px);
	background: #fff;
	padding: 20px;
	box-sizing: border-box;
	border-radius: 10px;
	box-shadow: 0px 0px 10px rgba(204, 204, 204, 50%);
	min-height: 100%;
}

.contH2 {
	width: calc(100% - 320px);
	background: rgb(255, 255, 255);
	box-sizing: border-box;
	border-radius: 10px;
	box-shadow: rgba(204, 204, 204, 0.5) 0px 0px 10px;
	min-height: 100px;	
}

.contM{
	display: flex;
	flex-direction: column;
	gap:10px;
}

.cont_ed{
	width: 49%;
	background: #fff;
	padding: 20px;
	box-sizing: border-box;
	border-radius: 10px;
	box-shadow: 0px 0px 10px rgba(204,204,204, 50%);
}

.cont_ed2{ width: 49%; }

.cont_ed3{
	width: 100%;
	background: #fff;
	padding: 20px;
	box-sizing: border-box;
	border-radius:10px;
	box-shadow: 0px 0px 10px rgba(204,204,204, 50%);
	height: 650px;
	overflow-x: hidden;
	overflow-y: auto;
}

.cont_ed4{
	width: 100%;
	background: #fff;
	padding: 20px;
	box-sizing: border-box;
	border-radius:10px;
	box-shadow: 0px 0px 10px rgba(204,204,204, 50%);
	height: calc(100vh - 190px);
	overflow-x: hidden;
	overflow-y: auto;
}

.cont_ed4_2{
	width: 100%;
	background: #fff;
	padding: 20px;
	box-sizing: border-box;
	border-radius:10px;
	box-shadow: 0px 0px 10px rgba(204,204,204, 50%);
	height: calc(100vh - 190px);
}

.cont_ed5{
	width: 100%;
	background: #fff;
	padding: 20px;
	box-sizing: border-box;
	border-radius:10px;
	box-shadow: 0px 0px 10px rgba(204,204,204, 50%);
	height: calc(100vh - 220px);
	overflow-x: hidden;
	overflow-y: auto;
}

.cont_ed5_2{
	width: 100%;
	background: #fff;
	padding: 20px;
	box-sizing: border-box;
	border-radius:10px;
	box-shadow: 0px 0px 10px rgba(204,204,204, 50%);
	height: calc(100vh - 220px);
}

.cont_d{
	height: calc(100% - 10px);
	overflow: auto;
}

.cont_ed_gene{
	width: 100%;
	background: #fff;
	padding: 15px;
	box-sizing: border-box;
	border-radius:10px;
	box-shadow: 0px 0px 10px rgba(204,204,204, 50%);
	height: 400px;
	overflow-x: hidden;
	overflow-y: auto;
}

.cont_ed_gene2 {
	width: 100%;
	background: #fff;
	padding: 15px;
	box-sizing: border-box;
	border-radius: 10px;
	box-shadow: 0px 0px 10px rgba(204, 204, 204, 50%);
	height: 600px;
	overflow-x: hidden;
	overflow-y: auto;
}

.cont_ed_gene3{
	width: 100%;
	background: rgb(255, 255, 255);
	padding: 10px;
	box-sizing: border-box;
	border-radius: 10px;
	box-shadow: rgba(204, 204, 204, 0.5) 0px 0px 10px;
	height: 80px;
	overflow: hidden auto;
}

.editT{
	background:#0071BC;
	color: #fff;
	border-radius: 10px 10px 0 0;
	padding: 10px;
	font-family: 'mplus';
}

.swot{
	display: flex;
	justify-content: space-between;
	gap:10px;
	margin-bottom: 10px;
}

	.swot:last-child{ margin-bottom: 0; }

.swotD{
	width: 49%;
	border: 1px solid #ccc;
	padding: 10px;
	box-sizing: border-box;
}

	.swotD:first-child{
		width: 44px;
		writing-mode: vertical-rl;
		text-orientation: upright;
		text-align: center;
		font-family: 'mplus';
		font-weight: bold;
	}

.swotDt{
	max-height: 250px;
	overflow: auto;
	padding: 10px 0;
}

.con{
	width: 80%;
	margin: auto;
}
.con2{
	width: 80%;
	margin: auto;
	background: #fff;
	padding: 20px;
	box-sizing: border-box;
	box-shadow: 0px 0px 10px rgba(204, 204, 204, 50%);
	border-radius: 10px;
}
.conP{
	width: 95%;
	margin: auto;
}

.conP2 {
	width: 95%;
	margin: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.inq_box{
	display: flex;
	flex-direction: column;
	height: calc(100vh - 220px);
}

.raginq_box{
	display: flex;
	flex-direction: column;
	height: calc(100vh - 270px);
}

.qst{
	box-shadow: 0px 0px 10px rgba(204, 204, 204, 50%);
	border-radius: 10px;
	padding: 20px;
	background: #fff;
	margin-bottom: 20px;
	box-sizing: border-box;
}
.qst2{
	border-radius: 10px;
	padding: 20px;
	background: #f2f2f2;
	margin: 20px 0 0;
	box-sizing: border-box;
	bottom: 10px;
}

	.qst2 .file{ margin: 0; }
	
	.qst2 .file_d,
	.qst2 .file_d2{
		margin-bottom: 10px;
		width: 30%;
		position: relative;
	}
	
	.qst2 .f_name{ width: calc(100% - 60px); }
	
	.qst2 .f_nameT{
		width: calc(100% - 40px);
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	
.inquery_del_btn {
	margin-left: auto;
	background: transparent;
	border: none;
	color: #4d4d4d;
	font-size: 16px;
	cursor: pointer;
	padding: 0 10px;
}
	
	.qst2 .inquery_del_btn{
		display: inline-block;
		opacity: 1;
		position: absolute;
		right: 0;
		top: 0;
		bottom: 0;
	}

.inq_d{
	max-width: 60%;
	background: rgba(0, 113, 188, .2);
	border-radius: 10px;
	margin-left: auto;
	padding: 10px;
	box-sizing: border-box;
	word-break: break-all;
	margin-bottom: 20px;
	width: fit-content;
}

.ans_d{
	width: 100%;
	background: #f7f7f7;
	border-radius: 10px;
	padding: 10px;
	box-sizing: border-box;
	word-break: break-all;
}

.ans{
	box-sizing: border-box;
	height: 65vh;
	overflow: auto;
}
.answer{
	box-shadow: 0px 0px 10px rgba(204, 204, 204, 50%);
	border-radius: 10px;
	padding: 20px;
	background: #fff;
	box-sizing: border-box;
	margin-bottom: 15px;
}

.answer2{
	box-shadow: 0px 0px 10px rgba(204, 204, 204, 50%);
	border-radius: 10px;
	padding: 20px;
	background: #fff;
	min-height: 210px;
	box-sizing: border-box;
}

.answer3{
	box-shadow: 0px 0px 10px rgba(204, 204, 204, 50%);
	border-radius: 10px;
	padding: 20px;
	background: #fff;
	height: 330px;
	box-sizing: border-box;
}

.answer4{
	box-shadow: 0px 0px 10px rgba(204, 204, 204, 50%);
	border-radius: 10px;
	padding: 20px;
	background: #fff;
	height: 300px;
	box-sizing: border-box;
	margin-top: 20px;
}

.answer_b{
	min-height: 170px;
	border-radius: 10px;
	box-sizing: border-box;
	background: #f2f2f2;
	padding: 20px;
}	

.answer_b2{
	border-radius: 10px;
	background: #f2f2f2;
	padding: 20px;
	box-sizing: border-box;
}

.answerD{
	background: #fff;
	border-radius: 10px;
	padding: 20px;
	margin: 20px 0 0;
	overflow-y: auto;
	height: 370px;
	word-break: break-all;
	box-sizing: border-box;
}

.answerD2{
	background: #fff;
	border-radius: 10px;
	padding: 10px;
	overflow-y: auto;
	height: 600px;
	word-break: break-all;
	box-sizing: border-box;
}

.answerD3{
	background: #fff;
	border-radius: 10px;
	padding: 20px;
	overflow-y: auto;
	min-height: 350px;
	word-break: break-all;
	box-sizing: border-box;
	margin: 20px 0 0;
	display: flex;
	justify-content: space-between;
}

.answerD4{
	background: #fff;
	border-radius: 10px;
	padding: 20px;
	overflow-y: auto;
	height: 180px;
	word-break: break-all;
	box-sizing: border-box;
	margin: 20px 0 0;
	display: flex;
	justify-content: space-between;
}

.copy{
	font-size: 18px;
	background: none;
	margin-top: 10px;
	color: #999;
}
	.copy:hover{ opacity: .6; }

.rslt{ width: 80%; }

.word::before {
	font-family: "Font Awesome 5 Free";
	content: '\f1c2';
	font-weight: 900;
	font-size: 16px;
	display: inline-block;
	margin-right: 10px;
	color: #0071bc;
}

.excel::before {
	font-family: "Font Awesome 5 Free";
	content: '\f1c3';
	font-weight: 900;
	font-size: 16px;
	display: inline-block;
	margin-right: 10px;
	color: #0071bc;
}

.text::before {
	font-family: "Font Awesome 5 Free";
	content: '\f15c';
	font-weight: 900;
	font-size: 16px;
	display: inline-block;
	margin-right: 10px;
	color: #0071bc;
}

.c_swot{
	display: flex;
	justify-content: space-between;
	gap:10px;
}

.c_swotD{
	width: 32.5%;
	border: 1px solid #ccc;
	padding: 10px;
	box-sizing: border-box;
}

.c_swotDt{
	max-height: 250px;
	overflow: auto;
	padding: 10px 0;
}

.c_swotN{
	width: calc(100% - 33% - 44px);
	margin-left: auto;
}

.c_swotN2{
	display: flex;
	justify-content: flex-end;
	gap:10px;
	margin-bottom: 10px;
}

.c_swotN3{
	display: flex;
	justify-content: space-between;
	gap:10px;
	flex-wrap: wrap;
	width: 100%;
}

.c_swotT{
	text-align: center;
	font-family: 'mplus';
	font-weight: bold;
	border: 1px solid #ccc;
	padding: 10px;
	width: 100%;
	margin-left: auto;
	margin-bottom: 10px;
	box-sizing: border-box;
	height: 44px;
}

.c_swotT2{
	width: 44px;
	writing-mode: vertical-rl;
	text-orientation: upright;
	text-align: center;
	font-family: 'mplus';
	font-weight: bold;
	border: 1px solid #ccc;
	padding: 10px;
	box-sizing: border-box;
}

.c_swotD2{
	width: 50%;
	border: 1px solid #ccc;
	padding: 10px;
	box-sizing: border-box;
}

.label_clip {
	color: #0071bc;
	cursor: pointer;
	transition: .3s;
}

	.label_clip:hover { opacity: 0.8; }

textarea.editE {
	margin: 0;
	padding: 5px;
	border: none;
	font-size: 15px;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	box-sizing: border-box;
	width: 100%;
	resize: none;
	outline: none;
	field-sizing: content;
	height: calc(100% - 10px);
}

textarea.pdf2text {
	margin: 0;
	padding: 5px;
	border: none;
	font-size: 15px;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	box-sizing: border-box;
	width: 100%;
	resize: none;
	outline: none;
	field-sizing: content;
}

textarea.report {
	margin: 0;
	padding: 5px;
	border: none;
	font-size: 15px;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	box-sizing: border-box;
	width: 100%;
	min-height:200px;
	resize: none;
	outline: none;
	field-sizing: content;
}

textarea.prompt {
	margin: 0;
	padding: 5px;
	border: none;
	font-size: 15px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	box-sizing: border-box;
	width: 100%;
	resize: none;
	outline: none;
	field-sizing: content;
	max-height: 100px;
	border-radius: 5px;
}

textarea.prompt2 {
	margin:20px 0 ;
	padding: 5px;
	border: none;
	font-size: 15px;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	box-sizing: border-box;
	width: 100%;
	resize: none;
	outline: none;
	box-shadow: 0px 0px 5px rgba(204, 204, 204, 60%);
}

input.infoInput {
	height: 25px;
	margin: 0;
	padding: 5px;
	border: #CCCCCC 1px solid;
	font-size: 15px;
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
}

input.infoInput2 {
	height: 37px;
	margin: 0;
	padding: 5px;
	border: #CCCCCC 1px solid;
	font-size: 15px;
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
}

.infosizeB{ width:100%; }
.infosize{ width:95%; }
.infosize2{ width:70%; }
.infosize3{ width:80%; }
.infosize4{ width:30%; }
.infosize5{ width:50%; }
.infosize6{ width:150px; }
.infosize7{ width:750px; }
.infosize8{ width:20%; }
.infosize9{ width:250px; }

.infoselect{
	height: 35px;
	padding: 5px;
	border: #CCCCCC 1px solid;
	font-size: 15px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	cursor : pointer;
}

textarea.infocomment {
	margin: 0;
	padding: 5px;
	border: #CCCCCC 1px solid;
	font-size: 15px;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	box-sizing: border-box;
}

button.search{
	border:1px solid #ccc;
	background: #ccc;
	border-radius: 5px;
	width: 37px;
	height: 37px;
	color: #4d4d4d;
	cursor: pointer;
	transition: .3s;
	font-size: 16px;
	box-sizing: border-box;
	margin-left: 5px;
}

	button.search:hover{
		background: #4d4d4d;
		color:#fff; 
	}

.btn a{
	width: 150px;
	height: 40px;
	border-radius: 50vh;
	background: #0071BC;
	color: #fff;
	box-sizing: border-box;
	display: block;
	text-align: center;
	line-height: 40px;
	text-decoration: none;
	font-family: 'mplus';
	border: 1px solid #0071BC;
}

	.btn a:hover{
		background: #fff;
		color: #0071BC;
		border: 1px solid #0071BC;
	}

.btnE a{
	width: 150px;
	height: 40px;
	border-radius: 50vh;
	background: #0071BC;
	color: #fff;
	box-sizing: border-box;
	display: block;
	text-align: center;
	line-height: 40px;
	text-decoration: none;
	font-family: 'mplus';
	border: 1px solid #0071BC;
}

	.btnE a::before{
		font-family: "Font Awesome 5 Free";
		content: '\f304';
		font-weight: 900;
		font-size: 12px;
		display: inline-block;
		margin-right: 5px;
	}

	.btnE a:hover{
		background: #fff;
		color: #0071BC;
		border: 1px solid #0071BC;
	}

.btnP a{
	width: 150px;
	height: 40px;
	border-radius:5px;
	background: #0071BC;
	color: #fff;
	box-sizing: border-box;
	display: block;
	text-align: center;
	line-height: 40px;
	text-decoration: none;
	font-family: 'mplus';
	border: 1px solid #0071BC;
}

.btnP a::before{
	font-family: "Font Awesome 5 Free";
	content: '\2b';
	font-weight: 900;
	font-size: 12px;
	display: inline-block;
	margin-right: 5px;
}

	.btnP a:hover{
		background: #fff;
		color: #0071BC;
		border: 1px solid #0071BC;
	}

.btnR a{
	width: 100px;
	height: 30px;
	border-radius:5px;
	background: #e6e6e6;
	color: #000;
	box-sizing: border-box;
	display: block;
	text-align: center;
	line-height: 28px;
	text-decoration: none;
	font-family: 'mplus';
	border: 1px solid #e6e6e6;
	font-size: 14px;
}

	.btnR a:hover{
		background: #4d4d4d;
		color: #fff;
		border: 1px solid #4d4d4d;
	}

button.send{
	border: none;
	background: #0071bc;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	color: #fff;
	font-size: 20px;
	cursor: pointer;
	transition: .3s;
}

	button.send:hover{ opacity: .6; }

button.dele {
	border:1px solid #ba0024;
	background: #ba0024;
	border-radius: 50vh;
	width: 150px;
	height: 40px;
	color: #fff;
	cursor: pointer;
	transition: .3s;
	font-family: 'mplus';
	font-size: 16px;
}

	button.dele:hover{
		background: #fff;
		color:#ba0024; 
	}

button.dele_reverse {
	border:1px solid #ba0024;
	background: #fff;
	border-radius: 50vh;
	width: 150px;
	height: 40px;
	color: #ba0024;
	cursor: pointer;
	transition: .3s;
	font-family: 'mplus';
	font-size: 16px;
}

	button.dele_reverse:hover{
		background: #ba0024;
		color: #fff; 
	}


button.analysis {
	border:1px solid #0071bc;
	background: #0071bc;
	border-radius: 50vh;
	width: 200px;
	height: 40px;
	color: #fff;
	cursor: pointer;
	transition: .3s;
	font-family: 'mplus';
	font-size: 16px;
}

button.analysis:hover{
	background: #fff;
	color:#0071bc; 
}

button.save {
	border:1px solid #0071bc;
	background: #fff;
	border-radius: 50vh;
	width: 150px;
	min-width:150px;
	height: 40px;
	color: #0071bc;
	cursor: pointer;
	transition: .3s;
	font-family: 'mplus';
	font-size: 16px;
}

	button.save:hover{
		background: #0071bc;
		color:#fff; 
	}
	
button.save2 {
	border: 1px solid #0071bc;
	background: #fff;
	border-radius: 50vh;
	height: 28px;
	color: #0071bc;
	cursor: pointer;
	transition: .3s;
	font-family: 'mplus';
	font-size: 14px;
}

	button.save2:hover{
		background: #0071bc;
		color:#fff; 
	}
	
button.regi {
	border:1px solid #0071bc;
	background: #0071bc;
	border-radius: 50vh;
	width: 150px;
	height: 40px;
	color: #fff;
	cursor: pointer;
	transition: .3s;
	font-family: 'mplus';
	font-size: 16px;
}

	button.regi:hover{
		background: #fff;
		color:#0071bc; 
	}

button.cancel {
	border:1px solid #4b4b4b;
	background: #4b4b4b;
	border-radius: 50vh;
	width: 150px;
	height: 40px;
	color: #fff;
	cursor: pointer;
	transition: .3s;
	font-family: 'mplus';
	font-size: 16px;
}

	button.cancel:hover{
		background: #fff;
		color:#4b4b4b; 
	}

button.cancel_reverse {
	border:1px solid #4b4b4b;
	border-radius: 50vh;
	width: 150px;
	height: 40px;
	cursor: pointer;
	transition: .3s;
	font-family: 'mplus';
	font-size: 16px;
	background: #fff;
	color:#4b4b4b; 
}

	button.cancel_reverse:hover{
		background: #4b4b4b;
		color: #fff;
	}


button.web_off {
	border:1px solid #0071bc;
	background: #fff;
	border-radius: 50vh;
	width: 150px;
	min-width:150px;
	height: 40px;
	color: #0071bc;
	cursor: pointer;
	transition: .3s;
	font-family: 'mplus';
	background: #fff;
	font-size: 16px;
}

button.web_on {
	border:1px solid #0071bc;
	border-radius: 50vh;
	width: 150px;
	min-width:150px;
	height: 40px;
	cursor: pointer;
	transition: .3s;
	font-family: 'mplus';
	font-size: 16px;
	background: #0071bc;
	color:#fff;
}

button.web_off_chat {
	border:1px solid #0071bc;
	background: #fff;
	border-radius: 50vh;
	width: 120px;
	height: 28px;
	color: #0071bc;
	cursor: pointer;
	transition: .3s;
	font-family: 'mplus';
	font-size: 14px;
	background: #fff;
}

button.web_on_chat {
	border:1px solid #0071bc;
	border-radius: 50vh;
	width: 120px;
	height: 28px;
	color:#fff;
	cursor: pointer;
	transition: .3s;
	font-family: 'mplus';
	font-size: 14px;
	background: #0071bc;
}

.btnarea{
	display: flex;
	justify-content:center;
	margin: 20px 0 20px;
}

.btnarea2{
	display: flex;
	justify-content:flex-end;
	margin: 10px 0;
	gap:20px;
}

.btnarea3{
	display: flex;
	justify-content:center;
	margin: 20px auto 0;
	gap:20px;
}

.btnarea4{
	display: flex;
	justify-content:center;
	margin: 0 auto 20px;
}

.btnarea5{	
	display: flex;
	justify-content: space-between;
	height: 40px;
	align-items: center;
}	

.btnarea6{	
	display: flex;
	justify-content: flex-end;
	height: 40px;
	align-items: center;
}

.btnarea7{
	display: flex;
	justify-content: center;
	margin: 20px 0 0;
}

.formBtn1{
	border: 1px solid #0071bc;
	background: #0071bc;
	border-radius: 50vh;
	width: 150px;
	height: 40px;
	color: #fff;
	cursor: pointer;
	transition: .3s;
	font-family: 'mplus';
	font-size:16px;
}

	.formBtn1:hover{
		background: #fff;
		color: #0071bc;
		border: 1px solid #0071bc;
	}


.formBtn2{
	width:150px;
	height:40px;
	background: #4d4d4d;
	color:#fff;
	font-size:16px;
	border-radius: 50vh;
	box-sizing: border-box;
	transition: .3s;
	font-family: 'mplus';
	border: 1px solid #4d4d4d; 
}

	.formBtn2:hover{ 
		background: #fff;
		color: #4d4d4d;
		border: 1px solid #4d4d4d; 
	}

.formBtn3{
	color:#fff;
	font-size:16px;
	background:#0071BC; 
	border-radius: 5px;
	text-align: center;
	text-decoration: none;
	margin: 0 auto;
	padding:5px 10px;
	-webkit-transition: 0.2s linear;
	transition: 0.2s linear;
	font-family: 'mplus';
	min-width: 150px;
	height: 32px;
}
	.formBtn3:hover{ opacity: .6; }

.formBtn4{
	color:#fff;
	font-size:16px;
	background:#ba0024; 
	border-radius: 5px;
	text-align: center;
	text-decoration: none;
	margin: 0 auto;
	padding:5px 10px;
	-webkit-transition: 0.2s linear;
	transition: 0.2s linear;
	font-family: 'mplus';
	min-width: 150px;
	height: 32px;
}
	.formBtn4:hover{ opacity: .6; }

.formBtn5{
	width:150px;
	height:40px;
	background: #ba0024;
	color:#fff;
	font-size:16px;
	border-radius: 50vh;
	box-sizing: border-box;
	transition: .3s;
	font-family: 'mplus';
	border: 1px solid #ba0024; 
}

	.formBtn5:hover{ 
		background: #fff;
		color: #ba0024;
		border: 1px solid #ba0024; 
	}
	
@keyframes l3 {to{transform: rotate(1turn)}}

input[type="submit"],
input[type="button"],
button{
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	box-sizing: border-box;
	cursor: pointer;
	border: none;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration { display: none; }

input[type="submit"]::focus,
input[type="button"]::focus { outline-offset: -2px; }

input[type="file"] { display: none; }

input[type="radio"] {
	vertical-align: middle;
	margin-top: -3px;
	cursor: pointer;
}

.preview-box {
	width: 90%;
	height: 30px;
	padding: 5px;
	display: flex;
	align-content: center;
	flex-wrap: wrap;
	justify-content: center;
}

.previewImg{
	width: 30px;
	height: 100%;
	margin-right: 10px;
	background-color: #0071bc; /* デフォルトの色 */
	-webkit-mask-image: url("../img/pdf.svg");
	mask-image: url("../img/pdf.svg");
	-webkit-mask-size: cover;
	mask-size: cover;
}

.upload-box {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	cursor: pointer;
	width: 100%;
	min-height: 50px;
	padding: 5px;
	border: 2px dashed #999;
	border-radius: 8px;
	box-sizing: border-box;
	margin: 20px 0;
	color: #999;
}

	.upload-box span { text-align: center; }
	
		.upload-box span::before {
			font-family: "Font Awesome 5 Free";
			content: '\f574';
			font-weight: 900;
			font-size: 30px;
			display: block;
			margin-right: 10px;
		}

.file{
	margin-top: 30px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	border-radius: 5px;
}

.file::after {
	display: block;
	content: "";
	width: 32%;
}

.file_d{
	width: 100%;
	display: flex;
	padding: 10px;
	box-sizing: border-box;
	border: 1px solid #ccc;
	font-size: 15px;
	font-weight: bold;
}

.file_d2{
	width: 100%;
	display: flex;
	padding: 10px;
	box-sizing: border-box;
	border: 1px solid #ccc;
	font-size: 15px;
	font-weight: bold;
	border-radius: 10px;
	background: #fff;
}

	.file_d:not(:first-child){ border-top: none; }
	.file_d:first-child{ border-radius: 10px 10px 0 0; }
	.file_d:last-child{ border-radius:0 0 10px 10px; }
	.file_d:only-child{ border-radius: 10px; }
	.file_d a:hover,
	.file_d2 a:hover{
		background: #0071bc;
		color: #fff;
	}

	.file_d.file_i::before,
	.file_d2.file_i::before {
		font-family: "Font Awesome 5 Free";
		content: '\f15c';
		font-weight: 900;
		font-size: 22px;
		margin-right: 10px;
		background: #0071bc;
		width: 50px;
		height: 50px;
		text-align: center;
		border-radius: 100vh;
		color: #fff;
		line-height: 50px;
	}

.f_name{ overflow: hidden; }
.f_nameT{ font-weight: bold; }

.f_nameF{
	font-weight: normal;
	font-size: 14px;
}

.add{
	border: 1px solid #0071bc;
	width: 150px;
	text-align: center;
	border-radius: 50vh;
	transition: .3s;
	font-family: 'mplus';
	height: 40px;
	line-height: 40px;
	margin-left: auto;
	color: #0071bc;
}

	.add:hover {
		background: #0071bc;
		color: #fff;
	}

.f_add label{
	width: 150px;
	display: block;
	margin-left: auto;
}

	.f_add label:hover { opacity:1; }

.file_view_btn {
	margin-left: auto;
	margin-right: 50px;
	background: transparent;
	border: none;
	color: #4d4d4d;
	font-size: 16px;
	cursor: pointer;
}

.delete_btn {
	background: transparent;
	border: none;
	color: #4d4d4d;
	font-size: 16px;
	cursor: pointer;
	margin-right: 15px;
}

.file_d:hover .file_view_btn, .file_d2:hover .file_view_btn,
.file_d:hover .delete_btn, .file_d2:hover .delete_btn {
	display: inline-block;
	opacity: 1;
}

.drop{
	margin-top: 20px;
	border: 2px dashed #ccc;
	padding: 20px;
	text-align: center;
	color: #4d4d4d;
	border-radius: 10px;
	cursor: pointer;
}

	.drop::before{
		font-family: "Font Awesome 5 Free";
		content: '\e494';
		font-weight: 900;
		font-size: 22px;
		display: block;
	}

.qst2 .file{ margin: 0; }
.qst2 .file_d,.qst2 .file_d2{ margin-bottom: 20px; }

.entry dl {
	width: 100%;
	line-height: 1.8em;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 20px 0;
}

	.entry dl dt {
		width: 30%;
		padding: 15px 0;
		text-align: center;
		font-weight: bold;
		box-sizing: border-box;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.entry dl dd {
		width: 70%;
		padding: 15px 2% 15px 0;
		box-sizing: border-box;
	}

		.entry dl dd ul{ display: flex; }
			.entry dl dd ul li{ width: 20%; }

.history{ margin-top: 30px; }

	.history dl{
		width: 100%;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		color: #4d4d4d;
		transition: all .3s ease;
	}

		.history dl dt {
			width: 15%;
			padding: 15px 10px;
			box-sizing: border-box;
		}

		.history dl dd {
			width: 85%;
			padding:15px 10px;
			box-sizing: border-box;
		}

	.history a:nth-child(2n) dl{ background: rgba(0,113,188,.2); }

	.history a:hover dl{
		background: #0071BC;
		color: #fff;
	}

.editor_title{
	font-size:24px;
	font-weight: bold;
	font-family: 'mplus';
	width:calc(100% - 50px);
	height:40px;
}

.func2{
	display: flex;
	gap:10px;
	margin: 10px 0;
	flex-wrap: wrap;
}

.func_d2 { position: relative; }

	ul.func_d2 {
		display: flex;
		font-family: 'mplus';
	}
	
		ul.func_d2 li button{
			width:40px; 
			height: 27px;
			display: block;
			background: #fff;
			text-align: center;
			color: #000;
			border-left: 1px solid #ccc;
			position: relative;
			cursor: pointer;
			font-size: 14px;
			padding: 2px 0;
		}

			ul.func_d2 li:first-child button{
				border-left: none;
				border-radius: 5px 0 0 5px;
			}

			ul.func_d2  li:last-child button{ border-radius:0 5px 5px 0; }
			ul.func_d2  li:only-child button{ border-radius: 5px; }
			ul.func_d2  li button:hover{ background: #ccc; }

		ul.func_d2  li i{ font-size: 14px; }

			/* ツールチップ全体の設定 */
			ul.func_d2  li button::before,
			ul.func_d2  li button::after {
				position: absolute;
				opacity: 0;
				transition: all 0.3s;
			}

			/* 吹き出しのひげ部分 */
			ul.func_d2  li button::before {
				content: "";
				border: 10px solid transparent;
				border-top-color: #000;
				bottom: 10px;
				left: 10px;
			}

			/* 吹き出しの本体 */
			ul.func_d2  li button::after {
				content: attr(data-title);
				display: block;
				padding: 7px ;
				background: #000;
				border-radius: 3px;
				font-size: 12px;
				color: #fff;
				bottom: 30px;
				left: 0;
				width: auto;
				white-space: nowrap;
				box-sizing: border-box;
			}

			/* マウスホバーしたときの設定 */
			ul.func_d2  li button:hover::before{
				bottom: 17px;
				opacity: 1;
			}

			ul.func_d2  li button:hover::after{
				bottom: 36px;
				opacity: 1;
			}

.has-submenu { position: relative; }

.submenu {
	position: absolute;
	top: 110%; 
	left: 0;
	display: none;
	background-color: #fff;
	border: 1px solid #ccc;
	z-index: 1000; /* 他の要素より前面に */
	box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

	ul.submenu li {
		white-space: nowrap;
		border-bottom: 1px solid #ccc;
	}

	ul.submenu li button{
		padding: 5px 10px;
		border-radius: 5px!important;
		display: block;
		min-width: 120px;
		height:60px;
	}

	ul.submenu li:last-child{ border-bottom: none; }
		ul.submenu li button:hover{ border-radius: 0!important; }
		ul.submenu li button::before,ul.submenu li button::after{ display: none!important; }

.info{
	background: #e2f5ff;
	padding:15px 0;
	border-radius: 5px;
}

	.info::before{
		font-family: "Font Awesome 5 Free";
		content: '\f06a';
		font-weight: 900;
		font-size: 14px;
		display: inline-block;
		margin-right: 5px;
		color: #3da8e4;
	}

.warn{
	background: #fff6e4;
	padding:15px 0;
	border-radius: 5px;
}

	.warn::before{
		font-family: "Font Awesome 5 Free";
		content: '\f06a';
		font-weight: 900;
		font-size: 14px;
		display: inline-block;
		margin-right: 5px;
		color: #f8aa3c;
	}

.alert{
	background: #ffeff2;
	padding:15px 0;
	border-radius: 5px;
}

	.alert::before{
		font-family: "Font Awesome 5 Free";
		content: '\f06a';
		font-weight: 900;
		font-size: 14px;
		display: inline-block;
		margin-right: 5px;
		color: #f45e5d;
	}

.pallet{
	width: 230px;
	padding: 10px;
}

.palletD ul{
	display: flex;
	gap:5px;
	flex-wrap: wrap;
	justify-content: space-between;
}
	.palletD ul li{ border: none; }

		.palletD ul li .picker {
			box-sizing: border-box;
			display: inline-block;
			width: 30px;
			height: 30px;
			vertical-align: bottom;
			cursor: pointer;
			min-width: 0;
			border: 1px solid #ccc;
			border-radius: 0px !important;
		}

.black{ background: #000 !important; }
.dim_gray{ background: #333 !important; }
.gray{ background: #666 !important; }
.dark_gray{ background: #999 !important; }
.light_gray{ background: #ccc !important; }
.crimson{ background: #d32f2f !important; }
.white{
	background: #fff !important;
	border: 1px solid #ccc !important;
}
.purple{ background: #673ab7 !important; }
.loyal_blue{ background: #1464b3 !important; }
.green{ background:#00796b !important; }
.forest_green{ background: #286f2c !important; }
.orange{ background: #dd830c !important; }
.orange_red{ background: #ff5252 !important; }
.lavender{ background: #b388dd !important; }
.dodger_blue{ background: #2196f3 !important; }
.aquamarine{ background: #62c7c9 !important; }
.emerald{ background: #5ed361 !important; }
.gold{ background: #f9ce1d !important; }
.light_pink{ background: #f5a2a2 !important; }
.light_purple{ background: #c2a5e6 !important; }
.light_blue{ background: #a5c2e6 !important; }
.powder_blue{ background: #9fd6d2 !important; }
.dark_green{ background: #95c7a4 !important; }
.light_yellow{ background: #fff176 !important; }
.red{ background: #ff0000 !important; }
.magenta{ background: #cc00cc !important; }
.blue{ background: #0000cc !important; }
.sky_blue{ background: #00cccc !important; }
.electric_green{ background: #00cc00 !important; }
.yellow{ background: #ffff00 !important; }

ul.fontS li button{
	border-left: none;
	width: 160px;
	padding: 10px;
	height: auto;
}

ul.submenu li button.f32{ font-size: 32px; }
ul.submenu li button.f24{ font-size: 24px; }
ul.submenu li button.f16{ font-size: 16px; }
ul.submenu li button.f12{ font-size: 12px; }

.fc i { border-bottom: solid 2px #ff0000; }

.hL i{
	padding-bottom: 2px;
	background: linear-gradient(to top, #fcee21 6px, transparent 6px);
}

.box{ width: calc(100% - 540px); }

.pan {
	width: 95%;
	margin: 0 auto 10px;
}

	.pan ol {
		display: flex;
		list-style-type: none;
		gap:10px;
	}

		.pan ol li a {
			color: #0071BC;
			transition: all .3s ease;
		}
		.pan ol li a:hover{ text-decoration: underline; }

		.pan ol li:before {
			font-family: "Font Awesome 5 Free";
			content: '\f105';
			font-weight: 900;
			font-size: 16px;
			display: inline-block;
			color: #4d4d4d;
			margin-right: 10px;
		}
		.pan ol li:first-child:before { content: none; }

.column{
	display: flex;
	width: 95%;
	margin: auto;
	justify-content: space-between;
	align-items: flex-start;
}

.r_side{
	width: 280px;
	background: #fff;
	padding: 20px;
	box-sizing: border-box;
	border-radius: 10px;
	box-shadow: 0px 0px 10px rgba(204, 204, 204, 50%);
}

.r_sideM ul{ list-style: none; }
	.r_sideM ul li{ transition: 0.2s linear; }

		.r_sideM ul li a{
			display: block;
			color: #4d4d4d;
			padding: 10px;
		}

			.r_sideM ul li a.print::before{
				font-family: "Font Awesome 5 Free";
				content: '\f02f';
				margin: 0 5px 0 0;
				font-weight: 900;
				font-size: 14px;
				display: inline-block;
			}

			.r_sideM ul li a.pdf::before{
				font-family: "Font Awesome 5 Free";
				content: '\f1c1';
				margin: 0 5px 0 0;
				font-weight: 900;
				font-size: 14px;
				display: inline-block;
			}
			.r_sideM ul li a:hover{ background: rgba(0,113,188,.2); }

.avoid-break, table, img, h1, h2, h3 {
	page-break-inside: avoid;
	break-inside: avoid;
}

.btnbox {
	display: flex;
	justify-content: center;
	gap: 5px 5px;
	flex-wrap: wrap;
}

@media screen and (max-width:1500px) {
	.cont,.cont2,.cont3,.con,.conP,.contP{ width: 90%; }
	.c_swotD{ width: 32%; }
	.column,.pan{ width: 90%; }
}

@media screen and (max-width:1000px) {
	header,.h_con{ height: 120px; }
	
	.h_con{ gap:10px 0; }
	
	.logo{
		width: 50%;
		margin: 0;
		padding: 0;
	}
	.set_sel_team{
		width: 50%;
		margin: 0;
		padding: 0;
		justify-content: flex-end;
	}
	
	.set{ border-right: none; }
	
	.menu,.contents{ margin-top: 120px; }
}

table.table_list {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
	margin-top: 20px;
	font-size: 15px;
}

	table.table_list th{
		border-collapse: collapse;
		border: solid 1px #ccc;
		padding : 8px 10px;
		vertical-align: middle;
		box-sizing: border-box;
		text-align: center;
		font-weight: bold;
	}

	table.table_list td {
		border-collapse: collapse;
		padding : 8px 10px;
		vertical-align: middle;
		box-sizing: border-box;
		border: 1px solid #ccc;
	}
	
	table.table_list tr:nth-child(2n){ background: #f2f2f2; }
	
	.tbl_fmt td:first-child,
	.tbl_fmt td:last-child{ text-align: center; }

	.tbl_kpi td:first-child,
	.tbl_kpi td:nth-child(2),
	.tbl_kpi td:nth-child(5),
	.tbl_kpi td:nth-child(6),
	.tbl_kpi td:nth-child(7),
	.tbl_kpi td:last-child{ text-align: center; }
	
	.tbl_kpi_ai td:first-child,
	.tbl_kpi_ai td:nth-child(3),
	.tbl_kpi_ai td:nth-child(4),
	.tbl_kpi_ai td:nth-child(5){ text-align: center; }
	
	.tbl_kpi_act td:first-child,
	.tbl_kpi_act td:nth-child(2),
	.tbl_kpi_act td:nth-child(3),
	.tbl_kpi_act td:nth-child(4),
	.tbl_kpi_act td:last-child{ text-align: center; }

.edit{
	color:#fff;
	font-size:15px;
	background:#0071BC; 
	border-radius: 5px;
	text-align: center;
	text-decoration: none;
	padding:5px 10px;
	-webkit-transition: 0.2s linear;
	transition: 0.2s linear;
	font-family: 'mplus';
	min-width: 70px;
}

	.edit:hover{ opacity: .6; }

.fmt{
	border: 1px solid #ccc;
	height: 300px;
}

.detail2 {
	padding: 10px;
	overflow: auto;
}

.kpi{
	display: flex;
	gap:1.3%;
}

.kpi_d{
	width: 24%;
	text-align: center;
	box-sizing: border-box;
}

	.kpi_d img{
		width: 80%;
		margin: auto;
	}

	.kpi_d h3{
		font-size:16px;
		text-align: center;
	}

.canvas-wrap{
	position:relative;
	height:215px;
}

	.canvas-wrap .no-data {
		position: absolute; inset: 0;
		display: flex;
		align-items: center; 
		justify-content: center;
		font-size: .95rem; 
		color: #666;
	}

.l_side{
	width: 300px;
	background: #fff;
	box-sizing: border-box;
	border-radius: 10px;
	box-shadow: 0px 0px 10px rgba(204, 204, 204, 50%);
}

.dlg_tree{
	width: 400px;
	background: #fff;
	box-sizing: border-box;
	border-radius: 10px;
	box-shadow: 0px 0px 10px rgba(204, 204, 204, 50%);
}

.toolbar {
	padding: 14px 20px;
	display:flex;
	gap:1rem;
	box-sizing: border-box;	
	border-bottom: 1px solid #ccc;
	font-size : 14px;
	
}

.toolbar2 {
	padding: 10px 12px;
	display:flex;
	box-sizing: border-box;	
	border-bottom: 1px solid #ccc;
	align-items: center;
	height: 51px;
	font-size : 14px;
}

	.toolbar a,.toolbar2 a{ transition: 0.2s linear; }

.a_btn {
	color:#0071bc;
	text-decoration: none;
	cursor:pointer;
}

	.a_btn:first-child::before{
		font-family: "Font Awesome 5 Free";
		content: '\e4c2';
		font-weight: 900;
		font-size: 14px;
		display: inline-block;
		margin-right: 5px;
	}

	.a_btn:last-child::before{
		font-family: "Font Awesome 5 Free";
		content: '\f07d';
		font-weight: 900;
		font-size: 14px;
		display: inline-block;
		margin-right: 5px;
	}

.tree_wrapper{
	padding: 10px 20px 10px;
	overflow: auto;
	height: calc(100vh - 250px);
	font-size : 14px;
}

.dlg_tree_wrapper{
	padding: 10px 20px 10px;
	overflow: auto;
	height: calc(100vh - 250px);
	font-size : 16px;
}

.tree,.tree summary,.tree li.leaf{ white-space: nowrap;  }

ul.tree {
	list-style:none; 
	padding-left:0;
}

details { padding-left: 0; }
	details[open]  .toggle::before { content:"−"; }
	details:not([open]) .toggle::before { content:"+"; }

summary {
	list-style:none;
	cursor:pointer;
	display:flex;
	align-items:center;
	gap:5px;
}

	summary::-webkit-details-marker { display:none; } 

	summary .node-link, li.leaf > a{
		flex: 1 1 auto;
		display: block;
		padding: 2px 8px;
		text-decoration: none;
		white-space: nowrap;
	}
	
	summary .node-link:hover,li.leaf > a:hover,
	summary .node-link:focus-visible,li.leaf > a:focus-visible{
		background: rgba(0,133,188,.2);
		outline: none;
		cursor: pointer;
	}

.toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1rem;
	height: 1rem;
	padding: 0;
	border: 1px solid #999;
	background: #fff;
	box-sizing: border-box;
	line-height: 1;
	font-size: .75rem;
	appearance: none;  
	flex: 0 0 1rem;
}

.folder::before {
	font-family: "Font Awesome 5 Free";
	content: '\f07b';
	font-weight: 900;
	font-size: 14px;
	display: inline-block;
	margin-right: 5px;
	color: #ffe07d;
}

.cdrn { margin-left: 21px; }

li.leaf { 
	margin-left: 21px; 
	display:flex; 
	align-items:center; 
	gap:10px;
}

.s_area{
	display: flex;
	gap:10px;
	margin-bottom: 1px;
}
.f_area{
	display: flex;
	margin-left: auto;
	gap:10px;
}

.sort { 
	position: relative; 
	display: inline-block;
}
.sort-btn { 
	cursor: pointer;
	user-select: none; 
}
.sort-menu {
	position: absolute; 
	z-index: 10; 
	min-width: 140px;
	display: none; 
	background: #fff; 
	border: 1px solid #ddd; 
	border-radius: 5px;
	box-shadow: 0 4px 16px rgba(0,0,0,.08);
	font-size: 14px;
	top:30px
}
	.sort-menu a { 
		display: block; 
		padding: .5rem .75rem; 
		white-space: nowrap; 
	}
		.sort-menu a:hover { background: #f5f5f5; }

		.sort-btn i,
		.sort-menu a i{ margin-right: 5px; }

button.regi2 {
	border: 1px solid #0071bc;
	background: #0071bc;
	border-radius: 50vh;
	width: 120px;
	height: 30px;
	color: #fff;
	cursor: pointer;
	transition: .3s;
	font-family: 'mplus';
	font-size: 14px;
}

	button.regi2:hover {
		background: #fff;
		color: #0071bc;
	}

button.regi2 i{ margin-right: 5px; }

.act_area{
	display: flex;
	gap:20px;
	margin-left: 20px;
}

.toolbar-section[hidden]{ display:none!important; }

.muted{ opacity:.8; }
.action.trash{ color:#ba0024; }

a:hover.action.trash{ color: #000; }

.cb{
	display:flex;
	align-items:center;
	justify-content:center;
	width:24px;
}

	.cb input{
		width:14px;
		height:14px;
		cursor : pointer;
	}

.checkall{
	width:14px;
	height:14px;
	cursor : pointer;
}

.rows ul{
	list-style:none;
	margin:0;
	padding:0;
}
	.rows ul li{ border-bottom: 1px solid #ccc; }
		.rows ul li:last-child{ border-bottom: none; }

.row{
	display:flex;
	align-items:center;
	gap:10px;
	padding:5px 12px;
	cursor:pointer;
	transition: 0.2s linear;
}
	.row:hover{ background: rgba(0,133,188,.2); }
	.row.selected{
		background:#439fe0;
		color:#fff;
	}
	.row.selected .name{ color:#fff; }

	.row .name{
		flex:1;
		text-decoration:none;
		color:#0071bc;
	}
	.row span{
		width:33px;
		text-align: center;
	}

.folder2::before {
	font-family: "Font Awesome 5 Free";
	content: '\f07b';
	font-weight: 900;
	font-size: 28px;
	display: inline-block;
	margin-right: 5px;
	color: #ffe07d;
}
.file2::before {
	font-family: "Font Awesome 5 Free";
	content: '\f15b';
	font-weight: 900;
	font-size: 28px;
	display: inline-block;
	margin-right: 5px;
	color: #0071BC;
}

.ans2{
	height: 45vh;
	overflow: auto;
}

.inq_box2{
	display: flex;
	flex-direction: column;
}

.icon-btn {
	position: relative;
	border: none;
	border-radius: 6px;
	width: 36px;
	height: 36px;
	font-size: 18px;
	cursor: pointer;
}

.tooltip {
	visibility: hidden;
	opacity: 0;
	position: absolute;
	bottom: -75%;
	left: 20%;
	background: #000;
	color: #fff;
	font-size: 12px;
	padding: 4px 8px;
	border-radius: 6px;
	white-space: nowrap;
	transition: opacity 0.2s;
	pointer-events: none;
}

	.icon-btn:hover .tooltip {
		visibility: visible;
		opacity: 1;
	}

@media print {
	body {
		display:block;
		margin: 0;
		padding: 0;
	}
	.contents{
		width : 100%;
		margin: 0;
		padding: 0;
	}
	.column{ 
		width: 100%;
		height : 100%; 
	}
	.contH{ 
		width: 100%;
		height : 100%; 
	}
	.no-print { display: none !important; }
}

