
.topics a {
 word-break: break-all;
}

.topics .section{margin-top: 20px;
margin-bottom: 80px;}

.topics .flex{display: flex;
flex-wrap: nowrap;
gap:20px;}

.topics #side{
margin-left: 30px;}

.topics #side ul li{position: relative;
width: 160px;
padding: 10px 0;
font-weight: bold;}
.topics #side ul li a{color: #000;} 

.topics #side ul li a::before {
        position: absolute;
        left: -20px;
        display: block;
        width: 15px;
        height: 30px;
        margin-top: -7px;
        content: "";
    background: url("../img/base/ico_arrow05.png") left 10px no-repeat;
    
}

.topics .topicList dl{display: flex;
    flex-wrap: wrap;
    margin-bottom: 40px;
}

.topics .topicList dl dt{width: 16%;
    min-width: 100px;
    padding: 14px 8px;
}

.topics .topicList dl dd{width: 80%;
    padding: 14px 8px;
        border-bottom: 1px dotted rgb(204 204 204);}

.topics .topicList .asp{
                        font-size: 20px;
                        font-weight: bold;
                        color: red;text-shadow: 2px 2px 2px #ccc;}
.topics .topicList .fleximg .flex{align-items:flex-end}

.topics .topicList .fleximg .flex p{flex: 1;
text-align: center;}


.topics .press-fl {
  float: left;
}

.topics .press-fr {
  float: right;
}

.topics .press-clear {
  clear: both;
  padding-top: 20px;
}

.topics .press-txtR {
  text-align: right;
}

.topics .presstittle {
  margin-bottom: 30px;
  font-size: 20px;
  line-height: 40px;
  text-align: center;
  text-decoration: underline;
}

.topics h3 {
  margin-top: 50px;
}

.txtR {
  text-align: right !important;
}

.topics article .ttlL {
        padding: 5px 0 5px 20px;
        margin-bottom: 20px;
        font-size: 129%;
        font-weight: 700;
        background: url("../img/base/ico_line01.png") no-repeat left center;
    }

.topics .btn a {
        display: inline-block;
        padding: 10px;
        margin-top: 20px;
        margin-bottom: 20px;
        color: #000;
        background: #e1e1e1;
        background: linear-gradient(top, #fff 0%, #e1e1e1 100%);
        background: linear-gradient(top, #fff 0%, #e1e1e1 100%);
        background: linear-gradient(to bottom, #fff 0%, #e1e1e1 100%);
        border: 1px solid #CCC;
        border-radius: 5px;
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e1e1e1',GradientType=0 );
    }
.topics .ttlLL {
    position: relative;
    padding-bottom: 20px;
    padding-left: 40px;
    margin-bottom: 25px;
    font-size: 172%;
    font-weight: normal;
    background: url(../img/base/line_slash.png) repeat-x left bottom;
}
.topics .ttlLL::before {
    position: absolute;
    top: 10px;
    left: 10px;
    display: block;
    width: 20px;
    height: 20px;
    content: "";
    background: url(../img/base/ico_circle_m.png) no-repeat left center;
}

@media screen and (width <=767px) {
.topics .flex{display: block;}
.topics .flex #side{display: none;}

.topics .topicList dl dt{width: 100%;
padding-bottom: 0;}

.topics .topicList dl dd{width: 100%;
padding-top: 4px;}
}