table.aisec-matrix {
    font-size: 12px;
    margin: 0 auto;
    border-collapse: separate;
    border-spacing: 0px 1px;
}
    
table.aisec-matrix th {
    padding: 12px;
    vertical-align: middle;
    text-align: left;
    border-bottom: #999 1px solid;
    color: #fff;
}
    
table.aisec-matrix td {
    padding: 12px;
    vertical-align: middle;
    text-align: left;
    border-bottom: #999 1px solid;
    font-size: 11px;
}
    
table.aisec-matrix th.r2, table.aisec-matrix td.r2 {
    /*width: 128px;*/
    border-left: #fff 1px solid;
    border-right: #999 1px solid;
    background: #5893b1;
}
    
table.aisec-matrix th.r2,
table.aisec-matrix th.r3,
table.aisec-matrix th.r4 {
    text-align: center;
}
    
table.aisec-matrix th.r3,
table.aisec-matrix td.r3 {
    /*width: 128px;*/
    border-left: #fff 1px solid;
    border-right: #999 1px solid;
    background: #7cacc2;
}
    
table.aisec-matrix th.r4,
table.aisec-matrix td.r4 {
    /*width: 128px;*/
    border-left: #fff 1px solid;
    background: #a0c2d3;
}

.detail_button table {
    margin: auto;
    border: none;
}


.sns_button table {
    display: flex;
    justify-content: flex-start;
    margin: auto;
    border: none;
}

.detail_menu_button{
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.card{
    position: relative;
    flex: 1;
    max-width: 300px;
    height: 70px;
    margin: 20px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    border: 2px solid #2285b1;
}

.selected{
    position: relative;
    flex: 1;
    max-width: 300px;
    height: 70px;
    margin: 20px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    border: 2px solid #2285b1;
    background-color: #fafad2;
}

.card_content a{
    top: 20px;
    align-items: center;
    margin: 0 auto;
    padding: 1em 2em;
    text-transform: uppercase;
    font-weight: 700;
}

.card:after {
    content: '';
    width: 5px;
    height: 5px;
    transform: rotate(45deg);
  }

.card:hover{
    color: #333333;
    text-decoration: none;
    background-color: #a0c4d3;
}

@media screen and (max-width:900px){
    .card{
        flex: 100%;
        max-width:500px;
    }
}

/* ブロック要素にアイコンバッジを表示 */
span[data-badge-top-left],
span[data-badge-top-right],
span[data-badge-right],
span[data-badge-bottom-left],
span[data-badge-bottom-right] {
  display: block;
  position: relative;
  padding: 1em;
  /*background-color: #19184C;*/
  border-radius: 0;
  color: #fff;
}
span[data-badge-left] {
  display: block;
  position: relative;
  padding: 1em;
  /*background-color: #19184C;*/
  border-radius: 0;
  color: #fff;
}

/* アイコン部 */
span[data-badge-top-left]:before,
span[data-badge-top-right]:before,
span[data-badge-left]:before,
span[data-badge-bottom-left]:before,
span[data-badge-bottom-right]:before {
  position: absolute;
  display: inline-block;
  font-weight: bold;
  background-color: #f00;
  border-radius: 50%;
  font-size: 1em;
  line-height: 1;
  min-width: 1em;
  padding: 5px;
  border: 2px solid #fff;
  box-shadow: 0px 0px 3px #999;
}

span[data-badge-top-left]:before {
  top: 0;
  left: 0;
  transform: translate(-50%, -50%);
  content: attr(data-badge-top-left)"";
}

span[data-badge-top-right]:before {
  top: 0;
  right: 0;
  transform: translate(50%, -50%);
  content: attr(data-badge-top-right)"";
}

span[data-badge-left]:before {
  top: 5;
  left: 0;
  transform: translate(-50%, -50%);
  content: attr(data-badge-left)"";
}

span[data-badge-bottom-left]:before {
  bottom: 0;
  left: 0;
  transform: translate(-50%, 50%);
  content: attr(data-badge-bottom-left)"";
}

span[data-badge-bottom-right]:before {
  bottom: 0;
  right: 0;
  transform: translate(50%, 50%);
  content: attr(data-badge-bottom-right)"";
}