@charset "utf-8";

.mainVisWrap .mainVisBox .mainVisTxtImg .inner .categoryIcon > p:nth-child(1){
	background-color:#386eb1;
}
.mainVisWrap .mainVisBox .mainVisTxtImg .inner .categoryIcon > p:nth-child(2){
	background-color:#5aaeb6;
}
.mainVisWrap .mainVisBox .mainVisTxtImg .inner .categoryIcon > p:nth-child(3){
	background-color:#ab8350;
}
.mainVisWrap .mainVisBox .mainVisTxtImg .inner .categoryIcon > p:nth-child(4){
	background-color:#3f8f45;
}
.mainVisWrap .mainVisBox .mainVisTxtImg .inner .categoryIcon > p:nth-child(5){
	background-color:#d65474;
}
.mainVisWrap .mainVisBox .mainVisTxtImg .inner .categoryIcon > p:nth-child(6){
	background-color:#d9692a;
}
.mainVisWrap .mainVisBox .mainVisTxtImg .inner .categoryIcon > p:nth-child(7){
	background-color:#53a5dc;
}
.mainVisWrap .mainVisBox .mainVisTxtImg .inner .categoryIcon > p:nth-child(8){
	background-color:#8e4598;
}

/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	For SmartPhone
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

@media screen and (max-width:767px){

	/* ///////////////////////////////////////////////////////////// */
	/* =================================================== */
	/* ------------------------------------------ */
	.mainVisWrap .mainVisBox{
		position:relative;
	}
	.mainVisWrap .mainVisBox::before{
		content:"";
		display:block;
		padding-top:100%;
	}
	.mainVisWrap .mainVisBox .mainVisImg{
		position:absolute;
		top:0;
		left:0;
		z-index:1;
	}
	.mainVisWrap .mainVisBox .mainVisTxtImgs{
		width:94%;
		position:absolute;
		bottom:-27%;
		left:50%;
		transform:translateX(-50%);
		z-index:2;
	}
	.mainVisWrap .mainVisBox .mainVisTxtImgs .mainVisTxtImg01{
		position:relative;
		z-index:3;
	}
	.mainVisWrap .mainVisBox .mainVisTxtImgs .mainVisTxtImg02{
		position:relative;
		width:90%;
		margin:3% auto 0;
		z-index:3;
		animation: Beat 2.5s ease-in-out infinite;
	}
	@keyframes Beat{
		10%, 30% {transform:scale(1.03);}
		20%, 40%, 50%, 60%, 70%, 80%, 90%, 100% {transform:scale(1.0);}
	}

	/* ------------------------------------------ */
	.mainVisWrap .mainVisBox .mainVisTxtImgs .mainVisBtnBox{
		position:absolute;
		left:-1.5vw;
		top:-17vw;
		z-index:1;
	}
	.mainVisWrap .mainVisBox .mainVisTxtImgs .mainVisBtnBox .mainVisBtn{
		position:relative;
		display:flex;
		justify-content:center;
		align-items:center;
		width:20vw;
		height:20vw;
		/*max-width:195px;
		max-height:195px;*/
		padding-left:0.3vw;
		font-size:5.5vw;
		font-weight:900;
		color:#fff;
		line-height:1.1;
		letter-spacing:6px;
		text-shadow:0px 0px 10px rgba(0, 0, 0, 0.2);
		border:3px solid #fff;
		border-radius:300px;
		background:#f21d1d;
		background:linear-gradient(180deg,rgba(255, 129, 17, 1) 33%, rgba(234, 110, 0, 1) 60%);
		box-shadow:0px 3px 13px rgba(0, 0, 0, .3);
		z-index:1;
		transform:rotate(-5deg) scale(1);
		transition:all 0.3s ease-in-out;
	}
	.mainVisWrap .mainVisBox .mainVisTxtImgs .mainVisBtnBox .mainVisBtn::before{
		content:"\e315";
		font-family:"Material Symbols Outlined";
		display:block;
		font-size:5vw;
		font-weight:400;
		position:absolute;
		right:-0.5em;
		top:50%;
		transform:translateY(-50%);
	}

	/* ///////////////////////////////////////////////////////////// */
	.mainBlock{
		padding-bottom:10%;
	}
	/* =================================================== */
	.mainBlock .block.first{
		padding:32vw 0 0 0;
	}
	.mainBlock .block.first > .inner{
		width:100%;
		margin:0 auto 0;
	}
	.mainBlock .block.first > .inner .leadTxtBox{
		width:96%;
		margin:0 auto 0;
		padding:0 0 4% 0;
		border-bottom:2px solid var(--mainColor);
	}
	.mainBlock .block.first > .inner  .leadTxtBox p{
		text-align:center;
		font-size:5vw;
		font-weight:900;
		line-height:1.3;
		color:var(--mainColor);
	}
	/* =================================================== */
	.mainBlock .block.first > .inner .performersBox{
		width:94%;
		margin:6% auto 0;
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech{
		display:flex;
		flex-wrap:wrap;
		flex-direction:column;
		width:100%;
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .ttlBox{
		display:flex;
		justify-content:center;
		align-items:center;
		width:100%;
		background-color:var(--mainColor);
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .ttlBox h3{
		padding:2.5% 0;
		font-weight:100;
		font-size:7vw;
		letter-spacing:0.3em;
		text-indent:0.3em;
		color:#ffffff;
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox{
		display:flex;
		flex-wrap:wrap;
		flex-direction:column-reverse;
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox{
		width:90%;
		margin-top:3%;
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox .innerBox .timeScheTxt{
		font-size:clamp(1.2rem, 3.6vw, 2.5rem);
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox .innerBox .timeScheTxt span{
		font-size:clamp(0.8rem, 3.0vw, 2.3rem);
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox .innerBox .speechThemeTxt{
		margin-top:2%;
		font-size:clamp(1.5rem, 5.5vw, 3.6rem);
		line-height:1.3;
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox .innerBox .nameBox{
		display:flex;
		align-items:center;
		margin-top:3%;
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox .innerBox .nameBox .titleTxt{
		font-size:clamp(0.95rem, 3.2vw, 1.6rem);
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox .innerBox .nameBox .nameTxt{
		font-size:clamp(1.4rem, 5vw, 2.0rem);
		margin-left:10px;
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox .innerBox .nameBox .nameTxt span{
		font-size:clamp(1.1rem, 3.8vw, 1.6rem);
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .imgBox{
		position:relative;
		overflow:hidden;
		width:100%;
		height:62vw;
		background:#fcc;
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .imgBox .innerBox{
		width:100%;
		position:absolute;
		left:50%;
		top:50%;
		transform:translate(-50%,-50%);
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.half{
		width:100%;
		margin-top:8%;
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.half .ttlBox{
		display:flex;
		justify-content:center;
		align-items:center;
		width:100%;
		padding:13px 0;
		background-color:var(--mainColor);
	}
	.mainBlock .block.first > .inner .performersBox .items.half .ttlBox h3{
		font-weight:100;
		/*font-size:clamp(1.2rem, 2.5vw, 2.3rem);*/
		font-size:5vw;
		color:#ffffff;
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox{
		display:flex;
		align-items:center;
		margin-top:20px;
	}
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox .imgBox{
		width:51%;
	}
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox .txtBox{
		width:43%;
		margin-left:4%;
	}
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox .txtBox .innerBox .timeScheTxt{
		font-size:clamp(0.8rem, 3.6vw, 2.5rem);
	}
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox .txtBox .innerBox .timeScheTxt span{
		font-size:clamp(0.8rem, 3.0vw, 2.3rem);
	}
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox .txtBox .innerBox .nameBox{
		margin-top:10%;
	}
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox .txtBox .innerBox .nameBox .titleTxt{
		font-size:clamp(0.85rem, 3.4vw, 2.3rem);
	}
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox .txtBox .innerBox .nameBox .nameTxt{
		margin-top:2%;
		font-size:clamp(1.2rem, 4.5vw, 3rem)
	}

	/* =================================================== */
	.mainBlock .block.second{
		margin-top:15%;
	}
	.mainBlock .block.second > .inner{
		width:96%;
		margin:0 auto 0;
	}
	/* ------------------------------------------ */
	.mainBlock .block.second > .inner .leadTxtBox{
		padding:0 0 4% 0;
		border-bottom:2px solid var(--mainColor);
	}
	.mainBlock .block.second > .inner  .leadTxtBox h3{
		text-align:center;
		font-size:5.5vw;
		font-weight:900;
		line-height:1.3;
		color:var(--mainColor);
	}
	/* ------------------------------------------ */
	.mainBlock .block.second > .inner .categoryBox{
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		width:95%;
		margin:8% auto 0;
	}
	.mainBlock .block.second > .inner .categoryBox .items{
		width:48%;
		margin:5% 0 0 0;
		padding:4%;
		background-color:#f8f8f8;
	}
	.mainBlock .block.second > .inner .categoryBox .items:nth-child(-n+2){
		margin-top:0;
	}
	/* ------------------------------------------ */
	.mainBlock .block.second > .inner .categoryBox .items .itemHeadBox{
		display:flex;
		flex-wrap:wrap;
		flex-direction:column;
		justify-content:center;
	}
	.mainBlock .block.second > .inner .categoryBox .items .itemHeadBox .iconBox{
		width:60%;
		margin:0 auto 0;
	}
	.mainBlock .block.second > .inner .categoryBox .items .itemHeadBox .catTxt{
		width:100%;
		font-size:4.5vw;
		font-weight:700;
		line-height:1.2;
		text-align:center;
	}
	.mainBlock .block.second > .inner .categoryBox .items .itemHeadBox .catTxt.catClr01,
	.mainBlock .block.second > .inner .categoryBox .items .itemHeadBox .catTxt.catClr04{
		letter-spacing:-2px;
	}
	.mainBlock .block.second > .inner .categoryBox .items .itemHeadBox .catTxt.ls1{
		letter-spacing:1.5em;
		text-indent:1.5em;

	}
	.mainBlock .block.second > .inner .categoryBox .items .itemHeadBox .catTxt.ls2{
		letter-spacing:0.3em;
		text-indent:0.3em;
	}
	.mainBlock .block.second > .inner .categoryBox .items .descBox{
		margin-top:8%;
	}
	.mainBlock .block.second > .inner .categoryBox .items .descBox p{
		font-size:3.9vw;
		line-height:1.3;
	}
	/* ------------------------------------------ */
	.mainBlock .block.second > .inner .reconstructionBox{
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		width:94%;
		margin:10% auto 0;
		padding:3%;
		background-color:#f5f2ec;
	}
	.mainBlock .block.second > .inner .reconstructionBox .innerBox{
		width:100%;
		display:flex;
		flex-direction:column-reverse;
		justify-content:center;
		align-items:center;
		padding:5% 0;
		border:1px solid #b81c22;
	}
	.mainBlock .block.second > .inner .reconstructionBox .innerBox .txtBox{
		text-align:center;
	}
	.mainBlock .block.second > .inner .reconstructionBox .innerBox .txtBox p{
		color:#b81c22;
	}
	.mainBlock .block.second > .inner .reconstructionBox .innerBox .txtBox p:nth-child(1){
		font-size:9vw;
		font-weight:500;
		line-height:1.2;
	}
	.mainBlock .block.second > .inner .reconstructionBox .innerBox .txtBox p:nth-child(2){
		font-size:4.2vw;
		font-weight:400;
		margin-top:3%;
		line-height:1.3;
	}
	.mainBlock .block.second > .inner .reconstructionBox .innerBox .imgBox{
		width:70%;
		margin-top:8%;
	}
	/* ------------------------------------------ */
	.mainBlock .block.second > .inner .exhibitorBtn{
		display:flex;
		justify-content:center;
		align-items:center;
		position:relative;
		width:80%;
		margin:5% auto 0;
		padding:20px 0;
		font-size:clamp(1.1rem, 3.8vw, 1.5rem);
		color:#fff;
		background:#033f82;
		background:var(--blueGradation);
		border-radius:8px;
	}
	.mainBlock .block.second > .inner .exhibitorBtn::before{
		content:"\e315";
		font-size:clamp(1.6rem, 3.4vw, 2rem);
		font-family:"Material Symbols Outlined";
		position:absolute;
		right:0;
		top:50%;
		transform:translateY(-44%);
	}

	/* =================================================== */
	.mainBlock .block.third{
		width:100%;
		margin:10% auto 0;
		background-color:#f8f8f8;
	}
	.mainBlock .block.third > .inner{
		width:94%;
		margin:0 auto 0;
		padding:6% 0;
	}
	/* ------------------------------------------ */
	.mainBlock .block.third > .inner .blockTtlBox{
		width:90%;
		margin:0 auto 0;
	}
	.mainBlock .block.third > .inner .blockTtlBox h3{
		text-align:center;
		font-size:7vw;
		font-weight:700;
		line-height:1.3;
		color:#333;
	}
	/* ------------------------------------------ */
	.mainBlock .block.third > .inner .accessBox{
		margin-top:20px;
	}
	.mainBlock .block.third > .inner .accessBox .mapBox a{
		display:flex;
		justify-content:center;
		position:relative;
		width:100%;
		padding:5px 0 8px 0;
		border-bottom-left-radius:6px;
		border-bottom-right-radius:6px;
		background:#aaaaaa;
		background:var(--grayGradation);
		font-size:4vw;
		color:#fff;
	}
	.mainBlock .block.third > .inner .accessBox .mapBox a::before{
		content:"\e315";
		font-size:5vw;
		font-family:"Material Symbols Outlined";
		position:absolute;
		right:0;
		top:50%;
		transform:translateY(-44%);
	}
	/* ------------------------------------------ */
	.mainBlock .block.third > .inner .accessBox .txtBox{
		margin-top:6%;
	}
	.mainBlock .block.third > .inner .accessBox .txtBox .venueBox{}
	.mainBlock .block.third > .inner .accessBox .txtBox .venueBox p:nth-child(1){
		font-size:6vw;
		font-weight:500;
	}
	.mainBlock .block.third > .inner .accessBox .txtBox .venueBox p:nth-child(2){
		margin-top:3%;
		font-size:4.2vw;
	}
	/* ------------------------------------------ */
	.mainBlock .block.third > .inner .accessBox .txtBox .dtlBox .dtlTtl{
		margin-top:5%;
		padding:5px 10px;
		background-color:#e06a66;
		color:#ffffff;
		font-size:3.6vw;
		font-weight:600;
	}
	/* ------------------------------------------ */
	.mainBlock .block.third > .inner .accessBox .txtBox .typeBox{
		padding:0 2% 0 3%;
	}
	.mainBlock .block.third > .inner .accessBox .txtBox .typeBox .typeTtl{
		margin-top:5.5%;
		border-top:1px solid #000000;
	}
	.mainBlock .block.third > .inner .accessBox .txtBox .typeBox .typeTtl p{
		display:inline-block;
		padding-right:0.8em;
		transform:translateY(-0.6em);
		font-size:4vw;
		font-weight:600;
		background-color:#fffef4;
	}
	/* ------------------------------------------ */
	.mainBlock .block.third > .inner .accessBox .txtBox .typeBox .means p{
		width:95.5%;
		margin:1.5% 0 0 7%;
		font-size:3.6vw;
		line-height:1.3;
		position:relative;
	}
	.mainBlock .block.third > .inner .accessBox .txtBox .typeBox .means p::before{
		content:"\f591";
		font-family:"Material Symbols Outlined";
		font-size:4vw;
		display:block;
		position:absolute;
		top:-0.15vw;
		left:-1.1em;
	}
	.mainBlock .block.third > .inner .accessBox .txtBox .typeBox .means p:first-child{
		margin-top:0;
	}


	/* =================================================== */
	.mainBlock .block.fourth{
		width:100%;
		margin:8% auto 0;
		/*margin-top:120px;*/
	}
	.mainBlock .block.fourth > .inner{
		width:90%;
		margin:0 auto 0;
		padding:0;
	}
	/* ------------------------------------------ */
	.mainBlock .block.fourth > .inner .blockTtlBox{
		width:100%;
		margin:0 auto 0;
	}
	.mainBlock .block.fourth > .inner .blockTtlBox h3{
		padding:0 20px;
		text-align:center;
		font-size:7vw;
		font-weight:700;
		line-height:1.3;
		color:#333;
	}
	/* ------------------------------------------ */
	.mainBlock .block.fourth > .inner .outlineBox{
		width:100%;
		margin:50px auto 0;
	}
	/* ------------------------------------------ */
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl{}
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl .items{
		padding:0 3% 3% 3%;
		margin-top:7%;
		border-bottom:1px solid #e0e0e0;
	}
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl > div:first-child{
		margin-top:0;
	}
	/* ------------------------------------------ */
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl .items .itemTtlBox{
		width:100%;
	}
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl .items > div p{
		font-size:3.5vw;
		line-height:1.3;
	}
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl .items .itemTtlBox p{
		letter-spacing:2em;
		font-weight:700;
	}
	/* ------------------------------------------ */
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl .items .itemBdyBox{
		width:100%;
	}
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl .items .itemBdyBox p{
		margin-top:3%;
	}

	/* =================================================== */
	.mainBlock .block.fourth > .inner .archivesBox{
		width:90%;
		margin:6% auto 0;
	}
	.mainBlock .block.fourth > .inner .archivesBox h4{
		text-align:center;
		font-size:4vw;
	}
	.mainBlock .block.fourth > .inner .archivesBox ul{
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		margin:5% 0 0 0;
	}
	.mainBlock .block.fourth > .inner .archivesBox ul li{
		width:47%;
		margin-top:3%;
	}
	.mainBlock .block.fourth > .inner .archivesBox ul li:nth-child(-n+2){
		margin-top:0;
	}
	.mainBlock .block.fourth > .inner .archivesBox ul li a{
		display:block;
		width:100%;
		padding:5% 0;
		text-align:center;
		font-size:4vw;
		font-weight:500;
		border-radius:150px;
		border:3px solid #333;
		color:#333;
	}
}

/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	For Desktop & Tablet
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */


@media screen and (min-width:768px){
	/* ///////////////////////////////////////////////////////////// */
	/* =================================================== */
	/* ------------------------------------------ */

	.mainVisWrap{
		width:100%;
	}
	.mainVisWrap .mainVisBox{
		width:100%;
		height:800px;
		display:flex;
		position:relative;
	}
	/* ------------------------------------------ */
	.mainVisWrap .mainVisBox .mainVisImg{
		width:100%;
		height:800px;
		overflow-x:hidden;
		background:#fff;
		position:absolute;
		z-index:1;
	}
	.mainVisWrap .mainVisBox .mainVisImg img{
		width:auto;
		height:800px;
		position:absolute;
		top:0;
		left:50%;
		transform:translateX(-50%);
	}
	/* ------------------------------------------ */
	.mainVisWrap .mainVisBox .mainVisTxtImgs{
		width:80%;
		max-width:1200px;
		display:flex;
		justify-content:space-between;
		align-items:center;
		position:absolute;
		bottom:-1.5vw;
		left:50%;
		transform:translateX(-50%);
		z-index:3;
		/*background:#cfc;*/
	}
	.mainVisWrap .mainVisBox .mainVisTxtImgs .mainVisTxtImg01{
		width:50%;
		z-index:3;
	}
	.mainVisWrap .mainVisBox .mainVisTxtImgs .mainVisTxtImg02{
		width:47%;
		z-index:3;
		animation: Beat 2.5s ease-in-out infinite;

		transition:all 0.3s ease-in-out;
		transform:scale(1);
		opacity:1;
	}
	@keyframes Beat{
		10%, 30% {transform:scale(1.03);}
		20%, 40%, 50%, 60%, 70%, 80%, 90%, 100% {transform:scale(1.0);}
	}
	.mainVisWrap .mainVisBox .mainVisTxtImgs .mainVisTxtImg02:hover{
		animation-play-state: paused;
		opacity:0.8;
	}
	
	.mainVisWrap .mainVisBox .mainVisTxtImgs .mainVisBtnBox{
		position:absolute;
		left:-3.5vw;
		top:-9.6vw;
	}
	.mainVisWrap .mainVisBox .mainVisTxtImgs .mainVisBtnBox .mainVisBtn{
		position:relative;
		display:flex;
		justify-content:center;
		align-items:center;
		width:11vw;
		height:11vw;
		/*max-width:195px;
		max-height:195px;*/
		padding-left:0.3vw;
		font-size:3.3vw;
		font-weight:700;
		color:#fff;
		line-height:1.1;
		letter-spacing:6px;
		text-shadow:0px 0px 10px rgba(0, 0, 0, 0.2);
		border:4px solid #fff;
		border-radius:300px;
		background:#f21d1d;
		background:linear-gradient(180deg,rgba(255, 129, 17, 1) 33%, rgba(234, 110, 0, 1) 60%);
		box-shadow:0px 3px 13px rgba(0, 0, 0, .3);
		z-index:1;
		transform:rotate(-5deg) scale(1);
		transition:all 0.3s ease-in-out;
	}
	.mainVisWrap .mainVisBox .mainVisTxtImgs .mainVisBtnBox .mainVisBtn::before{
		content:"\e315";
		font-family:"Material Symbols Outlined";
		display:block;
		font-size:2.5vw;
		font-weight:700;
		position:absolute;
		right:-0.3em;
		top:50%;
		transform:translateY(-50%);
	}
	.mainVisWrap .mainVisBox .mainVisTxtImgs .mainVisBtnBox .mainVisBtn:hover{
		transform:rotate(-7deg) scale(1.15);
	}

	/* ///////////////////////////////////////////////////////////// */
	.mainBlock{
		margin-bottom:-50px;
	}

	/* =================================================== */
	.mainBlock .block.first > .inner{
		width:90%;
		/*max-width:1200px;*/
		margin:0 auto 0;
		padding:4vw 0 0 0;
	}
	.mainBlock .block.first > .inner .leadTxtBox{
		padding:0 0 30px 0;
		border-bottom:2px solid var(--mainColor);
	}
	.mainBlock .block.first > .inner  .leadTxtBox p{
		padding:0 20px;
		text-align:center;
		font-size:clamp(1.6rem, 3.8vw, 4.0rem);
		font-weight:900;
		line-height:1.3;
		color:var(--mainColor);
	}

	/* =================================================== */
	.mainBlock .block.first > .inner .performersBox{
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		width:95%;
		margin:70px auto 0;
		/*background:#fcc;*/
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech{
		display:flex;
		flex-wrap:wrap;
		width:100%;
		min-height:360px;
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .ttlBox{
		display:flex;
		justify-content:center;
		align-items:center;
		width:100px;
		margin-right:30px;
		background-color:var(--mainColor);
		/*border:1px solid #333;*/
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .ttlBox h3{
		writing-mode:vertical-lr;
		font-weight:100;
		font-size:55px;
		letter-spacing:15px;
		text-indent:15px;
		color:#ffffff;
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox{
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		width:calc(100% - 130px);
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox{
		width:50%;
		display:flex;
		align-items:center;
		padding-right:40px;
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox .innerBox .timeScheTxt{
		font-size:clamp(1rem, 1.4vw, 1.8rem);
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox .innerBox .timeScheTxt span{
		font-size:clamp(0.8rem, 1.1vw, 1.5rem);
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox .innerBox .speechThemeTxt{
		margin-top:30px;
		font-size:clamp(1.8rem, 3vw, 3.6rem);
		line-height:1.4;
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox .innerBox .nameBox{
		display:flex;
		align-items:center;
		margin-top:30px;
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox .innerBox .nameBox .titleTxt{
		font-size:clamp(0.9rem, 1.3vw, 1.5rem);
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox .innerBox .nameBox .nameTxt{
		font-size:clamp(1.2rem, 2.2vw, 2.3rem);
		margin-left:10px;
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox .innerBox .nameBox .nameTxt span{
		font-size:1.5vw;
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .imgBox{
		position:relative;
		overflow:hidden;
		/*width:580px;*/
		width:50%;
		background:#fcc;
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .imgBox .innerBox{
		width:580px;
		position:absolute;
		left:50%;
		top:0;
		transform:translateX(-50%);
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.half{
		width:48%;
		margin-top:60px;
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.half .ttlBox{
		display:flex;
		justify-content:center;
		align-items:center;
		width:100%;
		padding:13px 0;
		background-color:var(--mainColor);
	}
	.mainBlock .block.first > .inner .performersBox .items.half .ttlBox h3{
		font-weight:100;
		font-size:clamp(1.2rem, 2.5vw, 2.3rem);
		/*letter-spacing:15px;
		text-indent:15px;*/
		color:#ffffff;
	}
	/* ------------------------------------------ */
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox{
		display:flex;
		align-items:center;
		margin-top:20px;
	}
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox .imgBox{
		width:55%;
	}
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox .txtBox{
		width:40%;
		margin-left:5%;
	}
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox .txtBox .innerBox .timeScheTxt{
		font-size:clamp(1rem, 1.4vw, 1.8rem);
	}
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox .txtBox .innerBox .timeScheTxt span{
		font-size:clamp(0.8rem, 1.1vw, 1.5rem);
	}
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox .txtBox .innerBox .nameBox{
		margin-top:25px;
	}
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox .txtBox .innerBox .nameBox .titleTxt{
		font-size:clamp(0.9rem, 1.3vw, 1.5rem);
	}
	.mainBlock .block.first > .inner .performersBox .items.half .dtlBox .txtBox .innerBox .nameBox .nameTxt{
		margin-top:5px;
		font-size:clamp(1.2rem, 2.0vw, 2.1rem)
	}

	/* =================================================== */
	.mainBlock .block.second{
		margin-top:120px;
	}
	.mainBlock .block.second > .inner{
		width:90%;
		margin:0 auto 0;
	}
	/* ------------------------------------------ */
	.mainBlock .block.second > .inner .leadTxtBox{
		padding:0 0 30px 0;
		border-bottom:2px solid var(--mainColor);
	}
	.mainBlock .block.second > .inner  .leadTxtBox h3{
		padding:0 20px;
		text-align:center;
		font-size:clamp(1.6rem, 3.8vw, 4.0rem);
		font-weight:900;
		line-height:1.3;
		color:var(--mainColor);
	}
	/* ------------------------------------------ */
	.mainBlock .block.second > .inner .categoryBox{
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		width:95%;
		max-width:1200px;
		margin:50px auto 0;
	}
	.mainBlock .block.second > .inner .categoryBox .items{
		/*width:32%;*/
		width:calc(100% / 3 - 40px / 2);
		margin:30px 0 0 0;
		padding:20px;
		background-color:#f8f8f8;
	}
	.mainBlock .block.second > .inner .categoryBox .items:nth-child(3n){
		margin-right:0;
	}
	.mainBlock .block.second > .inner .categoryBox .items:nth-child(-n+3){
		margin-top:0;
	}
	/* ------------------------------------------ */
	.mainBlock .block.second > .inner .categoryBox .items .itemHeadBox{
		display:flex;
		flex-wrap:wrap;
		align-items:center;
	}
	.mainBlock .block.second > .inner .categoryBox .items .itemHeadBox .iconBox{
		width:75px;
	}
	.mainBlock .block.second > .inner .categoryBox .items .itemHeadBox .catTxt{
		width:calc(100% - 75px);
		padding-left:10px;
		font-size:clamp(1.2rem, 2.0vw, 1.9rem);
		font-weight:700;
		line-height:1.2;
	}
	.mainBlock .block.second > .inner .categoryBox .items .itemHeadBox .catTxt.ls1{
		letter-spacing:1.5em;
	}
	.mainBlock .block.second > .inner .categoryBox .items .itemHeadBox .catTxt.ls2{
		letter-spacing:0.3em;
	}
	.mainBlock .block.second > .inner .categoryBox .items .descBox{
		display:flex;
		margin-top:15px;
	}
	.mainBlock .block.second > .inner .categoryBox .items .descBox p{
		font-size:clamp(0.8rem, 1.4vw, 1.1rem);
		line-height:1.3;
	}
	/* ------------------------------------------ */
	.mainBlock .block.second > .inner .reconstructionBox{
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		width:95%;
		max-width:1200px;
		margin:50px auto 0;
		padding:15px;
		background-color:#f5f2ec;
	}
	.mainBlock .block.second > .inner .reconstructionBox .innerBox{
		width:100%;
		display:flex;
		justify-content:center;
		align-items:center;
		padding:2% 0;
		border:1px solid #b81c22;
	}
	/*.mainBlock .block.second > .inner .reconstructionBox .innerBox > .wrapper{
		display:flex;
		align-items:center;
		justify-content:center;
		width:90%;
	}*/
	.mainBlock .block.second > .inner .reconstructionBox .innerBox .imgBox{
		width:18%;
	}
	.mainBlock .block.second > .inner .reconstructionBox .innerBox .txtBox{
		padding-left:30px;
	}
	.mainBlock .block.second > .inner .reconstructionBox .innerBox .txtBox p{
		color:#b81c22;
	}
	.mainBlock .block.second > .inner .reconstructionBox .innerBox .txtBox p:nth-child(1){
		font-size:clamp(1.2rem, 3.8vw, 3.6rem);
		font-weight:500;
	}
	.mainBlock .block.second > .inner .reconstructionBox .innerBox .txtBox p:nth-child(2){
		font-size:clamp(0.9rem, 2.16vw, 2.05rem);
		font-weight:400;
		margin-top:15px;
	}
	/* ------------------------------------------ */
	.mainBlock .block.second > .inner .exhibitorBtn{
		display:flex;
		justify-content:center;
		align-items:center;
		position:relative;
		/*text-align:center;*/
		max-width:400px;
		width:70%;
		margin:60px auto 0;
		padding:25px 0;
		font-size:clamp(1.4rem, 2.3vw, 1.6rem);
		color:#fff;
		background:#033f82;
		background:var(--blueGradation);
		border-radius:8px;
	}
	.mainBlock .block.second > .inner .exhibitorBtn::before{
		content:"\e315";
		font-size:clamp(1.6rem, 3.4vw, 2rem);
		font-family:"Material Symbols Outlined";
		position:absolute;
		right:0;
		top:50%;
		transform:translateY(-44%);
	}

	/* =================================================== */
	.mainBlock .block.third{
		width:93%;
		max-width:1500px;
		margin:120px auto 0;
		/*margin-top:120px;*/
		background-color:#f8f8f8;
	}
	.mainBlock .block.third > .inner{
		width:85%;
		margin:0 auto 0;
		padding:6% 0;
	}
	/* ------------------------------------------ */
	.mainBlock .block.third > .inner .blockTtlBox{
		width:90%;
		margin:0 auto 0;
	}
	.mainBlock .block.third > .inner .blockTtlBox h3{
		padding:0 20px;
		text-align:center;
		font-size:clamp(2rem, 3.0vw, 3.0rem);
		font-weight:700;
		line-height:1.3;
		color:#333;
	}
	/* ------------------------------------------ */
	.mainBlock .block.third > .inner .accessBox{
		display:flex;
		align-items:center;
		justify-content:space-between;
		margin-top:20px;
	}
	.mainBlock .block.third > .inner .accessBox .mapBox{
		width:55%;
	}
	.mainBlock .block.third > .inner .accessBox .mapBox a{
		display:flex;
		justify-content:center;
		position:relative;
		width:100%;
		padding:5px 0 8px 0;
		border-bottom-left-radius:6px;
		border-bottom-right-radius:6px;
		background:#aaaaaa;
		background:var(--grayGradation);
		font-size:clamp(0.8rem, 1.2vw, 1.15rem);
		color:#fff;
	}
	.mainBlock .block.third > .inner .accessBox .mapBox a::before{
		content:"\e315";
		font-size:clamp(0.9rem, 1.5vw, 1.4rem);
		font-family:"Material Symbols Outlined";
		position:absolute;
		right:0;
		top:50%;
		transform:translateY(-44%);
	}
	/* ------------------------------------------ */
	.mainBlock .block.third > .inner .accessBox .txtBox{
		width:42%;
	}
	/* ------------------------------------------ */
	.mainBlock .block.third > .inner .accessBox .txtBox .venueBox{}
	.mainBlock .block.third > .inner .accessBox .txtBox .venueBox p:nth-child(1){
		font-size:clamp(1.2rem, 2.8vw, 2.2rem);
		font-weight:500;
	}
	.mainBlock .block.third > .inner .accessBox .txtBox .venueBox p:nth-child(2){
		margin-top:10px;
		font-size:clamp(0.7rem, 1.6vw, 1.3rem);
	}
	/* ------------------------------------------ */
	.mainBlock .block.third > .inner .accessBox .txtBox .dtlBox .dtlTtl{
		margin-top:25px;
		padding:5px 10px;
		background-color:#e06a66;
		color:#ffffff;
		font-size:clamp(1rem, 1.3vw, 1.2rem);
		font-weight:600;
	}
	/* ------------------------------------------ */
	.mainBlock .block.third > .inner .accessBox .txtBox .typeBox{
		padding:0 2% 0 3%;
	}
	.mainBlock .block.third > .inner .accessBox .txtBox .typeBox .typeTtl{
		margin-top:5.5%;
		border-top:1px solid #000000;
	}
	.mainBlock .block.third > .inner .accessBox .txtBox .typeBox .typeTtl p{
		display:inline-block;
		padding-right:0.8em;
		transform:translateY(-0.6em);
		font-size:clamp(0.9rem, 1.2vw, 1.1rem);
		font-weight:600;
		background-color:#fffef4;
	}
	/* ------------------------------------------ */
	.mainBlock .block.third > .inner .accessBox .txtBox .typeBox .means p{
		width:95.5%;
		margin:1.5% 0 0 7%;
		font-size:clamp(0.8rem, 1.1vw, 1.0rem);
		line-height:1.3;
		position:relative;
	}
	/*.mainBlock .block.third > .inner .accessBox .txtBox .typeBox .means.subway p{
		padding-left:5em;
		text-indent:-5em;
	}*/
	.mainBlock .block.third > .inner .accessBox .txtBox .typeBox .means p::before{
		content:"\f591";
		font-family:"Material Symbols Outlined";
		font-size:clamp(1rem, 1.3vw, 1.4rem);
		display:block;
		position:absolute;
		top:-0.15vw;
		left:-1.2em;
	}
	.mainBlock .block.third > .inner .accessBox .txtBox .typeBox .means p:first-child{
		margin-top:0;
	}

	/* =================================================== */
	.mainBlock .block.fourth{
		width:100%;
		margin:100px auto 0;
		/*margin-top:120px;*/
	}
	.mainBlock .block.fourth > .inner{
		width:100%;
		margin:0 auto 0;
		padding:0;
	}
	/* ------------------------------------------ */
	.mainBlock .block.fourth > .inner .blockTtlBox{
		width:90%;
		margin:0 auto 0;
	}
	.mainBlock .block.fourth > .inner .blockTtlBox h3{
		padding:0 20px;
		text-align:center;
		font-size:clamp(2rem, 3.0vw, 3.0rem);
		font-weight:700;
		line-height:1.3;
		color:#333;
	}
	/* ------------------------------------------ */
	.mainBlock .block.fourth > .inner .outlineBox{
		width:80%;
		max-width:1200px;
		margin:50px auto 0;
	}
	/* ------------------------------------------ */
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl{}
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl .items{
		display:flex;
		padding:0 20px 10px 20px;
		margin-top:40px;
		border-bottom:1px solid #e0e0e0;
	}
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl > div:first-child{
		margin-top:0;
	}
	/* ------------------------------------------ */
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl .items .itemTtlBox{
		width:150px;
	}
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl .items > div p{
		font-size:clamp(0.9rem, 1.2vw, 1.1rem);
		line-height:1.4;
	}
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl .items .itemTtlBox p{
		letter-spacing:2em;
	}
	/* ------------------------------------------ */
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl .items .itemBdyBox{
		width:calc(100% - 150px);
	}
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl .items .itemBdyBox p{
		margin-top:20px;
	}
	.mainBlock .block.fourth > .inner .outlineBox .outlineTbl .items .itemBdyBox p:first-child{
		margin-top:0;
	}

	/* =================================================== */
	.mainBlock .block.fourth > .inner .archivesBox{
		width:70%;
		max-width:1100px;
		margin:30px auto 0;
	}
	.mainBlock .block.fourth > .inner .archivesBox h4{
		text-align:center;
		font-size:clamp(1rem, 2.0vw, 2rem);
	}
	.mainBlock .block.fourth > .inner .archivesBox ul{
		display:flex;
		margin:20px 0 0 0;
	}
	.mainBlock .block.fourth > .inner .archivesBox ul li{
		width:19.2%;
		margin-right:1%;
	}
	.mainBlock .block.fourth > .inner .archivesBox ul li:last-child{
		margin-right:0;
	}
	.mainBlock .block.fourth > .inner .archivesBox ul li a{
		display:block;
		width:100%;
		padding:6% 0;
		text-align:center;
		font-size:clamp(0.9rem, 1.4vw, 1.4rem);
		font-weight:500;
		border-radius:150px;
		border:2px solid #333;
		color:#333;
	}

	/* ///////////////////////////////////////////////////////////// */
	/* =================================================== */
	/* ------------------------------------------ */
}

/*@media screen and (min-width:768px) and (man-width:1565px){
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox{
		width:calc(100% - 600px);
	}
}*/
@media screen and (min-width:1508px){
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .txtBox{
		width:calc(100% - 600px);
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .imgBox{
		position:static;
		overflow:visible;
		width:600px;
		background:#fcc;
	}
	.mainBlock .block.first > .inner .performersBox .items.keynoteSpeech .dtlBox .imgBox .innerBox{
		width:100%;
		position:static;
		transform:translateX(0);
	}
}