/* CSS Document */

#pageTab{
	padding-top: 0;
	}

#soshiki{
	overflow: hidden;
	}
	#soshiki h2{
		padding-bottom: 0.8em;
		font-weight: bold;
		font-size: 1.5em;
		line-height: 1.5em;
		border-bottom: 2px solid #00b0ca;
		}
	#soshiki h2+section{
		padding-top: 2em;
		}
	#soshiki section+section{
		padding: 0;
		}
	#soshiki h3{
		display: none;
		}
	#soshiki h3+div+div{
		position: relative;
		}
		#soshiki h3+div+div:before{
			content: "";
			display: block;
			padding-top: 75%;
			}
	#soshiki dl{
		display: flex;
		background: #fff;
		border-radius: 12px;
		overflow: hidden;
		}
	#soshiki dt,
	#soshiki dd{
		padding: 0.8em;
		line-height: 1.5em;
		}
	#soshiki dt{
		background: #27344d;
		color: #fff;
		font-weight: bold;
		}
	#soshiki dd{
		color: #666;
		}
	#soshiki iframe{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		}
	#soshiki nav{
		position: relative;
		z-index: 1;
		order: -1;
		}
		#soshiki nav:before{
			content: "";
			position: absolute;
			top: 0;
			left: calc(50% - 50vw);
			width: 100vw;
			height: 100%;
			background: #fff;
			border-bottom: 1px solid #b2b6bc;
			z-index: -1;
			}
		#soshiki nav ul{
			display: flex;
			flex-wrap: wrap;
			margin: -0.5em;
			}
		#soshiki nav li{
			margin: 0.5em;
			}
			#soshiki nav li a{
				position: relative;
				display: block;
				padding: 1em;
				border: 1px solid #b2b6bc;
				border-radius: 6px;
				color: inherit;
				fill: #00b0ca;
				font-weight: bold;
				text-decoration: none;
				}
			#soshiki nav li a:hover{
				background: #e6f3f5;
				border-color: currentColor;
				color: #1696ac;
				}
			#soshiki nav li a[target="_blank"]{
				padding-left: 2.5em;
				}
		#soshiki nav li i{
			position: absolute;
			top: calc(50% - 0.5em);
			left: 1em;
			}
	#soshiki .wrap{
		display: flex;
		flex-direction: column;
		}
	#soshiki .anchor{
		margin-top: 0;
		}

#memberlist{
	padding: 0;
	}
	#memberlist h2{
		position: relative;
		padding-left: calc(4px + 0.5em);
		font-weight: bold;
		font-size: 1.5em;
		line-height: 1.5em;
		}
		#memberlist h2:before{
			content: "";
			position: absolute;
			top: 0.2em;
			left: 0;
			width: 4px;
			height: 1em;
			background: #00b0ca;
			border-radius: 2px;
			}
	#memberlist h2+div{
		margin-top: 1.5em
		}
	#memberlist ul{
		display: flex;
		flex-wrap: wrap;
		margin: -0.5em;
		}
	#memberlist li{
		padding: 0.5em;
		}
		#memberlist li a{
			position: relative;
			display: block;
			padding: 1em;
			padding-left: 2.5em;
			border: 1px solid #b2b6bc;
			background: #fff;
			border-radius: 6px;
			color: inherit;
			fill: #00b0ca;
			font-weight: bold;
			text-decoration: none;
			}
			#memberlist li a:hover{
				background: #e6f3f5;
				border-color: currentColor;
				color: #1696ac;
				}
		#memberlist li i{
			position: absolute;
			top: calc(50% - 0.5em);
			left: 1em;
			}

#document{}
	#document h2{
		padding-bottom: 0.8em;
		font-weight: bold;
		font-size: 1.5em;
		line-height: 1.5em;
		border-bottom: 2px solid #00b0ca;
		}
	#document h2+div{
		padding-top: 2em;
		}
	#document h2+div+div{
		padding-top: 2em;
		}
	#document ul{
		display: flex;
		flex-wrap: wrap;
		margin: -0.5em;
		}
	#document li{
		padding: 0.5em;
		}
		#document li a{
			position: relative;
			display: block;
			padding: 1em;
			padding-left: 2.5em;
			border: 1px solid #b2b6bc;
			background: #fff;
			border-radius: 6px;
			color: inherit;
			fill: #00b0ca;
			font-weight: bold;
			text-decoration: none;
			}
			#document li a:hover{
				background: #e6f3f5;
				border-color: currentColor;
				color: #1696ac;
				}
		#document li i{
			position: absolute;
			top: calc(50% - 0.5em);
			left: 1em;
			}
	#document section{
		padding-top: 0;
		}
		#document section:not(:last-child){
			padding-bottom: 0;
			}
		#document section .fr-view{
			margin-bottom: 2em;
			}
	#document section+section{
		margin-top: 1em;
		}
	#document h3{
		position: relative;
		padding: 1.2em;
		padding-right: 3em;
		background: #fff;
		border: 1px solid #b2b6bc;
		border-radius: 6px;
		color: inherit;
		fill: #00b0ca;
		font-weight: bold;
		line-height: 1.5em;
		transition: all 0.2s ease-out;
		cursor: pointer;
		order: 1;
		}
		#document h3 i{
			position: absolute;
			top: calc(50% - 0.7em);
			right: 1em;
			width: 1.4em;
			height: 1.4em;
			background: #1696ac;
			border-radius: 100%;
			fill: #fff;
			}
		#document h3 svg{
			position: absolute;
			top: 20%;
			left: 20%;
			width: 60%;
			height: 60%;
			}
		#document h3.open{}
			#document h3.open i{
				background: #b3b3b3;
				}
			#document h3.open path+path{
				opacity: 0;
				}
	#document h3+div{
		margin: 1em 0 2em 0;
		}
	#document dl{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		}
	#document dt{}
		#document dt a{
			position: relative;
			display: inline-block;
			padding-left: 1.5em;
			color: inherit;
			fill: #00b0ca;
			font-weight: bold;
			text-decoration: none;
			}
			#document dt a:hover{
				color: #1696ac;
				}
		#document dt i{
			position: absolute;
			top: 0.1em;
			left: 0;
			}
	#document dt+dd{
		margin-top: 0.5em;
		font-size: 0.875em;
		line-height: 1.7em;
		}
	#document dl+dl{
		margin-top: 1.5em;
		padding-top: 1.5em;
		border-top: 1px solid #B2B6BC;
		}



/* for all */
@media (max-width: 1199.98px) {
/*1199px以下*/
}
@media (max-width: 991.98px) {
/*991px以下*/
}


/* for mobile */
@media (max-width: 767.98px) {
/*767以下px*/
#soshiki{}
	#soshiki nav{
		top: -2em;
		}
}
@media (max-width: 767.98px) and (orientation:portrait) {
/*767px以下 縦向き*/
#soshiki{}
	#soshiki h3+div+div{
		margin-top: 1em;
		}
	#soshiki dl{
		flex-direction: column;
		}
}
@media (max-width: 767.98px) and (orientation:landscape) {
/*767px以下 横向き*/
}
@media (max-width: 767.98px) and (orientation:landscape), (min-width: 768px) {
/*767px以下 横向き, 768px以上,*/
#soshiki{}
	#soshiki section{
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		}
	#soshiki h3+div,
	#soshiki h3+div+div{
		width: calc(50% - 0.75em);
		}
	#soshiki dl{
		flex-wrap: wrap;
		}
	#soshiki dt,
	#soshiki dd{}
	#soshiki dt:nth-of-type(n+2),
		#soshiki dd:nth-of-type(n+2){
			border-top: 1px solid #b2b6bc;
			}
}
@media (max-width: 767.98px) and (orientation:landscape), (min-width: 768px) and (max-width: 991.98px) {
/*767px以下 横向き, 768px～991px*/
#soshiki{}
	#soshiki dt{
		width: 6em;
		}
	#soshiki dd{
		width: calc(100% - 6em);
		}
#memberlist{}
	#memberlist li{
		width: 33.33%;
		}
#document{}
	#document li{
		width: 33.33%;
		}
}


/* for tablet */
@media (min-width: 768px) {
/*768px以上*/
#soshiki{}
	#soshiki h3+div,
	#soshiki h3+div+div{
		width: calc(50% - 1em);
		}
}
@media (min-width: 768px) and (max-width: 1199.98px) {
/*768px～1199px*/
}
@media (min-width: 768px) and (max-width: 991.98px) {
/*768px～991px*/
#soshiki{}
	#soshiki nav{
		top: -3em;
		}
}


/* for PC */
@media (min-width: 992px) {
/*992px以上*/
#soshiki{}
	#soshiki dt{
		width: 8em;
		}
	#soshiki dd{
		width: calc(100% - 8em);
		}
	#soshiki nav{
		top: -4em;
		}
#memberlist{}
	#memberlist li{
		width: 25%;
		}
#document{}
	#document li{
		width: 25%;
		}
}
@media (min-width: 992px) and (max-width: 1199.98px) {
/*992px～1199px*/
}
@media (min-width: 1200px) {
/*1200px以上*/
}



