/* ------------------------------
　　エントリー
------------------------------ */
.entry {
	margin: 0 0 $entry-margin-bottom 0;
	border-bottom: $border-width solid $gray-400;
}

.page-header {
	margin: 0 0 25px 0;
	border-bottom: 2px solid $gray-900;
}

.entry-info {
	margin-top: 0;
	font-size: $font-size-base;
}
/* カテゴリーと新着ラベル */
.entry-category,
.entry-new {
	font-size: $font-size-base;

	a:link,
	a:hover,
	a:visited,
	a:active,
	a:focus {
		color: $white;
	}
}
/* タイトル */
.entry-title {
	margin: 0 0 10px 0;
	font-weight: bold;
	font-size: $h1-font-size;

	a {
		color: $body-color;
	}

	.acms-entry h2 & {
		padding: 0;
	}
}


/* エントリーのスタイル */
.#{$entry-class} {
	margin: 0 ($unit-gutter/-2);
	word-wrap: break-word;

	h2 {
		@include h2($entry:true);

		&.module-heading {
			margin: 0;
			padding: 0;
			border: 0;
		}
	}

	h3 {
		@include h3($entry:true);
	}

	h4 {
		@include h4($entry:true);
	}

	h5 {
		@include h5($entry:true);
	}

	h6 {
		@include h6($entry:true);
	}

	a {
		&:link {
			color: $link-color;
			text-decoration: none;
		}

		&:hover,
		&:focus,
		&:active {
			text-decoration: underline;
		}

		&:visited {
			text-decoration: none;
		}

		&:hover {
			color: $link-hover-color;
		}
	}
}

/* 本文 */
.#{$entry-class} {
	p {
		margin: 0 ($unit-gutter/2) $entry-margin-bottom ($unit-gutter/2);
		font-size: $font-size-base;
		line-height: 1.7;
	}
}

/* エントリー内サマリー */
.#{$entry-class} {
	p {
		&.summary-title {
			margin: 0 0 10px 0;
		}

		&.summary-detail {
			margin: 0 0 10px 0;
			font-size: ($font-size-base * .9);
		}
	}
}

/* エントリー内コンテナー */
//  幅いっぱいの要素の両端のガターを確保します
.entry-container {
	margin: 0 ($grid-space/2);
}

[class^=column-table] .entry-container {
	margin-bottom: $entry-margin-bottom;
	overflow-x: auto;
}

[class^=column-table] table {
	margin-bottom: 0;
}

/* テーブル */
.#{$entry-class} {
	table {
		width: 100%;

		&.table-history {
			table-layout: fixed; // Firefox、IE対応
		}
	}

	th,
	td {
		display: block;
		padding: 5px 10px;
		font-size: $font-size-base;
		line-height: 1.5;
		text-align: left;
		vertical-align: top;
		border-top: $border-width solid $gray-300;
	}

	.table-responsive {
		th,
		td {
			display: table-cell;
			white-space: nowrap;
		}

		table {
			margin: 0;
		}
	}

	.acms-table-scrollable {
		th,
		td {
			display: table-cell;
			white-space: nowrap;
		}
	}

	th {
		background: $gray-200;
	}
}
@include media-breakpoint-up(sm) {
	.#{$entry-class} {
		th,
		td {
			display: table-cell;
			padding: 15px 20px;
			font-size: $font-size-base;
			text-align: left;
			border-top: 1px solid $gray-400;
		}

		th {
			background: inherit;
		}

		tr:nth-child(odd) {
			background: $gray-100;
		}
	}
}


/* 沿革用テーブル */
.#{$entry-class} {
	table {
		&.table-history {
			tr {
				background: #fff;
			}

			th,
			td {
				display: block;
			}

			th {
				padding: 10px;
			}

			td {
				padding: 10px 0;
			}

			.tableHistoryImg {
				display: block;
				padding: 0 10px 10px 10px;
			}
		}
	}
}
@include media-breakpoint-up(xs) {
	.#{$entry-class} {
		.table-history-img {
			float: right;
		}
	}
}


/* リスト */
.#{$entry-class} {
	ul {
		margin: 0 ($unit-gutter/2) $entry-margin-bottom ($unit-gutter/2);
		padding: 0 0 0 2em;

		li {
			margin: 0 0 5px 0;
			font-size: $font-size-base;
			line-height: 1.5;
		}

		&.summary-default {
			padding: 0;

			li {
				margin: 0;
			}
		}
	}
}
/* 番号付きリスト */
.#{$entry-class} {
	ol {
		margin: 0 ($unit-gutter/2) $entry-margin-bottom ($unit-gutter/2);
		padding: 0 0 0 2.5em;

		li {
			margin: 0 0 5px 0;
			font-size: $font-size-base;
			line-height: 1.5;
		}
	}
}
/* 定義リスト */
.#{$entry-class} {
	dl {
		margin: 0 ($unit-gutter/2) $entry-margin-bottom ($unit-gutter/2);
	}

	dt {
		margin: 0 0 5px 0;
		font-size: $font-size-base;
		line-height: 1.2;
	}

	dd {
		font-size: $font-size-base;
		line-height: 1.5;
	}
}
/* 引用 */
.#{$entry-class} {
	blockquote {
		clear: both;
		margin: 0 0 $entry-margin-bottom 0;
		padding: 20px 10px 20px 20px;
		font-size: $font-size-base;
		line-height: 1.5;
		background: $gray-200;
		border-left: 3px solid $gray-500;
	}
}
@media screen and (min-width: $breakpoint-sm-min){
	/* 引用 */
	.#{$entry-class} {
		blockquote {
			padding: 30px 20px 30px 40px;
		}
	}
}
/* ソースコード */
.#{$entry-class} {
	pre {
		clear: both;
		box-sizing: border-box;
		margin: 0 0 $entry-margin-bottom 0;

		ol {
			margin: 0;
			padding: 0 0 0 2.5em;

			li {
				line-height: 1.5;
			}
		}
	}
}
/* 区切り線 */
.#{$entry-class} {
	hr {
		border: 0;
		border-bottom: $border-width solid $gray-200;
	}
}
/* ユニット */
.#{$entry-class} {
	[class*="col-"]:not([class*="column-"]) {
		float: left;
		padding: 0;
	}

	.caption {
		margin: 5px 0 10px 0;
		font-size: ($font-size-base * .8);
	}

	[class*="column-image-"] {
		margin-bottom: 10px;

		&.nocaption {
			margin-bottom: 20px;
		}
	}
	[class*="column-map-"],
	[class*="column-media-"]{
		margin-bottom: 20px;
	}

	[class*="column-quote-"] {
		margin-right: ($unit-gutter/2);
		margin-left: ($unit-gutter/2);
	}
}

.column-file-auto + .caption {
	margin-left: ($unit-gutter/2);
}

.column-module {
	margin: 0 ($grid-space/2);
}

/* ユニットグループ */
.ug-bg-color {
	margin: 0 ($grid-space/2) $entry-margin-bottom ($grid-space/2);
	padding: 20px 10px;
	background: $gray-100;

	*:last-child {
		margin-bottom: 0;
	}

	h2 {
		margin-bottom: $entry-element-margin-bottom-sm;
		padding-top: 0;
		padding-bottom: 0;
	}
	h3,
	h4{
		margin-bottom: $entry-element-margin-bottom-sm;
	}
}
@media screen and (min-width: $breakpoint-sm-min){
	.ug-bg-color {
		padding: 25px 15px;
	}
}



/* エントリーフッター */
.entry-footer {
	margin: 0 0 20px 0;
	padding: 10px;
	background: $gray-200;
}
/* タグ */
.entry-tag {
	margin: 0 0 5px 0;
}

.entry-tag-icon {
	float: left;
	color: $gray-700;
}

.entry-tag-item {
	float: left;
	margin: 0 0 0 10px;
}

@include media-breakpoint-up(sm) {
	.entry-tag {
		margin: 0;
	}
}


/* SNSシェア */
.share-wrapper {
	float: right;
}

.share-text {
	display: inline;
	float: left;
	margin: 0;
}
/* SNSシェアボタン */
.share-list {
	display: flex;
	justify-content: flex-end;
	margin: 0;
	padding: 0;
	line-height: 1;
	list-style: none;
}

.share-item {
	margin: 0 0 0 20px;
	vertical-align: top;
}


/* 続きを読むボタン */
.continue-link {
	color: #FFF;
	text-align: left;

	.acms-icon {
		padding: 0 5px 0 0;
	}

	a:hover,
	a:active,
	a:focus {
		color: currentColor;
		text-decoration: none;
	}
}
