@charset "utf-8";
/* CSS Document */

section {
	margin-bottom: 50px;
}

#mainBlock > div:first-child{
	height: 0 !important;
}

#a01,
#a02,
#a03 {
	margin	: -30px 0 30px;
	padding	: 30px 0 0;
}

table {
	width		: 98%;
}

table th,
table td {
	line-height	: 1.8;
	text-align	: left;
}

table th {
}

table td {
}

.sec02 {
}

.sec02 .map01 {
	width		: 460px;
	margin-right: 30px;
	float		: left;
}

.sec02 .map02 {
	width		: 230px;
	float		: left;
	text-align	: left;
}

.sec02 .map02 p {
	margin-bottom: 20px;
}

.sec02 .map02 span {
	margin-bottom	: 3px;
	font-weight		: bold;
	display			: block;
}

#a03 table {
	width: 95%;
	margin: 0 auto;
}

	#a03 table td {
		width: 50%;
	}

#a03 div{
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
#a03 div iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
	
/* ----------------------------------

アコーディオン

---------------------------------- */

.sec02 .h04 { margin:-20px 0 30px 0; }

/*ボックス全体*/
.sec02 {
    margin: 2em 0;
    padding: 0;
    max-width: 730px;/*最大幅*/
}

/*ラベル*/
.sec02 label {
    display: block;
    cursor :pointer;
    transition: all 0.5s;
	margin:0;
}

/*アイコンを表示*/
.sec02 label:before {
    content: url(../img/arrow_down.png);
	margin:0 0 0 700px;
}

/*ラベルホバー時*/
.sec02 label:hover {
	text-decoration:none !important;
}

/*チェックは隠す*/
.sec02 input {
    display: none;
}

/*中身を非表示にしておく*/
.sec02 .mapbox {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 1.0s;
}

/*クリックで中身表示*/
.accordion:checked + label + .mapbox {
    height: auto;
    opacity: 1;
}

.sec02 .mapbox p { }

/*アイコンを入れ替える*/
.accordion:checked + label:before {
    content: url(../img/arrow_up.png);
}

@media screen and (max-width: 767px){
	#mainBlock > div:first-child {
		height: 0 !important;
		display: none !important;
	}
	#mainBlock div:first-child, #sideMenu {
		float: none;
		width: 100% !important;
	}
	#sideMenu {
		position: relative !important;
		top: 0 !important;
	}
	#sideMenu ul {
		display: flex;
		flex-wrap: wrap;
	}
	#sideMenu ul li {
		width: calc(100% / 2);
	}
	#sideMenu ul li:last-child {
		width: calc(100%);
	}

	#contentsBlock{
		padding: 0 15px;
		box-sizing: border-box;
	}

	.tableStyle01 th, .tableStyle01 td {
		display: block;
		width: 100% !important;
		margin: 0 auto !important;
		box-sizing: border-box;
	}

	
	/*アイコンを表示*/
	.sec02 label {
		position: relative;
	}
	.sec02 label:before {
		content: url(../img/arrow_down.png);
		margin:0;
		position: absolute;
		right: 8px;
		bottom: 0;
	}
	.sec02 .map01 iframe {
		width: 100%;
	}
}
