@charset "UTF-8";

/* -------------------------- */
/* content */
/* -------------------------- */

.messageBox {
	padding-bottom: 30px;
}
	.messageBox .container {
	}
		.messageBox .messageBox_txt {
			margin-bottom: 30px;
		}
			.messageBox .messageBox_txt p {
				margin-bottom: 15px;
			}
				.messageBox .messageBox_txt p em {
					margin-bottom: 30px;
					display: block;
					font-style: normal;
					font-size: 1.6rem;
				}
					.messageBox .messageBox_txt p em br {
						display: none;
					}
		.messageBox .thum_img {
			padding: 0 30%;
		}

/* naviBox */
.naviBox {
	padding: 30px 0;
}
	.naviBox .container {
		position: relative;
	}
		.naviBox ul {
		}
			.naviBox ul li:not(:last-child) {
				margin-bottom: 30px;
			}
				.naviBox ul li a {
					width: 280px;
					margin: 0 auto;
					display: flex;
					align-items: center;
					position: relative;
					text-align: center;
				}
					.naviBox ul li a span {
						margin-top: -25px;
						color: #fff;
						font-size: 2rem;
						font-weight: bold;
						position: absolute;
						left: 0;
						right: 0;
						top: 50%;
						text-shadow: 2px 0 3px rgba(0,0,0,0.2);
						z-index: 2;
					}
					.naviBox ul li a .thum_img {
						border: 20px solid #fff;
						box-shadow: 0 0 2px 3px rgba(136,136,136,0.1);
						position: relative;
					}
					.naviBox ul li a .thum_img::before {
						width: 100%;
						height: 100%;
						background: rgba(0,0,0,0.4);
						content: "";
						position: absolute;
						z-index: 1;
					}

/* outlineBox */
.outlineBox {
	padding: 30px 0;
}
	.outlineBox .tbrBorder {
		margin-bottom: 30px;
	}
		.outlineBox .tbrBorder dd > span {
			display: inline-block;
		}
		.outlineBox .tbrBorder dd figure {
		}
			.outlineBox .tbrBorder dd figure img {
				max-width: 175px;
				margin: 30px auto 0;
				display: block;
			}
			.outlineBox .tbrBorder dd .txt_iso {
				margin-bottom: 15px;
				display: block;
			}
	.outlineBox .flexible_x_type01 {
	}
		.outlineBox .flexible_x_type01 .thum_img {
			margin-bottom: 15px;
		}
		.outlineBox .flexible_x_type01 #mapBox {
			width: 100%;
			height: 250px;
		}

/* historyBox */
.historyBox {
	padding: 30px 0;
}
	.historyBox .txt_history {
		margin-bottom: 15px;
		font-size: 1.6rem;
	}


/* ================================================================================================================================================================================== */
/* pc */
/* ================================================================================================================================================================================== */

@media only screen and (min-width:768px) {

/* -------------------------- */
/* content */
/* -------------------------- */

.messageBox {
}
	.messageBox .container {
		display: flex;
		justify-content: space-between;
	}
		.messageBox .messageBox_txt {
			width: 80%;
			padding-right: 30px;
			margin-bottom: 0;
		}
			.messageBox .messageBox_txt p {
			}
				.messageBox .messageBox_txt p em {
				}
					.messageBox .messageBox_txt p em br {
						display: block;
					}
		.messageBox .thum_img {
			width: 20%;
			padding: 0;
		}

/* naviBox */
.naviBox {
	height: 180px;
	margin-bottom: 80px;
}
	.naviBox .container {
	}
		.naviBox ul {
			display: flex;
			justify-content: center;
		}
			.naviBox ul li {
				margin: 0 15px;
			}
			.naviBox ul li:not(:last-child) {
				margin-bottom: 0;
			}
				.naviBox ul li a {
					width: 200px;
				}

/* outlineBox */
.outlineBox {
}
	.outlineBox .tbrBorder {
	}
		.outlineBox .tbrBorder dd {
		}
			.outlineBox .tbrBorder dd figure {
				display: flex;
				align-items: center;
			}
			.outlineBox .tbrBorder dd figure img {
				margin: 30px 0 0;
			}

/* historyBox */
.historyBox {
}
	.historyBox .tbrBorder {
	}
	.historyBox .tbrBorder dt {
		padding: 10px 10px 0;
	}
	.historyBox .tbrBorder dd {
		padding: 10px 10px 0;
	}
	.historyBox .tbrBorder dt:not(:first-of-type),
	.historyBox .tbrBorder dd:not(:first-of-type) {
		border-top: none;
	}
	.historyBox .tbrBorder dt:first-of-type,
	.historyBox .tbrBorder dd:first-of-type {
		padding-top: 20px;
	}
	.historyBox .tbrBorder dt:last-of-type,
	.historyBox .tbrBorder dd:last-of-type {
		padding-bottom: 20px;
	}


}


/* ================================================================================================================================================================================== */
/* pc */
/* ================================================================================================================================================================================== */

@media only screen and (min-width:1024px) {

/* -------------------------- */
/* content */
/* -------------------------- */

.messageBox {
	padding-bottom: 60px;
}
	.messageBox .container {
	}
		.messageBox .messageBox_txt {
			padding-right: 60px;
		}
			.messageBox .messageBox_txt p {
			}
				.messageBox .messageBox_txt p em {
					font-size: 2.4rem;
				}

/* naviBox */
.naviBox {
	height: 300px;
	margin-bottom: 130px;
	padding-top: 60px;
}
	.naviBox .container {
	}
		.naviBox ul {
			justify-content: space-between;
		}
			.naviBox ul li {
				width: 32%;
				margin: 0;
				position: relative;
			}
			.naviBox ul li:not(:last-child) {
				margin-bottom: 0;
			}
				.naviBox ul li a {
					width: 100%;
					justify-content: center;
				}
					.naviBox ul li a span {
						font-size: 3rem;
					}

/* outlineBox */
.outlineBox {
	padding: 60px 0;
}
	.outlineBox .tbrBorder {
		margin-bottom: 60px;
	}
	.outlineBox .flexible_x_type01 {
		justify-content: space-between;
	}
		.outlineBox .flexible_x_type01 .thum_img {
			width: 49%;
			margin-bottom: 0;
			position: relative;
			overflow: hidden;
		}
			.outlineBox .flexible_x_type01 .thum_img img {
				width: auto;
				height: 100%;
				display: block;
				position: absolute;
				top: 50%;
				left: 50%;
				-webkit-transform: translate(-50%, -50%);
				transform: translate(-50%, -50%);
				overflow: hidden;
			}
		.outlineBox .flexible_x_type01 #mapBox {
			width: 48%;
			height: 339px;
		}

/* historyBox */
.historyBox {
	padding: 60px 0;
}
	.historyBox .txt_history {
		margin-bottom: 30px;
		font-size: 2.4rem;
	}
	.historyBox .tbrBorder {
		font-size: 1.4rem;
	}
	.historyBox .tbrBorder dt {
		width: 10%;
		padding-bottom: 5px;
		text-align: center;
	}
	.historyBox .tbrBorder dd {
		margin-left: 10%;
		padding-bottom: 5px;
	}


}