@charset "utf-8";
.article__contents img {
	display: inline;
	vertical-align: baseline;
}
/* PC ================================================== */
@media all and (min-width:1025px){
#article {
	width: 100%;
	height: auto;
}
	.article__inner {
		width: 90%;
		max-width: 1000px;
		height: auto;
		margin: 0 auto;
	}
		.article__info {
			width: 100%;
			height: auto;
			margin-bottom: 25px;
			display: flex;
			justify-content: flex-start;
			align-items: center;
		}
			.article__date {
				display: block;
				width: auto;
				height: 18px;
				padding: 0 0;
				margin-right: 20px;
				font-size: 0.875rem;
				font-weight: 500;
				line-height: 18px;
				letter-spacing: 0.08em;
				color: var(--color--gray);
			}
			.article__cat {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 100px;
				height: 18px;
				padding: 0;
				margin: 0;
				background-color: var(--color--black);
				font-size: 0.75rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0em;
				color: #fff;
				text-align: center;
			}
		.article__heading {
			width: 100%;
			height: auto;
			padding: 0 0 12px;
			display: flex;
			justify-content: space-between;
			align-items: end;
			position: relative;
		}
			.article__heading::before,
			.article__heading::after {
				content: '';
				display: block;
				height: 1px;
				position: absolute;
				bottom: 0;
				left: 0;
			}
			.article__heading::before {
				width: 100%;
				background-color: var(--color--lightgray);
				z-index: 0;
			}
			.article__heading::after {
				width: 50px;
				background-color: var(--color--yellow);
				z-index: 1;
			}
			.article__title {
				width: calc(100% - 150px);
				height: auto;
				font-size: 1.625rem;
				font-weight: 700;
				line-height: 1.5;
				letter-spacing: 0.05em;
			}
			.article__share {
				width: auto;
				height: auto;
				display: flex;
				justify-content: flex-end;
				align-items: flex-end;
				column-gap: 16px;
			}
				.article__share__item {
					width: 24px;
					height: 24px;
				}
				.article__share__item.twitter {
					margin-right: -1px;
				}
					.article__share__item a {
						display: flex;
						justify-content: center;
						align-items: center;
						width: 100%;
						height: 100%;
					}
						.article__share_facebook {
							width: 100%;
							height: auto;
						}
						.article__share_twitter {
							width: 100%;
							height: auto;
						}
						.article__share_line {
							width: 100%;
							height: auto;
							font-size: 0.625rem;
							font-weight: 900;
							text-align: center;
						}
		.article__contents {
			width: 100%;
			height: auto;
			padding: 40px 0;
		}
			/* 画像  */
			.article__contents > img {
				max-width: 100%;
				height: auto;
				margin: 0 auto 20px;
			}
			/* カラム  */
			.article__contents .article__column {
				width: 100%;
				height: auto;
				margin: 0 auto 20px;
				display: flex;
				justify-content: space-between;
				align-items: flex-start;
				column-gap: 20px;
			}
				.article__contents .article__column > * {
					width: 100%;
					height: auto;
				}
					.article__contents .article__column > * > * {
						width: 100%;
						height: auto;
					}
			/* 見出し */
			.article__contents h2 {
				width: 100%;
				height: auto;
				padding: 9px 15px 9px 15px;
				margin: 80px 0 40px;
				background-color: var(--color--yellowgray);
				font-size: 1.375rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h2::before {
					content: '';
					display: block;
					width: 3px;
					height: 40%;
					background-color: var(--color--yellow);
					position: absolute;
					top: 50%;
					left: 0;
					transform: translate(0%,-50%);
				}
			.article__contents h3 {
				width: 100%;
				height: auto;
				padding: 5px 15px 5px 15px;
				margin: 30px 0 30px;
				background-color: #F0F0ED;
				font-size: 1.25rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h3::before {
					content: '';
					display: block;
					width: 3px;
					height: 40%;
					background-color: var(--color--gray);
					position: absolute;
					top: 50%;
					left: 0;
					transform: translate(0%,-50%);
				}
			.article__contents h4 {
				width: 100%;
				height: auto;
				padding: 2px 15px 2px 15px;
				margin: 25px 0 20px;
				font-size: 1.125rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h4::before {
					content: '';
					display: block;
					width: 3px;
					height: 80%;
					background-color: var(--color--skyblue);
					position: absolute;
					top: 50%;
					left: 0;
					transform: translate(0%,-50%);
				}
			.article__contents h5 {
				width: 100%;
				height: auto;
				padding: 2px 15px 2px 15px;
				margin: 25px 0 15px;
				font-size: 1.125rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h5::before {
					content: '';
					display: block;
					width: 2px;
					height: 60%;
					background-color: var(--color--gray);
					position: absolute;
					top: 47.5%;
					left: 0;
					transform: translate(0%,-50%);
				}
			.article__contents h6 {
				width: 100%;
				height: auto;
				padding: 2px 15px 2px 15px;
				margin: 25px 0 15px;
				font-size: 1rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h6::before {
					content: '';
					display: block;
					width: 9px;
					height: 1px;
					background-color: var(--color--black);
					position: absolute;
					top: 47.5%;
					left: 0;
					transform: translate(0%,-50%);
				}
			/* テキスト */
			.article__contents p {
				width: 100%;
				height: auto;
				margin-bottom: 15px;
				font-size: 0.875rem;
				font-weight: 500;
				line-height: 2;
				letter-spacing: 0.04em;
			}
			.caption {
				width: 100%;
				height: auto;
				font-size: 0.75rem;
				font-weight: 500;
				line-height: 2;
				letter-spacing: 0.04em;
				text-align: center;
			}
			/* 囲みテキスト */
			.article__contents .wrap_white {
				width: 100%;
				height: auto;
				padding: 40px;
				margin: 0 0 28px;
				background-color: #fff;
			}
			.article__contents .wrap_gray {
				width: 100%;
				height: auto;
				padding: 40px;
				margin: 0 0 28px;
				background-color: var(--color--creamgray);
			}
			.article__contents .wrap_frame {
				width: 100%;
				height: auto;
				padding: 40px;
				margin: 0 0 28px;
				border: solid 1px var(--color--gray);
			}
				.article__contents .wrap_white > p,
				.article__contents .wrap_gray > p,
				.article__contents .wrap_frame > p {
					margin: 0;
				}
			/* リスト */
			.article__contents ul {
				width: 100%;
				height: auto;
				margin-bottom: 15px;
				font-size: 0.875rem;
				font-weight: 500;
				line-height: 2;
				letter-spacing: 0.04em;
			}
				.article__contents > ul > li {
					padding-left: 15px;
					margin-bottom: 6px;
					position: relative;
				}
				.article__contents > ul > li::before {
					content: '';
					display: block;
					width: 8px;
					height: 8px;
					border-radius: 50%;
					border: solid 1px var(--color--gray);
					position: absolute;
					top: 10px;
					left: 0;
				}
					.article__contents * > ul {
						margin-top: 6px;
					}
						.article__contents * ul > li {
							padding-left: 10px;
							margin-bottom: 6px;
							position: relative;
						}
						.article__contents * > ul li::before {
							content: '';
							display: block;
							width: 3px;
							height: 3px;
							border-radius: 50%;
							border: none;
							background-color: var(--color--gray);
							position: absolute;
							top: 13px;
							left: 0;
						}
			.article__contents ol {
				width: 100%;
				height: auto;
				margin-bottom: 15px;
				font-size: 0.875rem;
				font-weight: 500;
				line-height: 2;
				letter-spacing: 0.04em;
				counter-reset: number 0; 
			}
				.article__contents ol > li {
					padding-left: 28px;
					margin-bottom: 6px;
					position: relative;
				}
				.article__contents ol > li::before {
					counter-increment: number 1;
					content: counter(number) ".";
					font-size: 1rem;
					font-weight: 700;
					color: var(--color--gray);
					position: absolute;
					top: -2px;
					left: 0;
				}
					.article__contents * > ol {
						margin-top: 6px;
						counter-reset: number 0; 
					}
						.article__contents * > ol > li {
							padding-left: 24px;
							margin-bottom: 6px;
							position: relative;
						}
						.article__contents * > ol > li::before {
							counter-increment: number 1;
							content: counter(number) ".";
							font-size: 0.9375rem;
							font-weight: 500;
							color: var(--color--gray);
							position: absolute;
							top: 0;
							left: 0;
						}
			/* リンクテキスト */
			.article__contents > a.txt_link {
				padding-left: 15px;
				font-size: 0.875rem;
				font-weight: 500;
				color: var(--color--black);
				position: relative;
			}
				.article__contents > a.txt_link::before {
					content: '';
					display: block;
					width: 7px;
					height: 7px;
					border-top: solid 2px var(--color--gray);
					border-right: solid 2px var(--color--gray);
					transform: rotate(45deg);
					position: absolute;
					bottom: 4px;
					left: 0;
				}
			.article__contents p a {
				color: var(--color--black);
				text-decoration: underline;
			}
			.article__contents p a:hover {
				text-decoration: none;
			}
			/* テーブル */
			.article__contents .table_wrap {
				width: 100%;
				height: auto;
				margin-bottom: 25px;
				overflow: scroll;
			}
				.article__contents table {
					width: 100%;
					height: auto;
					border: solid 1px #C5C5C5;
					border-collapse: collapse;
					text-align: left;
				}
					.article__contents table th,
					.article__contents table td {
						padding: 8px 15px;
						border: solid 1px #C5C5C5;
					}
					.article__contents table th {
						width: 250px;
						height: auto;
						background-color: var(--color--black);
						font-size: 1rem;
						font-weight: 700;
						line-height: 1.6;
						letter-spacing: 0.03em;
						color: #fff;
					}
					.article__contents table td {
						font-size: 0.875rem;
						font-weight: 500;
						line-height: 2;
						letter-spacing: 0.04em;
						color: var(--color--black);
					}
					.article__contents table tr:first-of-type td {
						background-color: var(--color--yellowgray);
					}
					td.centered {text-align: center;}
					td.align_left {text-align: left;}
					td.align_right {text-align: right;}
			/* ボタン */
			.nomal_btn {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 280px;
				height: 56px;
				margin: 20px auto 0;
				border-radius: 28px;
				background-color: #fff;
				border: solid 1px var(--color--black);
				font-size: 1rem;
				font-weight: 500;
				line-height: 1;
				letter-spacing: 0.05em;
				color: var(--color--black);
				position: relative;
			}
				.nomal_btn::before {
					content: '';
					display: block;
					width: 14px;
					height: 1px;
					background-color: var(--color--black);
					position: absolute;
					top: 50%;
					right: 20px;
					transform: translate(0%,-50%);
				}
				.nomal_btn::after {
					content: '';
					display: block;
					width: 6px;
					height: 6px;
					border-top: solid 1px var(--color--black);
					border-right: solid 1px var(--color--black);
					position: absolute;
					top: 50%;
					right: 20px;
					transform: rotate(45deg) translate(0%,-50%);
					transform-origin: center 0%;
				}
			.emphasis_btn {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 280px;
				height: 56px;
				margin: 20px auto 0;
				border-radius: 28px;
				background-color: var(--color--black);
				border: solid 1px var(--color--black);
				font-size: 1rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0.05em;
				color: #fff;
				position: relative;
			}
				.emphasis_btn::before {
					content: '';
					display: block;
					width: 14px;
					height: 1px;
					background-color: #fff;
					position: absolute;
					top: 50%;
					left: 20px;
					transform: translate(0%,-50%);
				}
				.emphasis_btn::after {
					content: '';
					display: block;
					width: 6px;
					height: 6px;
					border-top: solid 1px #fff;
					border-left: solid 1px #fff;
					position: absolute;
					top: 50%;
					left: 20px;
					transform: rotate(-45deg) translate(0%,-50%);
					transform-origin: center 0%;
				}
			.back_btn {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 280px;
				height: 56px;
				margin: 20px auto 0;
				border-radius: 28px;
				background-color: var(--color--orangegray);
				border: solid 1px var(--color--orangegray);
				font-size: 1rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0.05em;
				color: #fff;
				position: relative;
			}
				.back_btn::before {
					content: '';
					display: block;
					width: 14px;
					height: 1px;
					background-color: #fff;
					position: absolute;
					top: 50%;
					left: 20px;
					transform: translate(0%,-50%);
				}
				.back_btn::after {
					content: '';
					display: block;
					width: 6px;
					height: 6px;
					border-top: solid 1px #fff;
					border-left: solid 1px #fff;
					position: absolute;
					top: 50%;
					left: 20px;
					transform: rotate(-45deg) translate(0%,-50%);
					transform-origin: center 0%;
				}

		.page_bottom_area {
			width: 100%;
			height: auto;
			padding: 50px 0 100px;
		}
}

/* Tablet ================================================== */
@media all and (min-width:600px) and (max-width:1024px){
#article {
	width: 100%;
	height: auto;
}
	.article__inner {
		width: 90%;
		height: auto;
		margin: 0 auto;
	}
		.article__info {
			width: 100%;
			height: auto;
			margin-bottom: 25px;
			display: flex;
			justify-content: flex-start;
			align-items: center;
		}
			.article__date {
				display: block;
				width: auto;
				height: 18px;
				padding: 0 0;
				margin-right: 20px;
				font-size: 0.875rem;
				font-weight: 500;
				line-height: 18px;
				letter-spacing: 0.08em;
				color: var(--color--gray);
			}
			.article__cat {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 100px;
				height: 18px;
				padding: 0;
				margin: 0;
				background-color: var(--color--black);
				font-size: 0.75rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0em;
				color: #fff;
				text-align: center;
			}
		.article__heading {
			width: 100%;
			height: auto;
			padding: 0 0 12px;
			display: flex;
			justify-content: space-between;
			align-items: end;
			position: relative;
		}
			.article__heading::before,
			.article__heading::after {
				content: '';
				display: block;
				height: 1px;
				position: absolute;
				bottom: 0;
				left: 0;
			}
			.article__heading::before {
				width: 100%;
				background-color: var(--color--lightgray);
				z-index: 0;
			}
			.article__heading::after {
				width: 50px;
				background-color: var(--color--yellow);
				z-index: 1;
			}
			.article__title {
				width: calc(100% - 150px);
				height: auto;
				font-size: 1.625rem;
				font-weight: 700;
				line-height: 1.5;
				letter-spacing: 0.05em;
			}
			.article__share {
				width: auto;
				height: auto;
				display: flex;
				justify-content: flex-end;
				align-items: flex-end;
				column-gap: 16px;
			}
				.article__share__item {
					width: 24px;
					height: 24px;
				}
				.article__share__item.twitter {
					margin-right: -1px;
				}
					.article__share__item a {
						display: flex;
						justify-content: center;
						align-items: center;
						width: 100%;
						height: 100%;
					}
						.article__share_facebook {
							width: 100%;
							height: auto;
						}
						.article__share_twitter {
							width: 100%;
							height: auto;
						}
						.article__share_line {
							width: 100%;
							height: auto;
							font-size: 0.625rem;
							font-weight: 900;
							text-align: center;
						}
		.article__contents {
			width: 100%;
			height: auto;
			padding: 40px 0;
		}
			/* 画像  */
			.article__contents > img {
				max-width: 100%;
				height: auto;
				margin: 0 auto 20px;
			}
			/* カラム  */
			.article__contents .article__column {
				width: 100%;
				height: auto;
				margin: 0 auto 20px;
				display: flex;
				justify-content: space-between;
				align-items: flex-start;
				column-gap: 20px;
			}
				.article__contents .article__column > * {
					width: 100%;
					height: auto;
				}
					.article__contents .article__column > * > * {
						width: 100%;
						height: auto;
					}
			/* 見出し */
			.article__contents h2 {
				width: 100%;
				height: auto;
				padding: 10px 15px 10px 15px;
				margin: 70px 0 35px;
				background-color: var(--color--yellowgray);
				font-size: 1.375rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h2::before {
					content: '';
					display: block;
					width: 3px;
					height: 40%;
					background-color: var(--color--yellow);
					position: absolute;
					top: 50%;
					left: 0;
					transform: translate(0%,-50%);
				}
			.article__contents h3 {
				width: 100%;
				height: auto;
				padding: 8px 15px 8px 15px;
				margin: 30px 0 30px;
				background-color: #F0F0ED;
				font-size: 1.25rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h3::before {
					content: '';
					display: block;
					width: 3px;
					height: 40%;
					background-color: var(--color--gray);
					position: absolute;
					top: 50%;
					left: 0;
					transform: translate(0%,-50%);
				}
			.article__contents h4 {
				width: 100%;
				height: auto;
				padding: 2px 15px 2px 15px;
				margin: 25px 0 20px;
				font-size: 1.125rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h4::before {
					content: '';
					display: block;
					width: 3px;
					height: 80%;
					background-color: var(--color--skyblue);
					position: absolute;
					top: 50%;
					left: 0;
					transform: translate(0%,-50%);
				}
			.article__contents h5 {
				width: 100%;
				height: auto;
				padding: 2px 15px 2px 15px;
				margin: 25px 0 15px;
				font-size: 1.125rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h5::before {
					content: '';
					display: block;
					width: 2px;
					height: 60%;
					background-color: var(--color--gray);
					position: absolute;
					top: 47.5%;
					left: 0;
					transform: translate(0%,-50%);
				}
			.article__contents h6 {
				width: 100%;
				height: auto;
				padding: 2px 15px 2px 15px;
				margin: 25px 0 15px;
				font-size: 1rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h6::before {
					content: '';
					display: block;
					width: 9px;
					height: 1px;
					background-color: var(--color--black);
					position: absolute;
					top: 47.5%;
					left: 0;
					transform: translate(0%,-50%);
				}
			/* テキスト */
			.article__contents p {
				width: 100%;
				height: auto;
				margin-bottom: 15px;
				font-size: 0.875rem;
				font-weight: 500;
				line-height: 2;
				letter-spacing: 0.04em;
			}
			.caption {
				width: 100%;
				height: auto;
				font-size: 0.75rem;
				font-weight: 500;
				line-height: 2;
				letter-spacing: 0.04em;
				text-align: center;
			}
			/* 囲みテキスト */
			.article__contents .wrap_white {
				width: 100%;
				height: auto;
				padding: 40px;
				margin: 0 0 28px;
				background-color: #fff;
			}
			.article__contents .wrap_gray {
				width: 100%;
				height: auto;
				padding: 40px;
				margin: 0 0 28px;
				background-color: var(--color--creamgray);
			}
			.article__contents .wrap_frame {
				width: 100%;
				height: auto;
				padding: 40px;
				margin: 0 0 28px;
				border: solid 1px var(--color--gray);
			}
				.article__contents .wrap_white > p,
				.article__contents .wrap_gray > p,
				.article__contents .wrap_frame > p {
					margin: 0;
				}
			/* リスト */
			.article__contents ul {
				width: 100%;
				height: auto;
				margin-bottom: 15px;
				font-size: 0.875rem;
				font-weight: 500;
				line-height: 2;
				letter-spacing: 0.04em;
			}
				.article__contents ul > li {
					padding-left: 15px;
					margin-bottom: 6px;
					position: relative;
				}
				.article__contents ul > li::before {
					content: '';
					display: block;
					width: 8px;
					height: 8px;
					border-radius: 50%;
					border: solid 1px var(--color--gray);
					position: absolute;
					top: 10px;
					left: 0;
				}
					.article__contents * > ul {
						margin-top: 6px;
					}
						.article__contents * > ul > li {
							padding-left: 10px;
							margin-bottom: 6px;
							position: relative;
						}
						.article__contents * > ul > li::before {
							content: '';
							display: block;
							width: 3px;
							height: 3px;
							border-radius: 50%;
							border: none;
							background-color: var(--color--gray);
							position: absolute;
							top: 13px;
							left: 0;
						}
			.article__contents ol {
				width: 100%;
				height: auto;
				margin-bottom: 15px;
				font-size: 0.875rem;
				font-weight: 500;
				line-height: 2;
				letter-spacing: 0.04em;
				counter-reset: number 0; 
			}
				.article__contents ol > li {
					padding-left: 28px;
					margin-bottom: 6px;
					position: relative;
				}
				.article__contents ol > li::before {
					counter-increment: number 1;
					content: counter(number) ".";
					font-size: 1rem;
					font-weight: 700;
					color: var(--color--gray);
					position: absolute;
					top: -2px;
					left: 0;
				}
					.article__contents * > ol {
						margin-top: 6px;
						counter-reset: number 0; 
					}
						.article__contents * > ol > li {
							padding-left: 24px;
							margin-bottom: 6px;
							position: relative;
						}
						.article__contents * > ol > li::before {
							counter-increment: number 1;
							content: counter(number) ".";
							font-size: 0.9375rem;
							font-weight: 500;
							color: var(--color--gray);
							position: absolute;
							top: 0;
							left: 0;
						}
			/* リンクテキスト */
			.article__contents > a.txt_link {
				padding-left: 15px;
				font-size: 0.875rem;
				font-weight: 500;
				color: var(--color--black);
				position: relative;
			}
				.article__contents > a.txt_link::before {
					content: '';
					display: block;
					width: 7px;
					height: 7px;
					border-top: solid 2px var(--color--gray);
					border-right: solid 2px var(--color--gray);
					transform: rotate(45deg);
					position: absolute;
					bottom: 4px;
					left: 0;
				}
			.article__contents p a {
				color: var(--color--black);
				text-decoration: underline;
			}
			/* テーブル */
			.article__contents .table_wrap {
				width: 100%;
				height: auto;
				margin-bottom: 25px;
				overflow: scroll;
			}
				.article__contents table {
					width: 100%;
					height: auto;
					border: solid 1px #C5C5C5;
					border-collapse: collapse;
					text-align: left;
				}
					.article__contents table th,
					.article__contents table td {
						padding: 8px 15px;
						border: solid 1px #C5C5C5;
					}
					.article__contents table th {
						width: 250px;
						height: auto;
						background-color: var(--color--black);
						font-size: 1rem;
						font-weight: 700;
						line-height: 1.6;
						letter-spacing: 0.03em;
						color: #fff;
					}
					.article__contents table td {
						font-size: 0.875rem;
						font-weight: 500;
						line-height: 2;
						letter-spacing: 0.04em;
						color: var(--color--black);
					}
					.article__contents table tr:first-of-type td {
						background-color: var(--color--yellowgray);
					}
					td.centered {text-align: center;}
					td.align_left {text-align: left;}
					td.align_right {text-align: right;}
			/* ボタン */
			.nomal_btn {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 280px;
				height: 56px;
				margin: 20px auto 0;
				border-radius: 28px;
				background-color: #fff;
				border: solid 1px var(--color--black);
				font-size: 1rem;
				font-weight: 500;
				line-height: 1;
				letter-spacing: 0.05em;
				color: var(--color--black);
				position: relative;
			}
				.nomal_btn::before {
					content: '';
					display: block;
					width: 14px;
					height: 1px;
					background-color: var(--color--black);
					position: absolute;
					top: 50%;
					right: 20px;
					transform: translate(0%,-50%);
				}
				.nomal_btn::after {
					content: '';
					display: block;
					width: 6px;
					height: 6px;
					border-top: solid 1px var(--color--black);
					border-right: solid 1px var(--color--black);
					position: absolute;
					top: 50%;
					right: 20px;
					transform: rotate(45deg) translate(0%,-50%);
					transform-origin: center 0%;
				}
			.emphasis_btn {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 280px;
				height: 56px;
				margin: 20px auto 0;
				border-radius: 28px;
				background-color: var(--color--black);
				border: solid 1px var(--color--black);
				font-size: 1rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0.05em;
				color: #fff;
				position: relative;
			}
				.emphasis_btn::before {
					content: '';
					display: block;
					width: 14px;
					height: 1px;
					background-color: #fff;
					position: absolute;
					top: 50%;
					left: 20px;
					transform: translate(0%,-50%);
				}
				.emphasis_btn::after {
					content: '';
					display: block;
					width: 6px;
					height: 6px;
					border-top: solid 1px #fff;
					border-left: solid 1px #fff;
					position: absolute;
					top: 50%;
					left: 20px;
					transform: rotate(-45deg) translate(0%,-50%);
					transform-origin: center 0%;
				}
			.back_btn {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 280px;
				height: 56px;
				margin: 20px auto 0;
				border-radius: 28px;
				background-color: var(--color--orangegray);
				border: solid 1px var(--color--orangegray);
				font-size: 1rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0.05em;
				color: #fff;
				position: relative;
			}
				.back_btn::before {
					content: '';
					display: block;
					width: 14px;
					height: 1px;
					background-color: #fff;
					position: absolute;
					top: 50%;
					left: 20px;
					transform: translate(0%,-50%);
				}
				.back_btn::after {
					content: '';
					display: block;
					width: 6px;
					height: 6px;
					border-top: solid 1px #fff;
					border-left: solid 1px #fff;
					position: absolute;
					top: 50%;
					left: 20px;
					transform: rotate(-45deg) translate(0%,-50%);
					transform-origin: center 0%;
				}

		.page_bottom_area {
			width: 100%;
			height: auto;
			padding: 50px 0 100px;
		}
}

/* SP ================================================== */
@media all and (max-width:599px){
#article {
	width: 100%;
	height: auto;
}
	.article__inner {
		width: 90%;
		height: auto;
		margin: 0 auto;
	}
		.article__info {
			width: 100%;
			height: auto;
			margin-bottom: 18px;
			display: flex;
			justify-content: flex-start;
			align-items: center;
		}
			.article__date {
				display: block;
				width: auto;
				height: 18px;
				padding: 0 0;
				margin-right: 20px;
				font-size: 0.875rem;
				font-weight: 500;
				line-height: 18px;
				letter-spacing: 0.08em;
				color: var(--color--gray);
			}
			.article__cat {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 100px;
				height: 18px;
				padding: 0;
				margin: 0;
				background-color: var(--color--black);
				font-size: 0.75rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0em;
				color: #fff;
				text-align: center;
			}
		.article__heading {
			width: 100%;
			height: auto;
			padding: 0 0 12px;
			margin-bottom: 20px;
			display: flex;
			justify-content: space-between;
			align-items: end;
			position: relative;
		}
			.article__heading::before,
			.article__heading::after {
				content: '';
				display: block;
				height: 1px;
				position: absolute;
				bottom: 0;
				left: 0;
			}
			.article__heading::before {
				width: 100%;
				background-color: var(--color--lightgray);
				z-index: 0;
			}
			.article__heading::after {
				width: 50px;
				background-color: var(--color--yellow);
				z-index: 1;
			}
			.article__title {
				width: 100%;
				height: auto;
				font-size: 1.625rem;
				font-weight: 700;
				line-height: 1.5;
				letter-spacing: 0.05em;
			}
			.article__share {
				width: auto;
				height: auto;
				display: flex;
				justify-content: flex-end;
				align-items: flex-end;
				column-gap: 16px;
				position: absolute;
				bottom: -33px;
				right: 0;
			}
				.article__share__item {
					width: 24px;
					height: 24px;
				}
				.article__share__item.twitter {
					margin-right: -1px;
				}
					.article__share__item a {
						display: flex;
						justify-content: center;
						align-items: center;
						width: 100%;
						height: 100%;
					}
						.article__share_facebook {
							width: 100%;
							height: auto;
						}
						.article__share_twitter {
							width: 100%;
							height: auto;
						}
						.article__share_line {
							width: 100%;
							height: auto;
							font-size: 0.625rem;
							font-weight: 900;
							text-align: center;
						}
		.article__contents {
			width: 100%;
			height: auto;
			padding: 40px 0;
		}
			/* 画像  */
			.article__contents > img {
				max-width: 100%;
				height: auto;
				margin: 0 auto 13px;
			}
			/* カラム  */
			.article__contents .article__column {
				width: 100%;
				height: auto;
				margin: 0 auto 13px;
				display: flex;
				justify-content: space-between;
				align-items: flex-start;
				column-gap: 8px;
			}
				.article__contents .article__column > * {
					width: 100%;
					height: auto;
				}
					.article__contents .article__column > * > * {
						width: 100%;
						height: auto;
					}
			/* 見出し */
			.article__contents h2 {
				width: 100%;
				height: auto;
				padding: 8px 12px 8px 12px;
				margin: 50px 0 25px;
				background-color: var(--color--yellowgray);
				font-size: 1.25rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h2::before {
					content: '';
					display: block;
					width: 3px;
					height: 40%;
					background-color: var(--color--yellow);
					position: absolute;
					top: 50%;
					left: 0;
					transform: translate(0%,-50%);
				}
			.article__contents h3 {
				width: 100%;
				height: auto;
				padding: 5px 12px 5px 12px;
				margin: 30px 0 25px;
				background-color: #F0F0ED;
				font-size: 1.125rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h3::before {
					content: '';
					display: block;
					width: 3px;
					height: 40%;
					background-color: var(--color--gray);
					position: absolute;
					top: 50%;
					left: 0;
					transform: translate(0%,-50%);
				}
			.article__contents h4 {
				width: 100%;
				height: auto;
				padding: 2px 14px 2px 14px;
				margin: 25px 0 20px;
				font-size: 1rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h4::before {
					content: '';
					display: block;
					width: 3px;
					height: 80%;
					background-color: var(--color--skyblue);
					position: absolute;
					top: 50%;
					left: 0;
					transform: translate(0%,-50%);
				}
			.article__contents h5 {
				width: 100%;
				height: auto;
				padding: 2px 14px 2px 14px;
				margin: 20px 0 15px;
				font-size: 1rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h5::before {
					content: '';
					display: block;
					width: 2px;
					height: 60%;
					background-color: var(--color--gray);
					position: absolute;
					top: 47.5%;
					left: 0;
					transform: translate(0%,-50%);
				}
			.article__contents h6 {
				width: 100%;
				height: auto;
				padding: 2px 16px 2px 16px;
				margin: 18px 0 12px;
				font-size: 1rem;
				font-weight: 700;
				line-height: 1.4;
				letter-spacing: 0.06em;
				position: relative;
			}
				.article__contents h6::before {
					content: '';
					display: block;
					width: 9px;
					height: 1px;
					background-color: var(--color--black);
					position: absolute;
					top: 47.5%;
					left: 0;
					transform: translate(0%,-50%);
				}
			/* テキスト */
			.article__contents p {
				width: 100%;
				height: auto;
				margin-bottom: 25px;
				font-size: 0.875rem;
				font-weight: 500;
				line-height: 2;
				letter-spacing: 0.04em;
			}
			.caption {
				width: 100%;
				height: auto;
				font-size: 0.75rem;
				font-weight: 500;
				line-height: 2;
				letter-spacing: 0.04em;
				text-align: center;
			}
			/* 囲みテキスト */
			.article__contents .wrap_white {
				width: 100%;
				height: auto;
				padding: 30px 25px;
				margin: 0 0 28px;
				background-color: #fff;
			}
			.article__contents .wrap_gray {
				width: 100%;
				height: auto;
				padding: 30px 25px;
				margin: 0 0 28px;
				background-color: var(--color--creamgray);
			}
			.article__contents .wrap_frame {
				width: 100%;
				height: auto;
				padding: 30px 25px;
				margin: 0 0 28px;
				border: solid 1px var(--color--gray);
			}
				.article__contents .wrap_white > p,
				.article__contents .wrap_gray > p,
				.article__contents .wrap_frame > p {
					margin: 0;
				}
			/* リスト */
			.article__contents ul {
				width: 100%;
				height: auto;
				margin-bottom: 15px;
				font-size: 0.875rem;
				font-weight: 500;
				line-height: 2;
				letter-spacing: 0.04em;
			}
				.article__contents ul > li {
					padding-left: 15px;
					margin-bottom: 6px;
					position: relative;
				}
				.article__contents ul > li::before {
					content: '';
					display: block;
					width: 8px;
					height: 8px;
					border-radius: 50%;
					border: solid 1px var(--color--gray);
					position: absolute;
					top: 10px;
					left: 0;
				}
					.article__contents * > ul {
						margin-top: 6px;
					}
						.article__contents * > ul li {
							padding-left: 10px;
							margin-bottom: 6px;
							position: relative;
						}
						.article__contents * > ul li::before {
							content: '';
							display: block;
							width: 3px;
							height: 3px;
							border-radius: 50%;
							border: none;
							background-color: var(--color--gray);
							position: absolute;
							top: 13px;
							left: 0;
						}
			.article__contents ol {
				width: 100%;
				height: auto;
				margin-bottom: 15px;
				font-size: 0.875rem;
				font-weight: 500;
				line-height: 2;
				letter-spacing: 0.04em;
				counter-reset: number 0; 
			}
				.article__contents ol li {
					padding-left: 28px;
					margin-bottom: 6px;
					position: relative;
				}
				.article__contents ol li::before {
					counter-increment: number 1;
					content: counter(number) ".";
					font-size: 1rem;
					font-weight: 700;
					color: var(--color--gray);
					position: absolute;
					top: -2px;
					left: 0;
				}
					.article__contents * > li ol {
						margin-top: 6px;
						counter-reset: number 0; 
					}
						.article__contents * > ol li {
							padding-left: 24px;
							margin-bottom: 6px;
							position: relative;
						}
						.article__contents * > ol li::before {
							counter-increment: number 1;
							content: counter(number) ".";
							font-size: 0.9375rem;
							font-weight: 500;
							color: var(--color--gray);
							position: absolute;
							top: 0;
							left: 0;
						}
			/* リンクテキスト */
			.article__contents > a.txt_link {
				padding-left: 15px;
				font-size: 0.875rem;
				font-weight: 500;
				color: var(--color--black);
				position: relative;
			}
				.article__contents > a.txt_link::before {
					content: '';
					display: block;
					width: 7px;
					height: 7px;
					border-top: solid 2px var(--color--gray);
					border-right: solid 2px var(--color--gray);
					transform: rotate(45deg);
					position: absolute;
					bottom: 4px;
					left: 0;
				}
			.article__contents p a {
				color: var(--color--black);
				text-decoration: underline;
			}
			/* テーブル */
			.article__contents .table_wrap {
				width: 100%;
				height: auto;
				margin-bottom: 35px;
				overflow: scroll;
			}
				.article__contents table {
					width: 550px;
					height: auto;
					border: solid 1px #C5C5C5;
					border-collapse: collapse;
					text-align: left;
				}
					.article__contents table th,
					.article__contents table td {
						padding: 8px 15px;
						border: solid 1px #C5C5C5;
					}
					.article__contents table th {
						width: 33%;
						height: auto;
						background-color: var(--color--black);
						font-size: 1rem;
						font-weight: 700;
						line-height: 1.6;
						letter-spacing: 0.03em;
						color: #fff;
					}
					.article__contents table td {
						flex: 1;
						font-size: 0.875rem;
						font-weight: 500;
						line-height: 2;
						letter-spacing: 0.04em;
						color: var(--color--black);
					}
					.article__contents table tr:first-of-type td {
						background-color: var(--color--yellowgray);
					}
					td.centered {text-align: center;}
					td.align_left {text-align: left;}
					td.align_right {text-align: right;}
			/* ボタン */
			.nomal_btn {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 100%;
				height: 56px;
				margin: 20px auto 0;
				border-radius: 28px;
				background-color: #fff;
				border: solid 1px var(--color--black);
				font-size: 1rem;
				font-weight: 500;
				line-height: 1;
				letter-spacing: 0.05em;
				color: var(--color--black);
				position: relative;
			}
				.nomal_btn::before {
					content: '';
					display: block;
					width: 14px;
					height: 1px;
					background-color: var(--color--black);
					position: absolute;
					top: 50%;
					right: 20px;
					transform: translate(0%,-50%);
				}
				.nomal_btn::after {
					content: '';
					display: block;
					width: 6px;
					height: 6px;
					border-top: solid 1px var(--color--black);
					border-right: solid 1px var(--color--black);
					position: absolute;
					top: 50%;
					right: 20px;
					transform: rotate(45deg) translate(0%,-50%);
					transform-origin: center 0%;
				}
			.emphasis_btn {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 100%;
				height: 56px;
				margin: 20px auto 0;
				border-radius: 28px;
				background-color: var(--color--black);
				border: solid 1px var(--color--black);
				font-size: 1rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0.05em;
				color: #fff;
				position: relative;
			}
				.emphasis_btn::before {
					content: '';
					display: block;
					width: 14px;
					height: 1px;
					background-color: #fff;
					position: absolute;
					top: 50%;
					left: 20px;
					transform: translate(0%,-50%);
				}
				.emphasis_btn::after {
					content: '';
					display: block;
					width: 6px;
					height: 6px;
					border-top: solid 1px #fff;
					border-left: solid 1px #fff;
					position: absolute;
					top: 50%;
					left: 20px;
					transform: rotate(-45deg) translate(0%,-50%);
					transform-origin: center 0%;
				}
			.back_btn {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 100%;
				height: 56px;
				margin: 20px auto 0;
				border-radius: 28px;
				background-color: var(--color--orangegray);
				border: solid 1px var(--color--orangegray);
				font-size: 1rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0.05em;
				color: #fff;
				position: relative;
			}
				.back_btn::before {
					content: '';
					display: block;
					width: 14px;
					height: 1px;
					background-color: #fff;
					position: absolute;
					top: 50%;
					left: 20px;
					transform: translate(0%,-50%);
				}
				.back_btn::after {
					content: '';
					display: block;
					width: 6px;
					height: 6px;
					border-top: solid 1px #fff;
					border-left: solid 1px #fff;
					position: absolute;
					top: 50%;
					left: 20px;
					transform: rotate(-45deg) translate(0%,-50%);
					transform-origin: center 0%;
				}

		.page_bottom_area {
			width: 100%;
			height: auto;
			padding: 50px 0 100px;
		}
}