/*==========================
  トップページ・共通
==========================*/
.home #contents {
	> .inner {
		width: 100%;
		max-width: 100%;
	}
}

.topinner {
	/* コンテンツは1000pxに */
	width: 1000px;
	margin: 0 auto;
	max-width: 96%;
}

/* tinyMCE用に見出しをリセット */
.toppage {
	h3,
	h4,
	h5 {
		background: none;
		border: none;
		color: inherit;
		font-size: inherit;
		line-height: inherit;
		margin: 0;
		padding: 0;

		&::before,
		&::after {
			display: none;
		}
	}
}

/*==========================
  Sections (sec02 - sec05)
==========================*/
.sec02 {
	padding: 5% 0;
	background: url(../../img/bg_img001.png);

	.info-table {
		margin-bottom: 3em;
	}

	.time-table + p {
		font-size: 12px;
	}

	.googlemap {
		padding-bottom: 70%;
		margin-bottom: 2em;
	}
}

.sec03 {
	padding: 5% 0;
	background: url(../../img/bg_img002.png) no-repeat bottom center / auto;

	h2 + p {
		max-width: 420px;
		text-align: center;
		margin: 0 auto;
		display: block;
		margin-bottom: 2em;
	}

	h3 {
		text-align: center;
		font-weight: bold;
		font-size: 18px;
		color: #3c2b2b;
		margin: 1em 0 0.7em;
	}
}

.sec04 {
	padding: 5% 0;

	h2 + figure {
		margin-bottom: 3em;
	}

	.column {
		position: relative;
		text-align: center;
		padding: 4% 3% 45px;

		&:after {
			content: "";
			position: absolute;
			top: auto;
			left: 0;
			right: 0;
			bottom: 40px;
			margin: auto;
			width: 6px;
			height: 6px;
			border-bottom: 1px solid #6ebcb0;
			border-right: 1px solid #6ebcb0;
			transform: rotate(45deg);
			-o-transform: rotate(45deg);
			-ms-transform: rotate(45deg);
			-moz-transform: rotate(45deg);
			-webkit-transform: rotate(45deg);
		}

		a {
			transition: 200ms;

			&:hover {
				background: rgba(42, 123, 174, 0.2);
			}
		}

		img {
			margin-bottom: 1em;
		}

		h3 {
			font-size: 18px;
			color: #3c2b2b;
			font-weight: bold;
		}
	}
}

.sec05 {
	padding: 5% 0;
	margin-bottom: 5%;
	background: url(../../img/bg_img003.jpg) no-repeat center / cover;

	.txt-box {
		padding: 4%;
		background: url(../../img/bg_img004.png);
		margin-bottom: 5%;

		p {
			max-width: 600px;
			display: block;
			margin: 0 auto;
		}
	}
}

/*==========================
  Media Query: PC (768px以上)
==========================*/
@media screen and (width >= 768px) {
	.columns {
		display: flex;
		justify-content: space-between;

		&:not(:last-child) {
			margin-bottom: 2%;
		}
	}

	.column {
		justify-content: space-between;
		box-sizing: border-box;
	}

	/* 左右配置 */
	.con_l,
	.con_r {
		width: 49%;
	}

	.con_r {
		margin-left: 2%;
	}

	/* .sec04 PC用オーバーライド */
	.sec04 {
		.columns {
			margin: 0;

			/* 1つ目の.columnsの中にある.column */
			&:nth-of-type(1) .column {
				border-bottom: 1px solid #d9d5ce;
			}
		}

		.column {
			width: 50%;
			margin: 0;

			&:not(:last-child) {
				border-right: 1px solid #d9d5ce;
			}
		}
	}
}

/*==========================
  Media Query: SP (767px以下)
==========================*/
@media screen and (width <= 767px) {
	/* mainimage */
	.mainimage,
	.slider {
		margin-bottom: 0;
	}

	.mainimage {
		img {
			height: auto;
			max-width: none;
			max-height: none;
			width: 100%;
		}
	}

	/* TOP コンテンツ (.sec_news) */
	.sec_news {
		padding: 2em 0;

		.news {
			dt {
				width: 100%;
			}

			.btn a {
				top: 105%;
			}
		}
	}
}
