@charset "utf-8";
@import 'https://fonts.googleapis.com/css?family=Roboto:300,400,700';

/*================================================
reset
================================================*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1.5;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block;
}



/*================================================
base
================================================*/
html {
	box-sizing: border-box;
}
*, *:before, *:after {
	box-sizing: inherit;
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	}

img {
	vertical-align: bottom
	}

table {
	width:100%; /* 任意変更 */
	}

strong {
	font-weight: bold;
	}

/*-----------------------------------------------------
__ float （サイズwidthは各所で設定）
-----------------------------------------------------*/
.f_right {
	float: right;
	display: inline;
	}
.f_left {
	float: left;
	display: inline;
	}

/*-----------------------------------------------------
［cf］micro clearfix
-----------------------------------------------------*/
.cf:before,
.cf:after {
	content: " ";
	display: table;
	}
.cf:after {
	clear: both;
	}
.cf {
	*zoom: 1;
	}

/*-----------------------------------------------------
回り込みさせない（p class=など） 
-----------------------------------------------------*/
.no-wrap{
	overflow:hidden;
	_zoom:1;
	}




/* ==================================================
page_Layout
================================================== */

/*-----------------------------------------------------
基本設定
-----------------------------------------------------*/
body {
	color: #333;
	background: #f3f3f3;
}

a {
	color: #0d882d;
	text-decoration: none;
	outline: none;
}
.section_set a {
	text-decoration: underline;
}
/* 
a,a:hover {
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
	-o-transition: 0.7s;
	transition: 0.7s;
	}

a img:hover {
	filter: alpha(opacity=75);
	-moz-opacity:0.75;
	opacity:0.75;
	}
*/



.set_width {
	margin: 0 auto;
	width: 1000px;
}
@media screen and (max-width: 1024px) {
	.set_width {
		width: calc(100% - 60px);
	}
}
@media screen and (max-width: 599px) {
	.set_width {
		width: calc(100% - 30px);
	}
} 

p {
	margin: 0;
}
span.min80 {
	font-size: 80%;
}
span.min70 {
	font-size: 70%;
}
span.min50 {
	font-size: 50%;
}


/*-----------------------------------------------------
header
-----------------------------------------------------*/
header {
	height: 65vh;
	min-height: 580px;
	text-align: center;
	margin-bottom: 0px;
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-image: url(../images/s-IMG_0638.jpg);
}
header .header_shade {
	background: rgba(0, 0, 0, 0.6);
	height: 100%;
}
header .set_width {
	height: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
header .set_width .title_box {
	color: #fff;
}






/* logo_area */
header .logo_area {
	text-align: center;
	margin-bottom: 0px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
header .logo_area > div {
	background: rgba(255, 255, 255, 0.8);
	border-radius: 4px;
	width: 60%;
	padding: 5px 30px;
}
header .logo_area > div img {
	width: 100%;
}

/* タイトル */
@media screen and (min-width: 1100px) {
	header h1.head_copy_pc {
		display: block;
		margin: 40px 0 60px;
	}
	header h1.head_copy_smp {
		display: none;
	}
}
@media screen and (max-width: 1099px) {
	header h1.head_copy_pc {
		display: none;
	}
	header h1.head_copy_smp {
		display: block;
		width: 60%;
		margin: 30px auto 60px;
	}
	header h1.head_copy_smp img {
		width: 100%;
	}
}
@media screen and (max-width: 599px) {
	header h1.head_copy_smp {
		display: block;
		width: 90%;
		margin: 30px auto 30px;
	}
}


/* sub_set */
.sub_set {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
.sub_set > div {
	width: calc(50% - 15px);
	background: rgba(0, 0, 0, 0.5);
	padding: 1.5em;
	text-align: left;
	border: 1px solid #999;
}

/* organizer */
.sub_set .organizer dl {
	font-size: 14px;
}
.sub_set .organizer dl dt {
	float: left;
	width: 4.5em;
}
.sub_set .organizer dl dd {
	padding-left: 5em;
	margin-bottom: 0.5em;
}
.sub_set .organizer dl dd:last-child {
	margin-bottom: 0;
}

/* schedule */
.sub_set .schedule p {
	font-size: 14px;
}



/*-----------------------------------------------------
content_area
-----------------------------------------------------*/
.content_area {
	padding: 60px 0 ;
}
.content_area p {
	font-size: 18px;
}
@media screen and (max-width: 599px) {
	.content_area {
		padding: 40px 0 ;
	}
	.content_area p {
		font-size: 16px;
	}
}

h2.content_head_title {
	border:  solid #722467;
	border-width: 4px 0;
	padding: 0.5em 0;
	color: #722467;
	font-size: 38px;
	line-height: 1.4;
	margin-bottom: 1em;
	text-align: center;
	font-weight: bold;
	letter-spacing: 0;
}
.content_area  .contents_inner {
	margin: 0 10px;
}
/* entry */
p.entry  {
	text-align: center;
	background: #fff;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
	padding: 3px;
	border-radius: 8px;
	margin: 30px 0;
}
p.entry a {
	border-radius: 8px;
	color: #fff;
	display: block;
	background: #e33;
	font-size: 28px;
	padding: 18px;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
	font-weight: bold;
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
	margin-bottom: 0px;
}
p.entry a:hover {
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
}
p.entry a:before {
	font-family: fontAwesome;
	content: "\f0a9";
	margin-right: 3px;
}






/*-----------------------------------------------------
メイン部
-----------------------------------------------------*/
.content_area h2.main_lead  {
	line-height: 1.25;
	border-top: 3px solid #09f;
	margin-bottom: 1em;
	padding-top: 0.5em;
	color: #09f;
	font-size: 38px;
	font-weight: bold;
}
.content_area h2.main_lead:before  {
	font-family: fontAwesome;
	content: "\f06a";
	padding-right: 0.2em;
}
.content_area h2.main_lead  span.obs {
	padding-left: 1em;
	font-size: 75%;
}
@media screen and (max-width: 1023px) {
	.content_area h2.main_lead  span.obs {
		display: block;
		margin-top: 0.5em;
		padding-left: 0em;
	}
}
@media screen and (max-width: 599px) {
	.content_area h2.main_lead  span.obs {
	}
	.content_area h2.main_lead {
		font-size: 28px;
	}
}



.content_area h2.ca_title {
	background: #09f;
	color: #fff;
	font-size: 28px;
	line-height: 1.3;
	margin-bottom: 0.5em;
	padding: 0.25em 0.5em;
	border-radius: 8px;
}
@media screen and (max-width: 599px) {
	.content_area h2.ca_title {
		font-size: 24px;
	}
}
.guide_txt {
	margin: 1em 0.5em;
}
.guide_txt p {
	line-height: 1.6;
	margin-bottom: 0.5em;
}

/* order_info02 */
.order_info02  {
	margin: 30px 0 0;
}
.order_info02 > div {
	
	background: #fff;
	padding: 25px;
	border: 1px solid #ccc;
	margin-bottom: 2em;
}

.order_info02 h3 {
	font-weight: bold;
	color: #09f;
	font-size: 28px;
	line-height: 1.3;
	margin-bottom: 0.75em;
}
.order_info02 h3:before  {
	font-weight: normal;
	font-family: fontAwesome;
	content: "\f0f6";
	padding-right: 0.25em;
}

.order_info02 h4 {
	font-weight: bold;
	font-weight: normal;
	color: #09f;
	font-size: 24px;
	line-height: 1.25;
	border-top: 1px solid #09f;
	margin-bottom: 0.5em;
	padding-top: 0.25em;
}
.order_info02 ul {
	font-size: 18px;
	font-weight: normal;
	margin-bottom: 1.5em;
	list-style-type: disc;
	margin-left: 1.5em;
}
.order_info02 ul li {
	padding: 0.2em 0;
}
.order_info02  .sponcer_merit {
	margin-bottom: 0.5em;
}
@media screen and (max-width: 599px) {
	.order_info02 > div {
		padding: 15px;
	}
	.order_info02 h3 {
		font-size: 24px;
	}
	.order_info02 h4 {
		font-size: 18px;
	}
	.order_info02 ul {
		font-size: 16px;
	}
}


/* 前回の開催はこちら */
.last_repo_image {
	margin-bottom: 20px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
.last_repo_image p {
	width: 32%;
	width: calc((100%/3) - 10px);
}
@media screen and (max-width: 599px) {
	.last_repo_image {
		display: block;
	}
	.last_repo_image p {
		width: 90%;
		margin: 0 auto 10px;
	}
}
.last_repo_image p img {
	width: 100%;
	border-radius: 6px;
}

ul.report_link {
	list-style-type: none;
	margin-left: 1.0em;
}
ul.report_link li  {
	font-size: 18px;
}
ul.report_link li a {
	color: #336;
	text-decoration: underline;
}
ul.report_link li:before {
	font-family: fontAwesome;
	content: "\f0a9";
	margin-right: 3px;
}

/*-----------------------------------------------------
募集要項
-----------------------------------------------------*/
.requirements_area  .mBox {
	margin: 0 0.5em 2em;
}
.requirements_area  .mBox p {
	font-size: 18px;
	line-height: 1.7;
}
.requirements_area  .mBox h3 {
	font-size: 24px;
	line-height: 1.7;
	color:#09f;
}
.requirements_area  .mBox h3:before {
	font-family: fontAwesome;
	content: "\f0a9";
	margin-right: 3px;
}
.requirements_area  .mBox h4 {
	font-size: 18px;
	line-height: 1.7;
	margin-top: 0.75em;
}
/*
.requirements_area  .mBox  ul {
	margin-top: 0.25em;
	font-weight: normal;
	margin-bottom: 1em;
	list-style-type: disc;
	margin-left: 1.5em;
	margin-left: 1.75em;
}
*/
.requirements_area  .mBox  ul li {
	font-size: 18px;
}

.requirements_area  .mBox  ul.pdf_dl_b {
	list-style-type: none;
	margin: 30px 10px ;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
.requirements_area  .mBox  ul.pdf_dl_b li {
	width: 47%;
	width: calc((100%/2) - 10px);
	font-size: 20px;
}
.requirements_area  .mBox  ul.pdf_dl_b li a {
	display: block;
	color: #336;
	border: 1px solid #336;
	text-align: center;
	padding: 1em 0;
}
.requirements_area  .mBox  ul.pdf_dl_b li a:hover {
	background: #fff;
}
.requirements_area  .mBox  ul.pdf_dl_b li a:before {
	font-family: fontAwesome;
	content: "\f1c1";
	margin-right: 5px;
}
@media screen and (max-width: 999px) {
	.requirements_area  .mBox  ul.pdf_dl_b {;
		display: block;
	}
	.requirements_area  .mBox  ul.pdf_dl_b li {
		width: 100%;
		margin-bottom: 1em;
	}
	.requirements_area  .mBox  ul.pdf_dl_b li a:hover {
		background: transparent;
	}
}
@media screen and (max-width: 599px) {
	.requirements_area  .mBox  ul.pdf_dl_b li {
		font-size: 18px;
		margin-bottom: 0.5em;
	}
}

/* entry */
p.entry_team  {
	text-align: center;
	background: #fff;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
	padding: 2px;
	margin: 30px auto 100px;
	width: 70%;
}
p.entry_team a {
	color: #fff;
	display: block;
	background: #e33;
	font-size: 20px;
	line-height: 1.25;
	padding: 1.25em;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
	font-weight: normal;
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
	margin-bottom: 0px;
}
p.entry_team a:hover {
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
}
p.entry_team a:before {
	font-family: fontAwesome;
	content: "\f0a9";
	margin-right: 3px;
}
@media screen and (max-width: 999px) {
	p.entry_team  {
		width: 100%;
	}
}



ul.entry_ver04 {
	list-style-type: none;
	margin: 30px 10px 20px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
ul.entry_ver04 li {
	text-align: center;
	width: 47%;
	width: calc((100%/2) - 10px);
	border: 1px solid #999;
	padding: 3px;
}
ul.entry_ver04 li a {
	display: block;
	padding: 0.75em;
	font-size: 20px;
	line-height: 1.35;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
}

ul.entry_ver04 li.pdf a {
	background: #ccd;
	color: #336;
}
ul.entry_ver04 li.form a {
	background: #e33;
	color: #fff;
}
ul.entry_ver04 li a:hover {
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
}
ul.entry_ver04 li.pdf a:before {
	font-family: fontAwesome;
	content: "\f1c1";
	margin-right: 3px;
}
ul.entry_ver04 li.form a:before {
	font-family: fontAwesome;
	content: "\f0a9";
	margin-right: 3px;
}
@media screen and (max-width: 999px) {
	ul.entry_ver04   {
		display: block;
	}
	ul.entry_ver04 li  {
		width: 100%;
		margin-bottom: 1em;
	}
	ul.entry_ver04 li br {
	}
}


ul.entry_ver04 li.form a,
ul.entry_ver04 li.form a:hover {
	filter: alpha(opacity=30);
	-moz-opacity:0.3;
	opacity:0.3;
}


/*-----------------------------------------------------
スタートアップセミナー
-----------------------------------------------------*/
.startup_box {
	background: #d4d4d4;
}

/* title_box */
.startup_box .title_box {
	text-align: center;
	font-weight: bold;
}
.startup_box .title_box p.start {
	background: #09f;
	color: #fff;
	font-size: 24px;
	line-height: 1;
	margin-bottom: 0.75em;
	padding: 0.5em;
}
.startup_box .title_box h2 {
	color: #09f;
	font-size: 38px;
	line-height: 1.3;
	margin-bottom: 0.1em;
}
.startup_box .title_box p.h2_sub {
	color: #09f;
	font-size: 28px;
	line-height: 1.3;
	margin-bottom: 0.5em;
}
.startup_box .title_box p.p_sub {
	font-size: 20px;
	line-height: 1.5;
	font-weight: normal;
}
.startup_box .title_box p.p_tt {
	margin-top: 0.5em;
	font-size: 32px;
	line-height: 1.4;
}


/* guide */
.startup_box .guide {
	border: solid #000;
	border-width: 1px 0 0;
	padding: 1em 0.5em;
	margin: 1em 0 2em;
}
.startup_box .guide p {
	font-size: 18px;
	line-height: 1.7;
	margin-bottom: 0em;
}


/* order_info */
.order_info  {
	text-align: left;
	margin: 0 0  40px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
.order_info > div {
	width: 48%;
}
@media screen and (max-width: 999px) {
	.order_info  {;
		display: block;
	}
	.order_info > div {
		width: 100%;
	}
}
.order_info h4 {
	font-weight: bold;
	color: #09f;
	font-size: 18px;
	border-top: 1px solid #09f;
	margin-bottom: 0.25em;
}
.order_info ul {
	font-size: 14px;
	font-weight: normal;
	margin-bottom: 1em;
	list-style-type: disc;
	margin-left: 1.5em;
}
.order_info ul li {
}


/* program */
.startup_box .program {
}
.startup_box .program h3 {
	color: #09f;
	text-align: center;
	font-weight: bold;
	font-size: 32px;
	line-height: 1.2;
	margin-bottom: 0.75em;
}

.startup_box .program dl {
	margin: 1em 0.5em;
}
.startup_box .program dl dt {
	font-weight: bold;
	float: left;
	width: 4em;
	font-size: 18px;
	color: #09f;
}
.startup_box .program dl dd {
	font-size: 18px;
	padding-left: 4.5em;
	margin-bottom: 0.25em;
	padding-bottom: 0.25em;
	border-bottom: 1px dotted #999;
}
.startup_box .program dl dd:last-child {
	margin-bottom: 0;
	border-bottom: none;
}

.startup_box .program .data {
	font-size: 20px;
	line-height: 1.6;
	background: #fff;
	padding: 1em;
	margin: 1em auto 3em;
	width: calc(100% - 50px);
	border: 1px solid #ccc;
}



/*-----------------------------------------------------
hackathon_schedule_box
-----------------------------------------------------*/
.hackathon_schedule_box {
	background: #2e3a42;
	color: #fff;
}
.hackathon_schedule_box  h2 {
	text-align: center;
	font-weight: bold;
	font-size: 28px;
	line-height: 1.2;
	margin-bottom: 0.75em;
}
.hackathon_schedule_box  table {
}
.hackathon_schedule_box  table td {
	font-size: 18px;
	vertical-align: top;
	border: 1px solid rgba(255, 255, 255, 0.5);
	padding: 0.25em 0.5em;
}

/*-----------------------------------------------------
footer
-----------------------------------------------------*/
footer {
	background: #000;
	padding: 60px 0;
}
footer p {
	color: #fff;
	font-size: 16px;
	font-family: 'Roboto', sans-serif;
	text-align: center;
}
footer p.contact {
	font-size: 24px;
	margin-bottom: 1em;
}
footer p.contact a {
	color: #fff;
	text-decoration: underline;
}

/* -----------------------------------------------------
for template
-----------------------------------------------------*/


.for_temp h1 {
	font-size: ;
	margin-bottom: ;
}
.for_temp h2 {
	font-size: ;
	margin-bottom: ;
}
.for_temp p {
	font-size: 16px;
	line-height: 1.6;
}

.for_temp a {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
}
.for_temp a:hover {
	filter: alpha(opacity=70);
	-moz-opacity:0.7;
	opacity:0.7;
}

.for_temp p.button_01 a {
	background: #333333;
	background: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999));
	background: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%);

	display: block;
	color: #fff;
	text-align: center;
	border-radius: 8px;
	font-size: 18px;
	padding: 0.75em 0;
	box-shadow: 0 0 4px rgba(0,0,0,0.2);
	text-shadow: 0 1px 2px rgba(0,0,0,0.75);
}
.for_temp p.button_01 a:before {
	color: #;
	content: "\f0a9";
	font-family: fontAwesome;
	margin-right: 3px;
}






/* -----------------------------------------------------
m
-----------------------------------------------------*/
@media screen and (max-width: 1024px) {
	header {
		height: auto;
	}
	header .header_shade {
		padding: 40px 0;
	}
}

/* 改行指定＋1000px以上は消す */
@media screen and (min-width: 1000px) {
	br.break999 {
		display: none;
	}
}
@media screen and (max-width: 999px) {
	header .logo_area > div {
		width: 80%;
	}
	header h1.head_copy span.y {
		font-size: 100%;
	}
}
@media screen and (max-width: 599px) {
	.content_area  .contents_inner {
		margin: 0 ;
	}
	header .header_shade {
		padding: 20px 0;
	}
	header .logo_area > div {
		width: 100%;
	}
	header h1.head_copy {
		font-size: 58px;
		margin-bottom: 10px;
	}
	.sub_set {
		display: block;
	}
	.sub_set > div {
		width: calc(100% - 15px);
		margin: 10px auto 0;
	}

	.startup_box .title_box h2,
	.startup_box .program h3,
	.startup_box  p.entry a,
	.hackathon_schedule_box  h2 {
		font-size: 24px;
	}
	
.startup_box .title_box p.p_tt {
		font-size: 24px;
	}

.startup_box .title_box p.h2_sub,
.startup_box .title_box p.p_sub,
	.startup_box .guide p, 
	.startup_box .program dl dt,
	.startup_box .program dl dd,
	.startup_box .program .data,
	.hackathon_schedule_box  table td {
		font-size: 16px;
	}

	.startup_box .program .data {
		width: 100%;
		margin: 1em auto 2em;
	}

	.startup_box .title_box h2 span {
		font-size: 100%;
		display: block;
	}
	.startup_box .title_box h2 .break999 {
		display: none;
	}
	span.br599 {
		display: block;
		
	}
}


@media screen and (max-width: 374px) {
	header h1.head_copy {
		font-size: 48px;
	}

	.startup_box .program h3,
	.startup_box  p.entry a,
	.hackathon_schedule_box  h2 {
		font-size: 18px;
	}

.startup_box .title_box p.h2_sub,
.startup_box .title_box p.p_sub,
	.startup_box .guide p, 
	.startup_box .program dl dt,
	.startup_box .program dl dd,
	.startup_box .program .data,
	.hackathon_schedule_box  table td {
		font-size: 14px;
	}
}

@media screen and (max-width: 1023px) {
	header h1.head_copy span.tt2 {
		display: block;
	}
}



/* -----------------------------------------------------
決定スポンサー&決定参加チーム
2017年10月31日火曜日 
----------------------------------------------------- */
p.update {
	text-align: right;
	margin: 0 0 0.75em;
}
.decision_m {
}
.dm_area {
	background: #fff;
	padding: 0.75em;
	border: 1px solid #ccc;
	margin-bottom: 30px;
}


.decision_m h2 {
	background: #333333;
	background: -webkit-gradient(linear, left top, left bottom, from(#999), to(#333));
	background: linear-gradient(to bottom, #999 0%, #333 100%);
	border-radius: 8px;
	color: #fff;
	font-size: 28px;
	line-height: 1.3;
	padding: 0.25em 0.5em;
	margin-bottom: 1em;
}
.decision_m h2:before {
	color: #;
	content: "\f055";
	font-family: fontAwesome;
	margin-right: 0.25em;
}
.decision_m h2 .min {
	font-size: 70%;
	padding-left: 1em;
}

.dm_area .sponcer h3 {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	margin: 2em 2em;
}
.dm_area .sponcer h3 span.ins {
	display: block;
	color: #fff;
	font-size: 1em;
	padding: 0.25em 2em;
	border-radius: 6px 6px 0 0;
}
.dm_area .sponcer h3.el1 {border-bottom: 1px solid #D82727;}
.dm_area .sponcer h3.el1 span.ins  {background:#D82727;}
.dm_area .sponcer h3.el2 {border-bottom: 1px solid #0B9A97;}
.dm_area .sponcer h3.el2 span.ins  {background:#0B9A97;}
.dm_area .sponcer h3.el3 {border-bottom: 1px solid #53a51f;}
.dm_area .sponcer h3.el3 span.ins  {background:#53a51f;}

.dm_area .sponcer ul {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	margin: 0 2em 2em;
}
.dm_area .sponcer ul li {
		text-align: center;
	width: calc(25% - 40px);
	margin: 0 20px;
}
.dm_area .sponcer ul li img {
	width: 100%;
}
.dm_area .sponcer ul li img.min70 {
	width: 70%;
}
.dm_area .sponcer ul li img.min60 {
	width: 60%;
}
.dm_area .sponcer ul li p {
	text-align: center;
}




.dm_area .team {
}
.dm_area .team ul {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.dm_area .team ul li {
	text-align: center;
	width: calc(33.33% - 30px);
	margin: 0 15px 60px;
}
.dm_area .team ul li  .team_photo {
	width: 100%;
	background:#eee;
}
.dm_area .team ul li  .team_photo img {
	width: 100%;
}
.dm_area .team ul li  p.name {
	background:#09f;
	color: #fff;
	padding: 0.25em;
	font-size: 18px;
}
.dm_area .team ul li  p.aff {
	font-size: 16px;
	margin: 0.5em 0;
	font-weight: bold;
}

/* 制約条件 */
.dm_area .team ul li  .terms {
	border:  solid #ccc;
	border-width: 1px 0;
	padding: 0.5em 0.25em ;
}
.dm_area .team ul li  .terms p {
	font-size: 13px;
	text-align: left;
}
.dm_area .team ul li  .terms p.terms_lead {
	font-weight: bold;
	font-size: 14px;
	padding: 0 0 0.125em 0;
}
.dm_area .team ul li  .terms p.terms_lead:before {
	color: #e33;
	content: "\f00c";
	font-family: fontAwesome;
	margin-right: 0.25em;
}



.dm_area .team ul li  p.comment {
	border-top: 0px solid #ccc;
	padding-top: 0.5em;
	font-size: 14px;
	line-height: 1.5;
	text-align: left;
}
@media screen and (max-width: 999px) {
	.dm_area .sponcer ul li {
		width: calc(50% - 40px);
		margin: 0 20px 40px;
	}
	.dm_area .team ul li {
		width: calc(50% - 30px);
		margin: 0 15px 40px;
	}
}

@media screen and (max-width: 599px) {

.decision_m h2 {
	font-size: 22px;
	margin-bottom: 1em;
}
	.dm_area .sponcer h3 {
		margin: 2em 0;
	}
	.dm_area .sponcer ul {
		margin: 0 0 2em;
	}
	.dm_area .team ul li {
		width: 90%;
		margin: 0 auto 30px;
	}
}



/* 課題 */
.term_summary {
	margin: 0 0 60px;
}
ul.persona {
	margin: 30px 0 0;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
}
ul.persona li {
	text-align: center;
	width: calc(30% - 0px);
	margin: 0 3px;
	background: #ddd;
	cursor:pointer;
	padding: 15px 0;
	color: #666;
}
ul.persona li p.num {
	font-size: 15px;
}
ul.persona li p.name {
	font-size: 24px;
}
ul.persona li.active {
	background: #09f;
	color: #fff;
}
ul.persona li:hover {
	background: #09f;
	color: #fff;
}

.js-tab_content {
	display: none;
	margin: 0 15px;
	
	border: 3px solid #09f;
	padding: 2em;
}
.js-tab_content.active {
	display: block;
	border: 3px solid #09f;
	padding: 2em;
}


.js-tab_content  .ins {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.js-tab_content  .ins  .list_area {
	width: 30%;
}
.js-tab_content  .ins  .detail {
	width: calc(70% - 2em);
}

@media screen and (max-width: 599px) {
	ul.persona li {
		width: calc(33% - 0px);
		margin: 0 2px;
	}
	ul.persona li p.num {
		font-size: 12px;
	}
	ul.persona li p.name {
		font-size: 14px;
		font-weight: bold;
	}
	.js-tab_content {
		margin: 0 ;
	}
	.js-tab_content.active {
		padding: 1em;
	}
	.js-tab_content  .ins {
		display: block;
	}
	.js-tab_content  .ins  .list_area,
	.js-tab_content  .ins  .detail {
		width: 100%;
	}
}

.js-tab_content  .list_area .img_area {
	width: 100%;
	background: #eee;
	margin-bottom: 1em;
	border: 1px solid #ccc;
}
.js-tab_content  .list_area .img_area img {
	width: 100%;
}
.js-tab_content  .list_area p {
	margin-bottom: 1em;
}
.js-tab_content   h4 {
	font-size: 18px;
	font-weight: bold;
}
@media screen and (max-width: 599px) {
	.js-tab_content  .detail {
		margin-top: 1em;
		padding-top: 1em;
		border-top: 1px solid #09f;
	}
}
.js-tab_content  .detail p {
	font-size: 16px;
	line-height: 1.6;
	padding: 0 0 0.75em;
}


/* restriction */
.restriction {
	margin: 0 0 40px;
}
.restriction ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin: 1.5em 15px ;
}
.restriction ul li {
	width: 30%;
}
@media screen and (max-width: 999px) {
	.restriction ul {
		display: block;
		margin: 1.5em 15px ;
	}
	.restriction ul li {
		width: 100%;
		margin: 0 0 2em;
	}
}

.title_fonSet {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	border: solid #09f;
	border-width: 1px 0;
	margin: 0 0 1em;
	padding: 4px ;
}

.title_fonSet .circle {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	
	text-align: center;
	background: #09f;
	color: #fff;
	width: 50px;
	height: 50px;
	border-radius: 50px;
}
.title_fonSet .circle .seiyk {
	font-size: 12px;
	line-height:1;
	margin: 0 0 2px;
}
.title_fonSet .circle .num {
	font-family: 'Roboto', sans-serif;
	font-size: 18px;
	line-height:1;
	margin: 0;
}

.title_fonSet .name  {
	margin-left: 10px;
	color:#09f;
	font-weight: bold;
}
.title_fonSet .title  {
	font-size: 20px;
	line-height:1;
	margin: 0 0 4px;
}
.title_fonSet .sub  {
	font-size: 13px;
	line-height:1;
}

.restriction ul li  p.list {
	margin: 0 0.5em;
}
.restriction ul li  h4 {
	font-size: 16px;
	line-height:1.25;
	font-weight: bold;
	margin: 0 0.5em 0.25em;
}
.restriction ul li  h4.last {
	margin: 1em 0.5em 0.25em;
}


.restriction p.message {
	border: 1px solid #09f;
	margin: 2em 15px;
	padding: 1em 2em;
	text-align: center;
	color:#09f;
	font-size: 24px;
}


@media screen and (max-width: 999px) {
	.restriction p.message {
		padding: 1em ;
	font-size: 18px;
	}
	.restriction p.message br {
		display: none;
	}
}



h3.plus_h3 {
	font-weight: bold;
	font-size: 18px;
}
.map  {
	margin: 0 auto  80px;
	width: 100%;
	max-width: 850px;
}
.map img {
	width: 100%;
}

.stage_schedule  {
	margin: 0 auto;
	width: 100%;
	max-width: 850px;
}
.stage_schedule table {
	margin: 1em auto;
   table-layout: fixed;
   width: 100%;
}
.stage_schedule table th,
.stage_schedule table td {
	font-family: 'Roboto', sans-serif;
	text-align: center;
	border: 1px solid #ccc;
	font-size: 16px;
	padding: 0.5em;
}
.stage_schedule table th {
	font-weight: bold;
	background: #f4f4f5;
}
.stage_schedule table td {
}
.stage_schedule table th:nth-of-type(1),
.stage_schedule table td:nth-of-type(1) {
	width: 5em;
	background: #f4f4f5;
}
.stage_schedule table td.yotube {
	background: #ffcc66;
}

@media screen and (max-width: 599px) {
	.stage_schedule table th,
	.stage_schedule table td {
		font-size: 14px;
	}
	.stage_schedule table th:nth-of-type(1),
	.stage_schedule table td:nth-of-type(1) {
		width: 4em;
	}
}

/* -----------------------------------------------------
index_timer
-----------------------------------------------------*/
.index_timer {
	border-top: 1px solid rgba(255, 255, 255, 0.5);
	background: #333;
	background: -webkit-gradient(linear, left top, left bottom, from(#555), to(#000));
	background: linear-gradient(to bottom, #555 0%, #000 100%);
	box-shadow: 0 4px 4px rgba(0, 0, 0, 0.3);
}
.index_timer  .set_width .timerArea {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	
	/* 中央揃え */
	-webkit-justify-content: center;
	justify-content: center;
	/* 天地センター */
	-webkit-align-items: center;
	align-items: center;
	padding: 10px 0;
}
.timer_icon {
	font-size: 1em;
	color: #fff;
	margin-right: 5px;
}
.timerArea {
	color: #fff;
}
.timerArea p {
	font-size:1em;
}
.yycountdown-box {
}
 
#timerOlympic .yycountdown-box .yyc-day,
#timerOlympic .yycountdown-box .yyc-hou,
#timerOlympic .yycountdown-box .yyc-min,
#timerOlympic .yycountdown-box .yyc-sec {
	font-size: 2em;
	font-family: 'Roboto', sans-serif;
}
#timerOlympic .yycountdown-box .yyc-day-text,
#timerOlympic .yycountdown-box .yyc-hou-text,
#timerOlympic .yycountdown-box .yyc-min-text,
#timerOlympic .yycountdown-box .yyc-sec-text{
	font-size:1.0em;
	padding: 0 0.25em 0 0.125em;
}
@media screen and (max-width: 599px) {
	.index_timer  .set_width .timerArea {
		display: block;
		text-align: center;
	}
	.timer_icon {
		display: none;
	}
	.timerArea p {
		font-size:13px;
	}
	#timerOlympic .yycountdown-box .yyc-day,
	#timerOlympic .yycountdown-box .yyc-hou,
	#timerOlympic .yycountdown-box .yyc-min,
	#timerOlympic .yycountdown-box .yyc-sec {
		font-size: 1.5em;
		font-family: 'Roboto', sans-serif;
	}
}


/* 審査結果（2018年3月31日土曜日） */
.result_repo ul {
	margin: 10px 15px 0;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.result_repo ul li {
	width: calc((100% - 60px)/3);
	margin: 0 0 40px;
}
@media screen and (max-width: 999px) {
	.result_repo ul li {
		width: calc((100% - 10px)/2);
		margin: 0 0 40px;
	}
}
@media screen and (max-width: 599px) {
	.result_repo ul li {
		width: 100%;
		margin: 0 0 40px;
	}
}
.result_repo ul li .prize_name {
	text-align: center;
	background: #09f;
	color: #fff;
	margin: 0 15px;
	border-radius: 6px 6px  0 0;
	padding: 0.125em 0;
	font-size: 1.125em;
}
.result_repo ul li .prize_name.m_gold {
	font-size: 1.25em;
	background: #D4AF37;
	background: -webkit-gradient(linear, left top, left bottom, from(#D4AF37), to(#AE8913));
	background: linear-gradient(to bottom, #D4AF37 0%, #AE8913 100%);
}
.result_repo ul li .prize_name.m_silver{
	font-size: 1.25em;
	background: #C0C0C0;
	background: -webkit-gradient(linear, left top, left bottom, from(#C0C0C0), to(#a0a0a0));
	background: linear-gradient(to bottom, #C0C0C0 0%, #a0a0a0 100%);
}
.result_repo ul li .prize_name.m_blonze {
	font-size: 1.25em;
	background: #CD7F32;
	background: -webkit-gradient(linear, left top, left bottom, from(#F3A960), to(#A75B10));
	background: linear-gradient(to bottom, #F3A960 0%, #A75B10 100%);
}

.result_repo ul li .photo {
	width: 100%;
	overflow: hidden;
	background: #eee;
	margin-bottom: 0.25em;
	border: 1px solid #ccc;
}
.result_repo ul li .photo img {
	width: 100%;
	}

.result_repo ul li p {
	font-size: 1em;
	text-align: center;
}
.result_repo ul li p.nn {
	font-size: 1.25em;
	font-weight: bold;
}


.result_repo ul li.msg {
}
.result_repo ul li.msg .callss {
	margin: 0 0.5em;
	border-radius: 0.5em;
	font-size: 1em;
	padding: 1em;
	background: #eee;
}


/* プレゼンテーション・会場シーン */
.presentation_scene {
}
.presentation_scene ul {
	margin: 10px 15px 0;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.presentation_scene ul li {
	width: calc((100% - 40px)/4);
	margin: 0 5px 10px;
}
.presentation_scene ul li img {
	width: 100%;
}
@media screen and (max-width: 999px) {
	.presentation_scene ul li {
		width: calc((100% - 30px)/3);
		margin: 0 5px 10px;
	}
}
@media screen and (max-width: 599px) {
	.presentation_scene ul li {
		width: calc((100% - 20px)/2);
		margin: 0 5px 10px;
	}
}