@charset "utf-8";

#sec1 {}

#sec1 .sec_inner {}

.mainv {
    position: relative;
    margin-bottom: 10px;
}

.mainv .ribon {
    position: absolute;
    top: 5%;
    left: 0;
    right: 0;
    width: 22.291%;
    min-width: 280px;
    /*	width: 428px;*/
    margin: auto;
}

.mainv .ribon .mainv_date {
    position: absolute;
    top: 10%;
    left: 0;
    right: 0;
    width: 100%;
    margin: auto;
    text-align: center;
    font-size: 1.5vw;
    font-weight: bold;
    color: #ffea00;
    letter-spacing: 1px;
}

.mainv_b {
    position: relative;
    padding-bottom: 140px;
}

.slide_list {
    /* margin-bottom: 45px; */
    margin-bottom: 20px;
}

.slide_list ul {
    justify-content: center;
}

.slide_list ul li {
    margin: 0 5px;
    /* box-shadow: 0px 0px 16px 1px rgba(0,0,0,0.1); */
}

.slide_list ul li a img {
    /* margin: 0 5px; */
    box-shadow: 0px 0px 16px 1px rgba(0, 0, 0, 0.1);
}

.slide_list ul li a {
    display: block;
}

.slide_list ul li a img {}

.check_btn {
    /* margin-bottom: 50px; */
    margin-bottom: 20px;
}

.check_btn .btn {}

.check_btn .btn.btn_01 {}

.check_btn .btn.btn_02 {}

.check_btn .btn a {
    display: block;
    border-radius: 30px;
    box-shadow: 0px 7px 4px 0px #d6d6d6;
}

.check_btn .btn a img {}


/* sec_bnr_link_box */
.sec_bnr_link_box {
    padding: 80px 0 0;
}

.sec_bnr_link_box .sec_bnr_link {
    display: block;
}

.sec_bnr_link_box_p2 {
    margin: 35px 0 0;
}


.sec1_01 {
    position: relative;
}

.sec1_01 h2 {
    margin-bottom: 10px;
}

.sec1_01 h2 img {}

.sec1_01_p {}

.sec1_01_p p {
    text-align: center;
    color: #333;
    font-size: 18px;
    font-weight: bold;
    line-height: 34px;
    letter-spacing: 0.05em;
}

.sec1_01_p p + p {
    margin-top: 40px;
}

.sec1_figure01 {
    position: absolute;
    bottom: -152px;
    right: -100px;
}

.sec1_figure01 img {}

#sec2 {
    padding: 100px 0 106px;
}

#sec2 .sec_inner {}

#sec2 h2 {
    text-align: center;
}

#sec2 h2 span {
    display: block;
}

#sec2 h2 span img {}

#sec2 h2 span.t01 {
    margin-bottom: 20px;
}

#sec2 h2 span.t01 img {}

#sec2 h2 span.t02 {}

#sec2 h2 span.t02 img {}

.sec2_01 {
    /* background-color: #fff; */
    margin-top: 65px;
    margin-bottom: 90px;
    position: relative;
    z-index: 1;
}

.sec2_01:before {
    content: '';
    display: block;
    width: 100%;
    height: calc(100% - 60px);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    border-radius: 30px;
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.2);
}

.point_top {
    position: relative;
}

.point_top .point {
    position: absolute;
    top: -50px;
    left: -89px;
    z-index: 1;
}

.point_top .point img {}

.point_top .catch {
    position: relative;
    bottom: -18px;
}

.point_top .catch img {}

.osusume4p ul li {
    width: 24%;
    background-color: #fff;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    border-radius: 20px;
    color: #c00;
    border: 1px solid #c00;
}

.osusume4p ul li span {
    display: block;
    padding: 14px 0;
}

.point_main {
    background-color: #fff;
    padding: 50px 50px 80px;
    /*    border-radius: 30px;*/
}

.point_box {}

.point_box.point_01 {}

.point_box p {
    color: #333;
    font-size: 18px;
    font-weight: normal;
    line-height: 34px;
    letter-spacing: 0.05em;
}

.point_box p strong {
    font-weight: bold;
    color: #cc0033;
    /*    background-color: #ffea00;*/
}

.h3_01 {
    font-size: 26px;
    font-weight: bold;
    line-height: 34px;
    letter-spacing: 0.05em;
    color: #333;
    background-color: #f2f2f2;
    padding: 15px 10px 15px 23px;
    border-left: 7px solid #cc0033;
    margin-bottom: 30px;
}

.point_box p + .h3_01 {
    margin-top: 40px;
}

.h4_01 {
    color: #cc0033;
    font-size: 26px;
    font-weight: bold;
    line-height: 34px;
    letter-spacing: 0.05em;
    border-bottom: 3px solid #cc0033;
    padding-bottom: 10px;
    margin-bottom: 50px;
}

.sec2_01_btn {
    position: relative;
    padding: 30px 0 70px;
    text-align: center;
}

.point_box .btn {
    text-align: center;
    /* margin: 30px 0 50px; */
}

/* .point_box .btn a {
    display: inline-block;
    border-radius: 10px;
    box-shadow: 0px 7px 4px 0px #d6d6d6;
} */
.point_box .btn a {
    display: inline-block;
    border-radius: 30px;
    box-shadow: 0px 7px 4px 0px #d6d6d6;
}

.point_box .btn a img {}

.sec2_figure01 {
    position: absolute;
    top: -24px;
    right: -204px;
}

.sec2_figure01 img {}

.point_01_window {}

.point_01_window + .point_01_window {
    margin-top: 100px;
}

.point_01_window .h4_01 {}

.point_01_window .h4_01.osusume {
    position: relative;
}

.point_01_window .h4_01.osusume:before {
    content: '';
    display: block;
    width: 90px;
    height: 90px;
    background: url(../img/top/osusume_img.png) 0 0 no-repeat;
    background-size: 100%;
    position: absolute;
    top: -68px;
    left: -93px;
}

.point_01_window p {}

.point_01_window .dairi_img {
    margin: 30px 0 30px;
}

.point_01_window .dairi_img img {}

.merit_box {
    margin-top: 30px;
}

.merit_box dl {
    overflow: hidden;
    position: relative;
    padding-left: 150px;
}

.merit_box dl dt,
.merit_box dl dd {
    /* float: left; */
    padding: 10px 0;
}

.merit_box dl dt {
    /* width: 16.67%; */
    width: 150px;
    color: #fff;
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    font-size: 16px;
    font-weight: bold;
}

.merit_box dl dt span {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.merit_box dl dd {
    /* width: 83.33%; */
    padding-left: 20px;
    padding-right: 10px;
    font-size: 18px;
    font-weight: bold;
    line-height: 26px;
}

.merit_box dl.merit {
    margin-bottom: 10px;
}

.merit_box dl.merit dt,
.merit_box dl.merit dd {}

.merit_box dl.merit dt {
    background-color: #cc0033;
}

.merit_box dl.merit dd {
    color: #cc0033;
    background-color: #ffeef2;
    border: 2px dotted #cc0033;
    border-left: none;
}

.merit_box dl.demerit {}

.merit_box dl.demerit dt,
.merit_box dl.demerit dd {}

.merit_box dl.demerit dt {
    background-color: #1874c1;
}

.merit_box dl.demerit dd {
    color: #1874c1;
    background-color: #eaf5ff;
    border: 2px dotted #1874c1;
    border-left: none;
}

.web_dairi {
    margin: 30px 0 30px;
}

.web_dairi ul {}

.web_dairi ul li {
    width: 48.3334%;
    max-width: 435px;
}

.web_dairi ul li:first-child {}

.web_dairi ul li:last-child {}

.web_dairi ul li figure {}

.web_dairi ul li figure img {
    border: 2px solid #dedede;
}

.web_dairi ul li figure figcaption {
    text-align: center;
    padding-top: 13px;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.05em;
    color: #333;
}

.point_01_b {
    margin: 40px 0 20px;
}

.point_01_b p {
    text-align: center;
}

.point_01_b .btn {
    margin-top: 58px;
}

.point_01_b .btn a {
    display: inline-block;
    border-radius: 30px;
    box-shadow: 0px 7px 4px 0px #d6d6d6;
}

.point_01_b .btn a img {}

.point_01_b .point_01_b_img img {
    max-width: none;
    margin-left: -23px;
}

.sec2_02 {
    /* margin-bottom: 50px; */
    position: relative;
    z-index: 1;
}

.sec2_02:before {
    content: '';
    display: block;
    width: 100%;
    height: calc(100% - 60px);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    border-radius: 30px;
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.2);
}

.point_box.point_02 {}

.point_02_b {
    margin-top: 18px;
    position: relative;
}

.point_02_b p {
    text-align: center;
    margin-top: 80px;
}


.point_02_b p img {}


.sec2_figure02 {
    position: absolute;
    bottom: -44px;
    right: -207px;
}

.sec2_figure02 img {}

.point_b {
    background-color: #eee;
    padding: 65px 50px 50px;
    border-radius: 0 0 30px 30px;
    position: relative;
}

.point_b .point_b_t01 {
    position: absolute;
    top: -29px;
    left: 0;
    right: 0;
    text-align: center;
}

.point_b .point_b_t01 img {}

.point_b .point_b_t02 {
    text-align: center;
    margin-bottom: 20px;
}

.point_b .point_b_t02 img {}

.point_b p {
    font-size: 18px;
    font-weight: bold;
    line-height: 24px;
    letter-spacing: 0.05em;
    color: #333;
}

.point_b p strong {}

.point_b .btn {
    margin-top: 48px;
    text-align: center;
}

.point_b .btn a {
    display: inline-block;
    border-radius: 30px;
    box-shadow: 0px 7px 4px 0px #d6d6d6;
}

.point_b_example {
    margin-top: 30px;
    background-color: #fff;
    padding: 33px 35px 30px;
}

.point_b_example_top {
    margin-bottom: 32px;
    position: relative;
    padding-top: 27px;
    padding-left: 227px;
    height: 103px;
}

.point_b_example_top .p01 {
    position: absolute;
    top: 0;
    left: 0;
    width: 104px;
    height: 96px;
}

.point_b_example_top .p01 img {}

.point_b_example_top .p02 {
    position: absolute;
    top: 0;
    left: 102px;
    width: 122px;
    height: 106px;
    padding-top: 5px;
    text-align: center;
}

.point_b_example_top .p02 img {}

.point_b_example_top .p02 span {
    display: block;
    font-size: 12px;
    line-height: 1;
    letter-spacing: 0.05em;
    color: #333;
    white-space: nowrap;
    margin-top: 8px;
}

.point_b_example_top .p03 {}

.point_b_example_case {}

.point_b_example_case ul {}

.point_b_example_case ul li {
    width: 32.892%;
    max-width: 273px;
}

.point_b_example_case ul li:first-child {}

.point_b_example_case ul li:last-child {}

.point_b_example_case ul li p {}

.point_b_example_case ul li p img {}

.point_b_example_case .small {
    font-size: 11px;
    font-weight: normal;
    letter-spacing: 0.05em;
    color: #666;
    padding-top: 10px;
}

#sec3 {}

#sec3 .sec_inner {
    padding: 110px 0 100px;
}

#sec3 h2 {
    text-align: center;
    margin-bottom: 55px;
}

#sec3 h2 img {}

.sec3_01 {
    margin-bottom: 98px;
}

.sec3_01 .link_btn {
    margin-bottom: 90px;
}

.sec3_01 .link_btn ul {
    justify-content: center;
}

.sec3_01 .link_btn ul li {
    margin: 0 0.55% 10px;
    width: 32.6%;
}

.sec3_01 .link_btn ul li:nth-child(1) {
    margin-left: 0;
}

.sec3_01 .link_btn ul li:nth-child(2) {}

.sec3_01 .link_btn ul li:nth-child(3) {
    margin-right: 0;
}

.sec3_01 .link_btn ul li:nth-child(4) {
    margin-left: 0;
    margin-bottom: 0;
}

.sec3_01 .link_btn ul li:nth-child(5),
.sec3_01 .link_btn ul li:nth-child(6) {
    margin-right: 0;
    margin-bottom: 0;
}

.sec3_01 .link_btn ul li a {}

.sec3_01 .link_btn ul li a img {}

.sec3_01_img {
    border-radius: 10px;
    overflow: hidden;
}

.sec3_01_img img {}

.sec3_01_small {}

.sec3_01_small p {
    font-size: 11px;
    line-height: 1;
    color: #fff;
    margin-top: 11px;
}

.hikaku {
    position: relative;
    padding-top: 60px;
}

.hikaku + .hikaku {
    margin-top: 100px;
}

.hikaku_inner {
    position: relative;
    z-index: 1;
}

.hikaku_inner:before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    border-radius: 30px;
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.2);
}

.hikaku h3 {
    text-align: center;
    position: absolute;
    top: -53px;
    left: 0;
    right: 0;
}

.hikaku h3 img {}

.hikaku .hikaku_main {
    padding: 100px 50px 50px;
    background-color: #fff;
    border-radius: 30px 30px 0 0;
}

.hikaku .hikaku_b {
    padding: 64px 50px 50px;
    background-color: #fffbce;
    border-radius: 0 0 30px 30px;
    position: relative;
    min-height: 250px;
    padding-left: 310px;
}

.hikaku .hikaku_b figure {
    position: absolute;
    top: 0;
    left: 0;
}

.hikaku .hikaku_b figure img {}

.hikaku .hikaku_b p {
    color: #333;
    font-size: 16px;
    font-weight: bold;
    line-height: 34px;
    letter-spacing: 0.05em;
}

.hikaku .hikaku_b p strong {
    color: #cc0033;
    font-size: 22px;
}

.sec3_02 {}

.sec3_02_p {
    display: block;
    margin-bottom: 30px;
}

.sec3_02.hikaku .hikaku_main {
    text-align: center;
    padding: 100px 50px 70px;
    border-radius: 30px;
}

.sec3_02_p01 {
    text-align: center;
    margin-bottom: 20px;
    display: inline-block;
    position: relative;
    padding-left: 100px;
    padding-top: 22px;
    height: 115px;
    color: #333;
}

.sec3_02_p01 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 89px;
    height: 115px;
}

.sec3_02_p01 b {
    display: block;
    font-size: 40px;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.05em;
    margin-bottom: 12px;
}

.sec3_02_p01 span {
    font-size: 26px;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.05em;
}

.sec3_02_logo {
    margin-bottom: 48px;
}

.sec3_02_logo img {}

.sec3_02_list {}

.sec3_02_list ul {}

.sec3_02_list ul li {
    width: 48.8889%;
    max-width: 440px;
}

.sec3_02_list ul li:first-child {}

.sec3_02_list ul li:last-child {}

.sec3_02_list ul li img {}

.sec3_02_list .small {
    font-size: 11px;
    line-height: 1;
    color: #676767;
    margin-top: 10px;
    text-align: left;
}

.sec3_02.hikaku .hikaku_b {}

.sec3_02.hikaku .hikaku_b figure {
    top: -12px;
    left: -32px;
}

.sec3_02.hikaku .hikaku_b figure img {}

.sec3_02.hikaku .hikaku_b p {}

.sec3_02.hikaku .hikaku_b p strong {}

.sec3_03 {}

.sec3_03.hikaku .hikaku_main {
    padding: 110px 0px 50px;
    background-color: #f5f5f5;
    border-radius: 30px;
}

.sec3_03 table {
    width: 100%;
    background-color: #fff;
}

.sec3_03 table tr {}

.sec3_03 table th,
.sec3_03 table td {
    padding: 10px 10px;
    /* border: 3px solid #f5f5f5; */
    text-align: center;
}

.sec3_03 table th {
    border-bottom: 3px solid #f5f5f5;
    border-left: 3px solid #f5f5f5;
    color: #cc0033;
    font-size: 40px;
    font-weight: bold;
    vertical-align: middle;
}

.sec3_03 table th:first-child {
    border-left: none;
}

.sec3_03 table th.medal {
    background-color: #dd9e03;
    vertical-align: top;
}

.sec3_03 table th.medal.medal_color2 {
    background-color: #9f9e9e;
}

.sec3_03 table th.medal.medal_color3 {
    background-color: #b17142;
}

.sec3_03 table td {
    border-bottom: 3px solid #f5f5f5;
    border-left: 3px solid #f5f5f5;
    vertical-align: top;
    padding: 20px 10px;
}

.sec3_03 table td:nth-child(3) {
    padding: 20px 20px;
}

.sec3_03 table tr:first-child {}

.sec3_03 table tr:first-child th {
    background-color: #6b5b50;
    color: #fff;
    text-align: center;
    font-size: 18px;
    font-weight: normal;
}

.sec3_03 table tr:first-child th:nth-child(1) {
    width: 7%;
}

.sec3_03 table tr:first-child th:nth-child(2) {
    width: 26%;
}

.sec3_03 table tr:first-child th:nth-child(3) {
    width: auto;
}

.sec3_03 table tr:first-child th:nth-child(4) {
    width: 12.4%;
}

.sec3_03 table .medal_1 {
    position: relative;
    width: 100%;
    height: 100%;
}

.sec3_03 table .medal_1 span {
    display: block;
    position: absolute;
    top: 90px;
    left: -19px;
    width: 89px;
    height: 115px;
}

.sec3_03 table .medal_1 img {}

.sec3_03 table .tit {
    margin-bottom: 10px;
    text-align: left;
}

.sec3_03 table .tit.nowrap {
    white-space: nowrap;
}

.sec3_03 table .tit b {
    font-size: 22px;
    font-weight: bold;
    line-height: 33px;
    color: #333;
    display: inline-block;
    margin-right: 8px;
    vertical-align: top;
}

.sec3_03 table .tit span {
    display: inline-block;
    color: #fff;
    background-color: #cc0033;
    padding: 0 13px;
    border-radius: 13px;
    line-height: 26px;
    font-size: 11px;
    letter-spacing: 0.05em;
    vertical-align: top;
    margin-top: 3.5px;
}

.sec3_03 table .site_img {
    text-align: center;
    margin-bottom: 10px;
    width: 220px;
    border: 2px solid #dedede;
}

.sec3_03 table .site_img img {}


.sec3_03 table .p01 {
    padding-top: 80px;
    margin-bottom: 26px;
}

.sec3_03 table tr:nth-child(2) .p01 {
    padding-top: 30px;
}

#link_02 .p01.cashback_price {
    font-size: 34px;
    font-weight: bold;
    line-height: 1.2;
}

#link_02 .p01.cashback_price strong {
    font-size: 50px;
    margin: 0 8px;
}

.sec3_03 table .p01 img {}

.sec3_03 table .p01s {
    padding-top: 8px;
    margin-bottom: 9px;
}

.sec3_03 table .p02 {
    background-color: #cc0033;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    line-height: 30px;
    letter-spacing: 0.05em;
    padding: 10px 10px;
    border-radius: 10px;
    margin-bottom: 10px;
}

.sec3_03 table .tel_contact {
    width: 100%;
    /*		max-width: 493px;*/
}

.sec3_03 table .tel_contact .tel {
    display: inline-block;
    margin-left: 0%;
    width: 45%;
    background-color: #f5f5f5;
    padding: 10px 5px;
    text-align: center;
}

.sec3_03 table .tel_contact .tel img {}

.sec3_03 table .tel_contact .tel span {
    color: #cc0033;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 0.05em;
}

.sec3_03 table .tel_contact .tel b {
    display: inline-block;
    background: url(../common/img/tel_icon02@2x.png) left center no-repeat;
    background-size: 25.5px;
    padding-left: 30px;
    /* line-height:  30px; */
    font-size: 27px;
    font-weight: bold;
    color: #333;
    line-height: 1;
    white-space: nowrap;
    letter-spacing: 0;
}


.sec3_03 table .tel_contact .contact_btn {
    display: inline-block;
    /*    width: 53%;*/
    margin: 16px 0 0;
}

.sec3_03 table .tel_contact .contact_btn a {
    display: block;
}

.sec3_03 table .tel_contact .contact_btn a img {}

.sec3_03 table dl {}

.sec3_03 table dl dt,
.sec3_03 table dl dd {
    font-size: 13px;
    line-height: 18px;
    letter-spacing: 0.05em;
}

.sec3_03 table dl dt {
    background-color: #cc0033;
    color: #fff;
    /* font-size:  13px; */
    font-weight: bold;
    /* line-height: 30px; */
    padding: 6px 0;
    border-radius: 10px 10px 0 0;
}

.sec3_03 table dl dd {
    /* font-size:  13px; */
    /* line-height:  18px; */
    color: #060606;
    text-align: left;
    padding: 10px 10px;
    background-color: #f5f5f5;
    border-radius: 0 0 10px 10px;
    min-height: 68px;
}

.sec3_03 table .p_gray {
    background-color: #eee;
    color: #333;
    font-size: 27px;
    letter-spacing: 0.05em;
    border-radius: 10px;
    line-height: 201px;
    margin-top: 10px;
}

.sec3_03 table .btn {
    position: relative;
    z-index: 1;
    display: inline-block;
}

.btn_osusume {
    position: absolute;
    z-index: 1;
    right: -173px;
    top: -161px;
    animation: key2 2s ease infinite alternate;
}

@keyframes key2 {
    0% {
        transform: translateY(0px);
    }

    100% {
        transform: translateY(-10px);
    }
}


.sec3_03 table .btn a {
    display: block;
}

.sec3_03 table .btn a img {}

.sec3_03.hikaku .hikaku_b {
    min-height: 394px;
}

.sec3_03.hikaku .hikaku_b figure {
    top: 54px;
    left: -41px;
}

.sec3_03.hikaku .hikaku_b figure img {}

.sec3_03.hikaku .hikaku_b p {}

.sec3_03.hikaku .hikaku_b p strong {}

.sec3_04 {}

.sec3_04.hikaku .hikaku_main {
    padding: 110px 0px 0px;
    background-color: #f5f5f5;
}

.sec3_04_img01 {
    text-align: center;
    padding-bottom: 27px;
}

.table_02 table {
    width: 100%;
    background-color: #fff;
}

.table_02 table tr {}

.table_02 table th,
.table_02 table td {
    padding: 10px 10px;
    text-align: center;
}

.table_02 table th {
    border-bottom: 3px solid #f5f5f5;
    border-left: 3px solid #f5f5f5;
    color: #cc0033;
    font-size: 40px;
    font-weight: bold;
    vertical-align: middle;
}

.table_02 table th:first-child {
    border-left: none;
}

.table_02 table th.medal {
    background-color: #dd9e03;
    vertical-align: top;
}

.table_02 table td {
    border-bottom: 3px solid #f5f5f5;
    border-left: 3px solid #f5f5f5;
    padding: 20px 2px;
    vertical-align: middle;
}

.table_02 table td:nth-child(2) {
    padding: 20px 20px;
    vertical-align: top;
}

.table_02 table td:nth-child(8) {
    padding: 20px 10px;
}

.table_02 table td:nth-child(9) {
    vertical-align: top;
}

.table_02 table tr:first-child {}

.table_02 table tr:first-child th,
.table_02 table tr:nth-child(2) th {
    background-color: #6b5b50;
    color: #fff;
    text-align: center;
    font-size: 18px;
    font-weight: normal;
}

.table_02 table th.font_s {
    font-size: 11px !important;
    font-weight: normal;
    white-space: nowrap;
}

.table_02 table th.w77 {
    width: 77px;
    padding: 10px 2px;
    border-left: 3px solid #f5f5f5;
}

.table_02 table th.w137 {
    width: 137px;
}

.table_02 table tr:first-child th:nth-child(1) {
    width: 7%;
}

.table_02 table tr:first-child th:nth-child(2) {
    width: 26%;
}

.table_02 table tr:first-child th:nth-child(3) {
    width: auto;
}

.table_02 table tr:first-child th:nth-child(4) {
    width: 12.4%;
}

.table_02 table .medal_1 {
    position: relative;
    width: 100%;
    height: 100%;
}

.table_02 table .medal_1 span {
    display: block;
    position: absolute;
    top: 90px;
    left: -19px;
    width: 89px;
    height: 115px;
}

.table_02 table .medal_1 img {}

.table_02 table .tit {
    margin-bottom: 10px;
    text-align: left;
}

.table_02 table .tit.nowrap {
    white-space: nowrap;
}

.table_02 table .tit b {
    font-size: 22px;
    font-weight: bold;
    line-height: 33px;
    color: #333;
    display: inline-block;
    margin-right: 8px;
    vertical-align: top;
}

.table_02 table .tit span {
    display: inline-block;
    color: #fff;
    background-color: #cc0033;
    padding: 0 13px;
    border-radius: 13px;
    line-height: 26px;
    font-size: 11px;
    letter-spacing: 0.05em;
    vertical-align: top;
    margin-top: 3.5px;
}

.table_02 table .site_img {
    text-align: center;
    margin-bottom: 10px;
    width: 220px;
    border: 2px solid #dedede;
}

.table_02 table .site_img img {}

.table_02 table .p01 {
    position: relative;
    top: -20px;
}

.table_02 table .p01 img {}

.table_02 table .p01s {
    padding-top: 8px;
    margin-bottom: 9px;
}

.table_02 table .p02 {
    background-color: #cc0033;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    line-height: 30px;
    letter-spacing: 0.05em;
    padding: 10px 10px;
    border-radius: 10px;
    margin-bottom: 10px;
}

.table_02 table .small_1 {
    display: block;
    text-align: right;
    font-size: 11px;
    color: #666;
    position: absolute;
    top: -13px;
    right: 2px;
    width: 100%;
}

.table_02 table .icon {
    display: inline-block;
    width: 42px;
    text-align: center;
}

.table_02 table .icon img {}

.table_02 table .font_17 {
    display: block;
    font-size: 17px;
    font-weight: bold;
    line-height: 18px;
    color: #333;
    /* margin-top: 10px; */
    position: absolute;
    top: 48px;
    left: 0;
    right: 0;
    white-space: nowrap;
}

.table_02 table .font_17.red {
    color: #cc0033;
}

.table_02 table .font_14 {
    font-size: 14px;
    font-weight: bold;
    line-height: 23px;
    color: #333;
    text-align: left;
}

.table_02 table .font_11 {
    display: block;
    font-size: 11px;
    font-weight: normal;
    line-height: 14px;
    letter-spacing: 0.05em;
    white-space: normal;
}

.table_02 table .ul01 {}

.table_02 table .ul01 li {
    text-align: left;
    position: relative;
    font-size: 11px;
    font-weight: normal;
    line-height: 14px;
    letter-spacing: 0.05em;
    color: #333;
    padding-left: 1em;
}

.table_02 table .ul01 li + li {
    margin-top: 2px;
}

.table_02 table .ul01 li:before {
    content: '・';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}

.table_02 table .btn {
    position: relative;
    z-index: 1;
    display: inline-block;
}

.table_02 table .btn a {
    display: inline-block;
}

.table_02 table .btn a img {}

.sec3_04_table_b {
    background-color: #fff;
    padding: 12px 21px 48px;
}

.sec3_04_table_b p {
    font-size: 11px;
    line-height: 17px;
    letter-spacing: 0.05em;
    color: #666;
}

.sec3_04.hikaku .hikaku_b {
    padding-top: 50px;
}

.sec3_04.hikaku .hikaku_b figure {
    top: -29px;
    left: -21px;
}

.sec3_04.hikaku .hikaku_b figure img {}

.sec3_04.hikaku .hikaku_b p {}

.sec3_04.hikaku .hikaku_b p strong {}


.sec3_05 {}

.sec3_05.hikaku .hikaku_main {
    padding: 110px 0px 50px;
    background-color: #f5f5f5;
    border-radius: 30px;
}

.table_03 {}

.table_03 table {
    width: 100%;
    background-color: #fff;
}

.table_03 table tr {}

.table_03 table th,
.table_03 table td {
    padding: 10px 10px;
    text-align: center;
}

.table_03 table th {
    border-bottom: 3px solid #f5f5f5;
    border-left: 3px solid #f5f5f5;
    color: #cc0033;
    font-size: 40px;
    font-weight: bold;
    vertical-align: middle;
}

.table_03 table th:first-child {
    border-left: none;
}

.table_03 table th.medal {
    background-color: #dd9e03;
    vertical-align: top;
}

.table_03 table th.medal.medal_color2 {
    background-color: #9f9e9e;
}

.table_03 table th.medal.medal_color3 {
    background-color: #b17142;
}

.table_03 table td {
    border-bottom: 3px solid #f5f5f5;
    border-left: 3px solid #f5f5f5;
    vertical-align: middle;
    padding: 20px 20px;
}

.table_03 table tr:first-child {}

.table_03 table tr:first-child th,
.table_03 table tr:nth-child(2) th {
    background-color: #6b5b50;
    color: #fff;
    text-align: center;
    font-size: 18px;
    font-weight: normal;
}

.table_03 table tr:nth-child(2) th {
    border-left: 3px solid #f5f5f5;
}

.table_03 table tr:first-child th:nth-child(1) {
    width: 7%;
}

.table_03 table tr:first-child th:nth-child(2) {
    width: 26%;
}

.table_03 table tr:first-child th:nth-child(3) {
    width: auto;
}

.table_03 table tr:first-child th:nth-child(4) {
    width: auto;
}

.table_03 table tr:first-child th:nth-child(5) {
    width: 12.4%;
}

.table_03 table td:nth-child(2) {
    padding: 20px 20px;
    vertical-align: top;
}

.table_03 th.medal .medal_1 {
    position: relative;
    width: 100%;
    height: 100%;
}

.table_03 th.medal .medal_1 span {
    display: block;
    position: absolute;
    top: 90px;
    left: -19px;
    width: 89px;
    height: 115px;
}

.table_03 th.medal .medal_1 img {}

.table_03 table .tit {
    margin-bottom: 10px;
    text-align: left;
}

.table_03 table .tit.nowrap {
    white-space: nowrap;
}

.table_03 table .tit b {
    font-size: 22px;
    font-weight: bold;
    line-height: 33px;
    color: #333;
    display: inline-block;
    margin-right: 8px;
    vertical-align: top;
}

.table_03 table .tit span {
    display: inline-block;
    color: #fff;
    background-color: #cc0033;
    padding: 0 13px;
    border-radius: 13px;
    line-height: 26px;
    font-size: 11px;
    letter-spacing: 0.05em;
    vertical-align: top;
    margin-top: 3.5px;
}

.table_03 table .site_img {
    text-align: center;
    margin-bottom: 10px;
    width: 220px;
    border: 2px solid #dedede;
}

.table_03 table .site_img img {}

.table_03 table .dl01 {}

.table_03 table .dl01 dt,
.table_03 table .dl01 dd {}

.table_03 table .dl01 dt {
    margin-bottom: 15px;
}

.table_03 table .dl01 dt img {}

.table_03 table .dl01 dt img.maru2 {
    position: relative;
    top: -6px;
}

.table_03 table .dl01 dd {
    font-size: 17px;
    font-weight: bold;
    line-height: 22px;
    letter-spacing: 0.05em;
    color: #333;
    min-height: 44px;
}

.table_03 table .dl01 dd.red {
    color: #cc0033;
}

.table_03 table .dl01 dd.h88 {
    min-height: 88px;
}

.table_03 table .btn {
    position: relative;
    z-index: 1;
    display: inline-block;
}

.table_03 table .btn a {
    display: block;
}

.table_03 table .btn a img {}

.sec3_05_table_b {
    background-color: #fff;
    padding: 12px 21px 48px;
}

.sec3_05_table_b p {
    font-size: 11px;
    line-height: 17px;
    letter-spacing: 0.05em;
    color: #666;
}

.sec3_05.hikaku .hikaku_b {
    padding-top: 50px;
}

.sec3_05.hikaku .hikaku_b figure {
    top: -11px;
    left: -47px;
}

.sec3_05.hikaku .hikaku_b figure img {}

.sec3_05.hikaku .hikaku_b p {}

.sec3_05.hikaku .hikaku_b p strong {}

.sec3_06 {}

.sec3_06.hikaku .hikaku_main {
    padding: 116px 0px 50px;
    background-color: #f5f5f5;
    border-radius: 30px;
}

.ranking_box {
    /* padding: 90px 50px 50px; */
    position: relative;
    background-color: #fff;
}

.ranking_box + .ranking_box {
    border-top: 3px solid #f5f5f5;
}

.ranking_box .rank {
    position: absolute;
    top: 0;
    left: 0;
    width: 89px;
    height: 115px;
    z-index: 10;
}

.ranking_box .rank span {
    display: block;
    position: absolute;
    top: 10px;
    left: -8px;
}

.ranking_box .rank span img {}

.ranking_box_inner {
    padding: 90px 50px 50px;
    position: relative;
    background-color: #fff;
    overflow: hidden;
}

.ranking_box_inner.rank1:before,
.ranking_box_inner.rank2:before,
.ranking_box_inner.rank3:before {
    content: '';
    display: block;
    width: 200px;
    height: 300px;
    background-color: #dd9e03;
    position: absolute;
    top: -89px;
    left: -107px;
    z-index: 0;
    transform: rotate(33.16deg);
}

.ranking_box_inner.rank2:before {
    background-color: #9f9e9e;
}

.ranking_box_inner.rank3:before {
    background-color: #b17142;
}

.ranking_box h4 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-left: 150px;
    font-size: 32px;
    font-weight: bold;
    line-height: 90px;
    letter-spacing: 0.05em;
}

.ranking_flex {
    margin-bottom: 30px;
    position: relative;
    z-index: 1;
}

.ranking_flex .ranking_flex_l {
    width: 33.3334%;
    max-width: 300px;
}

.ranking_graph {
    position: relative;
    width: 300px;
    height: 310px;
    border-radius: 10px 10px 0 0;
    overflow: hidden;
    background: #f5f5f5;
}

.ranking_graph:before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/top/graph_bg_b.png) 0 0 no-repeat;
    background-size: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    opacity: 0.65;
    opacity: 0;
}

.ranking_graph figure {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

.ranking_graph figure img {}

.ranking_graph figure.img01 {
    z-index: 1;
}

.ranking_graph figure.img02 {
    z-index: 2;
}

.ranking_score {
    background-color: #fffbce;
    padding: 0 8px 0;
    border-radius: 0 0 10px 10px;
}

.ranking_score p {
    font-weight: bold;
    letter-spacing: 0.05em;
    white-space: nowrap;
    text-align: center;
}

.ranking_score p b {
    font-size: 28px;
    color: #333;
    /* display:  inline-block; */
    margin-right: 24px;
}

.ranking_score p span {
    color: #cc0033;
}

.ranking_score p .span1 {
    font-size: 60px;
    margin-right: 6px;
}

.ranking_score p .span2 {
    font-size: 28px;
}

.ranking_box_osusume {
    position: relative;
    z-index: 1;
}

.ranking_box_osusume .btn_osusume {
    top: -130px;
    right: -125px;
}

.ranking_flex .ranking_flex_r {
    width: 64.4445%;
    max-width: 580px;
    /* border-radius: 10px; */
    /* overflow:  hidden; */
}

.ranking_flex .ranking_flex_r.date201904081729 {
    border-radius: 10px;
    overflow: hidden;
}

.ranking_flex .ranking_flex_r dl {
    height: 100%;
}

.ranking_flex .ranking_flex_r dl dt,
.ranking_flex .ranking_flex_r dl dd {}

.ranking_flex .ranking_flex_r dl dt {
    background-color: #cc0033;
    color: #fff;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    line-height: 46px;
    letter-spacing: 0.05em;
}

.ranking_flex .ranking_flex_r dl dd {
    background-color: #fffbce;
    padding: 20px 20px 20px;
    position: relative;
    height: 100%;
}

.ranking_flex .ranking_flex_r dl dd .icon01 {
    position: absolute;
    top: 20px;
    left: 20px;
    width: 70px;
}

.ranking_flex .ranking_flex_r dl dd .icon01 img {}

.ranking_flex .ranking_flex_r dl dd .icon01 figcaption {
    text-align: center;
    margin-top: 7px;
    font-size: 12px;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.05em;
    color: #333;
}

.ranking_flex .ranking_flex_r dl dd p.p01 {
    padding-left: 82px;
    min-height: 100px;
    margin-bottom: 24px;
    text-align: left;
    font-size: 15px;
    font-weight: bold;
    line-height: 26px;
    letter-spacing: 0.05em;
    color: #333;
}

.ranking_flex .ranking_flex_r .contact {
    position: relative;
    min-height: 170px;
}

.ranking_flex .ranking_flex_r.date201904081729 .contact {
    min-height: unset;
}

.ranking_flex .ranking_flex_r .contact .site_img {
    position: absolute;
    top: 0;
    left: 0;
    width: 220px;
}

.ranking_flex .ranking_flex_r.date201904081729 .contact .site_img {
    width: 280px;
    border: 2px solid #dedede;
}

.ranking_flex .ranking_flex_r.date201904081729 .contact .site_img.centerposition {
    margin-left: 130px;
}

.ranking_flex .ranking_flex_r .contact .site_img img {}

.ranking_flex .ranking_flex_r .contact .tel {
    margin-left: 230px;
    margin-bottom: 10px;
    background-color: #fff;
    width: 310px;
    /* position:  absolute; */
    /* top: 0; */
    /* left: 230px; */
    text-align: center;
    padding: 11px 0 11px;
}

.ranking_flex .ranking_flex_r .contact .tel span {
    color: #cc0033;
    font-size: 15px;
    font-weight: bold;
    letter-spacing: 0.05em;
}

.ranking_flex .ranking_flex_r .contact .tel b {
    display: inline-block;
    background: url(../common/img/tel_icon02@2x.png) left 13px no-repeat;
    background-size: 32px;
    padding-left: 38px;
    font-size: 38px;
    font-weight: bold;
    color: #333;
    line-height: 1;
    white-space: nowrap;
    letter-spacing: 0;
}

.ranking_flex .ranking_flex_r .contact .contact_btn {
    margin-left: 230px;
    width: 310px;
}

.ranking_flex .ranking_flex_r.date201904081729 .contact .contact_btn {
    margin-left: unset;
    width: unset;
}

.ranking_flex .ranking_flex_r .contact .contact_btn a {
    display: block;
}

.ranking_flex .ranking_flex_r.date201904081729 .contact .contact_btn a {
    text-align: right;
    padding-top: 36px;
}

.ranking_flex .ranking_flex_r .contact .contact_btn a img {}

.ranking_btn {
    text-align: center;
    position: relative;
    z-index: 1;
}

.ranking_btn a {
    display: inline-block;
}

.ranking_btn a img {}

.ranking_box2 {
    border-top: 3px solid #f5f5f5;
    background-color: #fff;
}

.ranking_box2 + .ranking_box2 {}

.ranking_box2_l,
.ranking_box2_r {
    width: 50%;
    position: relative;
}

.ranking_box2_l {}

.ranking_box2_r {
    border-left: 3px solid #f5f5f5;
    /* width: calc(50% - 3px); */
}

.ranking_box2_inner {
    padding: 90px 50px 50px;
    position: relative;
}

.ranking_box2 .rank {
    position: absolute;
    top: 18px;
    left: 18px;
}

.ranking_box2 h4 {
    position: absolute;
    top: 18px;
    left: 98px;
    font-size: 28px;
    font-weight: bold;
    letter-spacing: 0.05em;
    color: #333;
    line-height: 64px;
}

.ranking_box2 .ranking_score_box {
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 14px;
}

.ranking_box2 .ranking_graph {
    width: 57.431%;
    max-width: 228px;
    height: 237px;
    border-radius: 0;
}

.ranking_box2 .ranking_graph:before {
    background-image: url(../img/top/graph_bg2_b.png);
}

.ranking_box2 .ranking_graph figure {}

.ranking_box2 .ranking_graph figure img {}

.ranking_box2 .ranking_graph figure.img01 {}

.ranking_box2 .ranking_graph figure.img02 {}

.ranking_box2 .ranking_score {
    width: 42.569%;
    max-width: 171px;
}

.ranking_box2 .ranking_score p {
    margin-top: 70px;
}

.ranking_box2 .ranking_score p b {
    display: block;
    font-size: 20px;
    line-height: 1;
    margin: 0 0 10px;
}

.ranking_box2 .ranking_score p span {
    font-size: 28px;
    line-height: 48px;
}

.ranking_box2 .ranking_score p .span1 {
    font-size: 48px;
    line-height: 48px;
}

.ranking_box2 ranking_score p .span2 {}

.ranking_box2 .ranking_btn {
    position: relative;
    min-height: 110px;
}

.ranking_box2 .ranking_btn .site_img {
    position: absolute;
    top: 0;
    left: 0;
    width: 220px;
    border: 2px solid #dedede;
}

.ranking_box2 .ranking_btn .site_img img {}

.ranking_box2 .ranking_btn .btn {
    padding-left: 230px;
    padding-top: 20px;
    text-align: right;
}

.ranking_box2 .ranking_btn .btn a {
    display: block;
}

.ranking_box2 .ranking_btn .btn a img {}

.ranking_img {
    margin: 0 0 40px;
}


.sec3_06_b {
    border-top: 3px solid #f5f5f5;
    background-color: #fff;
    padding: 12px 21px 48px;
}

.sec3_06_b p {
    font-size: 11px;
    line-height: 17px;
    letter-spacing: 0.05em;
    color: #666;
}

.sec3_06.hikaku .hikaku_b {
    padding-top: 50px;
}

.sec3_06.hikaku .hikaku_b figure {
    top: 13px;
    left: -67px;
}

.sec3_06.hikaku .hikaku_b figure img {}

.sec3_06.hikaku .hikaku_b p {}

.sec3_06.hikaku .hikaku_b p strong {}




#sec4 {
    padding: 100px 0 0px;
}

#sec4 .sec_inner {
    text-align: center;
}

#sec4 h2 {
    margin-bottom: 40px;
}

#sec4 h2 img {}

#sec4 p {
    font-size: 18px;
    font-weight: bold;
    line-height: 34px;
    letter-spacing: 0.05em;
    color: #333;
}

#sec4 p + p {
    margin-top: 40px;
}

#sec4 figure {
    margin-top: 78px;
    text-align: center;
}

#sec4 figure img {
    position: relative;
    bottom: -1px;
}


.page_navi {
    background-color: #2caebd;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0 50px;
    z-index: 100;
    -webkit-transform: translateY(-150px);
    transform: translateY(-150px);
    -webkit-transition: all .3s;
    transition: all .3s;
}

.page_navi.show {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
}

.page_navi ul {
    width: 1000px;
    margin: 0 auto;
    height: 110px;
    position: relative;
}

.page_navi ul li {
    width: 12.5%;
}

.page_navi ul li:first-child {}

.page_navi ul li:last-child {}

.page_navi ul li a {
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
}

.page_navi ul li a span {}

.page_navi ul li.point {}

.page_navi ul li.point a {
    background: url(../img/top/navi_arrow01.png) center bottom 10px no-repeat;
    background-color: #1c8e6f;
    font-size: 14px;
    font-weight: bold;
    line-height: 17px;
    letter-spacing: 0.05em;
    color: #fff;
    border-left: 2px solid #96d7de;
    border-right: 2px solid #96d7de;
}

.page_navi ul li.point a span {
    display: block;
    padding-top: 44px;
    background: url(../img/top/navi_icon01.png) center 12px no-repeat;
}

.page_navi ul li.ranking {}

.page_navi ul li.ranking a {
    background: url(../img/top/navi_arrow02.png) center bottom 10px no-repeat;
    background-color: #2caebd;
    font-size: 14px;
    font-weight: bold;
    line-height: 17px;
    letter-spacing: 0.05em;
    color: #fff;
    border-left: 2px solid #96d7de;
}

.page_navi ul li.ranking a span {
    display: block;
    padding-top: 44px;
    background: url(../img/top/navi_icon02.png) center 13px no-repeat;
}

.page_navi ul li.btn01 {}

.page_navi ul li.btn01 a {
    padding: 8px 0 8px;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    line-height: 16px;
    letter-spacing: 0;
    border-left: 2px solid #96d7de;
}

.page_navi ul li.btn01 a span {
    display: block;
    background: url(../img/top/navi_arrow02.png) center bottom 3px no-repeat;
    /* background-color:  #fff; */
    height: 94px;
    border-radius: 15px;
    padding-top: 15px;
}

.page_navi ul li.btn01.l02 {}

.page_navi ul li.btn01.l02 a {}

.page_navi ul li.btn01.l02 a span {
    padding-top: 23px;
}

.page_navi ul li.btn01.l01 a span {
    padding-top: 37px;
}

span.anchorlink {
    position: relative;
    top: -110px;
    display: block;
}


.folow_bn {
    position: fixed;
    bottom: 50px;
    right: 30px;
    z-index: 9999;
    /*     visibility: hidden;
opacity: 0;
transition: all 300ms cubic-bezier(.165,.84,.44,1);
-webkit-transition: all 300ms cubic-bezier(.165,.84,.44,1);
-moz-transition: all 300ms cubic-bezier(.165,.84,.44,1); */
}

.folow_bn.show {
    visibility: visible;
    opacity: 1;
}

/*
.folow_bn img{
  animation: key1 3.0s ease infinite alternate;
}

@keyframes key1{

  75% {transform: translateY(0px);}
  80% {transform: translateY(-10px);}
  85% {transform: translateY(0px);}
  90% {transform: translateY(-10px);}
  95% {transform: translateY(0px);}
  100% {transform: translateY(-10px);}
}
*/



.mt-94 {
    margin: 94px 0 0 0;
}


/* ------------------------------------ */


.ranking2 {
    padding: 50px 50px 50px;
    position: relative;
    background-color: #fff;
}

.ranking2_ttl {
    text-align: center;
    position: relative;
    z-index: 1;
    margin: 0 0 40px;
}

.ranking2_ttl p {
    font-size: 37px;
    font-weight: bold;
    color: #cc0033;
}

.ranking2_figure {
    position: absolute;
    z-index: 1;
    top: -160px;
    right: -244px;
}

.ranking2_mes {
    font-size: 18px;
    margin: 0 0 40px;
    line-height: 1.9;
}

.ranking2_mes span {
    color: #cc0033;
    background: #ffea00;
    font-weight: bold;
}

.ranking2_img {}

.ranking2_come {
    font-size: 11px;
    color: #666666;
    padding: 35px 0 0;
}

.ranking2_pdflink > a {
    font-size: 11px;
    color: #666666;
    text-decoration: underline;
}

/* トークエリア */

.kikoushi_tark {
    position: relative;
}

.kikoushi_tark.mt {
    margin-top: 5em;
}

.kikoushi_tark.mb {
    margin-bottom: 5em;
}

.kikoushi_tark .sec_inner {
    padding: 120px 0 100px;
    position: relative;
}

.kikoushi_tark .kikoushi_tark_title {
    left: 0;
    position: absolute;
    right: 0;
    top: -70px;
}

.kikoushi_tark .tark_table .tark_item {
    -webkit-flex: 1;
    -webkit-flex-wrap: wrap;
    -webkit-justify-content: space-between;
    display: -webkit-flex;
    display: flex;
    flex: 1;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 2.5em;
}

.kikoushi_tark .tark_table .tark_item:last-child {
    margin-bottom: 0;
}

/*元の吹き出し黄色枠*/
/*
.kikoushi_tark .tark_table .tark_item.kikoushi .tark_message {
    background: #fff;
    border-color: #ffea00;
}

.kikoushi_tark .tark_table .tark_item.kikoushi .tark_message::before {
    border-color: transparent #ffea00 transparent transparent;
}
.kikoushi_tark .tark_table .tark_item.kikoushi .tark_message::before {
    border-color: transparent #ffea00 transparent transparent;
}
.kikoushi_tark .tark_table .tark_item.kikoushi .tark_message .message_inner::before {
    border-color: transparent #fff transparent transparent;
}
*/
.kikoushi_tark .tark_table .tark_item.kikoushi .tark_message {
    background: #F9DCDC;
    border-color: #cc0033;
}

.kikoushi_tark .tark_table .tark_item.kikoushi .tark_message::before {
    border-color: transparent #cc0033 transparent transparent;
}

.kikoushi_tark .tark_table .tark_item.kikoushi .tark_message .message_inner::before {
    border-color: transparent #F9DCDC transparent transparent;
}


.kikoushi_tark .tark_table .tark_thumbnail {
    flex: 0 0 20%;
    max-width: 20%;
}

.kikoushi_tark .tark_table .tark_thumbnail.kikoushi_c img {
    margin-left: -26px;
}

.kikoushi_tark .tark_table .tark_thumbnail.kikoushi_d img {
    margin-left: -17px;
}

.kikoushi_tark .tark_table .tark_message {
    background: #f2f2f2;
    border: 0.2em solid #f2f2f2;
    border-radius: 1.2em;
    box-shadow: 0 0.1em 0.8em rgba(0, 0, 0, 0.3);
    flex: 0 0 76%;
    max-width: 76%;
    position: relative;
}

.kikoushi_tark .tark_table .tark_message::before {
    border: solid;
    border-color: transparent #f2f2f2 transparent transparent;
    border-width: 1em 1.8em;
    content: '';
    left: -3.7em;
    margin-top: -1em;
    position: absolute;
    top: 50%;
}

.kikoushi_tark .tark_table .tark_message.important p {
    color: #c00;
    font-size: 3em;
    font-weight: bold;
    text-align: center;
}

.kikoushi_tark .tark_table .tark_message .message_inner {
    display: table;
    height: 100%;
    padding: 1em 1.5em;
    width: 100%;
}

.kikoushi_tark .tark_table .tark_message .message_inner::before {
    border: solid;
    border-color: transparent #f2f2f2 transparent transparent;
    border-width: 0.8em 1.4em;
    content: '';
    left: -2.8em;
    margin-top: -0.8em;
    position: absolute;
    top: 50%;
}

.kikoushi_tark .tark_table .tark_message .message {
    display: table-cell;
    font-size: 1.1em;
    height: 100%;
    vertical-align: middle;
    width: 100%;
}

.kikoushi_tark .tark_table .tark_message.important p {
    color: #c00;
    font-size: 3em;
    font-weight: bold;
    text-align: center;
}

.kikoushi_tark .tark_info {
    font-size: 1.1em;
    font-weight: bold;
    margin: 4em 0;
    text-align: center;
    color: #fff;
}

.kikoushi_tark .tark_info.mb0 {
    margin-bottom: 0;
}

.kikoushi_tark strong {
    color: #c00;
    font-weight: bold;
}

.kikoushi_tark .tark_info strong {
    color: #ffea00;
    font-weight: bold;
}

/* ---------------------------------------------------------
20210814
--------------------------------------------------------- */

.sec_kazu_04 {}

.sec_kazu_04.hikaku .hikaku_main {
	padding: 116px 0px 50px;
	background-color: #f5f5f5;
	border-radius: 30px;
}

.sec_kazu_04_img01 {
    text-align: center;
    padding-bottom: 27px;
}

.sec_kazu_04_table_b {
    background-color: #fff;
    padding: 12px 21px 48px;
}

.sec_kazu_04_table_b p {
    font-size: 11px;
    line-height: 17px;
    letter-spacing: 0.05em;
    color: #666;
}

.sec_kazu_04.hikaku .hikaku_b {
    padding-top: 50px;
}

.sec_kazu_04.hikaku .hikaku_b figure {
    top: -29px;
    left: -21px;
}

.sec_kazu_04.hikaku .hikaku_b figure img {}

.sec_kazu_04.hikaku .hikaku_b p {}

.sec_kazu_04.hikaku .hikaku_b p strong {}

.sec_kazu_red{
	color: #cc0033 !important;
}

.sec_kazu_lead_wrap{
	text-align: center;
	font-weight: 700;
	white-space: nowrap;
}

.sec_kazu_lead{
	display: inline-block;
	vertical-align: bottom;
}

.sec_kazu_number{
	font-size: 44px;
	line-height: 1;
	margin: 0 0 12px 0;
}

.sec_kazu_number_text{
	font-size: 17px;
	line-height: 1.3;
}

.sec_kazu_list_wrap{
	font-size: 14px;
	font-weight: 700;
	line-height: 1.64;
	text-align: left;
}

.sec_kazu_list{
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 10px 0;
	white-space: nowrap;
}

.sec_kazu_list:last-child{
	margin-bottom: 0;
}

.sec_kazu_list li{
	width: calc(50% + 20px);
	padding: 0 12px 0 0;
}

.sec_kazu_list li:nth-child(2n){
	width: calc(50% - 20px);
	padding-right: 0;
}

.sec_kazu_list li:before{
	content: "・";
}

.sec_kazu_list li:first-child:last-child{
	width: 100%;
	text-align: center;
}

.sec_kazu_list li:first-child:last-child:before{
	display: none;
}

.sec_kazu_04.hikaku .table_02 table th{
	white-space: nowrap;
}

.sec_kazu_04.hikaku .table_02 table tr:first-child th:nth-child(3){
	width: auto;
}

.sec_kazu_04.hikaku .table_02 table tr:first-child th:nth-child(4){
	width: auto;
}

.sec_kazu_04.hikaku .table_02 table td:nth-child(3),
.sec_kazu_04.hikaku .table_02 table td:nth-child(4){
	padding-left: 20px;
	padding-right: 20px;
}

.sec_kazu_04.hikaku .table_02 table th:nth-child(5),
.sec_kazu_04.hikaku .table_02 table td:nth-child(5){
	min-width: 110px;
}

/*---------------------------------------------------------
	スマホ
---------------------------------------------------------*/
@media screen and (max-width: 680px),
screen and (max-width: 737px) and (orientation: landscape) {}
