@charset "UTF-8";
/* 2014キーカラー：#6b1685 */
/* 2015キーカラー：#f38c00 */
/* 2016キーカラー：#9bc216 サブ：#d5f39f 差し色：#ffe100 */

/*===============================================
● 全環境向け
===============================================*/
/* RESET */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, address, cite, code, del, dfn, em, font, img, ins, kbd, q, samp, small, strong, sub, sup, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, header, nav, article, aside, footer, hgroup, section {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	text-decoration: none;
}
:focus, :active { outline: 0 }

ol, ul { list-style: none }

img { vertical-align: bottom; }

header, nav, article, aside, footer, hgroup, section { display: block }

html {
	color: #000;
background: rgb(255,250,238);
background: -moz-linear-gradient(top,  rgba(255,250,238,1) 0%, rgba(255,255,255,1) 40%);
background: -webkit-linear-gradient(top,  rgba(255,250,238,1) 0%,rgba(255,255,255,1) 40%);
background: linear-gradient(to bottom,  rgba(255,250,238,1) 0%,rgba(255,255,255,1) 40%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fffaee', endColorstr='#ffffff',GradientType=0 );
}

body {
	font: 12px/18px  'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Arial, Verdana, 'ＭＳ Ｐゴシック','Open Sans', sans-serif;
}

.alert {
	color: #666;
}


/* TYPOGRAPHY */
strong { font-weight: bold }
em { font-style: normal }

a { color: #034085; }
a:visited { color: #069 }
a:hover { color: #c66 }
a:active { color: #c66 }

h1, h2, h3, h4, h5, h6 { font-family: 'Open Sans',sans-serif; font-weight: bold; }

@font-face {
	font-family: 'rinoicons';
	src:url('../fonts/rinoicons.eot?-r2qzoj');
	src:url('../fonts/rinoicons.eot?#iefix-r2qzoj') format('embedded-opentype'),
		url('../fonts/rinoicons.woff?-r2qzoj') format('woff'),
		url('../fonts/rinoicons.ttf?-r2qzoj') format('truetype'),
		url('../fonts/rinoicons.svg?-r2qzoj#rinoicons') format('svg');
	font-weight: normal;
	font-style: normal;
}

header div ul li h3:before,
[class^="icon-"]:before, [class*=" icon-"]:before,
header h1 a,
header ul li a,
#mainSection p:first-child:before,
#mainSection p:first-child:after,
.pagetop:before,
.pagetop:after,
#entryBtn a:before,
#entryBtn a:after,
fieldset th span {
	font-family: 'rinoicons';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

[class^="icon-"]:before, [class*=" icon-"]:before {
	font-size: 1.5em;
	margin-top: -3px;
}

.icon-rino:before {
	content: "\72";
}
.icon-panda:before {
	content: "\70";
}
.icon-panda3:before {
	content: "\33";
}
.icon-panda2:before {
	content: "\32";
}
.icon-panda1:before {
	content: "\31";
}
.icon-entr:before {
	content: "\65";
}
.icon-home:before {
	content: "\68";
}
.icon-chevron-sign-left:before {
	content: "\4c";
}
.icon-chevron-sign-right:before {
	content: "\47";
}
.icon-chevron-right {
	display: inline-block;
	vertical-align: middle;
}
.icon-chevron-right:before {
	content: "\67";
	padding-right: 4px;
	display: inline-block;
	vertical-align: middle;
}
.icon-chevron-left:before {
	content: "\6c";
}
.icon-chevron-up:before {
	content: "\75";
}
.icon-chevron-down:before {
	content: "\64";
}

.alignCenter {
	text-align: center;
}

/* Header */
header {
	position: relative;
	color: #2a1d10;
}

header h1 {
	position: absolute;
	z-index: 100;
	text-align: center;
}

/* 参加台数 */
header h2,
header div > p {
	color: #006;
	font-size: 14px;
	font-weight: bold;
}

/* clearfix */
.clearfix:after {
  content: "";
  clear: both;
  display: block;
}
#globalNav {
	font-family: 'Open Sans', sans-serif;
}
/*===============================================
● PC向け 横幅1040px以上
===============================================*/
@media all and (min-width: 1040px){
	.forSphone {
		display: none;
	}

	/* Header */
	header {
		margin: 0 auto;
		padding: 10px 0 0 170px;
		width: 790px;
		height: 130px;
		background: url(../img/header_bg.png) no-repeat 566px 0;
	}
	header h1 {
		padding-top: 12px;
		left: -2px;
		top: 0;
		width: 154px;
		height: 211px;
		background: url(../img/ribbon.png) no-repeat 0 0;
	}
	header h1 a {
		font-size: 110px;
		color: #fff;
		display: block;
	}
	header h1 a:visited,
	header h1 a:hover,
	header h1 a:active {
		color: #fff
	}
	
	header h1 span {
		margin-top: 12px;
		display: block;
		font-family: 'Arial';
		line-height: 1.1;
		font-size: 16px;
		font-style: oblique;
		color: #fff;
	}

	/* 参加台数 */
	header div {
		margin-top: 20px;
		width: 800px;
		position: relative;
		overflow: hidden;
	}

	header div ul {
		margin-top: 3px;
		padding-right: 80px;
		position: relative;
		right: auto;
		bottom: auto;
		width: 375px;
	}

	header div ul li {
		padding: 31px 25px 2px 0;
		width: 55px;
		font-size: 18px;
		color: #5a7bad;
		text-align: center;
		line-height: 29px;
	}

	header div ul li:first-child {
		padding-right: 0;
		background: url(../img/icon_number_1.gif) no-repeat 0 0;
	}

	header div ul li:nth-child(2) { background: url(../img/icon_number_2.gif) no-repeat 0 0; }
	header div ul li:nth-child(3) { background: url(../img/icon_number_3.gif) no-repeat 0 0; }
	header div ul li:nth-child(4) { background: url(../img/icon_number_othercar.gif) no-repeat 0 0; }
	header div ul li:nth-child(5) { background: url(../img/icon_number_nocar.gif) no-repeat 0 0; }

	header div ul li:last-child {
		position: absolute;
		padding: 31px 0 2px 25px;
		right: 0;
		top: 0;
		background: url(../img/icon_number_total.gif) no-repeat 0 0;
	}

	header div > p {
		position: absolute;
		left: 460px;
		bottom: 0;
	}

	/* ソーシャルボタン */
	header ul {
		position: absolute;
		right: -23px;
		bottom: 0;
		width: 300px;
		z-index: 500;
	}
	header ul li {
		padding-left: 4px;
		float: right;
	}
	header ul li a {
		font-size: 30px;
		color: #666;
	}
	header ul li a:visited {
		color: #666;
	}
	header ul li a:hover {
		color: #999;
	}
	header ul li a:active {
		color: #666;
	}

	/* Nav */
	#globalNav {
		margin: 0 auto;
		width: 1000px;
	}
	#globalNav ul {
		padding: 3px 1px 0;
	}
	#globalNav ul li {
		float: left;
		position: relative;
	}
	#globalNav ul li a {
		padding: 12px;
		display: block;
/* 		color: #f60; */
		color: #06c;
	}
	
	#globalNav ul li a:hover {
		background: #8eb4d9;
		color: #fff;
	}
	
	#globalNav ul li ul {
		list-style: none;
		position: absolute;
		z-index: 100;
		top: 100%;
		left: 0;
		width: 100%;
		margin: 0;
		padding: 0;
	}

	#globalNav ul li ul li {
		overflow: hidden;
		width: 100%;
		height: 0;
		color: #fff;
		float: none;
		background: #bfdbf7;
		transition: .2s;
	}

	#globalNav ul li:hover > ul > li {
		overflow: visible;
		height: 3em;
	}
	
	#globalNav ul li:hover > a {
		background: #8eb4d9;
	}

	#globalNav ul li ul li a {
		border-top: 1px solid #fffaee;
		line-height: 3em;
		padding: 0 20px;
	}

	/* 告知 */
	#info2016,
	#info2015,
	#info2014 {
		position: absolute;
		left: 50%;
		top: 0;
		width: 797px;
		margin-left: -310px;
	}
	
	#info2016 #infoGoal,
	#info2015 #infoGoal,
	#info2014 #infoGoal {
		text-align: right;
	}
	
	/* MAIN */
	#mainSection {
		margin: 0 auto 100px;
		width: 960px;
		text-align: center;
	}
	
	#mainSection h1 {
		margin-bottom: 5px;
		font-weight: normal;
		font-size: 16px;
		text-align: left;
	}
	
	#mainSection h2,
	#mainSection h3 {
		margin-bottom: 5px;
		font-weight: normal;
		font-size: 14px;
		text-align: left;
	}
	
	#mainSection h3 {
		margin-top: 20px;
	}
	
	#mainSection h2 span {
		font-size: 12px;
	}

	#mainSection dl {
		background: url(../img/dl_bg.png) -5px 0 repeat-y;
		text-align: left;
	}

	#mainSection dl.universal {
		background: url(../img/univ_dl_bg.png) 0 0 repeat-y;
	}

	#mainSection dt {
		padding: 5px 10px;
		color: #fff;
		border-top: 2px solid #fffaee;
		width: 130px;
		float: left;
		clear: both;
	}

	#mainSection dl.universal dt {
		color: #333;
	}

	#mainSection dd {
		padding: 5px 0;
		border-top: 2px solid #fffaee;
		width: 790px;
		float: right;
	}
	
	#entryBtn {
		margin: 30px auto;
		width: 300px;
		height: 50px;
	}
	
	
	.pagetop {
		margin: 0 auto;
		padding-right: 62px;
		width: 900px;
		text-align: right;
		font-size: 11px;
		line-height: 26px;
		position: relative;
	}
	.pagetop:before,
	.pagetop:after {
		position: absolute;
		bottom: 0;
		font-size: 60px;
		color: #999;
	}
	.pagetop:before {
		content: '23';
		left: 0;
	}
	.pagetop:after {
		content: '1';
		right: 0;
	}
	.pagetop a {
		color: #999;
	}
	
	/* FOOTER */
	footer#globalFooter {
		padding: 20px 0;
		background: #999;
	}
	
	footer#globalFooter p {
		margin: 0 auto;
		width: 960px;
		color: #f2f1ed;
	}
	
	footer#globalFooter p:first-child {
		margin-bottom: 5px;
		font-size: 16px;
	}

	/* CLEAR FIX */
	.goods:after,
	#pub,
	#baner,
	#mainSection dl:after,
	#globalNav:after {
		content:"";
		clear:both;
		display:block;
		height:0;
	}
}

/*===============================================
● タブレット向け 横幅640px以上1039px以下
===============================================*/
@media all and (min-width: 640px) and (max-width: 1039px){
	.forSphone {
		display: none;
	}

	/* Header */
	header {
		margin: 0 auto;
		padding: 10px 0 0 110px;
		width: 530px;
		height: 138px;
		background: url(../img/header_bg.png) no-repeat 250px 0;
	}
	header h1 {
		padding-top: 12px;
		left: 0;
		top: 0;
	}
	header h1 a {
		font-size: 100px;
		color: #009e96;
		display: block;
	}
	header h1 a:visited,
	header h1 a:hover,
	header h1 a:active {
		color: #009e96
	}
	
	header h1 span {
		display: none;
	}

	/* 参加台数 */
	header div {
		margin-top: 20px;
		width: 455px;
		position: relative;
		overflow: hidden;
	}

	header div ul {
		margin-top: 3px;
		padding-right: 55px;
		position: relative;
		right: auto;
		bottom: auto;
		width: 290px;
	}

	header div ul li {
		padding: 31px 3px 2px 0;
		width: 55px;
		font-size: 18px;
		color: #5a7bad;
		text-align: center;
		line-height: 29px;
	}

	header div ul li:first-child { background: url(../img/icon_number_1.gif) no-repeat 0 0; }
	header div ul li:nth-child(2) { background: url(../img/icon_number_2.gif) no-repeat 0 0; }
	header div ul li:nth-child(3) { background: url(../img/icon_number_3.gif) no-repeat 0 0; }
	header div ul li:nth-child(4) { background: url(../img/icon_number_othercar.gif) no-repeat 0 0; }
	header div ul li:nth-child(5) { background: url(../img/icon_number_nocar.gif) no-repeat 0 0; }

	header div ul li:last-child {
		position: absolute;
		right: 0;
		top: 0;
		background: url(../img/icon_number_total.gif) no-repeat -25px 0;
		padding-right: 0;
	}

	header div > p {
		position: absolute;
		left: 350px;
		bottom: 0;
	}

	/* ソーシャルボタン */
	header ul {
		position: absolute;
		right: 0;
		bottom: 0;
		width: 300px;
	}
	header ul li {
		padding-left: 4px;
		float: right;
	}
	header ul li a {
		font-size: 30px;
		color: #666;
	}
	header ul li a:visited {
		color: #666;
	}
	header ul li a:active {
		color: #666;
	}

	/* Nav */
	#globalNav {
		margin: 0 auto;
		width: 640px;
		background: url(../img/btm_main_bg.png) no-repeat -10px -25px;
		position: relative;
		z-index: 1;
	}

	#globalNav ul li {
		float: left;
		position: relative;
	}
	#globalNav ul li a {
		padding: 35px 10px 15px;
		display: block;
		color: #06c;
	}

	#globalNav ul li ul {
		list-style: none;
		position: absolute;
		z-index: 100;
		top: 100%;
		left: 0;
		width: 100%;
		margin: 0;
		padding: 0;
	}

	#globalNav ul li ul li {
		overflow: hidden;
		width: 100%;
		height: 0;
		color: #fff;
		display: block;
		background: #bfdbf7;
		transition: .2s;
	}

	#globalNav ul li:hover > ul > li {
		overflow: visible;
		height: 3em;
	}

	#globalNav ul li:hover > a {
		background: #8eb4d9;
	}

	#globalNav ul li ul li a {
		padding: 0 15px;
		line-height: 3em;
		border-top: 1px solid #fffaee;
	}

	/* 2014,2015告知 */
	#info2016,
	#info2015,
	#info2014 {
		position: absolute;
		left: 50%;
		top: 0;
		width: 477px;
		margin-left: -150px;
	}
	#info2016 #infoGoal,
	#info2015 #infoGoal,
	#info2014 #infoGoal {
		text-align: right;
	}

	/* MAIN */
	#mainSection {
		margin: 30px auto;
		width: 640px;
	}
	
	#mainSection h1 {
		margin-bottom: 5px;
		font-weight: normal;
		font-size: 16px;
		text-align: left;
	}
	
	#mainSection h2,
	#mainSection h3 {
		margin-bottom: 5px;
		font-weight: normal;
		font-size: 14px;
		text-align: left;
	}
	
	#mainSection h3 {
		margin-top: 20px;
	}
	
	#mainSection h2 span {
		font-size: 12px;
	}

	#mainSection dl {
		background: url(../img/dl_bg.png) -25px 0 repeat-y;
		text-align: left;
	}

	#mainSection dl.universal {
		background: url(../img/univ_dl_bg.png) -25px 0 repeat-y;
	}

	#mainSection dt {
		padding: 5px 10px;
		color: #fff;
		border-top: 2px solid #fffaee;
		width: 120px;
		float: left;
		clear: both;
	}

	#mainSection dl.universal dt {
		color: #333;
	}

	#mainSection dd {
		padding: 5px 0;
		border-top: 2px solid #fffaee;
		width: 480px;
		float: right;
	}

	.pagetop {
		margin: 0 auto;
		padding-right: 62px;
		width: 578px;
		text-align: right;
		font-size: 11px;
		line-height: 26px;
		position: relative;
	}
	.pagetop:before,
	.pagetop:after {
		position: absolute;
		bottom: 0;
		font-size: 60px;
		color: #ccc;
	}
	.pagetop:before {
		content: '23';
		left: 0;
	}
	.pagetop:after {
		content: '1';
		right: 0;
	}
	.pagetop a {
		color: #999;
	}
	
	/* FOOTER */
	footer#globalFooter {
		padding: 20px 0;
		background: #999;
	}
	
	footer#globalFooter p {
		margin: 0 auto;
		width: 640px;
		color: #f2f1ed;
	}
	
	footer#globalFooter p:first-child {
		margin-bottom: 5px;
		font-size: 16px;
	}

	/* CLEAR FIX */
	#banner,
	#mainSection dl:after,
	#globalNav:after {
		content:"";
		clear:both;
		display:block;
		height:0;
	}
}

/*===============================================
● スマートフォン向け 横幅639px以下
===============================================*/
@media all and (max-width:639px){
	.nowrap {
		display: inline-block;
	}

	/* Header */
	header {
		padding: 5px 0;
		width: 100%;
		min-height: 32px;
	}

	header h1 {
		left: 3px;
		top: 3px;
		z-index: 9999999;
	}
	header h1 a {
		font-size: 36px;
		color: #009e96;
		display: block;
	}
	header h1 a:visited,
	header h1 a:hover,
	header h1 a:active {
		color: #009e96;
	}

	header h1 span,
	header ul {
		display: none;
	}
	
	header p {
		padding-left: 43px;
		line-height: 1.5;
	}

	/* 参加台数 */
	header div {
		margin-top: 20px;
		padding-top: 8px;
		width: 100%;
		background: #fff;
	}

	header h2,
	header div > p {
		padding: 0 10px;
	}

	header div ul {
		display: block;
		margin-top: 3px;
		width: 100%;
		overflow: hidden;
	}

	header div ul li {
		padding: 10px 0;
		width: 33%;
		float: left;
		font-size: 14px;
		color: #fff;
		text-align: center;
		background: #069;
		border: 1px solid #fff;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}

	header div ul li p { padding: 0; }
	
	/* スマホにアイコンだす */
	header div ul li h3:before {font-size:1em;}
	header div ul li:nth-child(1) h3:before { content: '1 '; }
	header div ul li:nth-child(2) h3:before { content: '2 '; }
	header div ul li:nth-child(3) h3:before { content: '3 '; }
	header div ul li:nth-child(4) h3:before { content: '4 '; }
	header div ul li:nth-child(5) h3:before { content: '5 '; }
	
	header div ul li p:after { content: '台'; }
	header div ul li:nth-child(5) p:after { content: '組'; }

	header div ul li:last-child { background: #036; }
	header div ul li:nth-child(3n-2) { border-left: 0; }
	header div ul li:nth-child(3n) { border-right: 0; }


	/* 2014,2015,2016告知 */
	#info2016 {
		padding: 12% 0 5%;
		position: relative;
		z-index: 0;
		background: #9bc216;
		width: 100%;
	}
	#info2015 {
		padding: 12% 0 5%;
		position: relative;
		z-index: 0;
		background: #f38c00;
		width: 100%;
	}
	#info2014 {
		padding: 12% 0 5%;
		position: relative;
		z-index: 0;
		background: #6b1685;
		width: 100%;
	}
	#info2016 #infoGoal,
	#info2015 #infoGoal,
	#info2014 #infoGoal {
		display: none;
	}
	#info2016 .forSphone,
	#info2015 .forSphone,
	#info2014 .forSphone {
		text-align: center;
		color: #fff;
		font-size: 14px;
		line-height: 1.5;
	}

	/* MAIN */
	#mainSection {
		margin: 15px auto;
		width: 90%;
	}

	#mainSection h1 {
		margin: 0 0 5px 10px;
		font-weight: normal;
		font-size: 18px;
	}

	#mainSection h2,
	#mainSection h3 {
		margin-bottom: 5px;
		font-weight: normal;
		font-size: 18px;
	}

	#mainSection h3 {
		margin-top: 10px;
	}
	#mainSection h3:before {
		content: '●';
	}

	#mainSection h2 span {
		font-size: 12px;
	}

	#mainSection dl {
		font-size: 14px;
		line-height: 1.4;
		border-bottom: 1px solid #c93;
	}

	#mainSection dt {
		padding: 5px 10px;
		border-top: 1px solid #c93;
		color: #fff;
		font-weight: bold;
		background:#9bc216;
	}

	#mainSection dl.universal dt {
		color: #b79b5b;
	}

	#mainSection dd {
		padding: 5px 10px 5px;
	}

	#mainSection dd .icon-chevron-right {
		margin-top: 5px;
		padding: 10px 0;
		text-align: center;
		display: block;
		background: #9bc216;
		color: #fff;
	}

	.pagetop {
		margin: 0;
		width: 100%;
		text-align: center;
		line-height: 36px;
		position: relative;
		background: #7ab400;
	}
	.pagetop:before,
	.pagetop:after {
		position: absolute;
		bottom: -1px;
		font-size: 36px;
		color: #fff;
	}
	.pagetop:before {
		content: '32';
		left: 10px;
	}
	.pagetop:after {
		content: '1';
		right: 10px;
	}
	.pagetop a {
		color: #fff;
		display: block;
		width: 100%;
		height: 100%;
	}
	
	/* FOOTER */
	footer#globalFooter {
		padding: 20px 0;
		background: #999;
		width: 100%;
		font-size: 12px;
	}
	
	footer#globalFooter p {
		padding-left: 10px;
		color: #f2f1ed;
	}
	
	footer#globalFooter p:first-child {
		margin-bottom: 5px;
		font-size: 14px;
	}
	/* CLEAR FIX */
	#banner {
		content:"";
		clear:both;
		display:block;
		height:0;
	}
}