@charset "utf-8";
html {
	font-size: 62.5%;
}
body {
	background-color: #fff;
	font-size: 10px;
	font-size: 1rem;
	line-height: 1.8;
	color: #333333;
	word-wrap: break-word;
	overflow-wrap: break-word;

	/* メイリオベース */
	font-family: "メイリオ", "Meiryo", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Verdana, Arial, Helvetica, sans-serif !important;		
	/* 游ゴシックベース */
	/*
	font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", Verdana, Arial, Helvetica, sans-serif;
	*/
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;

	/*-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-feature-settings: "pkna";
	font-feature-settings: "pkna";*/
}
/* IE11 は 游ゴシック却下 */
@media all and (-ms-high-contrast:none){
	body{
		font-family: "メイリオ", "Meiryo", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Verdana, Arial, Helvetica, sans-serif !important;		
	}
}
	

*,
*::before,
*::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	line-height: 2;
}
a[href] {
	color: #0063c5;
	text-decoration: underline;
	outline: none;
}
a[href]:hover {
	text-decoration: none;
}
a[href].a_reverse,
.a_reverse a[href] {
	text-decoration: none;
}
a[href].a_reverse:hover,
.a_reverse a[href]:hover {
	text-decoration: underline;
}
a[href^="http"],
a[href^="mailto:"] {
	word-break: break-all;
	word-wrap : break-word;
	overflow-wrap : break-word;
}

label {
	cursor: pointer;
}
input, select, textarea, button {
	max-width: 100%;
	margin: 0;
	vertical-align: middle;
	font-family: inherit;
	outline: none;
	font-size: 100%;
}

button {
	cursor: pointer;
}
iframe {
	max-width: 100%;
	vertical-align: middle;
}

.hidden {
	display: none;
}
.slick-slider * {
	outline: none;
}
@media screen and (max-width: 768px) {
	body {
		font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", Verdana, Arial, Helvetica, sans-serif;
	}
	img {
		max-width: 100%;
		height: auto;
	}
}


/* pc / sp
============================================================================================================ */
.sp,
.sps {
	display: none !important;
}
@media screen and (min-width: 769px), print {
	.pc_break {
		position: relative;
		display: block;
		height: 0;
		overflow: hidden;
	}
}
@media screen and (max-width: 768px) {
	.pc {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
	img.sp, span.sp, br.sp, em.sp, strong.sp {
		display: inline !important;
	}
	td.sp, th.sp {
		display: table-cell !important;
	}
	.sp_break {
		position: relative;
		display: block;
		height: 0;
		overflow: hidden;
	}
}
@media screen and (max-width: 370px) {
	.sps {
		display: block !important;
	}
	img.sps, spsan.sps, br.sps, em.sps, strong.sps {
		display: inline !important;
	}
	.sps_non {
		display: none !important;
	}
}

/* sp
============================================================================================================ */
@media screen and (max-width: 768px) {
	*[data-label] img {
		display: none !important;
	}
	*[data-label]::before {
		content: attr(data-label);
	}
	*[data-label-r]::after {
		display: block;
		content: attr(data-label-r);
	}
}
@media screen and (min-width: 371px) {
	*[data-label-r].spl_r_inline::after {
		display: inline;
	}
}

/* spパディング
============================================================================================================ */
@media screen and (max-width: 768px) {
	.sp_pd {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
	.sp_full {
		margin-left: -15px !important;
		margin-right: -15px !important;
	}
}
@media screen and (max-width: 370px) {
	.sp_full {
		margin-left: -10px !important;
		margin-right: -10px !important;
	}
	.sp_pd {
		padding-left: 10px !important;
		padding-right: 10px !important;
	}
}


/* pc_hidden
============================================================================================================ */
@media screen and (min-width: 769px), print {
	.pc_hidden {
		position: relative;
		overflow: hidden;
		display: block;
		height: 0;
	}
	.contain {
		display: inline-block;
		background-color: #ccc;
		background-position: center center;
		background-repeat: no-repeat;
		margin: 5px;
		width: 300px;
		height: 202px;
		border: 1px solid #ccc;
		background-size: contain;
	}
}

/* color
============================================================================================================ */
.c_theme,
a.c_theme {
	color: #0063c5 !important;
}
.bg_theme,
a.bg_theme {
	background-color: #0063c5 !important;
	color: #fff;
}
.bg_theme a[href] {
	color: #fff;
}

.c_white,
a.c_white {
	color: #fff !important;
}

.bg_gray {
	background-color: #f2f2f2;
}

.red {
	color: #ff0000 !important;
}

.c_yellow,
a.c_yellow {
	color: #ffbb37 !important;
}
.bg_yellow,
a.bg_yellow {
	background-color: #ffbb37 !important;
	color: #fff;
}
.bg_yellow a[href] {
	color: #fff;
}

/* transition
============================================================================================================ */
@media screen and (min-width: 769px) {
	a[href],
	a[href]::before,
	a[href]::after,
	button,
	.basic_trs,
	.basic_trs::before,
	.basic_trs::after,
	.basic_trs *,
	.basic_trs *::before,
	.basic_trs *::after {
		-webkit-transition: color 0.2s, background 0.2s, border 0.2s, opacity 0.2s;
		-o-transition: color 0.2s, background 0.2s, border 0.2s, opacity 0.2s;
		transition: color 0.2s, background 0.2s, border 0.2s, opacity 0.2s;
	}
}


/* font family
============================================================================================================ */
.ff_min {
	font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 ProN", "ヒラギノ明朝 ProN W3", "Hiragino Mincho Pro", "ヒラギノ明朝 Pro W3", "HiraMinProN-W3", "游明朝", YuMincho, "HGS明朝E", "HG明朝E", "メイリオ", Meiryo, serif;
	font-weight: normal;
}
.ff_en {
	font-family: 'Roboto', sans-serif;
	font-weight: normal;
}


/* font
============================================================================================================ */
.fwb {
	font-weight: bold;
}


/* display
============================================================================================================ */
.db {
	display: block;
}
.dib {
	display: inline-block;
}


/* hover
============================================================================================================ */
@media screen and (min-width: 769px), print {
	a.hv_wh,
	button.hv_wh,
	a .hv_wh,
	.hv_wh a {
		position: relative;
		display: inline-block;
		vertical-align: middle;
		overflow: hidden;
	}
	a.hv_wh::after,
	button.hv_wh::after,
	a .hv_wh::after,
	.hv_wh a::after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		background-color: rgba(255,255,255,0);
		-webkit-transition: background 0.2s;
		-o-transition: background 0.2s;
		transition: background 0.2s;
		z-index: 3;
	}
	a[href].hv_wh:hover::after,
	button.hv_wh:hover::after,
	a[href]:hover .hv_wh::after,
	.hv_wh a[href]:hover::after {
		background-color: rgba(255,255,255,0.3);
	}
	a[href].hv_wh.a20:hover::after,
	button.hv_wh.a20:hover::after,
	a[href]:hover .hv_wh.a20::after,
	.hv_wh.a20 a[href]:hover::after {
		background-color: rgba(255,255,255,0.2);
	}
	a[href].hv_wh.a10:hover::after,
	button.hv_wh.a10:hover::after,
	a[href]:hover .hv_wh.a10::after,
	.hv_wh.a10 a[href]:hover::after {
		background-color: rgba(255,255,255,0.1);
	}

	a[href] .hv_op {
		-webkit-transition: opacity 0.2s;
		-o-transition: opacity 0.2s;
		transition: opacity 0.2s;
	}
	.hv_op a[href]:hover,
	a[href].hv_op:hover,
	a[href]:hover .hv_op {
		opacity: .7;
	}
	.hv_op.a20 a[href]:hover,
	a[href].hv_op.a20:hover,
	a[href]:hover .hv_op.a20 {
		opacity: 0.8;
	}
	.hv_op.a10 a[href]:hover,
	a[href].hv_op.a10:hover,
	a[href]:hover .hv_op.a10 {
		opacity: 0.9;
	}

	a[href] .hv_zoom {
		-webkit-transition: -webkit-transform 0.3s, opacity .3s;
		-o-transition: -o-transform 0.3s, opacity .3s;
		transition: transform 0.3s, opacity .3s;
		-webkit-transform: scale(1.01);
		-ms-transform: scale(1.01);
		-o-transform: scale(1.01);
		transform: scale(1.01);
	}
	a[href]:hover .hv_zoom {
		-webkit-transform: scale(1.05);
		-ms-transform: scale(1.05);
		-o-transform: scale(1.05);
		transform: scale(1.05);
	}
}



/* target
============================================================================================================ */
.target {
	display: block;
	position: relative;
	width: 1px;
	top: -60px;
}
.target.pt {
	top: -90px;
}
@media screen and (max-width: 768px) {
	.target {
		top: -50px;
	}
	.target.pt {
		top: -70px;
	}
}

/* w
============================================================================================================ */
.w {
	position: relative;
	max-width: 1170px;
	margin: 0 auto;
}
.w.m {
	width: 1090px;
}
.w::after {
	content: ""; display: table; clear: both;
}
.mw {
	min-width: 1200px;
}
@media screen and (max-width: 768px) {
	.w,
	.xw {
		padding: 0;
		width: auto !important;
		max-width: none !important;
	}
	.mw {
		min-width: 0;
	}
}





/* header
============================================================================================================ */
#header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	background-color: #fff;
	-webkit-box-shadow: 0 0 5px rgba(0,0,0,.2);
	box-shadow: 0 0 5px rgba(0,0,0,.2);
	z-index: 9999;
}
@media screen and (min-width: 769px), print {
	#header {
		height: 80px;
		-webkit-transform: translate3d(0, 0, 0);
		-ms-transform: translate3d(0, 0, 0);
		-o-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
	#header .logo {
		float: left;
		padding: 10px 20px;
	}
	#header .jump {
		float: right;
		margin: 10px;
	}
	#header .jumplink {
		border: 1px solid #8888ff;
		padding: 1px 8px;
		border-radius: 5px;
		box-shadow: 0px 0px 10px #c3e1ff;
		cursor: pointer;
	}
	#header .jumplink:hover {
		color:white;
		background-color:navy;
		text-shadow:0px 0px 3px #ffffff;
	}
	#header nav {
		float: right;
	}
	#header nav > ul > li {
		float: left;
	}
	#header nav > ul > li > a {
		position: relative;
		display: block;
		height: 80px;
		padding: 0 30px;
		font-size: 1.6rem;
		text-decoration: none;
		text-align: center;
		font-weight: bold;
	}
	#header nav > ul > li > a > * {
		display: block;
		position: relative;
		top: 50%;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		-o-transform: translateY(-50%);
		transform: translateY(-50%);
	}

	#header nav > ul > li > a::before {
		content: "";
		position: absolute;
		right: 30px;
		left: 30px;
		top: 50%;
		margin-top: 15px;
		border-bottom: 2px solid #0063c5;
		opacity: 0;
		pointer-events: none;
		-webkit-transition: -webkit-transform .2s, opacity .2s;
		-o-transition: -o-transform .2s, opacity .2s;
		transition: transform .2s, opacity .2s;
		-webkit-transform: translateY(4px);
		-ms-transform: translateY(4px);
		-o-transform: translateY(4px);
		transform: translateY(4px);
	}
	#header nav > ul > li > a:hover::before,
	#header nav > ul > li > a.current::before {
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		-o-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
	#header nav > ul > li:not(.access) > a span::after {
		content: "";
		position: absolute;
		top: 50%;
		right: -20px;
		width: 10px;
		height: 10px;
		margin-top: -6px;
		border-bottom: 3px solid #0063c5;
		border-right: 3px solid #0063c5;
		-webkit-transform: scaleY(.8) rotate(45deg);
		-ms-transform: scaleY(.8) rotate(45deg);
		-o-transform: scaleY(.8) rotate(45deg);
		transform: scaleY(.8) rotate(45deg);
	}

	#header nav ul li.access {
		position: relative;
		margin-left: 30px;
	}
	#header nav ul li.access::before {
		content: "";
		position: absolute;
		top: 0;
		right: -20px;
		bottom: 0;
		left: 0;
		background-color: #0063c5;
		-webkit-transform-origin: 0;
		-moz-transform-origin: 0;
		-ms-transform-origin: 0;
		-o-transform-origin: 0;
		transform-origin: 0;
		-webkit-transform: skewX(20deg);
		-ms-transform: skewX(20deg);
		-o-transform: skewX(20deg);
		transform: skewX(20deg);
	}
	#header nav ul li.access a {
		padding-right: 40px;
		padding-left: 80px;
		color: #fff;
	}
	#header nav ul li.access a::before {
		right: 40px;
		border-color: #fff;
	}
	#header nav ul li.access a::after {
		content: "";
		position: absolute;
		left: 45px;
		top: 50%;
		width: 20px;
		height: 28px;
		margin-top: -14px;
		background: url(../images/head/ico_access.png) no-repeat;
		-webkit-background-size: 20px;
		background-size: 20px;
	}
	#header nav ul div.access2 a::after {
		background: none;
	}



	#header nav .has_dp > a {
		position: relative;
		overflow: hidden;
	}
	#header nav .has_dp > a::after {
		content: "";
		position: absolute;
		bottom: -40px;
		left: 50%;
		-webkit-transform-origin: 0 0;
		-moz-transform-origin: 0 0;
		-ms-transform-origin: 0 0;
		-o-transform-origin: 0 0;
		transform-origin: 0 0;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
		width: 30px;
		height: 30px;
		background-color: #0058ba;
	}

	#header nav .dp {
		position: absolute;
		top: 80px;
		pointer-events: none;
		overflow: hidden;
		font-weight: bold;
	}
	#header nav .dp.raceinfo {
		/* right: 20px; */
		right: 250px;
	}
	#header nav .dp.racedata {
		right: 350px;
	}
	#header nav .dp.vote {
		right: 200px;
	}
	#header nav .dp.guide {
		right: 20px;
	}
	#header nav .dp.access2 {
		right: 0px;
	}

	#header nav .dp > * {
		display: table;
		padding: 30px 0;
		margin: auto;
		background-color: rgba(0,88,186,.95);
		color: #fff;
		font-size: 1.4rem;
		opacity: 0;
		-webkit-transform: translateY(-30px);
		-ms-transform: translateY(-30px);
		-o-transform: translateY(-30px);
		transform: translateY(-30px);
	}
	#header nav .dp > * > * {
		display: table-cell;
		vertical-align: middle;
	}
	#header nav .dp a {
		color: #fff;
		text-decoration: none;
	}
	#header nav .dp a:hover {
		text-decoration: underline;
	}
	#header nav .dp .name {
		padding: 0 50px;
		border-right: 1px solid #287dd0;
		font-size: 2.4rem;
	}
	#header nav .dp .nav {
		padding-left: 30px;
		padding-right: 30px;
	}
	#header nav .dp .nav > ul {
		float: left;
		min-width: 250px;
	}
	#header nav .dp.guide .nav > ul {
		min-width: 250px;
	}
	#header nav .dp .nav > ul + ul {
		margin-left: 30px;
	}
	#header nav .dp .nav a {
		position: relative;
		display: block;
		padding: 5px 15px;
	}
	#header nav .dp .nav a::before {
		content: "";
		position: absolute;
		top: 50%;
		right: 20px;
		width: 8px;
		height: 8px;
		margin-top: -5px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#header nav .dp .nav a[target="_blank"]::before {
		content: url(../images/head/mov-extlink.png);
		right: 25px;
		margin-top: -10px;
		border-top: 0;
		border-right: 0;
		-webkit-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	#header nav .dp .nav > ul > li > a {
		border: 1px solid #3382d1;
		background-color: #1a73cb;
	}
	#header nav .dp .nav > ul ul {
		padding-left: 30px;
	}
	#header nav .dp .nav > ul ul ul {
		border-top: 1px solid #146bc5;
	}
	#header nav .dp .nav > ul ul li {
		border-bottom: 1px solid #146bc5;
	}
	#header nav .dp .nav > ul ul li:last-child {
		border-bottom: 0;
	}
	#header nav .dp .nav > ul ul li a::before {
		opacity: .5;
	}

	#header nav .has_dp.db_show > a::after {
		bottom: -20px;
	}
	#header nav .has_dp.db_show .dp {
		pointer-events: auto;
		height: auto;
		z-index: 5;
	}
	#header nav .has_dp.db_show .dp > * {
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		-o-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}

	#header nav .access > a::after {
		-webkit-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	#header nav .dp.access2 div.name {
		white-space:nowrap;
	}
}
@media print {
	#header {
		position: absolute;
	}
}
@media screen and (min-width: 769px) {
	/* height low
	------------------------------------------------------------- */
	body.move #header,
	body.move #header h1 {
		-webkit-transition: height 0.4s, padding 0.4s, background 0.4s, -webkit-box-shadow 0.4s;
		-o-transition: height 0.4s, padding 0.4s, background 0.4s, box-shadow 0.4s;
		transition: height 0.4s, padding 0.4s, background 0.4s, box-shadow 0.4s;
	}
	body.move #header .dp,
	body.move #header .dp > *,
	body.move #header .has_dp > a::after {
		-webkit-transition: bottom 0.3s, top 0.4s, opacity 0.4s, -webkit-transform 0.4s;
		-o-transition: bottom 0.3s, top 0.4s, opacity 0.4s, -o-transform 0.4s;
		transition: bottom 0.3s, top 0.4s, opacity 0.4s, transform 0.4s;
	}
	body.move #header nav > ul > li > a {
		transition: height 0.4s;
	}
	body.scroll #header,
	body.scroll #header nav > ul > li > a {
		height: 60px;
	}
	body.scroll #header h1 {
		padding-top: 0;
		padding-bottom: 0;
	}
	body.scroll #header .dp {
		top: 60px;
	}
}

@media screen and (max-width: 768px) {
	#header {
		height: 50px;
	}
	#header .logo {
	}
	#header .logo a {
		display: block;
		width: 145px;
		height: 50px;
		background: url(../images/head/logo_sp.png) no-repeat 50%;
		-webkit-background-size: 115px;
		background-size: 115px;
	}
	#header .logo a img {
		display: none;
	}

	#header .nav_btn {
		position: absolute;
		right: 0;
		top: 0;
		width: 60px;
		height: 50px;
		z-index: 10;
	}
	#header .nav_btn a {
		position: relative;
		display: block;
		height: 50px;
	}
	#header .nav_btn:before,
	#header .nav_btn a:before,
	#header .nav_btn a:after {
		content: "";
		position: absolute;
		left: 50%;
		top: 50%;
		width: 26px;
		margin-top: -1px;
		margin-left: -13px;
		border-top: 2px solid #0063c5;
		-webkit-transition: all 0.2s;
		-o-transition: all 0.2s;
		transition: all 0.2s;
	}
	#header .nav_btn a:before {
		-webkit-transform: translateY(-7px);
		-ms-transform: translateY(-7px);
		-o-transform: translateY(-7px);
		transform: translateY(-7px);
	}
	#header .nav_btn a:after {
		-webkit-transform: translateY(7px);
		-ms-transform: translateY(7px);
		-o-transform: translateY(7px);
		transform: translateY(7px);
	}
	#header .nav_close {
		position: fixed;
		top: 50px;
		right: 0;
		left: 0;
		background-color: rgba(0,0,0,.3);
		opacity: 0;
		pointer-events: none;
		z-index: 8;
	}

	/* open */
	#header.open .nav_btn:before {
		opacity: 0;
	}
	#header.open .nav_btn a:before {
		-webkit-transform: translateY(0) rotate(45deg);
		-ms-transform: translateY(0) rotate(45deg);
		transform: translateY(0) rotate(45deg);
	}
	#header.open .nav_btn a:after {
		-webkit-transform: translateY(0) rotate(-45deg);
		-ms-transform: translateY(0) rotate(-45deg);
		transform: translateY(0) rotate(-45deg);
	}
	#header.open .nav_close {
		opacity: 1;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		pointer-events: auto;
	}

	/* showed */
	#header.showed .nav_close {
		bottom: 0;
		-webkit-transition: opacity .3s;
		-o-transition: opacity .3s;
		transition: opacity .3s;
	}


	#header nav {
		position: fixed;
		top: 50px;
		bottom: 0;
		right: 0;
		width: 280px;
		background-color: #0063c5;
		-webkit-transform: translateX(110%);

		-ms-transform: translateX(110%);
		-o-transform: translateX(110%);
		transform: translateX(110%);
		-webkit-box-shadow: 0 0 10px rgba(0,0,0,.2);
		box-shadow: 0 0 10px rgba(0,0,0,.2);
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		z-index: 8400;
	}
	#header nav > * {
		height: 100%;
		overflow-y: auto;
		padding-bottom: 40px;
	}

	/* open */
	#header.open nav {
		-webkit-transform: translateX(0%);
		-ms-transform: translateX(0%);
		-o-transform: translateX(0%);
		transform: translateX(0%);
	}
	/* showed */
	#header.showed nav {
		-webkit-transition: -webkit-transform 0.3s;
		-o-transition: -o-transform 0.3s;
		transition: transform 0.3s;
	}

	#header nav li {
		border-bottom: 1px solid rgba(255,255,255,.5);
	}
	#header nav a {
		position: relative;
		display: block;
		padding: 15px;
		font-size: 1.5rem;
		line-height: 1.3;
		text-decoration: none;
		color: #fff;
	}
	#header nav a::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 20px;
		width: 8px;
		height: 8px;
		margin-top: -3px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	/* #header nav a[target="_blank"]::after {
		right: 25px;
		content: url(../images/head/test3.png);
		margin-top: -10px;
		border-top: 0;
		border-right: 0;
		-webkit-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	} */

	#header nav .has_dp > a::after {
		-webkit-transform: translateY(-2px) rotate(135deg);
		-ms-transform: translateY(-2px) rotate(135deg);
		-o-transform: translateY(-2px) rotate(135deg);
		transform: translateY(-2px) rotate(135deg);
		-webkit-transition: -webkit-transform .3s;
		-o-transition: -o-transform .3s;
		transition: transform .3s;
	}
	#header nav .has_dp > a.open::after {
		-webkit-transform: translateY(0) rotate(315deg);
		-ms-transform: translateY(0) rotate(315deg);
		-o-transform: translateY(0) rotate(315deg);
		transform: translateY(0) rotate(315deg);
	}

	#header nav .dp {
		position: relative;
		overflow: hidden;
		-webkit-transition: height .4s;
		-o-transition: height .4s;
		transition: height .4s;
		height: 0;
		background-color: #fff;
	}
	#header nav .dp .name {
		display: none;
	}
	#header nav .dp a {
		padding: 12px 15px;
		font-size: 1.5rem;
		line-height: 1.3;
		color: #0058ba;
		background-color: #ebf3fa;
		font-weight: bold;
	}
	#header nav .dp a::after {
		border-color: #0058ba;
	}
	#header nav .dp li {
		border-bottom: 1px solid rgba(0,0,0,.1);
	}
	#header nav .dp li:last-child {
		border-bottom: 0;
	}
	#header nav .dp li ul {
		border-top: 1px solid rgba(0,0,0,.1);
	}
	#header nav .dp .nav > ul + ul {
		border-top: 1px solid rgba(0,0,0,.1);
	}
	#header nav .dp .nav > ul > li ul a {
		padding-left: 30px;
		font-size: 1.3rem;
		color: #000;
		font-weight: normal;
		background-color: #fff;
	}
	#header nav .dp .nav > ul > li ul ul a {
		padding-left: 60px;
	}
	#header nav .dp .nav > ul > li ul a::after {
		border-color: #000;
		opacity: .3;
	}


	#header .sp_access {
		overflow: hidden;
		position: absolute;
		right: 60px;
		top: 50%;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		-o-transform: translateY(-50%);
		transform: translateY(-50%);
		z-index: 10;
	}
	#header .sp_access::before {
		content: "";
		position: absolute;
		top: 0;
		right: -20px;
		bottom: 0;
		left: 0;
		background-color: #0063c5;
		-webkit-transform-origin: 0 0;
		-moz-transform-origin: 0 0;
		-ms-transform-origin: 0 0;
		-o-transform-origin: 0 0;
		transform-origin: 0 0;
		-webkit-transform: skewX(20deg);
		-ms-transform: skewX(20deg);
		-o-transform: skewX(20deg);
		transform: skewX(20deg);
	}
	#header .sp_access a {
		display: block;
		padding: 10px 15px 10px 20px;
		font-size: 1.1rem;
		line-height: 1.5;
		color: #fff;
	}
	#header .sp_access a > span {
		position: relative;
		display: inline-block;
		padding-left: 20px;
	}
	#header .sp_access a > span::after {
		content: "";
		position: absolute;
		left: 0;
		top: 50%;
		width: 14px;
		height: 28px;
		margin-top: -14px;
		background: url(../images/head/ico_access.png) no-repeat 50%;
		-webkit-background-size: 100%;
		background-size: 100%;
	}
}
@media screen and (max-width: 370px) {
	#header .logo a {
		width: 130px;
	}
	#header .nav_btn {
		width: 50px;
	}
	#header .sp_access {
		right: 55px;
	}
	#header .sp_access a {
		font-size: 1rem;
	}
}


/* footer
============================================================================================================ */
#footer {
	position: relative;
	margin-top: 120px;
	font-size: 1.5rem;
	text-align: center;
	z-index: 100;
}
@media screen and (min-width: 769px), print {
	#footer {
		padding-top: 50px;
		background-color: #f2f2f2;
	}
}
@media screen and (max-width: 768px) {
	#footer {
		margin-top: 30px;
	}
}
footer .copyright{
	background-color: #0063c5;
	padding: 25px;
	font-size: 1.4rem;
	line-height: 1.4;
	color: #fff;
	letter-spacing: 1px;
}
footer .copyright a{
	color: #fff;
	text-decoration: none;
}
footer .copyright a:hover{
	text-decoration: underline;
}
footer .copyright ul{
	letter-spacing: -.4em;
	margin-bottom:30px;
}
footer .copyright ul li{
	letter-spacing: normal;
	display:inline-block;
	padding-right:15px;
	margin-right:15px;
	border-right:1px solid #fff;
}
footer .copyright ul li:last-child{
	padding-right:0;
	margin-right:0;
	border-right:0;
}
@media screen and (max-width: 370px) {
	footer .copyright ul li{
		display:block;
		padding-right:0;
		margin-right:0;
		border-right:0;
	}
}

#pageLink{
	text-align: center;
	background-color:#f2f2f2;
	padding: 10px 0;
}
#pageLink ul{
	letter-spacing: -.4em;
}
#pageLink ul li{
	letter-spacing: normal;
	display:inline-block;
}
#pageLink ul li a{
	display: block;
	font-weight:bold;
	background-color: #0063c5;
	width:300px;
	height:50px;
	line-height:50px;
	color:#fff;
	text-decoration:none;
}
#pageLink ul li a:hover{
	opacity: .8;
}
#pageLink ul li{
	margin-right:10px;
}
#pageLink ul li:last-child{
	margin-right:0;
}


/* nav
------------------------------------------------------------- */
@media screen and (max-width: 768px) {
	#footer nav {
		position: relative;
		font-size: 1.3rem;
		z-index: 2;
	}
	#footer nav a {
		position: relative;
		display: block;
		padding: 10px 20px;
		text-align: left;
		text-decoration: none;
	}
	#footer nav .gnav a {
		border-bottom: 1px solid #f2f2f2;
	}
	#footer nav .gnav a::before {
		content: "";
		position: absolute;
		top: 50%;
		right: 20px;
		width: 8px;
		height: 8px;
		margin-top: -5px;
		border-top: 2px solid;
		border-right: 2px solid;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#footer nav .access {
		position: relative;
		overflow: hidden;
		float: right;
	}
	#footer nav .access::before {
		content: "";
		position: absolute;
		top: 0;
		right: -20px;
		bottom: 0;
		left: 0;
		background-color: #0063c5;
		-webkit-transform-origin: 0 0;
		-moz-transform-origin: 0 0;
		-ms-transform-origin: 0 0;
		-o-transform-origin: 0 0;
		transform-origin: 0 0;
		-webkit-transform: skewX(20deg);
		-ms-transform: skewX(20deg);
		-o-transform: skewX(20deg);
		transform: skewX(20deg);
	}
	#footer nav .access li a {
		padding-left: 30px;
		color: #fff;
	}
	#footer nav .access li a > span {
		position: relative;
		display: inline-block;
		padding-left: 20px;
	}
	#footer nav .access li a > span::after {
		content: "";
		position: absolute;
		left: 0;
		top: 50%;
		width: 14px;
		height: 28px;
		margin-top: -14px;
		background: url(../images/head/ico_access.png) no-repeat 50%;
		-webkit-background-size: 100%;
		background-size: 100%;
	}
}
@media screen and (max-width: 370px) {
	#footer nav a {
		padding: 10px 15px;
	}
	#footer nav .access li a {
		padding-left: 20px;
		font-size: 1.2rem;
	}
}

/* link
------------------------------------------------------------- */
@media screen and (min-width: 769px), print {
	#footer .link {
		position: absolute;
		right: 25px;
		bottom: 25px;
	}
	#footer .link a {
		color: #fff;
	}
}
@media screen and (max-width: 768px) {
	#footer .link {
		margin-bottom: 20px;
		padding: 15px 20px;
		text-align: left;
		font-size: 1.1rem;
	}
	#footer .link a {
		color: #333333;
	}
}
@media screen and (max-width: 370px) {
	#footer .link {
		padding-left: 15px;
		font-size: 1rem;
	}
}


/* img
------------------------------------------------------------- */
#footer .img {
	position: relative;
	background-repeat: no-repeat;
	background-position: 50%;
	-webkit-background-size: cover;
	background-size: cover;
}
#footer .img::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUlIiBzdG9wLWNvbG9yPSIjZmZmZmZmIiBzdG9wLW9wYWNpdHk9IjEiLz4KICAgIDxzdG9wIG9mZnNldD0iNjAlIiBzdG9wLWNvbG9yPSIjZmZmZmZmIiBzdG9wLW9wYWNpdHk9IjAiLz4KICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
	background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgb(3, 0, 0) 5%, rgba(255,255,255,0) 60%, rgba(255,255,255,0) 100%);
	background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 5%,rgba(255,255,255,0) 60%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 5%,rgba(255,255,255,0) 60%,rgba(255,255,255,0) 100%);
}
@media screen and (min-width: 769px), print {
	#footer .img {
		height: 560px;
		background-image: url(../images/foot/foot_bg.jpg);
	}
}
@media screen and (max-width: 768px) {
	#footer .img {
		height: 280px;
		background-image: url(../images/foot/foot_bg_sp.jpg);
	}
	#footer .img p {
		position: relative;
		text-align: center;
		z-index: 5;
	}
}



/* copyright
------------------------------------------------------------- */
#footer small {
	display: block;
	background-color: #0063c5;
	padding: 25px;
	font-size: 1.4rem;
	color: #fff;
	letter-spacing: 1px;
}
@media screen and (max-width: 768px) {
	#footer small {
		padding: 15px 0;
		font-size: 1.2rem;
		letter-spacing: 0;
	}
}
@media screen and (max-width: 370px) {
	#footer small {
		font-size: 1.1rem;
	}
}




/* ページトップ
------------------------------------------------------------- */
#pagetop a {
	display: block;
	position: relative;
	background-color: #0063c5;
	color: #fff;
	text-align: center;
	font-weight: bold;
	line-height: 20px;
}
#pagetop a span {
	position: relative;
	display: inline-block;
	padding-left: 22px;
}
#pagetop a span::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 10px;
	height: 10px;
	margin: -3px 0 0;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
@media screen and (min-width: 769px) {
	#pagetop {
		position: absolute;
		overflow: hidden;
		top: 0;
		right: 0;
		width: 260px;
		height: 50px;
		z-index: 100;
	}
	#pagetop a {
		overflow: hidden;
		position: absolute;
		width: 260px;
		right: 0;
		height: 50px;
		padding: 15px 0;
		-webkit-transition: right 0.3s, background 0.2s;
		-o-transition: right 0.3s, background 0.2s;
		transition: right 0.3s, background 0.2s;
	}
}
@media screen and (max-width: 768px) {
	#pagetop a {
		height: 40px;
		padding: 10px 0;
		font-size: 1.2rem;
	}
}






/* container
============================================================================================================ */
#container {
	position: relative;
	padding-top: 80px;
	font-size: 1.5rem;
	line-height: 2;
}
@media screen and (max-width: 768px) {
	#container {
		padding-top: 50px;
		font-size: 1.3rem;
	}
}






/* ===================================================================================================================

	共通ブロック

=================================================================================================================== */

/* topics_block
============================================================================================================ */
.topics_block_before {
	padding-bottom: 300px;
}
.topics_block_before > * {
	position: relative;
	z-index: 10;
}
.topics_block {
	position: relative;
	overflow: hidden;
	margin-top: -360px;
	padding: 300px 0 90px;
}
.topics_block > * {
	position: relative;
	z-index: 3;
}
.topics_block .line {
	position: absolute;
	top: 170px;
	right: 0;
	left: 0;
	height: 60px;
		background: #004d9a;
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIzMCUiIHN0b3AtY29sb3I9IiMwMDRkOWEiIHN0b3Atb3BhY2l0eT0iMSIvPgogICAgPHN0b3Agb2Zmc2V0PSIzMCUiIHN0b3AtY29sb3I9IiMwMDRkOWEiIHN0b3Atb3BhY2l0eT0iMSIvPgogICAgPHN0b3Agb2Zmc2V0PSI2MCUiIHN0b3AtY29sb3I9IiMwMDcwZGYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background: -moz-linear-gradient(left, #004d9a 30%, #004d9a 30%, #0070df 60%);
	background: -webkit-linear-gradient(left, #004d9a 30%,#004d9a 30%,#0070df 60%);
	background: linear-gradient(to right, #004d9a 30%,#004d9a 30%,#0070df 60%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#004d9a', endColorstr='#0070df',GradientType=1 );
	-webkit-transform: skewY(7deg);
	-ms-transform: skewY(7deg);
	-o-transform: skewY(7deg);
	transform: skewY(7deg);
	z-index: 1;
}
.topics_block .bg {
	position: absolute;
	overflow: hidden;
	top: 200px;
	right: 0;
	left: 0;
	bottom: -200px;
	background-color: #000;
	-webkit-transform: skewY(8deg);
	-ms-transform: skewY(8deg);
	-o-transform: skewY(8deg);
	transform: skewY(8deg);
	z-index: 2;
}
.topics_block .bg::before {
	content: "";
	position: absolute;
	top: -200px;
	right: 0;
	left: 0;
	bottom: 200px;
	background: url(../images/parts/topics_bg.jpg) no-repeat 50% 100%;
	-webkit-background-size: cover;
	background-size: cover;
	-webkit-transform: skewY(-8deg);
	-ms-transform: skewY(-8deg);
	-o-transform: skewY(-8deg);
	transform: skewY(-8deg);
}
@media screen and (max-width: 768px) {
	.topics_block {
		padding: 120px 0 40px;
	}
	.topics_block .line {
		top: 70px;
	}
	.topics_block .bg {
		top: 80px;
	}
	.topics_block .bg::before {
		top: -80px;
	}
}



.topics_block .list ul {
}
.topics_block .list ul li {
	float: left;
	padding: 5px 15px;
}
.topics_block .list ul a {
	position: relative;
	display: block;
	width: 340px;
	padding-bottom: 30px;
	background-color: #f5f5f5;
	text-decoration: none;
	font-size: 1.3rem;
	line-height: 1.6;
	color: #666666;
}
.topics_block .list ul a > * {
	display: block;
}
.topics_block .list ul a .cat {
	position: absolute;
	top: -5px;
	left: -5px;
	width: 100px;
	height: 100px;
	overflow: hidden;
	letter-spacing: 1px;
}
.topics_block .list ul a .cat::before {
	content: "";
	position: absolute;
	right: -100%;
	left: -100%;
	top: 40%;
	height: 20%;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
	z-index: 1;
}
.topics_block .list ul a .cat > span {
	position: absolute;
	bottom: 50%;
	right: -100%;
	left: -100%;
	color: #fff;
	padding: 8px 0;
	font-size: 2rem;
	line-height: 1.5;
	text-align: center;
	-webkit-transform-origin: 50% 100%;
	-moz-transform-origin: 50% 100%;
	-ms-transform-origin: 50% 100%;
	-o-transform-origin: 50% 100%;
	transform-origin: 50% 100%;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
	z-index: 3;
}

.topics_block .list ul a .cat.race::before,
.topics_block .list ul a .cat.race > span {
	background-color: #0063c5;
}
.topics_block .list ul a .cat.event::before,
.topics_block .list ul a .cat.event > span {
	background-color: #b4c311;
}
.topics_block .list ul a .cat.other::before,
.topics_block .list ul a .cat.other > span {
	background-color: #bebebe;
}
.topics_block .list ul a .cat.basanchi::before,
.topics_block .list ul a .cat.basanchi > span {
	background-color: #bebebe;
}
.topics_block .list ul a .cat.story::before,
.topics_block .list ul a .cat.story > span {
	background-color: #00a2c5;
}
.topics_block .list ul a .cat.gourmet::before,
.topics_block .list ul a .cat.gourmet > span {
	background-color: #c54a00;
}


.topics_block .list ul a .cat {
}
.topics_block .list ul a .ph {
	position: relative;
	padding: 20px;
	background-color: #fff;
	z-index: 2;
}
.topics_block .list ul a .title_wrap {
	display: table;
	height: 60px;
	margin: 15px 20px;
	font-size: 1.6rem;
	line-height: 1.4;
	color: #a18100;
	font-weight: bold;
}
.topics_block .list ul a .title_wrap > * {
	display: table-cell;
	vertical-align: middle;
}
.topics_block .list ul a .title_wrap .countdown {
	width: 70px;
}
.topics_block .list ul a .title_wrap .countdown > * {
	display: table;
	width: 60px;
	height: 60px;
	background-color: #a18100;
	border-radius: 100%;
	color: #fff;
	text-align: center;
	font-size: 1rem;
	line-height: 1.2;
}
.topics_block .list ul a .title_wrap .countdown > * > * {
	display: table-cell;
	vertical-align: middle;
}
.topics_block .list ul a .title_wrap .countdown .day {
	font-size: 1.6rem;
}
.topics_block .list ul a .excerpt {
	margin: 0 20px;
}

.topics_block .more {
	margin-top: 45px;
}

@media screen and (min-width: 769px), print {
	.topics_block .list ul {
		margin: 0 -15px;
	}
	.topics_block .list ul a:hover .title {
		text-decoration: underline;
	}
}
@media screen and (max-width: 768px) {
	.topics_block .list ul li {
		padding: 3px 10px;
	}
	.topics_block .list ul a {
		width: 220px;
		padding-bottom: 20px;
		font-size: 1rem;
		-webkit-transition: opacity .2s;
		-o-transition: opacity .2s;
		transition: opacity .2s;
		opacity: .5;
	}
	.topics_block .list ul .slick-center a {
		opacity: 1;
	}
	.topics_block .list ul a .cat {
		top: -3px;
		left: -3px;
		width: 60px;
		height: 60px;
	}
	.topics_block .list ul a .cat > span {
		padding: 5px 0;
		font-size: 1.2rem;
	}

	.topics_block .list ul a .ph {
		padding: 10px;
	}
	.topics_block .list ul a .title_wrap {
		position: relative;
		height: 40px;
		margin: 8px 10px;
		font-size: 1.3rem;
	}
	.topics_block .list ul a .title_wrap .countdown {
		width: 55px;
	}
	.topics_block .list ul a .title_wrap .countdown > * {
		position: absolute;
		top: 50%;
		-webkit-transform-origin: 0;
		-moz-transform-origin: 0;
		-ms-transform-origin: 0;
		-o-transform-origin: 0;
		transform-origin: 0;
		-webkit-transform: translateY(-50%) scale(.8);
		-ms-transform: translateY(-50%) scale(.8);
		-o-transform: translateY(-50%) scale(.8);
		transform: translateY(-50%) scale(.8);
	}
	.topics_block .list ul a .excerpt {
		margin: 0 10px;
	}

	.topics_block .slick_arrow.l {
		left: auto;
		right: 50%;
		margin-right: 120px;
	}
	.topics_block .slick_arrow.r {
		right: auto;
		left: 50%;
		margin-left: 120px;
	}

	.topics_block .more {
		margin-top: 25px;
	}

}



/* news_pickup_block
============================================================================================================ */
.news_pickup_block {
	position: relative;
	padding: 100px 0;
}
.news_pickup_block .news_block {
	position: relative;
}
.news_pickup_block .news_block > header {
	border: 3px solid #0063c5;
	text-align: center;
	font-size: 2rem;
	line-height: 1.2;
}
.news_pickup_block .news_block > header span {
	display: block;
}
.news_pickup_block .news_block > header .ff_en {
	margin-top: 5px;
	font-size: 3rem;
}
@media screen and (min-width: 769px), print {
	.news_pickup_block {
		background: url(../images/parts/news_pickup_block_bg.png) no-repeat 50% 0;
	}
	.news_pickup_block .news_block {
		min-height: 250px;
		padding-left: 300px;
	}
	.news_pickup_block .news_block > header {
		position: absolute;
		top: 0;
		left: 0;
		display: table;
		width: 250px;
		height: 250px;
	}
	.news_pickup_block .news_block > header > * {
		display: table-cell;
		vertical-align: middle;
	}
}
@media screen and (max-width: 768px) {
	.news_pickup_block {
		padding: 30px 0;
		background: url(../images/parts/news_pickup_block_bg_sp.png) no-repeat 50% 0;
		-webkit-background-size: 500px;
		background-size: 500px;
	}
	.news_pickup_block .news_block > header {
		margin-bottom: 20px;
		padding: 15px 0;
		border-width: 2px;
		font-size: 1.4rem;
	}
	.news_pickup_block .news_block > header .ff_en {
		margin-top: 3px;
		font-size: 2rem;
	}
}


/* pickup_bnr_block
============================================================================================================ */
.news_pickup_block .news_block + .pickup_bnr_block {
	margin-top: 50px;
}
.pickup_bnr_block .bnr {
	position: relative;
}
.pickup_bnr_block .bnr + .bnr {
	margin-top: 50px;
}
.pickup_bnr_block .bnr li {
	float: left;
	padding: 0 15px;
}
@media screen and (min-width: 769px), print {
	.pickup_bnr_block .bnr ul {
		margin: 0 -15px;
	}
}
@media screen and (max-width: 768px) {
	.news_pickup_block .news_block + .pickup_bnr_block {
		margin-top: 30px;
	}
	.pickup_bnr_block .bnr + .bnr {
		margin-top: 0;
	}
	.pickup_bnr_block .bnr ul {
		margin: 0 -5px;
	}
	.pickup_bnr_block .bnr li {
		width: 50%;
		padding: 0 5px 10px;
	}
	.pickup_bnr_block .bnr.bnr_column2 li {
		width: 100%;
	}
	.pickup_bnr_block .slick_arrow {
		display: none !important;
	}
}


/* sns_block
============================================================================================================ */
.sns_block {
	padding: 100px 0;
}
.sns_block .ph {
	margin-top: 40px;
	height: 470px;
	background: url(../images/parts/sns_ph_dummy.jpg) repeat-x 50%;
}
@media screen and (max-width: 768px) {
	.sns_block {
		padding: 50px 0 30px;
	}
	.sns_block .ph {
		margin-top: 20px;
		height: 235px;
		-webkit-background-size: auto 235px;
		background-size: auto 235px;
	}
}



/* bottomBnrs
============================================================================================================ */
#bottomBnrs {
	position: relative;
	max-width: 1050px;
	margin: 100px auto 0;
}
#bottomBnrs li {
	padding: 0 5px;
}
#bottomBnrs img {
	border: 1px solid #f2f2f2;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}
@media screen and (min-width: 1500px) {
	#bottomBnrs {
		max-width: 1260px;
	}
}

@media screen and (max-width: 768px) {
	#bottomBnrs {
		margin-top: 30px;
	}
	#bottomBnrs li {
		float: left;
		width: 50%;
		padding: 0 5px 10px;
	}
	#bottomBnrs div.sp {
		padding: 0 20px;
	}
}





/* ===================================================================================================================

	パーツ

=================================================================================================================== */

/* title
============================================================================================================ */
/* page_title */
.page_title {
	position: relative;
	display: table;
	width: 100%;
	height: 320px;
	padding-top: 30px;
	background-position: 50%;
	background-repeat: no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
	text-align: center;
	font-weight: bold;
	color: #fff;
	font-size: 4rem;
	line-height: 1.3;
	letter-spacing: 1px;
}
.page_title > * {
	display: table-cell;
	vertical-align: middle;
}
.page_title .category {
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	transform: translateX(-50%);
	min-width: 300px;
	margin-bottom: 20px;
	padding-right: 50px;
	padding-left: 50px;
	font-size: 3rem;
	line-height: 60px;
	white-space: nowrap;
	z-index: 3;
}
.page_title .category::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	border-top: 60px solid #0063c5;
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	opacity: .8;
	z-index: -1;
}

.page-raceinfo .page_title {
	background-image: url(../../raceinfo/images/page_title_bg.jpg);
}

.page-racedata .page_title {
	background-image: url(../../raceinfo/images/page_title_bg.jpg);
}

.page-kaisai .page_title {
	background-image: url(../../kaisai/images/page_title_bg.jpg);
}
.page-guide .page_title {
	background-image: url(../../guide/images/page_title_bg.jpg);
}
.page-topics .page_title {
	background-image: url(../../topics/images/page_title_bg.jpg);
}
.page-hkj .page_title {
	background-image: url(../../hkj/images/page_title_bg.jpg);
}

@media screen and (max-width: 768px) {
	.page_title {
		height: 160px;
		padding-top: 20px;
		font-size: 2.4rem;
	}
	.page_title .category {
		min-width: 180px;
		margin-bottom: 15px;
		padding-right: 20px;
		padding-left: 20px;
		font-size: 1.8rem;
		line-height: 36px;
	}
	.page_title .category::before {
		border-width: 36px 10px 0 10px;
	}
}

/* has_en_title */
.has_en_title {
	margin-bottom: 40px;
	text-align: center;
	font-size: 2rem;
	line-height: 1.3;
}
.has_en_title .ff_en {
	display: block;
	margin-top: 5px;
	font-size: 3.6rem;
}

@media screen and (max-width: 768px) {
	.has_en_title {
		margin-bottom: 20px;
		font-size: 1.4rem;
	}
	.has_en_title .ff_en {
		font-size: 2.4rem;
	}
}


/* bdl_box_title */
.bdl_box_title {
	margin-bottom: 50px;
	padding: 20px;
	background-color: #fff9ef;
	border-left: 3px solid #0063c5;
	font-size: 2.4rem;
	line-height: 1.5;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.bdl_box_title {
		margin-bottom: 30px;
		padding: 10px;
		border-left-width: 2px;
		font-size: 1.8rem;
	}
}

/* m_center_title */
.m_center_title {
	margin-bottom: 30px;
	font-size: 3rem;
	line-height: 1.4;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.m_center_title {
		margin-bottom: 20px;
		font-size: 2rem;
	}
}



/* lead_txt */
.lead_txt {
	text-align: center;
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: bold;
}
.has_en_title + .lead_txt {
	margin-top: -10px;
}
@media screen and (max-width: 768px) {
	.lead_txt {
		font-size: 1.3rem;
	}
	.has_en_title + .lead_txt {
		margin-top: -5px;
	}
}



/* switch_tab
============================================================================================================ */
.switch_tab {
	position: relative;
	margin-bottom: 30px;
}
.switch_tab.has_bdb::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	border-bottom: 3px solid #f2f2f2;
}
.switch_tab li {
	float: left;
	margin-right: 1px;
}
.switch_tab li a {
	position: relative;
	display: block;
	padding: 0 40px 10px;
	font-weight: bold;
	text-decoration: none;
	color: #000000;
	line-height: 1.6;
}
.switch_tab li a::before {
	content: "";
	position: absolute;
	top: 6px;
	right: 10px;
	width: 10px;
	height: 10px;
	border-bottom: 3px solid #0063c5;
	border-right: 3px solid #0063c5;
	-webkit-transform: scaleY(0.8) rotate(45deg);
	-ms-transform: scaleY(0.8) rotate(45deg);
	-o-transform: scaleY(0.8) rotate(45deg);
	transform: scaleY(0.8) rotate(45deg);
}
.switch_tab li a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	border-bottom: 3px solid #0063c5;
	opacity: 0;
}
.switch_tab li a.current {
	color: #0063c5;
}
.switch_tab li a.current::before {
	opacity: 0;
}
.switch_tab li a.current::after {
	opacity: 1;
}
@media screen and (min-width: 769px), print {
	.switch_tab li a:hover {
		color: #0063c5;
	}
	.switch_tab li a:hover::after {
		opacity: 1;
	}
}
@media screen and (max-width: 768px) {
	.switch_tab {
		margin-bottom: 10px;
	}
	.switch_tab.has_bdb::before {
		border-bottom-width: 2px;
	}
	.switch_tab li {
		margin-right: 0;
	}
	.switch_tab li a {
		padding: 0 11px 8px;
		font-size: 1.1rem;
	}
	.switch_tab li a::before {
		top: 5px;
		right: 1px;
		width: 6px;
		height: 6px;
		border-bottom-width: 2px;
		border-right-width: 2px;
	}
	.switch_tab li a::after {
		border-bottom-width: 2px;
	}
}
@media screen and (max-width: 370px) {
	.switch_tab li a {
		padding-right: 8px;
		padding-left: 8px;
		font-size: 1rem;
	}
	.switch_tab li a::before {
		right: -1px;
	}
}





/* change_contents
============================================================================================================ */
.change_contents > * {
	display: none;
}
.change_contents > .current {
	display: block;
}




/* news_list
============================================================================================================ */
.news_list {
	font-size: 1.4rem;
}
.news_list li + li {
	border-top: 1px solid #f2f2f2;
}
.news_list a {
	position: relative;
	display: block;
	color: #333;
	padding: 15px 0;
	text-decoration: none;
	line-height: 1.5;
}
.news_list .cat span {
	display: inline-block;
	padding: 3px 5px;
	font-size: 1.1rem;
	line-height: 1.3;
	font-weight: bold;
	color: #fff;
	text-align: center;
}
.news_list .title {
	color: #000;
}

.news_list .cat .race {
	background-color: #0063c5;
}
.news_list .cat .event {
	background-color: #b4c311;
}
.news_list .cat .other {
	background-color: #bebebe;
}
.news_list .cat .basanchi {
	background-color: #519d63;
}
.news_list .cat .story {
	background-color: #00a2c5;
}
.news_list .cat .gourmet {
	background-color: #c54a00;
}
@media screen and (min-width: 769px), print {
	.news_list a {
		display: table;
		width: 100%;
	}
	.news_list a > * {
		display: table-cell;
		vertical-align: top;
	}
	.news_list .time {
		width: 6em;
		padding-top: 2px;
		white-space: nowrap;
	}
	.news_list .cat {
		width: 7em;
		padding-top: 2px;
	}
	.news_list .cat span {
		display: block;
	}
	.news_list .title {
		padding-left: 15px;
	}
	.news_list a:hover .title {
		text-decoration: underline;
	}
}
@media screen and (max-width: 768px) {
	.news_list {
		font-size: 1.3rem;
	}
	.news_list a {
		padding: 12px 0;
	}
	.news_list a .time {
		margin-right: 10px;
	}
	.news_list .cat span {
		width: 8em;
		padding: 2px 0;
		font-size: 1rem;
	}
	.news_list .title {
		display: block;
		margin-top: 7px;
	}
}





/* slick_arrow
============================================================================================================ */
.slick_arrow {
	position: absolute;
	top: 50%;
	width: 40px;
	height: 40px;
	margin-top: -20px;
	background-color: #0063c5;
	border: 2px solid #0063c5;
}
.slick_arrow::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 14px;
	height: 14px;
	margin-top: -7px;
	margin-left: -9px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.slick_arrow.l {
	left: -50px;
	-webkit-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	-o-transform: rotate(180deg);
	transform: rotate(180deg);
}
.slick_arrow.r {
	right: -50px;
}
.slick_arrow.white {
	background-color: #fff;
	border: 0;
}
.slick_arrow.white::after {
	border-color: #0063c5;
}
.slick_arrow.slick-disabled {
	opacity: .3;
	cursor: default;
}
@media screen and (min-width: 769px), print {
	.slick_arrow.large {
		width: 50px;
		height: 50px;
		margin-top: -25px;
	}
	.slick_arrow:not(.slick-disabled):hover {
		background-color: #fff;
	}
	.slick_arrow:not(.slick-disabled):hover::after {
		border-color: #0063c5;
	}
	.slick_arrow.white:not(.slick-disabled):hover {
		background-color: #0063c5;
	}
	.slick_arrow.white:not(.slick-disabled):hover::after {
		border-color: #fff;
	}
}
@media screen and (min-width: 1300px) {
	.slick_arrow.large_full {
		width: 50px;
		height: 50px;
		margin-top: -25px;
	}
	.slick_arrow.large_full.l {
		left: -80px;
	}
	.slick_arrow.large_full.r {
		right: -80px;
	}
}
@media screen and (max-width: 768px) {
	.slick_arrow {
		width: 30px;
		height: 30px;
		margin-top: -15px;
	}
	.slick_arrow.l {
		left: 0;
	}
	.slick_arrow.r {
		right: 0;
	}
}



/* halon_bar
============================================================================================================ */
.halon_bar {
	width: 882px;
	margin: auto;
	padding-top: 40px;
}
.halon_bar li {
	position: relative;
	float: left;
	width: 46px;
}
.halon_bar li > a {
	display: block;
	padding-bottom: 36px;
	text-decoration: none;
	color: #333333;
	background: url(../images/parts/halon_bar_bar.png) no-repeat 50% 100%;
	-webkit-background-size: 16px;
	background-size: 16px;
}
.halon_bar li .box {
	position: relative;
	display: block;
	height: 46px;
	padding-top: 10px;
	background-color: #fff;
	border: 2px solid #333333;
	border-radius: 100%;
	text-align: center;
	font-size: 1.3rem;
	line-height: 1;
	-webkit-transition: all .2s;
	-o-transition: all .2s;
	transition: all .2s;
	z-index: 3;
}
.halon_bar li.now::after {
	content: "";
	position: absolute;
	top: -28px;
	left: 5px;
	width: 50px;
	height: 34px;
	background: url(../images/parts/halon_bar_on.png) no-repeat;
	-webkit-background-size: 100%;
	background-size: 100%;
	-webkit-transition: opacity .2s;
	-o-transition: opacity .2s;
	transition: opacity .2s;
}

.halon_bar li .box::before {
	content: "";
	position: absolute;
	top: -3px;
	right: -3px;
	left: -3px;
	bottom: -3px;
	border-radius: 100%;
	background-color: #0063c5;
	-webkit-transition: opacity .2s;
	-o-transition: opacity .2s;
	transition: opacity .2s;
	opacity: 0;
	z-index: -1;
}
.halon_bar li .num {
	font-size: 2.3rem;
}
.halon_bar li + li {
	margin-left: 30px;
}
.halon_bar li + li::before {
	content: "";
	position: absolute;
	top: 18px;
	left: -15px;
	margin-left: -6px;
	width: 12px;
	height: 12px;
	background-color: #333333;
	border-radius: 100%;
	pointer-events: none;
}

.halon_bar li.current .box {
	background-color: #0063c5;
	border-color: #0063c5;
	color: #fff;
}
.halon_bar li.current .box::before,
.halon_bar li.current::after {
	opacity: 1;
}

.halon_bar.hmin li > a {
	padding-bottom: 13px;
	background-position: 50% 30px;
}

@media screen and (min-width: 769px), print {
	.halon_bar li:hover .box {
		background-color: #0063c5;
		border-color: #0063c5;
		color: #fff;
	}
	.halon_bar li:hover .box::before,
	.halon_bar li:hover::after {
		opacity: 1;
	}
}
@media screen and (max-width: 768px) {
	.halon_bar {
		width: 286px;
		padding-top: 0;
	}
	.halon_bar li {
		margin-top: 20px;
		width: 36px;
	}
	.halon_bar li > a {
		padding-bottom: 20px;
		-webkit-background-size: 10px;
		background-size: 10px;
	}
	.halon_bar li.now::after {
		top: -24px;
		right: -4px;
		width: 40px;
	}
	.halon_bar li .box {
		height: 36px;
		padding-top: 7px;
		font-size: 1rem;
	}
	.halon_bar li .num {
		font-size: 1.8rem;
	}
	.halon_bar li + li {
		margin-left: 14px;
	}
	.halon_bar li + li::before {
		top: 15px;
		left: -7px;
		margin-left: -3px;
		width: 6px;
		height: 6px;
	}
	.halon_bar li:nth-child(6n+1) {
		margin-left: 0;
	}
	.halon_bar li:nth-child(6n+1)::before {
		content: none;
	}

	.halon_bar.hmin li > a {
		padding-bottom: 10px;
		background-position: 50% 28px;
	}
}

.halon_bar li.househead {
	position: absolute;
	top: -28px;
	left: 5px;
	width: 50px;
	height: 34px;
	background: url(../images/parts/halon_bar_on.png) no-repeat;
}

/* sky_bg
============================================================================================================ */
.sky_bg {
	background: url(../images/parts/sky_bg.jpg) 50% 0;
}
@media screen and (max-width: 768px) {
	.sky_bg {
		-webkit-background-size: 200px;
		background-size: 200px;
	}
}

/* big_bnr
============================================================================================================ */
.big_bnr {
	padding: 70px 25px;
}
.topics_block_before .big_bnr {
	/*padding-bottom: 0;*/
}
.big_bnr a {
	position: relative;
	display: table;
	width: 100%;
	height: 250px;
	background: no-repeat 50%;
	-webkit-background-size: cover;
	background-size: cover;
	text-decoration: none;
	color: #fff;
	text-align: center;
	font-weight: bold;
	font-size: 4.2rem;
	line-height: 1.2;
	text-shadow: 0 0 10px rgba(0,0,0,.5);
}
.big_bnr a::before {
	content: "";
	position: absolute;
	bottom: 15px;
	right: 15px;
	width: 10px;
	height: 10px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.big_bnr a.no_arrow::before {
	content: none;
}
.big_bnr a > * {
	display: table-cell;
	vertical-align: middle;
}
.big_bnr a.raceinfo {
	background-image: url(../images/parts/big_bnr_raceinfo.jpg);
}
.big_bnr a.guide {
	background-image: url(../images/parts/big_bnr_guide.jpg);
}
.big_bnr a.grandchariot {
	background-image: url(../images/parts/big_bnr_grandchariot.jpg);
}


.big_bnr a.gourmet01 {
	background-image: url(../images/parts/big_bnr_gourmet01.jpg);
}
.big_bnr a.gourmet02 {
	background-image: url(../images/parts/big_bnr_gourmet02.jpg);
}
.big_bnr a.gourmet03 {
	background-image: url(../images/parts/big_bnr_gourmet03.jpg);
}
.big_bnr a.gourmet04 {
	background-image: url(../images/parts/big_bnr_gourmet04.jpg);
}

.big_bnr a.spot {
	background-image: url(../images/parts/big_bnr_spot.jpg);
}
.big_bnr a.spot > * {
	padding: 15px;
	vertical-align: bottom;
	text-align: left;
}
.big_bnr a.kuchidori {
	background-image: url(../images/parts/big_bnr_kuchidori.jpg);
}
.big_bnr a.umaca {
	background-color: #fbe82f;
}
@media screen and (min-width: 769px), print {
	.big_bnr li {
		float: left;
		width: 540px;
	}
	.big_bnr li + li {
		float: right;
	}

	.big_bnr a.spot {
		font-size: 3.6rem;
	}
	.big_bnr a.kuchidori {
		font-size: 6rem;
	}
	.big_bnr a.kuchidori .txt02 {
		margin-left: 100px;
	}
	.big_bnr a.kuchidori .txt03 {
		display: block;
		margin-top: 80px;
	}
}
@media screen and (max-width: 768px) {
	.big_bnr {
		padding: 30px 0;
	}
	.big_bnr li + li {
		margin-top: 15px;
	}
	.big_bnr a {
		height: 140px;
		font-size: 2rem;
	}
	.big_bnr a img {
		width: auto;
		max-height: 140px;
	}

	.big_bnr.sp_column2 {
		margin: 0 -5px;
	}
	.big_bnr.sp_column2 li {
		float: left;
		width: 50%;
		margin: 0 !important;
		padding: 0 5px;
	}
	.big_bnr.sp_column2 a {
		height: 80px;
		font-size: 1.6rem;
	}
	.big_bnr.sp_column2 a::before {
		bottom: 7px;
		right: 7px;
	}
	.big_bnr.sp_column2 a.spot > * {
		vertical-align: middle;
		text-align: center;
	}
	.big_bnr.sp_column2 a.kuchidori .txt03 {
		display: block;
	}
}

.big_bnr_group .big_bnr {
	padding-top: 0;
	padding-bottom: 0;
}
.big_bnr_group .big_bnr + .big_bnr {
	margin-top: 40px;
}
@media screen and (max-width: 768px) {
	.big_bnr_group .big_bnr + .big_bnr {
		margin-top: 15px;
	}
	.big_bnr_group .big_bnr.sp_column2 + .big_bnr.sp_column2 {
		margin-top: 10px;
	}
}


/* .local_nav
============================================================================================================ */
.local_nav {
	padding: 10px;
	background-color: #0063c5;
}
.local_nav ul {
	display: table;
	margin: auto;
}
.local_nav ul li {
	display: table-cell;
	padding: 0 5px;
	vertical-align: middle;
}
.local_nav ul li a {
	display: table;
	width: 150px;
	height: 50px;
	background-color: #def0fe;
	text-decoration: none;
	color: #000;
	font-weight: bold;
	text-align: center;
	line-height: 1.3;
}
.local_nav ul li a > span {
	display: table-cell;
	vertical-align: middle;
}

.local_nav ul li a.current {
	background-color: #fffcd3;
}
@media screen and (min-width: 769px), print {
	.local_nav ul li a:hover {
		background-color: #fffcd3;
	}
}








/* ul / ol
============================================================================================================ */
.point_li li {
	position: relative;
	padding-left: 1.2em;
}
.point_li li > span:first-child {
	position: absolute;
	top: 0;
	left: 0;
}

.dot_li > li {
	position: relative;
	padding-left: 1em;
}
.dot_li > li::before {
	content: "・";
	position: absolute;
	top: 0;
	left: 0;
}

.parentheses_li > li {
	position: relative;
	padding-left: 2.2em;
}
.parentheses_li > li > span:first-child {
	position: absolute;
	top: 0;
	left: 0;
}

.num_li {
	margin-left: 1.8em;
	list-style: decimal;
}
.alphabet_li {
	margin-left: 1.8em;
	list-style: lower-latin;
}

.mt_li > li + li {
	margin-top: .5em;
}



/* .box_btn
============================================================================================================ */
a.box_btn,
.box_btn a,
button.box_btn {
	display: block;
	width: 240px;
	max-width: 100%;
	padding: 5px 0;
	text-decoration: none;
	color: #fff;
	background-color: #ffbb37;
	text-align: center;
	font-weight: bold;
	font-size: 1.5rem;
}
.box_btn.center {
	margin: auto;
}
.box_btn.large {
	width: 320px;
	padding: 8px 0;
	font-size: 2rem;
}
.box_btn.xlarge {
	width: 360px;
	padding: 8px 0;
	font-size: 2.4rem;
}
.box_btn.navy {
	background-color: #002d62;
}
@media screen and (max-width: 768px) {
	a.box_btn,
	.box_btn a,
	button.box_btn {
		font-size: 1.3rem;
	}
	.box_btn.large,
	.box_btn.xlarge {
		font-size: 1.5rem;
	}
}

/* .select
============================================================================================================ */
select.select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	height: 42px;
	padding: 0 40px 0 1em;
	background-image: url(../images/parts/select_arrow.png);
	background-repeat: no-repeat;
	background-position: 100%;
	-webkit-background-size: 24px;
	background-size: 24px;
	border: 1px solid #ccc;
	font-size: 1.6rem;
}


/* .sp_scroll_table
============================================================================================================ */
@media screen and (max-width: 768px) {
	.sp_scroll_table {
		overflow: auto;
	}
	.sp_scroll_table::-webkit-scrollbar {
		height: 5px;
	}
	.sp_scroll_table::-webkit-scrollbar-track {
		background: #F1F1F1;
	}
	.sp_scroll_table::-webkit-scrollbar-thumb {
		background: #BCBCBC;
	}
	.sp_scroll_table .sp_pd {
		width: 914px;
		-webkit-box-sizing: content-box;
		-moz-box-sizing: content-box;
		box-sizing: content-box;
	}
	.sp_scroll_table table {
		width: 914px;
	}
}


/* movie_archive
============================================================================================================ */
.movie_archive > h1 {
	margin-bottom: 30px;
	font-size: 3rem;
	line-height: 1.4;
	text-align: center;
}
.movie_archive li {
	float: left;
}
.movie_archive li a {
	display: block;
	text-decoration: none;
	color: #333333;
	font-size: 1.6rem;
	line-height: 1.7;
}
.movie_archive li a span {
	display: block;
}
.movie_archive li a .ph {
	margin-bottom: 5px;
}
.movie_archive .btn {
	margin-top: 40px;
}
@media screen and (min-width: 769px), print {
	.movie_archive ul {
		display: table;
		margin: auto;
	}
	.movie_archive li {
		width: 336px;
		margin-left: 81px;
		margin-bottom: 20px;
	}
	.movie_archive li:nth-child(3n+1) {
		clear: both;
		margin-left: 0;
	}
}
@media screen and (max-width: 768px) {
	.movie_archive > h1 {
		margin-bottom: 20px;
		font-size: 2rem;
	}
	.movie_archive ul {
		margin: 0 -5px;
	}
	.movie_archive li {
		width: 50%;
		margin-bottom: 10px;
		padding: 0 5px;
	}
	.movie_archive li:nth-child(2n+1) {
		clear: both;
		margin-left: 0;
	}
	.movie_archive li a {
		font-size: 1.2rem;
		line-height: 1.6;
	}
	.movie_archive .btn {
		margin-top: 10px;
	}
}


/* .category_tab
============================================================================================================ */
.category_tab {
	margin: 50px 0;
}
.category_tab:last-child {
	margin-bottom: 0;
}
.category_tab ul {
	display: table;
	margin: auto;
}
.category_tab ul > * {
	display: table-cell;
	padding: 0 5px;
	vertical-align: middle;
}
.category_tab a {
	display: table;
	width: 100%;
	background-color: #ffbb37;
	border: 3px solid #ffbb37;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	line-height: 1.3;
	color: #fff;
}
.category_tab a span {
	display: table-cell;
	vertical-align: middle;
}

.category_tab a.current {
	background-color: #fff;
	color: #000;
}

@media screen and (min-width: 769px), print {
	.category_tab a {
		width: 365px;
		height: 66px;
		font-size: 2.4rem;
	}
	.category_tab a:hover {
		background-color: #fff;
		color: #000;
	}
}
@media screen and (max-width: 768px) {
	.category_tab {
		margin: 20px -1px;
	}
	.category_tab ul {
		width: 100%;
		table-layout: fixed;
	}
	.category_tab ul > * {
		padding: 0 1px;
	}
	.category_tab a {
		height: 40px;
		border-width: 2px;
		font-size: 1.5rem;
	}
}

/* .basic_table
============================================================================================================ */
/*
.basic_table {
	width: 100%;
}
.basic_table th,
.basic_table td {
	padding: 1.5em 2em;
	border-top: 1px solid #e4e4e4;
	border-bottom: 1px solid #e4e4e4;
	vertical-align: top;
}
.bg_gray .basic_table th,
.bg_gray .basic_table td {
	border-color: #d8d8d8;
}

.basic_table th {
	text-align: center;
	font-weight: bold;
	color: #0063c5;
}
.basic_table .w20 { width: 20%;}
.basic_table .w25 { width: 25%;}
.basic_table .w30 { width: 30%;}
.basic_table .w35 { width: 35%;}
.basic_table .w40 { width: 40%;}
.basic_table .w45 { width: 45%;}
.basic_table .w50 { width: 50%;}
.basic_table .w55 { width: 55%;}
.basic_table .w60 { width: 60%;}
.basic_table .w65 { width: 65%;}
.basic_table .w70 { width: 70%;}

.basic_table.center th,
.basic_table.center td {
	text-align: center;
}
.basic_table.th_center th {
	text-align: center;
}
.basic_table.td_center td {
	text-align: center;
}

@media screen and (max-width: 768px) {
	.basic_table {
	}
	.basic_table th,
	.basic_table td {
		padding: .8em;
	}
	.basic_table th {
		padding-right: 0;
		padding-left: 0;
		font-size: 1.4rem;
		line-height: 1.6;
	}
	.basic_table .sp_w20 { width: 20%;}
	.basic_table .sp_w25 { width: 25%;}
	.basic_table .sp_w30 { width: 30%;}
	.basic_table .sp_w35 { width: 35%;}
	.basic_table .sp_w40 { width: 40%;}
	.basic_table .sp_w45 { width: 45%;}
	.basic_table .sp_w50 { width: 50%;}
	.basic_table .sp_w55 { width: 55%;}
	.basic_table .sp_w60 { width: 60%;}
	.basic_table .sp_w65 { width: 65%;}
	.basic_table .sp_w70 { width: 70%;}
}
*/



/* .sp_fix_table
============================================================================================================ */
@media screen and (max-width: 768px) {
	.sp_fix_table {
		position: relative;
		overflow: hidden;
	}
	.sp_fix_table table {
		-webkit-transform-origin: 0 0;
		-moz-transform-origin: 0 0;
		-ms-transform-origin: 0 0;
		-o-transform-origin: 0 0;
		transform-origin: 0 0;
	}
}
@media screen and (min-width: 769px), print {
	.sp_fix_table {
		position: relative;
		overflow: hidden;
	}
}


