
.topicslist { 
    overflow: hidden;
    margin: 40px 0 0 0;
}

.topicslist dl { 
    display:flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center ;
	padding: 0.5em 1em;
	border-radius: 10px;
	border: 1px solid #aaa;
	margin: 0 0 20px 0;
}

.topicslist dl dt { 
    width:470px;
    padding: 1em 0 1em 0;
}
.topicslist dl dd { 
    width:240px;

}

.topicslist dl dd .category { font-size: 70%; }
.topicslist dl dd .title { margin-top: 0.3em; margin-bottom: 0.3em; }

.topicslist dl dd .completion { font-size: 85%; padding-right: 1em; }

.topicslist dl dt .detail { 
    font-size: 85%; 
}

.topicslist dl dt .detail a { 
    border: 1px solid #aaa; 
    padding: 5px; 
    -moz-border-radius: 5px; 
    -webkit-border-radius: 5px; 
    border-radius: 5px; 
}

#contents .topicslist p {
    margin: 0 0  1em 0;
}
#contents .topicslist p.date {
    margin: 2.5em 0 0 0;
}


.topicslist dl dd ul .detail a:hover { background-color: #DCFF73; }

.topics_img{
    width:240px;
    height:160px;
}
.topics_img img{
    width:100%;
    object-fit: cover;
    height:160px;
    border-radius: 5px;
}
.movie{
    width:240px;
    height:160px;

    position: relative;
    height: 0;
    padding: 30px 0 56.25%;
    overflow: hidden;
}

.movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    }

#contents .topicslist h3 {
    background: none;
    color: #007133;

    margin: 0 0 1em 0;
    padding: 0 0 0 0;

    }
#sidebar dl{
margin: 0 0 10px 0;

}
.sidemenu{
    margin: 40px 0 0 0;
}

@media only screen and (max-width: 757px)

iframe {
 
  width: 100%;
  height: auto;
}

.movie {
    width: 100%;
 
}

}