/* カード一覧設定↓↓ */
.purpose-list-container {
    display: flex;
    padding: 10px 10px;
    width: fit-content;
}

.purpose_list {
    flex: 1;
    margin: 10px;
}


.purpose_list_attention {
    font-weight: bold;
    margin: 12px 0px;
}

.purpose_list_title {
    display: inline-flex;
    align-items: center;
    color: #0099ff;
    font-weight: bold;
    font-size: 20px;
    margin-top: 12px;
}

.util-color--main.bussinesscard_pc_only {
    font-weight: bold;
}

.purpose_list_link:hover .purpose_list_img {
    opacity: 0.6;
}

.purpose_list_link:hover .purpose_list_title {
    text-decoration: underline;
}

/* 吹き出し部分テキスト */
.purpose_list_head {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0px 10px;
}

.purpose_list_title::after {
    display: inline-block;
    position: relative;
    border-top: 2px solid;
    border-right: 2px solid;
    vertical-align: middle;
    content: "";
    cursor: pointer;
    width: 8px;
    height: 8px;
    transform: rotate(45deg);
    margin-left: 10px;
}

/* カード一覧↑ */


/* 吹き出し↓ */
.purpose_list_head {
    position: relative;
    margin-bottom: 20px;
    border: 2px solid #000000;
    border-radius: 40px;
    background-color: #ffff54;
    color: #000000;
    font-weight: bold;
}

.purpose_list_head::before {
    content: "";
    position: absolute;
    bottom: -0.3px;
    left: 50%;
    border-style: solid;
    border-width: 15px 10.5px 0 10.5px;
    border-color: #000000 transparent transparent;
    translate: -50% 100%;
}

.purpose_list_head::after {
    content: "";
    position: absolute;
    bottom: 0.5px;
    left: 50%;
    border-style: solid;
    border-width: 11.5px 8.1px 0 8.1px;
    border-color: #ffff54 transparent transparent;
    translate: -50% 100%;
}

/* 吹き出し ↑*/

/* 基本情報設定↓ */
.basicgrid {
    padding: 0px 0px;
    display: grid;
    column-gap: 12px;
    grid-template-columns: repeat(4, 1fr);
    border: none;

}

.basicgrid>div {
    background-color: #0099ff;
    padding: 10px;
    border: solid #0099ff;
    border-bottom: none;
    border-radius: 20px 20px 0 0;
    text-align: center;
}

.basicgrid>div:nth-child(n+5) {
    border-radius: 0;
    border-color: #dddddd;
    border-width: 0 2px 0;
    background-color: white;
}

.basicgrid>div:nth-child(n+29) {
    border-bottom: solid 2px #dddddd;
    border-radius: 0 0 20px 20px;
}

.gridinner {
    border-bottom: solid 1px #dddddd;
    padding: 0 0 10px 0;
}

/* 表内詳細設定 */
.gridtext_basic {
    font-size: 12px;
}

.gridtype-company {
    display: flex;
    justify-content: center;
}

.type-company__img img {
    max-height: 35px;

}

.gridtext_head {
    color: #ffffff;
    font-size: 20px;
    padding: 30px 5px;
    font-weight: bold;
}

.gridtext_head>span {
    color: #0099ff;
    font-size: 12px;
    background-color: #ffffff;
    border-radius: 3px;
    padding: 2px 20px;
}

/* ご利用枠 */
.gridtext_use_card {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 60px;
    font-size: 18px;
    font-weight: bold;
}

/* 還元率 */
.gridtext_turn {
    line-height: 70px;
    height: 70px;
    font-size: 18px;
    font-weight: bold;
}

.gridtext_turn>span {
    font-size: 12px;
}

.gridtext_turn_br {
    display: flex;
    flex-direction: column;
    height: 70px;
    font-size: 18px;
    font-weight: bold;
}

.gridtext_turn_br>div {
    font-size: 12px;
}


/* 年会費セクションの基本レイアウト↓ */
.gridinner_year {
    flex-direction: column;
    padding: 0px 5px;
    /* height: 110px; */
}
/* 年会費セクションのレイアウト20250512修正」追加↓ */
.gridinner_year {
    height: 128px;
}

/* スタンダードとゴールドを横並びにする */
.gridinner_boxes {
    display: flex;
    gap: 10px;
    text-align: center;
}



/* 各ボックスのスタイル */
.gridinner_box {
    flex: 1;
    flex-direction: column;
    text-align: center;

}

/* スタンダード年会費 */
.gridtext_two_boxes_standard {
    font-size: 12px;
    font-weight: bold;
    background-color: #cccccc;
    border-radius: 3px;
    margin: 8px 0px;
    padding: 1px;
}

/* ゴールド年会費 */
.gridtext_two_boxes_gold {
    font-size: 12px;
    font-weight: bold;
    background-color: #e6cf73;
    border-radius: 3px;
    margin: 8px 0px;
    padding: 1px;
}

.gridinner_box>div {
    font-weight: bold;
    font-size: 18px;
    line-height: 100%;
}

.standard_center {
    display: inline-flex;
    align-items: center;
    /* 縦方向の中央揃え */
    height: 60%;
    /* 必要に応じて調整 */
}

.year_text_center {
    margin-top: 50px;
}

.gold-text {
    display: flex;
    flex-direction: column;
}

/* 追加カード */
.gridinner_plusheight {
    width: 100%;
    padding: 5px;
    height: 85px;
}

.gridinner_textbox {
    padding: 5px 0;
}

.left-textbox {
    text-align: left;
    margin: 0;
    font-size: 12px;
    font-weight: bold;
}

.center-textbox {
    text-align: center;
    margin: 0;
    font-size: 12px;
    font-weight: bold;
}

.right-textbox {
    text-align: right;
    margin: 0;
    font-size: 10px;
    font-weight: bold;
}

.gridinner_insurance {
    height: 110px;
}

.insurance_text_center {
    margin-top: 30px;
}

.gridinner_box .insurance_smalltext {
    font-size: 12px;
    margin-top: 10px;
    font-weight: bold;
}

.gridinner_insurance .insurance_smalltext {
    font-size: 12px;
    margin-top: 10px;
    font-weight: bold;
}

.airport_text_center {
    margin-top: 15px;
}



/* 基本情報レイアウト */

/* カードデザイン */
.bussinesscard-list_flex {
    display: flex;
    justify-content: center;
    gap: 60px;
    max-height: 420px;
    margin: 30px 0 150px 0;
}

.bussinesscard {
    width: 320px;
}

.bussinesscard {
    display: flex;
    flex-direction: column;
    align-items: center;
    box-sizing: border-box;
}

.bussinesscard-list__head img,
.bussinesscard-list__image img {
    max-width: 206px;
    margin-bottom: 10px
}

.bussinesscard-list__footer {
    display: flex;
    padding-top: 10px;
    gap: 10px;
}

.bussinesscard-list__footer img {
    max-width: 50px;
}


/* その他のサービス */
.type-service>div {
    width: 130px;
    height: 66px;
    text-align: center;
    line-height: 1.3;

}

.type-service>div {
    border-right: 1px solid #dddddd;
}


.type-service>div:first-child {
    border-left: 1px solid #dddddd;
}

.type-service>div:last-child {
    border-right: 1px solid #dddddd;
}

.type-service-year {
    font-size: 12px;
    margin: 0;
}

.type-service-zero {
    font-size: 36px;
    margin: 8px;
    font-weight: bold;
}

.type-service-yen {
    font-size: 16px;
    font-weight: bold;
}

.type-service-cash {
    font-size: 16px;
    font-weight: bold;
    margin-top: 10px;
}


.bussinesscard_sp_only {
    display: none;
}



/* タブ用用SP表示 */
/* SP用 - デフォルトで非表示、activeクラスがついたもののみ表示 */
@media only screen and (max-width: 767px) {

    /* カード一覧 */
    /* 基本情報 */
    /* タブ */
    .tab__card_button.js-bussinesscard__tabs__trigger {
        display: flex;
        position: relative;
        align-items: center;
        justify-content: center;
        height: 100%;
        overflow: hidden;
        border-top: 2px solid #0099ff;
        border-right: 2px solid #0099ff;
        border-left: 2px solid #0099ff;
        border-radius: 12px 12px 0 0;
        color: #0099ff;
        font-weight: 700;
        line-height: 1.4;
        text-align: center;
        padding: .6em;
        font-size: 1.3rem;
    }

    .tab__card_button.js-bussinesscard__tabs__trigger:hover {
        background-color: #46b5ff;
        color: #ffffff;
    }

    .tab__card_button.js-bussinesscard__tabs__trigger.button_active {
        background-color: #0099ff;
        color: #ffffff;
    }


    a:active {
        color: #000;
        text-decoration: none;
    }

    .tab-content .tab-item {
        display: none;
    }

    .tab-content .active {
        display: block;
    }

    .basicgrid {
        padding: 0px 0px;
        display: block;
    }

    .bussinesscard_pc_only {
        display: none;
    }

    .bussinesscard_sp_only {
        display: block;
    }

    .purpose-list-container {
        margin: 0 auto;
    }

    .purpose_list_attention {
        text-align: center;
    }

    .basicgrid>div {
        background-color: #ffffff;
        padding: 0px;
        font-size: 14px;
    }

    .gridtext_head.tab-item {
        color: #000000;
        padding: 10px;
        margin: 10px;
    }

    .gridtext_head.tab-item div:nth-child(1) {
        font-size: 14px;
        font-weight: 400;
        margin-bottom: 10px;
    }

    .gridtext_head>span {
        color: #000000;
        font-size: 14px;
        background-color: #ffffff;
        padding: 0;
        margin: 10px 10px;
    }

    .gridtext_basic {
        font-size: 14px;
    }

    .type-company__img img {
        max-height: 32px;
    }

    .gridinner_boxes {
        gap: 20px;
        padding: 0 0px;
    }

    .basicgrid>div {
        background-color: #ffffff;
        margin: 10px 0px;
        border-top: solid 1px #cccccc;
        border-bottom: solid 1px #cccccc;
        border-left: none;
        border-right: none;
        border-radius: 0;
    }

    .purpose_list_attention {
        margin-bottom: 0;
    }

    .basicgrid>div:nth-child(n+29) {
        border-bottom: none;
        margin-bottom: 40px;
    }

    .gridtext_use_card {
        height: 50px;
    }

    .gridtext_turn>span {
        font-size: 10px;
    }

    .gridtype-company {
        margin-top: 5px;
    }

    .gridtext_turn {
        line-height: 40px;
        height: 40px;
    }

    .gridinner_box>div {
        font-size: 14px;
    }

    .center-textbox {
        margin-top: 5px;
        font-size: 10px;
    }

    .left-textbox {
        font-size: 14px;
    }


    .gridinner_insurance {
        height: auto;
    }


    .util-color--main.bussinesscard_sp_only,
    .purpose_list_title.bussinesscard_sp_only {
        text-align: center;
        font-size: 16px;
    }

    .util-color--main.bussinesscard_sp_only {
        font-size: 14px;
        font-weight: bold;
    }


    .tab .tab__button:hover {
        /* border-color: #46b5ff; */
        background-color: #46b5ff;
        color: #fff;
    }

    .gridinner_plusheight {
        width: 330px;
        max-width: 90%;
        margin: auto;
    }

    .gridinner_plusheight {
        height: auto;
    }

    .gridinner_year {
        height: auto;
    }

    .center-textbox.center_SP_textbox {
        font-size: 14px;
    }

    .gridinner_insurance .insurance_smalltext {
        font-size: 14px;
    }





    /* カードデザイン */
    /* SP表示 */
    .bussinesscard-list_flex {
        justify-content: center;
        gap: 15px;
        margin-bottom: 70px;
    }

    .bussinesscard {
        width: 150px;
    }

    .bussinesscard-list__head img,
    .bussinesscard-list__image img {
        width: 123px;
    }

    .bussinesscard-list__footer {
        gap: 0px;
    }

    .bussinesscard-list__footer img {
        max-width: 40px;
    }

    .year_text_center {
        margin: 10px;
    }

    .insurance_text_center {
        margin: 10px;
    }




    /* その他のサービス */
    /* SP表示 */
    .type-service>div {
        width: 110px;
        height: 50px;
        margin-top: -10px;
    }

    .type-service-year {
        font-size: 10px;
    }

    .type-service-zero {
        font-size: 28px;
        margin: 0px;
    }

    .type-service-cash {
        font-size: 14px;
    }

    .card-list-wrap .card-list {
        border-bottom: none;
        margin-bottom: 50px;
    }

    .card-list__lead.card-list__lead_textleft {
        text-align: left;
        max-width: 400px;
        margin: 0 auto;
        padding: 10px;
    }


}