@charset "utf-8";
/* CSS Document */
*, *::before, *::after {
	box-sizing: border-box;
}
html {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","Verdana","Osaka","ＭＳ Ｐゴシック",sans-serif;
	font-size: 18px;
	color: #555555;
	-webkit-text-size-adjust: 100%;
}
a:hover {
	opacity: 0.8;
	transition: opacity 0.2s;
}
/* -----------------------------
common 
-----------------------------*/
.inner-wrapper {
	width: 960px;
	margin: 0 auto;
	padding: 0 64px;
}
.disc-heading {
	font-weight: bold;
	margin-top: 20px;
	margin-bottom: 20px;
}
.disc-heading > span {
	font-weight: normal;
}
.link-btn > a {
	position: relative;
	display: inline-block;
	padding: 10px 70px 10px 30px;
	color: #ffffff;
	font-size: 24px;
	font-weight: 700;
}
.link-btn > a::after {
	position: absolute;
	font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Verdana","Osaka","ＭＳ Ｐゴシック",sans-serif;
	content: '▼';
	display: inline-block;
	top: 50%;
	right: 30px;
	width: 26px;
	height: 26px;
	line-height: 26px;
	font-size: 16px;
	background: #fff;
	border-radius: 13px;
	transform: translateY(-50%);
	text-align: center;
}
.pl25 {
	padding-left: 25px !important;
}
.mb0 {
	margin-bottom: 0 !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.mr40 {
	margin-right: 40px !important;
}
.mt0 {
	margin-top: 0 !important;
}
.mt35 {
	margin-top: 35px !important;
}
.fWb {
	font-weight: bold !important;
}
.clear::after {
	content: '';
	display: block;
	clear: both;
}
.clearL {
	clear: left !important;
}

/* -----------------------------
header 
-----------------------------*/
header {
	border-top: 8px solid #2fa592;
}
.header-wrapper {
	position: relative;
	width: 960px;
	height: 115px;
	margin: 0 auto;
	padding: 15px 30px 0;
	box-sizing: border-box;
}
.header-date {
	position: absolute;
    top: 18px;
	right: 0;
}
.header-link {
	position: absolute;
	top: 0;
	right: 0;
}
.header-link > li {
	display: inline-block;
	margin-left: 2px;
}
nav {
	background-color: #eef0f2;
}
.nav-list {
	width: 960px;
	margin: 0 auto;
	padding: 10px 30px 14px;
}
.nav-list > li {
	display: inline-block;
	font-size: 15px;
	margin-right: 15px;
}
.nav-list > li:last-child {
	margin-right: 0;
}
.nav-item {
	color: #0c1419;
	text-decoration: underline;
}
/* topイメージ */
#top-image {
	position: relative;
	height: 296px;
	overflow: hidden;
}
.top_container::after {
	position: absolute;
	display: block;
	content: '';
	bottom: 0;
	width: 100%;
	height: 94px;
	background-color: rgba(89, 115, 128, 0.5);
	z-index: -10;
}
.top_container {
	position: relative;
	height: 296px;
	background: #2fa592 center 0 no-repeat;
}
.top_container01 {background-image: url(../images/top-bg01.jpg);}
/*.top_container02 {background-image: url(../images/top-bg02.jpg);}*/
.top-text {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 15px;
}
.top-text > span {
	display: block;
	width: 960px;
	margin: 0 auto;
	padding: 0 30px;
}
/* 申し込みリンク */
.application-info {
	background: #2fa592;
	height: 84px;
	color: #fff;
}
.application-info_wrapper {
	position: relative;
	width: 960px;
	margin: 0 auto;
	padding: 0 30px;
}
.application-info_text {
	line-height: 84px;
	font-size: 20px;
}
.application-info_text_span {
    display: inline-block;
    vertical-align:top;
}
.application-info_text > b {
	display: inline-block;
	font-weight: bold;
	font-size: 34px;
	margin-right: 30px;
}
.application-info_link {
	position: absolute;
	top: 13px;
	right: 0;
}
.application-info_link > a {
	background-color: #ffc51a;
	box-shadow: 0px 4px 0px 0px #99770f;
	text-shadow: 0px 1px 0px rgba(153, 119, 15, 0.3);
}
.application-info_link > a::after {
	color: #ffc51a;
}
/* アニメーション用 type1 */
.type1.top_container::after {
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0s;
}
.type1.slick-current.top_container::after {
	transform: scaleX(1);
	transition: transform 0.5s 1s;
}
.type1 .top-text {
	opacity: 0;
	transform: translateY(10px);
}
.type1.slick-current .top-text {
	opacity: 1;
	transform: translateY(0px);
	transition: opacity 0.5s 1.5s, transform 0.5s 1.5s;
}
/* アニメーション用 type2 */
.type2.top_container::after {
	opacity: 0;
	transform: translateY(5px);
	transition: opacity 0.5s 0s, transform 0.5s 0s;
}
.type2.slick-current.top_container::after {
	opacity: 1;
	transform: translateY(0px);
	transition: opacity 1s 1.5s, transform 1s 1.5s;
}
.type2 .top-text {
	opacity: 0;
	transform: translateY(5px);
	transition: opacity 0.5s 0s, transform 0.5s 0s;
}
.type2.slick-current .top-text {
	opacity: 1;
	transform: translateY(0px);
	transition: opacity 1s 1.5s, transform 1s 1.5s;
}

/* -----------------------------
lead
-----------------------------*/
#lead {
	width: 960px;
	margin: 0 auto;
	padding: 60px 0;
}
h2.lead-heading,
h2.smart-work_heading {
	color: #2fa592;
	font-size: 32px;
	text-align: center;
	margin-bottom: 35px;
}
.lead-text {
	/*text-align: center;*/
	margin-bottom: 30px;
}
.more-document {
	text-align: center;
}
.more-document > a {
	background-color: #ff961a;
	box-shadow: 0px 4px 0px 0px #99590f;
	text-shadow: 0px 1px 0px rgba(153, 119, 15, 0.3);
}
.more-document > a::after {
	color: #ff9419;
}

/* -----------------------------
smart-work
-----------------------------*/
.project, .point1, .point2, .point3, .point4, .point5 {
	padding: 60px 0;
}
.project {
	background-color: #f5f5f5;
}
.project::after {
	content: '';
	display: block;
	clear: both;
}
.smart-work_left {
	width: 410px;
	float: left;
	box-sizing: border-box;
}
.smart-work_right {
	width: 400px;
	float: right;
	box-sizing: border-box;
}
.smart-work_list > li {
	font-size: 14px;
	margin-bottom: 6px;
}
.smart-work_heading2 {
	font-weight: bold;
	margin: 0 0 15px;
}
.smart-work_text {
	font-size: 14px;
}

/* -----------------------------
point
-----------------------------*/
.point-heading {
/*	height: 57px;
	line-height: 57px;*/
	color: #2fa592;
	font-size: 32px;
	/*padding-left: 125px;*/
	padding: 5px 0 20px 110px;
	margin-bottom: 35px;
    letter-spacing: -0.02em;
}
.point1 .point-heading {background: url(../images/icon-point1.png) no-repeat;}
.point2 .point-heading {background: url(../images/icon-point2.png) no-repeat;}
.point3 .point-heading {background: url(../images/icon-point3.png) no-repeat;}
.point4 .point-heading {background: url(../images/icon-point4.png) no-repeat;}
.point5 .point-heading {background: url(../images/icon-point5.png) no-repeat;}
.section-text {
	margin-bottom: 30px;
}
.section-text > span {
	font-size: 14px;
}

/* point1 */
.point1 {
	background-color: #f5f5f5;
}
.point1-wrapper {
	margin: 0 -16px 0 0;
}
.point1-wrapper::after {
	content: '';
	display: block;
	clear: both;
}
.point1-wrapper > p {
	float: left;
	font-size: 16px;
}
.point1-text {
	width: 256px;
	margin-right: 55px;
}
.point1-img > span {
	display: inline-block;
	margin-bottom: 25px;
}
/* point2 */
.point2-wrapper::after {
	content: '';
	display: block;
	clear: both;
}
.point2_left {
	width: 270px;
	float: left;
}
.point2_right {
	width: 540px;
	float: right;
}
.point2-smart-work {
	padding-right: 215px;
	background: url(../images/smartwork-img01.png) no-repeat right 50px;
	font-size: 15px;
}
.point2-smart-work > span {
	display: block;
	margin-bottom: 15px;
}
.point2-project {
	margin-top: 25px;
	padding: 15px;
	background-color: #f5f5f5;
}
/* point3 */
.point3 {
	background-color: #ebfaf7;
}
.point3-list::after {
	content: '';
	display: block;
	clear: both;
}
.point3-list > li {
	margin-bottom: 40px;
	clear: right;
}
.point3-item_left {
	float: left;
}
.point3-item_right {
	float: right;
	clear: none;
}
.point3-inner-list::after {
	content: '';
	display: block;
	clear: both;
}
.w400 {
	width: 400px !important;
}
.point3-inner-text {
	width: 441px;
	font-size: 16px;
}
.point3-media-list > li {
	float: left;
	font-size: 12px;
	text-align: center;
	margin-right: 10px;
}
.point3-caption {
	font-size: 12px;
}
.point3-caption2 {
	display: inline-block;
	font-size: 12px;
	font-weight: bold;
	vertical-align: top;
	margin-bottom: 10px;
}
.list-center {
    text-align: center;
    line-height: 2em;
}
/* point4 */


/* point5 */
.point5 {
	background-color: #f5f5f5;
}
.point5-note {
	text-align: right;
	font-size: 14px;
}

/* -----------------------------
outline
-----------------------------*/
.content-section {
	padding-bottom: 65px;
	border-top: 6px solid #2fa592;
}
.content-section > h2 {
	height: 156px;
	line-height: 156px;
	background: url(../images/bg-heading.gif) repeat-x;
	text-align: center;
	font-size: 32px;
	color: #2fa592;
}
#outline2017.content-section,
#gallery2017.content-section {
	border-color: #2fedce;
}
#outline2017 > h2,
#gallery2017 > h2 {
	color: #2fedce;
}
#gallery2017 > h2 {
	color: #2fedce;
    line-height: 1.2em;
    padding: 60px 0;
    height: 100%;
}
#gallery2017 > h2 span{
    font-size: 18px;
}
.outline-list {
	width: 100%;
	table-layout: fixed;
	margin-bottom: 30px;
	font-size: 16px;
}
.outline-list tr:first-child {
	border-top: 1px solid;
}
.outline-list tr {
	border-bottom: 1px solid;
}
.outline-list th {
	width: 30%;
	padding: 10px 30px 10px 10px;
	text-align: right;
}
.outline-list th > span {
	font-size: 13px;
}
.outline-list td {
	width: 70%;
	padding: 10px 30px 10px 10px;
}

/* 2018概要 */
#outline .outline-list tr:first-child {
	border-top-color: #2fa592;
}
#outline .outline-list tr {
	border-bottom-color: #2fa592;
}
#outline .outline-list th {
	color: #2fa592;
}

/* 2017概要 */
#outline2017 .outline-list {
	margin-bottom: 70px;
}
#outline2017 .outline-list tr:first-child {
	border-top-color: #2fedce;
}
#outline2017 .outline-list tr {
	border-bottom-color: #2fedce;
}
#outline2017 .outline-list th {
	color: #2fedce;
}
.exhibitor-list {
	background-color: #f0faf8;
	border: 1px solid #2fedce;
	box-sizing: border-box;
	font-size: 14px;
}
.exhibitor-list::after {
	content: '';
	display: block;
	clear: both;
}
.exhibitor-list > ul {
	width: 50%;
	float: left;
	padding: 20px;
}
.exhibitor-list > ul > li {
	text-indent: -1em;
	padding-left: 1em;
	margin-bottom: 5px;
}
.exhibitor-list > ul > li::before {
	content: '・';
	font-weight: bold;
}
.exhibitor-note {
	text-align: right;
	padding: 0 20px 20px;
}
/* -----------------------------
gallery
-----------------------------*/
.gallery-list {
	width: 960px;
	margin: -15px auto 0;
}
.gallery-list::after {
	content: '';
	display: block;
	clear: both;
}
.gallery-item {
	float: left;
	margin: 15px 15px 0 0;
}
.gallery-item:nth-child(5n) {
	margin-right: 0;
}
.gallery-item > img {
	width: 100%;
	vertical-align: bottom;
}

/* -----------------------------
schedule
-----------------------------*/
.schedule-table {
	margin: 0 auto;
	table-layout: fixed;
}
.schedule-table th, 
.schedule-table td {
	width: 350px;
	font-size: 24px;
	padding: 20px 0;
	box-sizing: border-box;
	border: 1px solid #2fa592;
	text-align: center;
}
.schedule-table th {
	background-color: #f2faf9;
	color: #2fa592;
}

/* -----------------------------
application
-----------------------------*/
.application-attention {
	text-align: center;
	margin-bottom: 50px;
	font-size: 17px;
}
.application-attention > b {
	display: inline-block;
	color: #fb0606;
	font-size: 24px;
	margin-bottom: 25px;
}
.application-btn {
	text-align: center;
	margin-bottom: 20px;
}
.application-btn > a {
	background-color: #ff961a;
	box-shadow: 0px 4px 0px 0px #99590f;
	text-shadow: 0px 1px 0px rgba(153, 119, 15, 0.3);
	font-size: 32px;
}
.application-btn > a::after {
	content: '▶';
	color: #ff9419;
}
.application-btn2 > a {
	display: block;
	width: 400px;
	text-align: center;
	margin: 0 auto 20px;
	background-color: #fb0606;
	box-shadow: 0px 4px 0px 0px #800303;
	text-shadow: 0px 1px 0px rgba(153, 119, 15, 0.3);
	font-size: 32px;
}
.application-btn2 > a::after {
	content: '▶';
	color: #fb0606;
}
.application-box_deadline {
	color: #2fa592;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 50px;
	text-align: center;
}
.download-list {
	margin-right: -32px;
}
.download-list::after {
	content: '';
	display: block;
	clear: both;
}
.download-item {
	width: 256px;
	float: left;
	margin-right: 32px;
	font-size: 12px;
	line-height: 25px;
}

/* -----------------------------
inquiry
-----------------------------*/
.inquiry-wrapper::after {
	content: '';
	display: block;
	clear: both;
}
.inquiry-box {
	width: 400px;
	height: 230px;
	color: #2fa592;
	float: left;
	border: 1px solid #2fa592;
	text-align: center;
	font-size: 16px;
}
.inquiry-box:nth-child(2) {
	float: right;
}
.inquiry-box_heading {
	height: 56px;
	line-height: 56px;
	color: #2fa592;
	font-size: 18px;
	font-weight: bold;
	background-color: #f2faf9;
	margin-bottom: 18px;
}
.inquiry-box_link > a {
	display: inline-block;
	font-size: 20px;
	margin-top: 5px;
	color: #2fa592;
	text-decoration: underline;
}

/*-------------------------
ページトップへ戻る
-------------------------*/
#gotop{
	position: fixed;
	right: 30px;
	bottom: 50px;
	transform: translate3d(0, 0, 0);
}

/*-------------------------
footer
-------------------------*/
footer {
	border-top: 1px solid #ccc;
}
footer > .inner-wrapper {
	box-sizing: border-box;
	padding-top: 30px;
	padding-bottom: 40px;
}
.footer-img {
}
.footer-text {
	display: inline-block;
	float: right;
	font-size: 13px;
	line-height: 1.4;
}
.footer-text a:hover {
	text-decoration: underline;
}