/* CSS Document */

#outline{}
	#outline dl{
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-top: 1em;
		line-height: 1.4em;
		}
	#outline dl dt,
	#outline dl dd{
		padding: 0.8em;
		border-bottom: 1px solid #ccc;
		}
		#outline dl dt:nth-of-type(1),
		#outline dl dd:nth-of-type(1){
			border-top: 1px solid #ccc;
			}
	#outline dt{
		width: 10em;
		background: #f2f2f2;
		text-align: center;
		}
	#outline dd{
		width: calc(100% - 10em);
		background: #fff;
		border-left: 1px solid #ccc;
		}
		#outline dd p{
			margin-top: 0.5em;
			}
	#outline table{
		}
	#outline tbody,
	#outline tfoot{
		border-top: 0.5em solid transparent;
		}
	#outline th,
	#outline td:first-child{
		padding-right: 1em;
		}

#chart{}
	#chart div{
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		justify-content: center;
		padding: 0.5em 1em;
		background: #f2f2f2;
		}
		#chart div > ul > li > span{
			background: #ce5a4a;
			color: #fff;
			font-weight: bold;
			}
	#chart ul{
		list-style: none;
		}
	#chart ul ul{
		position: relative;
		padding-left: 1em;
		}
		#chart ul ul:before{
			content: "";
			position: absolute;
			top: 50%;
			left: 0;
			width: 1em;
			height: 1px;
			background: #000;
			}
	#chart li{
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-ms-flex-align: center;
		-webkit-align-items: center;
		align-items: center;
		-ms-flex-pack: start;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		}
	#chart li li{
		position: relative;
		padding-left: 1em;
		}
		#chart li li:before{
			content: "";
			position: absolute;
			top: 0;
			left: 0;
			width: 1px;
			height: 100%;
			background: #000;
			}
		#chart li li:first-child:last-child:before{
			content: none;
			}
			#chart li li:first-child:last-child > span:before{
				content: none;
				}
		#chart li li:first-child:before{
			top: 50%;
			}
			#chart li li:first-child > span:before{
				top: 50%;
				height: calc(50% + 0.5em);
				}
		#chart li li:last-child:before{
			top: auto;
			bottom: 50%;
			height: 50%;
			}
			#chart li li:last-child > span:before{
				height: calc(50% + 0.5em);
				}
		#chart li li span{
			position: relative;
			}
			#chart li li span:before{
				content: "";
				position: absolute;
				top: -0.5em;
				left: -1em;
				width: 1px;
				height: calc(100% + 1em);
				background: #000;
				}
			#chart li li span:after{
				content: "";
				position: absolute;
				top: 50%;
				left: -1em;
				width: 1em;
				height: 1px;
				background: #000;
				}
	#chart span{
		display: inline-block;
		margin: 0.5em 0;
		padding: 0.8em;
		background: #425377;
		color: #fff;
		line-height: 1.2em;
		text-align: center;
		z-index: 1;
		}

#iso{}
	#iso h3+div{
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		padding: 1em;
		border: 1px solid #ccc;
		}
	#iso i{
		width: 66px;
		text-align: center;
		line-height: 1em;
		}
		#iso i span{
			display: block;
			font-size: 0.5em;
			font-weight: 700;
			}
	#iso i+div{
		width: calc(100% - 66px);
		padding-left: 1em;
		}
	#iso h4{
		font-size: 1.2em;
		font-weight: bold;
		line-height: 1em;
		}
	#iso p{
		margin-top: 0.5em;
		}
	#iso p:nth-of-type(2){
		font-size: 0.8em;
		line-height: 1.4em;
		padding: 0.8em 0 0.4em;
		border-top: 1px solid #ccc
		}
	#iso p:last-of-type{
		text-align: right;
		line-height: 1em;
		}


/* for mobile */
@media (max-width: 767px) {
/*767px以下*/
}
@media (max-width: 767px) and (orientation:portrait) {
/*767px以下 縦向き*/
#outline{}
	#outline dl{
		display: block;
		margin: 0 -1em;
		}
	#outline dt,
	#outline dd{
		width: 100%;
		}
	#outline dt{
		border-bottom-style: dotted;
		}
	#outline dd{
		border-top: none !important;
		border-left: none;
		}
		#outline dd p{
			text-align: center;
			}
#chart{}
	#chart ul{
		width: 100%;
		}
	#chart ul ul{}
		#chart ul ul:before{
			top: -0.5em;
			left: 1em;
			width: 1px;
			height: calc(50% + 0.5em);
			}
	#chart li li{
		display: block;
		}
		#chart li li:first-child:before{
			top: 0;
			}
		#chart li li:last-child:before{
			content: none;
			}
	#chart div > ul > li > ul:before{
		height: 1em;
		}
	#chart div > ul > li > ul > li > span:before{
		content: "" !important;
		top: -0.5em !important;
		}
#iso{}
	#iso h3+div{
		display: block;
		}
	#iso i{
		display: block;
		width: 100%;
		text-align: center;
		}
	#iso i+div{
		width: 100%;
		margin-top: 1em;
		padding: 0;
		}
	#iso h4{
		text-align: center;
		}
}
@media (max-width: 767px) and (orientation:landscape) {
/*767px以下 横向き*/
}


/* for TabletPC */
@media (min-width: 768px) {
/*768px以上*/
#chart{}
	#chart div{
		padding: 1.5em 0;
		}
}
@media (min-width: 768px) and (max-width: 991px) {
/*768px～991px*/
#chart{}
	#chart span{
		min-width: 8em;
		}
}
@media (max-width: 991px) {
/*991px以下*/
}


/* for PC */
@media (min-width: 992px) {
/*992px以上*/
#outline{}
	#outline dl{}
		#outline dl > *{
			padding: 1em;
			}
	#outline dt{
		width: 15em;
		}
	#outline dd{
		width: calc(100% - 15em);
		}
#chart{}
	#chart span{
		min-width: 12em;
		}
#iso{}
	#iso h3+div{
		padding: 1.5em;
		}
}
@media (min-width: 992px) and (max-width: 1199px) {
/*992px～1200px*/
}
@media (min-width: 1200px) {
/*1200px以上*/
}


/* ie */
@media all and (-ms-high-contrast: none){}


