@charset "UTF-8";
/* CSS Document */


/*-----------
top
-----------*/

#main_visual_wrapper{
  background: #e60012 url("../img/main_visual_bg_202102.jpg") center top no-repeat;
}

#main_visual{
  min-width: 1000px;
  max-width: 1100px;
  margin: 0 auto;
}

#main_visual img{
  width: 100%;
}



nav{
  position: relative;
}

nav .main_schedule{
  position: absolute;
  top: -20px;
  left: 50%;
  margin-left: -295px;
}

nav .main_schedule img{
  width: 590px;
}

nav ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding-top: 20px;
}

nav ul li:first-child{
  border-left: 2px solid #e50113;
  border-right: 2px solid #e50113;
}

nav ul li{
  padding: 3px 31px;
  margin: 12px 0;
  border-right: 2px solid #e50113;
}


nav ul li img{
height: 29px;
}


/*----race----*/

#race{
  background: #e50113;
  padding: 45px 0 80px;
}

#race_today{
  width: 1000px;
  margin: 0 auto;
}

#race_today > ul{
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 50px;
  background: url("../img/race_logo.png") no-repeat right bottom;
  background-size: 350px auto;
}

#race_today > ul > li{
  width: 490px;
  border: 2px solid #000;
  box-sizing: border-box;
  margin: 2% 20px 0 0;
  border-radius: 8px;
  position: relative;
  overflow: hidden;
}

#race_today > ul > li:nth-child(even){
  margin: 2% 0 0;
}

#race .gold{
  background: url("../img/race_next_gold_bg.png") no-repeat left top;
  background-size: 100% auto;
}

#race .silver{
  background: url("../img/race_next_silver_bg.png") no-repeat left top;
  background-size: 100% auto;
}

.horse{
  position: absolute;
  bottom: 0;
  left: 60%;
  width: 40.1%;
  height: 109%;
  overflow: hidden;
  z-index: 1000;
}

.horse img{
  position: absolute;
  width: 173%;
  bottom: 0;
  left: 0;
}

.horse.name_l{
  left: 66.5%;
  width: 33.6%;
}

.horse.name_l img{
  width: 210%;
}


#race_next .horse.name_l{
  left: 60%;
  width: 40.1%;
}

#race_next .horse.name_l img{
  width: 165%;
}

.race_name{
  width: 100%;
  padding: 0;
  text-align: left;
}

#race_today .race_name img{
  width: 76.02%;
  margin-left: -5px;
}

.flip .horse{
  position: absolute;
  bottom: 0;
  left: 0;
  width: 44.1%;
  height: 109%;
  overflow: hidden;
  z-index: 1000;
}

.flip .horse img{
  position: absolute;
  width: 173%;
  bottom: 0;
  left: -74%;
}

.flip .race_name{
  padding: 0 0 0 20%;
}

#race .flip  .race_head .racetrack{
  padding: 0 1.46% 0 26.5%;
}

#race .race_head{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  padding: 1% 0 1.5% 1%;
  line-height:0;
  background: #000;
  align-items: flex-start;
  box-sizing: border-box;
}

#race .race_head .racetrack{
  position: relative;
  z-index: 9999 !important;
  width: 20.42%;
  padding: 0 1.46% 0 0;
}

#race .race_head .btn_buy{
  position: relative;
  z-index: 9999 !important;
  display: block;
  width: 50.63%;
}

#race .race_head .btn_buy img{
  width: 100%;
}

#race .race_link_live img{
  width: 100%;
  display: block;
}

#race .race_link{
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  padding: 0 1% 1.3%;
  z-index: 9999 !important;
  position: relative;
}

#race .race_link li{
  width: 25%;
  padding: 0 1px;
  box-sizing: border-box;
  position: relative;
}

#race .race_link li.race_link_more{
  width: 100%;
}

#race .race_link li a{
  display: block;
  width: 100%;
  background: #e50113;
  padding: 5px 4px 6px;
  border-radius: 5px;
  border: 2px solid #e50113;
  box-sizing: border-box;
}

#race #race_next .race_link li a{
  padding: 6px 7px;
}

#race .race_link li a img{
  width: 100%;
  display: block;
  margin: 0 auto;
}

#race .race_link li.race_link_more a{
  background: #e50113 url("../img/icon_blank.png") right center no-repeat;
  background-size: 20px auto;
  border: none;
}

#race .race_link li.race_link_more a img{
  width: 26%;
  display: block;
}

#race .race_link_live{
  position: absolute;
  bottom: 108%;
  right: 0;
  display: block;
  width: 100%;
  background: #fff  !important;
  padding: 5px 4px 6px;
  border-radius: 5px;
  border: 2px solid #e50113;
  box-sizing: border-box;
}

#race .race_link_live.bottom_0{
  bottom: 0;
}

#race_next{
  width: 1000px;
  margin: 0 auto;
  padding: 0 0 14px;
}

.slider_next{
  padding: 0 2px;
  background: url("../img/race_next_bg.png") no-repeat center center;
}

.slider_no{
  display: flex;
  flex-wrap: wrap;
}

#race_next > ul.slider_no{
  background: url("../img/race_logo.png") no-repeat 650px 60px;
  background-size: 320px auto;
}


#race_next ul li.gold,
#race_next ul li.silver{
  width: 490px !important;
  margin: 20px 10px;
  border: 2px solid #000;
  border-radius: 8px;
  box-sizing: border-box;
  position: relative;
}

#race_next ul.slider_no > li{
  margin: 20px 20px 20px 0 !important;
}

#race_next ul.slider_no > li:nth-child(2){
  margin: 20px 0 20px 0 !important;
}

#race_next .race_name img{
  width: 60%;
}

#race_next .horse{
  left: 58%;
  width: 42.1%;
}



#race_next .flip .horse{
  position: absolute;
  bottom: 0;
  left:  0;
  width: 44.1%;
  height: 109%;
  overflow: hidden;
  z-index: 1000;
}


#race_next .horse img{
  width: 140%;
}

.slick-arrow{
  width: 45px;
  height: 45px;
  position: absolute;
  top: 50%;
  z-index: 9999;
  text-indent: -9999px;
  overflow: hidden;
}

.slick-prev{
  background: url("../common/js/slick/slick_prev.png") no-repeat left top;
  background-size: 45px auto;
  left: -22px;
  margin-top: -22px;
}

.slick-next{
  background: url("../common/js/slick/slick_next.png") no-repeat left top;
  background-size: 45px auto;
  right: -22px;
  margin-top: -22px;
}

.race_wrapper{
  width: 1000px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}

#race_round{
  width: 730px;
}

#race_round h2{
  width: 742px;
  margin-left: -12px;
}

#race_round h2 img{
  width: 100%;
}

#race_round .race_round_box{
  width: 710px;
  box-sizing: border-box;
  border: 2px solid #000;
  border-radius: 8px;
  background: #fff;
  margin-top: -83px;
  padding: 81px 0 40px;
}

#tab_menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  padding: 0 0 0 1px;
  box-sizing: border-box;
}
#tab_menu li{
  width: 148px;
  height: 41px;
  margin-left: -9px;
  cursor: pointer;
}
#tab_menu li img{
  transition: 0.3s ease-in-out;
}

#tab_menu li:hover img {
  opacity: 0.0;
  transition: 0.3s ease-in-out;
}

#tab_menu li:first-child {
  margin-left: 0;
}
#tab_menu li.selected img {
  display: none;
}
#tab_menu li.race_1223 {
  background: url("../img/race_round_tab_1223_on_pc.png") no-repeat left top;
  background-size: 148px auto;
}
#tab_menu li.race_1224 {
  background: url("../img/race_round_tab_1224_on_pc.png") no-repeat left top;
  background-size: 148px auto;
}
#tab_menu li.race_1225 {
  background: url("../img/race_round_tab_1225_on_pc.png") no-repeat left top;
  background-size: 148px auto;
}
#tab_menu li.race_1226 {
  background: url("../img/race_round_tab_1226_on_pc.png") no-repeat left top;
  background-size: 148px auto;
}
#tab_menu li.race_1227 {
  background: url("../img/race_round_tab_1227_on_pc.png") no-repeat left top;
  background-size: 148px auto;
}
#tab_menu li.race_1228 {
  background: url("../img/race_round_tab_1228_on_pc.png") no-repeat left top;
  background-size: 148px auto;
}
#tab_menu li.race_1229 {
  background: url("../img/race_round_tab_1229_on_pc.png") no-repeat left top;
  background-size: 148px auto;
}
#tab_menu li.race_1230 {
  background: url("../img/race_round_tab_1230_on_pc.png") no-repeat left top;
  background-size: 148px auto;
}
#tab_menu li.race_1231{
  background: url("../img/race_round_tab_1231_on_pc.png") no-repeat left top;
  background-size: 148px auto;
}
#tab_menu li.race_0101 {
  background: url("../img/race_round_tab_0101_on_pc.png") no-repeat left top;
  background-size: 148px auto;
}
#tab_menu li.race_0102 {
  background: url("../img/race_round_tab_0102_on_pc.png") no-repeat left top;
  background-size: 148px auto;
}
#tab_menu li.race_0103 {
  background: url("../img/race_round_tab_0103_on_pc.png") no-repeat left top;
  background-size: 148px auto;
}
#tab_menu li.race_0104 {
  background: url("../img/race_round_tab_0104_on_pc.png") no-repeat left top;
  background-size: 148px auto;
}
#tab_menu li.race_0105 {
  background: url("../img/race_round_tab_0105_on_pc.png") no-repeat left top;
  background-size: 148px auto;
}
#tab_menu li img {
  width: 148px;
}

.tab_panel{
  padding: 0 10px;
}

.tab_panel > ul li{
  margin: 10px 0 0;
}

.tab_panel > ul li img{
  width: 100%;
}

.race_round_open{
margin: 40px 0;
}

.race_round_open h3{
  width: 113px;
  height: 21px;
  margin: 0 auto 20px;
}

.race_round_open h3 img{
  display: block;
  width: 100%;
}

.race_round_open ul{
  background: #eeeeee;
  padding: 20px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.race_round_open a ul{
  transition: 0.3s ease-in-out;
}

.race_round_open a:hover ul{
  background: #fce5e7;
}

.race_round_open ul li{
  width: 98px;
  line-height: 1;
  border: 1px solid #000;
  background: #fff;
  margin: 0 5px;
  text-align: center;
  padding: 5px 0;
  font-weight: bold;
}

.race_round_open a ul li{
  color: #000;
  transition: 0.3s ease-in-out;
}

.race_round_open a:hover ul li{
  color: #e50113;
  border: 1px solid #e50113;
}

.race_round_btn{
  display: block;
  width: 348px;
  margin: 0 auto;
}

.race_round_btn img{
  display: block;
  width: 100%;
}


#race_news{
  width: 800px;
  margin: 0 auto;
}

#race_news h2{
  width: 200px;
  margin: 40px auto 15px;
}

#race_news h2 img{
  width: 100%;
}

#race_news .race_news_box{
  background: #000;
  border-radius: 8px;
  position: relative;
  padding: 20px;
}

#race_news .race_news_box ul{
  padding: 20px;
  background: #fff;
  border-radius: 4px;
  overflow: hidden;
}

#race_news .race_news_box ul li{
  border-bottom: 1px solid #ccc;
  display: none;
}

#race_news .race_news_box ul li:first-child{
  border-top: 1px solid #ccc;
}

#race_news .race_news_box ul li:first-child,
#race_news .race_news_box ul li:nth-child(2),
#race_news .race_news_box ul li:nth-child(3),
#race_news .race_news_box ul li:nth-child(4),
#race_news .race_news_box ul li:nth-child(5){
  display: block;
}

#race_news .race_news_box ul li a{
  display: block;
  color: #000;
  padding: 15px;
  font-size: 15px;
}

#race_news .race_news_box ul li a:hover{
  color: #e50113;
  background: #fce5e7;
  opacity: 1;
}

#race_news .race_news_box ul li span{
  display: block;
  font-size: 13px;
  font-weight: bold;
}

#race_news .race_news_box .race_news_btn_l{
  display: block;
  width: 348px;
  margin: 20px auto 0;
}

#race_news .race_news_box .race_news_btn_l img{
  width: 100%;
}

#race_news .race_news_box .race_news_btn{
  display: none;
}




/*----bnr----*/

#bnr{
  background:#46a400 url("../img/bg_grad.png") repeat-x left top;
}

.slider_bnr{
  width: 1000px;
  margin: 0 auto;
  padding: 50px 0 0;
}

#bnr ul.slider_bnr .slick-list .slick-track li{
  width: 600px;
  margin: 0 15px;
}

.slider_bnr .slick-arrow{
  top:44%;
}

.slider_bnr li img{
  height: 400px;
}



/*----contents common----*/

#gallery h2,
#wallpaper h2,
#purchase h2,
#info h2{
  margin-bottom: 25px;
}

p.read{
  width: 700px;
  margin:0 auto 45px;
}

.bg{
  padding: 50px 0 0;
  min-width: 1000px;
}



/*----nenga----*/

#nenga{
  background:#00acee url("../img/bg_grad.png") repeat-x left top;
  text-align: center;
  color: #fff;
  min-width: 100%;
  padding: 0 0 80px;
}

#nenga .bg{
  background:url("../img/nenga_bg_txt.png") no-repeat center top;
  background-size: 1000px auto;
}

#nenga h2{
  margin-bottom: 30px;
}

#nenga h2 img{
  width: 822px;
}

#nenga .nenga_img{
  width: 920px;
  padding:0 0 30px;
  display: block;
  margin: 0 auto;
}

#nenga .nenga_how{
  display: block;
  width: 506px;
  padding-bottom: 40px;
  margin: 0 auto;
}

#nenga .nenga_period{
  width: 511px;
}

#nenga .nenga_btn{
  display: block;
  width: 288px;
  margin: 40px auto 0;
}

#nenga ul{
  font-size: 12px;
  list-style: none;
  text-align: center;
}

#nenga ul li{
  display: inline-block;
  padding: 0 7px;
}

#nenga .txt_close{
  color: #fff100;
  font-size: 26px;
  font-weight: bold;
  margin-top: 50px;
  line-height: 1.5;
  border: 1px solid #fff100;
  display: inline-block;
  padding: 15px 25px;
  
}



/*----campaign----*/

#campaign{
  background:#e50113 url("../img/bg_grad.png") repeat-x left top;
  min-width: 100%;
  padding: 0 0 80px;
  overflow: hidden;
}

#campaign .bg{
  background:url("../img/campaign_bg_txt.png") no-repeat center top;
  background-size: 2082px auto;
  padding: 0;
}

#campaign h2{
  margin-bottom: 0;
  text-align: center;
}

#campaign h2 img{
  width: 1000px;
}

.campaign_detail{
  width: 950px;
  margin: -55px auto 0;
  padding: 65px 0 45px 50px;
  background: #fff;
  border-radius: 5px;
}

.campaign_detail ul.detail{
  display: flex;
  flex-wrap: wrap;
}

.campaign_detail ul.detail li:first-child{
  border-right: 1px solid #707070;
  width: 524px;
  position: relative;
}

.campaign_detail ul.detail li:last-child{
  width: 377px;
  padding: 0 0 0 48px;
  position: relative;
}

.campaign_detail ul.detail li .detail_a{
  width: 76px;
  margin: -20px 0 0 200px;
}

.campaign_detail ul.detail li .detail_b{
  width: 76px;
  margin: -20px 0 0 130px;
}

.campaign_detail .detail_250{
  position: absolute;
  right: -40px;
  top: -85px;
}

ul.detail_note{
}

ul.detail_note li{
  text-indent: -1em;
  padding-left: 1em;
  font-size: 12px;
  width: 890px;
  padding-bottom: 4px;
}

.campaign_btn{
  display: block;
  width: 288px;
  margin: 40px auto 0;
}


.txt_coming{
  margin: 20px auto 0;
  color: #fff;
  text-align: center;
}

.btn_comingsoon img{
  width: 242px;
}

a.disabled{
  pointer-events: none;
}

a.disabled img{
  opacity: 0.5;
}


/*----gallery----*/

#gallery{
  background:#46a400 url("../img/bg_grad.png") repeat-x left top;
  text-align: center;
  color: #fff;
  min-width: 100%;
  padding: 0 0 80px;
}

#gallery .bg{
  background:url("../img/gallery_bg_txt.png") no-repeat center top;
  background-size: 1000px auto;
}

#gallery h3{
  margin: 0 0 30px;
  line-height: 1;
}

#gallery h3 img{
  height: 30px;
}

#gallery h4{
  margin: 0 0 15px;
  line-height: 1;
}

#gallery h4 img{
  height: 20px;
}

#gallery_poster{
  margin: 0 auto 60px;
}

#gallery_poster > ul{
  width: 920px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}

#gallery_poster > ul li{
  width: 420px;
  margin: 0 20px;
}

#gallery_movie{
  width: 680px;
  margin: 0 auto;
  padding-bottom: 20px;
}

#gallery_movie > ul{
  width: 680px;
}

#gallery_movie > ul li{
  margin: 0 0 40px;
}




/*----wallpaper----*/

#wallpaper{
  background:#f49f0b url("../img/bg_grad.png") repeat-x left top;
  text-align: center;
  color: #fff;
  min-width: 100%;
  padding: 0 0 80px;
}

#wallpaper .bg{
  background:url("../img/wallpaper_bg_txt.png") no-repeat center top;
  background-size: 1590px auto;
}

#wallpaper h2 img{
  width: 651px;
}

#wallpaper h3{
  margin: 0 0 20px;
  line-height: 1;
  text-align: center !important;
}

#wallpaper h3 img{
  height: 25px;
}


#wallpaper .wallpaper_list_sp{
  width: 1000px;
  margin: 0 auto 60px;
}

#wallpaper .wallpaper_list_sp > ul{
  width: 870px;
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
}

#wallpaper .wallpaper_list_sp > ul > li{
  width:250px;
  padding: 0 20px;
}



#wallpaper .wallpaper_list_sp .btn_list{
  width: 190px;
  margin: 20px auto 0;
}

#wallpaper .btn_list li{
  width: 190px;
  padding: 0 0 10px;
}




#wallpaper .wallpaper_list_pc{
  width: 600px;
  margin: 0 auto 60px;
}

#wallpaper .wallpaper_list_pc .btn_list{
  width: 440px;
  display: flex;
  flex-wrap: wrap;
  margin: 20px auto 0;
}

#wallpaper .wallpaper_list_pc  li{
  width: 190px;
  padding: 0 15px 10px;
}

#wallpaper a.btn{
  display: block;
  width: 190px;
  padding: 10px;
  position: relative;
  background: #e50113;
  border-radius: 5px;
  height: 39px;
  box-sizing: border-box;
}

#wallpaper a.btn:before {
  position: absolute;
  top: 14px;
  left: 10px;
  content: "";
  width: 8px;
  height: 8px;
  border-top:2px solid #fff;
  border-right:2px solid #fff;
  transform: rotate(45deg);
}

#wallpaper a.btn img{
  height: 19px;
  padding: 0 0 0 15px;
}

#wallpaper .wallpaper_howto{
  width: 1000px;
  margin: 0 auto;
  color: #000;
  font-size: 14px;
}

#wallpaper .wallpaper_howto dl{
  width: 1000px;
  display: flex;
  flex-wrap: wrap;
  background: #fff;
  border-radius: 5px;
  overflow: hidden;
}

#wallpaper .wallpaper_howto dl dt{
  background: #eee;
  position: relative;
  width: 110px;
  border-top: 1px solid #a0a0a0;
}

#wallpaper .wallpaper_howto dl .win,
#wallpaper .wallpaper_howto dl .mac{
  border-top: none;
}

#wallpaper .wallpaper_howto dl dt h4{
  position: absolute;
  top: 50%;
  transform : translateY(-50%);
  font-weight: bold;
  text-align: center;
  width: 100%;
}

#wallpaper .wallpaper_howto dl dt h4 span{
  display: block;
  font-size: 12px;
}

#wallpaper .wallpaper_howto dl dd{
  width: 362px;
  padding: 10px 14px;
  text-align: left;
  border-top: 1px solid #a0a0a0;
}


/*----purchase----*/

#purchase{
  background:#00a3e1 url("../img/bg_grad.png") repeat-x left top;
  text-align: center;
  color: #fff;
  min-width: 1000px;
  padding: 0 0 80px;
}

#purchase .bg{
  background:url("../img/purchase_bg_txt.png") no-repeat center top;
  background-size: 3073px auto;
}

#purchase ul{
  width: 920px;
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
}

#purchase ul li{
  width: 200px;
  margin: 0 15px;
  background: #fff;
  border-radius: 5px;
}

#purchase ul li:hover {
  opacity: 0.5;
  transition: 0.3s ease-in-out;
}

#purchase ul li a{
  display: block;
  align-items: center;
  width: 180px;
  padding: 15px 10px 15px;
  text-align: center;
  color: #000;
}

#purchase ul li a:hover {
  opacity: 1;
}

#purchase ul li a img{
  padding-bottom: 10px;
}



/*----info----*/

#info{
  background:#e50113 url("../img/bg_grad.png") repeat-x left top;
  text-align: center;
  color: #fff;
  min-width: 1000px;
  padding: 0 0 80px;
}

#info .bg{
  background:url("../img/info_bg_txt.png") no-repeat center top;
  background-size: 1358px auto;
}

#info ul.list_s{
  width: 690px;
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto 40px;
}

#info ul.list_s li{
  width: 200px;
  margin: 0 15px 20px;
  background: #fff;
  border-radius: 5px;
}

#info ul.list_s li:hover {
  opacity: 0.5;
  transition: 0.3s ease-in-out;
}

#info ul.list_s li a{
  display: block;
  width: 180px;
  padding: 15px 10px 15px;
  text-align: center;
  color: #000;
  font-size: 14px;
}

#info ul.list_s li a:hover {
  opacity: 1;
}

#info ul.list_s li a img{
  padding-bottom: 10px;
}

#info ul.list_l{
  width: 940px;
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto 40px;
}

#info ul.list_l > li{
  width: 420px;
  height: 190px;
  margin: 0 15px;
  background: #fff;
  border-radius: 10px;
  padding: 10px;
}

#info ul.list_l li h3 img{
  width: 100%;
}

#info ul.list_l .apri_img{
  margin-top: 32px;
}


#info ul.list_l .list_sns{
  height: 51px;
  margin: 49px auto 0;
  text-align: center;
}

#info ul.list_l .list_sns li{
  padding:  0 19px;
  display: inline-block;
}

#info ul.list_l .list_sns li img{
  height: 51px;
}


/*----list_racetrack----*/

#list_racetrack{
  width: 860px;
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  justify-content: center;
  padding: 40px 0 0;
}


#list_racetrack li{
  padding:0 22px 18px;
}
