.news2 {
    padding-top: 85px;
}

.news2_container {
    max-width: 1184.00px;
    margin: 0 auto;
    padding: 0 32.00px;
}

.news_title_div {
    background-image: url(../img/AdobeStock_374272583.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.news_title span {
    font-family: "Noto Serif JP", serif;
    font-size: 24.00px;
    letter-spacing: 0.04em;
    line-height: 1em;
    text-align: left;
    font-weight: 400;
    color: #C20116;
}

.news_title {
    font-family: "Noto Serif JP", serif;
    font-size: 64.80px;
    letter-spacing: 0.04em;
    line-height: 1.2;
    text-align: left;
    font-weight: 600;
    color: #C20116;
    max-width: 1184.00px;
    margin: 0 auto;
    padding: 24.00px 32.00px 56.00px;
}

.news2_flex_box {
    display: flex;
    padding-top: 20.00px;
    padding-bottom: 104.00px;
    justify-content: space-between;
}

.news2_flex_left {
    margin-top: 40.00px;
    margin-right: 16.00px;
    max-width: calc(100% - 272px);
    width: 100%;
}

.news2_flex_left_main {
    width: 100%;
    margin-top: 40.00px;
}

.news2_flex_title {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 11.20px;
    letter-spacing: 0.03em;
    line-height: 1.5em;
    text-align: left;
    font-weight: 400;
    color: #333333;
}

.news2_flex_title span {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 10.40px;
    letter-spacing: 0.03em;
    line-height: 1.5em;
    text-align: left;
    font-weight: 500;
    color: #333333;
    padding: 4.00px;
    border: #333333 solid 0.80px;
    margin-left: 32.00px;
}

.news2_flex_dt {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 24.00px;
    letter-spacing: 0.03em;
    line-height: 1.3;
    text-align: left;
    font-weight: 600;
    color: #333333;
    position: relative;
    border-bottom: #333333 solid 0.80px;
    padding-bottom: 40.00px;
}

.news2_flex_dd {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 11.20px;
    letter-spacing: 0.03em;
    line-height: 1.5em;
    text-align: left;
    font-weight: 400;
    color: #333333;
    padding-top: 40.00px;
}

.news2_flex_btn_Back {
    font-family: "Noto Serif JP", serif;
    font-size: 20.00px;
    color: #C20116;
    border: #C20116 solid 0.80px;
    border-radius: 40.00px;
    text-align: center;
    padding: 16.00px 8.00px 16.00px 8.00px;
    display: block;
    position: relative;
    text-indent: 56.00px;
    width: 198.40px;
    margin: 104.00px auto 0;
}

.news2_flex_btn_Back::before {
    content: '';
    display: block;
    width: 12.00px;
    height: 16.00px;
    background-image: url(../img/news2_flex_btn.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 29.60px;
    left: 40.00px;
}

.category {
    width: 256.00px;
    background-color: #FFFFFF;
}

.category+.category {
    margin-top: 48.00px;
}

.category_dt {
    font-family: "Noto Serif JP", serif;
    font-size: 16.00px;
    letter-spacing: 0.04em;
    line-height: 1em;
    text-align: left;
    font-weight: 600;
    color: #C20116;
    position: relative;
    padding-bottom: 16.00px;
    border-bottom: #333333 solid 0.80px;
}

.category_dd span {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12.80px;
    letter-spacing: 0.03em;
    line-height: 1;
    text-align: left;
    font-weight: 400;
    color: #333333;
    padding-left: 4.00px;
}

.category_dd {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12.80px;
    letter-spacing: 0.03em;
    line-height: 1.5em;
    text-align: left;
    font-weight: 500;
    color: #333333;
    padding: 12.00px 0.00px 12.00px 0.00px;
    position: relative;
    border-bottom: #333333 dashed 0.80px;
}

.sub_main_blog_side_links_lists {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12.80px;
    letter-spacing: 0.03em;
    line-height: 1.5em;
    text-align: left;
    font-weight: 500;
    color: #333333;
    padding: 12.00px 0.00px 12.00px 0.00px;
    position: relative;
    border-bottom: #333333 dashed 0.80px;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .news2 {
        padding-top: 56.00px;
    }
    .news2_container {
        padding: 0 16.00px;
    }
    .news_title span {
        font-size: 19.20px;
        line-height: 1em;
    }
    .news_title {
        font-size: 40.00px;
        padding: 16.00px;
    }
    .news2_flex_box {
        display: block;
        padding-top: 48.00px;
        padding-bottom: 48.00px;
    }
    .news2_flex_left {
        min-width: 100%;
        margin-top: 16.00px;
        margin-right: 0;
    }
    .news2_flex_title {
        font-size: 11.20px;
    }
    .news2_flex_title span {
        font-size: 10.40px;
        line-height: 1.5em;
        padding: 4.00px;
        margin-left: 8.00px;
    }
    .news2_flex_dt {
        font-size: 19.20px;
        padding-bottom: 16.00px;
    }
    .news2_flex_dd {
        font-size: 11.20px;
        letter-spacing: 0.03em;
        line-height: 1.5em;
        padding-top: 16.00px;
    }
    .news2_flex_btn_Back {
        font-size: 16.00px;
        padding: 8.00px;
        text-indent: 56.00px;
        width: 198.40px;
        margin: 32.00px auto 0;
    }
    .news2_flex_btn_Back::before {
        content: '';
        display: block;
        width: 12.00px;
        height: 16.00px;
        background-image: url(../img/news2_flex_btn.png);
        background-size: contain;
        background-repeat: no-repeat;
        position: absolute;
        top: 20.00px;
        left: 40.00px;
    }
    .news_flex_right {
        margin-top: 32.00px;
    }
    .category {
        width: 100%;
        background-color: #FFFFFF;
    }
    .category+.category {
        margin-top: 32.00px;
    }
    .category_dt {
        font-family: "Noto Serif JP", serif;
        font-size: 16.00px;
        letter-spacing: 0.04em;
        line-height: 1em;
        text-align: left;
        font-weight: 600;
        color: #C20116;
        position: relative;
        padding-bottom: 16.00px;
        border-bottom: #333333 solid 0.80px;
    }
    .category_dd span {
        font-family: "Noto Sans JP", sans-serif;
        font-size: 12.80px;
        letter-spacing: 0.03em;
        line-height: 1;
        text-align: left;
        font-weight: 400;
        color: #333333;
        padding-left: 4.00px;
    }
    .category_dd {
        font-family: "Noto Sans JP", sans-serif;
        font-size: 12.80px;
        letter-spacing: 0.03em;
        line-height: 1.5em;
        text-align: left;
        font-weight: 500;
        color: #333333;
        padding: 12.00px 0.00px 12.00px 0.00px;
        position: relative;
        border-bottom: #333333 dashed 0.80px;
    }
    .sub_main_blog_side_links_lists {
        font-family: "Noto Sans JP", sans-serif;
        font-size: 12.80px;
        letter-spacing: 0.03em;
        line-height: 1.5em;
        text-align: left;
        font-weight: 500;
        color: #333333;
        padding: 12.00px 0.00px 12.00px 0.00px;
        position: relative;
        border-bottom: #333333 dashed 0.80px;
        width: 100%;
    }
}

/* ------------------------------------------
  content
------------------------------------------ */

.top_intro_main_content_main.page {
    margin: 0;
}

.content * {
    line-height: 1.8;
}

.content h2 {
    font-size: 25.60px;
    color: #fff;
    background-color: #C20116;
    line-height: 1.4;
    padding: 5.60px 16.00px;
    text-align: center;
    margin: 48.00px auto 16.00px;
}

.content h3 {
    font-weight: bold;
    font-size: 16.00px;
    line-height: 1.5;
    text-align: left;
    color: #C20116;
    border-left: 3.20px #C20116 solid;
    padding-left: 9.60px;
    margin: 48.00px auto 16.00px;
}

.content h4 {
    color: #C20116;
    font-size: 16.00px;
    font-weight: bold;
    letter-spacing: .05em;
    margin: 32.00px 0 16.00px;
    text-align: center;
}

.content ul {
    margin: 32.00px 0;
}

.content ul li {
    font-size: 12.80px;
    margin-top: 8.00px;
    padding-left: 12.00px;
    position: relative;
}

.content ul li::before {
    background-color: #C20116;
    border-radius: 50%;
    content: '';
    height: 8.00px;
    left: 0;
    position: absolute;
    top: 5.60px;
    width: 8.00px;
}

.content ol {
    counter-reset: number;
    list-style: none;
    margin: 32.00px 0;
}

.content ol li {
    font-size: 12.80px;
    margin-top: 8.00px;
    padding: 6.40px 0 6.40px 32.00px;
    position: relative;
}

.content ol li::before {
    align-items: center;
    background-color: #C20116;
    border-radius: 50%;
    box-sizing: border-box;
    color: #fff;
    content: counter(number);
    counter-increment: number;
    display: flex;
    font-size: 12.80px;
    font-weight: bold;
    height: 24.00px;
    justify-content: center;
    left: 0;
    line-height: 1;
    position: absolute;
    top: 3.20px;
    width: 24.00px;
}

.content a {
    color: #C20116;
    text-decoration: underline;
}

.content p {
    font-size: 12.80px;
    margin: 16.00px 0;
}

.content p.strong {
    font-weight: bold;
}

.content p .red {
    color: red;
}

.content .wp-block-table thead {
    border-bottom: none;
}

.content table {
    border-collapse: collapse!important;
    border-left: 0.80px solid #aaaaaa;
    border-top: 0.80px solid #aaaaaa;
    margin: 32.00px 0;
    width: 100%;
}

.content tr {
    width: 100%;
}

.content tr th {
    background-color: #C20116;
    border-bottom: 0.80px solid #aaaaaa;
    border-right: 0.80px solid #aaaaaa;
    color: #C20116;
    font-size: 12.80px;
    font-weight: bold;
    margin: 0;
    padding: 16.00px 8.00px;
    text-align: center;
    vertical-align: middle;
    width: 160.00px;
    color: #fff;
}

.content tr th:nth-child(2n) {
    background-color: #C20116;
}

.content tr:nth-child(2n) th {
    background-color: #C20116;
}

.content tr:nth-child(2n) th:nth-child(2n) {
    background-color: #C20116;
}

.content tr th *:first-child {
    margin-top: 0;
}

.content tr th *:last-child {
    margin-bottom: 0;
}

.content tr td {
    border-bottom: 0.80px solid #aaaaaa;
    border-right: 0.80px solid #aaaaaa;
    font-size: 11.20px;
    margin: 0;
    padding: 17.60px 16.00px;
    vertical-align: middle;
    width: calc(100% - 160.00px);
}

.content tr td *:first-child {
    margin-top: 0;
}

.content tr td *:last-child {
    margin-bottom: 0;
}

.content .aligncenter {
    display: block;
    margin: 32.00px auto;
}

.content .alignright {
    float: right;
    margin: 0 0 0 32.00px;
}

.content .alignleft {
    float: left;
    margin: 0 32.00px 0 0;
}

.content .wp-caption-text {
    margin: 16.00px 0;
}

.clear {
    clear: both;
}

.content>*:first-child {
    margin-top: 0;
}

.content>*:last-child {
    margin-bottom: 0;
}

.content.margin {
    margin: 32.00px 0;
}

.content.margin_head {
    margin: 48.00px 0 32.00px;
}

.content+.content {
    margin-top: 32.00px;
}

@media screen and (max-width: 767px) {
    .sub_main_content {
        margin-top: 16.00px;
    }
    .content h2 {
        font-size: 16.00px;
        padding: 13.60px 0 8.80px;
        background-size: 22.40px 2.40px;
        margin: 32.00px auto 0;
    }
    .common_h2::before {
        height: 20.80px;
        position: absolute;
        left: -22.40px;
        width: 22.40px;
    }
    .common_h2::after {
        height: 13.60px;
        position: absolute;
        right: -14.40px;
        width: 14.40px;
    }
    .content h3 {
        font-size: 14.40px;
        border-left: 2.40px #C20116 solid;
        padding-left: 8.00px;
        margin: 16.00px auto;
    }
    .content h4 {
        font-size: 14.40px;
        margin: 16.00px 0;
    }
    .content ul {
        margin: 16.00px 0;
    }
    .content ol {
        margin: 16.00px 0;
    }
    .content a {
        margin: 16.00px 0;
    }
    .content p {
        margin: 16.00px 0;
        font-size: 11.20px;
    }
    .content table {
        margin: 16.00px 0;
    }
    .content tr th {
        font-size: 9.60px;
        width: 64.00px;
        padding: 4.80px;
    }
    .content tr td {
        font-size: 9.60px;
        width: calc(100% - 64.00px);
        padding: 4.80px;
    }
    .content.table table {
        display: block;
    }
    .content.table tbody {
        display: block;
    }
    .content.table tr {
        display: block;
    }
    .content .aligncenter {
        margin: 16.00px auto;
    }
    .content .alignright {
        float: none;
        margin: 16.00px auto;
    }
    .content .alignleft {
        float: none;
        margin: 16.00px auto;
    }
    .content .wp-caption-text {
        margin: 16.00px 0;
    }
    .content.margin {
        margin: 16.00px 0;
    }
    .content.margin_head {
        margin: 32.00px 0 16.00px;
    }
    .content+.content {
        margin-top: 16.00px;
    }
}