/* ####################################### */
/* 競技結果 */
/* ####################################### */

.sub-btn{
	display:flex;
	justify-content: flex-end;
}

.sub-btn a{
	display: block;
	width: auto;
	color: #000;
	font-size: 1rem;
	font-weight: bold;
	text-decoration: none;
	padding: 10px 10px 10px 30px;
	border-radius:10px;	
}
.sub-btn a:hover{
	text-decoration: underline;
}

.sub-btn a span{
	position: relative;
	display: inline-block;
}
.sub-btn a span:before {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 10px;
	border-color: transparent transparent transparent #324ca2;
	position: absolute;
	top: 0;
	left: -30%;
	bottom: 0;
	margin: auto;
}

@media screen and (max-width: 768px){
	.sub-btn a{
		font-size: 0.9rem;
		padding: 1vh 1.5vh;
	}
}


.list-accordion {
	width: 100%;
	border: 2px solid #324ca2;
	border-radius:10px;
	margin-bottom: 2vh;

}

.list-tit {
	display: block;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	color: #000;
	padding: 16px 10px 16px 60px;
	position: relative;
}

.list-tit::before,
.list-tit::after{
    position: absolute;
    content:'';
    width: 20px;
    height: 3px;
    background-color:#324ca2;
}
.list-tit::before{
    top:48%;
    left: 20px;
    transform: rotate(0deg); 
	transition: transform .2s ease-in-out;
}
.list-tit::after{    
    top:48%;
    left: 20px;
    transform: rotate(90deg); 
	transition: transform .2s ease-in-out;
}

.list-tit.is-open::before{
	transform: rotate(-45deg);
	transition: transform .2s ease-in-out;
}

.list-tit.is-open::after{
	transform: rotate(45deg);
	transition: transform .2s ease-in-out;
}
.list-tit span{
	font-weight: bold;
}
.list-data {
  display: none;	border-top: 2px dotted #324ca2;
}

@media screen and (max-width: 768px){
	.list-tit {
		gap: 10px;
		padding: 16px 5px 16px 40px;
	}
	.list-tit::before{
		left: 10px;
	}
	.list-tit::after{    
    	left: 10px;
	}
}

.result{
	padding: 2vh;

	justify-content: space-between;
}

.result-list dl{
	margin-bottom: 40px;
}
.result-list dl dt{
	background-color: #eef2fa;
	padding: 10px;
	margin-bottom: 10px;
	font-weight: bold;
}
.result-list dl dd{
	width: 100%;
	
}

.result-list  ul li{
	display: flex;
	width: 100%;
	border-bottom: 2px dotted #999;
	padding: 5px 0;
}

.result-list ul li p{
	padding: 0  10px;	
}

.result-list ul li p:nth-child(1){
	width: 25%;

}

.result-list  ul li p:nth-child(2){
	width: 45%;
}
.result-list  ul li p:nth-child(3){
	width:30%;
}
@media screen and (max-width: 768px){
	.result-list ul li p{
		padding: 0  1vh;		
	}
	.result-list  ul li{
		display: block;
		padding: 1vh 0;
	}
	.result-list ul li p{
	padding: 0.3vh  10px;	
}
	.result-list ul li p:nth-child(1){
		width: 100%;
	}

	.result-list  ul li p:nth-child(2){
		width: 100%;
	}
	.result-list  ul li p:nth-child(3){
		width:100%;
	}
}

.event-list{
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	margin-bottom: 5vh;
}
.event-list dt,
.event-list dd{
	display: block;
	border-bottom: 1px solid  #324ca2;
	padding: 2vh 1vh;
}
.event-list dt{
	width: 50%;
}

.event-list .event-date{
	width: 30%;
}
.event-list .event-place{
	width: 20%;
}
@media screen and (max-width: 768px){
	.event-list{
		display: block;
		width: 100%;
		margin-bottom: 5vh;
	}
	.event-list dt,
	.event-list dd{
		display: block;
		border-bottom: none;
		padding: 0;
	}
	.event-list dt{
		width: 100%;
		font-weight: bold;
		padding: 1vh 1vh 0.3vh 1vh;
	}

	.event-list .event-date{
		width: 100%;
		padding: 0.3vh 1vh;
	}
	.event-list .event-place{
		width: 100%;
		padding: 0.3vh 1vh 1vh 1vh;
		margin-bottom:1vh;
		border-bottom: 1px solid  #324ca2;
	}
}


/* ####################################### */
/* 部員紹介 */
/* ####################################### */
.member-list{
	margin: 3vh 0;
}

.member-list dl{
	display: flex;
	width: 100%;
}

.member-list dl dt,
.member-list dl dd{
	display: block;
}
.member-list dl dt{
	width: 45%;
}
.member-list dl dt img{
	width: 100%;
}
.member-list dl dd{
	width: 55%;

}
.member-list dl dd ul{
	margin: 0;

}
@media screen and (max-width: 768px){
	.member-list dl dd{
		font-size: 1.2rem;
	}
}

/* ####################################### */
/* 新入生 */
/* ####################################### */
.map {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    /* 16:9のアスペクト比 */
    height: 0;
	margin-bottom: 2vh;
}

.map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.calendar {
    text-align: center;
}


.calendar iframe {
    width: 100%;
    max-width: 800px;
    height: 400px;
	margin-bottom: 2vh;
}

@media (min-width: 768px) {
    .calendar iframe {
        height: 600px;
    }
}

