@charset "UTF-8";
/* CSS Document */


/*---------------------------------------------
★pageCommon
---------------------------------------------*/
section h3 {
	font-size: 350%;
}

.blockBg {
	background: url(../images/sec02_bg.jpg) no-repeat;
	background-size: cover;
}

.redBg {
	background: url(../images/sec03_bg.jpg);
	background-size: cover;
}

.fontRed {
	color:#a00606 !important; 
}



/*---------------------------------------------
★#mv
---------------------------------------------*/
#mv {
	height:100%;
	
}

#mv .mvInr {
	position: absolute;
	top: -2%;
	right: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
}

#mv .mvInr .txtArea {
	display: table;
	position: relative;
	z-index: 3;
	height: 100%;
	max-width: 1000px;
	width: 60%;
	margin:0 auto;
}

#mv .mvInr .txtArea .inr {
	display: table-cell;
	vertical-align: middle;
}

#mv .mvInr .txtArea .cat {
	overflow: hidden;
	display: table;
	width: 100%;
	background: url(../images/mv_txt_bg.png) 100% center no-repeat;
	padding: 10px 30px 8px;
	margin-bottom: 60px;
}

#mv .mvInr .txtArea .cat h3 {
	display: table-cell;
	width: 30%;
	vertical-align: middle;
	line-height: 0;
}

#mv .mvInr .txtArea .cat p {
	display: table-cell !important;
	width: 70%;
	vertical-align: middle;
	color: #fff;
	text-align: left;
	padding-left: 30px;
	line-height: 1.2;
}

#mv .mvInr .txtArea .cat p.spDisp {
	display: none !important;
}

#mv .mvInr .txtArea .mvLogo {
	max-width: 600px;
	width: 60%;
}



/*---------------------------------------------
★#about
---------------------------------------------*/

#about  {
	margin-top: -280px;
}

#about #aboutInr {
	height: 800px;
	position: relative;
	overflow: hidden;
}

#about #aboutInr .txtArea {
	float: left;
	padding: 330px 50px 80px;
	width: 750px;
	height: 100%;
	display: table;
}

#about #aboutInr .txtArea .inr {
	display: table-cell;
		vertical-align: middle;
}

#about #aboutInr .img {
	position: absolute;
	right: 0;
	left: 600px;
	background-image: url(../images/sec02_img01.png);
	background-repeat: no-repeat;
	background-size:cover;
	height: 800px;
}


/*---------------------------------------------
★#cylance
---------------------------------------------*/
#cylance{
	background-color: #bbb;
}

#cylance .bgcolor{
	padding: 120px 0;
	background: url(../images/bg_grid_gray.png) repeat top left;
}

#cylance .inner{
	max-width: 1300px;
	margin: auto;
}

#cylance .col2{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	width: 100%;
	margin-bottom: 60px;
	align-items: center;
}

#cylance .col2 figure{
	width: 30%;
}

#cylance .col2 figure figcaption{
	font-size: 1.3rem;
	letter-spacing: -0.01em;
}

#cylance .col2 figure figcaption span{
	font-size: 1.25em; 
}

#cylance .col2 .colInner{
	width: 70%;
	padding-left: 5%;
}

#cylance .col2 figure img{
	width: 100%;
	vertical-align: top;
	margin-bottom: 10px;
}

#cylance p{
	margin-bottom: 20px;
}

#cylance .col2 .colInner p{
	font-size: 2rem;
}

#cylance .col2 .colInner p span{
	font-size: 200%;
}

#cylance h4{
	margin-bottom: 10px;
}

#cylance h4 img{
	max-width: 699px;
}

/*---------------------------------------------
★#rate
---------------------------------------------*/

#rate {
	position: relative;
	padding: 200px 50px;
	color: #fff;
}

#rate p.img {
	position: absolute;
	right: 0;
	top: 0;
	width: 700px;
}

#rate p.img img {
	width: 100%;
	height: auto;
}

#rate .inr {
	  width : -webkit-calc(100% - 700px) ;
   width : calc(100% - 700px) ;
}

#rate .inr h3 {
	width: 100%;
	max-width: 900px;
	margin-bottom: 20px;
}

#rate .inr h3 img {
	width: 100%;
	height: auto;
}

#rate .inr h4 {
	font-size: 250%;
	color: #fff;
	letter-spacing: 0.15em;
	margin-bottom: 10px;
}




/*---------------------------------------------
★#cat
---------------------------------------------*/

#cat {
	background: url(../images/sec04_bg.jpg) no-repeat;
	background-size: cover;
	display: table;
	width: 100%;
	padding: 50px 5% 50px 1%;
}

#cat p.img {
	display: table-cell;
	width: 50%;
	vertical-align: middle;
}

#cat .txtArea {
	display: table-cell;
	width: 50%;
	vertical-align: middle;
	color: #fff;
}

#cat .txtArea p.caution {
	margin-top: 20px;
	font-size: 75%;
	color: rgba(207,207,207,1.00);
}



/*---------------------------------------------
★#features
---------------------------------------------*/

#features {
	background: url(../images/sec05_bg.png) no-repeat;
	background-size: cover;
	padding: 120px 0 400px;
	position: relative;
	z-index: 1;
}

#features h3 {
	color: #fff;
}

#features ul {
	max-width: 1300px;
	width: 96%;
	margin: 0 auto;
	overflow: hidden;
}

#features ul li {
	width: 31%;
	margin-right: 3%;
	float: left;
}

#features ul li:last-child {
	margin-right: 0;
}

#features ul li h4 {
	color: #138d4b;
	font-size: 120%;
	text-align: center;
}

#features ul li p {
	color: #fff;
	font-size: 80%;
}





/*---------------------------------------------
★#agenda
---------------------------------------------*/

#agenda {
	background:url(../images/sec06_bg.jpg) no-repeat;
	background-size: cover;
	padding: 250px 0;
	margin-top: -300px;
	position: relative;
	z-index: 0;
}

#agenda .scInr {
	position: relative;
	z-index: 0;
}

#agenda .scInr h3 {
	color: #fff;
}

#agenda table {
	width: 100%;
	color: #fff;
}

#agenda table th {
	font-size: 150%;
	padding: 0 30px 30px 0;
}

#agenda table th, #agenda table td {
	vertical-align: top;
}

#agenda table td {
	padding: 0 0 30px 30px;
}

#agenda table td.cercle {
	position: relative;
	padding: 0 0 30px 0;
}

#agenda table td.cercle::before {
	content: "";
	border-left: 3px dotted #fff;
	position: absolute;
	bottom: 4px;
	left: 50%;
	margin-left: -1.5px;
	height : -webkit-calc(100% - 42px) ;
 height  : calc(100% - 42px) ;
}

#agenda table tr.noBorder td.cercle::before {
	content: none;
}

#agenda table td h4 {
	font-size: 150%;
	margin-bottom: 10px;
	text-transform: uppercase;
}


#agenda table td h5 {
	font-size: 120%;
	text-transform: uppercase;
	margin-bottom: 10px
}

#agenda table td .inr {
	background: rgba(255,255,255,.2);
	border:#fff 1px solid;
	padding: 30px;
}

#agenda table td .inr p {
	font-size: 90%;
	opacity: 0.8;
}





/*---------------------------------------------
★#speaker
---------------------------------------------*/

#speaker  {
	margin-top: 0;
	width: 100%;
	position: relative;
	z-index: 1;
}

#speaker #speakerInr {
	height: 680px;
	position: relative;
	width: 100%;
	z-index: 1;
}

#speaker #speakerInr .txtArea {
 padding-left: 500px;
	display: table;
	height: 100%;
	width: 100%;
	padding-right: 5%;
}

#speaker #speakerInr .txtArea .inr {
	display: table-cell;
	vertical-align: middle;
	position: relative;
	z-index: 2;
}

#speaker #speakerInr .txtArea .inr ul {
	overflow: hidden;
}

#speaker #speakerInr .txtArea .inr ul li {
	float: left;
	width: 40%;
	margin-right: 4%;
}

#speaker #speakerInr .txtArea .inr ul li:last-child {
	margin-right: 0;
}

#speaker #speakerInr .txtArea .inr ul li h4 {
	font-size: 120%;
}

#speaker #speakerInr .txtArea .inr ul li p {
	font-size: 85%;
}

#speaker #speakerInr .img {
	position: absolute;
	right: 950px;
	top: -337px;
	height: 100%;
	z-index: 1;
	width: -webkit-calc(100% - 800px) ;
 width: calc(100% - 800px) ;
}

#speaker #speakerInr .img img {
	width: 650px;
}



/*---------------------------------------------
★#venue
---------------------------------------------*/

#venue {
	padding: 120px 0;
}

#venue .scInr {
	display: table;
}

#venue h3  {
	color: #fff !important;
}

#venue .scInr .img {
	width: 40%;
	display: table-cell;
	vertical-align: middle;
}

#venue .scInr .txtArea {
	width: 60%;
	display: table-cell;
	vertical-align: middle;
	padding-left: 30px;
	color: #fff;
}

#venue .scInr .txtArea h4 {
	font-size: 150%;
}

#venue .scInr .txtArea p.mapLink a {
	color: #fff;
	text-decoration: underline;
}

/*---------------------------------------------
★#register
---------------------------------------------*/

#register {
	background: url(../images/sec04_bg.jpg) no-repeat;
	background-size: cover;
	width: 100%;
	padding: 60px 0;
}

#register h3 {
	color: #138d4b;
}

#register .sub {
	color: #fff;
	font-size: 250%;
	line-height: 1.2;
}

#register .gBtn a {
	padding: 25px 100px 22px;
	font-size: 200%;
}

#register p.caution {
	color: #fff;
}



header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  z-index: 999 !important;
  width: 100% !important;
  background: none;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

header.scroll {
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
 background:rgba(0,0,0,0.8);
}

#header.scroll .hdInr {
	border-bottom: none;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}



/* for TUB
-------------------------------------------------------------------------------------*/


@media only screen and (max-width: 1100px) {
	
#mv .mvInr .txtArea .cat {
	margin-bottom: 20px;
}

#mv .mvInr .txtArea .cat p {
	font-size: 14px;
	}

	
/*---------------------------------------------
★#rate
---------------------------------------------*/

#rate {
	padding: 50px 50px;
}

#rate p.img {
	width: 350px;
}

#rate .inr {
	  width : -webkit-calc(100% - 350px) ;
   width : calc(100% - 350px) ;
}

#rate .inr h3 {
	max-width: 100%;
}
	
#rate .inr h4 {
	font-size: 160%;
	margin-bottom: 5px
}



	
}


header.fixed {
	position: fixed;
	left: 0;
	top: 0;
}












/* for SP
-------------------------------------------------------------------------------------*/

@media only screen and (max-width: 800px) {
section h3 {
	font-size: 250%;
}

	
/*#mv*/
	
#mv .mvInr {
	top: -5%;
}

#mv .mvInr .txtArea {
	margin: 0 auto;
	max-width: 1000px;
	width: 90%;
}
	
#mv .mvInr .txtArea .cat {
	display: block;
	width: 100%;
	padding: 5px 8px 3px;
	margin-bottom: 10px;
	background-size: cover;
}

#mv .mvInr .txtArea .cat h3 {
	display: block;
	width: 120px;
	margin-bottom: 5px
}

#mv .mvInr .txtArea .cat p {
	display: block;
	width: 100%;
	padding-left: 0;
	font-size: 10px;
}

#mv .mvInr .txtArea .cat p.spDisp {
	display: block !important;
}
	
#mv .mvInr .txtArea .cat p.spHide {
	display: none !important;
}
	
/*---------------------------------------------
★#about
---------------------------------------------*/

#about  {
	margin-top: -280px;
}

#about #aboutInr {
	height: auto;
	position: relative;
	overflow: hidden;
}

#about #aboutInr .txtArea {
	float: left;
	padding: 330px 5% 60px;
	width: 95%;
	height: 100%;
	display: block;
	position: relative;
	z-index: 4;
}

#about #aboutInr .txtArea .inr {
	display: table-cell;
		vertical-align: middle;
}

#about #aboutInr .img {
display: none;
}

	
/*---------------------------------------------
★#cylance
---------------------------------------------*/
#cylance .bgcolor{
	padding: 60px 5%;
	}	
#cylance .col2{
	flex-flow: column;
	width: 100%;
	}
	
#cylance .col2 figure{
	width: 100%;
	margin-bottom: 30px;
	order: 2;
	}
	
#cylance .col2 .colInner{
	width: 100%;
	padding-left: 0;
	order: 1
	}
	
#cylance .col2 .colInner p{
	font-size: 1.6rem;
	
	}
#cylance h4{
	font-size: 240%;
	margin-bottom: 10px;
	text-align: left !important;
	}	

	
	
/*---------------------------------------------
★#rate
---------------------------------------------*/

#rate {
	position: relative;
	padding: 60px 0;
	color: #fff;
}

#rate p.img {
	position: relative;
	width: 100%;
	text-align: right;
}

#rate p.img img {
	width: 80%;
	height: auto;
}

#rate .inr {
	width : 100%;
	padding: 0 5%;
}

#rate .inr h3 {
	margin-bottom: 0;
}

#rate .inr h3 img {
	width: 100%;
	height: auto;
}

#rate .inr h4 {
	font-size: 130%;
	margin-bottom: 0;
}


	
	

/*---------------------------------------------
★#cat
---------------------------------------------*/

#cat {
	display: block;
	width: 100%;
	padding: 60px 5%;
}

#cat p.img {
	display: block;
	width: 100%;
}

#cat .txtArea {
	display: block;
	width: 100%;
}

#cat .txtArea p.caution {
	margin-top: 10px;
}

	
	
/*---------------------------------------------
★#features
---------------------------------------------*/

#features {
	padding: 60px 5% 420px;
	background-size: cover;
}


#features ul {
	width: 100%;
}

#features ul li {
	width: 100%;
	margin-right: 0%;
	float: none;
	margin-bottom: 30px;
}

	#features ul li p.img {
		width: 70%;
		margin: 0 auto;
	}

#features ul li h4 {
	color: #138d4b;
	font-size: 120%;
	text-align: center;
}

#features ul li p {
	color: #fff;
	font-size: 80%;
}
	
	

/*---------------------------------------------
★#agenda
---------------------------------------------*/

#agenda {
	background:url(../images/sec06_bg.jpg) no-repeat;
	padding: 80px 0 60px;
	margin-top: -420px;
}

#agenda .scInr {
	margin: 0 auto;
	width: 90%;
}

#agenda table {
	width: 100%;
	color: #fff;
}

#agenda table th {
	font-size: 150%;
	display: block;
	text-align: left;
	padding:0;
}

#agenda table td {
	padding: 0 0 30px 10px;
	display: inline-block;
	width: -webkit-calc(100% - 30px) ;
 width  : calc(100% - 30px) ;
	position: relative;
}

#agenda table td.cercle {
	width: 25px;
	padding: 0 0 30px 0;
	display: inline-block;
}
	
	#agenda table td.cercle img {
		width: 100%;
		height: auto;
	}

#agenda table td.cercle::before {
	content: none;
}

#agenda table td h4 {
	font-size: 150%;
	margin-bottom: 10px;
}

#agenda table td .inr {
	padding: 15px;
}

#agenda table td.txt::before {
	content: "";
	border-left: 3px dotted #fff;
	position: absolute;
	bottom: 8px;
	left: -18px;
	margin-left: -1.5px;
	height : -webkit-calc(100% - 42px) ;
 height  : calc(100% - 42px) ;
}

	#agenda table .noBorder td.txt::before{
		content: none;
	}
	
	
	
/*---------------------------------------------
★#speaker
---------------------------------------------*/
#speaker {
		padding:60px 5%
}

#speaker #speakerInr {
	height: auto;
}

#speaker #speakerInr .txtArea {
 padding-left: 0;
	display: block;
	padding-right: 0;
}

#speaker #speakerInr .txtArea .inr {
	display: block;
}

#speaker #speakerInr .txtArea .inr ul li {
	float: none;
	width: 100%;
	margin-right: 0;
	margin-bottom: 30px;
}
	
#speaker #speakerInr .txtArea .inr ul li:last-child{
	margin-bottom: 0;
}

#speaker #speakerInr .img {
	display: none;
}


/*---------------------------------------------
★#venue
---------------------------------------------*/

#venue {
	padding: 60px 5%;
}

#venue .scInr {
	display: block;
	width: 100%;
	margin: 0;
}

#venue .scInr .img {
	width: 100%;
	display: block;
}

#venue .scInr .txtArea {
	width: 100%;
	display: block;
	padding-left: 0;
}


/*---------------------------------------------
★#register
---------------------------------------------*/


#register .sub {
	color: #fff;
	font-size: 200%;
}
	

#register .gBtn a {
	padding: 18px 20px 15px;
	font-size: 200%;
}
	
}
/*/*/