@charset "UTF-8";
/*管理工学研究所*/
/* Root File of New Design Scheme based on Bootstrap4 */

body { background-color: #f1f1f1; font-size: 11pt; font-family: "メイリオ", "Meiryo", Osaka-等幅, "ＭＳ Ｐゴシック", "ＭＳ ゴシック", 平成角ゴシック, Osaka, Helvetica, Arial, Geneva, Swiss, SunSans-Regular; }
body, p { line-height: 150%; }
tr, td { line-height: 120%; }

@media (min-width: 576px) {
	body, p { font-size: 11pt; line-height: 150%; }
	tr, td { font-size: 11pt; }
}
@media (min-width: 768px) {
	body, p { font-size: 11pt; line-height: 160%; }
	tr, td { font-size: 11pt; }
}
@media (min-width: 992px) {
	body, p { font-size: 12pt; line-height: 160%; }
	tr, td { font-size: 12pt; }
}
@media (min-width: 1024px) {
	body, p { font-size: 12pt; line-height: 160%; }
	tr, td { font-size: 12pt; }
}
@media (min-width: 1200px) {
	body, p { font-size: 12pt; line-height: 160%; }
	tr, td { font-size: 12pt; }
}


html { overflow-y: scroll; }



/* --------------------- header/footer layout frame */
.shadow-bk { text-shadow: 1px 1px 0 rgba(0,0,0,.1); color: #000000; }
.shadow { text-shadow: 1px 1px 0 rgba(0,0,0,.1); color: #ffffff; }



/* --------------------- bs-common */

/**/
.flex-center- {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.flex-center-center {
	display: flex;
	justify-content: center;
	align-items: center;
}
.flex-left-center {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}


@media (max-width: 767px) {
	div.footer-style p { font-size: 10pt !important; color: #ffffff; line-height: 160%; }
	div.footer-style li, div.footer-style a { font-size: 10pt !important; }
}



/* --------------------- for HEURiS */

.bodyContainer {
	background-color: #fff !important;
	padding-right: 15px;
	padding-left: 15px;
}
.bodyContainer .breadcrumb{
	background-color: #fff !important;
	font-size: 90%;
}

.footer-style { background-color: #11497f !important; }
div.footer-style p { font-size: 11pt; color: #ffffff; line-height: 140%; }

.topMenuStyle {
	background-color: #ffffff !important;
	border-bottom: medium solid #11497f !important;
/*	margin-bottom: 0.5rem;*/
}

.sectionBorder {
	border-bottom-style: solid;
	border-bottom-width: thin;
	border-bottom-color: #11497f !important;
}

/*  */
ul.plain-list-none { padding: 0.3rem; }
ul.plain-list-none > li { list-style: none; padding-left: 1rem; text-indent: -1rem; list-style-position: inside; }
ul.plain-list { padding: 0.3rem; }
ul.plain-list > li { list-style: disc; padding-left: 1rem; text-indent: -1rem; list-style-position: inside; }
p.annotation, ul.annotation > li { font-size: 96%; }
p.enum, ul.enum > li { font-size: 90%; }

p.bold { font-weight: bold; color: #900; line-height: 1.5rem; font-size: 1.1rem; padding: 0.3rem; }


/* nvabarをページ先頭メニューに使うための設定 */
/*
.navbar .navbar-inner { padding: 0; }
.navbar .nav { margin: 0; display: table; width: 100%; }
.navbar .nav > li { display: table-cell; float: none; }
.navbar .nav li a { font-weight: bold; text-align: center; border-left: 1px solid rgba(255, 255, 255, .75); border-right: 1px solid rgba(0, 0, 0, .1); font-size: 0.9rem; }
.navbar .nav li:last-child a { border-right: 0; border-radius: 0 3px 3px 0; }
.navbar-nav > li p { font-size: 90%; margin-bottom: -0.5rem; }

.dropdown-menu > li p { font-size: 110%; }
.moveMenuIconToTop { position: absolute; top: 0; right: 0; left: 0; z-index: 20; }
.overMenu { position: absolute; z-index: 30; width: 360px; }
@media (max-width: 767px) {
	.overMenu { position: absolute; z-index: 30; width: 360px; float: left; background-color: #E4DDCF; }
}
*/


/* ボトムメニュー */
.btm_menu { clear: both; text-align: center; }
.btm_menu li { list-style-type: none; display: inline; border-right-width: 1px; border-right-style: solid; border-right-color: #999999; padding-right: 5px; padding-left: 5px; }
.btm_menu ul { margin-top: 0.3rem; margin-bottom: 0.3rem; }
.btm_menu li a { font-size: 95%; color: #f0f0f0; }
.btm_menu a { font-size: 95%; color: #999; }
.btm_menu p { font-size: 95%; color: #999; }


/* コピーライト */
.footer {}
.footer a { color: #000099;	text-decoration: none; font-weight: bold; }
.footer a:hover { color: #993300; }
.footer a:visited {	color: #000099; }


/*  */
.headline { padding: 0.5rem; color: #494949; background: #fffaf4; border-left: solid 5px #ffaf58; }


.headline-SU { position: relative; text-align: center !important; line-height: 120%; font-size: 1.3rem; }
.headline-SU:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 6px;
	background: -webkit-repeating-linear-gradient(-45deg, #faa913f1, #faa913f1 2px, #fff 2px, #fff 4px);
	background: repeating-linear-gradient(-45deg, #faa913f1, #faa913f1 2px, #fff 2px, #fff 4px);
}
@media (min-width: 576px) {
	.headline-SU { font-size: 1.5rem; }
}
@media (min-width: 768px) {
	.headline-SU { font-size: 1.8rem; }
	.headline-SU:after { height: 3px; }
}
@media (min-width: 992px) {
	.headline-SU { font-size: 2rem; }
}
@media (min-width: 1024px) {
	.headline-SU { font-size: 2.4rem; }
}
@media (min-width: 1200px) {
	.headline-SU { font-size: 2.6rem; }
}



/* for tweaking Bootstrap4 */
/
/* work-around for bug of nav-justified on Bootstrap3 */
/* obsoleted? may be.
.nav-justified { display: table; table-layout: fixed; width: 100%; }
.navbar .nav-justified > li { display: table-cell; width: 100%; }
*/


/* --------------------- to cancel bootstrap's print effect that bootstrap css let shows href value when printing. */
@media print {
	a[href]:after {
		content: "" !important;
	}
	abbr[title]:after {
		content: "" !important;
	}
}


.card-text-normalizer { line-height: 100%; text-align: left !important; }


/* override */
.btn-primary:hover {
	background-color: transparent !important;
/*	background-color: #000 !important;*/
}



/* sitemap */
.sitemapNX h2 {
	font-size: 1.4rem/*14px*/;
	color: #000066;
	text-decoration: none;
	border-bottom-width: 1px;
	border-left-width: 6px;
	border-bottom-style: solid;
	border-left-style: solid;
	border-bottom-color: #666666;
	border-left-color: #666666;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 2rem;
	margin-left: 30px;
}
.sitemapNX li { line-height: 1.8rem/*24px*/; }
.sitemapNX h2 a { font-size: 1,4rem/*14px*/; color: #666666; text-decoration: underline; margin: 0px; padding: 0px; }
.sitemapNX a { line-height: 1.8rem/*24px*/; color: #666666; padding-left: 1rem/*40px*/; }
.sitemapNX a:hover { text-decoration: none; }



/* リストの設定 */

.commonListStyle ul { margin-left: 1.0em; list-style-type: disc; }
.commonListStyle li { line-height: 110%; margin-bottom:0.5em; }

/* last was .kyocho2 { font-size: 18px; font-weight: bold; padding: 5px; color: #F00; height: auto; } */
.jumpTable ul { list-style: none; }
.jumpTable p, .jumpTable li { font-weight: 400; padding: 5px; color: #F00; height: auto; }

ul.jumpList > li { list-style: none; list-style-image: none; background-image: none !important; text-indent: -1.5em; padding-left: 1.5em; font-weight: 400; padding: 5px; height: auto; }
ul.jumpList > li:before { content: '＞'; padding-right: 0.5em; }
a.jumpListStyle { none; background-image: none !important; font-size: 110%; font-weight: 400; padding: 5px; height: auto; }

ul.jumpListNLS > li { list-style: none; list-style-image: none; background-image: none !important; font-size: 110%; font-weight: 500; padding: 5px; height: auto; text-indent: -1.5em; }
ul.zeroLeft { padding-left: 0px !important; }

ul.indent2orMore li:nth-child(n+2) { padding-left: 2em; }


.pricetable { border-collapse: collapse; border: 1px solid #999999; }

.pricetable td { border: 1px solid #999999; padding: 5px; line-height: 140%; }
.pricetable th { border: 1px solid #999999; line-height: 140%; padding-top: 10px; padding-right: 15px; padding-bottom: 10px; padding-left: 15px; }




/* for tweaking HEURiS Design */
.midasi { font-weight: 600; color: #25569b; border-left-width: 10px; border-left-style: none; border-left-color: #2A5FAA; }
.midasi span { font-size: 110%; font-weight: 900; color: #2A5FAA; }

.midasi-WHITE { font-weight: 500; color: #FFF; border-left-width: 10px; border-left-style: none; border-left-color: #2A5FAA; }
.midasi-BLACK { font-weight: 500; color: #0; border-left-width: 10px; border-left-style: none; border-left-color: #2A5FAA; }
.midasi-NC { font-size: 1.4rem:  font-weight: 500; border-left-width: 10px; border-left-style: none; border-left-color: #2A5FAA; }

.midasiBOLD { font-size: 110%; font-weight: 900; color: #2A5FAA; border-left-width: 10px; border-left-style: none; border-left-color: #2A5FAA; }

.chapTitle4HEURiS {
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #666666;
}
.secTitle4HEURiS {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #666666;
}
.secTitle4HEURiS > * { text-align: center; /*color: #FFF;*/ margin-bottom: 0.5rem/*8px*/; padding-top: 8px; padding-left: 0.5rem; line-height: 120%; }
@media (max-width: 575px) {
	.secTitle4HEURiS > h3 { font-size: 130%; } h4 { font-size: 110%; }
}

.heuris-title { color: #FFF; background-color: #069; line-height: 160%; padding-left: 1em; padding-right: 1em; text-align: center !important; }


.kakomiStyle { padding-top: 1.4rem; padding-right: 0.4rem; padding-bottom: 0.4rem; padding-left: 0.4rem; border: 1px solid #CC6; margin-bottom: 2rem; }
.kakomiStyle-inner { padding-top: 0.4rem; padding-right: 0.4rem; padding-bottom: 0.4rem; padding-left: 0.4rem; margin-left: 0.5rem;  margin-right: 0.5rem; margin-bottom: 0.5rem; }
.leftRightTitle { background-color: #960; margin-bottom: 0.5rem; }
.leftRightBody { font-size: 110%; color: #FFF; font-weight: bold; padding-top: 0.2rem; padding-right: 0.1rem; padding-bottom: 0.2rem; padding-left: 0.1rem; }
@media (min-width: 768px) {
	.leftRightTitle { margin-bottom: 0.8rem; }
	.leftRightBody { font-size: 140%; padding-top: 0.8rem; padding-right: 0.8rem; padding-bottom: 0.8rem; padding-left: 0.8rem; }
}
.kakomiStyle > p, .kakomiStyle-inner > p { margin-left: 0.8rem;  margin-right: 0.8rem; }

.kyocyo { font-weight: normal; color: #003399; }
.kyocyo_yell { font-weight: bold; color: #900; font-size: 110%; }
@media (min-width: 768px) {
	.kyocyo { line-height: 140%; }
	.kyocyo_yell { line-height: 180%; font-size: 140%; }
}

.simpleNote {
	font-size: 1.4rem;
	color: #000066;
	text-decoration: none;
	border-bottom-width: 1px;
	border-left-width: 6px;
	border-bottom-style: solid;
	border-left-style: solid;
	border-bottom-color: #666666;
	border-left-color: #666666;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 1.5em;
}
@media (max-width: 575px) {
	.simpleNote { font-size: 1.1rem; padding-left: 0.5em; }
}


.btn a {
	font-size: 0.85rem;/*10px;*/
	line-height: 1.45rem;/*17px;*/
	height: 1.45rem;/*17px;*/
	padding-right: 5px;
	padding-left: 5px;
	color: #FFFFFF;
	background-color: #7A7A76;
	border: 1px solid #D2D2D2;
	width: 80px;
	display: block;
	float: right;
	text-align: center;
	text-decoration: none;
	background-image: url(/heuris/common/images/btn.gif);
	margin-right: 5px;
}
.btn a:hover { background-color: #FF9900; background-image: url(/heuris/common/images/btn_ov.gif); }


/* in old style, kei series was only for table and td. but now these are for several BLOCK elements. */
/*table*/.kei { border-collapse: collapse; border: 1px solid #999999; }
/*table*/.kei_back { border-collapse: collapse; border: 1px solid #999999; background-color: #FFC; }
/*td*/.kei { border: 1px solid #999999; padding: 5px; line-height: 140%; }
/*td*/.kei_back { border: 1px solid #999999; line-height: 140%; padding-top: 10px; padding-right: 15px; padding-bottom: 10px; padding-left: 15px; }
/*td*/.kei2 { background-color: #CCCCCC; border: 1px solid #FFFFFF; padding: 10px; }
/*td*/.kei3 { background-color: #EFEDE7; border: 1px solid #FFFFFF; }
/*td*/.kei4 { background-color: #EFEDE7; border: 1px solid #FFFFFF; margin: 10px; padding: 10px; }
/*td*/.kei6 { border: 5px solid #963; margin: 10px; padding: 10px; background-color: #369; font-size: 140%;/*18px*/; color: #FFF; }
th.kei { background-color: #EFEDE7; border: 1px solid #999999; padding: 5px; }
th.kei_back { background-color: #FFC; border: 1px solid #999999; padding: 5px; }

/* #contents is obsolete. contentsEMU is replacement for #contents */
#contents h2 { padding-left: 6px; color: #CC6600; margin-right: 10px; font-weight: bold; border-left-width: 7px; border-left-style: solid; border-left-color: #AACE6F; margin-bottom: 5px; margin-top: 25px; padding-top: 2px; }
#contents h3 { border-left-width: 5px; border-left-style: solid; border-left-color: #A9B59B; padding-left: 7px; color: #555555; line-height: 16px; margin-bottom: 10px; margin-top: 10px; }
#contents h4 { color: #666666; margin-bottom: 30px; }
#contents h6 { color: #FFF; background-color: #960; margin-bottom: 8px; padding: 8px; line-height: 120%; }
#contents h7 { color: #FFF; background-color: #069; margin-bottom: 10px; padding: 10px; }
h2.contentsRPL { padding-left: 6px; color: #CC6600; margin-right: 10px; font-weight: bold; border-left-width: 7px; border-left-style: solid; border-left-color: #AACE6F; margin-bottom: 5px; margin-top: 25px; padding-top: 2px; }
h3.contentsRPL { border-left-width: 5px; border-left-style: solid; border-left-color: #A9B59B; padding-left: 7px; color: #555555; line-height: 16px; margin-bottom: 10px; margin-top: 10px; }
h4.contentsRPL { color: #666666; margin-bottom: 30px; }
h5.contentsRPL { color: #FFF; background-color: #960; margin-bottom: 8px; padding: 8px; padding-left: 1.5rem; line-height: 120%; }
h6.contentsRPL { color: #FFF; background-color: #960; margin-bottom: 8px; padding: 8px; padding-left: 1.5rem; line-height: 120%; }
h7.contentsRPL { color: #FFF; background-color: #069; margin-bottom: 10px; padding: 10px; }


/*  */
div.extra_title { font-size: 140%; color: #FFF; background-color: #069; text-align: left; font-weight: bold; line-height: 140%; padding: 5px 5px 5px 10px; margin-bottom: 5px; }
div.extra_title-small { font-size: 120%; color: #FFF; background-color: #069; text-align: left; font-weight: bold; line-height: 140%; padding: 5px 5px 5px 10px; margin-bottom: 5px; }

.secTitle { color: #FFF; background-color: #960; margin-bottom: 0.8rem/*8px*/; padding-top: 8px; padding-left: 0.5rem; line-height: 160%; }
.secTitle > ol { padding-left: 2rem; }

.atrAttention {
	text-decoration: none;
	border-bottom-width: 1px;
	border-left-width: 6px;
	border-bottom-style: solid;
	border-left-style: solid;
	border-bottom-color: #666666;
	border-left-color: #666666;
	padding-top: 8px;
	padding-bottom: 8px;
	padding-left: 1em;
}

.prohibitedArea{ background-color: #C0C0C0; }
.prohibitionMSG{ color: #0; background-color: #DDDDDD/*ECD424*/; margin-bottom: 8px; padding: 8px; padding-left: 1.5rem; line-height: 120%; border: 2px solid #CC0000/*CC6*/; }

.explain { background-color: #EFEDE7; padding: 10px; }


/* styles for List of Buttons */
.buttonList {}	/* reserved */
