@charset "utf-8";

/* === intro === */

#sec_intro {
	max-width: 720px;
	margin: 0 auto;
	padding: 60px 0;
}
#sec_intro img {
	margin: 0 0 20px;
}
.free {
	display: none;
}

@media only screen and (max-width: 767px) {
	#sec_intro {
		padding: 30px 20px;
	}
	#sec_intro img {
		display: none;
	}
	.free {
		margin: 0 0 15px;
		display: block;
	}
	.free span {
		padding: 5px 0;
		font-weight: 700;
		text-align: center;
		display: block;
	}
	.free span:nth-child(1) {
		background: #e95541;
		border: 2px solid #e95541;
		border-radius: 10px 10px 0 0;
		color: #fff;
	}
	.free span:nth-child(2) {
		border: 2px solid #e95541;
		border-radius: 0 0 10px 10px;
		color: #e95541;
	}
	.free span span {
		font-size: 1.1rem;
		font-weight: 400;
		display: inline;
	}
}

/* === conference === */

#sec_conference {
	padding: 60px 0 90px;
	background: #eacb50;
}

.program_ttl {
	padding: 10px 15px;
	background: #00aca8;
	color: #fff;
}
.program_ttl h2 {
	font-size: 1.8rem;
	font-weight: 700;
	float: left;
}
.program_ttl .time {
	font-size: 1.8rem;
	font-weight: 700;
	float: right;
}
.program_ttl p {
	font-size: 1.3rem;
	clear: both;
}

.program {
	padding: 25px 25px 0;
	background: #fff;
}
.program:last-child {
	padding: 25px;
}
.program h3 {
	margin: 0 0 15px;
	padding: 3px 10px;
	background: #00aca8;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 700;
}
.program_img {
	width: 120px;
	float: left;
}
.program_img img {
	width: 100%;
}
.program_txt {
	padding: 0 0 0 150px;
}
.program_txt .ttl {
	margin: 5px 0 10px;
	font-size: 1.8rem;
	font-weight: 700;
}
.program_txt p {
	margin: 0 0 15px;
	padding: 0 0 15px;
	border-bottom: 1px solid #666;
	font-size: 1.3rem;
}
.profile .name {
	font-weight: 700;
}
.profile .position {
	margin: 0 0 10px;
	font-size: 1.3rem;
}
.profile .biography {
	font-size: 1.2rem;
}

.company {
	padding: 25px;
	background: #fff;
}
.company p {
	margin: 0 0 30px;
	font-size: 1.4rem;
}
.company_inr {
	margin: 0 0 20px;
	padding: 0 0 20px;
	border-bottom: 1px solid #666;
	clear: both;
}
.company_img {
	width: 200px;
	text-align: center;
	float: left;
}
.company_img img {
	width: 150px;
}
.company_txt {
	padding: 0 0 0 200px;
}
.company_name {
	margin: 0 0 5px;
	font-weight: 700;
}
.company_explanation {
	font-size: 1.3rem;
	line-height: 1.5;
}
.company_inr.advisor {
	margin: 0;
	padding: 15px;
	border: 5px solid #c5ebeb;
}
.company_inr.advisor .company_img {
	width: 160px;
}
.company_inr.advisor .company_txt {
	padding: 0 0 0 185px;
}

@media only screen and (max-width: 767px) {
	#sec_conference {
		padding: 20px;
	}

	.program_ttl h2 {
		font-size: 1.5rem;
		float: none;
	}
	.program_ttl .time {
		margin: 0 0 5px;
		font-size: 1.4rem;
		font-weight: 400;
		float: none;
	}

	.program {
		padding: 20px 20px 0;
	}
	.program:last-child {
		padding: 20px;
	}
	.program h3 {
		margin: 0 0 10px;
		font-size: 1.4rem;
	}
	.program_img {
		width: 100%;
		margin: 0 0 15px;
		text-align: center;
		float: none;
	}
	.program_img img {
		width: 90px;
	}
	.program_txt {
		padding: 0;
	}
	.program_txt .ttl {
		margin: 0 0 10px;
		font-size: 1.5rem;
	}
	.program_txt p {
		margin: 0 0 10px;
		padding: 0 0 10px;
	}

	.company {
		padding: 20px;
	}
	.company p {
		margin: 0 0 30px;
		font-size: 1.3rem;
	}
	.company_img {
		width: 100%;
		margin: 0 0 10px;
		float: none;
	}
	.company_txt {
		padding: 0;
	}
	.company_name {
		margin: 0 0 5px;
		text-align: center;
	}
	.company_inr.advisor {
		margin: 0;
		padding: 10px;
	}
	.company_inr.advisor .company_img {
		width: 100%;
	}
	.company_inr.advisor .company_txt {
		padding: 0;
	}
}


/* === workshop === */

#sec_workshop {
	padding: 60px 0 90px;
	background: #00b2d5;
	color: #fff;
}
#sec_workshop h2 {
	margin: 0 0 45px;
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}
#sec_workshop .name {
	margin: 0 0 5px 0;
}
#sec_workshop .name span {
	margin: 0 5px 0 0;
	padding: 0 5px;
	background: #fff;
	color: #00b2d5;
	display: inline-block;
}
.workshop {
	margin-top: 50px;
	clear: both;
}
.workshop h3 {
	margin: 0 0 10px 0;
	padding: 5px 10px;
	background: #fff;
	color: #00b2d5;
	font-size: 2.1rem;
	font-weight: 700;
	line-height: 1.5;
}
.workshop h4 {
	margin: 0 0 10px 0;
	font-size: 2.4rem;
	font-weight: 700;
}
.workshop h4 span {
	font-size: 1.8rem;
	display: inline-block;
}
.workshop dl {
	margin: 15px 0 0;
}
.workshop dl dt {
	width: 4em;
	margin: 0 0 10px;
	padding: 2px 0;
	background: #fff;
	color: #00b2d5;
	text-align: center;
	float: left;
	clear: both;
}
.workshop dl dd {
	margin: 0 0 10px;
	padding: 2px 0 2px 5em;
}

@media only screen and (max-width: 767px) {
	#sec_workshop {
		padding: 20px;
	}
	#sec_workshop h2 {
		margin: 0 0 30px;
		font-size: 1.6rem;
	}

	.workshop {
		margin-top: 25px;
	}
	.workshop h3 {
		margin: 0 0 10px 0;
		font-size: 1.5rem;
	}
	.workshop h4 {
		margin: 0 0 10px 0;
		font-size: 1.5rem;
	}
	.workshop h4 span {
		font-size: 1.3rem;
	}
	.workshop dl {
		margin: 15px 0 0;
	}
	.workshop dl dt {
		width: 4em;
		margin: 0 0 10px;
		padding: 2px 0;
		background: #fff;
		color: #00b2d5;
		text-align: center;
		float: left;
		clear: both;
	}
	.workshop dl dd {
		margin: 0 0 10px;
		padding: 2px 0 2px 5em;
	}
}



/* === entry === */

#sec_entry {
	padding: 60px 0 90px;
	background: #00aca8;
	color: #fff;
	text-align: center;
}
#sec_entry h2 {
	margin: 0 0 20px;
	font-size: 2.4rem;
	font-weight: 700;
}
#sec_entry p {
	font-size: 1.2rem;
	text-align: center;
}
.btn {
	margin: 0 0 10px;
}
.btn a {
	width: 320px;
	height: 60px;
	margin: 0 5px;
	border-radius: 30px;
	background: #fff;
	color: #00aca8;
	font-weight: 700;
	line-height: 60px;
	text-decoration: none;
	display: inline-block;
}
.btn a:hover {
	background: #c5ebeb;
}

@media only screen and (max-width: 767px) {
	#sec_entry {
		padding: 30px 0 45px;
	}
	#sec_entry h2 {
		font-size: 1.8rem;
	}
	.btn {
		margin: 0 0 10px;
	}
	.btn a {
		width: 240px;
		height: 40px;
		margin: 5px;
		border-radius: 20px;
		line-height: 40px;
	}
	.btn a:hover {
		background: #c5ebeb;
	}
}