@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");
/*
* Local variables
*/
@media only screen and (min-width: 751px) {
	.only-sp {
		display: none;
	}
}

@media only screen and (max-width: 750px) {
	.only-pc {
		display: none;
	}
}

.container_kazegaku {
	width: 100%;
	background: url(/d/images/bg.gif) center repeat;
	z-index: 1;
	letter-spacing: 0.05em;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku {
		padding: 0 0 50px 0;
		font-size: 14px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku {
		padding: 0 0 6.66667vw 0;
		font-size: 3.2vw;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku #kazegaku0_title {
		margin-top: -110px;
		padding-top: 140px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku #kazegaku0_title {
		margin-top: -4vw;
		padding-top: 13.33333vw;
	}
}

.container_kazegaku .category_title {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	position: relative;
	z-index: 10;
	background-image: url(/d/images/kazegaku/titlebg.png);
	background-repeat: repeat-x;
	background-position: top center;
	text-align: center;
	color: #fff;
	font-weight: 700;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .category_title {
		height: 92px;
		font-size: 2rem;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku .category_title {
		height: 18.66667vw;
		font-size: 5.33333vw;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .kazegaku {
		width: 800px;
		margin: 30px auto auto;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku .kazegaku {
		margin-top: 5.33333vw;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku .kazegaku__lead {
		padding: 4.26667vw;
	}
}

.container_kazegaku .kazegaku p + p,
.container_kazegaku .kazegaku p + h4,
.container_kazegaku .kazegaku p + h3 {
	margin-top: 1em;
}

.container_kazegaku .kazegaku_title {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 100%;
	position: relative;
	z-index: 10;
	background-repeat: no-repeat;
	background-position: top center;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .kazegaku_title {
		height: 192px;
		background-image: url(/d/images/kazegaku/kazegaku_titlebg_pc.png);
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku .kazegaku_title {
		height: 34.66667vw;
		background-image: url(/d/images/kazegaku/kazegaku_titlebg_sp.png);
	}
}

.container_kazegaku .kazegaku_title__sub {
	background-color: #44a7d5;
	border-radius: 1000px;
	color: #fff;
	font-weight: 500;
	text-align: center;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .kazegaku_title__sub {
		font-size: 25px;
		width: 230px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku .kazegaku_title__sub {
		font-size: 3.33333vw;
		width: 30.66667vw;
	}
}

.container_kazegaku .kazegaku_title__main {
	color: #42a8d3;
	font-weight: 700;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .kazegaku_title__main {
		font-size: 38px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku .kazegaku_title__main {
		font-size: 5.06667vw;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .kazegaku_navi {
		margin-top: 50px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku .kazegaku_navi {
		margin-top: 6.66667vw;
	}
}

.container_kazegaku .kazegaku_navi ul {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: auto;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .kazegaku_navi ul {
		gap: 10px;
		width: 690px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku .kazegaku_navi ul {
		padding: 0 1.33333vw;
	}
}

.container_kazegaku .kazegaku_navi ul li {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #ffffe6;
	filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.25));
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .kazegaku_navi ul li {
		flex: 0 0 220px;
		height: 50px;
		border-radius: 5px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku .kazegaku_navi ul li {
		flex: 0 0 32%;
		height: 13.33333vw;
		border-radius: 1.33333vw;
		font-size: 3.2vw;
	}
}

.container_kazegaku .kazegaku_navi ul li.is-current {
	color: #fff;
	background-color: #45a7d5;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .kazegaku_navi ul li:hover {
		background-color: #45a7d5;
	}
	.container_kazegaku .kazegaku_navi ul li:hover a {
		color: #fff;
	}
}

.container_kazegaku .kazegaku_navi ul li a {
	text-decoration: none;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .kazegaku_navi ul li a {
		cursor: pointer;
		font-size: 14px;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .sensei {
		display: flex;
		margin: 40px auto auto;
		align-items: center;
		justify-content: space-between;
		width: 690px;
		gap: 40px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku .sensei {
		margin: 5.33333vw auto auto;
		padding: 0 1.33333vw;
	}
}

.container_kazegaku .sensei__text {
	background-color: #fff;
	padding: 1em 2em;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .sensei__text {
		flex: 1 1 100%;
		font-size: 15px;
		border-radius: 5px;
		filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.25));
	}
}

.container_kazegaku .sensei__text p {
	background-image: linear-gradient(to bottom, #fff 0, #fff calc(2.5em - 1px), #ddd calc(2.5em - 1px), #ddd 2.5em);
	background-size: 100% 2.5em;
	line-height: 2.5em;
	background-position: top -0.2em center;
	padding: 0 0.2em;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .sensei__photo {
		flex: 0 0 140px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku .sensei__photo {
		margin: 6.66667vw auto auto;
		text-align: center;
	}
}

.container_kazegaku .sensei__photo img {
	width: 100%;
	border-radius: 1000px;
	filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.25));
}

@media only screen and (max-width: 750px) {
	.container_kazegaku .sensei__photo img {
		width: 34.66667vw;
	}
}

.container_kazegaku .sensei__photo figcaption {
	font-weight: 700;
	text-align: center;
	line-height: 1.5em;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .sensei__photo figcaption {
		font-size: 12px;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku .sensei__photo figcaption span {
		font-size: 10px;
	}
}

.container_kazegaku__title-blue-border {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #42a8d3;
	flex-wrap: nowrap;
	font-weight: 700;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__title-blue-border {
		gap: 10px;
		font-size: 28px;
		margin-top: 24px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__title-blue-border {
		gap: 1.33333vw;
		font-size: 4.26667vw;
		margin-top: 3.2vw;
	}
}

.container_kazegaku__title-blue-border::before, .container_kazegaku__title-blue-border::after {
	content: '';
	display: block;
	flex: 1 1 100%;
	background-color: #42a8d3;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__title-blue-border::before, .container_kazegaku__title-blue-border::after {
		height: 2px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__title-blue-border::before, .container_kazegaku__title-blue-border::after {
		height: 0.26667vw;
	}
}

.container_kazegaku__title-blue-border span {
	flex: 0 0 auto;
}

.container_kazegaku__table {
	table-layout: fixed;
	width: 100%;
	line-height: 1.5em;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__table {
		font-size: 12px;
		margin-top: 16px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__table {
		font-size: 2.93333vw;
		margin-top: 2.13333vw;
	}
}

.container_kazegaku__table--01-lead th, .container_kazegaku__table--01-lead td {
	border: 1px solid #707070;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__table--01-lead th, .container_kazegaku__table--01-lead td {
		padding: 1em 2em;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__table--01-lead th, .container_kazegaku__table--01-lead td {
		padding: 1em 1.5em;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__table--01-point1 {
		width: 133.33333vw;
	}
}

.container_kazegaku__table--01-point1 th, .container_kazegaku__table--01-point1 td {
	padding: 1em;
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__table--01-point3 {
		width: 133.33333vw;
	}
}

.container_kazegaku__table--01-point3 th, .container_kazegaku__table--01-point3 td {
	padding: 1em;
}

.container_kazegaku__table-wrap {
	width: 100%;
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__table-wrap {
		position: relative;
		overflow: auto;
		padding: 0.5em 0 1em;
		-ms-overflow-style: none;
		scrollbar-width: none;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__table-wrap::-webkit-scrollbar {
		display: none;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__table-overlay {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background-color: rgba(255, 255, 255, 0.5);
		padding: 8.53333vw 3.2vw;
		opacity: 1;
		visibility: visible;
		display: block;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__table-overlay div {
		color: #333;
		font-size: 4.26667vw;
		background-color: rgba(255, 255, 255, 0.5);
		padding: 3.2vw;
		border-radius: 1.33333vw;
		display: flex;
		justify-content: center;
		align-items: center;
		font-weight: 700;
	}
}

.container_kazegaku__table-overlay.hidden {
	opacity: 0;
	visibility: hidden;
	display: none;
	animation: hideOverlay 0.25s linear;
}

@keyframes hideOverlay {
	0% {
		opacity: 1;
		display: block;
		visibility: visible;
	}
	99% {
		opacity: 0;
		display: block;
		visibility: hidden;
	}
	100% {
		opacity: 0;
		visibility: hidden;
		display: none;
	}
}

.container_kazegaku__table-caption {
	font-weight: 700;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__table-caption {
		font-size: 16px;
		margin-bottom: 0.5em;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__table-caption {
		font-size: 3.73333vw;
		margin: 1em auto auto;
		line-height: 1.5em;
	}
}

.container_kazegaku__table-caption::before {
	content: '◎';
	display: inline;
	font-weight: inherit;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__table-colgroup--01-lead col:nth-child(1) {
		width: 270px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__table-colgroup--01-lead col:nth-child(1) {
		width: 32vw;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__table-colgroup--01-point1 col:nth-child(1) {
		width: 80px;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__table-colgroup--01-point1 col:nth-child(2) {
		width: 130px;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__table-colgroup--01-point1 col:nth-child(3) {
		width: 130px;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__table-colgroup--01-point1 col:nth-child(4) {
		width: 280px;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__table-colgroup--01-point3 col:nth-child(1) {
		width: 80px;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__table-colgroup--01-point3 col:nth-child(2) {
		width: 130px;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__table-colgroup--01-point3 col:nth-child(3) {
		width: 130px;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__table-colgroup--01-point3 col:nth-child(4) {
		width: 280px;
	}
}

.container_kazegaku__table-head {
	background-color: #44a7d5;
	color: #fff;
}

.container_kazegaku__table-head--01-point1 {
	background-color: #1277a7;
}

.container_kazegaku__table-head--01-point1 th {
	border: 1px solid #fff !important;
	text-align: center;
	font-weight: 700;
}

.container_kazegaku__table-head--01-point3 {
	background-color: #1277a7;
}

.container_kazegaku__table-head--01-point3 th {
	border: 1px solid #fff !important;
	text-align: center;
	font-weight: 700;
}

.container_kazegaku__table-body {
	background-color: #fff;
}

.container_kazegaku__table-body--01-point1 tr:nth-child(1), .container_kazegaku__table-body--01-point1 tr:nth-child(5), .container_kazegaku__table-body--01-point1 tr:nth-child(6), .container_kazegaku__table-body--01-point1 tr:nth-child(7), .container_kazegaku__table-body--01-point1 tr:nth-child(8), .container_kazegaku__table-body--01-point1 tr:nth-child(9) {
	background-color: #b0e2f9;
}

.container_kazegaku__table-body--01-point1 tr:nth-child(2), .container_kazegaku__table-body--01-point1 tr:nth-child(3), .container_kazegaku__table-body--01-point1 tr:nth-child(4) {
	background-color: #d8f3ff;
}

.container_kazegaku__table-body--01-point1 th, .container_kazegaku__table-body--01-point1 td {
	border: 1px solid #fff !important;
	text-align: center;
}

.container_kazegaku__table-body--01-point1 th {
	background-color: #1277a7;
	color: #fff;
	font-weight: 700;
}

.container_kazegaku__table-body--01-point3 tr {
	background-color: #d8f3ff;
}

.container_kazegaku__table-body--01-point3 tr th, .container_kazegaku__table-body--01-point3 tr td {
	border: 1px solid #fff !important;
	text-align: center;
}

.container_kazegaku__table-body--01-point3 tr th {
	background-color: #1277a7;
	color: #fff;
	font-weight: 700;
}

.container_kazegaku__table-note {
	margin-top: 0.5em;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__table-note {
		font-size: 10px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__table-note {
		font-size: 2.66667vw;
		line-height: 1.5;
	}
}

.container_kazegaku__table + p {
	margin-top: 1em;
}

.container_kazegaku__point {
	background-color: #44a7d5;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__point {
		margin-top: 40px;
		padding: 32px 40px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__point {
		margin-top: 5.33333vw;
		padding: 5.33333vw 4.26667vw;
	}
}

.container_kazegaku__point-inner {
	background-color: #fff;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__point-inner {
		border-radius: 10px;
		padding: 32px 50px;
		margin-top: 18px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__point-inner {
		border-radius: 1.33333vw;
		padding: 4.26667vw 3.2vw;
		margin-top: 2.4vw;
	}
}

.container_kazegaku__point-title {
	font-weight: 700;
}

.container_kazegaku__point-title--h3 {
	color: #fff;
	line-height: 1.3;
	display: flex;
	align-items: center;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__point-title--h3 {
		font-size: 28px;
		gap: 10px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__point-title--h3 {
		font-size: 4vw;
		gap: 2.66667vw;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__point-title--h3 img {
		width: 74px;
		flex: 0 0 74px;
		margin-top: -8px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__point-title--h3 img {
		width: 13.33333vw;
		flex: 0 0 13.33333vw;
		margin-top: -1.06667vw;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__point-title--h4 {
		font-size: 16px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__point-title--h4 {
		font-size: 3.73333vw;
		line-height: 1.5em;
	}
}

.container_kazegaku__point-title--h4::before {
	content: '◎';
	display: inline;
}

.container_kazegaku__knowledge {
	background-color: #ffffe6;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__knowledge {
		width: 650px;
		padding: 24px 36px;
		margin: 40px auto auto;
		border-radius: 10px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__knowledge {
		width: 97.33333vw;
		margin: 4vw auto auto;
		padding: 6.66667vw;
	}
}

.container_kazegaku__knowledge-title {
	font-weight: 700;
	color: #0777ad;
	line-height: 1.3;
	display: flex;
	align-items: center;
	border-bottom: 1px solid #0777ad;
	padding-bottom: 0.5em;
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__knowledge-title {
		font-size: 20px;
		gap: 10px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__knowledge-title {
		font-size: 4vw;
		gap: 2.66667vw;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__knowledge-title img {
		width: 48px;
		flex: 0 0 48px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__knowledge-title img {
		width: 13.33333vw;
		flex: 0 0 13.33333vw;
		margin-top: -1.06667vw;
	}
}

@media only screen and (min-width: 751px) {
	.container_kazegaku__knowledge-inner {
		margin-top: 24px;
	}
}

@media only screen and (max-width: 750px) {
	.container_kazegaku__knowledge-inner {
		margin-top: 24px;
	}
}
