@charset "utf-8";
/* CSS Document */
/*=====================================================================================
***************************************************************************************

　　MV

***************************************************************************************
=====================================================================================*/
#MV{
	position: relative;
	overflow: hidden;
	background: url(../img/MV_bg.jpg) repeat-x bottom center;
	padding-top: 29px;
	height: 545px;
}
#MV .max_w_inner{
	display: flex;
	flex-wrap: wrap;
	gap: 20px 2%;
    align-items: center;
}
#MV h1{
	width: 71.8%;
}
#MV .btn_box{
	width: 26.2%;
	display: flex;
    flex-direction: column;
    gap: 20px 12px;
	align-items: center;
}

@media screen and (max-width: 1040px) {
	#MV{
		height: 100%;
		padding-bottom: 42px;
		padding-top: 70px;
	}
}
@media screen and (max-width: 700px) {
	#MV{background-size: cover;}
	#MV h1,#MV .btn_box{width: 100%;}
	#MV .btn_box{
		flex-direction: row;
		align-items: center;
	}
	#MV .btn_box a{width:48% ;}
	#MV .btn_box a img{width: 100%;}
	#MV .mv_entry{display: none;}
}
/*=====================================================================================
***************************************************************************************

　　GAMEJAM

***************************************************************************************
=====================================================================================*/
#GAMEJAM_bg{
	background-color:#ffef00 ;
	padding: 100px 0 50px;
	position: relative;
}
@media screen and (max-width: 750px) {
	#GAMEJAM_bg{padding: 60px 0 30px;}
}
.absolute_img_top,
.absolute_img_bottom{
	width: 100%;
	margin: auto;
	z-index: 0;
}
.absolute_img_top{inset: 0 0 auto 0;}
.absolute_img_bottom{inset: auto 0 0 0;}

.box{
	position: relative;
	z-index: 2;
	text-align: left;
}
.box:not(:last-child) {margin-bottom: 120px;}
#event_contents.box .inner_bg,
#event_contents_2.box .inner_bg{
	width: calc(100% - 20px);
	background-color: #ffffff;
	box-shadow: 20px 20px 0px 0px rgba(42, 173, 162, 1);
	border-radius:40px;
	padding: 60px 5%;
	position: relative;
	z-index: 1;
}
.fukidashi{
	position: absolute;
	z-index: 2;
	top: -40px;
	left: 0;
}
#event_contents.box .title_box,
#event_contents_2.box .title_box{margin-bottom: 30px;}
#event_contents.box .title_box ul,
#event_contents_2.box .title_box ul
{margin-bottom: 25px;}
#event_contents.box .title_box ul li,
#event_contents_2.box .title_box ul li{
	background-color: #e92727;
	color: #ffffff;
	text-align: center;
	display: inline-block;
	padding: .2em 1em;
}
#event_contents.box .title_box p,
#event_contents_2.box .title_box p{
	color: #920783;
	padding: 1.5em 0;
	font-size: 18px;
}
#event_contents.box .title_box dl dt,
#event_contents_2.box .title_box dl dt{
	white-space: nowrap;
	background-color: #920783;
	color: #ffffff;
	display: inline-block;
	padding: .1em .5em;
	font-size: 15px;
	text-align: center;
	margin-right: 8px;
}
#event_contents.box .title_box dl dd, 
#event_contents_2.box .title_box dl dd{
    display: inline-block;
    width: calc(100% - 90px);
	margin-bottom: 15px;
	font-size: 18px;
}
#event_contents.box .title_box dl dd small,
#event_contents_2.box .title_box dl dd small{vertical-align: bottom;}
#event_contents.box .section,
#event_contents_2.box .section{margin-bottom: 30px;}
#event_contents.box h3,
#event_contents_2.box h3{
	font-size: 20px;
	background-color:#3a3745 ;
	text-align: center;
	color: #ffffff;
	padding: .3em 1em;
	margin-bottom: 20px;
}
.about_list {font-size: 16px;}
.about_list dt{
	display: inline-block;
	width: 70px;
}
.about_list dd{
	display: inline-block;
    width: calc(100% - 83px);
	margin-bottom: 2px;
	position: relative;
	margin-left: 8px;
}
.about_list dd::before{
	content: ":";
	position: absolute;
	left: -8px;
}
.guest_box p{
	width: calc(100% - 187px);
    display: inline-block;
    margin-left: 20px;
	text-align: justify;
	vertical-align: sub;
}
.guest_box p b{font-size: 24px;}
.guest_box p small{vertical-align: bottom;margin-bottom: 2px;display: inline-block;}

.aicatch{display: block;margin: 0 auto;}
@media screen and (max-width: 750px) {
	.box:not(:last-child) {margin-bottom: 60px;}
	#event_contents.box .inner_bg,
	#event_contents_2.box .inner_bg{width: calc(100% - 8px);}
	#event_contents.box .title_box,
	#event_contents_2.box .title_box{margin-bottom: 10px;}
	#event_contents.box .title_box .pc,
	#event_contents_2.box .title_box .pc{display: none;}
	#event_contents.box .title_box .sp,
	#event_contents_2.box .title_box .sp{display: block;}
	.fukidashi{top: -15px;}
	#event_contents.box .title_box p,
	#event_contents_2.box .title_box p{font-size: 16px;}
	#event_contents.box .title_box dl dd,
	#event_contents_2.box .title_box dl dd{font-size: 16px;}
	#event_contents.box .title_box dl dd small,
	#event_contents_2.box .title_box dl dd small{display: block;}
	#event_contents.box h3,
	#event_contents_2.box h3{
		font-size: 16px;
		margin-bottom: 15px;
	}
	#event_contents.box .section,
	#event_contents_2.box .section{margin-bottom: 20px;}
	.guest_box p{
		width: 100%;
    	margin: 20px 0 0 0;
	}
}
.timetable_box{text-align: center;}
.timetable_box div{
	display: flex;
    flex-wrap: wrap;
	align-items: flex-start;
	justify-content: center;
    gap: 20px 4%;
	margin: 50px 0 40px;
}
.timetable_box div img{width: 48%;}
@media screen and (max-width: 760px) {
	.timetable_box div{margin:20px 0;}
	.timetable_box div img{width: auto;}
	.timetable_box p{text-align: left;}
}

#caf{margin-bottom: 30px;}
#caf .box01 {
    background-color: #ffffff;
    padding: 20px 5%;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 2em 0;
}
#caf .box01 img{
	max-width: 296px;
    width: 36%;
}
#caf .box01 p{width: 64%;}

#caf h5{
	background-color: #920783;
	color: #ffffff;
	text-align: center;
	padding: .5em 1em;
	font-size: 20px;
	border-radius:10px;
	margin: 40px 0 20px;
}
#caf .list{
	display: flex;
    flex-wrap: wrap;
    gap: 10px 2%;
}
#caf .list img{width: 32%;}

#gff .box01 {
    background-color: #ffffff;
    padding: 20px 5%;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 2em 0;
}
#gff .box01 img{
	max-width: 296px;
    width: 36%;
}
#gff .box01 p{width: 64%;}

#gff h5{
	background-color: #920783;
	color: #ffffff;
	text-align: center;
	padding: .5em 1em;
	font-size: 20px;
	border-radius:10px;
	margin: 40px 0 20px;
}
#gff .list{
	display: flex;
    flex-wrap: wrap;
    gap: 10px 2%;
}
#gff .list img{width: 32%;}

.li_deco{
	margin-left: 1.5em;
}
.li_deco,.li_deco li{
	list-style: disc;
}
@media screen and (max-width: 760px) {
	#caf .list img{width: 49%;}
	#gff .list img{width: 49%;}
}



.accordion-section {
    overflow: hidden;
    margin: 1rem 0;
}
.accordion-trigger {
	position: relative;
	font-size: 20px;
	background-color: #3a3745;
    text-align: center;
    color: #ffffff;
    padding: .3em 1em;
    margin-bottom: 20px;
	width: 100%;
	border: none;
	cursor: pointer;
}
.accordion-trigger:hover {background-color: #18161d;}
.accordion-icon {
      font-size: 20px;
    font-weight: 900;
    background-color: #ffffff;
    color: #3a3745;
    width: 30px;
    height: 30px;
    display: inline-block;
    border-radius: 100px;
    position: absolute;
    right: .5em;
}
.accordion-body {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.3s ease;
}
.accordion-body.is-open {
  max-height: 400px;
}
@media screen and (max-width: 750px) {
	.accordion-trigger {
		font-size: 16px;
		margin-bottom: 15px;
	}
	.accordion-icon {
		font-size: 17px;
		width: 25px;
		height: 25px;
	}
}

.footer_link{
	max-width: 326px;
    width: 80%;
    display: flex;
    margin: 0 auto 30px;
    justify-content: space-between;
}
footer .tel{
	text_decoration:none;
    pointer-events:none;
	display: inline-block;
}
footer .mail{
	display: inline-block;
	text-decoration: none;
	margin-top: 0px;
}



.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}