@charset "utf-8";

.reveal {
	& > .slides {
		& h1,
		& h2,
		& h3,
		& h4,
		& h5,
		& h6 {
			font-weight: bold;
			letter-spacing: 0;
		}

		& h1 {
			font-size: 3em;
		}

		& h2 {
			margin-bottom: 0.75em;
			font-size: 1.75em;
		}

		& h3 {
			margin-bottom: 0.5em;
			font-size: 1.25em;
		}

		& ul {
			display: block;

			& > li {
				& + li {
					margin-top: 0.25em;
				}
			}

			& + ul {
				margin-top: 1em;
			}
		}

		& section {
			& img,
			& video {
				height: auto;
				max-width: 100%;
			}

			& img {
				margin: 0;
				border: none;
			}
		}

		& table {
			& th,
			& td {
				border: 1px solid;
				background-color: #fff;
			}

			& thead {
				& th {
					background-color: #f8f8f8;
					text-align: center;
				}
			}

			& tbody {
				& tr:last-child {
					& th,
					& td {
						border-bottom: 1px solid;
					}
				}
			}
		}

		& ruby {
			display: inline-flex;
			align-items: baseline;

			& rt,
			& rp {
				display: inline;
				font-size: 50%;
			}
		}

		& a {
			&:any-link {
				text-decoration: underline;
				transition: none;
			}

			&:link {
				color: #059;

				&:hover {
					color: #0071cc; /* lighten(#059, 10) */
				}
			}

			&:visited {
				color: #609;

				&:hover {
					color: #80c; /* lighten(#609, 10) */
				}
			}
		}

		& button {
			margin: 0; /* for Chrome */
			font-family: inherit;
			font-size: 1.5rem;
			font-weight: inherit;
			line-height: inherit; /* for WebView */

			&:-moz-focusring {
				outline: 1px dotted;
			} /* for Firefox */

			&::-moz-focus-inner {
				padding: 0;
				border: none;
			} /* for Firefox */
		}
	}

	/* 小見出し */
	& .slide_subheading {
		margin: 0.25em 0;
		display: block;
		font-size: 2rem;
		font-weight: normal;
	}

	/* 注釈 */
	& .slide_note {
		font-size: 0.5em;
	}

	/* タイル状レイアウト */
	& .slide_tile {
		margin-top: 30px;
		display: flex;
		justify-content: center;

		& > * {
			margin-left: 15px;
			margin-right: 15px;

			& > :first-child {
				margin-top: 0;
			}
		}
	}

	/* 埋め込みコンテンツのキャプション */
	& .slide_embedded_caption {
		display: block;
		font-size: 0.5em;
		font-weight: bold;
		text-align: center;
	}
}
