@charset "utf-8";
/*-------------------------------
TOP CSS

mainVidual
pickUP
pickUP sub
musicLiveWrap
specialEventWrap

danceCupWrap
artistWrap
timetableWrap
exhibitorWrap
accessWrap
-------------------------------*/

#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 77%;
    z-index: 888;
}
#page-top a {
background: rgb(0 128 0 / 80%);
    text-decoration: none;
    color: #fff;
    width: 84px;
    height: 84px;
    padding: 33px 0;
    text-align: center;
    display: block;
    border-radius: 42px;
    font-size: 12px;
    transition: .3s;
}
#page-top a:hover {
   opacity: .5;
}


@media screen and (max-width: 640px) {
	#page-top {
		right: 10px;
	}
	#page-top a {
    	padding: 28px 0;
	    width: 74px;
	    height: 74px;
	}
}




/*
mainVidual
----------------------------------------- */
.mainVisudal {
	width: 100%;
}

.mainVisudalImg {
	width: 100%;
	display: inline-block;
}

.mainVisudalImg.pc_img{
	display: none;
}

@media screen and (min-width:768px) {
	.mainVisudalImg.sp_img{
		display: none;
	}
	.mainVisudalImg.pc_img{
		display: block;
	}
}



/*
pickUP
----------------------------------------- */
.pickupList {
	display: flex;
	flex-wrap: wrap;
	gap: 40px 30px;

}
.pickupList .listItem {
	width: calc(50% - 15px);
}

.pickupList .linkItem{
}

.pickupList .listItem .imgBlock {
	overflow: hidden;
	box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.2);
}
.pickupList .listItem .imgBlock img{
	transition: .3s;
}

.pickupList .linkItem .textBlock{
	padding: 10px 10px 10px 20px;
	background: rgba(255, 218, 0, 0.85);
	position: relative;
}

.pickupList .linkItem .textBlock .eventName{
	font-size: 18px;
	font-weight: bold;
}
.pickupList .linkItem .textBlock .date {
	font-size: 28px;
}
.pickupList .linkItem .textBlock .date .smtxt{
	font-size: .7em;
	padding-left: .1em;
}

.pickupList .linkItem .textBlock:after{
	position: absolute;
	content: '';
	width: 40px;
	height: 40px;
	right: -5px;
	top: 0;
	bottom: 0;
	margin-top: auto;
	margin-bottom: auto;
	background: url(/assets/image/common/pinckup_link_icon.svg) no-repeat;
	background-size: contain;
	display: block;
	z-index: 2;
	transition: .3s;
}

.pickupList .linkItem .textBlock:hover:after{
	right: -10px;
}

.pickupList .linkItem:hover .imgBlock img {
	transform: scale(1.1);
}

@media screen and (max-width: 640px) {
	.pickupList .listItem {
		width: 80%;
		margin-right: auto;
		margin-left: auto;
	}

}



/*
pickUP sub
----------------------------------------- */
.pickupList_sub {
	display: flex;
	gap: 20px 30px;
	flex-wrap: wrap;
	align-items: center;
}

.pickupList_sub .listItem{
	width: calc(32.9% - 15px)
}

.pickupList_sub .linkItem {
	background: #333;
	color: #fff;
	transition: .3s;
	display: inline-block;
	position: relative;
	padding: 14px 30px 10px 20px;
	width: 100%;
	min-width: 200px;
}
.pickupList_sub .linkItem .textBlock{
	position: relative;
}

.pickupList_sub .linkItem .textBlock p{
	color: #FFDA00;
	transition: .3s;
}

.pickupList_sub .linkItem .textBlock .eventName {
	font-size: 30px;
	letter-spacing: .3px;
	line-height: 1;
}
.pickupList_sub .linkItem .textBlock .text {
	font-size: 14px;
	font-weight: bold;
}

.pickupList_sub .linkItem:before{
	content: '';
	background: #FFDA00;
	width: 0;
	top: 0;
	height: 100%;
	position: absolute;
	left: 0;
	transition: .3s;
}

.pickupList_sub .linkItem:after{
	position: absolute;
	content: '';
	width: 40px;
	height: 40px;
	right: -5px;
	top: 0;
	bottom: 0;
	margin-top: auto;
	margin-bottom: auto;
	background: url(/assets/image/common/pinckup_link_icon.svg) no-repeat;
	background-size: contain;
	display: block;
	z-index: 2;
	transition: .3s;
}

.pickupList_sub .linkItem:hover:before{
	width: 100%;
}

.pickupList_sub .linkItem:hover .textBlock p{
	color: #333;
}
.pickupList_sub .linkItem:hover:after{
	right: -7px;
}


@media screen and (max-width:1360px) {
	.pickupList_sub .listItem{
		width: calc(32.9% - 17px);
	}

}

@media screen and (max-width: 800px) {
	.pickupList_sub {
		gap: 20px;
	}
	.pickupList_sub .listItem{
		width: calc(50% - 10px);
	}
	.pickupList_sub .linkItem{
		min-width: 120px;
	}
}



/*
musicLiveWrap
----------------------------------------- */
.musicLiveWrap {
	background: #f6f6f6;
	padding-top: 80px;
	padding-bottom: 80px;
}

.musicLiveWrap .musicInfoItem .musicInfoImg{
	max-width: 1100px;
}

.musicLiveWrap .info_seamo .musicInfoImg{
	margin-left: auto;
}

.musicLiveWrap .musicInfoItem .musicInfoImg.pc_img{
	display: block;
}

.musicLiveWrap .musicInfoItem .musicInfoImg.sp_img{
	display: none;
}

@media screen and (max-width: 768px) {
	.musicLiveWrap .musicInfoItem .musicInfoImg.pc_img{
		display: none;
	}

	.musicLiveWrap .musicInfoItem .musicInfoImg.sp_img{
		display: block;
	}
}



/*
specialEventWrap
----------------------------------------- */
.specialEventWrap {
	background: #e8f9ec;
	padding-top: 80px;
	padding-bottom: 80px;
}

.specialEventWrap .contentsLinkFlex .listItem{
	max-width: 500px;
	width: 70%;
}



/*
foodFESTAWrap
----------------------------------------- */
.foodFESTAWrap {
	background: #fff;
	padding-top: 80px;
	padding-bottom: 80px;
}


.foodFESTAWrap .foodFesList {
	display: flex;
	flex-wrap: wrap;
}


.foodFESTAWrap .foodFesList .listItem{
	background: #fff;
	padding: 10px 10px 20px 10px;
	display: block;
	width: calc(32% - 15px);
	text-align: center;
	border: 3px solid #333;
	margin-right: 10px;
	margin-left: 10px;
}

.foodFESTAWrap .foodFesList .listItem .imgbox{
	position: relative;
	overflow: hidden;
	height: 210px;
	margin-bottom: 20px;
}

.foodFESTAWrap .foodFesList .listItem .imgbox img{
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
}


.foodFESTAWrap .foodFesList .listItem .date {
	font-size: 28px;
}

.foodFESTAWrap .foodFesList .listItem .name{
	font-weight: bold;
	font-size: 18px;
	color: #0792e5;
}


@media screen and (max-width: 768px) {
	.foodFESTAWrap .foodFesList .listItem{
		width: calc(50% - 15px);
	}

}

@media screen and (max-width: 640px) {
	.foodFESTAWrap .foodFesList{
		gap: 10px;
	}
	.foodFESTAWrap .foodFesList .listItem{
		width: 200px !important;
	}
	.foodFESTAWrap .foodFesList .listItem .imgbox{
		height: 150px;
	}
	.foodFESTAWrap .foodFesList .listItem .date{
		font-size: 22px;
	}
}





/*
freeMarketWrap
----------------------------------------- */
.freeMarketWrap {
	background: #e9f7ff;
	padding-top: 80px;
	padding-bottom: 80px;
}


.freeMarketWrap .textItem{
	font-weight: bold;
	text-align: center;
	font-size: 30px;
}

.freeMarketWrap .flexItem{
	display: flex;
	gap: 40px;
	justify-content: center;
	max-width: 960px;
	margin-right: auto;
	margin-left: auto;
}

.freeMarketWrap .flexItem .imgItem{
	max-width: 400px;
}
.freeMarketWrap .flexItem .imgItem a{
	transition: .3s;
}
.freeMarketWrap .flexItem .imgItem a:hover{
	opacity: .5;
}

.freeMarketWrap .flexItem .textItem{	
	background: #fff;
	padding: 30px;
	text-align: left;
}

.freeMarketWrap .flexItem .textItem .txt_bold{
	font-weight: bold;
	font-size: 22px;
	color: #33a1de;
}

@media screen and (max-width: 640px) {
	.freeMarketWrap .flexItem{
		justify-content:center;
		    flex-direction: column;
	}
	.freeMarketWrap .flexItem .imgItem {
		margin-right: auto;
		margin-left: auto;
		width: 70%;
		max-width: 260px;
	}
	.freeMarketWrap .flexItem 
	.freeMarketWrap .flexItem .textItem .txt_bold{
		font-size: 18px;
	}
}






/*
danceCupWrap
----------------------------------------- */
.danceCupWrap {
	background: #fff;
	padding-top: 80px;
	padding-bottom: 80px;
}


.danceCupWrap .textItem{
	font-weight: bold;
	text-align: center;
	font-size: 30px;
}

.danceCupWrap .flexItem{
	display: flex;
	gap: 40px;
	justify-content: center;
	max-width: 960px;
	margin-right: auto;
	margin-left: auto;
}

.danceCupWrap .flexItem .imgItem{
	max-width: 400px;
}
.danceCupWrap .flexItem .imgItem a{
	transition: .3s;
}
.danceCupWrap .flexItem .imgItem a:hover{
	opacity: .5;
}

.danceCupWrap .flexItem .textItem{	
	background: #fff;
	padding: 30px;
	text-align: left;
	background: #f6f6f6;
}

.danceCupWrap .flexItem .textItem .txt_bold{
	font-weight: bold;
	font-size: 22px;
	color: #33a1de;
}
@media screen and (max-width: 640px) {
	.danceCupWrap .flexItem{
		justify-content:center;
		    flex-direction: column;
	}
.danceCupWrap .flexItem .textItem .txt_bold {
	font-size: 18px;
}

}

/*
artistWrap
----------------------------------------- */
.artistWrap {
	background: #888;
	padding-top: 80px;
	padding-bottom: 130px;
}
.artistWrap .ttlItem{
	color: #fff;
}

.artistWrap .artistList{
	display: flex;
	gap: 20px;
}

.artistWrap .artistList .listItem {
	background: #000;
	margin-right: 10px;
	margin-left: 10px;
	padding: 20px 20px 20px 20px;
	width: calc(33.33% - 34px);
}
.artistWrap .artistList .listItem .imgBox{
	overflow: hidden;
	margin-bottom: 10px;
	background: #ffda03;
	border: 5px solid #ffda03;
}
.artistWrap .artistList .listItem .imgBox img{
    display: block;
    height: 150px;
    object-fit: contain;
    width: 100%;
   	height: 220px;
}

.artistWrap .artistList .listItem .textBox{
	color: #fff;
}

.artistWrap .artistList .listItem .artistName {
	color: #f05ca2;
	font-weight: bold;
	margin-bottom: 10px;
	font-size: 22px;
	padding-bottom: 5px;
	border-bottom: 1px solid #f05ca2;
}

.artistWrap .artistList .listItem .artistInfo {
	display: flex;
	font-size: 16px;
	align-items: center;
	justify-content: center;
}

.artistWrap .artistList .listItem .artistInfo .ttl{
	width: 60px;
}
.artistWrap .artistList .listItem .artistInfo .txt{
	flex:1;
}

.artistWrap .artistList .listItem .artistInfo .txt.enFonts{
	font-size: 1.4em;
}

@media screen and (max-width: 800px) {
	.artistWrap .artistList .listItem {
		width: calc(50% - 30px);
		margin-bottom: 20px;
		width: 300px !important;
	}
}

@media screen and (max-width: 640px) {
	.artistWrap .artistList{
		gap: 20px;
	}
	.artistWrap .artistList .listItem {
		width: calc(50% - 10px);
		width: 200px !important;
	}
	.artistWrap .artistList .listItem .artistName {
		font-size: 18px;
	}
	.artistWrap .artistList .listItem .artistInfo {
		font-size: 14px;
	}
	.artistWrap .artistList .listItem {
		padding: 10px 10px 10px 10px;
	}
}




/*
timetableWrap
----------------------------------------- */
.timetableWrap {
	background: #fff;
	padding-top: 80px;
	padding-bottom: 80px;
}
.timetableWrap .timetable{
	overflow-x: scroll;
/*	width: 100%;*/
}
.timetableWrap .timetableItem .ttlItem{
	color: #fff;
	background: #000;
	font-size: 24px;
	font-weight: bold;
	border-radius: 0 100px 100px 0;
	padding: 10px 20px;
	display: inline-block;
	width: 80%;
}

.timetableWrap .timetableItem table{
	border: 1px solid #ccc;
	border-collapse: separate;
	border-spacing: 0;
	table-layout: fixed;
	width: 1600px;
	word-break: break-all;
	word-wrap: break-all;
}
.timetableWrap .timetableItem table th{
	background: #0792e5;
	color: #fff;
	text-align: center;
	font-size: 14px;
	padding: 5px 10px;
	border: 1px solid #ccc;
}
.timetableWrap .timetableItem table th.wid100{
	width: 80px;
}
.timetableWrap .timetableItem table td{
	text-align: left;
	font-size: 14px;
	padding: 5px 10px;
	border: 1px solid #ccc;

}
.timetableWrap .timetableItem table tr.bgGray{
	background: #f6f6f6;
}

.timetableWrap .timetableItem table td.bgItem{
	background: #ffda03;
}
.timetableWrap .timetableItem table td.bgItem02{
	background: #a6d3ee;
}
@media screen and (max-width: 640px) {
	.timetableWrap .timetableItem table th{
		font-size: 10px;
			padding: 5px 5px;
	}
	.timetableWrap .timetableItem table td{
		font-size: 10px;
		padding: 5px 5px;
	}
}




/*
exhibitorWrap
----------------------------------------- */
.exhibitorWrap {
	background: #f6f6f6;
	padding-top: 80px;
	padding-bottom: 80px;
}
.exhibitorWrap .exhibitorItem{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	background: #cee194;
	padding: 40px 40px;
}
.exhibitorWrap .exhibitorItem .ttlItem{
	font-size: 32px;
	line-height: 1.1;
}
.exhibitorWrap .exhibitorItem .ttlItem .jpItem{
	font-size: 16px;
	display: block;
}
.exhibitorWrap .exhibitorItem .dateTtl{
	font-weight: bold;
	font-size: 44px;
	color: #000;
	padding-left: 10px;
	border-left: 4px solid #0792e5;
	line-height: 1;
}
.exhibitorWrap .exhibitorItem .dateTtl .smtxt{
	font-size: 20px;
	padding-left: 7px;
	color: #000;
}
.exhibitorWrap .shopList {
	text-align: left;
}
.exhibitorWrap .shopList .listItem{
	display: inline-block;
	margin-left: 6px;
	margin-right: 6px;
	margin-bottom: 10px;
	background: #fff;
	font-weight: bold;
	font-size: 16px;
	padding: 5px 10px;
}

@media screen and (max-width: 900px) {
	.exhibitorWrap .exhibitorItem{
		padding: 30px 20px;
	}
}
@media screen and (max-width: 640px) {
	.exhibitorWrap .exhibitorItem{
		width: 96%;
	}
	.exhibitorWrap .shopList .listItem{
		font-size: 14px;
	}
}




/*
accessWrap
----------------------------------------- */
.accessWrap {
	background: #fffbe5;
	padding-top: 80px;
	padding-bottom: 80px;
}
