/*=================================
// 共通
=================================*/
html,
body,
html {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
}

.wrap {
	overflow: hidden;
}

body,
p {
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	text-align: left;
	color: #19212b;
}

button {
	color: black;
}

/* ローダー背景 */
#loader-bg {
	display: block;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	background: #000;
	z-index: 9999;
}

/* ローダー領域 */
#loader {
	display: block;
	position: fixed;
	top: 50%;
	left: 50%;
	width: 200px;
	height: 200px;
	margin-top: -100px;
	margin-left: -100px;
	text-align: center;
	color: #fff;
	z-index: 2;
}

/* ローダーテキスト */
#loader p {
	text-align: center;
	color: #eee;
}

header h1 {
	background: -webkit-gradient(linear, left top, left bottom, from(#4689ef), to(#0066cc));
	background: linear-gradient(#4689ef, #0066cc);
	font-size: 1em;
	font-weight: 700;
	margin: 0;
	padding: 0.5rem 0;
	vertical-align: middle;
	color: #fff;
	white-space: nowrap;
	text-align: center;
	height: 40px;
	text-shadow: 1px 2px 3px #303030;
}

.row {
	margin: 0.2rem 0;
}

a.back-to-top {
	position: fixed;
	z-index: 999;
	right: 0.75rem;
	bottom: 0.75rem;
	display: none;
	width: 2.625rem;
	height: 2.625rem;
	border-radius: 1.875rem;
	background: #00c9db url('../images/up-arrow.png') no-repeat center 47%;
	background-size: 1.125rem 1.125rem;
	text-indent: -9999px;
}

a:hover.back-to-top {
	background-color: #36edfd;
}

.btn-next,
.btn-prev,
.btn-confirm,
.btn-add,
.btn-end,
.btn-toTop,
.btn-cancel,
.btn-reset {
	display: block;
	border: solid #ccc 1px;
	border-radius: 0.3rem;
	line-height: 2.5rem;
	margin: 0 auto;
	width: 100%;
	background: #eee;
}

.btn-cancel {
	margin-bottom: 1rem;
}

button:disabled {
	background-color: #eee;
	color: #999;
}

.blinking {
	-webkit-animation-name: blink;
	animation-name: blink;
	-webkit-animation-duration: 1.2s;
	animation-duration: 1.2s;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}

@-webkit-keyframes blink {
	0% {
		opacity: 1;
	}

	50% {
		opacity: 0;
	}
}

@keyframes blink {
	0% {
		opacity: 1;
	}

	50% {
		opacity: 0;
	}
}

.img-fluid {
	min-width: 50%;
}

.img-bnr {
	width: 100%;
}

/*=================================
// トップページ
=================================*/
.btn-main {
	display: block;
	border: solid #ccc 1px;
	border-radius: 0.3rem;
	line-height: 1;
	margin: 0.3rem auto;
	padding: 0.8rem;
	width: 100%;
	font-size: 1.2rem;
	font-weight: 800;


/** ★2024/09/02 **/
    background-image: -moz-linear-gradient(0deg, #4dabff 0%, #62ddff 100%);
    background-image: -webkit-linear-gradient(0deg, #4dabff 0%, #62ddff 100%);
    background-image: -ms-linear-gradient(0deg, #4dabff 0%, #62ddff 100%);
    box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.1);
    color: #fff;
}
/** ★HPボタンのSVGを白に **/
/** SVGをインラインで書く必要あり **/
#btn-hp{
	fill: #fff;
}


/** ★2024/9/2　4rem>>2.5rem */
.btn-main i {
	font-size: 2.5rem;
	margin-bottom: 0.3rem;
}

.btn-main img {
	margin-bottom: 0.3rem;
}

button#rireki img {
	height: 28%;
	width: 28%;
}

.btn-main:disabled img {
	opacity: 0.4;
}

.flex .btn-top {
	height: 80px;
}


/*=================================
// ステップナビ
=================================*/
nav {
	top: 0;
	left: 0;
	margin: 0;
	padding: 0;
}

nav .row {
	margin: 0 0 1rem 0;
	padding: 0;
	background: #eee;
}

nav .row ul {
	margin: 0;
}

.steps {
	list-style: none;
	margin: 1rem 0;
	padding: 0;
	width: 100%;
	text-align: center;
}

.step-item {
	background-color: #f3f3f3;
	background-image: url(../images/step.png);
	background-size: 100% 100%;
	border: none;
	display: block;
	float: left;
	margin: 0px;
	padding: 0px;
	line-height: 3rem;
	text-align: center;
	width: 16.6%;
}

.step-item-mark {
	background-color: #f3f3f3;
	background-image: url(../images/step.png);
	background-size: 100% 100%;
	border: none;
	display: block;
	float: left;
	margin: 0px;
	padding: 0px;
	line-height: 3rem;
	text-align: center;
	width: 25%;
}

.step-active {
	background-image: url(../images/step-active.png);
	color: #fff;
}

.step-last {
	background-image: url(../images/step-last.png);
}

.step-last-active {
	background-image: url(../images/step-last-active.png);
	color: #fff;
}

.step-before {
	background-image: url(../images/step-before.png);
}

/*=================================
// パンくずリスト
=================================*/
.breadcrumb {
	margin: 0;
	padding: 0;
	list-style: none;
	background: #eee;
}

.breadcrumb li {
	display: inline;
	list-style: none;
}

.breadcrumb li:after {
	content: '>';
	padding: 0 0.2em;
	color: #555;
}

.breadcrumb li:last-child:after {
	content: '';
}

.breadcrumb li a {
	text-decoration: none;
	color: black;
}

.breadcrumb li a:hover {
	text-decoration: underline;
}

/*=================================
// メイン
=================================*/
.main {
	margin-top: 0.5rem;
}

.subtitle h2 {
	font-size: 1.2rem;
	text-align: left;
	padding: 0.25em 0.5em;
	color: #494949;
	background: #fffaf4;
	border-left: solid 5px #7db4e6;
}

h3#raceName {
	font-size: 0.9rem;
	text-align: left;
	padding: 0.25em 0.5em;
	color: #494949;
}

#alert {
	font-weight: 700;
}

/*=================================
// レース選択_日付
=================================*/
.day input {
	display: none;
}

.day label {
	display: block;
	cursor: pointer;
	width: 100%;
	margin: 0;
	padding: 1rem;
	background: #fff;
	border: solid #ccc 1px;
	border-radius: 0.4rem;
	text-align: center;
	line-height: 1;
	-webkit-transition: 0.2s;
	transition: 0.2s;
}

.day input[type='radio']:checked + .switch-on {
	background-color: #31a9ee;
	color: #fff;
}

.day input[type='radio']:checked + .switch-off {
	background-color: #31a9ee;
	color: #fff;
}

/*=================================
// レース選択_場
=================================*/
#joOddsPage .hanrei,
#joMarkPage .hanrei {
	text-align: left;
	font-size: 0.8rem;
}
#joOddsPage .hanrei table,
#joMarkPage .hanrei table {
	width: 100%;
	background: #eef2f5;
}
#joOddsPage .hanrei table td,
#joMarkPage .hanrei table td {
	padding: 0.2rem;
}

.jo {
	position: relative;
	width: 90%;
	margin: 2em auto;
	text-align: center;
}

div.jo {
	position: relative;
}

.jo_select {
	position: relative;
	font-family: inherit;
	background-color: transparent;
	width: 100%;
	padding: 10px 10px 10px 0;
	font-size: 18px;
	border-radius: 0;
	border: none;
	border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}

.jo_select:focus {
	outline: none;
	border-bottom: 1px solid rgba(0, 0, 0, 0);
}

.jo .jo_select {
	-moz-appearance: none;
	appearance: none;
	-webkit-appearance: none;
}

.jo select::-ms-expand {
	display: none;
}

div.jo:after {
	position: absolute;
	top: 18px;
	right: 10px;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid rgba(0, 0, 0, 0.3);
	pointer-events: none;
}

.jo_select_selectlabel {
	color: rgba(0, 0, 0, 0.5);
	font-size: 18px;
	font-weight: normal;
	position: absolute;
	pointer-events: none;
	left: 0;
	top: 10px;
	-webkit-transition: 0.2s ease all;
	transition: 0.2s ease all;
}

.jo_select:focus ~ .jo_select_selectlabel,
.jo_select:valid ~ .jo_select_selectlabel {
	color: #da3c41;
	top: -20px;
	-webkit-transition: 0.2s ease all;
	transition: 0.2s ease all;
	font-size: 14px;
}

.jo_select_selectbar {
	position: relative;
	display: block;
	width: 100%;
}

.jo_select_selectbar:before,
.jo_select_selectbar:after {
	content: '';
	height: 2px;
	width: 0;
	bottom: 1px;
	position: absolute;
	background: #da3c41;
	-webkit-transition: 0.2s ease all;
	transition: 0.2s ease all;
}

.jo_select_selectbar:before {
	left: 50%;
}

.jo_select_selectbar:after {
	right: 50%;
}

.jo_select:focus ~ .jo_select_selectbar:before,
.jo_select:focus ~ .jo_select_selectbar:after {
	width: 50%;
}

.jo_select_highlight {
	position: absolute;
	top: 25%;
	left: 0;
	pointer-events: none;
	opacity: 0.5;
}

/*=================================
// レース選択_レースNo
=================================*/
.race {
	width: 90%;
	margin: 2em auto;
	text-align: center;
}

div.race {
	position: relative;
}

select.race_select {
	position: relative;
	font-family: inherit;
	background-color: #fff;
	width: 100%;
	padding: 10px 10px 10px 0;
	font-size: 18px;
	border-radius: 0;
	border: none;
	border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}

.race_select:focus {
	outline: none;
	border-bottom: 1px solid rgba(0, 0, 0, 0);
}

.race .race_select {
	-moz-appearance: none;
	appearance: none;
	-webkit-appearance: none;
}

.race select::-ms-expand {
	display: none;
}

div.race:after {
	position: absolute;
	top: 18px;
	right: 10px;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid rgba(0, 0, 0, 0.3);
	pointer-events: none;
}

.race_select_selectlabel {
	color: rgba(0, 0, 0, 0.5);
	font-size: 18px;
	font-weight: normal;
	position: absolute;
	pointer-events: none;
	left: 0;
	top: 10px;
	-webkit-transition: 0.2s ease all;
	transition: 0.2s ease all;
}

.race_select:focus ~ .race_select_selectlabel,
.race_select:valid ~ .race_select_selectlabel {
	color: #da3c41;
	top: -20px;
	-webkit-transition: 0.2s ease all;
	transition: 0.2s ease all;
	font-size: 14px;
}

.race_select_selectbar {
	position: relative;
	display: block;
	width: 100%;
}

.race_select_selectbar:before,
.race_select_selectbar:after {
	content: '';
	height: 2px;
	width: 0;
	bottom: 1px;
	position: absolute;
	background: #da3c41;
	-webkit-transition: 0.2s ease all;
	transition: 0.2s ease all;
}

.race_select_selectbar:before {
	left: 50%;
}

.race_select_selectbar:after {
	right: 50%;
}

.race_select:focus ~ .race_select_selectbar:before,
.race_select:focus ~ .race_select_selectbar:after {
	width: 50%;
}

.race_select_highlight {
	position: absolute;
	top: 25%;
	left: 0;
	pointer-events: none;
	opacity: 0.5;
}

/*=================================
// 式別選択
=================================*/
#shikiPage .shiki input {
	display: none;
}

#shikiPage .shiki label {
	display: block;
	cursor: pointer;
	width: 100%;
	margin: 0 0 1rem 0;
	padding: 1rem;
	/* background: #fff; */
	border: solid #ccc 1px;
	border-radius: 0.4rem;
	text-align: center;
	line-height: 1.8rem;
	-webkit-transition: 0.2s;
	transition: 0.2s;
}

#shikiPage .shiki input[type='radio']:checked + .switch-on {
	background-color: #31a9ee;
	color: #fff;
}

#shikiPage .shiki input[type='radio']:checked + .switch-off {
	background-color: #31a9ee;
	color: #fff;
}

#shikiPage .shiki input[type='radio']:disabled + .switch-off {
	color: #cccccc;
}

/*=================================
// 方式選択
=================================*/
#houPage .houshiki input {
	display: none;
}

#houPage .houshiki label {
	display: block;
	cursor: pointer;
	width: 100%;
	margin: 0 0 1rem 0;
	padding: 1rem;
	background: #fff;
	border: solid #ccc 1px;
	border-radius: 0.4rem;
	text-align: center;
	line-height: 1.8rem;
	-webkit-transition: 0.2s;
	transition: 0.2s;
}

#houPage .houshiki input[type='radio']:checked + .switch-on {
	background-color: #31a9ee;
	color: #fff;
}

#houPage .houshiki input[type='radio']:checked + .switch-off {
	background-color: #31a9ee;
	color: #fff;
}

#houPage .houshiki input[type='radio']:disabled + .switch-off {
	background-color: #eee;
	color: #999;
}

/*=================================
// 買目選択
=================================*/
.btn-area {
	padding: 0.2rem;
}

.btn-all {
	display: block;
	border: solid #ccc 1px;
	border-radius: 0.3rem;
	line-height: 4rem;
	margin: 0 auto;
	width: 100%;
	background: #eee;
}

.btn-clear {
	display: block;
	border: solid #ccc 1px;
	border-radius: 0.3rem;
	line-height: 4rem;
	margin: 0 auto;
	width: 100%;
	background: #eee;
}

input[type='checkbox'].chk,
input[type='radio'].jo,
input[type='radio'].race {
	display: none;
}

/* 未選択状態 */
label.label {
	display: block;
	border: solid #ccc 1px;
	border-radius: 0.3rem;
	line-height: 4rem;
	margin: 0;
	text-align: center;
}

/* 非活性状態 */
input[type='checkbox']:disabled + label,
input[type='radio']:disabled + label {
	background: #ccc;
	color: #999;
}

/* 選択状態 */
input[type='checkbox']:checked + label,
input[type='radio']:checked + label,
input[type='checkbox'].selected + label,
input[type='radio'].selected + label {
	background: #31a9ee;
	color: #ffffff;
}

label.jolabe {
	display: block;
	border: solid #ccc 1px;
	border-radius: 0.3rem;
	margin: 0;
	line-height: 1.4rem;
	text-align: center;
	padding: 0.5rem 0;
}

label.normal {
	border: solid #ccc 1px;
}
label.night {
	border: solid rgb(7, 23, 77) 1px;
}
label.summer {
	border: solid rgb(13, 142, 228) 1px;
}
label.morning {
	border: solid rgb(243, 203, 27) 1px;
}

/* グレード */
label.jolabe span {
	font-size: 0.8rem;
	display: block;
	width: 90%;
	line-height: 1.2rem;
	margin: 0 auto;
	text-align: center;
	border-radius: 0.3rem;
}

/* 0:SG */
label.jolabe span.sg {
	background: #ee3f3d;
	color: #fff;
}
/* 1:G1 */
label.jolabe span.g1 {
	background: #f1bc1e;
	color: #fff;
}
/* 2:G2 */
label.jolabe span.g2 {
	background: #77af4b;
	color: #fff;
}
/* 3:G3 */
label.jolabe span.g3 {
	background: #407dcd;
	color: #fff;
}
/* 4:一般 */
label.jolabe span.normal {
	background: #999999;
	color: #fff;
}
/* 5:G3のうち女子レース */
label.jolabe span.girls {
	background: #fa628b;
	color: #fff;
}
/* 6:オール女子 */
label.jolabe span.ladies {
	background: #fa628b;
	color: #fff;
}
/* 7:ルーキーシリーズ */
label.jolabe span.rookie {
	background: #999;
	color: #fff;
}
/* 8:ヴィーナスシリーズ */
label.jolabe span.venus {
	background: #999;
	color: #fff;
}
/* 9:匠シリーズ */
label.jolabe span.takumi {
	background: #999;
	color: #fff;
}
/* 10:プレミアムG1 */
label.jolabe span.premium {
	background: #999;
	color: #fff;
}
/* 11:マスターズリーグ */
label.jolabe span.masters {
	background: #999;
	color: #fff;
}

/* ナイターアイコン */
i.fa-moon {
	color: #ffff00d2;
}
/* モーニングアイコン */
i.fa-sun {
	color: #ff6347;
}
/* 薄暮アイコン */
i.fa-cloud-sun {
	color: #708090;
}
/* 女子戦アイコン */
i.fa-heart {
	color: #fa628b;
}

/* 1艇 */
input#chk1[type='checkbox']:checked + label {
	background: #ffffff;
	/* Old browsers */
	background: -moz-linear-gradient(top, #ffffff 0%, #efefef 51%, #ffffff 100%);
	/* FF3.6-15 */
	background: -webkit-linear-gradient(top, #ffffff 0%, #efefef 51%, #ffffff 100%);
	/* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #ffffff 0%, #efefef 51%, #ffffff 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ffffff', GradientType=0);
	/* IE6-9 */
	border: solid 2px #000000;
	color: #000000;
	text-shadow: 1px 1px 2px #999999;
	font-weight: bold;
}

/* 2艇 */
input#chk2[type='checkbox']:checked + label {
	background: #c6c6c6;
	background: -moz-linear-gradient(top, #c6c6c6 0%, #959595 50%, #6b6b6b 100%);
	/* FF3.6-15 */
	background: -webkit-linear-gradient(top, #c6c6c6 0%, #959595 50%, #6b6b6b 100%);
	/* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #c6c6c6 0%, #959595 50%, #6b6b6b 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#c6c6c6', endColorstr='#6b6b6b', GradientType=0);
	/* IE6-9 */
	border: solid 2px #000000;
	color: #000000;
	text-shadow: 1px 1px 2px #999999;
	font-weight: bold;
}

/* 3艇 */
input#chk3[type='checkbox']:checked + label {
	background: #fb0000;
	/* Old browsers */
	background: -moz-linear-gradient(top, #fb0000 0%, #ca0000 50%, #9f0000 100%);
	/* FF3.6-15 */
	background: -webkit-linear-gradient(top, #fb0000 0%, #ca0000 50%, #9f0000 100%);
	/* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #fb0000 0%, #ca0000 50%, #9f0000 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fb0000', endColorstr='#9f0000', GradientType=0);
	/* IE6-9 */
	border: solid 2px #000000;
	color: #000000;
	text-shadow: 1px 1px 2px #999999;
	font-weight: bold;
}

/* 4艇 */
input#chk4[type='checkbox']:checked + label {
	background: #60c3ff;
	/* Old browsers */
	background: -moz-linear-gradient(top, #60c3ff 0%, #327fff 50%, #073dff 100%);
	/* FF3.6-15 */
	background: -webkit-linear-gradient(top, #60c3ff 0%, #327fff 50%, #073dff 100%);
	/* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #60c3ff 0%, #327fff 50%, #073dff 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#60c3ff', endColorstr='#073dff', GradientType=0);
	/* IE6-9 */
	border: solid 2px #000000;
	color: #000000;
	text-shadow: 1px 1px 2px #999999;
	font-weight: bold;
}

/* 5艇 */
input#chk5[type='checkbox']:checked + label {
	background: #fffb92;
	/* Old browsers */
	background: -moz-linear-gradient(top, #fffb92 0%, #ffc744 50%, #ff9e07 100%);
	/* FF3.6-15 */
	background: -webkit-linear-gradient(top, #fffb92 0%, #ffc744 50%, #ff9e07 100%);
	/* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #fffb92 0%, #ffc744 50%, #ff9e07 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffb92', endColorstr='#ff9e07', GradientType=0);
	/* IE6-9 */
	border: solid 2px #000000;
	color: #000000;
	text-shadow: 1px 1px 2px #999999;
	font-weight: bold;
}

/* 6艇 */
input#chk6[type='checkbox']:checked + label {
	background: #30c633;
	/* Old browsers */
	background: -moz-linear-gradient(top, #30c633 0%, #179533 50%, #026a33 100%);
	/* FF3.6-15 */
	background: -webkit-linear-gradient(top, #30c633 0%, #179533 50%, #026a33 100%);
	/* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #30c633 0%, #179533 50%, #026a33 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#30c633', endColorstr='#026a33', GradientType=0);
	/* IE6-9 */
	border: solid 2px #000000;
	color: #000000;
	text-shadow: 1px 1px 2px #999999;
	font-weight: bold;
}

/* 非活性 */
input[type='checkbox']:disabled + label {
	background-color: #eee;
	color: #999;
}

/*=================================
// オッズ買目
=================================*/
#reload-area {
	position: relative;
	width: 100%;
	text-align: right !important;
	margin-bottom: 0.2rem;
}

.btn-reload {
	display: inline-block;
	border: solid #ccc 1px;
	border-radius: 0.3rem;
	line-height: 1.2rem;
	background: #eee;
	color: #007bff;
	margin: 0;
	font-size: 0.82rem;
}

.btn-reload:active,
.btn-reload:link,
.btn-reload:hover {
	color: #007bff;
}

#reload-time {
	font-size: 0.82rem;
}

.odds .nav-tabs {
	width: 100%;
	margin: 0 auto;
	border: none;
	margin-bottom: 1rem;
}

.odds .nav-tabs .nav-item {
	width: 33.3%;
}

.odds .nav-pills .nav-link {
	border: solid #ccc 1px;
	padding: 0.5rem 0rem;
	text-align: left;
	font-size: 0.82rem;
}

.rt .nav-tabs .nav-item {
	width: 50%;
}

.nav-link span.num {
	display: inline-block;
	width: 1.4rem;
	height: 1.3rem;
	margin: 0rem 0.2rem;
	text-align: center;
	vertical-align: middle;
}

.odds .tab-pane {
	background: #aaa;
	padding: 1rem 0.2rem 0rem 0.2rem;
	width: 100%;
}

.odds .table-odds {
	width: 33.3%;
	float: left;
	border: none;
	background: #ffffff;
	font-size: 0.82rem;
}

.odds .table-odds tr {
	border: none;
	padding: 0;
}

tr.title {
	background: #31a9ee;
	color: #fff;
	font-weight: bold;
}

tr.odd {
	background: #fff;
}

tr.even {
	background: #f2f2f2;
}

.odds .table-odds th {
	border: none;
	text-align: center;
	padding: 0.3rem;
	vertical-align: middle;
	width: 1.2rem;
}

.odds .table-odds td {
	border: none;
	padding: 0.3rem;
	vertical-align: middle;
}

.odds .number-1 {
	background: #f2f2f2;
	color: #2d2d2d;
	font-weight: bold;
}

.odds .number-2 {
	background: #333333;
	color: #fff;
	font-weight: bold;
}

.odds .number-3 {
	background: #f26161;
	color: #fff;
	font-weight: bold;
}

.odds .number-4 {
	background: #498ef5;
	color: #fff;
	font-weight: bold;
}

.odds .number-5 {
	background: #faff4b;
	color: #2d2d2d;
	font-weight: bold;
}

.odds .number-6 {
	background: #2db36d;
	color: #fff;
	font-weight: bold;
}

.odds .nav-tabs {
	width: 100%;
	margin: 0 auto;
	border: none;
	margin-bottom: 0;
}

.odds .player {
	text-align: left;
	font-weight: bold;
}

.odds input[type='checkbox'] {
	display: none;
}

.odds input[type='checkbox'] + label {
	width: 100%;
	display: block;
	border: solid #ccc 1px;
	border-radius: 0.3rem;
	line-height: 2rem;
	margin: 0;
	padding-right: 0.1rem;
	color: #007bff;
	background: #ffffff;
}

.odds input[type='checkbox']:disabled + label {
	color: #cccccc;
}

.odds input[type='checkbox']:checked + label {
	background: #31a9ee;
	color: #ffffff;
	width: 100%;
	line-height: 2rem;
	color: #ffffff;
}

/*=========================================================
// 人気順・高配当順
=========================================================*/
.nin .nav-pills .nav-link {
	text-align: center;
}

.nin .nav-tabs .nav-item {
	width: 25%;
}

.nin .table-nin {
	float: left;
	border: none;
	background: #ffffff;
	font-size: 0.82rem;
}

.nin .table-nin tr {
	border: none;
	padding: 0;
}

.nin .table-nin th {
	border: none;
	text-align: center;
	padding: 0.3rem;
	vertical-align: middle;
	width: 1.2rem;
}

.nin .table-nin td {
	border: none;
	/*padding: 0.3rem;*/
	/* 2024/11/26 */
	padding: 0.1rem;
	vertical-align: middle;
	text-align: center;
	font-size: 0.75rem;
	white-space: nowrap;
}

.nin table.ninki {
	width: 53%;
	float: left;
}

.nin table.kouhai {
	width: 47%;
	float: left;
}

.nin .number-1 {
	display: inline-block;
	width: 1.4rem;
	height: 1.3rem;
	margin: 0rem 0.2rem;
	text-align: center;
	vertical-align: middle;
	background: #f2f2f2;
	color: #2d2d2d;
	font-weight: bold;
	border: solid 1px #333;
}

.nin .number-2 {
	display: inline-block;
	width: 1.4rem;
	height: 1.3rem;
	margin: 0rem 0.2rem;
	text-align: center;
	vertical-align: middle;
	background: #333333;
	color: #fff;
	font-weight: bold;
	border: solid 1px #333;
}

.nin .number-3 {
	display: inline-block;
	width: 1.4rem;
	height: 1.3rem;
	margin: 0rem 0.2rem;
	text-align: center;
	vertical-align: middle;
	background: #f26161;
	color: #fff;
	font-weight: bold;
	border: solid 1px #333;
}

.nin .number-4 {
	display: inline-block;
	width: 1.4rem;
	height: 1.3rem;
	margin: 0rem 0.2rem;
	text-align: center;
	vertical-align: middle;
	background: #498ef5;
	color: #fff;
	font-weight: bold;
	border: solid 1px #333;
}

.nin .number-5 {
	display: inline-block;
	width: 1.4rem;
	height: 1.3rem;
	margin: 0rem 0.2rem;
	text-align: center;
	vertical-align: middle;
	background: #faff4b;
	color: #2d2d2d;
	font-weight: bold;
	border: solid 1px #333;
}

.nin .number-6 {
	display: inline-block;
	width: 1.4rem;
	height: 1.3rem;
	margin: 0rem 0.2rem;
	text-align: center;
	vertical-align: middle;
	background: #2db36d;
	color: #fff;
	font-weight: bold;
	border: solid 1px #333;
}

/*=================================
// 出走表
=================================*/
table#race_info {
	width: 100%;
	border: solid 1px #111;
	background: #fff;
	font-size: 0.7rem;
	margin-bottom: 1rem;
}
table#race_info th {
	border: solid 1px #111;
	padding: 0.3rem;
}
table#race_info td {
	border: solid 1px #111;
	padding: 0.3rem;
}
td.teiban1 {
	background: #f2f2f2;
	color: #333;
}

td.teiban2 {
	background: #333333;
	color: #fff;
}

td.teiban3 {
	background: #f26161;
	color: #fff;
}

td.teiban4 {
	background: #498ef5;
	color: #fff;
}

td.teiban5 {
	background: #faff4b;
	color: #333;
}

td.teiban6 {
	background: #2db36d;
	color: #fff;
}

/*=================================
// 金額入力(オッズ)
=================================*/
input.bulkIn {
	width: 5rem;
	text-align: right;
}

label.bulkS {
	/* color: #ff0000; */
}

input.bulk:checked + label.bulkS {
	/* color: #ff0000; */
	background: #ffffff;
}

input.bulk:disabled + label.bulkS {
	background: #ffffff;
}

table.kaime,
table.bulk {
	margin-bottom: 0;
}

tr.kaime th,
tr.kaime td {
	border: none;
}

tr#kaime1 {
	border-top: 1px solid #dee2e6;
}

tr.kaime th {
	width: 3rem;
}
tr.kaime th.me {
	text-align: left;
	white-space: nowrap;
}
tr.kaime td.me {
	text-align: left;
}

.table td.atention {
	text-align: right;
	color: #dc3545 !important;
	font-size: 0.82rem;
	margin: 0;
	padding: 0;
	border: none;
}

/*=================================
// 金額入力
=================================*/
input.moneyIn {
	width: 5rem;
	text-align: right;
}

#total td {
	font-size: 1.4rem;
	font-weight: bold;
}

.btn-set {
	display: block;
	border: solid #ccc 1px;
	border-radius: 0.3rem;
	line-height: 2.5rem;
	margin: 0 auto;
	width: 100%;
	background: #eee;
}

/* 金額入力の上下トグルを非表示 */
input[type='number']::-webkit-inner-spin-button,
input[type='number']::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

input[type='number'] {
	-moz-appearance: textfield;
}

/* マルチチェックボックス */
input.multi {
	display: none;
}

input.multi:disabled {
	display: none;
}

label.multiS {
	/* color: #ff0000; */
	display: none;
}

input.multi:checked + label.multiS {
	/* color: #ff0000; */
	background: #ffffff;
}

input.multi:disabled + label.multiS {
	background: #ffffff;
}

/*=================================
// 入力内容確認
=================================*/
.table {
	font-size: 0.8rem;
}

.table tr {
	vertical-align: middle;
}

/*iphoneの場合、チェックボックスが見切れてしまうため組数の高さを指定*/
.table tr#kumi {
	vertical-align: middle;
	height: 48px;
}

.table th {
	text-align: left;
	vertical-align: middle;
	white-space: nowrap;
	padding: 0.75rem 0;
}

.table td {
	text-align: right;
	vertical-align: middle;
	padding: 0.75rem 0;
}

.table td i {
	margin-left: 0.5rem;
	font-size: 1.4rem;
	color: #06c;
	white-space: normal;
}

/*=================================
// QR
=================================*/
#output {
	text-align: center;
	margin: 0 auto;
}

#qrsource {
	display: none;
}

/*=================================
// QR作成履歴&投票内容(comp.html)
=================================*/
table#data {
	margin: 0;
}

table#data > tr > td {
	margin: 0;
	padding: 0.5rem 0;
}

table#data table {
	width: 100%;
	border: none;
	margin: 0;
	padding: 0;
}

table#data table tr {
	border: none;
	margin: 0;
	padding: 0;
}

table#data table tr > td {
	border: none;
}

table#data table tr > td.ico {
	text-align: right;
	margin: 0;
	padding: 0;
}

table.table tr.set th {
	width: 1.5rem;
}
table.table tr.set td.me {
	text-align: left;
}

/*=================================
// フッター
=================================*/
footer {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	text-align: center;
	background: #ffffff;
	z-index: 999;
}

footer #alert {
	color: #a30b1a;
	background: #f2a6a8;
	font-size: 1.2rem;
	display: none;
}

#qrPage footer #alert {
	color: #19212b;
	background: #fff;
	font-size: 1.1rem;
}

#qrlistPage footer #alert {
	color: #19212b;
	background: #fff;
	text-align: left;
	font-size: 1rem;
	padding: 0.2em 1em;
	text-indent: -1em;
}

footer #btn-area {
	background: #ffffff;
}

.copyright {
	margin: 0;
	padding-top: 0.2rem;
	padding-bottom: 0.3rem;
/*	background-color: #262431; */
	background: -webkit-gradient(linear, left top, left bottom, from(#4689ef), to(#0066cc));
	background: linear-gradient(#4689ef, #0066cc);
	color: #f1f1f8;
	text-align: center;
	font-size: 0.8rem;
}

/*=================================
// ｷｬｯｼｭﾚｽ購入履歴
=================================*/
.cacshless .table{
	width:100%;
	border:
	solid 1px #14149b;
	font-size: 1.10rem;
	margin-bottom: 0;
}

.cacshless .table tr.title{
	background:#216aaf;
	border:solid 1px #14149b;
}
.cacshless .table tr.title th{
	padding:0.1rem;
	text-align: center;
	color:#FFFFFF;
	vertical-align: middle;
}
.cacshless .table tr td{
	padding:0.2rem;
	border:solid 1px #14149b;
	text-align: center;
	font-weight: bold;
	font-size: 1.40rem;
}

/*=========================================================
// トップページの画像を動かすCSS
// setting.jsのkaisaiJcdによって使用するクラスが変わる
=========================================================*/
/*-------------------------
// 03江戸川(波)
-------------------------*/
.move03 {
	animation: move03 3s infinite ease-in-out 0.8s alternate;
	display: inline-block;
}

@keyframes move03 {
	0% {
		transform: translate(0, 0) rotate(0deg);
	}

	50% {
		transform: translate(0, -10px) rotate(0deg);
	}

	100% {
		transform: translate(0, 0) rotate(0deg);
	}
}

/*-------------------------
// 23唐津(振り子)
-------------------------*/
.move23 {
	transform-origin: bottom;
	-webkit-transform-origin: bottom;
	-moz-transform-origin: bottom;
	animation: move23 ease-in-out 1.8s infinite alternate;
	-webkit-animation: move23 ease-in-out 1.8s infinite alternate;
	-moz-animation: move23 ease-in-out 1.8s infinite alternate;
}

@keyframes move23 {
	0% {
		transform: rotate(10deg);
	}

	100% {
		transform: rotate(-5deg);
	}
}

@-webkit-keyframes move23 {
	0% {
		-webkit-transform: rotate(10deg);
	}

	100% {
		-webkit-transform: rotate(-5deg);
	}
}

@-moz-keyframes move23 {
	0% {
		-moz-transform: rotate(10deg);
	}

	100% {
		-moz-transform: rotate(-5deg);
	}
}

/*-------------------------
// 24大村(振動)
-------------------------*/
.move24 {
	animation: move24 ease-in-out 0.1s infinite alternate;
	-webkit-animation: move24 ease-in-out 0.1s infinite alternate;
	-moz-animation: move24 ease-in-out 0.1s infinite alternate;
}

@keyframes move24 {
	0% {
		transform: translate(0%, 0%);
	}

	100% {
		transform: translate(0%, -3px);
	}
}

@-webkit-keyframes move24 {
	0% {
		-webkit-transform: translate(0%, 0%);
	}

	100% {
		-webkit-transform: translate(0%, -3px);
	}
}

@-moz-keyframes move24 {
	0% {
		-moz-transform: translate(0%, 0%);
	}

	100% {
		-moz-transform: translate(0%, -3px);
	}
}

/*=================================
* 緊急メッセージ(流れる文字)
=================================*/
.emergency {
	margin : 0 auto;
	width : 100%;
	text-align : center;
	overflow : hidden;
	border: dashed 1px #ff0000;
	}
	.emergency p{
	margin:0;
	display : inline-block;
	padding-left: 100%;
	white-space : nowrap;
	line-height : 1em;
	animation : scrollEmergency 20s linear infinite;
	}
	@keyframes scrollEmergency{
	0% { transform: translateX(0)}
	100% { transform: translateX(-100%)}
	}




/*=================================
* PayPayボタン
=================================*/

.btn-toPayPayApp a {
    background: #fff;
    border: 5px solid #f03;
    border-radius: 9999px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto 10px auto;
    /*margin: 10 auto;*/
    max-width: 270px;
    padding: 10px 25px;
    color: #333333;
    line-height: 1.8;
    text-decoration: none;
    transition: 0.3s ease-in-out;
    font-weight: 500;
}
.btn-toPayPayApp a:hover {
    background: #f03;
    color: #FFF;
}
/*
.btn-toPayPayApp a:after {

    content: '';
    width: 5px;
    height: 5px;
    border-top: 5px solid #f03;
    border-right: 5px solid #f03;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
*/

.btn-toPayPayApp a:before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  margin: -3px 5px 0 0;
  background: url("../images/icopaypay.svg") no-repeat;
  background-size: contain;
  vertical-align: middle;
}

.btn-toPayPayApp a:hover:after {
    border-color: #f03;
}

/* PayPayボタンテキスト版 */
/*
.btn-toPayPayApp {
	display: block;
	border: solid #ccc 1px;
	border-radius: 0.3rem;
	line-height: 2.5rem;
	margin: 0 auto;
	width: 100%;
	background: #f03;
	color:#fff;
}
*/