
/**
 * 5.0 Alignment
 * ----------------------------------------------------------------------------
 */

.alignleft {
	float: left;
	margin: 7px 24px 7px 0;
}

.alignright {
	float: right;
	margin: 7px 0 7px 24px;
}

.aligncenter {
	clear: both;
	display: block;
	margin: 7px auto;
}

blockquote.alignleft,
blockquote.alignright {
	border-top: 1px solid rgba(0, 0, 0, 0.1);
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
	padding-top: 17px;
	width: 50%;
}

blockquote.alignleft p,
blockquote.alignright p {
	margin-bottom: 17px;
}

@media print, screen and (max-width:640px) {
	.alignleft,
	.alignright {
		display: block;
		float: none;
		margin: 7px auto;
	}
}

/**
 * 6.0 Tables
 * ----------------------------------------------------------------------------
 */

.mceItemTable {
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-width: 1px 0 0 1px;
	border-collapse: separate;
	border-spacing: 0;
	font-size: 14px;
	line-height: 1.2857142857;
	margin-bottom: 24px;
	width: 100%;
}

.mceItemTable th,
.mceItemTable caption {
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-width: 0 1px 1px 0;
	font-weight: 700;
	padding: 8px;
	text-align: left;
	text-transform: uppercase;
	vertical-align: baseline;
}

.mceItemTable td {
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-width: 0 1px 1px 0;
	font-family: Lato, sans-serif;
	font-size: 14px;
	padding: 8px;
	vertical-align: baseline;
}


/**
 * 6.5 Gallery
 * -----------------------------------------------------------------------------
 */

.gallery {
	margin-bottom: 20px;
}

.gallery-item {
	float: left;
	margin: 0 4px 4px 0;
	overflow: hidden;
	position: relative;
}

.gallery-columns-1 .gallery-item {
	max-width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 48%;
	max-width: -webkit-calc(50% - 4px);
	max-width:         calc(50% - 4px);
}

.gallery-columns-3 .gallery-item {
	max-width: 32%;
	max-width: -webkit-calc(33.3% - 4px);
	max-width:         calc(33.3% - 4px);
}

.gallery-columns-4 .gallery-item {
	max-width: 23%;
	max-width: -webkit-calc(25% - 4px);
	max-width:         calc(25% - 4px);
}

.gallery-columns-5 .gallery-item {
	max-width: 19%;
	max-width: -webkit-calc(20% - 4px);
	max-width:         calc(20% - 4px);
}

.gallery-columns-6 .gallery-item {
	max-width: 15%;
	max-width: -webkit-calc(16.7% - 4px);
	max-width:         calc(16.7% - 4px);
}

.gallery-columns-7 .gallery-item {
	max-width: 13%;
	max-width: -webkit-calc(14.28% - 4px);
	max-width:         calc(14.28% - 4px);
}

.gallery-columns-8 .gallery-item {
	max-width: 11%;
	max-width: -webkit-calc(12.5% - 4px);
	max-width:         calc(12.5% - 4px);
}

.gallery-columns-9 .gallery-item {
	max-width: 9%;
	max-width: -webkit-calc(11.1% - 4px);
	max-width:         calc(11.1% - 4px);
}

.gallery-columns-1 .gallery-item:nth-of-type(1n),
.gallery-columns-2 .gallery-item:nth-of-type(2n),
.gallery-columns-3 .gallery-item:nth-of-type(3n),
.gallery-columns-4 .gallery-item:nth-of-type(4n),
.gallery-columns-5 .gallery-item:nth-of-type(5n),
.gallery-columns-6 .gallery-item:nth-of-type(6n),
.gallery-columns-7 .gallery-item:nth-of-type(7n),
.gallery-columns-8 .gallery-item:nth-of-type(8n),
.gallery-columns-9 .gallery-item:nth-of-type(9n) {
	margin-right: 0;
}

.gallery-columns-1.gallery-size-medium figure.gallery-item:nth-of-type(1n+1),
.gallery-columns-1.gallery-size-thumbnail figure.gallery-item:nth-of-type(1n+1),
.gallery-columns-2.gallery-size-thumbnail figure.gallery-item:nth-of-type(2n+1),
.gallery-columns-3.gallery-size-thumbnail figure.gallery-item:nth-of-type(3n+1) {
	clear: left;
}

.gallery-caption {
	background-color: rgba(0, 0, 0, 0.7);
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
	color: #fff;
	font-size: 12px;
	line-height: 1.5;
	margin: 0;
	max-height: 50%;
	opacity: 0;
	padding: 6px 8px;
	position: absolute;
	bottom: 0;
	left: 0;
	text-align: left;
	width: 100%;
}

.gallery-caption:before {
	content: "";
	height: 100%;
	min-height: 49px;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

.gallery-item:hover .gallery-caption {
	opacity: 1;
}

.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
	display: none;
}


/**
 * 6.8 Attachments
 * -----------------------------------------------------------------------------
 */

.attachment .content-sidebar,
.attachment .post-thumbnail {
	display: none;
}

.attachment .entry-content {
	padding-top: 0;
}

.attachment footer.entry-meta {
	text-transform: none;
}

.entry-attachment .attachment {
	margin-bottom: 24px;
}


.wp-caption {
	background: transparent;
	border: none;
	color: #767676;
	margin: 0 0 24px 0;
	max-width: 474px;
	padding: 0;
	text-align: left;
}

.wp-caption.alignleft {
	margin: 7px 14px 7px 0;
}

.wp-caption.alignright {
	margin: 7px 0 7px 14px;
}

.wp-caption.aligncenter {
	margin: 7px 0;
}

.wp-caption-dt {
	margin: 0;
}

.wp-caption .wp-caption-text,
.wp-caption-dd {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 12px;
	font-style: italic;
	line-height: 1.5;
	margin: 9px 0;
	padding: 0 10px 0 0; /* Avoid the caption to overflow the width of the image because wp-caption has 10px wider width */
	text-align: left;
}

.mceTemp + ul,
.mceTemp + ol {
	list-style-position: inside;
}





/* .entry-body
============================================================================================================ */
.entry-body,
.editor-styles-wrapper {
	font-size: 1.8rem;
	line-height: calc(34 / 18);
	&::after {
		content: "";
		display: table;
		clear: both;
	}
	img {
		max-width: 100%;
		height: auto;
	}
	p {
		margin: 0 0 1lh;
	}
	ul,
	ol {
		margin: 0 0 1lh 1.3333em;
	}
	ul {
		list-style: none;
		margin-left: 1em;
		li {
			position: relative;
			padding-left: 2em;
			&::before {
				content: "●";
				position: absolute;
				top: 0;
				left: 0;
			}
		}
		li + li {
			margin-top: .6lh;
		}
	}
	ol {
		list-style: decimal;
	}
	li > ul,
	li > ol {
		margin-bottom: 0;
	}
	li > ul li,
	li > ol li {
		margin-top: 0;
	}
	dl {
		margin-bottom: 1lh;
	}
	dt {
		font-weight: bold;
	}
	dd {
		margin-bottom: 1lh;
	}
	p:last-child,
	dl:last-child,
	ul:last-child,
	ol:last-child {
		margin-bottom: 0;
	}

	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		clear: both;
		font-weight: 700;
		margin: 3em 0 1em;
	}

	h1 {
		margin-bottom: 5rem;
		font-size: 3rem;
		line-height: 1.5;
		color: #0086ce;
	}

	h2 {
		position: relative;
		padding-left: 3.4rem;
		font-size: 2.2rem;
		line-height: 1.6;
		color: #0086ce;
		&::before {
			content: "";
			position: absolute;
			left: 0;
			top: .1em;
			width: 2.4rem;
			height: 3rem;
			background: url(../img/info/ico-point.svg) no-repeat 50%;
			background-size: 100%;
		}
	}

	h3 {
		font-size: 2rem;
		line-height: 1.5;
		color: #0086ce;
	}

	h4 {
		font-size: 100%;
		color: #0086ce;
	}

	h5 {
		font-size: 100%;
		color: #0086ce;
	}

	h6 {
		font-size: 90%;
		line-height: 1.5;
		color: #0086ce;
	}

	h1:first-child,
	h2:first-child,
	h3:first-child,
	h4:first-child,
	h5:first-child,
	h6:first-child {
		margin-top: 0;
	}
	h1:last-child,
	h2:last-child,
	h3:last-child,
	h4:last-child,
	h5:last-child,
	h6:last-child {
		margin-bottom: 0;
	}

	cite,
	dfn,
	em,
	i {
		font-style: italic;
	}
	mark,
	ins {
		border: 0;
		color: inherit;
		text-decoration: none;
	}

	hr {
		height: 0;
		margin: 1.5em 0;
		padding: 0;
		border: 0;
		border-top: 1px solid #d6d6d6;
	}
	hr:first-child {
		margin-top: 0;
	}
	hr:last-child {
		margin-bottom: 0;
	}

	a {
		color: #0086ce;
		--a-color: #0086ce;
	}
	a[target="_blank"]:not([class]) {
		&::after {
			content: "";
			display: inline-block;
			width: 2.2rem;
			height: 2.2rem;
			margin-left: 0.4rem;
			background: url(../img/ico-blank.svg) no-repeat 50%;
			background-size: 100%;
			vertical-align: -.2em;
		}
	}

	.wp-block-image,
	.wp-block-embed {
		margin-block: 6rem;
		@media screen and (max-width: 743px) {
			margin-block: 5rem;
		}
		&:first-child {
			margin-top: 0;
		}
		&:last-child {
			margin-bottom: 0;
		}
	}

	iframe {
		width: 100%;
		height: auto;
		aspect-ratio: 16 / 9;
		border-radius: 2rem;
	}
	iframe[src*="google.com/maps/"] {
		aspect-ratio: 1;
	}

	img {
		border-radius: 2rem;
	}

	.wp-block-table {
		table {
			padding: 2rem;
			background-color: #fbddcd;
			border-radius: 2rem;
			width: 100%;
			border: 0;
			border-collapse: separate;
			font-size: 1.5rem;
			line-height: 1.7;
			th, td {
				padding: 0.6em 1em;
				border: 0;
				vertical-align: top;
			}
			th {
				font-weight: 700;
			}
			thead {
				border-bottom: 0;
				th, td {
					font-weight: 700;
					font-size: 1.7rem;
					text-align: left;
				}
			}
		}
		@media screen and (max-width: 743px) {
			margin-inline: calc(var(--sp-base-padding) * -1);
			padding-inline: var(--sp-base-padding);
			padding-bottom: 1rem;
			overflow-x: auto;
			white-space: nowrap;
		}
	}
}

