@charset "utf-8";


/*=====================================================
	Home
=====================================================*/
.home_content {
	margin-top: 40px;
}
.home_content:first-of-type {
	margin:0;
}
.content_title {
	margin: 0 auto 10px;
	text-align: center;
}
.content_body {
	width: 600px;
	margin: 0 auto 10px;
}

/* キャンペーン一覧 */
ul.home_campaign_list {
	list-style: none;
	width: 600px;
	margin: 0 auto 20px;
	padding: 0;

	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
ul.home_campaign_list li {
	margin-bottom: 20px;
}
ul.home_campaign_list li.single {
	-ms-flex: 0 1 600px;
	flex: 0 1 600px;
}
ul.home_campaign_list li.half {
	-ms-flex: 0 1 290px;
	flex: 0 1 290px;
}
ul.home_campaign_list li img {
	width: 100%;
	height: auto;
}

/* おすすめプラン */
dl.recommended_plan {
	margin: 0 25px 20px;
	padding: 10px;
	border-radius: 6px;
	background: #d8d8d8;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
dl.recommended_plan dt {
	-ms-flex: 0 1 300px;
	flex: 0 1 300px;
}
dl.recommended_plan dd {
	margin: 0 0 0 10px;
	-ms-flex: 0 1 270px;
	flex: 0 1 270px;
}
dl.recommended_plan table {
	margin: 0;
	width: 100%;
	border-collapse: separate;
	border-spacing: 2px;
}
dl.recommended_plan table th {
	padding: 2px 10px;
	border-radius: 4px;
	text-align: left;
	font-weight: normal;
	background: #333;
	color: #fff;
}
dl.recommended_plan table td {
/*
	font-weight: bold;
	color: #f36;
*/
}
dl.recommended_plan .text {
	margin: 0 0 10px;
	padding: 10px;
	background: #fff;
	font-weight: bold;
	text-align: center;
}
dl.recommended_plan .btn img {
	width: 100%;
	height: auto;
}

/* コンテンツメニュー */
ul.home_contents_list {
	list-style: none;
	width: 600px;
	margin: 0 auto 20px;
	padding: 0;
}
ul.home_contents_list li {
	margin: 0 auto 10px;
	text-align: center;
}
ul.home_contents_list a {
	display: block;
	width: 100%;
	height: 100px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.home_contents_btn01 a {
	background: url(../img/btn_home_contents01.jpg) no-repeat;
}
.home_contents_btn02 a {
	background: url(../img/btn_home_contents02.jpg) no-repeat;
}
.home_contents_btn03 a {
	background: url(../img/btn_home_contents03.jpg) no-repeat;
}
.home_contents_btn04 a {
	background: url(../img/btn_home_contents04.jpg) no-repeat;
}
.home_contents_btn05 a {
	background: url(../img/btn_home_contents05.jpg) no-repeat;
}
.home_contents_btn06 a {
	background: url(../img/btn_home_contents06.jpg) no-repeat;
}
.home_contents_btn07 a {
	background: url(../img/btn_home_contents07.jpg) no-repeat;
}

ul.home_contents_list a:hover {
	background-position: 0 bottom !important;
}


/* home, itemlist
--------------------------------------------------------------------------------- */
#reservation {
	padding-bottom:20px;
	margin-bottom:30px;
	background-color: #ffebee;
}
#reservation #ttlReservation {
	height: 56px;
	background: url(../img/bar_reserve.png) no-repeat bottom;
	text-indent: -9999px;
}
#reservation #ttlCart {
	height: 56px;
	background: url(../img/bar_cart.png) no-repeat bottom;
	text-indent: -9999px;
}
#reservation #cansel {
	width: 600px;
	margin: 5px auto;
	padding: 3px 0px;
	background: #06c;
	color: #FFF;
	text-align: center;
}
#reservation p {
	margin: 0;
	padding: 0 20px;
}
#reservation .tableItem em {
	font-size: 1.286em;
	font-weight: bold;
	color: #09f;
}
#reservation .select {
	border:0px none;
}
#reservation .select a {
	display: block;
	width: 610px;
	height: 80px;
	background: url(../img/btn_cart.png) no-repeat;
	text-indent: 110%;
	white-space: nowrap;
	overflow: hidden;
}
#reservation .select a:hover {
	background-position: 0 -80px;
}
#reserveConfirm .tableItem em {
	font-size:116%;
	font-weight:bold;
}

/* button */
#Itemlist a {
	display: block;
	width: 610px;
	height: 80px;
	margin: 5px auto !important;
	background: url(../img/btn_itemList.gif) no-repeat;
	text-indent: 110%;
	white-space: nowrap;
	overflow: hidden;
}
#Itemlist a:hover {
	background-position: 0px -80px;
}

#flow02 {
	background:url(../img/flow02.png) no-repeat;
	height:140px;
}
#flow03 {
	background:url(../img/flow03.png) no-repeat;
	height:140px;
}
#flow04 {
	background:url(../img/flow04.png) no-repeat;
	height:140px;
}


/* settle
--------------------------------------------------------------------------------- */
#settle {
	padding-bottom: 20px;
	margin-bottom: 30px;
	background: #ffebee url(../img/bar_settle.png) no-repeat;
}
#settle h3 {
	height: 56px;
	text-indent: -9999px;
}
#settle p {
	margin: 5px 0;
	padding: 0 20px;
}
#settle .tableItem em {
	font-size: 1.286em;
	font-weight: bold;
}
#settle table.bank td,
#settle table.bank th {
	font-weight: normal;
	background-color: #ffc;
	background-image: none;
	color: #000;
}
#settle dl {
	width: 600px;
	margin: 0 auto 10px;
}
#settle dl dt {
	margin: 0 0 5px;
	padding: .2em 10px;
	font-size: 1.286em;
	font-weight: bold;
	background: #ff8a80;
	color: #fff;
}
#settle dl dd {
	margin: 0;
}
#settle .em {
	margin:1em 0 0;
	text-align:center;
}
#settle .em p {
	margin: 0 !important;
}
#settle .em #bRakuten a {
	display: block;
	width: 610px;
	height: 78px;
	margin: 1em auto 0 !important;
	background: url(../img/btn_bank_rakuten.png) no-repeat;
	text-indent: 110%;
	white-space: nowrap;
	overflow: hidden;
}
#settle .em #bRakuten a:hover {
	background-position: 0px -78px;
}
#settle .em #bJNB a {
	display:block;
	width:180px;
	height:0px;
	padding-top:70px;
	overflow:hidden;
	margin:1 em auto 0 !important;
	background: url(../img/btn_bank_jnb.png) no-repeat;
}
#settle .em #bJNB a:hover {
	background-position: 0px -70px;
}
#settle .return {
	text-align:right;
}
#settle #settleComplete {
	width:540px;
	margin:0 auto;
	text-align:center;
}
#settle #settleComplete em {
	font-size:124%;
	font-weight:bold;
	color:#f00;
}

form input#btn_credit_telecom,
form input#btn_credit_telecom_quick,
form input#btn_net_bank,
form input#btn_cvd,
form input#btn_cvd_chk, 
form input#btn_quickcharge {
	display: block;
	width: 610px;
	margin: 5px auto !important;
	border: none;
	text-indent: 110%;
	white-space: nowrap;
	overflow: hidden;
	cursor: pointer;
}
form input#btn_credit_telecom {
	height: 80px;
	background: url(../img/btn_credit_telecom.gif) no-repeat left top;
}
form input#btn_credit_telecom_quick {
	height: 80px;
	background: url(../img/btn_credit_telecom_quick.gif) no-repeat left top;
}
form input#btn_net_bank {
	height: 80px;
	background: url(../img/btn_net_bank.gif) no-repeat left top;
}
form input#btn_cvd {
	height: 70px;
	background: url(../img/btn_cvd.png) no-repeat left top;
}
form input#btn_cvd_chk {
	height: 70px;
	background: url(../img/btn_cvd_chk.png) no-repeat left top;
}
form input#btn_quickcharge {
	height: 100px;
	background: url(../img/btn_apply.gif) no-repeat left top;
}

/* ------------ Mobileに送信 ------------ */
#settle .link {
	margin:10px 28px;
	padding:15px;
	background:#FFF;
	min-height:50px;
}
#settle .link form {
	text-align:center;
	margin:0 auto;
}
#settle .link p {
	margin-bottom:0;
	padding:0;
}
#settle .linkComplete {
	font-size:124%;
	font-weight:bold;
	text-align:center;
	color:#f00;
}

/* ------------ 決済選択 ------------ */
/*
#payBox {
	margin: 30px 0;
}
#payBox h3 {
	height: 50px;
	text-indent: -9999px;
	background: url(../img/bar_settle_select.png) no-repeat;
}
#pay {
	padding: 20px 0;
	background: #ffebee;
}
#pay > ul {
	list-style: none;
	width: 610px;
	margin: 0 auto 15px;
	padding: 0;
}
#pay > ul > li {
	margin: 0;
}
#pay li.txt {
	width:600px;
	margin: 10px auto;
}
#pay li.txt p {
	margin: 0;
}
#pay li.txt em {
	font-weight: normal;
	color: #f00;
}
#pay ul#bank .txt {
	padding-bottom:60px;
	background:url(../img/settle_bank.png) no-repeat left bottom;
}
#pay ul#banknet .txt {
	padding-bottom:60px;
	background:url(../img/settle_banknet.png) no-repeat left bottom;
}
#pay ul#credit .txt {
	padding-bottom:60px;
	background:url(../img/settle_credit.png) no-repeat left bottom;
}
#pay ul#bitcash .txt {
	padding-bottom:60px;
	background:url(../img/settle_bitcash.png) no-repeat left bottom;
}
#pay ul#cvd .txt {
	padding-bottom:60px;
	background:url(../img/settle_cvd.png) no-repeat left bottom;
}
#pay h4 {
	margin: 0 auto 5px;
	padding: 5px 10px;
	font-weight: bold;
	text-align: left;
	background: #ff8a80 !important;
	color: #fff;
}
#pay .h24 {
	background:url(../img/settle_24h.gif) no-repeat 95% center;
}
#pay li.btn img {
	display:none;
}
#pay li.btn a {
	display: block;
	width: 610px;
	height: 70px;
	margin: 0 !important;
	background: url(../img/btn_settle.png) no-repeat;
	text-indent: 110%;
	white-space: nowrap;
	overflow: hidden;
}
ul#bank .btn a {
	background-position: 0 0;
}
ul#banknet .btn a {
	background-position: 0 -70px;
}
ul#credit .btn a {
	background-position: 0 -140px;
}
ul#bitcash .btn a {
	background-position: 0 -210px;
}
ul#cvd .btn a {
	background-position: 0 -280px;
}
ul#bank .btn a:hover {
	background-position: 0 -350px;
}
ul#banknet .btn a:hover {
	background-position: 0 -420px;
}
ul#credit .btn a:hover {
	background-position: 0 -490px;
}
ul#bitcash .btn a:hover {
	background-position: 0 -560px;
}
ul#cvd .btn a:hover {
	background-position: 0 -630px;
}

#otherCampaign {
	margin:0 0 20px;
	text-align:right;
}
*/

/* ------------ 各種決済の注意事項 ------------ */
.notice {
	width:600px;
	margin:0 auto 50px;
}
.notice h3 {
	height:45px;
	text-indent:-9999px;
	background:url(../img/txt_notice.png) no-repeat;
}
.notice ul {
	padding-left:20px;
	list-style-type:disc;
}
.notice dl {
	margin-top:15px;
}
.notice dl dt {
	margin-bottom:2px;
	padding-left:12px;
	font-size:109%;
	font-weight:bold;
	background:url(../img/icon_arrow_r1.gif) no-repeat 0% 50%;
	color:#000;
}
.notice dl dd {
	padding-left:20px;
}
/* ------------ 各種決済の説明 ------------ */
#detail {
	width:600px;
	margin:0 auto 30px;
	font-size:93%;
}
#detail h5 {
	margin-bottom:5px;
	font-size:109%;
	font-weight:bold;
	color:#000;
}
#detail #detailAbout {
	margin-bottom:15px;
}
#detail #detailHowto ol {
	padding-left:30px;
	list-style-type:decimal;
}
#detail #detailHowto ol li {
	margin-top:3px;
	padding-top:3px;
	border-top:1px dotted #ccc;
}
#detail #detailHowto ol li.first {
	margin-top:0px;
	padding-top:0px;
	border-top:0px none;
}
#detail #ico-bitcash {
	padding-left:90px;
	min-height:90px;
	background:url(../img/what_bitcash.png) no-repeat;
}
#detail #ico-ccheck {
	padding-left:110px;
	min-height:40px;
	background:url(../img/what_ccheck.png) no-repeat 0% 50%;
}
#detail #ico-cvc {
	padding-left:120px;
	background:url(../img/what_cvc.png) no-repeat;
}
#detail #ico-edy {
	padding-left:60px;
	min-height:50px;
	background:url(../img/what_edy.png) no-repeat;
}



/*=====================================================
	ログイン後コンテンツ
=====================================================*/
.info_contents img {
	width: 100%;
	height: auto;
	line-height: 1.0;
}
.info_title {
	margin-bottom: 30px;
}
.info_block_title {
	padding: .5em;
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
	font-weight: bold;
	background: #dcdcdc;
	text-align: center;
}
.info_block {
	padding: 20px;
	border: 4px solid #dcdcdc;
}
.no_info dl dt {
	margin-bottom: 10px;
	font-size: 1.286em;
	font-weight: bold;
	color: #f00;
	text-align: center;
}
.info_block dl dd,
.no_info dl dd {
	margin: 0;
}


/* ご購入済みの商品【情報公開】 */
.reserved {
	margin-bottom: 20px;
	padding: 20px;
	border-radius: 4px;
	background: #D8D8D8;
	text-align: center;
}
.reserved:last-of-type {
	margin-bottom: 0;
}
.reserved table {
	border-collapse: separate;
	border-spacing: 1px;
	width: 100%;
	margin-bottom: 10px;
	background: #000;
}
.reserved table th {
	width: 30%;
	padding: 5px;
	font-weight: normal;
	background: #000;
	color: #fff;
}
.reserved table td {
	padding: 5px;
	background: #fff;
	color: #000;
}
.reserved .btn {
	width: 50%;
	margin: 0 auto;
}

/* 情報公開 レース予想1 */
.race_yosou1 {
	margin-bottom: 20px;
	padding: 20px;
	border-radius: 4px;
	background: #D8D8D8;
	text-align: center;
}
.race_yosou1:last-of-type {
	margin-bottom: 0;
}
.race_yosou1 table {
	border-collapse: separate;
	border-spacing: 1px;
	width: 100%;
	margin-bottom: 10px;
}
.race_yosou1 table th {
	width: 30%;
	padding: 5px;
	font-weight: normal;
	background: #999;
	color: #fff;
}
.race_yosou1 table td {
	padding: 5px;
	background: #fff;
	color: #000;
}
.race_yosou1 .btn {
	width: 50%;
	margin: 0 auto;
}

/* 無料・チケット情報公開 */
#info_list .freeinfo {
	margin-bottom: 60px;
}
.info_list .info {
	margin-bottom: 20px;
	padding: 20px;
	border-radius: 4px;
	background: #D8D8D8;
}
.info_list .info_keiba {
	background: #93DB4B !important;
}
.info_list .info table {
	border-collapse: separate;
	border-spacing: 1px;
	width: 100%;
	margin-bottom: 10px;
}
.info_list .info th {
	padding: 5px;
	background: #333;
	color: #fff;
	text-align: center;
}
.info_list .info td {
	padding: 5px;
	background: #fff;
	text-align: center;
}
.ticketinfo .race_ticket {
	font-weight: bold;
	color: #f00;
}
.info_list .info .btn {
	width: 50%;
	margin: 0 auto;
}

/* 本日のオススメ情報 */
.recommended {
	margin-bottom: 20px;
	padding: 20px;
	border-radius: 4px;
	background: #d8d8d8;
	text-align: center;
}
.recom_keiba {
	background: #93DB4B !important;
}
.recommended .plan_title {
	padding: 6px;
	font-weight: bold;
	background: #ff6;
	color: #000;
}
.recommended table {
	border-collapse: collapse;
	border-spacing: 0;
	border-top: 1px solid #d8d8d8;
	width: 100%;
}
.recommended table th {
	width: 30%;
	padding: 5px;
	border-bottom: 1px solid #d8d8d8;
	font-weight: normal;
	background: #999;
	color: #fff;
}
.recommended table td {
	padding: 5px;
	border-bottom: 1px solid #d8d8d8;
	background: #fff;
}
.recommended .plan_sum {
	padding: 5px;
	font-weight: bold;
	background: #fff;
	color: #000;
}
.recommended .btn_block {
	margin: 10px 15px 0;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.recommended .btn_block .btn {
	-ms-flex: 0 1 280px;
	flex: 0 1 280px;
}


header.campaign {
	text-align:center;
}

/* メールログ */
h2.title {
	margin: 0 0 15px;
	padding: .5em 1.5em;
	border-left: 8px solid #999;
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
	font-size: 1.5em;
	font-weight: 500;
	background-color: #333;
	color: #fff;
}
.mail table th {
	padding: 5px;
	border-bottom: 1px solid #d8d8d8;
	font-weight: normal;
	background: #999;
	color: #fff;
}
.mail table th:nth-child(1), .mail table th:nth-child(2) {
	width: 50px;
}
.mail table th:nth-child(3) {
	width: 170px;
}
.mail table td {
	padding: 5px;
	border-bottom: 1px solid #d8d8d8;
	background: #fff;
	text-align: center;
	vertical-align: middle;
}
.mail table td:nth-child(3) {
	width: 50px;
	font-size: 0.9em;
}
.mail table td:nth-child(4) {
	text-align: left;
}
.mail .read {
	color: #0000ff;
}
.mail .unread {
	color: #ff0000;
}

.mail input[type='submit']{
	font-size: 14px;
	display: inline-block;
	padding: 15px 100px;
	background: linear-gradient(to bottom, #ff737c 0%, #999 100%);
	color: #fff;
	text-decoration: none;
	border: none;
	cursor: pointer;
}
.mail input[type='submit']:hover{
	background: #ff474c;
}

.mail .mail_paging {
}
.mail .mail_paging:after, .mail .mail_paging:before {
    content: "";
    clear: both;
    display: block;
}
.mail .mail_paging .left {
	float:left;
}
.mail .mail_paging .right {
	float:right;
}

.mail #detail p.line, .mail #detail div.line {
	padding: 10px;
	border-bottom: 2px solid #d8d8d8;
}

/* SNSログイン・登録
------------------------------------------------*/
/* 登録フォーム */
.sns_entry{
    width:50%;
    margin: 8px auto 100px auto;
    text-align: center;
    border-radius: 8px;
    padding: 10px 15px;
}
.sns_entry h1{
    background: #00b900;
    color: #ffffff;
    width:84%;
    display: inline-block;
    border-radius: 6px;
    padding: 0.2em 0;
    margin-bottom: 0.5em;
    font-size: 1em;
}
.sns_entry p{
    font-size: 0.8em;
    color: #333333;
}
.sns_entry ul{
    width: 95%;
    list-style: none;
    margin: 1em auto 0 auto;
    overflow: hidden;
    padding-left: 0;
}
.sns_entry ul li{
    width:calc(100% / 3);
    display: inline-block;
    float: left;
}
.sns_entry ul li img{
    width:88%;
    margin: 0 auto;
    display: inline-block;
}

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝



/* SNSログイン・登録
------------------------------------------------*/
/* ログインフォーム */
.sns_login {
    width:85%;
    margin: 15px auto 5px auto;
    text-align: center;
    border-radius: 8px;
    padding: 10px 15px;
}
#main2 .sns_login h1{
    background: #00b900;
    color: #ffffff;
    width: 84%;
    display: inline-block;
    border-radius: 6px;
    border-left: none;
    padding: 0.2em 0;
    margin-bottom: 0.5em;
    font-size: 1em;
}
.sns_login p{
    font-size: 0.8em;
    color: #333333;
}
.sns_login p a{
    text-decoration: underline;
}
.sns_login ul{
    width: 95%;
    list-style: none;
    margin: 1em auto 0 auto;
    overflow: hidden;
    padding-left: 0;
}
.sns_login ul li{
    width:calc(100% / 3);
    display: inline-block;
    float: left;
}
.sns_login ul img{
    width:88%;
    margin: 0 auto;
    display: inline-block;
}

/* 点滅 */
.blinking{
	-webkit-animation:blink 0.5s ease-in-out infinite alternate;
    -moz-animation:blink 0.5s ease-in-out infinite alternate;
    animation:blink 0.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {color:#ff0000;font-weight:bold;}
    100% {color:#000000;font-weight:bold;}
}
@-moz-keyframes blink{
    0% {color:#ff0000;font-weight:bold;}
    100% {color:#000000;font-weight:bold;}
}
@keyframes blink{
    0% {color:#ff0000;font-weight:bold;}
    100% {color:#000000;font-weight:bold;}
}


.btn-mail,
a.btn-mail,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

.btn--orange,
a.btn--orange {
  color: #fff !important;
  background-color: #eb6100;
}

.btn--orange:hover,
a.btn--orange:hover {
}


.markerUnder {
  background: linear-gradient(transparent 60%, #d5ff00 0%);
  display: inline;
  padding: 0 1px 0px !important;
}


.blog_headline {
	font-size: 116%;
	background-color: #000;
	color: #FFF;
	padding: 5px 10px;
	margin: 12px 0px !important;
	font-weight: bold;
	border-left: 12px solid #f90;
}


