/* CSS Document */

#contest {
	padding: 80px 0 0;
}




#fv {
	margin: auto;
	max-width: 1040px;
}



#info {
	padding: 60px 0 80px;
}
#info .block {
	max-width: 900px;
  margin: auto;
	background: #fff;
	border-radius: 15px;
	padding: 30px 20px;
	text-align: center;
	position: relative;
}
#info .block.feather::after {
	width: 80px;
	bottom: -20px;
	left: -30px;
}
#info .block h3 {
	justify-content: center;
	margin: 0 0 20px;
}




#theme {
	padding: 80px 0;
}




#award {
	padding: 80px 0;
	background: #fff;
}
#award .lead {
	margin: 0 0 80px;
	text-align: center;
}
#award h3 {
	align-items: center;
}
#award h3::before {
	content: url("img/award.svg");
	width: 50px;
}

#award .judge{
	text-align: center;
	margin: 50px auto 30px;
	padding-bottom: 15px;
	max-width: 600px;

	font-size: 12px;
	line-height: 1.8;

	border-bottom: 1px solid #ddd;
}
#award .judge strong{
	font-size: 110%;
	font-weight: 600;
}
#award .comment::before{
	content:"講評";
	display:block;
	font-size:12px;
	font-weight:bold;
	color:#55B458;
	margin-bottom:5px;
}
#award .comment{
    font-size: 14px;
	line-height: 1.7;
	margin: 10px 0 15px;
	padding: 10px 15px;

	background: #f9f9f9;
	border-left: 4px solid #55B458;

}

#award dl {
	margin: 40px 0 80px;
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}
#award dl dt {
	font-size: 110%;
	font-weight: 500;
	width: 100%;
	position: relative;
	display: flex;
  align-items: center;
  justify-content: center;
}
#award dl dt::after {
	content: '';
	border-bottom: 1px solid #000;
	width: 100%;
	position: absolute;
}
#award dl dt em {
	background: #fff;
  padding: 0 20px;
	display: flex;
  justify-content: center;
	align-items: center;
	gap: 10px;
	position: relative;
  z-index: 1;
}
#award dl dt em::before {
	content: url("img/award.svg");
	width: 25px;
  line-height: 0;
}
#award dl dd {
	font-size: 95%;
	line-height: 1.8em;
	width: calc(33.3% - 20px);
	margin: 0 0 20px;
}
#award dl dd .img {
  aspect-ratio: 4/3;
	display: flex;
  justify-content: center;
  align-items: flex-end;
}
#award dl dd .img img {
	max-height: 240px;
  max-width: 300px;
}
#award dl dd h4 {
	font-size: 110%;
	text-align: center;
	margin: 10px 0;
}

#award dl.column1 {
	max-width: 600px;
	margin: 40px auto 80px;
}
#award dl.column1 dd {
	width: 100%;
	font-size: 110%;
}
#award dl.column1 dd .img {
	aspect-ratio: unset;
}
#award dl.column1 dd .img img {
	max-width: 100%;
	max-height: unset;	
}

#award .overall{
	max-width: 700px;
	margin: 40px auto;
	padding: 20px 30px;
	background: #f7f7f7;
	border-radius: 6px;
}

#award .overall h4{
	text-align: center;
	margin-bottom: 10px;
    color:#55B458;
}

#award .overall p{
	font-size: 90%;
	line-height: 1.8;
	text-align: justify;
}


#award .note {
	border: 1px solid #ccc;
	padding: 20px 40px;
	max-width: 690px;
	margin: 80px auto;
	position: relative;
}
#award .note h4 {
	background: #fff;
	padding: 0 15px;
	position: absolute;
	top: -15px;
	left: 15px;
}










@media screen and (max-width: 480px) {
  
  #contest {
    padding: 40px 0 0;
  }
  
  #info {
    padding: 30px 0 40px;
  }  
  #info .block {
    text-align: left;
    padding: 30px 20px 50px;
  }
  #info .block.feather::after {
    width: 60px;
    left: -20px;
  }
  #info .block h3 {
    text-align: center;
  } 
  
  #theme {
    padding: 30px 0;
  }  

  #award {
    padding: 60px 0;
  }
	#award .lead {
		margin: 0 0 40px;
  	text-align: left;
	}
  #award dl {
    margin: 40px 0 40px;
    gap: 5px;
  }  
  #award dl dd {
    width: 90%;
    margin: 10px auto;
		border: 1px solid #eee;
    padding: 20px;
  }
	#award dl dd .img {
		align-items: center;
	}
	#award dl dd .img img {
		max-height: 140%;
		max-width: 100%;
	}
  #award dl.column1 {
    margin: 30px auto;
  }  
  #award dl.column1 dd {
    width: 90%;
		border: none;
    padding: 20px 0;
    margin: auto;
  }  
  
  #award .note {
		padding: 20px;
	}
	
}
