@charset "utf-8";
/*==============================================
netkeiba TOPページ
==============================================*/

/*---------------------------------
ヘッドラインスライド
---------------------------------*/
.TopHeadlineWrap01 {
	position: relative;
	-webkit-animation: fadeIn 1.5s ease 0s 1 normal;
	animation: fadeIn 1.5s ease 0s 1 normal;
	margin-top: 18px;
}
.TopHeadlineWrap01::before {
	content: "";
	display: block;
	padding-top: 56.2%;
}
.TopHeadlineWrap01::after {
	content: "";
	display: block;
	padding-top: 25px;
}
.TopHeadlineWrap01 .Top_Slide {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@-webkit-keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}
@keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}
/* Top_Slide*/
.Top_Slide .slick-list {
	background: #000;
}
.Top_Slide .SlideImgBox01 {
	padding: 0;
	position: relative;
	float: left;
}
.Top_Slide .SlideImgBox01 a {
	display: block;
	overflow: hidden;
	position: relative;
}
.Top_Slide .SlideImgBox01 img {
	width: 100%;
}
.Top_Slide .SlideImgBox01 .HeadlineSlideBoxPhoto {
/*	background-color: #eee; */
	background-position: center;
	background-size: contain;
	background-repeat:no-repeat;
}
.Top_Slide .SlideImgBox01 .HeadlineSlideBoxPhoto::before {
	content:"";
	display:block;
	padding-top:56.2%;
}
.Top_Slide .SlideTxtArea {
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	position: absolute;
	background: -webkit-gradient(linear,left bottom, left top,from(rgba(0,0,0,.67)),color-stop(40%, rgba(0,0,0,0)),to(rgba(0,0,0,0)));
	background: -webkit-linear-gradient(bottom,rgba(0,0,0,.67),rgba(0,0,0,0) 40%,rgba(0,0,0,0));
	background: linear-gradient(to top,rgba(0,0,0,.67),rgba(0,0,0,0) 40%,rgba(0,0,0,0));
	z-index: 20;
}
.Top_Slide .SlideTxtArea .SlideTxtInner {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	padding: 0 10px 10px;
	z-index: 30;
}
.Top_Slide .SlideTxtArea .ContentMainTitle {
	color: #fff;
	font-size: 111.12%;
	font-weight: bold;
	line-height: 1.25;
	width:100%;
	height: 2.59em;
	margin: 0;
	padding:0;
	overflow:hidden;
	text-overflow: ellipsis;
	display: block;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
.Top_Slide .SlideTxtArea .ContentMainTitle .Icon_GradeType {
	margin-left: 4px;
	padding: 2px 0.5em;
	vertical-align: middle;
}
.Top_Slide .SlideTxtArea .Content_Cate {
	color: #333;
	font-size: 66.67%;
	font-weight: bold;
	line-height: 2;
	background: rgba(255, 255, 255, .7);
	display: inline-block;
	border-radius: 1em;
	margin-bottom: 5px;
	padding: 0 10px 0 11px;
}
.Top_Slide .SlideTxtArea .Content_Cate .Icon_GradeType {
	position: relative;
	top: 5px;
	left: -2px;
}
#Netkeiba_Top .PickupRaceArea {
	padding-top: 0;
}
@media only screen and (min-width: 1025px) {
	#Netkeiba_Top .PickupRaceArea.Contents_Box {
		min-height: 620px;
	}
}
@media only screen and (min-width: 767px) and (max-width: 1024px) {
	#Netkeiba_Top .PickupRaceArea.Contents_Box {
		min-height: 711px;
		min-height: calc(53vw + 308px);
	}
}
@media only screen and (min-width: 321px) and (max-width: 766px) {
	#Netkeiba_Top .PickupRaceArea.Contents_Box {
		min-height: 494px;
		min-height: calc(53vw + 276px)
	}
}
@media only screen and (max-width: 320px) {
	#Netkeiba_Top .PickupRaceArea.Contents_Box {
		min-height: 465px;
		min-height: calc(53vw + 273px);
	}
}
@media screen and ( min-width: 1200px ){
	.Top_Slide .SlideImgBox01 {
		margin: 0 15px;
	}
	.TopHeadlineWrap01::before {
		padding-top: 45.36%;
	}
	.SlideImgBox01 {
		opacity: 0.5;
		transition: all 300ms ease;
	}
	.SlideImgBox01.slick-center {
		opacity: 1;
		transition: all 300ms ease;
	}
}
@media screen and ( min-width: 768px ){
	.Top_Slide .SlideImgBox01 a {
		display: block;
		overflow: hidden;
		position: relative;
	}
	.Top_Slide .SlideTxtArea .ContentMainTitle {
		font-size: 122.23%;
	}
	.Top_Slide .SlideTxtArea .ContentMainTitle .Icon_GradeType {
		
	}
}
/* Arrows */
.Top_Slide .slick-prev,
.Top_Slide .slick-next {
	width: 40px;
	height: 40px;
	border-radius: 20px;
	background: rgba(85, 85, 85, .7);
	color: transparent;
	top: 46%;
	padding: 0;
	border: none;
	outline: none;
	z-index: 10;
	padding: 0;
	margin-top: 0;
}
.Top_Slide .slick-prev:before,
.Top_Slide .slick-next:before {
	content: "";
	display: block;
	position: absolute;
	top: 13px;
	width: 14px;
	height: 14px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	border-radius: 1px;
	background: none;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.Top_Slide .slick-prev {
	left: 10px;
}
.Top_Slide .slick-prev:before {
	left: 14px;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}
.Top_Slide .slick-next {
	right: 10px;
}
.Top_Slide .slick-next:before {
	right: 14px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
/*---------------------------------
レースライブ情報
---------------------------------*/
#Netkeiba_Top .RaceLiveFlashBox01 {
	margin-bottom: 23px;
}
/*---------------------------------
レース情報 .TopPickupRaceArea
---------------------------------*/
.TopPickupRaceArea {

}
.TopPickupRaceArea .PickupRace_SlideImgBox01 {
	border-radius: 4px 4px 0 0;
	overflow: hidden;
	margin: 0 10px;
}
.PickupRaceMenu {
	display: flex;
	background: #f3f3f3;
	margin: 0 10px 10px;
	padding: 10px;
}
.PickupRaceMenu .PickupRace_OddsList {

}
.TopPickupRaceArea .PickupRaceMenu .PickupRaceMenu_BtnArea {
	flex-direction: column;
	width: 33%;
	margin: 0 0 0 20px;
}
.TopPickupRaceArea .PickupRaceMenu_BtnArea li {
	width: 100%;
}
.TopPickupRaceArea .PickupRaceMenu_BtnArea li + li {
	margin-top: 8px;
}

.PickupRace_Sub {
	margin: 0 10px;
}
.PickupRace_Sub .RaceList li + li {
	margin-top: 6px;
}
.PickupRace_Sub .RaceList li a {
	display: block;
	background: #fff;
	border-radius: 3px;
	border:1px solid #CACACA;
}
.PickupRace_Sub .RaceList li a:hover{
	text-decoration: none;
}
.PickupRace_Sub .ContentMainTitle {
	height: auto;
	margin: 0;
	font-size: 100%;
}
.PickupRace_Sub .ContentMainTitle .Txt{
}
.PickupRace_Sub .ContentMainTitle .Icon_GradeType,
.PickupRace_SlideImgBox01 .ContentMainTitle .Icon_GradeType {
	font-size: 12px;
	vertical-align: middle;
	margin-left: 6px;
	padding: 2px 0.5em;
	min-width: 32px;
}
.PickupRace_Sub .RaceList li div {
	padding: 10px;
}
.PickupRace_Sub .RaceList li div .Content_Date {
	display: block;
	font-size: 66.67%;
	color: #888;
	margin-top: 4px;
}
.PickupRace_Sub .Dirt {
	color: #874c11;
}
.PickupRace_Sub .Turf {
	color: #58af4a;
}
@media screen and ( min-width: 768px ){
	.TopPickupRaceArea .PickupRace_SlideImgBox01 > a:hover {
		filter: alpha(opacity=85);
		opacity: 0.85;
		-moz-opacity: 0.85;
	}
	.PickupRace_Sub .RaceList {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.PickupRace_Sub .RaceList li {
		width: 50%;
		width: calc( 100% / 2 - 5px);
		margin-top: 10px;
	}
	.PickupRace_Sub .RaceList li a:hover{
		background: #f9f9f9;
	}
	.PickupRace_Sub .RaceList li a:hover .ContentMainTitle .Txt{
		color: #c53131;
		text-decoration: underline;
	}
	.PickupRace_Sub .RaceList li + li {
		margin-top: 10px;
	}
	.PickupRace_Sub .ContentMainTitle {
		line-height: 2.3;
		overflow: hidden;
		vertical-align: middle;
		display: -webkit-flex;
		display: flex;
		-webkit-align-items: center;
		align-items: center;
	}
	.PickupRace_Sub .ContentMainTitle .Txt{
		display: block;
		word-break: break-all;
		text-overflow: ellipsis;
		white-space: normal;
		display: -webkit-box;
		-webkit-line-clamp: 1;
		-webkit-box-orient: vertical;
	}
}
@media only screen and (min-width:1054px){
	.TopPickupRaceArea .PickupRace_Wrap {
		margin: 0;
		display: -webkit-box;
		display: flex;
		width: 100%;
		flex: 1;
		border-radius: 4px;
		overflow: hidden;
	}
	.TopPickupRaceArea .PickupRace_SlideImgBox01 {
		width: 400px;
		margin: 0;
		border-radius: 0;
	}
	.PickupRace_Slide_Area .PickupRace_SlideImgBox01 > a {
	
	}
	.PickupRaceMenu {
		display: block;
		margin: 0;
		padding: 30px 20px 0;
		flex-grow: 1;
	}
	.TopPickupRaceArea .PickupRaceMenu .PickupRaceMenu_BtnArea {
		flex-direction: row;
		width: 100%;
		margin: 15px 0 0;
	}
	.TopPickupRaceArea .PickupRaceMenu_BtnArea li {
		width: 48%;
		width: calc((100% / 2) - 5px);
	}
	.TopPickupRaceArea .PickupRaceMenu_BtnArea li + li {
		margin: 0;
	}
	.PickupRace_Sub {
		margin: 10px 0 0;
	}
}
@media screen and ( min-width: 1250px ){
	.PickupRace_Sub .RaceList {
		justify-content: flex-start;
	}
	.PickupRace_Sub .RaceList li {
		width: 33.33%;
		width: calc(100% / 3 - 7px);
	}
	.PickupRace_Sub .RaceList li + li {
		margin-left: 10px;
	}
	.TopPickupRaceArea .RaceList li:nth-child(n+4) {
		margin-left: 0;
	}
}
/* 今週のレース */
.Race_Calendar_List {
	margin: 0 10px;
}
.Calendar_DayList + .Calendar_DayList{
	margin-top: 4px;
}
.ThisWeek_RaceList {
	display: table;
	table-layout: fixed;
	width: 100%;
}
.ThisWeek_Day {
	display: table-cell;
	width: 88px;
	vertical-align: top;
	background-image: url(../img/race/thisweek_bg.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 87px 100%;
	background-color: rgba(255,255,255,0.6);
	background-blend-mode: lighten;
}
.ThisWeek_Day p {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 72px;
	height: 56px;
	color: #666;
	font-size: 0.9375rem;
	font-weight: 700;
	line-height: 1.5;
}
.ThisWeek_Day span {
	font-size: 0.6875rem;
	font-weight: 400;
}
.ThisWeek_Btn {
	display: table-cell;
	width: 100%;
}
.ThisWeek_Btn .Btn_2col li,
.ThisWeek_Btn .Btn_3col li {
	float: left;
	padding-left: 4px;
}
.ThisWeek_Btn .Btn_2col li {
	width: 50%;
}
.ThisWeek_Btn .Btn_3col li {
	width: 33.333%;
	width: calc(100% / 3);
}
.ThisWeek_Btn .Btn_2col li:nth-child(n+3) {
	margin-top: 4px;
}
.ThisWeek_Btn .Btn_3col li:nth-child(n+4) {
	margin-top: 4px;
}
.ThisWeek_Btn .Btn_2col li a,
.ThisWeek_Btn .Btn_2col li .No_Link,
.ThisWeek_Btn .Btn_3col li a,
.ThisWeek_Btn .Btn_3col li .No_Link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100%;
	height: 56px;
	border: 1px solid #e7e7e7;
	border-radius: 4px;
}
.ThisWeek_Btn .Btn_2col li .No_Link,
.ThisWeek_Btn .Btn_3col li .No_Link {
	background-color: #dedede;
}
.ThisWeek_Btn .JyoName {
	color: #666;
	font-size: 0.8125rem;
	font-weight: 700;
	line-height: 1;
}
.ThisWeek_Btn .Top_RaceName {
	color: #888;
	font-size: 0.625rem;
	line-height: 1;
	margin-top: 4px;
}
/* レースメニュー */
.Contents_Box.Top_RaceMenu {
	padding-bottom: 11px;
}

@media screen and (min-width: 768px){
	.Race_Calendar_List {
		margin: 0;
	}
	.Calendar_DayList + .Calendar_DayList {
		margin-top: 12px;
	}
	.ThisWeek_Btn .Btn_2col li,
	.ThisWeek_Btn .Btn_3col li {
		padding-left: 12px;
	}
	.ThisWeek_Day {
		width: 110px;
		background-size: 110px 100%;
	}
	.ThisWeek_Day p {
		width: 94px;
	}
	.ThisWeek_Btn a:hover {
		text-decoration: none;
		background: #f9f9f9;
	}
	.ThisWeek_Btn a:hover .JyoName{
		color: #c53131;
		text-decoration: underline;
	}
}
/*---------------------------------
データベース .TopDatabase
---------------------------------*/
.TopDatabase {
	padding: 0 10px;
}
.TopDatabase .HorseSearchArea {
	padding: 18px 0 26px;
}
.TopDatabase .Title_Sec {
	margin: 15px 0 0;
}
.HorseSearchArea input,.HorseSearchArea button,.HorseSearchArea textarea,.HorseSearchArea select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background:transparent;
}
/*--厩舎表記--*/
span[class^='Barn']{
	position: relative;
	top:-3px;
	display:inline-block;
	color:#fff;
	font-size: 55.56%;
	font-weight: normal;
	width:34px;
	height: 16px;
	line-height: 16px;
	margin-left: 6px;
	text-align:center;
	background:#686868;
	border-radius: 8px;
}
span.Barn01{
	background:#686868;
}
span.Barn02{
	background:#c14;
}
span.Barn03{
	background:#155cc1;
}
span.Barn04{
	background:#009000;
}

@media screen and (min-width: 768px){
	.TopDatabase .RankingList ul.List_01 li:nth-child(n+4) {
		display: none;
	}
}
/*---------------------------------
お気に入り馬
---------------------------------*/
#Netkeiba_Top .Side_Column .DBMenu {
	display: block;
}
.DBMenu ul.Btn_List_01 li a{
	position: relative;
	display: block;
	font-size: 72.22%;
	font-weight:bold;
	color: #666;
	background:#fff;
	text-align: center;
	padding: 0 0 9px;
	margin-right: 8px;
	min-height: 62px;
	border-radius: 6px;
	border: none;
	background: none;
}
.DBMenu .MenuBox .Icon_Nk_New_bg{
	display: block;
	margin: auto;
	width: 46px;
	height: 46px;
	margin-bottom: 2px;
	background: #F7F7F7;
	border-radius: 50%;
	position: relative;
	overflow: hidden;
}
/* メニュー */
.Favorite_Menu {
	margin: 18px 6px 0;
}
.Favorite_Menu ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
	-webkit-box-pack: justify;
	justify-content: space-between;
}
.Favorite_Menu li {
	padding: 0 4px;
	border-right: 1px solid #E0E0E0;
}
.Favorite_Menu li:last-of-type{
	border-right: none;
}
.Favorite_Menu .Col3 li {
	width: 33.333%;
	-ms-flex-preferred-size: calc(100% / 3);
	flex-basis: calc(100% / 3);
}
.Favorite_Menu li a {
	position: relative;
	display: block;
	padding: 6px 4px 6px;
	color: #444;
	font-size: 0.8125rem;
	font-weight: 700;
	text-align: center;
	border:none;
}
.DBMenu .MenuBox .Icon_Fav {
	position: relative;
	width: 30px;
	height: 24px;
	background-image: url(../img/icon/icon_favoriteHorse_sprite01.png);
	background-repeat: no-repeat;
	background-size: 30px auto;
	-webkit-transform: none;
	transform: none;
}
.DBMenu .MenuBox .Icon_Fav {
	display: block;
	margin: 0 auto 6px;
}
.DBMenu .MenuBox .Icon_Fav {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	height: 25px;
}
.Icon_Fav.Icon_Fav01{
	background-position: 3px 0;
}
.Icon_Fav.Icon_Fav02{
	background-position: 0 -79px;
}
.Icon_Fav.Icon_Fav03{
	background-position: 3px -38px;
}
/*---------------------------------
お知らせ
---------------------------------*/
.Nk_Infomation_Inner ul{
	margin: 0 10px;
	border-top: 1px solid #cacaca;
	border-bottom: 1px solid #cacaca;
}
.Nk_Infomation_Inner ul li + li{
	border-top: 1px solid #cacaca;
}
.Nk_Infomation_Inner ul li a{
	position: relative;
	display: block;
	padding: 14px 30px 14px 0;
	color: #999;
}
.Nk_Infomation_Inner ul li a::after{
	content: '';
	position: absolute;
	top: 50%;
	right: 10px;
	display: block;
	width: 10px;
	height: 10px;
	border-top: 1px solid #888;
	border-right: 1px solid #888;
	border-radius: 1px;
	-webkit-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg);
	z-index: 10;
}
.InfoTag span{
	display: block;
	color: #777;
	font-size: 61.12%;
}
.Nk_Infomation_Inner ul li h3{
	margin-top: 2px;
	font-size: 83.34%;
	font-weight: normal;
	line-height: 1.3;
	color: #444;
}

@media screen and (min-width: 768px){
	.Nk_Infomation_Inner ul{
		margin: 0;
	}
	.Nk_Infomation_Inner ul li a:hover{
		text-decoration: none;
		background: #f9f9f9;
	}
	.Nk_Infomation_Inner ul li a:hover h3{
		color: #c53131;
		text-decoration: underline;
	}
}

/*======================================
サポート導線 .InfoMenuArea
======================================*/
.InfoMenuArea {
	padding-bottom: 23px;
}
ul.InfoMenuList {
	margin: 0 10px;
	border-top: 1px solid #cacaca;
	border-bottom: 1px solid #cacaca;
}
ul.InfoMenuList > li + li {
	border-top: 1px solid #cacaca;
}
ul.InfoMenuList > li > a {
	position: relative;
	display: block;
	font-size: 15px;
	font-weight: normal;
	color: #444;
	letter-spacing: 0.03em;
	line-height: 1.2;
	padding: 14px 30px 14px 0;
}
ul.InfoMenuList > li > a::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 10px;
	display: block;
	width: 9px;
	height: 9px;
	border-top: 1px solid #888;
	border-right: 1px solid #888;
	border-radius: 1px;
	-webkit-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg);
	z-index: 10;
}

@media screen and (min-width: 768px){
	ul.InfoMenuList{
		margin: 0;
	}
	ul.InfoMenuList li a:hover{
		color: #c53131;
		text-decoration: underline;
		background: #f9f9f9;
	}
}
/*---------------------------------
ご意見
---------------------------------*/
.OpinionBox .OpinionBoxWrap{
	padding: 0 14px 27px;
	border-radius: 4px;
}
.OpinionBox .OpinionBoxCheckTxt{
	color:#444;
	font-size:0.75rem;
	font-weight: normal;
	line-height:1.57;
}
.OpinionBox .SideOpinionBtn{
	display: block;
	text-align: center;
	border:1px solid #888;
	border-radius: 4px;
	padding:16px 0;
	margin-top:25px;
	color:#444;
	font-size:0.9375rem;
}
