:root{
    --border-color: #efefef;
    --talk-bg-color: #fdffcf;
}
#thumbnail{
    width: 100%;
    height: auto;
    margin: auto;
    display: block;
    position: relative;
}

#title {
    position: absolute;
    margin-top: 20px;
}
.row {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-bottom: 60px;
}

.reverse {
    flex-direction: row-reverse;
}
.side {
    margin: 0 auto;
}
.description{
    flex: 1.2;
    max-width: 600px;
    line-height: 1.5;
    margin: 0 auto;
}
.topic{
    border-radius: 20px;
    padding: 15px 25px;
    border: 2px solid #333;
    position: relative;
    margin-top: 10px;
    font-size: 1.05em;
}

.topic::after{
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: -6px;
    right: -6px;
    background-color: var(--talk-bg-color);
    border-radius: 20px;
    z-index: -1;
}
.header3 {
    font-size: 1.6rem;
    margin-bottom: 10px;
}

.header3::before{
    content: "●";
    margin-right: 8px;
}
.figure{
    text-align: center;
}

.figure img{
    width: 100%;
    max-width: 400px;
    border-radius: 10px;
}
#figure1{
    max-width: 300px;
}

#figure2{
    max-width: 400px;
}
figcaption{
    font-size: 12px;
    color: #666;
    margin-top: 5px;
}
.comment-right {
    margin: 3% 0 3% auto;
    padding: 8px 12px;
    border: 2px solid var(--border-color);
    border-radius: 6px;
    width: fit-content;
}

.comment-left {
    margin: 3% auto 3% 0;
    padding: 8px 12px;
    border: 2px solid var(--border-color);
    border-radius: 6px;
    width: fit-content;
}
.information-table{
    margin: auto;
    margin-top: 10px;
    border-collapse: collapse;
    width: 100%;
}

.information-table th,
.information-table td{
    padding: 10px;
    border-bottom: 1px solid #ccc;
}

.information-table th{
    text-align: right;
    word-break: keep-all;
    width: fit-content;
    min-width:70px;
}

@media (max-width:490px){
    .information-table,
    .information-table th,
    .information-table td{
        border: #333333 1px solid;
    }

    .information-table th{
        box-sizing:border-box;
        padding: 2%;
    }

    .hide_table{
        display: none;
    }
}
@media (max-width: 600px) {
    #title{
        margin-top:0;
        font-size: 2.5rem;
    }

    #thumbnail{
        display: block;
    }

    .row {
        flex-direction: column;
        gap: 20px;
    }

    .description {
        max-width: 100%;
    }

    .figure img {
        max-width: 100%;
    }

    .header3 {
        font-size: 1.3rem;
    }
}
.comment-right {
    margin: 3% 0 3% auto;
    position: relative;
    width: fit-content;
    padding: 5px 10px;
    border: 2px solid var(--border-color);
    border-radius: 4px;

    &::before {
        content: "";
        position: absolute;
        top: 20px;
        right: -19px;
        width: 20px;
        height: 20px;
        box-sizing: border-box;
        background-color: var(--primary-color);
        rotate: 135deg;
        translate: -50% 0;
    }

    &::after {
        content: "";
        position: absolute;
        top: 20px;
        right: -20px;
        width: 20px;
        height: 20px;
        box-sizing: border-box;
        border: 2px solid;
        border-color: var(--border-color) transparent transparent var(--border-color);
        rotate: 135deg;
        translate: -50% 0;
    }
}
.comment-left {
    margin: 3% 8% 3% 0;
    position: relative;
    width: fit-content;
    padding: 5px 10px;
    border: 2px solid var(--border-color);
    border-radius: 4px;

    &::before {
        content: "";
        position: absolute;
        top: 20px;
        left: 0px;
        width: 20px;
        height: 20px;
        box-sizing: border-box;
        background-color: var(--primary-color);
        rotate: -45deg;
        translate: -50% 0;
    }

    &::after {
        content: "";
        position: absolute;
        top: 20px;
        left: 0px;
        width: 20px;
        height: 20px;
        box-sizing: border-box;
        border: 2px solid;
        border-color: var(--border-color) transparent transparent var(--border-color);
        rotate: -45deg;
        translate: -50% 0;
    }
}



.header3 {
    border-bottom: none;
    text-decoration: none;
}
