@charset "UTF-8";

@media print, screen and (min-width: 771px) {
	.display-sp {
		display:none !important;
	}
}

@media screen and ( max-width:770px) {
	.display-pc {
		display:none !important;
	}
}

div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0; 
	padding:0; 
	letter-spacing:0;
	color:#000;
	font-family: "Meiryo UI", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Helvetica Neue", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
address,caption,cite,code,dfn,em,strong,th,var {
	font-style:normal; 
	font-weight:normal; 
}
ul, ol, dl {
	list-style-type: none;
	padding: 0;
	margin: 0;
}
caption,th {
	text-align:left; 
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%; 
	font-weight:normal; 
}
a:link {
	text-decoration: none;
}
a:visited {
	color:#000;
	text-decoration: none;
}
a:hover, a:active, a:focus {
	text-decoration: none;
}

/* ---------- custom -------------------------------------------------- */
* {
	box-sizing:border-box;
	margin: 0;
	padding: 0;
	transition: 0.2s ease-in-out;
}
img {
	margin:0;
	padding:0;
	vertical-align: bottom;
	width:100%;
}
a img {
	border: none;
}

.bg-wrap {
	overflow:hidden;
	position:relative;
}

.sp-top {
	position:relative;
}

.logo-sp {
	position:absolute;
	width:41%;
	top:18px;
	right:4.5%;
}

.bg-typo-01 {
	position:absolute;
	width:47%;
	top:10px;
	left:0;
	mix-blend-mode:screen;
}

.title {
	position:absolute;
	width:60%;
	top: 44%;
    left: 50%;
	transform: translate(-50%, -50%);
}

.logo {
	position:absolute;
	width:19%;
	top:6%;
	right:6%;
}

.logo:hover {
	opacity:70%;
}

.hex-01 {
	position:absolute;
	width:53%;
	bottom:0;
	right:4%;
}

@media print, screen and (min-width: 1301px) {
	.gaiyo {
		display:none !important;
	}
}
@media screen and ( max-width:1300px) {
	.hex-01 {
		display:none !important;
	}
	.bg-wrap {
		width:100%;
		height:731px;
	}
	.bg-01 {
		position:absolute;
		width:1300px;
		top:0;
		left:50%;
		transform: translateX(-50%);
	}
	.bg-typo-01 {
		width:611px;
	}
	.logo {
		width:247px;
	}
	.title {
		width:780px;
	}
	.gaiyo {
		position:absolute;
		width:660px;
		bottom:35px;
		left:50%;
		transform: translateX(-50%);
	}
}
@media screen and ( max-width:840px) {
	.bg-typo-01 {
		width:72.738%;
	}
	.logo {
		width:29.4%;
	}
	.title {
		width:92.857%;
	}
}
@media screen and ( max-width:730px) {
	.gaiyo {
		width:92%;
		bottom:50px;
	}
}
@media print, screen and (min-width:631px) {
	.sp-top {
		display:none !important;
	}
}
@media screen and ( max-width:630px) {
	.bg-wrap {
		display:none !important;
	}
}

.bg-white {
	padding:110px 20px 75px;
}

@media screen and ( max-width:1300px) {
	.bg-white {
		padding:60px 20px 40px;
	}
}

.lead-text {
	font-size:19.5px;
	font-weight:bold;
	color:#000;
	line-height:2.2;
	text-align:center;
	margin-bottom:35px;
}

@media screen and ( max-width:1040px) {
	.bg-white {
		padding:40px 60px 40px;
	}
	.lead-wrap {
		max-width:700px;
		margin:0 auto;
	}
	.lead-text {
		text-align: justify;
	}
	.lead-br {
		display:none !important;
	}
}
@media screen and ( max-width:630px) {
	.lead-text {
		font-size:17.5px;
	}
}
@media screen and ( max-width:600px) {
	.bg-white {
		padding:30px 6% 30px;
	}
	.lead-text {
		font-size:16px;
		line-height:1.8;
		margin-bottom:20px;
	}
}

.arrow-down {
	width:276px;
	margin:70px auto 0;
}
@media screen and ( max-width:630px) {
	.arrow-down {
		width:250px;
		margin:40px auto 0;
	}
}
@media screen and ( max-width:600px) {
	.arrow-down {
		width:230px;
		margin:35px auto 0;
	}
}

.speech-block-01 {
	overflow:hidden;
	position:relative;
	background:#000;
	margin-bottom:10px;
}

@media print, screen and (min-width: 1061px) {
	.speech-block-01 {
		height:840px;
	}
}

.bg-02 {
	position:absolute;
	width:1920px;
	top:0;
	left:50%;
	transform: translateX(-50%);
}

.hex-02 {
	position:absolute;
	width:53%;
	top:0;
	right:4%;
}

@media screen and ( max-width:1300px) {
	.hex-02 {
		display:none !important;
	}
}

.bg-typo-02-1 {
	position:absolute;
	width:42%;
	top:3px;
	left:0;
	mix-blend-mode:screen;
}

.typo-rubi-01 {
	position:absolute;
	width:42%;
	top:3px;
	left:0;
}

@media screen and ( max-width:1300px) {
	.bg-typo-02-1,
	.typo-rubi-01 {
		width:546px;
	}
}

@media print, screen and (min-width: 1061px) {
	.speech-body-wrap {
		position:absolute;
		width:720px;
		top:177px;
		left:50%;
		transform: translateX(-50%);
	}
	.speech-body-wrap-02 {
		top:162px;
	}
}
@media print, screen and (min-width: 1301px) {
	.speech-body-kome01 {
		font-size:11px;
		color:#fff;
		position:absolute;
		bottom:20px;
		right:50%;
		transform: translateX(650px);
	}
	.speech-body-kome02 {
		font-size:11px;
		color:#fff;
		position:absolute;
		bottom:20px;
		left:50%;
		transform: translateX(-640px);
	}
}

.speech-body-text {
	font-size:16px;
	color:#fff;
	line-height:1.8;
	text-align: justify;
	margin-bottom:15px;
}

.speaker-01 {
	position:absolute;
	width:338px;
	bottom:0;
	left:50%;
	transform: translateX(-675px);
}

@media screen and (min-width:1061px) and ( max-width:1300px) {
	.speech-body-wrap-01 {
		top:150px;
		left:60%;
	}
	.speaker-01 {
		left:60%;
	}
	.speech-body-kome01 {
		font-size:11px;
		color:#fff;
		position:absolute;
		bottom:20px;
		left:60%;
		transform: translateX(120px);
	}
}

.speech-block-02 {
	overflow:hidden;
	position:relative;
	background:#000;
	margin-bottom:10px;
}

@media print, screen and (min-width: 1061px) {
	.speech-block-02 {
		height:840px;
	}
}

.bg-03 {
	position:absolute;
	width:1920px;
	top:0;
	left:50%;
	transform: translateX(-50%);
}

.bg-typo-02-2 {
	position:absolute;
	width:42%;
	top:3px;
	right:0;
	mix-blend-mode:screen;
}

.typo-rubi-02 {
	position:absolute;
	width:42%;
	top:3px;
	right:0;
}

.speaker-02 {
	position:absolute;
	width:271.7px;
	bottom:0;
	right:50%;
	transform: translateX(640px);
}

@media screen and ( max-width:1300px) {
	.bg-typo-02-2,
	.typo-rubi-02 {
		width:546px;
	}
}

@media screen and (min-width:1061px) and ( max-width:1300px) {
	.speech-body-wrap-02 {
		top:140px;
		left:40%;
	}
	.speaker-02 {
		right:60%;
	}
	.speech-body-kome02 {
		font-size:11px;
		color:#fff;
		position:absolute;
		bottom:20px;
		left:40%;
		transform: translateX(-357px);
	}
}

@media print, screen and (min-width: 1061px) {
	.speaker-sp {
		display:none !important;
	}
}

@media screen and ( max-width:1060px) {
	.bg-02,
	.bg-03,
	.speaker-01,
	.speaker-02 {
		display:none !important;
	}
	.speech-block-01 {
		background-image:url(sp-bg-01.jpg);
		background-position:center center;
		background-size:cover;
		padding:110px 50px 40px;
	}
	.speech-block-02 {
		background-image:url(sp-bg-02.jpg);
		background-position:center center;
		background-size:cover;
		padding:110px 50px 40px;
	}
	.speaker-sp {
		max-width:500px;
		margin:0 auto 10px;
	}
	.speech-body-wrap {
		position:relative;
		max-width:660px;
		margin:0 auto 20px;
	}
	.speech-body-kome01,
	.speech-body-kome02 {
		font-size:11px;
		color:#fff;
		max-width:660px;
		margin:35px auto 0;
	}
}

@media screen and ( max-width:630px) {
	.bg-typo-02-1,
	.typo-rubi-01 {
		width:90%;
		left:5%;
	}
	.bg-typo-02-2,
	.typo-rubi-02 {
		width:90%;
		right:5%;
	}
	.speech-block-01,
	.speech-block-02 {
		padding:110px 7% 40px;
	}
	.speech-body-text {
		font-size:16px;
		color:#fff;
		line-height:1.8;
		text-align: justify;
		margin-bottom:25px;
	}
}

.color-bg-wrap {
	overflow:hidden;
}

.color-bg {
	position:relative;
	padding:160px 40px 30px;
	margin-bottom:10px;
}

.color-bg-01 {
	background:#e3e3d9;
}

@media print, screen and (min-width: 1061px) {
	.bg-typo-s {
		position:absolute;
		width:770px;
		top:7px;
		left:0;
		mix-blend-mode:multiply;
	}
}
@media screen and (min-width:771px) and ( max-width:1060px) {
	.bg-typo-s {
		position:absolute;
		width:660px;
		top:7px;
		left:0;
		mix-blend-mode:multiply;
	}
}

.content-wrap-one-column {
	max-width:760px;
	margin:0 auto;
	position:relative;
	z-index:10;
}

.session-sub-title {
	font-size:17px;
	font-weight:bold;
	letter-spacing:1px;
	margin-bottom:3px;
}

.session-title {
	font-size:26px;
	font-weight:bold;
	margin-bottom:14px;
}
@media screen and ( max-width:630px) {
	.session-sub-title {
		font-size:15px;
	}
	.session-title {
		font-size:22px;
	}
	.discussion-box .session-title {
		font-size:20px;
	}
}

.session-img-01 {
	margin-bottom:-10px;
}
@media print, screen and (min-width:631px) {
	.sp-title-br {
		display:none !important;
	}
	.role-name {
		font-size:15px;
		margin:40px 0 10px;
	}
	.speaker-name-wrap {
		display:flex;
		margin-bottom:7px;
	}
	.speaker-name-box {
		width:160px;
		display:flex;
		align-items: center;
	}
	.speaker-title-box {
		width:calc(100% - 160px);
		display:flex;
		align-items: center;
	}
	.speaker-name {
		font-size:20px;
		font-weight:bold;
	}
	.speaker-name span {
		font-size:15px;
		font-weight:bold;
	}
	.speaker-title {
		font-size:14.5px;
	}
}

@media screen and ( max-width:630px) {
	.role-name {
		font-size:13px;
		margin:40px 0 5px;
	}
	.color-bg-01 .speaker-name-wrap {
		display:flex;
		margin-bottom:7px;
	}
	.color-bg-01 .speaker-name-box {
		width:120px;
		display:flex;
		align-items: center;
	}
	.color-bg-01 .speaker-title-box {
		width:calc(100% - 120px);
		display:flex;
		align-items: center;
	}
	.speaker-name-wrap {
		margin-bottom:15px;
	}
	.speaker-name-box {
		margin-bottom:2px;
	}
	.speaker-title-box {
	}
	.speaker-name {
		font-size:18px;
		font-weight:bold;
	}
	.color-bg-01 .speaker-name-box .speaker-name {
		font-size:17px;
	}
	.speaker-name span {
		font-size:14px;
		font-weight:bold;
	}
	.speaker-title {
		font-size:14px;
	}
	.color-bg-01 .speaker-name-box .speaker-title {
		font-size:13px;
	}
}

.color-bg-02 {
	background:#e6e7e7;
}


@media print, screen and (min-width: 961px) {
	.content-wrap-three-column {
		max-width:1140px;
		margin:0 auto;
		display:flex;
		justify-content: space-between;
	}
	.column-wrap {
		width:30%;
	}
}

@media screen and (min-width:771px) and ( max-width:960px) {
	.color-bg {
		padding:130px 40px 30px;
	}
	.color-bg-02 {
		padding:130px 40px 30px;
	}
	.content-wrap-three-column {
		max-width:1140px;
		margin:0 auto;
		display:flex;
		flex-wrap: wrap;
	}
	.column-wrap {
		width:44%;
		margin:0 3% 50px;
	}
}

.session-sub-title-2 {
	font-size:17px;
	font-weight:bold;
	letter-spacing:2px;
	margin-bottom:15px;
}

.session-img-02 {
	margin-bottom:20px;
}

.koen-title {
	font-size:18px;
	font-weight:bold;
	line-height:1.42;
	margin-bottom:15px;
}

.speaker-title-2 {
	font-size:14.5px;
	line-height:1.42;
	margin-bottom:3px;
}

.speaker-name-2 {
	font-size:19px;
	font-weight:bold;
}

.speaker-name-2 span {
	font-size:15px;
	font-weight:bold;
}

@media screen and ( max-width:630px) {
	.koen-title {
		font-size:17px;
	}
	.speaker-title-2 {
		font-size:14px;
	}
	.speaker-name-2 {
		font-size:18px;
	}
}

.color-bg-03 {
	background:#dcdad7;
}

.discussion-box {
	max-width:900px;
	margin:0 auto 60px;
	padding-bottom:55px;
	border-bottom:3px solid #e6e6e6;
	position:relative;
	z-index:10;
}

.discussion-box-last {
	border-bottom:none;
}

.hex-pattern-01 {
	position:absolute;
	width:530px;
	bottom:55px;
	right:50%;
	transform: translateX(-160px);
	mix-blend-mode:overlay;
}

.hex-pattern-02 {
	position:absolute;
	width:330px;
	top:-144px;
	right:5px;
	mix-blend-mode:overlay;
}

.hex-pattern-03 {
	position:absolute;
	width:530px;
	top:480px;
	right:50%;
	transform: translateX(-320px);
	mix-blend-mode:overlay;
}

.hex-pattern-04 {
	position:absolute;
	width:330px;
	top:1050px;
	left:50%;
	transform: translateX(280px);
	mix-blend-mode:overlay;
}

.hex-pattern-05 {
	position:absolute;
	width:480px;
	bottom:100px;
	right:50%;
	transform: translateX(-150px);
	mix-blend-mode:overlay;
}

@media screen and ( max-width:770px) {
	.content-wrap-one-column {
		max-width:500px;
	}
	.content-wrap-three-column {
		max-width:500px;
		margin:0 auto;
	}
	.column-wrap {
		margin-bottom:50px;
	}
}

@media screen and ( max-width:770px) {
	.bg-typo-s {
		position:relative;
		width:100%;
		mix-blend-mode:multiply;
		margin-bottom:30px;
	}
	.color-bg {
		padding:0 0 30px;
	}
	.color-bg-02 {
		padding:0 0 30px;
	}
	.color-bg-03 {
		padding:0 0 150px;
	}
	.discussion-box {
		margin:0 auto 40px;
		padding-bottom:35px;
	}
	.discussion-box-last {
		padding-bottom:10px;
	}
}

@media screen and ( max-width:660px) {
	.content-wrap-one-column,
	.content-wrap-three-column {
		width:90%;
	}
}

.katagaki-kome-wrap-01,
.katagaki-kome-wrap-02 {
	max-width:1200px;
	margin:70px auto 0;
}

.katagaki-kome-right {
	font-size:11px;
	color:#000;
	text-align:right;
}

.katagaki-kome-wrap-03 {
	max-width:750px;
	margin:0 auto;
}

.katagaki-kome-left {
	font-size:11px;
	color:#000;
}

@media screen and (min-width:771px) and ( max-width:960px) {
	.katagaki-kome-wrap-02 {
		margin:-20px auto 0;
	}
}

@media screen and ( max-width:770px) {
	.katagaki-kome-wrap-01,
	.katagaki-kome-wrap-02,
	.katagaki-kome-wrap-03 {
	 	width:90%;
	 }
}

@media screen and (min-width:661px) and ( max-width:770px) {
	.katagaki-kome-wrap-03 {
	 	margin:70px auto 0;
	 }
}

@media screen and ( max-width:660px) {
	.katagaki-kome-right,
	.katagaki-kome-left {
		font-size:10px;
	}
}

.link-block:hover .session-title,
.link-block:hover .koen-title {
	text-decoration:underline;
	transition: 0.3s ease-in-out;
}

.link-block:hover img {
	opacity:0.7;
}

@media print, screen and (min-width:771px) {
	.arrow-top {
		position:absolute;
		display:block;
		width:90px;
		right:100px;
		bottom:40px;
		z-index:11;
	}
}

@media screen and ( max-width:770px) {
	.arrow-top {
		position:absolute;
		display:block;
		width:80px;
		left:50%;
		transform: translateX(-50%);
		bottom:30px;
		z-index:11;
	}
}

.arrow-top:hover {
	opacity:0.7;
}

@media print, screen and (min-width: 771px) {
	.footer-block {
		background:#534741;
		padding:50px 30px 35px;
	}
	.footer-inner {
		max-width:1200px;
		margin:0 auto;
		display:flex;
		justify-content: space-between;
	}
	.logo-footer {
		width:420px;
		padding-top:20px;
	}
	.foot-menu-wrap {
		padding-right:90px;
	}
	a.foot-menu {
		display:block;
		font-size:15px;
		color:#fff;
		margin-bottom:20px;
	}
}
@media screen and (min-width:771px) and ( max-width:900px) {
	.logo-footer {
		width:370px;
		padding-top:20px;
	}
}
@media screen and ( max-width:770px) {
	.footer-block {
		background:#534741;
		padding:35px 30px 25px;
	}
	.footer-inner {

	}
	.logo-footer {
		max-width:300px;
		margin:0 auto 40px;
	}
	.foot-menu-wrap {
		width:200px;
		margin:0 auto;
		padding-left:20px;
	}
	a.foot-menu {
		display:block;
		font-size:15px;
		color:#fff;
		margin-bottom:17px;
	}
}

.logo-footer:hover {
	opacity:0.7;
}

a.foot-menu:hover {
	color:#ecc126;
}

@media print, screen and (min-width: 1189px) {
}
@media screen and (min-width:1335px) and ( max-width:1400px) {
}
@media screen and (min-width:961px) and ( max-width:1334px) {
}
@media screen and ( max-width:960px) {
}

