
* {
	box-sizing:		border-box;
	margin:			0;
	padding:		0;
}


/* -------------------------------------*
	body
 * -------------------------------------*/
body {
	font-size:		14px;
	font-family:	"Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
/*
	background:url(../images/bg.svg);
	background-size:200px;
*/
	background:#E60021;
	line-height:1.6em;
}

/* ----------------------------------------*
	端末対応
 * ----------------------------------------*/
.pc_block	{ display:block; }
.pc_inline	{ display:inline; }
.sp_block	{ display:none; }
.sp_inline	{ display:none; }

/* -------------------------------------*
	回りこみ解除
 * -------------------------------------*/

.clearfix:after		{ display: block; clear: both; height: 0px; visibility: hidden; content: "."; }
.clearfix			{ min-height: 1px; /* IE6、7対策 */ }
* html .clearfix	{ height: 1px; /*¥*//*/	/* MAC IE5.x対策 */ height: auto; overflow: hidden; }



/* ----------------------------------------*
	共通
 * ----------------------------------------*/
img				{ max-width:100%; vertical-align:bottom; }
ul				{ list-style:none; margin:0; padding:0; }
.list			{ padding-left:1em; text-indent:-1em; }
.indent p		{ padding:0 0 0 1em; text-indent:-1em; margin:0; }

/* ガイドマーク */
.guide_mark		{ padding:60px 0; text-align:center; }
.guide_mark img	{ width:60px; }




/* ----------------------------------------*
	ページ
 * ----------------------------------------*/
.page			{ box-sizing:border-box; }
.wrapper		{ width:1000px; margin: 0 auto; box-sizing: border-box; }
.page .wrapper	{ padding:40px; background:#fff; border-left:solid 12px #E60021; border-right:solid 12px #E60021; }



/* ----------------------------------------*
	最上段ナビ
 * ----------------------------------------*/
#top_navi			{ width:100%; background:#E60021; padding:5px 0; position:fixed; z-index:997; }
#top_navi .wrapper	{ color:#fff; font-size:12px; font-weight:bold; letter-spacing:0.1em; }
#top_navi a			{ color: #fff; text-decoration:none; }
#top_navi a:hover	{ color: #ffff00; }

/* ----------------------------------------*
	ヘッダ（メインビジュアル）
 * ----------------------------------------*/
#header						{  }
/*
#header .main_visual		{ background:url(../images/top_bg.jpg); height:750px; }
*/
#header .main_catch				{ background:#E60021; height:110px; }
#header .wrapper				{ position:relative; padding-top:15px; }
#header .wrapper .top_logo		{ position:absolute; top:-730px; right:30px; width:600px; z-index:998; }
#header .wrapper .top_chara		{ position:absolute; top:-430px; right:60px; z-index:999; }
#header .wrapper .top_kind_car	{ position:absolute; top:-430px; left:40px; width:140px; z-index:996; }
#header .wrapper .top_kind_bike	{ position:absolute; top:-280px; left:140px; width:140px; z-index:995; }
#header .wrapper .top_kind_chari{ position:absolute; top:-180px; left:30px; width:140px; z-index:994; }
#header .wrapper .top_date		{ position:relative; width:540px; margin-left:60px; }

/* ----------------------------------------*
	フッタ
 * ----------------------------------------*/
#footer				{ width:100%; background:#E60021; color:#fff; padding:15px 0; }
#footer .wrapper	{ font-size:14px; font-weight:bold; letter-spacing:0.1em; text-align:center; }


/* ----------------------------------------*
	コンテンツ部分
 * ----------------------------------------*/
/* ------------------------------*
	お知らせ
 * ------------------------------*/
#news					{ padding:0 0px; margin-top:0; }
#news .news_wrapper		{ width:100%; padding:10px 30px; border:4px solid #E60021; border-left:60px solid #E60021; border-right:60px solid #E60021;  }
#news .news_wrapper dl	{ width:100%; display:flex; font-size:14px; }
#news .news_wrapper dt	{ width:15%; color:#E60021; }
#news .news_wrapper dd	{ width:85%; }

/* ------------------------------*
	ニコ超とは
 * ------------------------------*/
#nico					{ padding: 0px 0 100px 0; margin-top:100px; }
#nico .ttl				{ width:500px; margin:20px auto 40px auto; }
#nico .ttl::after		{ content: ""; background:url("../../2017_nicocho/images/border-bottom.png?v1") bottom repeat-x; display:block; height:10px; }
#nico .ttl img			{ padding:0 0 10px 0; }
#nico .ttl_sub			{ text-align:center; }
#nico .ttl_sub img		{ width:240px; }
#nico ul				{ display:flex; }
#nico ul li				{ width:49%; }
#nico ul li + li		{ margin-left:2%; }
#nico .nicocho-image	{ border:solid 6px #000; }
#nico p					{ padding:0 10px 30px 10px; }
#nico table				{ width:100%; border:solid 1px #ccc; border-collapse:collapse; font-size:12px; }
#nico table th			{ padding:.5em 1em; border:solid 1px #ccc; background:#efefef; white-space:nowrap; }
#nico table td			{ padding:.5em 1em; border:solid 1px #ccc; }

/* ------------------------------*
	エントリー
 * ------------------------------*/
#entry 			{ margin-top:0px; }
#entry h1		{ margin:0; padding:0; }
#entry h1 img	{ margin-left:115px; }

/* ------------------------------*
	開催概要
 * ------------------------------*/
#entry #outline .outline_wrapper	{ padding:0 0 0 160px; }
#entry #outline table				{ width:100%; font-size:16px; }
#entry #outline table th			{ padding:1em 3em 0 0; vertical-align:top; line-height:1.6em; white-space:nowrap; text-align:right; letter-spacing:.1em; }
#entry #outline table td			{ padding:1em 0; vertical-align:top; line-height:1.6em; }
#entry #outline table td p			{ font-size:12px; line-height:1.4em; }
#entry #outline table .strong		{ font-weight:bold; color:#E60021;  }
#entry #outline table .color		{ color:#E60021; }

/* ------------------------------*
	フロー
 * ------------------------------*/
#entry #flow .flow_wrapper		{ padding:0 100px; }
#entry #flow dl					{ display:flex; flex-wrap:wrap; align-items:top; }
#entry #flow dt					{ width:300px; padding:20px 0 20px 0; text-align:center; }
#entry #flow dd					{ width:396px; padding:20px 0 20px 30px; }
#entry #flow dd .balloon		{ position:relative; display:inline-block; padding:20px 30px; background: #e0edff; }
#entry #flow dd .balloon:before	{ content:''; position:absolute; top:50px; left:-20px; margin-top:-10px; border:10px solid transparent; border-right:10px solid #e0edff; }
#entry #flow dd .balloon p		{ margin:0; padding:0; font-size:14px; }
#entry #flow h3					{ color:#E60021; font-size:16px; }
#entry #flow dd .balloon2		{ position:relative; display:inline-block; margin:0 0 0 15px; padding:15px 20px; border:solid 3px #E60021; box-sizing:border-box; min-height:135px; border-radius:5px; }
#entry #flow dd .balloon2:before{ content:""; position:absolute; top:60px; left:-20px; margin-top:-12px; border:10px solid transparent; border-right:10px solid #FFF; z-index:2; }
#entry #flow dd .balloon2:after	{ content:""; position:absolute; top:60px; left:-26px; margin-top:-14px; border:12px solid transparent; border-right:12px solid #E60021; z-index:1; }
#entry #flow dt a				{ position:relative; display:inline-block; /*padding:5px 5px 15px 5px; border:solid 5px #fff; text-decoration:none; outline:none; transition:all .2s;*/ }
#entry #flow dt a:hover			{ background:#ffffaa; }
/*
#entry #flow dt a::before,
#entry #flow dt a::after		{ position:absolute; z-index:2; content:''; width:0; height:0; border:3px solid transparent; }
#entry #flow dt a::before		{ top:-2px; left:-2px; }
#entry #flow dt a::after		{ bottom:-2px; right:-2px; }
#entry #flow dt a:hover::before,
#entry #flow dt a:hover::after	{ width:100%; height:100%; }
#entry #flow dt a:hover::before	{ border-bottom-color:#E60021; border-left-color:#E60021; transition:height .3s, width .3s .3s; }
#entry #flow dt a:hover::after	{ border-top-color:#E60021; border-right-color:#E60021; transition:height .3s, width .3s .3s; }
*/


/* ------------------------------*
	ご注意
 * ------------------------------*/
#note 								{ margin-top:0px; }
#note h1							{ margin:0; padding:0; text-align:center; }
#note h1 img						{ width:190px; }
#note .note_wrapper					{ padding:60px 120px; }
#note .note_wrapper	li				{ padding:2em 0 .5em 0; border-bottom:dashed 1px #ccc; }
#note .note_wrapper	li .indent		{ padding:.5em 1em; }
#note .note_wrapper	li .indent p	{ font-size:12px; }








