	/*
	--------------------
	フォント
	--------------------
	*/
	@font-face {
		font-family: 'NotoSansMonoCJKjp';
		src: url('/assets-seoi/font/NotoSansMonoCJKjp-Regular-diet.otf') format('opentype');
	}
	
	/*
	--------------------
	形
	--------------------
	*/
	/*
	----------
	全体
	----------
	*/
	* {
		font-family: monospace;
	}
	
	.table * {
		font-family: 'NotoSansMonoCJKjp', monospace;
	}
	
	.navbar {
		margin-bottom: 0;
	}
	
	.orig-pt15 {
		padding-top: 15px;
	}
	
	.orig-pb15 {
		padding-bottom: 15px;
	}
	
	@media (max-width: 767px) {
		.orig-xs-right {
			text-align: right;
		}
		.orig-xs-float-right {
			float: right;
		}
	}
	
	footer,
	.orig-main,
	.orig-pagelast {
		position: relative;
		z-index: 2;
	}
	
	.orig-main,
	.orig-pagelast {
		background: none;
	}
	
	/*
	----------
	デバッグ
	----------
	*/
	.orig-debug {
		white-space: pre-wrap; /* 改行を保持 */
		background-color: #f0f0f0;
		font-size: 12px;
	}
	
	/*
	----------
	Ads
	----------
	*/
	#div_adshead {
		line-height: 0;
	}
	
	/*
	----------
	アコーディオン
	----------
	*/
	[data-toggle="collapse"]::before {
		content: "－ ";
	}
	
	[data-toggle="collapse"].collapsed::before {
		content: "＋ ";
	}
	
	/*
	----------
	ランナー
	----------
	*/
	.orig-xsdup {
		cursor: pointer;
	}
	
	.orig-xsdup #div_madori {
		z-index: -3;
	}
	
	.orig-xsdup .orig-runall {
		line-height: 0;
	}
	
	.orig-xsdup .orig-runzen,
	.orig-xsdup .orig-runhai,
	.orig-xsdup .orig-danmen {
		position: absolute;
		width: calc(100% - 30px);
	}
	
	.orig-xsdup .orig-runhai {
		opacity: 0.4;
		z-index: -2;
		pointer-events: none;
	}
	
	.orig-xsdup .orig-runzen {
		z-index: 1;
		pointer-events: none;
	}
	
	.orig-xsdup .orig-danmen {
		z-index: 6;
	}
	
	/*
	----------
	チャット
	----------
	*/
	.orig-xsdup #div_chat {
		padding-top: 10px;
		padding-right: 5px;
		padding-left: 5px;
		position: relative;
		pointer-events: none;
		z-index: 10;
	}
	
	.orig-xsdup #div_chat .table {
		margin-bottom: 0;
	}
	
	.orig-xsdup #div_chat .table > thead > tr > td,
	.orig-xsdup #div_chat .table > tbody > tr > td,
	.orig-xsdup #div_chat .table > tfoot > tr > td {
		border-top: 1px solid rgba(221,221,221,0.4);
		word-break: break-all;
	}
	
	.orig-xsdup #div_chat .table > thead > tr:first-child > td,
	.orig-xsdup #div_chat .table > tbody > tr:first-child > td {
		border-top: 0 none;
	}
	
	.orig-xsdup #div_chat td {
		overflow-wrap: break-word;
	}
	
	.orig-xsdup #div_chat td:first-child {
		max-width: 0;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	
	.orig-xsdup #div_chat .orig-hns {
		float: right;
	}
	
	.orig-xsdup #div_chat .orig-hns {
		color: #ccc;
	}
	
	/*
	----------
	プレイヤー
	----------
	*/
	#div_player .form-control-static {
		padding-top: 8px;
		vertical-align: top;
		display: inline-block;
		line-height: 1em;
		min-height: auto;
	}
	
	.orig-group-btn {
		line-height: 0; /* 高さの余白調整（任意） */
	}
	
	.orig-btn-set {
		display: inline-block; /* ラベル+ボタンをひとまとまりで横並び */
		white-space: nowrap;   /* ラベルとボタンが途中で折れないように */
		margin-bottom: 10px;   /* セットごとの縦余白 */
	}
	
	.orig-group-btn label {
		font-weight: normal;
	}
	
	/*
	----------
	断面図
	----------
	*/
	#div_danmen_settings {
		visibility: hidden;
	}
	
	/*
	----------
	めくり
	----------
	*/
	.orig-mekuri-hide {
		display: none;
	}
	
	.orig-mekuri-area {
		background: black;
		width: 100%;
		padding: 60px 0;
		transition: max-height 0.5s ease, padding 0.5s ease;
		overflow: hidden;
		max-height: 1000px;
		box-sizing: border-box;
	}
	.orig-mekuri-area.orig-mekuri-closed {
		max-height: 0;
		padding: 0;
	}
	
	.orig-mekuri-card {
		aspect-ratio: 447 / 624;
		width: 90%;
		max-width: 447px;
		margin: 0 auto;
		perspective: 1000px;
	}
	.orig-mekuri-inner {
		width: 100%;
		height: 100%;
		position: relative;
		transform-style: preserve-3d;
		transition: transform 1.0s;
		cursor: pointer;
	}
	.orig-mekuri-card.orig-mekuri-flipped .orig-mekuri-inner {
		transform: rotateY(180deg);
	}
	
	.orig-mekuri-front,
	.orig-mekuri-back {
		position: absolute;
		width: 100%;
		height: 100%;
		backface-visibility: hidden;
		border-radius: 20px;
		overflow: hidden;
		display: flex;
		flex-direction: column;
		padding: 20px;
		box-sizing: border-box;
		text-align: center;
	}
	.orig-mekuri-front {
		background-color: #fff;
		background-size: cover;
		background-position: center;
		background-image: url('o0.png');
		color: #000;
		transform: rotateY(180deg);
		font-size: clamp(16px, 4.5vw, 28px);
	}
	
	.orig-mekuri-back {
		background-color: #888888;
		background-size: cover;
		background-position: center;
	}
	
	.orig-mekuri-title {
		flex: 1;
		display: flex;
		align-items: center;
		justify-content: center;
		word-break: keep-all;
		white-space: normal;
	}
	
	.orig-mekuri-rarity {
		font-size: 75%;
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		box-sizing: border-box;
		justify-content: flex-end;
	}
	
	.orig-mekuri-tag {
		font-size: inherit;
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		box-sizing: border-box;
		justify-content: flex-start;
	}
	.orig-mekuri-tag span {
		display: inline-block;
		margin: 4px;
		padding: 5px;
		font-weight: normal;
		background-color: #aaa;
		color: #fff;
		border-radius: 4px;
		white-space: nowrap;
	}
	
	/*
	----------
	lg以上
	----------
	*/
	@media (min-width: 1200px) {
	}
	
	/*
	----------
	xs以下
	----------
	*/
	@media (max-width: 767px) {
		/*
		----------
		
		----------
		*/
		.orig-xsdup {
			position: relative;
		}
		
		/*
		----------
		チャット
		----------
		*/
		.orig-xsdup #div_chat {
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
		}
		
		.orig-xsdup #div_chat .table > thead > tr > td,
		.orig-xsdup #div_chat .table > tbody > tr > td,
		.orig-xsdup #div_chat .table > tfoot > tr > td {
			border-top: 0 none;
			text-shadow: -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff;
		}
		
		.orig-xsdup .orig-runhai {
			opacity: 0.15;
		}
		
	}
	
	/*
	----------
	sm以下
	----------
	*/
	@media (max-width: 991px) {
		.orig-xsdup #div_chat .orig-hns {
			display: none;
		}
	}
	
	/*
	--------------------
	色
	--------------------
	*/
	/*
	----------
	全体
	----------
	*/
	body.orig-card {
		background-color: #ffffff;
	}
	
	.orig-bg0 {
	}
	
	.orig-bg1 {
	}
	
	.orig-bg2 {
	}
	
	.orig-bg3 {
		background-color: #343434;
		background-image:  linear-gradient(135deg, #303030 25%, transparent 25%), linear-gradient(225deg, #303030 25%, transparent 25%), linear-gradient(45deg, #303030 25%, transparent 25%), linear-gradient(315deg, #303030 25%, #343434 25%);
		background-position:  40px 0, 40px 0, 0 0, 0 0;
		background-size: 40px 40px;
		background-repeat: repeat;
		color: #ffffff;
	}
	
	.orig-btn-func:focus,
	.orig-btn-func.focus,
	.orig-btn-func:hover,
	.orig-btn-func {
		color: #000;
		background-color: #88eeee;
		border-color: #008888;
	}
	
	.table-bordered {
		border: 1px solid #888866;
	}
	
	.table-bordered > tbody > tr > td,
	.table-bordered > thead > tr > th {
		border: 1px solid #888866;
	}
	
	/*
	----------
	sm以上
	----------
	*/
	@media (min-width: 768px) {
		.orig-talk {
			border-left: 1px solid #cccccc;
			border-right: 1px solid #cccccc;
		}
	}
	
	/*
	----------
	アコーディオン
	----------
	*/
	[data-toggle="collapse"] {
		color: #aaa;
	}
	
	/*
	----------
	ランナー
	----------
	*/
	.orig-xsdup #div_madori {
		background-color: #ffffff;
	}
	
	/*
	----------
	lg以上
	----------
	*/
	@media (min-width: 1200px) {
	}
	
