.page-header {
    display: none;
}

.article-category {
    margin: 0 0 1.2rem;
}

.l-inner {
    margin: 0 auto;
    padding: 0 1.6rem;
}

.article-body > * {
    margin-bottom: 3.6rem;
}

#staticPage .headline-box-ttl {
    display: none;
}

#article-content {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    font-family: 'Hiragino Kaku Gothic ProN';
    font-style: normal;
    margin-top: 0 !important;
}

#article-content p {
    color: #111111;
    font-size: 1.6rem;
    font-style: normal;
    font-weight: 300;
    line-height: 160%;
    margin-bottom: 1.6rem;
}

.btn-text-above, center.btn-text-above {
    margin-bottom: 0.8rem !important;
}

.caption.static-page {
    font-weight: 300;
    font-size: 1.2rem !important;
    line-height: 160%;
    color: #606060 !important;
    text-align: left !important;
    margin-bottom: 2.4rem;
}

.media .caption.static-page
{
    text-align:center !important;
}

#article-content b {
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 160%;
}

#article-content b.text-red {
    color: #AC0E1C;
}

strong {
    color: #111111;
    font-size: 1.6rem;
    font-style: normal;
    font-weight: 600;
    line-height: 160%;
}

strong.red {
    color: #AC0E1C;
}

.marker {
    font-weight: 600;
    line-height: 160%;
    background: linear-gradient(transparent 50%, #FFC4BF 51%);
}

.anchor {
    color: #505050 !important;
    font-weight: 600;
    line-height: 160%;
    text-decoration-line: underline;
}

#article-content .internal {
    color: #125ECE !important;
    font-weight: 300;
    line-height: 160%;
    text-decoration-line: underline;
}

#article-content .external {
    color: #125ECE important;
    width: 100%;
    height: 10rem;
    font-weight: 300;
    line-height: 160%;
    text-decoration-line: underline;
}

#article-content .external::after {
    content: ' ';
    display: inline-block;
    width: 2rem; /* SVGの表示サイズを設定 */
    height: 2rem; /* SVGの表示サイズを設定 */
    background-image: url('data:image/svg+xml;utf8,%3Csvg xmlns="http://www.w3.org/2000/svg" width="12" height="22" viewBox="0 0 12 22" fill="none"%3E%3Cpath d="M7.5 5C7.08516 5 6.75 5.33516 6.75 5.75C6.75 6.16484 7.08516 6.5 7.5 6.5H9.43828L4.72031 11.2203C4.42734 11.5133 4.42734 11.9891 4.72031 12.282C5.01328 12.575 5.48906 12.575 5.78203 12.282L10.5 7.56172V9.5C10.5 9.91484 10.8352 10.25 11.25 10.25C11.6648 10.25 12 9.91484 12 9.5V5.75C12 5.33516 11.6648 5 11.25 5H7.5ZM1.875 5.75C0.839063 5.75 0 6.58906 0 7.625V15.125C0 16.1609 0.839063 17 1.875 17H9.375C10.4109 17 11.25 16.1609 11.25 15.125V12.5C11.25 12.0852 10.9148 11.75 10.5 11.75C10.0852 11.75 9.75 12.0852 9.75 12.5V15.125C9.75 15.3313 9.58125 15.5 9.375 15.5H1.875C1.66875 15.5 1.5 15.3313 1.5 15.125V7.625C1.5 7.41875 1.66875 7.25 1.875 7.25H4.5C4.91484 7.25 5.25 6.91484 5.25 6.5C5.25 6.08516 4.91484 5.75 4.5 5.75H1.875Z" fill="%23125ECE"/%3E%3C/svg%3E');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;

    @media screen and (min-width: 768px) {
        width: 1.2rem;
        height: 1.2rem;
    }
}

.datetime {
    /* Label/small-thin */
    font-weight: 300;
    font-size: 1.2rem;
    line-height: 1.2rem;
    color: #878787;
    margin-right: auto;
}

.datetime-symbol {
    margin-right: 0.4rem;
}

#pr-area {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    color: #606060;
}

#pr-area summary {
    display: flex;
    justify-content: flex-end;
}

#pr-area details summary::after {
    background-color: #f8f8f8;
    font-family: 'dmenu-money-font';
    content: '\f0d7'; /* Unicode for the user icon */
    font-weight: 900; /* Required for Font Awesome solid icons */
    padding-right: 0.8rem;
}

#pr-area .pr[open] summary::after {
    content: '\f0d8'; /* Unicode for the user icon */
}

#pr-area summary span {
    padding: 0.4rem 0.8rem;
    font-size: 1.2rem;
    font-weight: bold;
    background-color: #f8f8f8;
}

#pr-area details #promotion {
    color: #111;
    padding: 0.8rem;
    font-size: 1.2rem;
    margin: 0;
    background-color: #f8f8f8;
}

.article-body h1 {
    font-size: 2rem !important;
    font-weight: bold;
    line-height: 3.6rem;
    margin-top: 1rem;
    margin-bottom: 0.8rem !important;
}

.article-body h2 {
    background-color: #F8F8F8 !important;
    border-top: none;
    border-bottom: 0.2rem solid #132B45 !important;
    font-size: 2rem !important;
    line-height: 3.2rem;
    padding: 1.2rem;
}

.article-body h3 {
    border-left: 0.2rem solid #132B45;
    font-size: 1.6rem;
    padding: 0.6rem 1.2rem;
}

.article-body h4 {
    border-bottom: 0.1rem solid #132B45 !important;
    font-size: 1.6rem !important;
    padding: 0.4rem 0;
}

.article-body h2, .article-body h3, .article-body h4 {
    margin: 3.6rem 0 2rem !important;
}

.p-column__article {
    padding: 1.5rem 12rem 4rem !important;
}

@media screen and (max-width: 768px) {
    .p-column__article {
        padding: 1.5rem 1.2rem 4rem !important;
    }
}

@media screen and (max-width: 768px) {
    .p-column__article__date {
        color: #707374;
        font-size: 1rem;
        font-weight: 300;
        line-height: 1.4;
    }
}

.article-info-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 0.8rem;
}

.column-category {
    padding: 0.5rem 1rem;
    border: 0.1rem solid #AEAEAE;
    border-radius: 0.1rem;
    font-size: 1rem;
    font-size: 1rem;
    line-height: 1;
}

.column-category > .column-category-link {
    color: #878787 !important;
    display: block;
    margin: -5px -1rem;
    padding: 0.4rem;
}

.article-meta {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0;
}

.article-meta .author-list {
    margin: 0.8rem 0 2rem 0;
}

.article-meta .author-list .infobar {
    padding: 0;
}

.author-list .infobar .authorimg {
    border-radius: 0;
}

.vbox {
    font-size: 1rem;
    width: 80%;
}

#media-logo {
    width: auto;
    padding: 0;
}

.btn.cta-red, .btn.cta-red-min, .btn.cta-default, .btn.cta-default-min {
    text-align: center;
    font-weight: bold;
    position: relative;
    border: none;
    border-radius: 0.4rem;
    max-width: 100%;
    margin: 0.8rem 0 3.6rem;
    cursor: pointer;
    color: #fff;
}

.btn.cta-default, .btn.cta-default-min {
    background: linear-gradient(90deg, #FB6C3C 0%, #E32615 100%);
    /* box-shadow: 0 0.4rem 0 #DB2715; */
    box-shadow: 0 0.4rem 0 #DB2715, 0 0.4rem 0.4rem 0.2rem rgba(248, 56, 56, 0.4);
}

.btn.cta-red, .btn.cta-red-min {
    background: linear-gradient(90deg, #EE1533 0%, #C20B24 100%);
    box-shadow: 0 0.4rem 0 #B2050D, 0 0.4rem 0.4rem 0.2rem rgba(248, 99, 56, 0.4);
}

.btn.cta-red, .btn.cta-default {
    font-size: 1.8rem;
    padding: 1.8rem 1.2rem;
}

.btn.cta-red-min, btn.cta-default-min {
    font-size: 1.4rem;
    padding: 0.8rem 1.2rem;
}

.expert {
    display: flex;
    padding: 1.2rem;
    margin: 1rem 0 2rem 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
    border: 0.1rem solid #d8d8d8;
    background: #F8F8F8;
}

.expert .expert-label {
    display: flex;
    height: 1.4rem;
    justify-content: start;
    align-items: center;
    align-self: stretch;
    color: #111111; /* Label/small */

    font-size: 1.4rem;

    font-weight: 600;
    line-height: 1.4rem; /* 100% */
}

.expert .profile {
    display: flex;
    align-items: center;
    gap: 1rem;
    align-self: stretch;
}

.expert .profile .icon {
    width: 8rem !important;
    height: 8rem !important; /* background: lightgray 50% / cover no-repeat; */
}

.expert .profile .text-area {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
    flex: 1 0 0%;
}

.expert .profile .position {
    align-self: stretch;
    color: #111111; /* Body-text/minimum */

    font-size: 1.2rem;

    font-weight: 300;
    line-height: 160%; /* 19.2px */
}

.expert .profile .name {
    align-self: stretch;
    color: #111111; /* Label/small */

    font-size: 1.4rem;

    font-weight: 600;
    line-height: 1.4rem; /* 100% */
}

.expert .introduction {
    padding: 0.6rem;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    align-self: stretch;
    background: #FFF;
    color: #111111;

    font-size: 1.4rem;

    font-weight: 300;
    line-height: 160%; 
}

.merit-box {
    display: flex;
    padding: 1.2rem;
    margin: 2rem 0 2rem 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
    border: 0.1rem solid #D5D5D5;
    background: #FFFFFF;
}

.merit-box .hdg {
    display: flex;
    padding: 0.4rem 0.6rem;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    background: #FB4C3C;
    color: #FFFFFF; /* Label/small */

    font-size: 1.4rem;

    font-weight: 600;
    line-height: 1.4rem; /* 100% */
}

.merit-box .body {
    align-self: stretch;
    color: #111111;

    font-size: 1.4rem;

    font-weight: 300;
    line-height: 160%;
}

.merit-box .body p {
    margin-bottom: 0 !important;
}

.merit-box .body .dot-list ul {
    list-style-type: none !important;
}

.merit-box .body .dot-list ul li {
    margin-top: 0.4rem !important;
    position: relative;
    padding-left: 2rem;
}

.merit-box .body .dot-list ul li::before {
    content: '•';
    position: absolute;
    left: -2rem;
    top: -0.7rem;
    color: #132B45;

    font-size: 2rem;

    font-weight: 300;
    line-height: 160%;
    padding-left: 2rem;
}

.demerit-box {
    display: flex;
    padding: 1.2rem;
    margin: 2rem 0 2rem 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
    border: 0.1rem solid #D5D5D5;
    background: #FFFFFF;
}

.demerit-box .hdg {
    display: flex;
    padding: 0.4rem 0.6rem;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    background: #7c7c7c;
    color: #FFFFFF; /* Label/small */

    font-size: 1.4rem;

    font-weight: 600;
    line-height: 1.4rem; /* 100% */
}

.demerit-box .body {
    align-self: stretch;
    color: #111111;
    font-size: 1.4rem;
    font-weight: 300;
    line-height: 160%;
}

.demerit-box .body p {
    margin-bottom: 0 !important;
}

.demerit-box .body .dot-list ul {
    list-style-type: none !important;
}

.demerit-box .body .dot-list ul li {
    margin-top: 0.4rem !important;
    position: relative;
    padding-left: 2rem;
}

.demerit-box .body .dot-list ul li::before {
    content: '•';
    position: absolute;
    left: -2rem;
    top: -0.7rem;
    color: #4a4a4a;

    font-size: 2rem;

    font-weight: 300;
    line-height: 160%; 
    padding-left: 2rem;
}

summary::-webkit-details-marker {
  display: none;
}

.notes {
    padding: 0.2rem 0.4rem;
    font-size: 1rem;
    color: #7c7c7c;
    margin-bottom: 2rem;
}

.notes summary {
    display: flex;
}

.notes summary::after {
    background-color: #eeeeee;
    font-family: 'dmenu-money-font';
    content: '\f0d7'; /* Unicode for the user icon */
    font-weight: 900; /* Required for Font Awesome solid icons */
    padding-left: 0.4rem;
    padding-right: 0.8rem;
}

.notes[open] summary::after {
    content: '\f0d8'; /* Unicode for the user icon */
}

.notes summary span, .notes p {
    background-color: #eeeeee;
    padding: 0.2rem 0.4rem;
}

.notes p {
    font-size: 1rem !important;
    color: #7c7c7c !important;
}


.attention-1 .hdg {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0.4rem 1.2rem;
    font-weight: bold;
    gap: 1rem;
    background: #132B45;
    color: #fff;
}

.attention-1 .body {
    border-width: 0 0.1rem 0.1rem 0.1rem;
    border-style: solid;
    border-color: #132B45;
    padding: 2rem 1.2rem;
    gap: 2rem;
    display: flex;
    flex-direction: column;
}

.attention-1 .body .text-main {
    line-height: 160%;
    text-align: center;
    color: #111111;
    font-weight: 600;
    font-size: 1.6rem;
}

.attention-1 .body .text-sub {
    line-height: 160%;
    text-align: center;
    color: #111111;
    font-weight: 300;
    font-size: 1.4rem;
}

.attention-1 .body .ranking-container {
    margin-bottom: 1.6rem;
}

.attention-2 {
    margin: 2rem 0;
    display: flex;
    padding: 1.2rem;
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
    border: 0.1rem solid #132B45;
    background: #FFFFFF;
}

.attention-2 .hdg {
    color: #111111; /* Body-text/default-bold */
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 160%;
}

.attention-2 .hdg-colored {
    font-size: 1.6rem;

    font-weight: 600;
    line-height: 160%;
    color: #FB4C3C;
}

.attention-2 .body, .attention-2 .body > * {
    color: #111111;
    font-size: 1.4rem !important;
    font-weight: 300;
    line-height: 160%;
}

.attention-2 .body .check-list, .attention-2 .body .dot-list, .attention-2 .body .num-list {
    margin-bottom: 0.8rem;
}

.attention-2 .body .check-list ul {
    list-style-type: none !important;
}

.attention-2 .body .check-list ul li {
    padding-left: 2rem;
    position: relative;
}

.attention-2 .body .check-list ul li::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
}

.attention-2 .body .check-list ul li:before {
    border-bottom: 0.3rem solid #132B45;
    border-right: 0.3rem solid #132B45;
    left: 0.3rem;
    width: 0.8rem;
    height: 1.4rem;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.attention-2 .body .dot-list ul {
    list-style-type: none !important;
}

.attention-2 .body .dot-list ul li {
    position: relative !important;
    padding-left: 2rem !important;
}

.attention-2 .body .dot-list ul li::before {
    content: '•';
    position: absolute;
    left: -2rem;
    top: -0.5rem;
    color: #132B45;
    font-size: 2rem;
    font-weight: 600;
    line-height: 150%;
    padding-left: 2rem;
}

.attention-2 .body .num-list ol {
    counter-reset: list-counter;
    list-style: none !important;
}

.attention-2 .body .num-list ol li {
    counter-increment: list-counter;
    position: relative;
    padding-left: 2rem;
}

.attention-2 .body .num-list ol li::before {
    content: counter(list-counter) '.';
    position: absolute;
    left: 0;
    color: #132B45;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 150%; 
}

.attention-3 {
    padding: 1.2rem;
}

.attention-3.blue {
    background-color:#D9E9FF;
}

.attention-3.orange {
    background-color: #FFE1C6;

}

blockquote {
    background: #F8F8F8 !important;
    border-left: 0.2rem solid #7C7C7C !important;
    padding: 0.8rem 1.2rem !important;
    font-size: 1.4rem;
    .quotation {
        line-height: 160%;
        margin-bottom: 1.6rem !important;
    }

    .quotation-from {
        text-align: right;
    }
}

.comment-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.6rem;
    margin-bottom: 2.4rem;
}

.comment-right .comment-body {
    flex-direction: row;
    display: block;
    padding: 1.2rem;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    align-self: stretch;
    border-radius: 0.6rem 0.6rem 0 0.6rem;
    border: 0.2rem solid #EFEFEF;
    background: #FFF;
    color: #111;
    font-size: 1.4rem;

    font-weight: 300;
    line-height: 160%;
}

.comment-right .comment-body p {
    margin: 0;
}

.comment-right .commentator {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.comment-right .commentator .text-area {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end;
    gap: 0.4rem;
}

.comment-right .commentator .text-area .position {
    color: #111; /* Body-text/minimum */
    font-size: 1.2rem;

    font-weight: 300;
    line-height: 160%; /* 19.2px */
}

.comment-right .commentator .text-area .name {
    color: #111; /* Label/small */
    font-size: 1.4rem;

    font-weight: bold;
    line-height: 1.4rem; /* 100% */
}

.comment-right .commentator .icon {
    width: 4rem !important;
    height: 4rem !important;
    border-radius: 0.4rem; /* background: url(<path-to-image>) lightgray 50% / cover no-repeat; */
}

.comment-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.6rem;
    margin-bottom: 2.4rem;
}

.comment-left .comment-body {
    flex-direction: row;
    display: block;
    padding: 1.2rem;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    align-self: stretch;
    border-radius: 0.6rem 0.6rem 0.6rem 0;
    border: 0.2rem solid #EFEFEF;
    background: #FFF;
    color: #111;
    font-size: 1.4rem;

    font-weight: 300;
    line-height: 160%;
}


.comment-left .comment-body p {
    margin: 0;
}

.comment-left .commentator {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.comment-left .commentator .text-area {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 0.4rem;
}

.comment-left .commentator .text-area .position {
    color: #111; /* Body-text/minimum */
    font-size: 1.2rem;

    font-weight: 300;
    line-height: 160%; /* 19.2px */
}

.comment-left .commentator .text-area .name {
    color: #111; /* Label/small */
    font-size: 1.4rem;

    font-weight: bold;
    line-height: 1.4rem; /* 100% */
}

.comment-left .commentator .icon {
    width: 4rem !important;
    height: 4rem !important;
    border-radius: 0.4rem; /* background: url(<path-to-image>) lightgray 50% / cover no-repeat; */
}

.supervisor-comment {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.6rem;
    margin-bottom: 2.4rem;
}

.supervisor-comment .hdg {
    align-self: flex-start;
    margin-bottom: 0 !important;
    font-size: 1.4rem;
    font-weight: bold !important;
}

.supervisor-comment .comment-body {
    flex-direction: row;
    display: block;
    padding: 1.2rem;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    align-self: stretch;
    border-radius: 0.6rem 0.6rem 0 0.6rem;
    border: 0.1rem solid #D8D8D8;
    background: #FFF;
    color: #111;
    font-size: 1.4rem;

    font-weight: 300;
    line-height: 160%;
}


.supervisor-comment .comment-body p {
    margin: 0;
}

.supervisor-comment .commentator {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.supervisor-comment .commentator .text-area {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end;
    gap: 0.4rem;
}

.supervisor-comment .commentator .text-area .position {
    color: #111; /* Body-text/minimum */
    font-size: 1.2rem;

    font-weight: 300;
    line-height: 160%; /* 19.2px */
}

.supervisor-comment .commentator .text-area .name {
    color: #111; /* Label/small */
    font-size: 1.4rem;

    font-weight: bold;
    line-height: 1.4rem; /* 100% */
}

.supervisor-comment .commentator .icon {
    width: 4rem !important;
    height: 4rem !important;
    border-radius: 0.4rem; /* background: url(<path-to-image>) lightgray 50% / cover no-repeat; */
}

.faq {
    padding: 1.2rem;
    align-items: flex-start;
    gap: 1rem;
    border: 0.1rem solid #D5D5D5;
    background: #FDFDFD;
    margin-bottom: 1rem;
}

.faq .question {
    display: flex;
    align-items: baseline;
    gap: 0.4rem;
    align-self: stretch;
    color: #111111;
    margin-bottom: 2rem; /* Body-text/small-bold */

    font-size: 1.4rem;

    font-weight: 600;
    line-height: 160%; 
}

.faq .question::before {
    content: 'Q. ';
    color: #132B45;

    font-size: 1.4rem;

    font-weight: 600;
    line-height: 160%;
}

.faq .answer {
    /* display: flex; */
    flex-direction: column;
    gap: 0.4rem;
    align-self: stretch;
    color: #111111;

    font-size: 1.4rem;

    font-weight: 300;
    line-height: 160%;
    text-indent: -2rem;
    margin-left: 2rem;
}

.faq .answer .ranking-container {
    padding-left: 2rem;
}

.faq .answer .attention-2 {
    padding-left: 2rem;
}

.faq .answer::before {
    content: 'A. ';
    color: #878787;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 160%;
}

.ranking-container {
    overflow-x: scroll;

    @media screen and (max-width: 768px) {
        font-size: 1.2rem;
    }
}

.ranking-container .btn {
    margin-bottom: 0.8rem;
}

.ranking-container table {
    width: 100%;
    border: 0.1rem solid #D5D5D5;
    border-collapse: separate;
    border-spacing: 0;
    line-height: 160%;
}

.ranking-container table tr.rank td {
    color: #fff;
}

.ranking-container table tr.highlight th {
    background-color: #FCE3D7;
    font-weight: bold;
}

.ranking-container table tr.highlight td {
    background-color: #FFF6F2;
    font-weight: 600;
}

.ranking-container table tr.star td img {
    height: 1.8rem;
    margin-bottom: 0.8rem;
}

.ranking-container table th, td {
    font-size: 1.4rem;
    text-align: center;
    border: 0.1rem solid #D5D5D5;
    padding: 1.2rem 0.6rem;
    word-break: auto-phrase;
}

.ranking-container table th {
    background-color: #F8F8F8;
}

.ranking-container table th.fixed {
    position: sticky;
    left: 0;
    min-width: 6.5rem;
    border-left: 0.1rem solid #D5D5D5;
    z-index: 99;

    @media screen and (min-width: 768px) {
        min-width: 14rem;
    }
}

.ranking-container table td div {
    min-width: 14rem;
}

.ranking-container table td img {
    max-width: none;
    height: 6rem;
    width: auto;
}

#article-content .related-article {
    display: flex;
    padding: 1.2rem;
    flex-direction: row;
    align-items: center;
    gap: 1rem;
    border: 0.1rem solid #D5D5D5;
    background: #FFFFFF;
    margin-bottom: 1rem;
}

#article-content .related-article img {
    width: 8.8rem;
    height: 6.6rem;
    object-fit: cover;
}

#article-content .related-article .title {
    flex-grow: 1;
    margin-right: 1rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    text-overflow: ellipsis;
    white-space: normal;
}

#article-content .related-article .title a {
    color: #111111; /* Body-text/small-bold */

    font-size: 1.4rem;

    font-weight: 600;
    line-height: 160%;
    text-decoration: none;
}

.review-section {
    margin-bottom: 2rem;
}

.review-section .review-box {
    display: flex;
    overflow: auto;
}

.review-list {
    padding: 1.2rem 1rem;
    background-color: #f8f8f8;
    color: #111;
    border: 0.1rem solid #132b45;
}

.review-section .review-box .review-list:not(:first-child) {
    margin-left: 1.2rem;
}

.review-list .title {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.review-list .title .profile .demographic {
    display: flex;
    flex-direction: column;
    font-size: 1.4rem;
    font-weight: normal;
}

.review-box .review-list .profile .demographic p {
    margin-bottom: 0 !important;
}

.review-box .review-list .title .icon {
    width: 4rem;
    height: 4rem;
    border-radius: 0.4rem;
    overflow: hidden;
}

.review-box .review-list .title .icon img {
    max-width: 100% !important;
    width: 100%;
    height: 100%;
    object-fit: cover; /* 要素を覆うように画像を調整 */
}

.review-list .description {
    padding: 0.8rem 1rem;
    width: 28rem;
    background-color: #fff;
}

.star {
    margin-top: 0.4rem;
    color: #FFA700;
    font-size: 1.6rem;
    display: flex;
    gap: 0.4rem;
}

.good-label {


    position: relative;
    display: inline-flex;
    align-items: center;
    font-size: 1.4rem;
    line-height: 1.4rem;
    font-weight: bold;
    color: #FB4C3C;
    padding-left: 2rem;
    padding-bottom: 0.8rem;
}

.good-label::before {
    content: '';
    position: absolute;
    left: 0;
    width: 1.6rem;
    height: 1.6rem;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2IiBmaWxsPSJub25lIj4KPHBhdGggZD0iTTE0LjUgOEMxNC41IDYuMjc2MDkgMTMuODE1MiA0LjYyMjc5IDEyLjU5NjIgMy40MDM4MUMxMS4zNzcyIDIuMTg0ODIgOS43MjM5MSAxLjUgOCAxLjVDNi4yNzYwOSAxLjUgNC42MjI3OSAyLjE4NDgyIDMuNDAzODEgMy40MDM4MUMyLjE4NDgyIDQuNjIyNzkgMS41IDYuMjc2MDkgMS41IDhDMS41IDkuNzIzOTEgMi4xODQ4MiAxMS4zNzcyIDMuNDAzODEgMTIuNTk2MkM0LjYyMjc5IDEzLjgxNTIgNi4yNzYwOSAxNC41IDggMTQuNUM5LjcyMzkxIDE0LjUgMTEuMzc3MiAxMy44MTUyIDEyLjU5NjIgMTIuNTk2MkMxMy44MTUyIDExLjM3NzIgMTQuNSA5LjcyMzkxIDE0LjUgOFpNMCA4QzAgNS44NzgyNyAwLjg0Mjg1NSAzLjg0MzQ0IDIuMzQzMTUgMi4zNDMxNUMzLjg0MzQ0IDAuODQyODU1IDUuODc4MjcgMCA4IDBDMTAuMTIxNyAwIDEyLjE1NjYgMC44NDI4NTUgMTMuNjU2OSAyLjM0MzE1QzE1LjE1NzEgMy44NDM0NCAxNiA1Ljg3ODI3IDE2IDhDMTYgMTAuMTIxNyAxNS4xNTcxIDEyLjE1NjYgMTMuNjU2OSAxMy42NTY5QzEyLjE1NjYgMTUuMTU3MSAxMC4xMjE3IDE2IDggMTZDNS44NzgyNyAxNiAzLjg0MzQ0IDE1LjE1NzEgMi4zNDMxNSAxMy42NTY5QzAuODQyODU1IDEyLjE1NjYgMCAxMC4xMjE3IDAgOFpNNS41NSA5Ljk0MDYzQzYuMDI1IDEwLjQ1MzEgNi44Mzc1IDExIDggMTFDOS4xNjI1IDExIDkuOTc1IDEwLjQ1MzEgMTAuNDUgOS45NDA2M0MxMC43MzEyIDkuNjM3NSAxMS4yMDYyIDkuNjE1NjMgMTEuNTA5NCA5Ljg5Njg4QzExLjgxMjUgMTAuMTc4MSAxMS44MzQ0IDEwLjY1MzEgMTEuNTUzMSAxMC45NTYzQzEwLjg2NTYgMTEuNyA5LjY3ODEzIDEyLjUgOC4wMDMxMyAxMi41QzYuMzI4MTIgMTIuNSA1LjEzNzUgMTEuNzAzMSA0LjQ1MzEyIDEwLjk1NjNDNC4xNzE4OCAxMC42NTMxIDQuMTkwNjIgMTAuMTc4MSA0LjQ5Njg3IDkuODk2ODhDNC44MDMxMiA5LjYxNTYzIDUuMjc1IDkuNjM0MzggNS41NTYyNSA5Ljk0MDYzSDUuNTVaTTQuNTEyNSA2LjVDNC41MTI1IDYuMjM0NzggNC42MTc4NiA1Ljk4MDQzIDQuODA1MzkgNS43OTI4OUM0Ljk5MjkzIDUuNjA1MzYgNS4yNDcyOCA1LjUgNS41MTI1IDUuNUM1Ljc3NzcyIDUuNSA2LjAzMjA3IDUuNjA1MzYgNi4yMTk2MSA1Ljc5Mjg5QzYuNDA3MTQgNS45ODA0MyA2LjUxMjUgNi4yMzQ3OCA2LjUxMjUgNi41QzYuNTEyNSA2Ljc2NTIyIDYuNDA3MTQgNy4wMTk1NyA2LjIxOTYxIDcuMjA3MTFDNi4wMzIwNyA3LjM5NDY0IDUuNzc3NzIgNy41IDUuNTEyNSA3LjVDNS4yNDcyOCA3LjUgNC45OTI5MyA3LjM5NDY0IDQuODA1MzkgNy4yMDcxMUM0LjYxNzg2IDcuMDE5NTcgNC41MTI1IDYuNzY1MjIgNC41MTI1IDYuNVpNMTAuNTEyNSA1LjVDMTAuNzc3NyA1LjUgMTEuMDMyMSA1LjYwNTM2IDExLjIxOTYgNS43OTI4OUMxMS40MDcxIDUuOTgwNDMgMTEuNTEyNSA2LjIzNDc4IDExLjUxMjUgNi41QzExLjUxMjUgNi43NjUyMiAxMS40MDcxIDcuMDE5NTcgMTEuMjE5NiA3LjIwNzExQzExLjAzMjEgNy4zOTQ2NCAxMC43Nzc3IDcuNSAxMC41MTI1IDcuNUMxMC4yNDczIDcuNSA5Ljk5MjkzIDcuMzk0NjQgOS44MDUzOSA3LjIwNzExQzkuNjE3ODYgNy4wMTk1NyA5LjUxMjUgNi43NjUyMiA5LjUxMjUgNi41QzkuNTEyNSA2LjIzNDc4IDkuNjE3ODYgNS45ODA0MyA5LjgwNTM5IDUuNzkyODlDOS45OTI5MyA1LjYwNTM2IDEwLjI0NzMgNS41IDEwLjUxMjUgNS41WiIgZmlsbD0iI0ZCNEMzQyIvPgo8L3N2Zz4=');
    background-size: contain;
    background-repeat: no-repeat;
}

.good-label::after {
    content: 'GOOD!';
}

.bad-label {


    position: relative;
    display: inline-flex;
    align-items: center;
    line-height: 1.4rem;
    font-size: 1.4rem;
    font-weight: bold;
    color: #606060;
    padding-left: 2rem;
    padding-bottom: 0.8rem;
}

.bad-label::before {
    content: '';
    position: absolute;
    left: 0;
    width: 1.6rem;
    height: 1.6rem;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2IiBmaWxsPSJub25lIj4KPHBhdGggZD0iTTE0LjUgOEMxNC41IDYuMjc2MDkgMTMuODE1MiA0LjYyMjc5IDEyLjU5NjIgMy40MDM4MUMxMS4zNzcyIDIuMTg0ODIgOS43MjM5MSAxLjUgOCAxLjVDNi4yNzYwOSAxLjUgNC42MjI3OSAyLjE4NDgyIDMuNDAzODEgMy40MDM4MUMyLjE4NDgyIDQuNjIyNzkgMS41IDYuMjc2MDkgMS41IDhDMS41IDkuNzIzOTEgMi4xODQ4MiAxMS4zNzcyIDMuNDAzODEgMTIuNTk2MkM0LjYyMjc5IDEzLjgxNTIgNi4yNzYwOSAxNC41IDggMTQuNUM5LjcyMzkxIDE0LjUgMTEuMzc3MiAxMy44MTUyIDEyLjU5NjIgMTIuNTk2MkMxMy44MTUyIDExLjM3NzIgMTQuNSA5LjcyMzkxIDE0LjUgOFpNMCA4QzAgNS44NzgyNyAwLjg0Mjg1NSAzLjg0MzQ0IDIuMzQzMTUgMi4zNDMxNUMzLjg0MzQ0IDAuODQyODU1IDUuODc4MjcgMCA4IDBDMTAuMTIxNyAwIDEyLjE1NjYgMC44NDI4NTUgMTMuNjU2OSAyLjM0MzE1QzE1LjE1NzEgMy44NDM0NCAxNiA1Ljg3ODI3IDE2IDhDMTYgMTAuMTIxNyAxNS4xNTcxIDEyLjE1NjYgMTMuNjU2OSAxMy42NTY5QzEyLjE1NjYgMTUuMTU3MSAxMC4xMjE3IDE2IDggMTZDNS44NzgyNyAxNiAzLjg0MzQ0IDE1LjE1NzEgMi4zNDMxNSAxMy42NTY5QzAuODQyODU1IDEyLjE1NjYgMCAxMC4xMjE3IDAgOFpNNS40NTYyNSAxMi4wMDMxQzUuMzE1NjMgMTIuMzkzOCA0Ljg4NzUgMTIuNTkzOCA0LjQ5Njg3IDEyLjQ1MzFDNC4xMDYyNSAxMi4zMTI1IDMuOTA2MjUgMTEuODg0NCA0LjA0Njg4IDExLjQ5MzdDNC41OTA2MiA5Ljk4MTI1IDYuMjE1NjIgOSA4IDlDOS43ODQzOCA5IDExLjQwOTQgOS45ODEyNSAxMS45NTYzIDExLjQ5NjlDMTIuMDk2OSAxMS44ODc1IDExLjg5MzggMTIuMzE1NiAxMS41MDYzIDEyLjQ1NjNDMTEuMTE4OCAxMi41OTY5IDEwLjY4NzUgMTIuMzkzOCAxMC41NDY5IDEyLjAwNjNDMTAuMjU2MyAxMS4yMDMxIDkuMjg3NSAxMC41IDggMTAuNUM2LjcxMjUgMTAuNSA1Ljc0Mzc1IDExLjIwMzEgNS40NTYyNSAxMi4wMDMxWk00LjUxMjUgNi41QzQuNTEyNSA2LjIzNDc4IDQuNjE3ODYgNS45ODA0MyA0LjgwNTM5IDUuNzkyODlDNC45OTI5MyA1LjYwNTM2IDUuMjQ3MjggNS41IDUuNTEyNSA1LjVDNS43Nzc3MiA1LjUgNi4wMzIwNyA1LjYwNTM2IDYuMjE5NjEgNS43OTI4OUM2LjQwNzE0IDUuOTgwNDMgNi41MTI1IDYuMjM0NzggNi41MTI1IDYuNUM2LjUxMjUgNi43NjUyMiA2LjQwNzE0IDcuMDE5NTcgNi4yMTk2MSA3LjIwNzExQzYuMDMyMDcgNy4zOTQ2NCA1Ljc3NzcyIDcuNSA1LjUxMjUgNy41QzUuMjQ3MjggNy41IDQuOTkyOTMgNy4zOTQ2NCA0LjgwNTM5IDcuMjA3MTFDNC42MTc4NiA3LjAxOTU3IDQuNTEyNSA2Ljc2NTIyIDQuNTEyNSA2LjVaTTEwLjUxMjUgNS41QzEwLjc3NzcgNS41IDExLjAzMjEgNS42MDUzNiAxMS4yMTk2IDUuNzkyODlDMTEuNDA3MSA1Ljk4MDQzIDExLjUxMjUgNi4yMzQ3OCAxMS41MTI1IDYuNUMxMS41MTI1IDYuNzY1MjIgMTEuNDA3MSA3LjAxOTU3IDExLjIxOTYgNy4yMDcxMUMxMS4wMzIxIDcuMzk0NjQgMTAuNzc3NyA3LjUgMTAuNTEyNSA3LjVDMTAuMjQ3MyA3LjUgOS45OTI5MyA3LjM5NDY0IDkuODA1MzkgNy4yMDcxMUM5LjYxNzg2IDcuMDE5NTcgOS41MTI1IDYuNzY1MjIgOS41MTI1IDYuNUM5LjUxMjUgNi4yMzQ3OCA5LjYxNzg2IDUuOTgwNDMgOS44MDUzOSA1Ljc5Mjg5QzkuOTkyOTMgNS42MDUzNiAxMC4yNDczIDUuNSAxMC41MTI1IDUuNVoiIGZpbGw9IiM2MDYwNjAiLz4KPC9zdmc+');
    background-size: contain;
    background-repeat: no-repeat;
}

.bad-label::after {
    content: 'BAD';
}

.back-to-ranking {
    display: flex;
    padding: 0.5rem;
    align-items: center;
    justify-content: center;
    margin-top: 2rem;
    cursor: pointer;
    border: 0.1rem solid #FB4C3C;
    border-right: none;
    position: fixed;
    bottom: 0;
    right: 0;
    background-color: #fff;
    z-index: 99;
}

#back-to-ranking-txt {
    color: #FB4C3C !important;
    margin: 0.5rem !important;
    font-weight: 600 !important;
    font-size: 1.2rem !important;
}

.article-index {
    padding: 1.2rem;
    border: #AEAEAE solid 0.5px;
}

.article-index-body {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
}

.article-index-body .item {
    margin: 0.6rem 0;
}

ol.article-index-body>li.item {
    list-style-type: decimal;
    padding-left: 0;
    font-size: 1.4rem;
    list-style-position: inside;
    font-weight: 600;
}

.article-index-body .title {
    color: #111 !important;
    line-height: 160%;
    display: inline-block;
    padding-left: 1.5rem !important;
    font-size: 1.5rem;
}

.article-index-body .title:hover, .article-index-body .title:visited {
    color: #666666;
}

.article-index-body .title.-lv1 {
    list-style-type: decimal !important;
    font-weight: 600 !important;
    border-left: none !important;
    padding-left: 0 !important;
    text-decoration: underline;
}

.article-index-body .item ol {
    list-style: none !important;
}

.article-index-body .title.-lv2 {
    position: relative;
    font-size: 1.4rem;
    font-weight: 300;
    color: #383838 !important;
    text-decoration: underline;
    margin-left: 1.2rem;
}

.article-index-body .title.-lv2::before {
    content: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1IiBoZWlnaHQ9IjEwIiB2aWV3Qm94PSIwIDAgNSAxMCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTAuMTY2Njg3IDkuNTgyNjhWMC40MTYwMTZMNC43NTAwMiA0Ljk5OTM1TDAuMTY2Njg3IDkuNTgyNjhaIiBmaWxsPSIjMUMxQjFGIi8+PC9zdmc+');
    position: absolute;
    display: table;
    width: 0.8rem;
    height: 0.8rem;
    background-color: white;
    left: -0.2rem; /* dmmに合わせる */
}

.article-index-body .title.-lv3 {
    position: relative;
    padding-left: 1.5rem;
    font-size: 1.4rem;
    font-weight: 300;
    color: #383838;
    text-decoration: underline;
    margin-left: 2.4rem;
}

.article-index-body .title.-lv3::before {
    content: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1IiBoZWlnaHQ9IjgiIHZpZXdCb3g9IjAgMCA1IDgiIGZpbGw9Im5vbmUiPgo8cGF0aCBkPSJNMy4xMDgxMSA0TDAgMC45MzMzMzNMMC45NDU5NDYgMEw1IDRMMC45NDU5NDYgOEwwIDcuMDY2NjdMMy4xMDgxMSA0WiIgZmlsbD0iIzFDMUIxRiIvPgo8L3N2Zz4=');
    position: absolute;
    display: table;
    width: 0.8rem;
    height: 0.8rem;
    background-color: white;
    left: -0.2rem; /* dmmに合わせる */
}

.article-index-accordion-input {
    display: none;
}

.article-index-accordion {
    background-color: #FFF;
    font-size: 1.6rem;
    font-weight: bold;
    display: block;
    border: 0.5px solid #AEAEAE;
    padding: 0.4rem 0.8rem;
    cursor: pointer;
    position: relative;
    margin-bottom: 0;
}

.article-index-accordion::after {
    content: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNCIgaGVpZ2h0PSI5IiB2aWV3Qm94PSIwIDAgMTQgOSIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTEzIDFMNyA3TDEgMC45OTk5OTkiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+');
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    display: block;
    width: 3rem;
    font-size: 3rem;
    text-align: center;
    line-height: 2rem;
    color: #fff;
    background: #AEAEAE;
}

.article-index-accordion-input:checked+.article-index-accordion::after {
    content: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNCIgaGVpZ2h0PSI5IiB2aWV3Qm94PSIwIDAgMTQgOSIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTEgOEw3IDJMMTMgOCIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48L3N2Zz4=');
}

.article-index-accordion-input+.article-index-accordion+.article-index-content {
    height: 0;
    overflow: hidden;
    transition-duration: 0.5s;
    visibility: hidden;
    opacity: 0;
    margin-top: -0.1rem;
    margin-bottom: 3.2rem;
}

.article-index-accordion-input:checked+.article-index-accordion+.article-index-content {
    height: auto;
    opacity: 1;
    visibility: visible;
}

.article-index-content .article-index {
    margin-bottom: 0;
}