﻿@charset "utf-8";
/* reset */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
word-break: break-all;
word-wrap: break-word;
}
html {
font-family: sans-serif;
line-height: 1.15;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
font-size: 14px;
line-height: 1.3;
}
body {
padding: 0;
margin: 0;
background: #fff;
color: #555;
font-size: 100%;
font-family: 'メイリオ','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック';
font-family: 'Noto Sans JP', sans-serif;
font-weight: normal;
width: 100%;
height: 100%;
}
li{
list-style: none;
}
ul::before,
ul::after,
ol::before,
ol::after,
dl::before,
dl::after {
display: none;
}
img {
max-width: 100%;
vertical-align: top;
}
a {
color: #555;
}
/* reset end */

/* wrap */
#wrap {
min-width: 320px;
padding-top: 80px;
overflow: hidden;
background-attachment: fixed;
}
#header {
min-width: 320px;
}
#wrap * {
box-sizing: border-box;
}
#wrap img {
vertical-align: top;
width: 100%;
height: auto;
}
#wrap .area {
position: relative;
clear: both;
display: block;
z-index: 10;
}
#wrap .area_in {
position: relative;
clear: both;
margin: 0 auto;
padding: 0 20px;
width: 100%;
max-width: 1300px;
}
	@media screen and (min-width: 768px) and (max-width: 2000px) {
	#wrap {
	background-size: 100% auto;
	}
	}
	@media screen and (max-width: 768px) {
	#wrap {
	background-image: url(../images/visual_bg_sp.jpg);
	background-position: center top;
	padding-top: 60px;
	}
	}
.pc {
display: block;
}
.sp {
display: none;
}
	@media screen and (max-width: 768px) {
	.pc {
	display: none;
	}
	.sp {
	display: block;
	}
	}
/* wrap end */

/* font */
.lato {
font-family: "Lato", sans-serif;
font-weight: 700;
font-style: normal;
}
/* font end */

/* header */
#header {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 90px;
z-index: 1;
z-index: 999;
background: #fff;
box-shadow: 0 2px 10px rgba(0,0,0,0.2);
transition: 0.2s;
}
#header * {
transition: 0.2s;
}
#header .area_in {
height: 100%;
display: flex;
flex-flow: row nowrap;
justify-content: flex-start;
align-items: stretch;
padding: 0;
}
#header .branding {
position: relative;
flex: 1 0 0%;
align-self: center;
display: flex;
}
#header .logo {
align-self: center;
padding: 10px;
}
#header .logo a {
display: flex;
height: 100%;
}
#header .logo img {
max-width: 140px;
height: auto;
}
@media (min-width: 576px) {
	#header .area_in {
	max-width:540px;
    }
}
@media (min-width: 768px) {
    #header .area_in {
	max-width:720px;
    }
}
@media (min-width: 992px) {
	#header .area_in {
	max-width:960px;
    }
}
@media (min-width: 1200px) {
    #header .area_in {
	max-width:1140px;
    }
}
@media screen and (max-width: 768px) {
	#header {
	height: 80px;
	height: 60px;
	box-shadow: none;
	}
	#header .logo img {
	max-width: 90px;
	}
}
/* header end */

/* menubtn */
#menubtn {
display: none;
position: absolute;
z-index: 99999;
width: 30px;
height: 23px;
right: 13px;
top: 17px;
cursor: pointer;
}
#menubtn {
transition: all .2s;
box-sizing: border-box;
}
#menubtn span {
display: inline-block;
transition: all .2s;
box-sizing: border-box;
}
#menubtn span {
position: absolute;
left: 0;
width: 100%;
height: 1px;
background-color: #ccc;
border-radius: 0;
}
#menubtn span:nth-of-type(1) {
top: 0;
}
#menubtn span:nth-of-type(2) {
top: 11px;
}
#menubtn span:nth-of-type(3) {
bottom: 0;
}
#menubtn.active span {

}
#menubtn.active span:nth-of-type(1) {
transform: translateY(11px) rotate(-45deg);
}
#menubtn.active span:nth-of-type(2) {
opacity: 0;
}
#menubtn.active span:nth-of-type(3) {
transform: translateY(-11px) rotate(45deg);
}
	@media screen and (max-width: 768px) {
	#menubtn {
	display: block;
	}
	}
/* menubtn end */

/* menu */
#menu ul {
display: flex;
width: 100%;
height: 100%;
max-width: 800px;
align-items: center;
}
#menu ul li a {
display: inline-block;
width: 100%;
height: 100%;
text-decoration: none;
text-align: center;
padding: 10px 13px;
font-weight: 500;
color: #222;
}
#menu ul li a:hover {
color: #f05048;
}
#menu ul li a.on {
color: #f05048;
}
a.comp span {
background: #f05048;
cursor: pointer;
display: inline-block;
font-size: 14px;
font-family: 'proxima-nova';
letter-spacing: 0.1em;
color: #ffffff;
line-height: 1.1;
outline: 0 none;
padding: 15px 20px;
border: none;
border-radius: 4px;
position: relative;
white-space: nowrap;
transition: 0.3s;
overflow: hidden;
font-weight: 600;
font-style: normal;
}
a.comp:hover span {
background: #000;
}
#menu li a.comp.contact_end span {
background: #999;
}
	@media screen and (max-width: 1100px) {
	#menu ul li a {
	padding: 5px;
	}
	}
	@media screen and (max-width: 890px) {
	#menu ul li a {
	}
	}
	@media screen and (max-width: 800px) {
	#menu ul {
	max-width: 600px;
	}
	}
	@media screen and (max-width: 768px) {
	#menu ul li {
	border-bottom: 1px solid rgba(0,0,0,0.05);
	}
	#menu ul li:nth-child(n+5) {
	border-bottom: none;
	}
	#menu ul li a {
	padding: 10px 15px;
	font-size: 110%;
	text-align: left;
	}
	#menu li a.comp span {
	padding: 10px 10px;
	font-size: 100%;
	}
	#menu {
	position: fixed;
	left: 100%;
	top: 0;
	height: 100%;
	width: 100%;
	padding: 60px 20px 0;
	background: #fff;
	transition: all 0.3s linear;
	z-index: 100;
	border-right: none;
	height: 100%;
	}
	#menu.active {
	left: 0;
	}
	#menu ul {
	border: none;
	display: block;
	width: 100%;
	max-width: 100%;
	}
	#menu ul li {
	display: block;
	}
	#menu ul li a {
	border: none;
	width: 100%;
	}
	#menu li > a > * {
	padding: 20px;
	color: #fff;
	}
	#menu ul li a.comp {
	padding: 15px 0;
	font-size: 90%;
	}
	}
/* menu end */

/* footer */
#footer {
background: #232323;
color: #fff;
padding: 40px 50px;
}
#footer a {
color: #fff;
text-decoration: none;
}
#footer .footer_logo {
margin-bottom: 20px;
}
#footer .footer_logo img {
max-width: 136px;
}
.footer_box {
display: flex;
flex-flow: row nowrap;
align-items: flex-end;
justify-content: space-between;
}
.footer_box_in .link01 {
color:#f05048!important;
text-transform: uppercase;
letter-spacing: 0.15em;
margin-bottom: 20px;
display: inline-block;
}
.footer_box_in .link02 {
font-size: 110%;
}
.txt_sns {
margin-bottom: 20px;
}
.socials-nav  {
color: #fff;
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: flex-end;
}
.socials-nav a:not(:last-child) {
margin-right: 20px;
}
.socials-nav a:first-child img {
max-width: 17px;
}
.socials-nav a:nth-child(2) img {
max-width: 16px;
}
.socials-nav a:nth-child(3) img {
max-width: 70px;
}
.socials-nav a:last-child img {
max-width: 18px;
}
@media screen and (max-width: 768px) {
#footer {
padding: 30px 0;
}
.footer_box {
flex-flow: column;
align-items: flex-start;
justify-content: flex-start;
}
.footer_box_in .link02 {
margin-bottom: 20px;
}		
}
/* footer end */

/* pagetop */
#pagetop {
position: fixed;
right: 10px;
bottom: -100px;
transition: all 0.3s linear;
opacity: 0;
z-index: 100;
}
#pagetop.active {
bottom: 10px;
opacity: 0.9;
}
#pagetop:hover {
}
#pagetop a {
display: block;
width: 60px;
height: 60px;
border-radius: 30px;
text-indent: -9999px;
border: 1px solid #999;
transition: 0.3s;
}
#pagetop a:before {
content: "";
position: absolute;
right: 50%;
top: 50%;
width: 15px;
height: 15px;
margin: -6px -9px 0 0;
border-top: 1px solid #999;
border-right: 1px solid #999;
transform: rotate(-45deg);
}
#pagetop:hover a {
background: #393939;
}
#pagetop:hover a:before {
border-top: 1px solid #fff;
border-right: 1px solid #fff;
}
	@media screen and (max-width: 768px) {
	#pagetop.active,
	#pagetop:hover {
	opacity: 0.8;
	}
	#pagetop a {
	width: 40px;
	height: 40px;
	border-radius: 20px;
	}
	#pagetop a:before {
	width: 10px;
	height: 10px;
	margin: -4px -6px 0 0;
	}
	}
/* pagetop end */

/* title */
.base_title {
font-size: 170%;
text-align: center;
letter-spacing: 0.15em;
color: #262627;
margin-bottom: 40px;
}
	@media screen and (max-width: 768px) {
	.base_title {
	font-size: 150%;
	}
	}
/* title end */


/* popup */
.mfp-bg {
opacity: 0.9;
background: #000;
}
.popup_contents {
display: none;
}
.mfp-content {
max-width: 700px!important;
max-width: inherit!important;
padding: 50px 50px;
}
.mfp-close {
position: fixed!important;
top: 15px!important;
right: 15px!important;
width: 30px!important;
height: 30px!important;
opacity: 1!important;
text-indent: -9999px;
position: relative;
}
.mfp-close:before,
.mfp-close:after {
position: absolute;
left: 0;
top: 50%;
content: "";
width: 30px;
height: 2px;
background: #fff;
}
.mfp-close:before {
transform: rotate(45deg);
}
.mfp-close:after {
transform: rotate(-45deg);
}
.mfp-close:hover {
opacity: 0.7!important;
}
button.mfp-arrow.mfp-arrow-left {
background: url(../js/prev_w.png) no-repeat center center / cover;
width: 50px;
height: 50px;
}
button.mfp-arrow.mfp-arrow-right {
background: url(../js/next_w.png) no-repeat center center / cover;
width: 50px;
height: 50px;
}
/*
左右矢印を中央に寄せる
	@media screen and (min-width: 768px) {
	button.mfp-arrow.mfp-arrow-left {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-370px, -25px);
	}
	button.mfp-arrow.mfp-arrow-right {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(320px, -25px);
	}
	}
*/
	
.mfp-arrow:after,
.mfp-arrow:before {
display: none;
}
.pop_prev,
.pop_next {
position: fixed;
top: 50%;
z-index: 100;
display: block;
width: 50px;
height: 50px;
cursor: pointer;
text-indent: -9999px;
transition: .3s;
}
.pop_prev {
left: 10px;
background: url(../js/prev_w.png) no-repeat center center / cover;
}
.pop_next {
right: 10px;
background: url(../js/next_w.png) no-repeat center center / cover;
}
.pop_prev:hover,
.pop_next:hover {
opacity: 0.7;
}
button.mfp-arrow.mfp-arrow-left,
button.mfp-arrow.mfp-arrow-right {
display: none;
}
/* popup end */

/* popup_box */
.mfp-content {
height: 100%;
}
.popup_box {
display: flex;
align-items: center;
height: 100%;
}
.popup_box_in {
margin: 60px 10px 10px 10px;
background: #fff;
border-radius: 0px;
padding: 30px;
box-shadow: 0 0 10px rgba(0,0,0,0.2);
max-width: 900px;
margin: 0 auto;
max-height: 100%;
overflow-y: scroll;
font-weight: 400;
font-size: 120%;
border-radius: 10px;
width: 100%;
min-height: 300px;
}
.popup_box_in {
}
.popup_box_in.program .layout .photo {
flex: 0 1 250px;
}
@media screen and (max-width: 768px) {
.popup_box_in.program .layout {
flex-flow: column nowrap;
}
.popup_box_in.program .layout .photo {
text-align: center;
flex: 1 0 0%;
}
.popup_box_in.program .layout .info {
padding: 20px 0 0 0;
}
}
/* popup_box end */

/* bg */
.bg01 {
background: #f1f2fb;
}
/* bg end*/

/*-------- index --------*/
/* index_visual */
#index_visual {
text-align: center;
padding: 130px 0 100px;
background: url(../images/visual_bg.jpg)no-repeat center bottom/cover;
letter-spacing: 0.15em;
}
#index_visual .visual_ttl01 {
font-size: 340%;
margin-bottom: 30px;
color: #262627;
font-weight: 500;
}
#index_visual .visual_ttl02 {
color: #f05048;
font-size: 140%;
margin-bottom: 30px;
font-weight: 500;
}
#index_visual .visual_date {
color: #262627;
font-size: 130%;
padding-bottom: 50px;
font-weight: 500;
}
#index_visual .icon {
margin-right: 10px;
}
#index_visual .icon img {
max-width: 20px;
margin-top: 3px;
}
	@media screen and (max-width: 768px) {
	#index_visual {
	position: relative;
	padding: 100px 0 70px;
	background: #F2F2FC;
	}
	#index_visual {
	padding: 150px 0;
	padding-top: calc(100vw*(120 / 800));
	padding-bottom: calc(100vw*(350 / 800));
	}
	#index_visual::before,
	#index_visual::after {
	content: "";
	position: absolute;
	left: 0;
	width: 100%;
	height: 100%;
	}
	#index_visual::before {
	left: 0;
	top: 0;
	background: url("../images/visual_bg2_sp.png") no-repeat left top / 100% auto;
	}
	#index_visual::after {
	right: 0;
	bottom: -1px;
	background: url("../images/visual_bg_sp.png") no-repeat left bottom / 100% auto;
	}
	#index_visual .area_in {
	position: relative;
	z-index: 10;
	}
	#index_visual .visual_ttl01 {
	}
	#index_visual .visual_ttl02 {
	margin-bottom: 30px;
	font-weight: 500;
	}
	#index_visual .visual_date {
	display: flex;
	flex-flow: row wrap;
	line-height: 2;
	justify-content: center;
	}
	#index_visual .icon {
	margin-right: 5px;
	}
	#index_visual .icon img {
	max-width: 15px;
	margin-top: 7px;
	}
	}
	@media screen and (max-width: 460px) {
	
	#index_visual .visual_ttl01 {
    font-size: 280%;
	line-height: 1.1;
	}
	#index_visual .visual_ttl02 {
	font-size: 110%;
	}
	#index_visual .visual_date {
	font-size: 100%;
	}
	}
/* index_visual end */

/* lead_area */
#lead_area {
position: relative;
padding: 100px 50px;
background: #121619;
background: linear-gradient(to right , #4B5186 , #74799E);
}
#lead_area * {
transition: .3s;
}
#lead_area .area_in {
position: relative;
z-index: 10;
}
#lead_area::before,
#lead_area::after {
content: "";
position: absolute;
display: block;
width: 20%;
height: 100%;
top: 0;
}
#lead_area::before {
left: 0;
background: url("../images/bg_l.png") no-repeat left top / 100% auto;
}
#lead_area::after {
right: 0;
background: url("../images/bg_r.png") no-repeat right bottom / 100% auto;
}
.lead_box {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: space-between;
}
.lead_img {
width: 40%;
max-width: 450px;
margin-right: 50px;
}
.lead_txt {
width: 60%;
width: 100%;
max-width: 820px;
max-width: 100%;
color: #464646 !important;
color: #fff !important;
letter-spacing: -0.05em;
font-size: 130%;
line-height: 1.6;
}
	@media screen and (max-width: 1400px) {
	#lead_area::before,
	#lead_area::after {
	width: 30%;
	}
	.lead_txt {
	width: 80%;
	margin: 0 auto;
	}
	}
	@media screen and (max-width: 768px) {
	#lead_area {
	padding: 150px 0;
	padding-top: calc(100vw*(150 / 800));
	padding-bottom: calc(100vw*(150 / 800));
	}
	.lead_box {
	flex-flow: column;
	align-items: center;
	justify-content: center;
	}
	.lead_img {
	width: 80%;
	max-width: 450px;
	margin-right:0;
	margin-bottom: 30px;
	}
	#lead_area::before,
	#lead_area::after {
	width: 100%;
	height: 100%;
	}
	#lead_area::before {
	left: 0;
	top: 0;
	background: url("../images/bg_t.png") no-repeat left top / 100% auto;
	}
	#lead_area::after {
	right: 0;
	bottom: 0;
	background: url("../images/bg_b.png") no-repeat right bottom / 100% auto;
	}
	.lead_txt {
	width: 100%;
	font-size: 110%;
	}
	}

/* lead_area end */

/* reason_area */
#reason_area {
padding: 60px 50px;
}
.list_reason {
display: flex;
flex-flow: row nowrap;
align-items: stretch;
justify-content: space-between;
}
.list_reason li {
background: #fff;
padding: 30px;
border: 1px solid #e9e9e9;
width: 32%;
text-align: center;
}
.list_reason li .icon {
margin-bottom: 20px;
}
.list_reason li .icon img {
max-width: 70px;
}
.list_reason li .img {
margin-bottom: 20px;
}
.list_reason li .txt {
font-size: 130%;
color: #555;
line-height: 1.6;
}
	@media screen and (max-width: 768px) {
	#reason_area {
	padding: 50px 0;
	}
	.list_reason {
	flex-flow: column;
	align-items: center;
	justify-content: center;
	}
	.list_reason li {
	padding: 20px;
	width: 100%;
	}
	.list_reason li:not(:last-child) {
	margin-bottom: 30px;
	}
	.list_reason li .txt {
	font-size: 110%;
	}
}
/* reason_area end */

/* comment_area */
#comment_area {
padding: 60px 50px;
}
#comment_area .area_in {
max-width: 100%;
}
.list_comment {
display: flex;
flex-flow: row nowrap;
align-items: flex-start;
justify-content: space-between;
}
.list_comment li {
width: 32%;
}
.list_comment li .txt {
padding: 40px 30px;
background: #fff;
border: 1px solid #e9e9e9;
color: #555;
background: linear-gradient(to right, #4B5186, #4B5186, #74799E);
border-color: #4B5186;
color: #fff;
font-size: 130%;
line-height: 1.6;
position: relative;
margin-bottom: 20px;
}
.list_comment li .txt::before {
border-width: 0 31px 30px 0;
border-color: transparent #e9e9e9 transparent transparent;
border-color: transparent #4B5186 transparent transparent;
position: absolute;
bottom: -30px;
left: 48px;
width: 0;
height: 0;
content: "";
border-style: solid;
}
.list_comment li .txt::after {
margin: 0 0 4px 3px;
border-width: 0 26px 26px 0;
border-color: transparent #ffffff transparent transparent;
border-color: transparent #4B5186 transparent transparent;
position: absolute;
bottom: -30px;
left: 48px;
width: 0;
height: 0;
content: "";
border-style: solid;
}
.list_comment li .name {
display: inline-block;
width: 100%;
text-transform: uppercase;
letter-spacing: 0.15em;
overflow: hidden;
text-overflow: ellipsis;
color: #f05149;
position: relative;
padding: 17px 0 0 93px;
min-height: 70px;
text-align: left;
line-height: 0;
}
	@media screen and (max-width: 768px) {
	#comment_area {
	padding: 50px 0;
	}
	.list_comment {
	flex-flow: column;
	align-items: center;
	justify-content: center;
	}
	.list_comment li {
	width: 100%;
	}
	.list_comment li .txt {
	padding: 30px 20px;
	font-size: 110%;
	}
}
/* comment_area end*/

/* sponsors_area */
#sponsors_area {
padding: 60px;
}
.list_sponsors {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: center;
margin-bottom: 50px;
padding-bottom: 50px;
border-bottom: 1px solid rgba(0,0,0,0.1);
}
.list_sponsors.none {
padding-bottom: 0;
border-bottom: none;
}
.list_sponsors li {
margin: 0 20px;
}
.list_sponsors li img {
max-width: 200px;
}
	@media screen and (max-width: 768px) {
	#sponsors_area {
	padding: 50px 0;
	}
	.list_sponsors {
	flex-flow: column;
	align-items: center;
	justify-content: center;
	margin-bottom: 30px;
	padding-bottom: 30px;
	}
	.list_sponsors li {
	margin: 0 0 20px;
	}
}
/* sponsors_area end*/

/*-------- lower page common --------*/
.lower_visual {
position: relative;
background: #f1f2fb;
padding: 80px 30px;
background: #121619;
background: linear-gradient(to right , #4B5186 , #74799E);
margin-bottom: 50px;
}
.lower_visual .visual_ttl01 {
text-align: center;
font-size: 270%;
font-weight: 400;
color: #fff;
}
.lower_visual * {
transition: .3s;
}
.lower_visual::before,
.lower_visual::after {
content: "";
position: absolute;
display: block;
width: 20%;
height: 100%;
top: 0;
}
.lower_visual::before {
left: 0;
background: url("../images/bg_l.png") no-repeat left top / 100% auto;
}
.lower_visual::after {
right: 0;
background: url("../images/bg_r.png") no-repeat right bottom / 100% auto;
}


@media screen and (max-width: 768px) {
	.lower_visual {
	padding: 90px 20px 70px;
	margin-bottom: 30px;
	}
	.lower_visual .visual_ttl01 {
	font-size: 200%;
	}
}
	@media screen and (max-width: 768px) {
	.lower_visual {
	padding: 150px 0;
	padding-top: calc(100vw*(120 / 800));
	padding-bottom: calc(100vw*(120 / 800));
	}
	.lower_visual::before,
	.lower_visual::after {
	width: 100%;
	height: 100%;
	}
	.lower_visual::before {
	left: 0;
	top: 0;
	background: url("../images/bg_t.png") no-repeat right top / 70% auto;
	}
	.lower_visual::after {
	right: 0;
	bottom: 0;
	background: url("../images/bg_b.png") no-repeat left bottom / 70% auto;
	}
	}
	@media screen and (max-width: 540px) {
	.lower_visual::before {
	background: url("../images/bg_t.png") no-repeat right top / 50% auto;
	}
	.lower_visual::after {
	background: url("../images/bg_b.png") no-repeat left bottom / 50% auto;
	}
	}

/*-------- agenda --------*/
#agenda_area {
padding: 0 0 50px;
}
#agenda_area .top_txt {
text-align: center;
font-size: 120%;
margin-bottom: 30px;
}
.agenda_box {
border: 1px solid #efefef;
border-radius: 5px;
font-size: 130%;
}
.agenda_date {
background-color: #F05149;
padding: 25px 40px;
border-radius: 5px 5px 0px 0px;
color: #fff;
font-size: 140%;
}
.agenda_box_in {
padding: 40px;
}
.agenda_cont {
border-bottom: 1px solid #f0f0f0;
padding-bottom: 15px;
margin-bottom: 15px;
}
.agenda_time {
color: #f05048;
font-family: "Lato", sans-serif;
}
.agenda_ttl {
font-weight: 700;
color: #333;
}
.agenda_txt {
margin-top: 20px;
display: none;
}
@media screen and (max-width: 768px) {
	#agenda_area {
	padding: 0 0 30px;
	}
	.agenda_box {
	font-size: 120%;
	}
	.agenda_date {
	padding: 25px 30px;
	font-size: 120%;
	}
	.agenda_box_in {
	padding: 30px;
	}
}
.agenda_cont.aco .agenda_ttl {
position: relative;
cursor: pointer;
transition: .3s;
}
.agenda_cont.aco .agenda_ttl:hover {
opacity: 0.7;
}
.agenda_cont.aco .agenda_ttl::before {
content: "";
position: absolute;
right: 10px;
top: 50%;
width: 8px;
height: 8px;
border-top: 2px solid #333;
border-left: 2px solid #333;
transform: rotate(225deg);
transition: .3s;
}
.agenda_cont.aco.open .agenda_ttl::before {
transform: rotate(45deg);
}
/*-------- speakers --------*/
#speakers_area {
padding: 0 0 50px;
}
.list_speakers {
display: flex;
flex-flow: row wrap;
align-items: flex-start;
justify-content: flex-start;
}
.list_speakers li {
width: 22.75%;
text-align: center;
font-size: 130%;
margin-right: 3%;
overflow: hidden;
border-radius: 0 0 20px 20px;
margin-bottom: 50px;
}
.list_speakers li:nth-child(4n) {
margin-right: 0;
}
.list_speakers li a,
.list_speakers li span.popup {
text-decoration: none;
cursor: pointer;
}
.list_speakers li a:hover,
.list_speakers li span.popup:hover {
transition: 0.4s;
}
.list_speakers li a .speakers_img,
.list_speakers li span.popup .speakers_img {
overflow: hidden;
transition: 0.4s;
}
.list_speakers li a:hover .speakers_img ,
.list_speakers li span.popup:hover .speakers_img {
border-radius: 20px 20px 0 0;
transition: 0.4s;
}
.list_speakers li a .speakers_img img,
.list_speakers li span.popup .speakers_img img {
transition: 0.4s;
}
.list_speakers li a:hover .speakers_img img,
.list_speakers li span.popup:hover .speakers_img img {
transform: scale(1.1);
transition: 0.4s;
}
.list_speakers li .speakers_box {
padding: 15px 10px;
text-align: center;
position: relative;
z-index: 1;
}
.list_speakers li a:hover .speakers_box,
.list_speakers li span.popup:hover .speakers_box {
color: #fff;
border-radius: 0 0 20px 20px;
}
.list_speakers li a .speakers_box::before,
.list_speakers li span.popup .speakers_box::before {
content: "";
position: absolute;
background-color: #f05048;
left: 0;
right: 0;
top: 0;
bottom: 0;
transform: translateY(102%);
transition: 0.3s;
z-index: -1;
}
.list_speakers li a:hover .speakers_box::before,
.list_speakers li span.popup:hover .speakers_box::before {
transform: translateY(0);
}
.list_speakers li .speakers_name {
font-weight: 700;
}
	@media screen and (max-width: 768px) {
	#speakers_area {
	padding: 0 0 30px;
	}
	.list_speakers {
	flex-flow: column;
	align-items: center;
	justify-content: center;
	}
	.list_speakers li {
	width: 100%;
	margin-right: 0;
	margin-bottom: 30px;
	}
	.list_speakers li:nth-child(4n) {
	margin-right: 0;
	}
}

/*-------- booth --------*/
#booth_area {
padding: 0 0 50px;
}
.list_booth {
margin-bottom: 50px;
}
.list_booth li {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: flex-start;
padding: 0 5%;
}
.list_booth li:not(:last-child){
margin-bottom: 30px;
padding-bottom: 30px;
border-bottom: 1px solid rgba(0, 0, 0, .1);
}
.list_booth li .img {
text-align: center;
flex: 0 1 20%;
margin-right: 30px;
padding: 30px;
}
.list_booth li .img img {
max-width: 240px;
}
.list_booth li .txt {
font-size: 130%;
flex: 1 0 0%;
}
.booth_session {
margin-top: 70px;
padding: 50px;
margin-bottom: 70px;
}
.booth_session .base_title {
text-align: left;
margin-bottom: 20px;
}
.booth_session_txt {
font-size: 130%;
line-height: 1.6;
margin-bottom: 50px;
}
.list_booth_session {
font-size: 130%;
line-height: 1.6;
}
.list_booth_session li:not(:last-child) {
margin-bottom: 50px;
}
.list_booth_session .red {
color: #f05048;
}
.list_booth_session .ttl {
margin-bottom: 30px;
font-weight: 700;
}
.list_booth_session_box {
display: flex;
flex-flow: row wrap;
align-items: flex-start;
justify-content: flex-start;
}
.list_booth_session_box .img {
min-width: 120px;
flex: 0 1 120px;
margin-right: 30px;
}
.list_booth_session_box .logo {
flex: 0 1 120px;
min-width: 120px;
margin-right: 30px;
}
.list_booth_session_box .txt {
flex: 1 0 0%;
}
.list_booth_session_box .txt dt {
font-weight: 700;
margin-bottom: 10px;
}
	@media screen and (max-width: 768px) {
	#booth_area {
	padding: 0 0 30px;
	}
	.list_booth {
	margin-bottom: 50px;
	}
	.list_booth li {
	flex-flow: column;
	align-items: center;
	justify-content: center;
	padding: 0;
	}
	.list_booth li .img {
	width: 50%;
	margin-right: 0;
	margin-bottom: 30px;
	}
	.list_booth li .txt {
	font-size: 110%;
	width: 100%;
	}
	.booth_session {
	margin-top: 50px;
	padding: 30px;
	}
	.booth_session .base_title {
	text-align: left;
	margin-bottom: 20px;
	}
	.booth_session_txt {
	font-size: 110%;
	margin-bottom: 30px;
	}
	.list_booth_session {
	font-size: 110%;
	}
	.list_booth_session li:not(:last-child) {
	margin-bottom: 30px;
	}
	.list_booth_session .ttl {
	margin-bottom: 20px;
	}
	.list_booth_session_box {
	align-items: flex-start;
	justify-content: flex-start;
	}
	.list_booth_session_box .img {
	min-width: 120px;
	max-width: 120px;
	margin-right: 0;
	margin-bottom: 20px;
	}
	.list_booth_session_box .logo {
	min-width: 120px;
	max-width: 120px;
	margin-right: 0;
	margin-left: 20px;
	margin-bottom: 20px;
	align-self: center;
	}
	.list_booth_session_box .txt {
	flex: 1 0 100%;
	}
	}

/*-------- venue --------*/
.venue_info {
display: flex;
flex-flow: row nowrap;
align-items: flex-start;
justify-content: flex-start;
font-size: 130%;
line-height: 1.6;
}
.venue_info a {
text-decoration: none;
display: block;
font-weight: 700;
transition: 0.4s;
margin-bottom: 20px;
}
.venue_info a:hover {
color: #F05149;
}
.venue_info .img {
width: 40%;
}
.venue_info .txt_box {
width: 60%;
padding: 50px;
}
.venue_info .ttl {
color: #F05149;
font-size: 160%;
margin-bottom: 20px;
}
.venue_info .address {
margin-bottom: 30px;
}
.venue_info .icon img {
max-width: 20px;
margin-right: 10px;
}
#venue_area .map {
margin-bottom: 100px;
}
#venue_area .map iframe {
width: 100%;
height: 400px;
}
	@media screen and (max-width: 768px) {
	.venue_info {
	flex-flow: column;
	align-items: center;
	justify-content: center;
	font-size: 110%;
	}
	.venue_info .img {
	width: 100%;
	}
	.venue_info .txt_box {
	width: 100%;
	padding: 50px 30px;
	}
	.venue_info .ttl {
	font-size: 140%;
	}
}
#overview_area {
padding: 30px 0;
}
.overviewe_box {
background: #f1f2fb;
}
.overviewe_box {
margin-top: 70px;
padding: 50px;
margin-bottom: 70px;
}
.overviewe_box .base_title {
text-align: left;
margin-bottom: 20px;
}
.overviewe_box .txt {
font-size: 130%;
line-height: 1.6;
margin-bottom: 50px;
}
	@media screen and (max-width: 768px) {
	.overviewe_box {
	margin-top: 50px;
	padding: 30px;
	}
	}
.dlist {
max-width: 1000px;
margin: 0 auto;
font-size: 110%;
}
.dlist dl {
display: flex;
width: 100%;
border-bottom: 1px solid rgba(0,0,0,0.3);
}
.dlist dl dt {
flex: 0 1 200px;
font-weight: bold;
position: relative;
padding: 40px 0;
vertical-align: middle;
text-align: left;
}
.dlist dl dd {
flex: 1 0 0%;
position: relative;
padding: 40px 0;
word-break: break-all;
}
.dlist a {
text-decoration: underline;
}
.dlist_txt {
text-align: center;
margin-top: 20px;
}
	@media screen and (max-width: 768px) {
	.dlist {
	padding: 0;
	}
	.dlist .txt_head {
	margin: 0 0 30px;
	}
	.dlist dl {
	display: block;
	padding: 0;
	}
	.dlist dl dt {
	padding: 20px 0;
	}
	.dlist dl dd {
	padding: 0 0 20px;
	}
	}
	@media screen and (max-width: 420px) {
	.dlist {
	}
	.dlist .txt_head {
	margin: 0 0 20px;
	}
	}
/* popup */
.mfp-bg {
opacity: 0.9;
background: #000;
}
.popup_contents {
display: none;
}
.mfp-content {
max-width: 700px!important;
max-width: inherit!important;
padding: 50px 50px;
}
.mfp-close {
position: fixed!important;
top: 15px!important;
right: 15px!important;
width: 30px!important;
height: 30px!important;
opacity: 1!important;
text-indent: -9999px;
position: relative;
}
.mfp-close:before,
.mfp-close:after {
position: absolute;
left: 0;
top: 50%;
content: "";
width: 30px;
height: 2px;
background: #fff;
}
.mfp-close:before {
transform: rotate(45deg);
}
.mfp-close:after {
transform: rotate(-45deg);
}
.mfp-close:hover {
opacity: 0.7!important;
}
button.mfp-arrow.mfp-arrow-left {
background: url(../js/prev_w.png) no-repeat center center / cover;
width: 50px;
height: 50px;
}
button.mfp-arrow.mfp-arrow-right {
background: url(../js/next_w.png) no-repeat center center / cover;
width: 50px;
height: 50px;
}
/*
左右矢印を中央に寄せる
	@media screen and (min-width: 768px) {
	button.mfp-arrow.mfp-arrow-left {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-370px, -25px);
	}
	button.mfp-arrow.mfp-arrow-right {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(320px, -25px);
	}
	}
*/
	
.mfp-arrow:after,
.mfp-arrow:before {
display: none;
}
.pop_prev,
.pop_next {
position: fixed;
top: 50%;
z-index: 100;
display: block;
width: 50px;
height: 50px;
cursor: pointer;
text-indent: -9999px;
transition: .3s;
}
.pop_prev {
left: 10px;
background: url("../images/prev.png") no-repeat center center / cover;
}
.pop_next {
right: 10px;
background: url("../images/next.png") no-repeat center center / cover;
}
.pop_prev:hover,
.pop_next:hover {
opacity: 0.7;
}
button.mfp-arrow.mfp-arrow-left,
button.mfp-arrow.mfp-arrow-right {
display: none;
}
/* popup end */

/* popup_box */
.mfp-content {
height: 100%;
}
.popup_box {
display: flex;
align-items: center;
height: 100%;
}
.popup_box_in {
margin: 60px 10px 10px 10px;
background: #fff;
border-radius: 0px;
padding: 30px;
box-shadow: 0 0 10px rgba(0,0,0,0.2);
max-width: 900px;
margin: 0 auto;
max-height: 100%;
overflow-y: scroll;
font-weight: 400;
font-size: 110%;
border-radius: 5px;
width: 100%;
}
.popup_box_in.program .layout .photo {
flex: 0 1 250px;
}
@media screen and (max-width: 768px) {
.popup_box_in {
padding: 10px;
}
.popup_box_in.program .layout {
flex-flow: column nowrap;
}
.popup_box_in.program .layout .photo {
text-align: center;
flex: 1 0 0%;
}
.popup_box_in.program .layout .info {
padding: 20px 0 0 0;
}
}
/* popup_box end */

.program .layout_box {
display: flex;
flex-flow: row wrap;
}
.program .layout {
display: flex;
flex: 1 0 100%;
}
.program .layout_box .layout + .layout {
padding-top: 20px;
margin-top: 20px;
border-top: 1px solid #ddd;
}
.program .layout .photo {
flex: 0 1 300px;
}
.program .layout .info {
flex: 1 0 0%;
}
.program .layout .photo + .info {
padding-left: 10px;
}
.program .layout .speakers_name {
font-weight: 700;
font-size: 120%;
margin-bottom: 10px;
}
.program .layout .speakers_tit {
font-weight: 700;
margin-bottom: 20px;
}
.program .txt {
display: flex;
flex-flow: column wrap;
align-items: flex-start;
justify-content: center;
font-weight: 400;
}
.program .txt.gaiyou {
padding: 20px;
margin-bottom: 20px;
background: #f2f2f2;
display: block;
}
.program .txt.prof {
font-size: 80%;
margin-top: 20px;
display: block;
}
.program .name {
display: block;
font-style: normal;
font-size: 110%;
font-weight: bold;
}
.program .com {
line-height: 1.3;
display: inline-block;
margin-right: 5px;
font-size: 90%;
}
.program .job {
line-height: 1.3;
display: inline-block;
margin-right: 5px;
font-size: 90%;
}
	@media screen and (max-width: 768px) {
	.program .title .tit {
	font-size: 130%;
	}
	.program .layout {
	display: block;
	}
	.program .layout .photo {
	flex: 0 1 100%;
	padding: 0 0 10px 0;
	text-align: center;
	margin: 0 auto;
	}
	.program .layout .photo img {
	max-width: 100%!important;
	width: 300px;
	}
	.program .layout .info {
	flex: 1 0 0%;
	}
	.program .layout .photo + .info {
	padding-left: 0;
	padding-bottom: 10px;
	}
	}
.dlist_txt {
text-align: center;
font-size: 150%;
font-weight: bold;
margin-bottom: 30px;
letter-spacing: 0.05em;
}
	@media screen and (max-width: 768px) {
	.dlist_txt {
	font-size: 120%;
	}
	}
	@media screen and (max-width: 420px) {
	.dlist_txt {
	font-size: 100%;
	}
	}
/* program end */

.bg_break {
	background: #F1F2FB;
	padding: 15px;
}
.bg_break .agenda_time {
color: #999;
}