  @charset "UTF-8";

.section {
    margin-top: 60px;
    width: 100%;
}

.mv_wrap {
    width: 100%;
}

.mv_wrap .date {
    justify-content: center;
}

.mv .image {
    margin-top: 60px;
}

.mv_list {
    display: flex;
    padding: 0 2%;
    margin-top: 45px;
    border-bottom: 1px solid #CCC;
}

.mv_list li {
    font-size: 14px;
    color: #444;
    display: flex;
    align-items: center;
    padding: 0 1em;
    border-right: 1px solid #CCC;
    margin: .5em 0;
    border-bottom: 3px solid #fff;
}

.mv_list li:last-of-type {
    border-right: none;
}

.mv_list a {
    font-size: 14px;
    color: #444;
    text-decoration: none;
}


/* graph_image */
.graph_image {
    width: 450px;
    margin-top: 40px;
}

/* title */
.big_title {
    font-size: 40px;
    font-weight: bold;
    color: #444;
    text-align: left;
    line-height: 1.5;
}

.medium_title {
    font-size: 30px;
    font-weight: bold;
    text-align: left;
    border-left: 3px solid #00603C;
    padding: .3em 0 .3em 0.8em;
    margin-bottom: 1.5em;
    line-height: 1.5;
}

.small_title {
    font-size: 24px;
    font-weight: bold;
    text-align: left;
    color: #444;
    line-height: 1.5;
}

/* table */
.table {
    width: 100%;
    text-align: left;
    margin: 40px auto;
    background-color: #fff;
}

.table,
.table td,
.table th {
    /* border: 1px solid #fff; */
    border-collapse: collapse;
}

/* クラス名暫定 */
.table.td_nowrap th:last-of-type {
    width: 24%;
}

.table.td_nowrap td {
    white-space: nowrap;
}

.table td,
.table th {
    padding: .5em;
    /* width: 30px; */
    /* height: 25px; */
    font-size: 15px;
    line-height: 1.5;
}

.table th {
    background: #00603C;
    text-align: center;
    color: #fff;
}

.table th:first-of-type {
    border-radius: 15px 0 0 0;
}

.table th:last-of-type {
    border-radius: 0 15px 0 0;
}


.table td {
    border-top: 1px solid #CCC;
    border-bottom: 1px solid #CCC;
    text-align: center;
}

.table td:first-of-type {
    background-color: #F5F5F5;
}

.table td:last-of-type {
    color: #00603C;
}

.table .even {
    background: #fbf8f0;
}

.table .odd {
    background: #fefcf9;
}

/* scroll-hint */
.scroll-hint {
    overflow: inherit !important;
}

/* column_content */
.column_contents {
    margin: 100px auto 0;
}


.column_contents .text {
    text-align: left;
}

.column_contents .text p {
    margin-top: 1em;
}

.column_contents .text ul.list_disc  {
    padding-left: 3em;
}

.column_contents .text ul.list_disc li  {
    margin-top: 1em;
    list-style-type: disc;
}

.column_contents .text a {
    color: #74AF9C;
    transition: .4s;
    text-decoration: none;
    word-wrap: break-word;
}

.column_contents .text a:hover {
    opacity: .4;
}

.check_text {
    margin: 40px auto;
    padding: 2em;
    background-color: #F5F5F5;
}


/* comparison */
.comparison {
    border: 2px solid #EBEBEB;
    padding: 30px;
    text-align: left;
    margin-top: 1em;
}

.comparison .merit {
    display: flex;
    margin-right: 1em;
    align-items: flex-start;
}

.comparison .demerit {
    display: flex;
    margin-top: 1em;
    align-items: flex-start;

}

.merit_point,
.demerit_point {
    font-size: 14px;
    text-align: center;
    color: #fff;
    margin-right: 1em;
    width: 100%;
    max-width: 100px;
    border-radius: 15px;

}

.merit_point {
    background-color: #E37575;
}

.demerit_point {
    background-color: #439696;
}


.this_point {
    position: relative;
    background-color: #FFFAD9;
    border-radius: 10px;
    margin-top: 65px;
    padding: 30px;
    text-align: left;
}

.point_title {
    text-align: center;
    margin-bottom: 1em;
    font-size: 20px;
}

.this_point::before {
    content: "ここがポイント！";
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    background-color: #D5C577;
    padding: .5em 1em;
    border-radius: 50px;
    color: #fff;
}

/* column_list */
.column_list {
    margin-top: .5em;
    display: flex;
    flex-wrap: wrap;
    gap: .5em;
}

.column_list li {
    font-size: 12px;
    background-color: #F5F5F5;
    padding: .2em .5em;
}

.column_list.category {
    justify-content: center;
}


/* column_contents */
.big_title {
    font-family: "A1 Mincho", "A1明朝", "游明朝", YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 32px;
    font-weight: bold;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 0.4em;
}

.column_contents.column_page_contents .date {
    text-align: center;
}

/* recommend */
.recommend_title {
    font-size: 24px;
    font-weight: bold;
    text-align: left;
    color: #444;
    line-height: 1.5;
    padding: .8em 1em;
    border-radius: 10px;
    background-color: #F5F5F5;
    background-color:#F9FCED;
}

.list_wrap.recommend {
    margin: 30px auto 0;
    background-color: transparent;
}
.list_wrap.recommend .list {
    padding: 0 0 0 30px;
}

.list_wrap.recommend .list li::before {
    background-color: #444;
}

/* リンクスタイルを設定 */
.section.recommend a {
    transition: .2s;
}
.section.recommend a:link {
	color: #00603C;
	text-decoration: none;
}
.section.recommend a:visited {
	color: #00603C;
	text-decoration: none;
}
.section.recommend a:active {
	color: #009933;
}
.section.recommend a:hover {
	color: #009933;
}

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

    .section {
        margin-top: 40px;
        width: 100%;
    }

    .mv .head_title {
        font-size: 23px;
        width: 60%;
    }

    .mv_list {
        display: none;
    }

    .mv .image {
        margin-top: 30px;
    }

    /* title */

    .big_title {
        font-size: 24px;
    }

    .medium_title {
        font-size: 20px;
    }

    .small_title {
        font-size: 18px;
        /* margin-bottom: 0; */
    }

    .recommend_title {
        font-size: 18px;
    }

    .list_wrap.recommend {
        margin: 20px auto 0;
    }

    /* table */
    .scroll_table .table {
        width: 1000px;
    }

    /* table */
    .table {
        margin: 20px auto;
    }

    .table td,
    .table th {
        font-size: 13px;
    }

    /* scroll-hint */
    .scroll-hint {
        overflow: auto !important;
    }


    /* column_list */

    .column_list {
        gap: 0.5em;
    }

    .check_text {
        margin: 20px auto;
        padding: 20px;
    }

}

.tbody_color_table{
    border: 1px solid black !important;
}
.text_point_color{
    color: red;
}
.th_text_min{
    text-align: center;
    min-width: 107px;
}
.th_text_center{
    text-align: center;
}
.tbody_color_table_line{
    background-image: linear-gradient(to right top, transparent calc(50% - 0.5px), #000000 50%, #000000 calc(50% + 0.5px), transparent calc(50% + 1px));
}
.td_color_line{
    border: none;
}
.text-border{
    font-size: 95%;
    border: solid 1px;
    border-radius: 10px 10px 10px 10px;
}
.table_text_line{
    text-align: left !important;
}