@charset "UTF-8";

/* ダミー画像 */
.dummy_img {
	border: 1px solid #AAA;
	position: relative;
	background-color: #EDEDED;
	height: 200px;
	overflow: hidden;
	/* text-align: center; */
}

.dummy_img p {
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	line-height: 1.5;
	width: 100%;
	background-color: #FFFFFFAA;
	z-index: 5;
	padding: 10px;
}

.dummy_img img {
	opacity: 0.75;
	min-height: 100%;
	min-width: 100%;
}


/* 共通初期化 */
body {
	font-family: 'Noto Sans JP', Helvetica, "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 14px;
}

.wrap {
	position: relative;
	margin-left: auto;
	margin-right: auto;
	max-width: 1200px;
	width: 96%;
}

/* 動画：16：9 */
.movie {
	width: 100%;
	aspect-ratio: 16 / 9;
}

.movie iframe {
	width: 100%;
	height: 100%;
}


/* 幅指定 */
.w25p {
	width: 25%;
}

.w33p {
	width: 33%;
}

.w50p {
	width: 50%;
}

.w66p {
	width: 66%;
}

.w75p {
	width: 75%;
}

.w100p {
	width: 100%;
}

/* 警告表示 */
.alert {
	color: red;
	display: none;
	font-size: 100%;
}

/* ポップアップ */
.popup {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
}

.popup.is-show {
	opacity: 1;
	visibility: visible;
}

.popup .popup-inner {
	position: absolute;
	left: 50%;
	top: 47.5%;
	transform: translate(-50%, -50%);
	width: 96%;
	max-width: 1000px;
	height: 87.5%;
	overflow-y: auto;
	background-color: #fff;
	z-index: 102;
	padding: 25px;
}

.popup .close-btn {
	position: absolute;
	text-align: right;
	padding: 15px 0;
	width: 96%;
	max-width: 1000px;
	left: 50%;
	bottom: 0;
	transform: translate(-50%, 0);
	z-index: 103;
}

.popup .close-btn img {
	width: 5%;
	cursor: pointer;
}

.popup .background {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, .8);
	z-index: 101;
	cursor: pointer;
}


/* 見出し基本形 */
h3,
h4,
h5,
h6 {
	margin-bottom: 25px;
}

h3 b,
h4 b,
h5 b,
h6 b {
	font-size: 0.75rem;
}

.h_A {
	padding: 15px;
	background-color: #00CC8A;
	color: #ffffff;
	font-size: 2rem;
	font-weight: bold;
	border-radius: 10px;
}

.h_B {
	padding: 10px;
	background-color: #00CC8A;
	color: #FFF;
	font-size: 1.5rem;
	font-weight: bold;
	border-radius: 10px;
}

/* テーブル */
.tbl_A th {
	border-bottom: 1px solid #999;
	padding: 10px;
	text-align: left;
	vertical-align: top;
	min-width: 20%;
	line-height: 1.5;
}

.tbl_A td {
	border-bottom: 1px solid #999;
	padding: 10px;
	text-align: left;
	vertical-align: top;
	line-height: 1.5;
}


