/*
Theme Name: template_2310001
Theme URL: https://mightyace.co.jp/
Description: 比較サイトテンプレート
Author: 株式会社マイティーエース
Version: 23.10.001
*/

@charset "utf-8";
/* html5のブラウザ互換用
----------------------------------------------------------- */
@import url("/wp-content/themes/template/css/reset.css");
@import url("/wp-content/themes/template/css/default.css");


/* ページ設定
----------------------------------------------------------- */
    @charset "utf-8";

    .clearfix {
        display: block;
    }

    .sp {
        display: none;
    }

    body {
        font-family: "Noto Sans JP", sans-serif;
        letter-spacing: 1px;
        color: #000;
        font-size: clamp(14px, 12.6087px + 0.4348vw, 18px);
    }

    /* header */
    header {
        text-align: center;
        padding: 1em 0;
        max-width: 1200px;
        width: 100%;
        position: relative;
        margin: 0 auto;
    }

    header img {
        margin: 0 auto;
    }

    header p {
        border: #ccc 1px solid;
        border-radius: 5px;
        width: 70px;
        padding: .5em 0;
        position: absolute;
        top: 1em;
        right: 0;
        line-height: 1;
    }

    /* fv */
    #fv {
        background-image: url(images/fv_bg.webp);
        background-position: center;
        text-align: center;
            background-size: cover;
    }

    #fv img {
        margin: 0 auto;
    }

    /* search */
    #search {
        padding: 3em 0 5em;
        max-width: 1200px;
        margin: 0 auto;
    }

    #search_title {
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: clamp(25px, 16.3043px + 2.7174vw, 50px);
        gap: 1%;
        margin: 0 0 1em;
    }

    #search_title h2 {
        margin: 0;
    }

    #search table {
        width: 100%;
        margin: 0 0 2em;
    }

    #search table th {
        width: 30%;
        background-color: #004299;
        border: #d0ced0 1px solid;
        vertical-align: middle;
        color: #fff;
        font-weight: bold;
        padding: 1em;
        box-sizing: border-box;
    }

    #search table td {
        width: 70%;
        border: #d0ced0 1px solid;
        vertical-align: middle;
        padding: 1em;
        box-sizing: border-box;
    }

    #search table td label {
        margin: 0 .5em 0 0;
    }

    #search table td input[type="checkbox"],
    #search table td input[type="radio"] {
        transform: scale(1.5);
    }

    @media (max-width: 768px) {

        #search table td input[type="checkbox"],
        #search table td input[type="radio"] {
            transform: scale(1.3);
        }
    }

    @media (max-width: 480px) {

        #search table td input[type="checkbox"],
        #search table td input[type="radio"] {
            transform: scale(1.1);
        }
    }

    .search_btn_box {
        text-align: center;
    }

    .search_btn {
        border-radius: 9999px;
        background-color: #e99c15;
        color: #fff;
        border: none;
        padding: .5em 3em .7em;
        font-size: clamp(18px, 11.7391px + 1.9565vw, 36px);
        line-height: 1;
        cursor: pointer
    }

    /* hyou */
    #hyou_title {
        text-align: center;
        background-color: #df2525;
        color: #fff;
        font-size: clamp(25px, 16.3043px + 2.7174vw, 50px);
        line-height: 1;
        padding: .5em 0 .6em;
    }

    #hyou_arrow {
        text-align: center;
        margin: 0 0 2em;
    }

    #hyou_arrow img {
        margin: 0 auto;
    }

    #hyou {
        width: 90%;
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 0 5em;
    }

    #hyou ul {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        margin: 0 0 5em;
    }

    #hyou table {
        width: 100%;
        margin: 0 0 1em;
    }

    #hyou table th {
        width: calc(100%/8);
        font-size: clamp(10px, 8.6087px + 0.4348vw, 14px);
        background-color: #004299;
        text-align: center;
        color: #fff;
        border: #cccccc 1px solid;
        line-height: 1;
        padding: .5em 0;
        font-weight: bold;
    }

    #hyou table td {
        width: calc(100%/8);
        font-size: clamp(10px, 8.6087px + 0.4348vw, 14px);
        text-align: center;
        border: #cccccc 1px solid;
        padding: 2em .5em 1em;
        font-weight: bold;
        vertical-align: top;
        letter-spacing: 0;
        position: relative;

    }

    #hyou table td img {
        margin: 0 auto 1em;
    }

    #hyou table td span {
        position: absolute;
        top: .5em;
        right: .5em;
        font-size: clamp(10px, 9.3043px + 0.2174vw, 12px);
    }

    #hyou table td strong {
        color: #df2525;
        font-size: clamp(14px, 12.6087px + 0.4348vw, 18px);
    }

    #hyou table tr.osusume {
        background-color: #fff8d9;
    }

    #hyou>p {
        font-size: clamp(10px, 8.6087px + 0.4348vw, 14px);
    }

    #hyou table tr td:first-of-type {
        vertical-align: middle;
    }

    #hyou table tr td:last-of-type {
        vertical-align: middle;
    }

    #hyou table tr td:last-of-type a {
        background-color: #39af29;
        color: #fff;
        padding: .5em 1.5em;
        border-radius: 8px;
        text-decoration: none;
        border-bottom: #2c972c 5px solid;
    }

    /* box01 */
    #box01_title {
        width: 100%;
        background-color: #00459a;
        text-align: center;
        color: #fff;
        font-size: clamp(25px, 16.3043px + 2.7174vw, 50px);
        padding: .5em 0 .7em;
        line-height: 1;
    }

    #box01 {
        background-color: #f8f8f8;
        padding: 0 0 5em;
    }

    #box01_top {
        width: 90%;
        max-width: 1200px;
        margin: 0 auto;
        padding: 5em 0;
        display: flex;
        justify-content: space-between;
    }

    #box01_top article {
        background-color: #fff;
        padding: 1em 1em 2em;
        width: 32%;
        box-sizing: border-box;
        text-align: center;
        box-shadow: 10px 10px 10px 0px rgba(0, 0, 0, 0.2);
    }

    #box01_top article h3 {
        font-size: clamp(15px, 9.7826px + 1.6304vw, 30px);
        color: #ffba00;
        letter-spacing: 0;
        margin: 0 0 1em;
        min-height: 100px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    #box01_top article figure {
        margin: 0 0 2em;
    }

    #box01_top article figure img {
        margin: 0 auto;
    }

    #box01_top article p {
        font-weight: bold;
    }

    #box01_bottom {
        width: 90%;
        margin: 0 auto;
        max-width: 1200px;
        background-color: #fff;
        padding: 2em 3em;
        box-sizing: border-box;
    }

    #box01_bottom_top {
        width: 100%;
        display: flex;
        justify-content: space-between;
        margin: 0 0 3em;
    }

    #box01_bottom_top figure {
        width: 45%;
        max-width: 444px;
    }

    #box01_bottom_top_left {
        width: 52%;
        max-width: 600px;
    }

    #box01_bottom_top_left_title {
        border-bottom: #00459a 3px solid;
        margin: 0 0 1em;
        display: flex;
        align-items: center;
    }

    #box01_bottom_top_left_title h3 {
        font-size: clamp(36px, 23.4783px + 3.913vw, 72px);
        padding: 0 0 0 .3em;
        color: #00459a;
    }

    #box01_bottom_top_left h4 {
        margin: 0 0 .5em;
        font-size: clamp(18px, 11.7391px + 1.9565vw, 36px);
        color: #00459a;
    }

    #box01_bottom_top_left p span {
        color: #eb6666;
        font-weight: bold;
    }

    #box01_bottom_bottom {
        background-color: #ecf3fc;
        padding: 2em;
    }

    #box01_bottom_bottom h3 {
        font-size: clamp(15px, 9.7826px + 1.6304vw, 30px);
        color: #00459a;
        margin: 0 0 .5em;
    }

    #box01_bottom_bottom>p {
        margin: 0 0 1em;
    }

    #box01_bottom_bottom p span {
        font-weight: bold;
        color: #00459a;
    }

    #box01_bottom_bottom div {
        border-bottom: #000 1px solid;
        padding: 0 0 1.5em;
        margin: 0 0 1.5em;
    }

    #box01_bottom_bottom div h4 {
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
        margin: 0 0 .5em;
    }

    #box01_bottom_bottom>p.right {
        text-align: right;
    }

    #box01_bottom_bottom>p.right a {
        color: #da0000;
        text-decoration: none;
    }

    /* rank */
    #rank {
        padding: 5em 0;
        max-width: 1200px;
        margin: 0 auto;
        width: 100%;
    }

    #rank_main_title {
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 0 0 2em;
    }

    #rank_main_title h2 {
        font-size: clamp(25px, 16.3043px + 2.7174vw, 50px);
        padding: 0 .5em;
    }

    #rank section {
        margin: 0 0 3em;
    }

    .rank_title {
        background-color: #00459a;
        padding: 1em 2em;
        margin: 0 0 2em;
        display: flex;
        align-items: center;
    }

    .rank_title h2 {
        color: #fff;
        font-size: clamp(24px, 15.6522px + 2.6087vw, 48px);
        line-height: 1.3;
    }

    .rank_title h2 span {
        display: block;
        font-size: clamp(14px, 12.6087px + 0.4348vw, 18px);
        font-weight: 400;
    }

    .rank_title i {
        padding: 0 1em 0 0;
    }

    .rank_top {
        display: flex;
        justify-content: space-between;
        margin: 0 0 2em;
    }

    .rank_top figure {
        width: 49%;
        max-width: 595px;
    }

    .rank_top p {
        width: 49%;
        max-width: 595px;
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
    }

    .rank_top p strong {
        color: #df2525;
        background: linear-gradient(transparent 60%, #ffea00 60%);
    }

    .point {
        background-color: #ecf3fc;
        padding: 2em;
        margin: 0 0 3em;
    }

    .point h3 {
        border-bottom: #000 2px solid;
        font-size: clamp(18px, 11.7391px + 1.9565vw, 36px);
        padding: 0 0 .5em;
        margin: 0 0 1em;
    }

    .point h3 span {
        color: #00459a;
    }

    .point article {
        margin: 0 0 2em;
    }

    .point_title {
        display: flex;
        align-items: center;
        margin: 0 0 .5em;
    }

    .point_title i {
        padding: 0 1em 0 0;
    }

    .point_title h4 {
        font-size: clamp(15px, 9.7826px + 1.6304vw, 30px);
        color: #00459a;
    }

    .point article sup {
        font-size: .7em;
        vertical-align: top;
    }

    .point article p {
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
    }

    .point article p span.min {
        font-size: .8em;
    }

    .rank_btn {
        text-align: center;
        margin: 0 0 4em;
    }

    .rank_btn img {
        margin: 0 auto;
    }

    .rank_about h3 {
        border-bottom: #000 2px solid;
        font-size: clamp(18px, 11.7391px + 1.9565vw, 36px);
        padding: 0 0 .5em;
        margin: 0 0 1em;
    }

    .rank_about h3 span {
        color: #00459a;
    }

    .rank_about table {
        width: 100%;
        margin: 0 0 1em;
    }

    .rank_about table th {
        background-color: #00459a;
        color: #fff;
        font-weight: bold;
        text-align: center;
        padding: 1em 0;
        border: #cccccc 1px solid;
        vertical-align: middle;
        width: calc(100%/8);
        box-sizing: border-box;
    }

    .rank_about table td {
        text-align: center;
        padding: 1em 0;
        border: #cccccc 1px solid;
        vertical-align: middle;
        width: calc(100%/8);
        box-sizing: border-box;
    }

    .rank_about p {
        font-size: .8em;
        margin: 0 0 5em;
    }

    .cashback {
        background-color: #fffaee;
        padding: 3em;
        margin: 0 0 3em;
    }

    .cashback h2 {
        border-bottom: #000 2px solid;
        border-top: #000 2px solid;
        text-align: center;
        padding: .5em 0;
        font-size: clamp(18px, 11.7391px + 1.9565vw, 36px);
        margin: 0 0 1em;
    }

    .cashback p {
        text-align: center;
        margin: 0 0 2em;
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
        font-weight: bold;
    }

    .cashback p span {
        color: #df2525;
    }

    .cashback figure img {
        margin: 0 auto;
    }

    /* column */
    #column_title {
        width: 100%;
        background-color: #00459a;
        text-align: center;
        color: #fff;
        font-size: clamp(25px, 16.3043px + 2.7174vw, 50px);
        padding: .5em 0 .7em;
        line-height: 1;
    }

    #column {
        background-color: #f8f8f8;
        padding: 5em 0;
        margin: 0 0 5em;
    }

    #column>div {
        width: 90%;
        max-width: 1200px;
        margin: 0 auto;
        overflow-x: auto;
    }

    #column div div {
        display: flex;
        gap: 3%;
        flex-wrap: nowrap;
        padding: 0 0 3em;
    }

    #column div div article {
        flex: 0 0 380px;
        background-color: #fff;
        padding: 1em;
        box-sizing: border-box;
    }

    #column div div article figure {
        margin: 0 0 1em;
    }

    #column div div article a {
        color: #000;
        text-decoration: none;
        text-align: center;
    }

    #column div div article h3 {
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
        letter-spacing: 0;
    }

    /* osusume */
    #osusume {
        max-width: 1200px;
        width: 100%;
        margin: 0 auto;
    }

    #osusume_title {
        max-width: 1200px;
        width: 100%;
        margin: 0 auto 3em;
        padding: 4px 0;
        background-color: #00459a;
    }

    #osusume_title h2 {
        border-bottom: #fff 2px solid;
        border-top: #fff 2px solid;
        text-align: center;
        color: #fff;
        padding: .5em 0;
        font-size: clamp(25px, 16.3043px + 2.7174vw, 50px);
    }

    #arrow {
        margin: 0 0 3em;
    }

    #arrow img {
        margin: 0 auto;
    }

    #osusume article {
        display: flex;
        justify-content: space-between;
        margin: 0 0 2em;
    }

    #osusume_left {
        width: 49%;
        max-width: 595px;
    }

    #osusume_left figure {
        margin: 0 0 1em;
    }

    #osusume_right {
        width: 49%;
        max-width: 595px;
    }

    #osusume_right table {
        width: 100%;
        margin: 0 0 1em;
    }

    #osusume_right table th {
        width: 45%;
        background-color: #00459a;
        border: #ccc 1px solid;
        text-align: center;
        color: #fff;
        vertical-align: middle;
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
        padding: 1em .5em;
        box-sizing: border-box;
    }

    #osusume_right table th span {
        font-size: .7em;
    }

    #osusume_right table td {
        width: 55%;
        border: #ccc 1px solid;
        vertical-align: middle;
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
        padding: 1em .5em;
        box-sizing: border-box;
    }

    #osusume_right table td sup {
        font-size: .7em;
        vertical-align: top;
    }

    #osusume_right p {
        font-size: .8em;
    }

    #osusume_box {
        background-color: #fffaee;
        padding: 8em 2em 2em;
        margin: 0 0 5em;
        position: relative;
    }

    #osusume_box h3 {
        background-color: #00459a;
        position: absolute;
        left: 0;
        top: 2em;
        color: #fff;
        padding: .5em 2em;
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
    }

    #osusume_box p {
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
        line-height: 2;
    }

    #osusume_box p strong {
        color: #df2525;
    }

    #osusume_box p sup {
        font-size: .7em;
        vertical-align: top;
    }

    #osusume_box p span.min {
        font-size: .7em;
        display: block;

    }


    /* footer */
    footer {
        background-color: #00459a;
        text-align: center;
        padding: 2em 0 3em;
        color: #fff;
    }

    footer p {
        margin: 0 0 1em;
    }

    footer a {
        color: #fff;
        text-decoration: none;
    }

    /* sub */
    #sub {
        width: 90%;
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 0 8em;
    }

    #sub h2 {
        background-color: #00459a;
        color: #fff;
        font-size: clamp(15px, 9.7826px + 1.6304vw, 30px);
        padding: .5em 1em;
        margin: 0 0 1em;
    }

    #sub h3 {
        border-bottom: #00459a 2px solid;
        font-size: clamp(15px, 9.7826px + 1.6304vw, 30px);
        padding: 0 0 .5em;
        margin: 2em 0 1em;
    }

    #sub h4 {
        border-left: #00459a 5px solid;
        font-size: clamp(15px, 9.7826px + 1.6304vw, 30px);
        padding: 0 0 0 .5em;
        margin: 2em 0 1em;
    }

    #sub h3 span {
        font-size: .7em;
    }

    #sub p {
        margin: 1em 0 3em;
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
        letter-spacing: 0;
        line-height: 2;
    }

    .anq01,
    .anq02,
    .anq03 {
        width: 100%;
        margin: 0 0 2em;
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
    }

    .anq01 th {
        padding: .5em 1em;
        background: #f8f8f8;
        border: #ccc 1px solid;
        text-align: left;
        width: 30%;
        box-sizing: border-box;
        font-weight: bold;
    }

    .anq01 td {
        padding: .5em 1em;
        border: #ccc 1px solid;
        text-align: left;
        width: 70%;
        box-sizing: border-box;
    }

    .anq02 th {
        padding: .5em 1em;
        background: #f8f8f8;
        border: #ccc 1px solid;
        text-align: left;
        width: 70%;
        box-sizing: border-box;
        font-weight: bold;
    }

    .anq02 td {
        padding: .5em 1em;
        border: #ccc 1px solid;
        text-align: left;
        width: 30%;
        box-sizing: border-box;
    }

    .anq03 th {
        padding: .5em 1em;
        background: #f8f8f8;
        border: #ccc 1px solid;
        text-align: left;
        width: calc(100%/5);
        box-sizing: border-box;
        font-weight: bold;
        text-align: center;
        vertical-align: middle;
    }

    .anq03 td img {
        margin: 0 auto;
        width: 30%;
    }

    .anq03 td {
        padding: 1em;
        border: #ccc 1px solid;
        text-align: left;
        width: calc(100%/5);
        box-sizing: border-box;
        text-align: center;
    }

    .company {
        width: 100%;
        margin: 0 0 5em;
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
    }

    .company th {
        padding: .5em 1em;
        background: #f8f8f8;
        border: #ccc 1px solid;
        text-align: left;
        width: 30%;
        box-sizing: border-box;
        font-weight: bold;
    }

    .company td {
        padding: .5em 1em;
        border: #ccc 1px solid;
        text-align: left;
        width: 70%;
        box-sizing: border-box;
    }

    #sub ul {
        margin: -2em 0 0;
        padding: 0 0 0 1em;
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
    }


.column_table {
        width: 100%;


}

    .column_table td {
        padding: .5em 1em;
        border: #ccc 1px solid;
        box-sizing: border-box;
    }

    .column_table th {
        padding: .5em 1em;
        background: #f8f8f8;
        border: #ccc 1px solid;
        box-sizing: border-box;
        font-weight: bold;
        text-align: center;
        vertical-align: middle;
    }
    
    
    #sub dt {
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
        letter-spacing: 0;
        line-height: 2;
            font-weight: bold;
    }
        #sub dd {
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
        letter-spacing: 0;
        line-height: 2;
    }
    #sub ol {
        font-size: clamp(18px, 15.913px + 0.6522vw, 24px);
        letter-spacing: 0;
        line-height: 2;
    }
    
    
/*検索結果
------------------------------*/
#wrapper {
    width: 1080px;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 0 0 3em;
}

#search_page_title {
    width: 100%;
    background: #004299;
    text-align: center;
    color: #fff;
    padding: 10px 0;
    font-size: 25px;
    margin: 0 0 30px;
    font-weight: normal;
}

.search_box_top {
    border: solid 3px #ccc;
    padding: 3%;
    margin: 0 0 5%;
    background: #fff;
}

.search_box_top p {
    display: inline-block;
    margin: 0 2% 0 0;
}

.sort_btn {
    margin: 0 0 1em;
    	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.sort_btn li{
background: #fff;
    border: #ccc 1px solid;
    padding: 0.5em;
    text-align: center;
    width: calc((100%/4) - 30px);
    border-radius: 5px;
}

#search_table {
    width: 100%;
}

#search_table th {
    background-color: #ccc;
    border: #e0e0e0 1px solid;
    padding: 1em 0;
    font-weight: bold;
text-align: center;
    font-size: 12px;
    vertical-align: middle;
}

#search_table td {
background-color: #fff;
    border: #e0e0e0 1px solid;
    padding: 1em;
    box-sizing: border-box;
    font-weight: bold;
    font-size: 12px;
    text-align: center;
    vertical-align: middle;
}

#search_table td img {
    width: auto;

}

#search_table td a {
    background: #ff8400;
    padding: 2% 0;
    text-align: center;
    color: #fff;
    border: none;
    border-radius: 5px;
    border-bottom: solid 4px #cb6e0a;
    text-decoration: none;
    display: block;
    box-sizing: border-box;
    font-size: 14px;
}

#search_table td img{
  margin: 0 auto;

}
.sort {
  border: solid 1px #ccc;
  border-radius: 5px;
  font-size: 18px;
  color: #545454;
  padding: 1%;
  margin: 0 0 3% 0;
}
#search_wrapper {
    width: 1080px;
  margin: 0 auto 3em;
}

    /*スマホ
------------------------------*/

    @media screen and (max-width: 750px) {
        .pc {
            display: none;
        }

        .sp {
            display: block;
        }

        /* header */

        header img {
            margin: 0 auto;
            width: 50%;
        }

        header p {
            width: 50px;
            top: 1em;
            right: 1em;
            font-size: 10px;
        }

        /* search */
        #search {
            width: 90%;
        }

        #search_title {
            font-size: 24px;
            gap: 1em;
        }

        #search table th {
            width: 100%;
            display: block;
        }

        #search table td {
            width: 100%;
            display: block;
        }

        /* hyou */
        #hyou_title {
            line-height: 1.3;
            padding: .5em 1em .6em;
        }


        #hyou_arrow img {
            width: 70px;
        }

        #hyou ul {
            flex-wrap: wrap;
            justify-content: center;
            margin: 0 0 1em;
            gap: 1em;
        }

        #hyou ul li {
            width: 30%;
            margin: 0 0 1em;
        }

        #sp_table {
            width: 100%;
            overflow-x: auto;
        }

        #hyou table {
            width: 800px;
            margin: 0 0 1em;
        }


        #hyou table td img {
            width: 50px;
        }
    #hyou table td strong {
        color: #df2525;
        font-size: 12px;
    }
        #hyou table tr td:first-of-type img {
            width: 100%;
        }

        #hyou>p {
            padding: 1em 0 0;
        }

        /* box01 */
        #box01 {
            padding: 0 0 2em;
        }

        #box01_top {
            margin: 0 auto;
            padding: 3em 0;
            flex-direction: column;
        }

        #box01_top article {
            width: 100%;
            box-shadow: 5px 5px 5px 0px rgba(0, 0, 0, 0.2);
            margin: 0 0 1em;
            display: flex;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;
            padding: 1em;
        }

        #box01_top article h3 {
            font-size: 18px;
            margin: 0 0 .5em;
            min-height: auto;
            width: 100%;
        }

        #box01_top article figure {
            margin: 0;
            width: 20%;
            padding: 0 1em 0 0;
        }

        #box01_top article p {
            text-align: left;
        }

        #box01_bottom {
            padding: 1em;
        }

        #box01_bottom_top {
            flex-direction: column;
        }

        #box01_bottom_top figure {
            width: 100%;
        }

        #box01_bottom_top_left {
            width: 100%;
        }

        #box01_bottom_top_left_title {
            border-bottom: #00459a 1px solid;
            padding: 0 0 .5em;
        }

        #box01_bottom_top_left_title img {
            width: 36px;
        }

        #box01_bottom_bottom {
            padding: 1em;
        }

        #box01_bottom_bottom h3 {
            font-size: 18px;
            text-align: center;
        }

        #box01_bottom_bottom div {
            padding: 0 0 1em;
            margin: 0 0 1em;
        }

        #box01_bottom_bottom div h4 {
            font-size: 16px;
            margin: 0;
        }

        /* rank */
        #rank {
            padding: 3em 0;
        }

        #rank_main_title {
            margin: 0 auto 2em;
            width: 90%;
            align-items: flex-end;
        }

        #rank_main_title h2 {
            font-size: 21px;
            text-align: center;
        }


        .rank_title {
            padding: 1em;
            margin: 0 0 1em;
        }


        .rank_title h2 span {
            font-size: 10px;
        }

        .rank_title i {
            width: 15%;
        }

        .rank_top {
            flex-direction: column;
            margin: 0 auto 2em;
            width: 90%;
        }

        .rank_top figure {
            width: 100%;
            margin: 0 0 1em;
        }

        .rank_top p {
            width: 100%;
            font-size: 16px;
        }

        .point {
            padding: 1em;
            margin: 0 0 2em;
        }

        .point h3 {
            border-bottom: #000 1px solid;
        }

        .point_title i {
            padding: 0 .5em 0 0;
            width: 24px;
        }

        .point_title h4 {
            font-size: 18px;
            color: #00459a;
        }


        .point article p {
            font-size: 14px;
        }

        .rank_btn {
            text-align: center;
            margin: 0 auto 4em;
            width: 90%;
        }

        .rank_about h3 {
            border-bottom: #000 1px solid;
            margin: 0 auto 1em;
            width: 90%;
        }

        .rank_about table {
            width: 90%;
            margin: 0 auto .5em;
        }

        .rank_about table th {

            font-size: 10px;
        }

        .rank_about table td {
            font-size: 10px;
        }

        .rank_about p {
            margin: 0 auto 2em;
            width: 90%;
        }

        .cashback {
            padding: 2em 1em;
            margin: 0 0 2em;
        }

        .cashback h2 {
            border-bottom: #000 1px solid;
            border-top: #000 1px solid;
        }

        .cashback p {
            margin: 0 0 1em;
            font-size: 16px;
        }

        /* column */
        #column_title {
            padding: .5em 1em .7em;
            line-height: 1.5;
            box-sizing: border-box;
        }

        #column {
            padding: 2em 0;
            margin: 0 0 3em;
        }

        #column div div {
            padding: 0 0 1em;
        }

        #column div div article {
            flex: 0 0 250px;
        }

        #column div div article figure {
            margin: 0 0 1em;
        }


        #column div div article h3 {
            font-size: 16px;
        }

        /* osusume */
        #osusume_title {
            margin: 0 auto 2em;
        }

        #osusume_title h2 {
            padding: .5em 1em;
        }

        #arrow {
            margin: 0 auto 2em;
            width: 80%;
        }

        #arrow img {
            margin: 0 auto;
        }

        #osusume article {
            flex-direction: column;
            margin: 0 auto 2em;
            width: 90%;
        }

        #osusume_left {
            width: 100%;
        }


        #osusume_right {
            width: 100%;
        }

        #osusume_right table th {
            font-size: 14px;
        }


        #osusume_right table td {
            font-size: 14px;
        }

        #osusume_box {
            padding: 6em 1em 2em;
        }

        #osusume_box h3 {
            top: 1em;
        }

        #osusume_box p {
            font-size: 16px;
            line-height: 1.8;
        }

        /* footer */
        footer {
            padding: 2em 1em 3em;
        }

        footer p {
            margin: 0 0 1em;
            font-size: 12px;
        }

        /* sub */
        #sub {
            padding: 0 0 3em;
        }


        #sub p,#sub dt,#sub dd,#sub ol {
            font-size: 14px;
            line-height: 1.8;
        }

        .anq01,
        .anq02,
        .anq03 {
            width: 100%;
            margin: 0 0 0em;
            font-size: 12px;
        }

        .anq01 th {
            width: 35%;
        }

        .anq01 td {
            width: 65%;
        }


        .anq03 th {
            font-size: 10px
        }

        .anq03 td img {
            width: 50%;
        }

        .anq03 td {
            font-size: 10px;
        }

        .company {
            width: 100%;
            margin: 0 0 5em;
            font-size: 12px;
        }


        #sub ul {
            margin: -2em 0 0;
            padding: 0 0 0 1em;
            font-size: 14px;
        }
        

    /*検索結果
------------------------------*/
    #wrapper {
        width: 100%;
        background: #f8f8f8;
        padding: 5% 3%;
        box-sizing: border-box;
        margin: 0 auto;
    }

    #search_page_title {
        width: 100%;
        background: #004299;
        text-align: center;
        color: #fff;
        padding: 3% 0;
        font-size: 18px;
        margin: 0 0 3%;
        font-weight: normal;
    }

    .search_box_top {
        border: solid 3px #ccc;
        padding: 3%;
        margin: 0 0 5%;
        background: #fff;
    }

    .search_box_top p {
        display: block;
        margin: 0 2% 0 0;
    }

    .sort {
        border: solid 1px #ccc;
        border-radius: 3px;
        font-size: 12px;
        padding: 1%;
        margin: 0 0 3% 0;
    }

    .sort_box {
        width: 100%;
        overflow-x: scroll;
    }

    #search_table {
        width: 640px;
    }

    #search_table th {
        border: solid 1px #ccc;
        background: #f8f8f8;
        padding: 1%;
        text-align: center;
        vertical-align: middle;
        box-sizing: border-box;
        font-size: 8px;
    }

    #search_table td {
        border: solid 1px #ccc;
        padding: 1%;
        text-align: center;
        vertical-align: middle;
        box-sizing: border-box;
        font-size: 8px;
        background: #fff;
    }

    #search_table td img {
        width: auto;

    }

    #search_table td a {
        background: #ff8400;
        padding: 2% 0;
        text-align: center;
        color: #fff;
        border: none;
        border-radius: 3px;
        border-bottom: solid 2px #cb6e0a;
        text-decoration: none;
        display: block;
        box-sizing: border-box;
        font-size: 9px;
    }
    
    #search_wrapper {
    width: 90%;
  margin: 0 auto 3em;
}
    }