body{
font-family: "fot-tsukuardgothic-std", sans-serif;
font-weight: 400;
font-style: normal;
}
#page_title{
	background:rgba(241,225,178,0.4);
}
#message_list article{
	display:flex;
	flex-wrap:wrap;
	gap:70px;
}
#message_list article a{
	display:block;
	width:calc((100% - 140px) / 3);
	height:420px;
	position:relative;
}
#message_list article a figure{
	width:100%;
	height:100%;
	position:relative;
	z-index:1;
}
#message_list article a figure img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	border-radius:10px;
}
#message_list article a figure:before{
	position:absolute;
	z-index:2;
	content:"";
	background:url('../images/common/more.png') no-repeat top 10px left 10px;
	width:100%;
	height:50px;
}
#message_list article a figure:after{
	position:absolute;
	z-index:2;
	content:"";
	width:100%;
	height:210px;
	left:0;
	bottom:0;
	border-radius:0 0 10px 10px;
	background:url('../images/recruit/voice_cover.png') no-repeat center bottom;
	mix-blend-mode: multiply;
}
#message_list article a dl{
	position:absolute;
	bottom:20px;
	left:0;
	right:0;
	margin:auto;
	width:calc(100% - 40px);
	z-index:3;
	color:#fff;
	font-size:18px;
	text-shadow:0 0 10px rgba(0,0,0,1);
}
#message_list article a dl p{
	padding:0;
}
#message_list article a dl dd{
}
#message_list article a dl dd p{
	font-size:16px;
}
#message_list article a dl dt{
	line-height:28px;
	border:1px solid #fff;
	padding:0 20px;
	border-radius:15px;
}
#message_list article a dl dd h5{
	font-size:20px;
	margin:10px 0 !important;
	padding:0 !important;
}
.voice-single-header{
	position:relative;
	margin:0 auto 40px;
}
.voice-single-header img{
	display:block;
	position:relative;
	z-index:1;
	border-radius:10px;
	max-width:1040px;
	max-height:640px;
	object-fit:contain;
	margin:0 auto;
}
.voice-single-header dl{
	width:320px;
	height:320px;
	border-radius:50%;
	position:absolute;
	background:#fff;
	z-index:2;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	text-align:center;
	left:80px;
	top:0;
	bottom:0;
	margin:auto;
}
.voice-single-header dd h5{
	font-size:30px;
	padding:20px 0;
	font-weight:normal;
}
.voice-single-header dt{
	border:1px solid #313131;
	line-height:28px;
	border-radius:15px;
	padding:0 20px;
}
.voice-single-content dl{
	margin:0 auto 40px;
}
.voice-single-content dt{
	padding:15px 40px;
	background:#fff;
	font-size:30px;
	margin-bottom:30px;
}
.voice-single-content dt:before{
	content:"Q.";
}
.voice-single-content dd{
	margin:0 40px;
	padding:0 0 0 35px;
	position:relative;
}
.voice-single-content dd:before{
	content:"A.";
	font-size:30px;
	position:absolute;
	top:0;
	left:0;
}
img.alignright{
	max-width:40%;
}

@media (max-width: 768px) {
  #message_list article {
    gap: 20px;
  }

  #message_list article a {
    width: 100%;
    height: auto;
  }

  #message_list article a figure {
    height: auto;
  }

  #message_list article a figure img {
    height: 280px;
	  object-fit:cover;
  }

  #message_list article a figure:before {
    background-size: 24px auto;
    background-position: top 10px left 10px;
    height: 40px;
  }

  #message_list article a figure:after {
    height: 120px;
    background-size:cover;
  }

  #message_list article a dl {
    width: calc(100% - 20px);
    bottom: 10px;
    padding: 0 10px;
  }

  #message_list article a dl dd h5 {
    font-size: 18px;
    margin: 5px 0 !important;
  }

  .voice-single-header {
    flex-direction: column;
    align-items: center;
    margin-bottom: 20px;
  }

  .voice-single-header img {
    width: 100%;
    height: auto;
    max-height: 300px;
    object-fit: cover;
  }

  .voice-single-header dl {
    position: static;
    width: 240px;
    height: 240px;
    margin: 20px auto 0;
  }

  .voice-single-header dd h5 {
    font-size: 22px;
    padding: 10px 0;
  }

  .voice-single-header dt {
    font-size: 14px;
    padding: 0 15px;
  }

  .voice-single-content dl {
    margin-bottom: 30px;
  }

  .voice-single-content dt {
    font-size: 20px;
    padding: 10px 20px;
    margin-bottom: 20px;
  }

  .voice-single-content dd {
    margin: 0 20px;
    padding-left: 25px;
  }

  .voice-single-content dd:before {
    font-size: 24px;
  }

  img.alignright {
    max-width: 100%;
    float: none;
    display: block;
    margin: 10px auto;
  }
}
