html {
    scroll-behavior: smooth; /* スムーズスクロールを有効にする */
}

body {
    width: 100%;
    height: 100vh;
    /*height:2000px;*/
    /*position: fixed;*/
    top: 0;
    left: 0;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
}

button, input, textarea {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
}

.sp-hidden {
    display: block;
}
.scale_info {
    font-size: 15px;
    vertical-align: middle;
}

table .sp-hidden {
    display: table-row;
}

.pc-hidden {
    display: none;
}

.wrap {
    overflow-y: auto;
    /*overflow-y: scroll;*/
    height: 100vh;
    background: url(../images/bg_new.png) no-repeat top/cover;
    padding-bottom: 120px;
}
.sub-wrap {
    overflow-y: auto;
    /*overflow-y: scroll;*/
    height: 100vh;
    /*background: url(../images/bg.png) no-repeat top/cover;*/
    padding-bottom: 120px;
}
    .sub-wrap .sub-back-top {
        position: fixed;
        right: 39px;
        top: 100px;
    }

.fixed-header {
    border-collapse: collapse;
    table-layout: fixed;
}

    .fixed-header th {
        background-color: #fff; /* 背景色を設定 */
        border: 1px solid #ccc;
    }

.highlight {
    background-color: #feebeb; /* 任意の色 */
}

.hilighttxt {
    background-color: yellow; /* 背景に色をつける */
    padding: 0 4px; /* 文字の周囲に少し余白 */
}

.marker-style {
    background: linear-gradient(transparent 60%, #ffff99 60%);  /*マーカー風*/
}

ruby {
    display: ruby !important;
    white-space: nowrap !important;
    /*ruby-position: over;*/
}

rt {
    font-size: 0.8em;
    line-height: 1;
    vertical-align: top;
    margin-left: 0;
    margin-right: 0;
    /*text-align: center;
    white-space: nowrap;
    display: ruby-text;*/
}

rp {
    display: none;
}

@media screen and (max-width: 768px) {
    ruby {
        display: ruby !important;
        white-space: nowrap !important;
        float: none;
        position: static;
        /*ruby-position: over;*/
    }

    rt {
        display: ruby-text !important;
        float: none;
        position: static;
        font-size: 0.7em; /* スマホでも見やすいサイズに調整 */
        line-height: 1; /* 行間を詰める */
        vertical-align: top; /* ルビを漢字の上に配置 */
    }

    rp {
        display: none;
    }
}

    @supports not (ruby-position: over) {
        ruby rt {
            position: absolute;
            top: -1em; /* 必要に応じて調整 */
        }
    }

    @media screen and (max-width: 768px) {
        .sub-wrap {
            overflow-y: auto;
            /*overflow-y: scroll;*/
            height: 100vh;
            /*background: url(../images/bg.png) no-repeat top/cover;*/
            padding-bottom: 120px;
        }

            .sub-wrap .sub-back-top {
                position: fixed;
                right: 29px;
                top: 80px;
            }

                .sub-wrap .sub-back-top img {
                    width: 50px;
                    height: 50px;
                }
    }


    /*ruby {
        display: inline-block;
        white-space: nowrap;
    }*/

    img.w100 {
        max-width: 100%;
        height: auto;
    }

    .fs-36 {
        font-size: 36px;
        line-height: 50px;
    }

    .c-red {
        color: #FF0000;
    }

    header .btn-back {
        position: relative;
        top: 33px;
        right: 40px;
        height: 49px;
        border-radius: 24.5px;
        background: #fff;
        display: flex;
        justify-content: center;
        align-items: center;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: bold;
        font-size: 15px;
        text-align: center;
        color: #222;
        max-width: 240px;
        width: 100%;
        margin-left: auto;
        padding-left: 27px;
    }

        header .btn-back:before {
            content: "";
            background: url(../images/left.svg) no-repeat center/contain;
            width: 18px;
            height: 13px;
            position: absolute;
            top: 0;
            bottom: 0;
            margin: auto;
            left: 21px;
        }

    header .sp_logo{
        position: relative;
        top: 120px;
        /*left: 0;*/
        left: 50%;
        transform: translate(-50%, -50%); /* 50% 移動して中央に配置 */
        margin-left:0;
        max-width:350px;
        width:100%;
        padding-left:40px;
        padding-top:8px;
        height:65px;
        background-color: #FFF;
        border-radius: 10px;
        box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
    }
        header .sp_logo img {
            width: 280px;
            height: 50px;
        }

@media screen and (max-width: 768px) {
    header .banner-link {
        display: flex;
        justify-content: center; /* 子要素を横方向で中央揃え */
        align-items: center; /* 子要素を縦方向で中央揃え */
    }

        header .banner-link .sp_logo {
            position: absolute;
            /*position: static;*/
            left: 50%;
            transform: translate(-50%, -50%); /* 50% 移動して中央に配置 */
            /*top: 25.853vw !important;*/ /*150px;*/
            /*left: 20.256vw;*/
            right: auto;
            margin-left: 0;
            font-size: 2.326vw;
            max-width: 62.326vw;
            padding-left: 5.628vw;
            padding-top: 3.513vw;
            height: 15.605vw;
            border-radius: 10px;
            width: 100%;
            background-color: #FFF;
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
        }

            header .banner-link .sp_logo img {
                /*display:block;*/
                width: 198px;
                height: 35px;
            }
}

@media (max-width: 1024px) and (orientation: landscape){
    header .banner-link {
        display: flex;
        justify-content: center; /* 子要素を横方向で中央揃え */
        align-items: center; /* 子要素を縦方向で中央揃え */
    }

    header .banner-link .sp_logo {
        position: relative;
        top: 200px;
        /*left: 0;*/
        left: 50%;
        transform: translate(-80%, -50%); /* 50% 移動して中央に配置 */
        margin-left: 0;
        max-width: 460px;
        width: 100%;
        padding-left: 40px;
        padding-top: 10px;
        height: 85px;
        background-color: #FFF;
        border-radius: 10px;
        box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
        margin-bottom: -60px;
    }

        header .banner-link .sp_logo img {
            width: 392px;
            height: 70px;
        }
}


.tooltip-container {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 16px;
}

.tooltip-container-fortoken {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12px;
}

.tooltip {
    position: relative;
    cursor: pointer;
    display: inline-block;
}

.tooltip-text {
    visibility: hidden;
    opacity: 0;
    width: max-content;
    max-width: 300px;
    background-color: #333;
    color: #fff;
    text-align: left;
    padding: 8px;
    border-radius: 6px;
    position: absolute;
    z-index: 100;
    top: 120%;
    left: 50%;
    transform: translateX(-50%);
    transition: opacity 0.3s ease;
    font-size: 13px;
    line-height: 1.4;
}

.tooltip:hover .tooltip-text {
    visibility: visible;
    opacity: 1;
}


/*header .sp_logo {
    position: absolute;
    top: 25.853vw !important;
    left: 20.256vw;
    right: auto;
    margin-left: 0;
    font-size: 2.326vw;
    max-width: 62.326vw;
    padding-left: 5.628vw;
    padding-top: 1.713vw;
    height: 11.605vw;
    border-radius: 5.698vw;
    width: 100%;
    background-color: #FFF;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
}*/
.contents-wrapper {
    position: relative;
    left: 0;
    right: 0;
    /*top: 120px;*/
    top: 80px;
    max-width: 725px;
    width: 90%;
    margin: auto;
    height: auto;
    padding-bottom: 120px;
}

    .contents {
        background-color: #FFF;
        border-radius: 10px;
        box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
    }

        .contents .inner {
            max-width: 600px;
            width: 100%;
            margin: auto;
            height: auto;
            padding-top: 50px;
            /*padding-top: 100px;*/
            border-radius: 10px;
            padding-bottom: 20px;
            /*padding-bottom: 59px;*/
        }

            .contents .inner.layout2 {
                padding-top: 15px;
                padding-bottom: 21px;
                border-radius: 10px 10px 0 0;
            }

            .contents .inner .logo {
                text-align: center;
                margin-bottom: 20px;
            }

            .contents .inner .main-ttl {
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                /*font-size: 40px;*/
                font-size: 30px;
                line-height: 58px;
                text-align: center;
                color: #222;
                margin-bottom: 28px;
            }

    .spacer {
        height: 50px;
    }

    .test-guide {
        display: flex; /* 子要素を横並びにする */
        flex-wrap: wrap; /* 子要素が親要素を超える場合に折り返し */
        justify-content: center; /* 子要素を横方向で中央揃え */
        align-items: center; /* 子要素を縦方向で中央揃え */
        gap: 5px; /* 文字と画像の間にスペースを追加 */
        border: 2px solid #ccc; /* 枠線の色と太さ */
        border-radius: 8px; /* 枠線の角を丸くする */
        padding: 10px; /* 内側の余白 */
        background-color: #f9f9f9; /* 背景色を設定（任意） */
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* 影を追加（任意） */
        margin-top: -20px;
        margin-bottom: 31px;
    }

        .test-guide .description {
            flex: 1 1 40%; /* 横幅を調整 */
            margin: 0; /* 余計な余白をリセット */
            font-family: "Noto Sans JP", sans-serif; /* フォントの設定 */
            font-weight: 500;
            font-size: 13px; /* 必要に応じて調整 */
            color: #555; /* テキストの色 */
            text-align: left !important; /* 必要なら中央揃えを指定 */
            line-height: 22px;
        }

        .test-guide figure {
            margin: 0; /* 余計な余白をリセット */
        }

        .test-guide img {
            width: 160px; /* 画像の横幅を指定 */
            height: auto; /* アスペクト比を維持 */
            border-radius: 4px; /* 画像の角を丸くする */
        }


    .description {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        /*font-size: 16px;*/
        font-size: 14px;
        /*line-height: 32px;*/
        line-height: 28px;
        text-align: left;
        color: #555;
        margin-bottom: 31px;
    }

        .description.tac {
            text-align: center;
        }

    .description-allowimg {
        width:4.2% !important;
        /*height: 5%;*/
    }

#description_ppa {
    margin-top: 40px;
    border: 3px solid red;
    padding: 12px;
    border-radius: 15px;
    background-color: #fff0f0;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    /*font-size: 16px;*/
    font-size: 14px;
    /*line-height: 32px;*/
    line-height: 28px;
    text-align: left;
    color: #555;
    /*margin-bottom: 30px;*/
}
#description_ppa ul {
    margin-bottom: 0;
}

#description_hfspecialindex {
    margin-top: 30px;
    border: 2px solid red;
    padding: 12px;
    border-radius: 15px;
    background-color: #fff;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    /*font-size: 16px;*/
    font-size: 14px;
    /*line-height: 32px;*/
    line-height: 28px;
    text-align: left;
    color: #555;
    /*margin-bottom: 30px;*/
}

    #description_hfspecialindex ul {
        margin-bottom: 0;
    }

    .end-description {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        /*font-size: 16px;*/
        font-size: 18px;
        line-height: 32px;
        text-align: left;
        color: #555;
        margin-bottom: 31px;
    }


    .btn-area {
        display: flex;
        flex-direction: column;
        row-gap: 15px;
    }

        .btn-area.column3 {
            flex-direction: row;
            column-gap: 10px;
            margin-bottom: 36px;
        }

        .btn-area .btn-item {
            position: relative;
            font-family: "Noto Sans JP", sans-serif;
            max-width: 322px;
            width: 100%;
            margin: auto;
            display: flex;
            justify-content: center;
            align-items: center;
        }

        .btn-area .btn-orange {
            background: transparent linear-gradient(340deg, #FF9D4D 0%, #FF9AA9 100%) 0% 0% no-repeat padding-box;
            color: #FFF;
            font-weight: bold;
            font-size: 20px;
            height: 80px;
            border-radius: 40px;
        }

        .btn-area.column3 .btn-orange,
        .searchform .search-area .btn-area .btn-orange {
            height: 60px;
            max-width: 230px;
        }

        .btn-area .btn-orange.fs16 {
            font-size: 16px;
        }

        .btn-area.column3 .btn-back,
        .btn-area.coach-detail .btn-back,
        .searchform .search-area .btn-area .btn-back {
            max-width: 100px;
            height: 60px;
            border-radius: 30px;
            background: #fff;
            border: 3px solid #e0e0e0;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: bold;
            font-size: 16px;
            text-align: center;
            color: #222;
        }

        .btn-area .btn-white {
            border-radius: 40px;
            border: 3px solid #ff9d4d;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: bold;
            font-size: 20px;
            height: 80px;
            text-align: center;
            color: #ff9d4d;
        }

            .btn-area .btn-orange::after,
            .btn-area .btn-gray::after,
            .btn-area .btn-white::after {
                content: "";
                background: url(../images/right-w.svg) no-repeat center/contain;
                width: 11px;
                height: 17px;
                position: absolute;
                top: 0;
                bottom: 0;
                margin: auto;
                right: 28px;
            }

        .btn-area .btn-gray::after {
            background: url(../images/right-g.svg) no-repeat center/contain;
        }

        .btn-area .btn-gray.reverse::after {
            right: auto;
            left: 28px;
            transform: rotate(180deg);
        }

        .btn-area .btn-white::after {
            background: url(../images/right-o.svg) no-repeat center/contain;
        }

        .btn-area .btn-white.reverse::after {
            right: auto;
            left: 28px;
            transform: rotate(180deg);
        }

        .btn-area.column3 .btn-orange::after,
        .searchform .search-area .btn-area .btn-orange::after {
            content: none;
        }

        .btn-area .btn-gray {
            border: 3px solid #e0e0e0;
            font-weight: 500;
            font-size: 16px;
            color: #222;
            border-radius: 32px;
            border-radius: 32px;
            height: 64px;
        }

    #link_str {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 16px;
        /*line-height: 24px;*/
        /*text-align: center;*/
        color: red;
    }

    .contents footer .inner {
        padding-bottom: 53px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        background-color: #FFF;
        max-width: 618px;
        width: 90%;
        margin: auto;
        padding-top: 0;
    }

    footer .foot-left {
        display: flex;
        flex-direction: column;
        row-gap: 12px;
    }

        footer .foot-left .f-navi {
            display: flex;
            column-gap: 16px;
        }

            footer .foot-left .f-navi .list-item {
                font-family: "Noto Sans JP", sans-serif;
                font-weight: normal;
                font-size: 11px;
                text-align: center;
                color: #222;
            }

    footer copy {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: normal;
        font-size: 11px;
        text-align: right;
        color: #222;
    }


.foot-right .foot-right-logo {
    display: flex;
    /*justify-content: center;*/ /* 子要素を横方向で中央揃え */
    align-items: center; /* 子要素を縦方向で中央揃え */
    padding: 0 20px 0 20px;
}

    .foot-right .foot-right-logo img:first-child {
        margin-right: 20px;
    }


    .back-top {
        position: fixed;
        right: 39px;
        bottom: 34px;
    }

    /* privacy */
    #consentForm {
        margin-bottom: 45px;
        text-align: center;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 16px;
        color: #555;
    }

        #consentForm [type="checkbox"] {
            width: 24px;
            height: 24px;
            vertical-align: middle;
        }

    /* eighteen_check */
    #eighteen_check {
        margin-bottom: 25px;
        text-align: center;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 16px;
        color: #555;
    }

        #eighteen_check [type="checkbox"] {
            width: 24px;
            height: 24px;
            vertical-align: middle;
        }

    /*MyCode*/
    #mycode-image-container {
        margin-top: 40px;
        display: flex;
        justify-content: center; /* 水平方向に中央揃え */
        align-items: center; /* 垂直方向に中央揃え */
        width: 600px;
        height: 200px;
    }

        #mycode-image-container img {
            width: 150px;
            height: 150px;
        }

    @media screen and (max-width: 768px) {
        #mycode-image-container {
            margin-top: 40px;
            display: flex;
            justify-content: center; /* 水平方向に中央揃え */
            align-items: center; /* 垂直方向に中央揃え */
            width: 320px;
            height: 200px;
        }

            #mycode-image-container img {
                width: 150px;
                height: 150px;
            }
    }

    /* privacy */
    /* メニュー選択 */
    .menu-list {
        display: flex;
        column-gap: 15px;
        margin-bottom: 40px;
    }

        .menu-list .list-item {
            max-width: 190px;
            width: 33%;
            border: 2px solid #eee;
            height: 80px;
            border-radius: 10px;
            background: #fff;
            display: flex;
            justify-content: center;
            align-items: center;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 18px;
            line-height: 18px;
            text-align: center;
            color: #222;
        }

            .menu-list .list-item a {
                display: flex;
                justify-content: center;
                align-items: center;
                width: 100%;
                height: 100%;
            }

            .menu-list .list-item.active {
                background: linear-gradient(#ff9d4d 0%, #ff9aa9 100%);
                color: #fff;
            }

    .contents .inner .second-ttl {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 18px;
        text-align: left;
        color: #222;
        padding-bottom: 11px;
        position: relative;
        margin-bottom: 21px;
    }

        .contents .inner .second-ttl::after {
            content: "";
            width: 50px;
            height: 3px;
            background: linear-gradient(#ff9d4d 0%, #ff9aa9 100%);
            position: absolute;
            left: 0;
            bottom: 0;
        }

        .contents .inner .second-ttl::before {
            content: "";
            width: calc(100% - 50px);
            height: 3px;
            background: #e3e3e3;
            position: absolute;
            left: 50px;
            bottom: 0;
        }

    .catch {
        margin-bottom: 13px;
    }

    /* メニュー選択 */
    /* layout2 */
    .bg-white .inner {
        padding: 21px 0;
    }

        .bg-white .inner .logo {
            margin-top:20px;
            margin-bottom: 0;
        }

/*@media screen and (max-width: 768px) {
    .bg-white .inner .logo {
        margin-top: 20px;
        margin-bottom: 0;
        width: 198px;
        height: 35px;
    }
}*/

        .bg-white .inner .sub-ttl {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: bold;
            font-size: 20px;
            line-height: 58px;
            text-align: center;
            color: #9f9f9f;
            margin-bottom:-10px;
        }

    .bg-gray {
        background-color: #FAFAFA;
    }

        .bg-gray .inner {
            padding: 20px 0 40px;
            max-width: 600px;
            width: 90%;
            margin: auto;
        }

    .layout2 .contents {
        padding-bottom: 0;
    }

    .layout2 footer .inner {
        padding: 30px 0;
    }

    /* layout2 */
    /* mypage */
    .bg-gray .inner .menu-column-2 {
        display: flex;
        justify-content: space-between;
        margin-bottom: 30px;
    }

        .bg-gray .inner .menu-column-2 .username {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: normal;
            font-size: 16px;
            line-height: 15px;
            text-align: left;
            color: #222;
        }

        .bg-gray .inner .menu-column-2 .mypage-menu {
            display: flex;
            flex-wrap: wrap;
        }

    @media screen and (max-width: 768px) {
        .bg-gray .inner .menu-column-2 .mypage-menu {
            display: flex;
            flex-wrap: wrap;
            justify-content: flex-end;
        }
    }

    .bg-gray .inner .menu-column-2 .mypage-menu .list-item {
        display: flex;
        align-items: center;
        padding: 5px;
    }

        .bg-gray .inner .menu-column-2 .mypage-menu .list-item a {
            display: flex;
            column-gap: 6px;
            align-items: center;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: normal;
            font-size: 14px;
            line-height: 15px;
            text-align: center;
            color: #222;
        }

    .bg-gray .inner .menu-column-2 .mypage-menu .submenu-group {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0px;
        margin-top: -25px;
        margin-bottom: -15px;
    }

    .bg-gray .inner .menu-column-2 .column-right .submenu-group {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0px;
        margin-top: -25px;
        margin-bottom: -15px;
    }

        .bg-gray .inner .menu-column-2 .column-right .submenu-group .mypage-menu .list-item .community_title {
            position: relative;
            display: inline-block;
            width: 100px;
            margin-right: 5px;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: normal;
            font-size: 14px;
            line-height: 15px;
            text-align: center;
            color: #222;
        }

        .bg-gray .inner .menu-column-2 .column-right .submenu-group .mypage-menu .list-item .custom-select-menu {
            position: relative;
            display: inline-block;
            width: 250px;
            padding: 10px;
            font-size: 16px;
            text-align: left;
            border-radius: 5px;
            border: 1px solid #ccc;
            box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
        }

            .bg-gray .inner .menu-column-2 .column-right .submenu-group .mypage-menu .list-item .custom-select-menu::before {
                content: "";
                position: absolute;
                top: 100%;
                left: 0;
                width: 100%;
                border: 1px solid #555;
                border-radius: 0 0 4px 4px;
                display: none;
                z-index: 1;
                background-color: white;
            }

            .bg-gray .inner .menu-column-2 .column-right .submenu-group .mypage-menu .list-item .custom-select-menu option:hover {
                background-color: #f1f1f1 !important;
            }

            .bg-gray .inner .menu-column-2 .column-right .submenu-group .mypage-menu .list-item .custom-select-menu:focus {
                outline: none;
                border-color: #ff9d4d;
            }

    @media screen and (max-width: 768px) {
        .bg-gray .inner .menu-column-2 {
            flex-direction: column;
            row-gap: 3.488vw;
            margin-bottom: 6.977vw;
        }

            .bg-gray .inner .menu-column-2 .column-right .submenu-group {
                display: flex;
                flex-wrap: wrap;
                justify-content: center;
                gap: 0px;
                margin-top: -25px;
                margin-bottom: -15px;
            }

                .bg-gray .inner .menu-column-2 .column-right .submenu-group .mypage-menu .list-item {
                    display: flex;
                    align-items: center;
                    padding: 5px;
                }

                    .bg-gray .inner .menu-column-2 .column-right .submenu-group .mypage-menu .list-item a {
                        column-gap: 1.395vw;
                        font-size: 3.023vw;
                        line-height: 3.488vw;
                    }

                    .bg-gray .inner .menu-column-2 .column-right .submenu-group .mypage-menu .list-item .community_title {
                        position: relative;
                        display: inline-block;
                        width: 80px;
                        margin-right: 5px;
                        column-gap: 1.395vw;
                        font-size: 3.023vw;
                        line-height: 3.488vw;
                    }

                    .bg-gray .inner .menu-column-2 .column-right .submenu-group .mypage-menu .list-item .custom-select-menu {
                        position: relative;
                        display: inline-block;
                        width: 150px;
                        padding: 10px;
                        font-size: 16px;
                        text-align: left;
                        border-radius: 5px;
                        border: 1px solid #ccc;
                        box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
                    }
    }


    .bg-gray .inner .menu-column-2 .mypage-menu .submenu-group-2 {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0px;
        margin-top: -25px;
        margin-bottom: -15px;
    }

    @media screen and (max-width: 768px) {
        .bg-gray .inner .menu-column-2 .mypage-menu .submenu-group-2 {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 5px;
        }
    }

    .bg-gray .inner .menu-column-2 .mypage-menu .submenu-group-3 {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 20px;
        margin-top: -25px;
        margin-bottom: 0px;
    }

    @media screen and (max-width: 768px) {
        .bg-gray .inner .menu-column-2 .mypage-menu .submenu-group-3 {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 5px;
        }
    }

    .bg-gray .inner .menu-column-2 .mypage-menu .sma-linebreak {
        display: none;
    }

    @media screen and (max-width: 768px) {
        .bg-gray .inner .menu-column-2 .mypage-menu .sma-linebreak {
            display: block;
        }
    }

    .mypage-menu2 {
        display: flex;
        column-gap: 13px;
        margin-bottom: 40px;
    }

        .mypage-menu2 .list-item {
            max-width: 140px;
            width: 25%;
            height: 140px;
            border-radius: 10px;
            background: #fff;
            border: 2px solid #eee;
            display: flex;
            justify-content: center;
            align-items: center;
        }

            .mypage-menu2 .list-item.active,
            .mypage-menu2 .list-item:hover {
                background: linear-gradient(#ff9d4d 0%, #ff9aa9 100%);
            }

            .mypage-menu2 .list-item a {
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 16px;
                line-height: 18px;
                text-align: center;
                color: #222;
                display: flex;
                flex-direction: column;
                justify-content: center;
                align-items: center;
                row-gap: 13px;
                width: 100%;
                height: 100%;
                margin: auto;
            }

            .mypage-menu2 .list-item.active a,
            .mypage-menu2 .list-item:hover a {
                color: #FFF;
            }

                .mypage-menu2 .list-item.active a figure,
                .mypage-menu2 .list-item:hover a figure {
                    filter: brightness(5);
                }


    .mypage-message {
        margin-bottom: 40px;
    }

    /*移動掲示板*/
    .bg-gray .inner .mypage-digitalbulletinboard .marquee {
        position: relative;
        width: 100%;
        height: 40px;
        overflow: hidden;
        background: #ff9d4d;
        color: #fff;
        white-space: nowrap;
        margin-bottom: 20px;
        color: #fff; /* 文字色 */
        white-space: nowrap; /* テキストを一行にする */
        border-radius: 5px; /* 背景の角を丸くする */
        padding: 10px 0; /* 背景内の上下余白を調整 */
        display: flex; /* フレックスボックスを利用して中央揃え */
        align-items: center; /* 縦方向の中央揃え */
    }

        .bg-gray .inner .mypage-digitalbulletinboard .marquee p {
            position: absolute;
            animation: marqueeJS linear infinite;
        }

#important-notice-top {
    border: 2px solid red !important;
    border-radius: 10px;
    padding: 15px;
    background-color: #fff;
    margin-bottom: 20px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 18px;
}
    #important-notice-top .important-notice-header {
        display: flex;
        align-items: center;
        gap: 1rem; /* ラベルとサブラベルの間隔 */
    }

    #important-notice-top .important-notice-label{
        margin-bottom: 5px;
    }

    #important-notice-top .important-notice-label {
        display: inline-block;
        font-size: 20px;
        font-weight: bold;
        color: #fff;
        background-color: #d9534f; /* 赤系で重要感を演出 */
        padding: 8px 16px;
        border-radius: 8px;
        box-shadow: 0 4px 6px rgba(0,0,0,0.1);
        letter-spacing: 1px;
        margin-bottom: 16px;
    }

    #important-notice-top .important-notice-sublabel {
        color: red; /* 文字色を赤に */
        text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); /* 黒っぽい影を追加 */
        font-weight: bold; /* 太字に（任意） */
        font-size: 1.2em; /* サイズ調整（必要に応じて） */
        margin-bottom: 20px;
    }

#important-information-top {
    border: 2px solid red !important;
    border-radius: 10px;
    padding: 10px;
    background-color: #fff;
    margin-bottom: 20px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 18px;
}
    #important-information-top .important-information-header {
        display: flex;
        align-items: center;
        gap: 1rem; /* ラベルとサブラベルの間隔 */
        margin-bottom:-15px;
    }

    #important-information-top .important-information-label {
        display: inline-block;
        font-size: 15px;
        font-weight: bold;
        color: #fff;
        white-space: nowrap;
        background-color: #d9534f; /* 赤系で重要感を演出 */
        padding: 4px 8px;
        border-radius: 8px;
        box-shadow: 0 4px 6px rgba(0,0,0,0.1);
        letter-spacing: 1px;
        /*margin-bottom: 10px;*/
        margin-bottom: 20px;
    }

    #important-information-top .important-information-sublabel {
        color: red; /* 文字色を赤に */
        text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.4); /* 黒っぽい影を追加 */
        font-weight: bold; /* 太字に（任意） */
        font-size: 1.0em; /* サイズ調整（必要に応じて） */
        margin-bottom: 20px;
    }

@media screen and (max-width: 768px) {
    #important-notice-top {
        border: 2px solid red !important;
        border-radius: 10px;
        padding: 15px;
        background-color: #fff;
        margin-bottom: 20px;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 13px;
        line-height: 18px;
    }
        #important-notice-top .important-notice-header {
            display: flex;
            align-items: center;
            gap: 1rem; /* ラベルとサブラベルの間隔 */
        }

        #important-notice-top .important-notice-label {
            margin-bottom: 5px;
        }

        #important-notice-top .important-notice-label {
            display: inline-block;
            font-size: 16px;
            font-weight: bold;
            color: #fff;
            background-color: #d9534f; /* 赤系で重要感を演出 */
            padding: 8px 16px;
            border-radius: 8px;
            box-shadow: 0 4px 6px rgba(0,0,0,0.1);
            letter-spacing: 1px;
            margin-bottom: 16px;
        }
}


    .btn-gray .inner .important-notice-top .important-notice li {
        border: 2px solid red !important;
        border-radius: 10px;
        padding: 15px;
        background-color: #fff;
        margin-bottom: 20px;
    }

    /*@keyframes marquee {
    0% {
        transform: translateX(100%);
    }

    100% {
        transform: translateX(-100%);
    }
}*/

    @keyframes marqueeJS {
        from {
            transform: translateX(25%);
            /*transform: translateX(100%);*/
        }

        to {
            transform: translateX(-100%);
        }
    }



    .short-cut-button .short-cut-menu {
        display: flex !important; /* 子要素を横並びにする */
        flex-wrap: wrap; /* 幅がオーバーした場合に折り返す */
        justify-content: flex-start; /* 子要素を左寄せ */
        list-style: none; /* liのデフォルトの点を消す */
        padding: 0;
        margin: 0;
        gap: 10px; /* 各ボタンの間隔を調整 */
        margin-top: -20px;
        margin-bottom: 30px;
    }

        .short-cut-button .short-cut-menu .list-item {
            text-align: center; /* テキストを中央揃え */
        }

            .short-cut-button .short-cut-menu .list-item a {
                display: block; /* リンク全体をクリック可能にする */
                text-decoration: none; /* 下線を削除 */
            }

            .short-cut-button .short-cut-menu .list-item figure {
                display: flex; /* ボタン内部を柔軟に配置 */
                justify-content: center; /* 横方向に中央揃え */
                align-items: center; /* 縦方向に中央揃え */
                /*width: 120px;*/ /* ボタンの幅 */
                width: 100%;
                height: 30px; /* ボタンの高さ */
                margin: 0; /* 左寄せのために余白をリセット */
                padding: 0 10px 0 10px;
                gap: 15px;
                background-color: #fff; /* ボタンの背景色 */
                color: #555; /* テキストの色 */
                /*background: linear-gradient(90deg, #D0A900, #FFF9E6);*/ /* 左から右への真横のグラデーション */
                /*background: linear-gradient(30deg, #F07799, #F6D6E6);*/
                /*background: linear-gradient(45deg, #FF9D4D, #F07799);*/
                /*color: #fff;*/ /* テキストの色 */
                border: 1px solid #e1e1e1;
                border-radius: 9px; /* ボタンの角を丸くする */
                font-family: "Noto Sans JP", sans-serif;
                font-size: 13px; /* テキストの大きさ */
                font-weight: bold; /* テキストを太字にする */
                box-shadow: 0 3px 4px rgba(0, 0, 0, 0.1); /* ボタンの影 */
                /*transition: background-color 0.3s, transform 0.2s;*/ /* ホバー時のエフェクト */
            }

                .short-cut-button .short-cut-menu .list-item figure:hover {
                    /*background-color: #ff7d1c;*/ /* ホバー時の背景色 */
                    background: linear-gradient(0deg, #F07799, #FF9D4D);
                    /*transform: translateY(-3px);*/ /* ホバー時に少し浮き上がる */
                    cursor: pointer; /* ポインターアイコンに変更 */
                    color: #fff; /* テキストの色 */
                }

        .short-cut-button .short-cut-menu .list-item2 figure {
            display: flex; /* ボタン内部を柔軟に配置 */
            justify-content: center; /* 横方向に中央揃え */
            align-items: center; /* 縦方向に中央揃え */
            /*width: 120px;*/ /* ボタンの幅 */
            width: 100%;
            height: 30px; /* ボタンの高さ */
            margin: 0; /* 左寄せのために余白をリセット */
            padding: 0 10px 0 10px;
            gap: 15px;
            /*background-color: #F07799;*/ /* ボタンの背景色 */
            background: transparent linear-gradient(340deg, #FF9D4D 0%, #FF9AA9 100%) 0% 0% no-repeat padding-box;
            color: #fff; /* テキストの色 */
            /*background: linear-gradient(90deg, #D0A900, #FFF9E6);*/ /* 左から右への真横のグラデーション */
            /*background: linear-gradient(0deg, #F6D6E6, #F07799);*/
            /*background: linear-gradient(45deg, #FF9D4D, #F07799);*/
            /*color: #fff;*/ /* テキストの色 */
            border: 1px solid #e1e1e1;
            border-radius: 9px; /* ボタンの角を丸くする */
            font-family: "Noto Sans JP", sans-serif;
            font-size: 13px; /* テキストの大きさ */
            font-weight: bold; /* テキストを太字にする */
            box-shadow: 0 3px 4px rgba(0, 0, 0, 0.1); /* ボタンの影 */
            /*transition: background-color 0.3s, transform 0.2s;*/ /* ホバー時のエフェクト */
        }

            .short-cut-button .short-cut-menu .list-item2 figure:hover {
                /*background-color: #ff7d1c;*/ /* ホバー時の背景色 */
                background: linear-gradient(0deg, #F07799, #FF9D4D);
                /*transform: translateY(-3px);*/ /* ホバー時に少し浮き上がる */
                cursor: pointer; /* ポインターアイコンに変更 */
                color: #fff; /* テキストの色 */
            }

    @media (max-width: 768px) {
        .short-cut-button .short-cut-menu {
            justify-content: flex-start; /* 左寄せのまま */
            flex-wrap: wrap; /* 幅がオーバーした場合に折り返す */
            gap: 10px; /* スペースを調整 */
        }

            .short-cut-button .short-cut-menu .list-item figure {
                width: 100%; /* ボタンを親要素の幅に合わせる */
                padding: 0 10px 0 10px;
                max-width: 150px; /* 最大幅を設定 */
                height: 40px; /* ボタンの高さを調整 */
                font-size: 11px; /* フォントサイズを調整 */
            }

            .short-cut-button .short-cut-menu .list-item2 figure {
                display: flex; /* ボタン内部を柔軟に配置 */
                justify-content: center; /* 横方向に中央揃え */
                align-items: center; /* 縦方向に中央揃え */
                /*width: 120px;*/ /* ボタンの幅 */
                width: 100%;
                height: 40px; /* ボタンの高さ */
                margin: 0; /* 左寄せのために余白をリセット */
                padding: 0 10px 0 10px;
                gap: 15px;
                background-color: #F07799; /* ボタンの背景色 */
                color: #fff; /* テキストの色 */
                border: 1px solid #e1e1e1;
                border-radius: 9px; /* ボタンの角を丸くする */
                font-family: "Noto Sans JP", sans-serif;
                font-size: 13px; /* テキストの大きさ */
                font-weight: bold; /* テキストを太字にする */
                box-shadow: 0 3px 4px rgba(0, 0, 0, 0.1); /* ボタンの影 */
            }

                .short-cut-button .short-cut-menu .list-item2 figure:hover {
                    /*background-color: #ff7d1c;*/ /* ホバー時の背景色 */
                    background: linear-gradient(0deg, #F07799, #FF9D4D);
                    /*transform: translateY(-3px);*/ /* ホバー時に少し浮き上がる */
                    cursor: pointer; /* ポインターアイコンに変更 */
                    color: #fff; /* テキストの色 */
                }
    }

    .middle-button .middle-menu {
        display: flex; /* 子要素を横並びにする */
        flex-wrap: wrap; /* 幅がオーバーした場合に折り返す */
        justify-content: flex-start; /* 子要素を左寄せ */
        list-style: none; /* liのデフォルトの点を消す */
        padding: 0;
        margin: 0;
        gap: 10px; /* 各ボタンの間隔を調整 */
        margin-top: -10px;
        margin-bottom: 20px;
    }

        .middle-button .middle-menu .list-item {
            text-align: center; /* テキストを中央揃え */
        }

            .middle-button .middle-menu .list-item a {
                display: block; /* リンク全体をクリック可能にする */
                text-decoration: none; /* 下線を削除 */
            }

            .middle-button .middle-menu .list-item figure {
                display: flex; /* ボタン内部を柔軟に配置 */
                justify-content: center; /* 横方向に中央揃え */
                align-items: center; /* 縦方向に中央揃え */
                width: 100px; /* ボタンの幅 */
                height: 30px; /* ボタンの高さ */
                margin: 0; /* 左寄せのために余白をリセット */
                background-color: #fff; /* ボタンの背景色 */
                border: 2px solid #eee;
                color: #222; /* テキストの色 */
                border-radius: 8px; /* ボタンの角を丸くする */
                font-family: "Noto Sans JP", sans-serif;
                font-size: 13px; /* テキストの大きさ */
                font-weight: bold; /* テキストを太字にする */
                /*box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);*/ /* ボタンの影 */
                /*transition: background-color 0.3s, transform 0.2s;*/ /* ホバー時のエフェクト */
            }

            .middle-button .middle-menu .list-item .community-figure {
                display: flex; /* ボタン内部を柔軟に配置 */
                justify-content: center; /* 横方向に中央揃え */
                align-items: center; /* 縦方向に中央揃え */
                width: 80px; /* ボタンの幅 */
                height: 30px; /* ボタンの高さ */
                margin: 0; /* 左寄せのために余白をリセット */
                background-color: #fff; /* ボタンの背景色 */
                border: 2px solid #eee;
                color: #222; /* テキストの色 */
                border-radius: 8px; /* ボタンの角を丸くする */
                font-family: "Noto Sans JP", sans-serif;
                font-size: 13px; /* テキストの大きさ */
                font-weight: bold; /* テキストを太字にする */
                /*box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);*/ /* ボタンの影 */
                /*transition: background-color 0.3s, transform 0.2s;*/ /* ホバー時のエフェクト */
            }

            .middle-button .middle-menu .list-item figure:hover {
                /*background-color: #ff7d1c;*/ /* ホバー時の背景色 */
                background: linear-gradient(#ff9d4d 0%, #ff9aa9 100%);
                color: #FFF;
                /*filter: brightness(5);*/
                /*transform: translateY(-3px);*/ /* ホバー時に少し浮き上がる */
                cursor: pointer; /* ポインターアイコンに変更 */
            }

    .middle-button2 .middle-menu2 {
        display: flex; /* 子要素を横並びにする */
        flex-wrap: wrap; /* 幅がオーバーした場合に折り返す */
        justify-content: flex-start; /* 子要素を左寄せ */
        list-style: none; /* liのデフォルトの点を消す */
        padding: 0;
        margin: 0;
        gap: 10px; /* 各ボタンの間隔を調整 */
        margin-top: -5px;
        margin-bottom: 5px;
    }

        .middle-button2 .middle-menu2 .list-item2 {
            text-align: center; /* テキストを中央揃え */
        }

            .middle-button2 .middle-menu2 .list-item2 a {
                display: block; /* リンク全体をクリック可能にする */
                text-decoration: none; /* 下線を削除 */
            }

            .middle-button2 .middle-menu2 .list-item2 figure {
                display: flex; /* ボタン内部を柔軟に配置 */
                justify-content: center; /* 横方向に中央揃え */
                align-items: center; /* 縦方向に中央揃え */
                width: 100px; /* ボタンの幅 */
                height: 30px; /* ボタンの高さ */
                margin: 0; /* 左寄せのために余白をリセット */
                background-color: #fff; /* ボタンの背景色 */
                border: 2px solid #eee;
                color: #555; /* テキストの色 */
                border-radius: 8px; /* ボタンの角を丸くする */
                font-family: "Noto Sans JP", sans-serif;
                font-size: 13px; /* テキストの大きさ */
                font-weight: bold; /* テキストを太字にする */
                /*box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);*/ /* ボタンの影 */
                /*transition: background-color 0.3s, transform 0.2s;*/ /* ホバー時のエフェクト */
            }

            .middle-button2 .middle-menu2 .list-item2 .community-figure {
                display: flex; /* ボタン内部を柔軟に配置 */
                justify-content: center; /* 横方向に中央揃え */
                align-items: center; /* 縦方向に中央揃え */
                width: 80px; /* ボタンの幅 */
                height: 30px; /* ボタンの高さ */
                margin: 0; /* 左寄せのために余白をリセット */
                background-color: #fff; /* ボタンの背景色 */
                border: 2px solid #eee;
                color: #222; /* テキストの色 */
                border-radius: 8px; /* ボタンの角を丸くする */
                font-family: "Noto Sans JP", sans-serif;
                font-size: 13px; /* テキストの大きさ */
                font-weight: bold; /* テキストを太字にする */
                /*box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);*/ /* ボタンの影 */
                /*transition: background-color 0.3s, transform 0.2s;*/ /* ホバー時のエフェクト */
            }

            .middle-button2 .middle-menu2 .list-item2 figure:hover {
                /*background-color: #ff7d1c;*/ /* ホバー時の背景色 */
                background: linear-gradient(#ff9d4d 0%, #ff9aa9 100%);
                color: #FFF;
                /*filter: brightness(5);*/
                /*transform: translateY(-3px);*/ /* ホバー時に少し浮き上がる */
                cursor: pointer; /* ポインターアイコンに変更 */
            }

    @media (max-width: 768px) {
        .middle-button .middle-menu {
            justify-content: flex-start; /* 左寄せのまま */
            flex-wrap: wrap; /* 幅がオーバーした場合に折り返す */
            gap: 10px; /* スペースを調整 */
        }

            .middle-button .middle-menu .list-item figure {
                width: 100%; /* ボタンを親要素の幅に合わせる */
                padding: 0 10px 0 10px;
                max-width: 150px; /* 最大幅を設定 */
                height: 40px; /* ボタンの高さを調整 */
                font-size: 11px; /* フォントサイズを調整 */
            }

            .middle-button .middle-menu .list-item .community-figure {
                width: 100%; /* ボタンを親要素の幅に合わせる */
                padding: 0 7px 0 7px;
                max-width: 150px; /* 最大幅を設定 */
                height: 40px; /* ボタンの高さを調整 */
                font-size: 11px; /* フォントサイズを調整 */
            }

        .middle-button2 .middle-menu2 {
            justify-content: flex-start; /* 左寄せのまま */
            flex-wrap: wrap; /* 幅がオーバーした場合に折り返す */
            gap: 10px; /* スペースを調整 */
        }

            .middle-button2 .middle-menu2 .list-item2 figure {
                width: 100%; /* ボタンを親要素の幅に合わせる */
                padding: 0 10px 0 10px;
                max-width: 150px; /* 最大幅を設定 */
                height: 40px; /* ボタンの高さを調整 */
                font-size: 11px; /* フォントサイズを調整 */
            }

            .middle-button2 .middle-menu2 .list-item2 .community-figure {
                width: 100%; /* ボタンを親要素の幅に合わせる */
                padding: 0 7px 0 7px;
                max-width: 150px; /* 最大幅を設定 */
                height: 40px; /* ボタンの高さを調整 */
                font-size: 11px; /* フォントサイズを調整 */
            }

        .price_list_check .price_list_sample_figure {
            width: 30px !important;
            height: 30px !important;
        }
    }

    .pulldown_type_list {
        display: flex; /* 子要素を横並びにする */
        flex-wrap: wrap; /* 幅がオーバーした場合に折り返す */
        justify-content: flex-start; /* 子要素を左寄せ */
        list-style: none; /* liのデフォルトの点を消す */
        padding: 0;
        margin: 0;
        gap: 10px; /* 各ボタンの間隔を調整 */
        margin-top: -10px;
        margin-bottom: 30px;
    }

        .pulldown_type_list .select_type_list {
            max-width: 150px;
            height: 42px;
            border-radius: 3px;
            background-color: #fff;
            /*border: 2px solid #ff9d4d;*/
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            text-align: left;
            color: #555;
            padding-left: 15px;
            display: inline-block;
            width: 100%;
            padding: 0 0 0;
            font-size: 16px;
            appearance: none;
            cursor: pointer;
            background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="gray" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M7 10l5 5 5-5"/></svg>');
            background-repeat: no-repeat;
            background-position: right 10px center;
            background-size: 16px 16px;
        }

            .pulldown_type_list .select_type_list .custom_select_type_wrapper {
                display: flex !important;
                align-items: center; /* 縦方向の中央揃え */
                position: relative;
                display: inline-block;
                width: 100%;
            }

                .pulldown_type_list .select_type_list .custom_select_type_wrapper::before {
                    content: "";
                    position: absolute;
                    top: 100%;
                    left: 0;
                    width: 100%;
                    border: 1px solid #ccc;
                    border-radius: 0 0 4px 4px;
                    display: none;
                    z-index: 1;
                    background-color: white;
                }

                .pulldown_type_list .select_type_list .custom_select_type_wrapper p {
                }


.pulldown_main_type_list {
    display: flex; /* 子要素を横並びにする */
    flex-wrap: wrap; /* 幅がオーバーした場合に折り返す */
    justify-content: flex-start; /* 子要素を左寄せ */
    list-style: none; /* liのデフォルトの点を消す */
    padding: 0;
    margin: 0;
    gap: 10px; /* 各ボタンの間隔を調整 */
    margin-top: 10px;
    margin-bottom: 10px;
}

    .pulldown_main_type_list .select_type_list {
        max-width: 200px;
        height: 42px;
        border-radius: 3px;
        background-color: #fff;
        /*border: 2px solid #ff9d4d;*/
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 16px;
        text-align: left;
        color: #555;
        padding-left: 15px;
        display: inline-block;
        width: 100%;
        padding: 0 0 0;
        font-size: 16px;
        appearance: none;
        cursor: pointer;
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="gray" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M7 10l5 5 5-5"/></svg>');
        background-repeat: no-repeat;
        background-position: right 10px center;
        background-size: 16px 16px;
    }

        .pulldown_main_type_list .select_type_list .custom_select_type_wrapper {
            display: flex !important;
            align-items: center; /* 縦方向の中央揃え */
            position: relative;
            display: inline-block;
            width: 100%;
        }

        .pulldown_main_type_list .select_type_list .custom-select-menu{
            margin-left: 0;
        }

            .pulldown_main_type_list .select_type_list .custom_select_type_wrapper::before {
                content: "";
                position: absolute;
                top: 100%;
                left: 0;
                width: 100%;
                border: 1px solid #ccc;
                border-radius: 0 0 4px 4px;
                display: none;
                z-index: 1;
                background-color: white;
            }

            .pulldown_main_type_list .select_type_list .custom_select_type_wrapper p {
                width: 120px;
            }

.pulldown_scene_list {
    display: flex; /* 子要素を横並びにする */
    flex-wrap: wrap; /* 幅がオーバーした場合に折り返す */
    justify-content: flex-start; /* 子要素を左寄せ */
    list-style: none; /* liのデフォルトの点を消す */
    padding: 0;
    margin: 0;
    gap: 10px; /* 各ボタンの間隔を調整 */
    margin-top: -10px;
    margin-bottom: 30px;
}

    .pulldown_scene_list .select_scene_list {
        max-width: 600px;
        height: 42px;
        border-radius: 3px;
        background-color: #fff;
        /*border: 2px solid #ff9d4d;*/
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 16px;
        text-align: left;
        color: #555;
        padding-left: 15px;
        display: inline-block;
        width: 100%;
        padding: 0 0 0;
        font-size: 16px;
        appearance: none;
        cursor: pointer;
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="gray" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M7 10l5 5 5-5"/></svg>');
        background-repeat: no-repeat;
        background-position: right 10px center;
        background-size: 16px 16px;
    }

        .pulldown_scene_list .select_scene_list .custom_select_scene_wrapper {
            display: flex !important;
            align-items: center; /* 縦方向の中央揃え */
            position: relative;
            display: inline-block;
            width: 100%;
        }

            .pulldown_scene_list .select_scene_list .custom_select_scene_wrapper::before {
                content: "";
                position: absolute;
                top: 100%;
                left: 0;
                width: 100%;
                border: 1px solid #ccc;
                border-radius: 0 0 4px 4px;
                display: none;
                z-index: 1;
                background-color: white;
            }

            .pulldown_scene_list .select_scene_list .custom_select_scene_wrapper p {
            }

    .message-list .list-item {
        display: flex;
        align-items: center; /* 縦方向の中央揃え（任意） */
        gap: 12px; /* 2つの <p> の間に余白（任意） */
        position: relative;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 16px;
        line-height: 32px;
        text-align: left;
        color: #555;
        margin-left: 7px;
        padding-left: 18px;
    }

        .message-list .list-item::before {
            content: "";
            position: absolute;
            width: 7px;
            height: 7px;
            background: #ff9d4d;
            border-radius: 50px;
            left: 0;
            top: 13px;
        }
        .message-list .list-item p{
            color:#d9534f
        }

    .qanda-group {
        margin-bottom: 40px;
    }

    .qanda-list .qanda-list-item-q {
        position: relative;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 16px;
        line-height: 32px;
        text-align: left;
        color: #555;
        margin-left: 7px;
        padding-left: 18px;
    }

        .qanda-list .qanda-list-item-q::before {
            content: "";
            position: absolute;
            width: 7px;
            height: 7px;
            background: #ff9d4d;
            border-radius: 50px;
            left: 0;
            top: 13px;
        }

    .qanda-list .qanda-list-item-a {
        position: relative;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 16px;
        line-height: 32px;
        text-align: left;
        color: #555;
        margin-left: 23px;
        padding-left: 18px;
    }

    .tooltip {
        position: absolute;
        background-color: #f9f9f9;
        border: 1px solid #ccc;
        padding: 10px;
        border-radius: 10px;
        box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
        display: none;
        z-index: 1000;
        max-width: 200px;
        word-wrap: break-word;
    }

    .short-text {
        cursor: pointer;
        color: blue;
        text-decoration: underline;
    }

    .mypage-ondemand {
        position: relative;
        margin-bottom: 40px;
    }

        .mypage-ondemand .bg-whitebox {
            background: #fff;
            margin-bottom: 14px;
        }

            .mypage-ondemand .bg-whitebox a {
                display: block;
                font-family: "Noto Sans JP", sans-serif;
                font-weight: bold;
                text-decoration: underline;
                font-size: 16px;
                line-height: 32px;
                text-align: center;
                color: #ff9d4d;
            }

    .ondemand.swiper-container {
        width: 100%;
        max-width: 560px;
        overflow: hidden;
        margin: 0 auto;
    }

    *

    .ondemand .swiper-slide {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        width: 180px;
    }

    .ondemand .swiper-button-prev:after,
    .ondemand .swiper-rtl .swiper-button-next:after {
        content: '';
        background: url(../images/mypage/slide-prev.svg) no-repeat center/contain;
        width: 34px;
        height: 34px;
    }

    .ondemand .swiper-button-next:after,
    .ondemand .swiper-rtl .swiper-button-prev:after {
        content: '';
        background: url(../images/mypage/slide-next.svg) no-repeat center/contain;
        width: 34px;
        height: 34px;
    }

    .ondemand .swiper-button-prev,
    .ondemand .swiper-rtl .swiper-button-next {
        left: 0;
        right: auto;
        top: 139px;
        margin: auto;
        width: 34px;
        height: 34px;
    }

    .ondemand .swiper-button-next,
    .ondemand .swiper-rtl .swiper-button-prev {
        right: 0;
        left: auto;
        top: 139px;
        margin: auto;
        width: 34px;
        height: 34px;
    }

    .ondemand .slide-text {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        text-decoration: underline;
        font-size: 14px;
        line-height: 20px;
        text-align: center;
        color: #555;
    }

    .mypage-growth {
        margin-bottom: 40px;
    }

        .mypage-growth .bg-orangebox {
            background: #fff1e6;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: bold;
            font-size: 16px;
            line-height: 32px;
            text-align: center;
            color: #ff9d4d;
        }

        .mypage-growth figure {
            background-color: #FFF;
            text-align: center;
            padding: 20px 0;
        }

            .mypage-growth figure img {
                max-width: 560px;
                width: 100%;
                margin: auto;
            }

    /* login */
    .form-group {
        display: flex;
        column-gap: 20px;
        justify-content: space-between;
        max-width: 532px;
        width: 100%;
        margin: auto;
        align-items: center;
        margin-bottom: 15px;
    }

        .form-group:nth-of-type(2) {
            margin-bottom: 40px;
        }

        .form-group label {
            display: block;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            text-align: left;
            color: #555;
        }

        .form-group input {
            width: 100%;
            max-width: 400px;
            padding: 8px;
            box-sizing: border-box;
            border: 1px solid #ccc;
            border-radius: 3px;
        }

            .form-group input:focus {
                border-color: #007BFF;
                outline: none;
            }

        .form-group textarea {
            width: 100%;
            max-width: 400px;
            padding: 8px;
            box-sizing: border-box;
            border: 1px solid #ccc;
            border-radius: 3px;
        }

        .form-group.character textarea {
            width: 100%;
            max-width: 600px;
            padding: 8px;
            box-sizing: border-box;
            border: 1px solid #ccc;
            border-radius: 3px;
        }

    /* 事前登録 */
    .regist-form .form-wrap {
        display: flex;
        column-gap: 50px;
    }

    .regist-form .form-group {
        width: 400px;
        flex-direction: column;
        row-gap: 7px;
        align-items: flex-start;
        margin-left: 0;
        margin-bottom: 30px;
    }

.regist-form .form-wrap.character {
    width: 600px;
    display: flex;
    column-gap: 50px;
}

.regist-form .form-wrap .form-name.character {
    width: 600px;
    flex-direction: column;
    row-gap: 7px;
    align-items: flex-start;
    margin-left: 0;
    /*margin-bottom: -30px;*/
}

/*.regist-form .form-wrap .form-name .form-group.character {
    width: 600px;
    flex-direction: column;
    row-gap: 7px;
    align-items: flex-start;
    margin-left: 0;
    margin-bottom: 30px;
}*/

.regist-form .form-group.character {
    width: 600px;
    flex-direction: column;
    row-gap: 7px;
    align-items: flex-start;
    margin-left: 0;
    margin-bottom: 30px;
}

.regist-form .form-group.character textarea {
    width: 600px;
    flex-direction: column;
    row-gap: 7px;
    align-items: flex-start;
    margin-left: 0;
    margin-bottom: 30px;
}

#AIAVATAR_CHARACTER {
    width: 600px;
}

    .regist-form .form-file {
        width: 150px;
        align-items: center;
        row-gap: 14px;
        margin-bottom: 0;
    }

    .regist-form .form-choices {
        display: flex;
        align-items: center;
        column-gap: 50px;
    }

        .regist-form .form-choices .choices-item {
            display: flex;
            align-items: center;
            column-gap: 6px;
        }

        .regist-form .form-choices input {
            width: 24px;
            height: 24px;
        }

    .form-file input[type="file"] {
        display: none;
    }

    .form-file label.custom-file-label {
        display: inline-block;
        padding: 10px 20px;
        background-color: #4CAF50;
        color: white;
        cursor: pointer;
    }

        .form-file label.custom-file-label:hover {
            background-color: #45a049;
        }

    .regist-form [type="radio"] {
        width: 24px;
        height: 24px;
        appearance: none;
        border: 2px solid #ccc;
        border-radius: 50%;
        position: relative;
        cursor: pointer;
    }

        .regist-form [type="radio"]:checked {
            background-color: #F9EDD2;
            /* 変更したい色に設定 */
            border-color: #FF9D4D;
            /* 変更したい色に設定 */
        }

            .regist-form [type="radio"]:checked::before {
                content: '';
                display: block;
                width: 10px;
                height: 10px;
                border-radius: 50%;
                background: #FF9D4D;
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
            }

    .form-group.form-file {
        position: relative;
    }

    /*アップした画像を丸く表示する*/
    #preview {
        width: 150px;
        height: 150px;
        overflow: hidden;
        border-radius: 50%;
        border: 2px solid #ccc;
        display: flex;
        justify-content: center;
        align-items: center;
        background-size: cover;
        background-position: center;
    }

        #preview img {
            max-width: 100%;
            height: auto;
        }

    #community_preview {
        width: 150px;
        height: 150px;
        overflow: hidden;
        /*border-radius: 50%;*/
        border: 2px solid #ccc;
        display: flex;
        justify-content: center;
        align-items: center;
        background-size: cover;
        background-position: center;
    }

        #community_preview img {
            max-width: 100%;
            height: auto;
        }

    .community_figure {
        width: 100px;
        height: 100px;
        overflow: hidden;
        border-radius: 0%;
        border: 2px solid #ccc;
        display: flex;
        justify-content: center;
        align-items: center;
        background-size: cover;
        background-position: center;
        border: 1px solid #ff9d4d;
    }
        /*#community_figure img {*/
        .community_figure img {
            max-width: 100%;
            height: auto;
        }

    /*#preview2 {*/
    /*id="preview2→idは同一ページ内で重複して使えないのでclass="myFigureに変更"*/
    /*アップした画像を丸く表示する*/
    .myFigure {
        width: 70px;
        height: 70px;
        overflow: hidden;
        border-radius: 50%;
        border: 2px solid #ccc;
        display: flex;
        justify-content: center;
        align-items: center;
        background-size: cover;
        background-position: center;
        border: 1px solid #ff9d4d;
    }
        /*#preview2 img {*/
        .myFigure img {
            max-width: 100%;
            height: auto;
        }

    /*myFigureはタップやクリックに反応するように組んでいるので反応させないイメージは別に定義*/
    .myFigure2 {
        width: 70px !important;
        height: 70px !important;
        overflow: hidden;
        border-radius: 50%;
        border: 2px solid #ccc;
        display: flex;
        justify-content: center;
        align-items: center;
        background-size: cover;
        background-position: center;
        border: 1px solid #ff9d4d;
    }
        /*#preview2 img {*/
        .myFigure2 img {
            max-width: 100%;
            height: auto;
        }

    /*myFigureはタップやクリックに反応するように組んでいるので反応させないイメージは別に定義*/
    .myFigure3 {
        width: 40px;
        height: 40px;
        overflow: hidden;
        border-radius: 50%;
        border: 2px solid #ccc;
        display: flex;
        justify-content: center;
        align-items: center;
        background-size: cover;
        background-position: center;
        border: 1px solid #ff9d4d;
    }
        /*#preview2 img {*/
        .myFigure3 img {
            max-width: 100%;
            height: auto;
        }

    .regist-btn {
        border-radius: 3px;
        background: #fff;
        border: 1px solid #ccc;
        padding: 10px 8.5px;
    }

        .regist-btn img {
            margin-right: 5px;
        }

    #photo-info {
        margin-top: 5px;
        /*font-weight: bold;*/
        font-size: 10px;
    }

    .custom-select {
        position: relative;
        width: 200px;
    }

        .custom-select select {
            display: inline-block;
            width: 200px;
            padding: 8px;
            padding-right: 40px;
            /* 右側にスペースを確保 */
            border: 1px solid #ccc;
            border-radius: 4px;
            appearance: none;
            -webkit-appearance: none;
            -moz-appearance: none;
            background: white url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><polyline points="7,9 12,14 17,9" fill="none" stroke="gray" stroke-width="2"/></svg>') no-repeat right 10px center;
            background-size: 24px;
            /* 背景画像のサイズを調整 */
        }

    /* 確認画面 */
    .form-group .confirm-txt {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 16px;
        text-align: left;
        color: #555;
        margin-left: 10px;
        margin-top: 16px;
    }

    /* read */
    .num-list {
        counter-reset: number 0;
        margin-bottom: 55px;
    }

        .num-list .list-item {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            line-height: 32px;
            text-align: left;
            color: #555;
            display: flex;
            column-gap: 20px;
            margin-bottom: 42px;
        }

            /*.num-list .list-item {
                margin: 0;
                padding: 0;
                flex-shrink: 0;
            }*/
            .num-list .list-item::before {
                display: flex;
                justify-content: center;
                align-items: center;
                counter-increment: number 1;
                content: counter(number) " ";
                max-width: 60px;
                width: 100%;
                height: 60px;
                background: #fff;
                border: 2px solid #ff9d4d;
                border-radius: 50px;
                font-family: "Roboto", sans-serif;
                font-weight: 500;
                font-size: 40px;
                text-align: left;
                color: #ff9d4d;
            }

        .num-list .list-item2 {
            display: flex;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            line-height: 32px;
            width: auto;
            text-align: left;
            color: #555;
            display: flex; /* 数字と本文を横並びにする */
            align-items: center; /* 縦方向の中央揃え */
            gap: 20px;
            margin-bottom: 42px;
        }

            .num-list .list-item2::before {
                display: flex;
                justify-content: center;
                align-items: center;
                counter-increment: number 1;
                content: counter(number) " ";
                /*content: counter(number, decimal-leading-zero);*/
                /*max-width: 100px;*/
                width: 60px;
                min-width: 60px; /* 最小幅も固定 */
                height: 60px;
                flex-shrink: 0; /* 幅が変わらないように */
                background: #fff;
                border: 2px solid #ff9d4d;
                border-radius: 50%;
                font-family: "Roboto", sans-serif;
                font-weight: 500;
                /*font-size: 40px;*/
                font-size: 24px;
                /*text-align: left;*/
                text-align: center;
                color: #ff9d4d;
            }

    .btn-area .btn-text {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 16px;
        line-height: 32px;
        text-align: center;
        color: #555;
    }

        .btn-area .btn-text.fs-14 {
            font-size: 14px;
            line-height: 32px;
        }

            .btn-area .btn-text.fs-14.red {
                font-size: 14px;
                line-height: 32px;
                color: orangered;
            }

    /* 決済処理 */
    .settle-wrap {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        row-gap: 20px;
    }

        .settle-wrap .settle-item {
            position: relative;
            border-radius: 10px;
            background: #fff;
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
            max-width: 290px;
            width: 50%;
            display: flex;
            flex-direction: column;
        }

            .settle-wrap .settle-item a {
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
            }

            .settle-wrap .settle-item p {
                height: 40px;
                border-radius: 10px 10px 0px 0px;
                background: linear-gradient(#ff9aa9 0%, #ff9d4d 100%);
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 16px;
                line-height: 40px;
                text-align: center;
                color: #fff;
            }

            .settle-wrap .settle-item figure {
                text-align: center;
                margin: auto;
                padding: 10px 0;
            }

    /* 子育てのスタイル */
    .checksheet {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 53px;
    }

        .checksheet td {
            border: 1px solid #ccc;
            vertical-align: middle;
            text-align: center;
        }

        .checksheet .bg1,
        .checksheet .bg2,
        .checksheet .bg3,
        .checksheet .bg4 {
            background: #e9e952;
            border: 1px solid #ccc;
            width: 60px;
            height: 40px;
            font-family: Roboto;
            font-weight: 500;
            font-size: 24px;
            line-height: 32px;
            text-align: center;
            color: #fff;
            vertical-align: middle;
        }

        .checksheet .bg2 {
            background: #f9c54c;
        }

        .checksheet .bg3 {
            background: #ff9d4d;
        }

        .checksheet .bg4 {
            background: #f67877;
        }

        .checksheet .bg-orange {
            width: 60px;
            height: 60px;
            background: #ff9d4d;
            font-family: Roboto;
            font-weight: 500;
            font-size: 24px;
            line-height: 32px;
            text-align: center;
            color: #fff;
        }

        .checksheet tr:hover {
            background-color: #FEFCF8;
        }

        .checksheet .check-question {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 14px;
            line-height: 24px;
            text-align: left;
            color: #555;
            border-left: none;
            width: 50%;
            /*text-align: center;*/
        }

        .checksheet .check-question-notlink {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 14px;
            line-height: 24px;
            text-align: left;
            color: #555;
            border-left: none;
            width: 50%;
            /*text-align: center;*/
        }

        .checksheet .report-list {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 14px;
            line-height: 24px;
            text-align: left;
            color: #555;
            border-left: none;
            width: 50%;
            padding-left: 10px;
            padding-top: 10px;
        }

        .checksheet [type="radio"] {
            width: 24px;
            height: 24px;
            appearance: none;
            border: 2px solid #ccc;
            border-radius: 50%;
            position: relative;
            cursor: pointer;
        }

            .checksheet [type="radio"]:checked {
                background-color: #F9EDD2;
                /* 変更したい色に設定 */
                border-color: #FF9D4D;
                /* 変更したい色に設定 */
            }

                .checksheet [type="radio"]:checked::before {
                    content: '';
                    display: block;
                    width: 10px;
                    height: 10px;
                    border-radius: 50%;
                    background: #FF9D4D;
                    position: absolute;
                    top: 50%;
                    left: 50%;
                    transform: translate(-50%, -50%);
                }

    /* 診断結果一覧 */
    .person-list {
        display: flex;
        justify-content: space-between;
        margin-bottom: 30px;
        align-items: flex-start;
        position: relative;
    }

        .person-list .list-item figure {
            width: 70px;
            height: 70px;
        }

    /* スマホ用スタイル（最大幅768pxまでのデバイス） */
    @media screen and (max-width: 768px) {
        /*#preview2 {*/
        .myFigure {
            width: 50px; /* スマホ用に幅と高さを縮小 */
            height: 50px;
            border: 1px solid #ccc; /* ボーダーの色を変更 */
        }

            /*#preview2 img {*/
            .myFigure img {
                max-width: 100%;
                height: auto; /* 画像の比率を保ったままリサイズ */
            }

        .myFigure2 {
            width: 50px; /* スマホ用に幅と高さを縮小 */
            height: 50px;
            border: 1px solid #ccc; /* ボーダーの色を変更 */
        }

        .person-list .list-item .myFigure2 {
            width: 50px !important;
            height: 50px !important;
            border: 1px solid #ccc;
        }

        /*#preview2 img {*/
        .myFigure2 img {
            max-width: 100%;
            height: auto; /* 画像の比率を保ったままリサイズ */
        }

        .person-list.message {
            padding: 10px; /* スマホ用のパディングを小さく */
        }

        .list-item.person-you figure {
            width: 50px; /* スマホ用に幅と高さを縮小 */
            height: 50px;
        }

        /* スマホ用のマージンを縮小 */
        .swiper-container.pat2 {
            margin: 10px;
        }

        .swiper-slide .list-item.person-you {
            margin-bottom: 10px; /* スライド内のアイテムの余白を調整 */
        }

        .list-item.person-you .myFigure {
            width: 50px; /* スマホ用にあなたのプレビューサイズを縮小 */
            height: 50px;
        }

        /*こちらは機能しない*/
        /*.list-item.person-coach myFigure {
        width: 50px !important;
        height: 50px !important;
    }
    .list-item.person-search myFigure {
        width: 50px !important;
        height: 50px !important;
    }*/

        .list-item.person-coach .myFigure {
            /*.list-item.person-coach #preview2 {*/
            width: 50px; /* スマホ用にコーチのプレビューサイズを縮小 */
            height: 50px;
        }

        .list-item.person-new .myFigure {
            width: 50px; /* スマホ用に新規登録のプレビューサイズを縮小 */
            height: 50px;
        }

        .list-item.person-search .myFigure {
            width: 50px; /* スマホ用に全件表示のプレビューサイズを縮小 */
            height: 50px;
        }

        .message-box.write-message .message-figures .myFigure {
            width: 50px;
            height: 50px;
            margin-left: 10px;
        }

        .message-box.write-message .select-menus .memoonlycheck {
            transform: scale(1.5); /* 必要に応じて調整 (1.5は1.5倍のサイズ) */
            margin-right: 10px; /* チェックボックスと文字の間に適度なスペース */
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 12px;
        }

        /* 矢印ボタンのスタイル調整（スマホ用） */
        .person-list .swiper-button-prev:after,
        .person-list .swiper-rtl .swiper-button-next:after {
            width: 10px; /* 矢印ボタンの幅を小さく */
            height: 18px; /* 矢印ボタンの高さを小さく */
        }

        .person-list .swiper-button-next:after,
        .person-list .swiper-rtl .swiper-button-prev:after {
            width: 10px; /* 矢印ボタンの幅を小さく */
            height: 18px; /* 矢印ボタンの高さを小さく */
        }

        .person-list .swiper-button-prev,
        .person-list .swiper-rtl .swiper-button-next {
            left: 50px; /* 矢印ボタンの位置を画面の幅に合わせて調整 */
            width: 10px; /* 矢印ボタンの幅を小さく */
            height: 18px; /* 矢印ボタンの高さを小さく */
        }

        .person-list .swiper-button-next,
        .person-list .swiper-rtl .swiper-button-prev {
            right: 50px; /* 矢印ボタンの位置を画面の幅に合わせて調整 */
            width: 10px; /* 矢印ボタンの幅を小さく */
            height: 18px; /* 矢印ボタンの高さを小さく */
        }
    }

    .person-list .person-you {
        padding-right: 10px;
        border-right: 1px solid #E3E3E3;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .person-list .person-new {
        padding-left: 20px;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .person-list .list-item img {
        width: 100%;
        height: 100%;
    }

    .person-list .p-name,
    .swiper-slide .p-name,
    .coach-list .p-name {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 12px;
        line-height: 24px;
        text-align: center;
        color: #555;
    }

    .coach-prof {
        text-align: center !important;
    }

    /*
.person-list .swiper-container {
    width: 371px;
    overflow: hidden;
}*/
    /*
.person-list .swiper-container {
    width:100%;
    overflow: hidden;
}*/

    .person-list .swiper-slide {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        width: 70px;
    }

        .person-list .swiper-slide img {
            width: 70px;
            height: 70px;
            border-radius: 50%;
        }

    .person-list .swiper-button-prev:after,
    .person-list .swiper-rtl .swiper-button-next:after {
        content: '';
        background: url(../images/mypage/prev.svg) no-repeat center/contain;
        /*background: url(../images/mypage/pre.png) no-repeat center/contain;*/
        width: 14px;
        height: 24px;
    }

    .person-list .swiper-button-next:after,
    .person-list .swiper-rtl .swiper-button-prev:after {
        content: '';
        background: url(../images/mypage/next.svg) no-repeat center/contain;
        /*background: url(../images/mypage/next.png) no-repeat center/contain;*/
        width: 14px;
        height: 24px;
    }

    .person-list .swiper-button-prev,
    .person-list .swiper-rtl .swiper-button-next {
        left: 90px;
        right: auto;
        width: 14px;
        height: 24px;
    }

    .person-list .swiper-button-next,
    .person-list .swiper-rtl .swiper-button-prev {
        right: 90px;
        left: auto;
        width: 14px;
        height: 24px;
    }

    /*Q&Aに関する設定*/
    /*コーチングセッション*/
    /*swiperの表示幅の指定*/
    .coachingclient-list.message .swiper-container {
        /*width:510px;*/
        /*width: 296px;*/
        /*width: 52.326vw;*/
        /*width: 46vw;*/
        width: 90%;
        margin-left: 30px;
        overflow: hidden;
    }
    /*スマホでの前後の矢印の設定*/
    @media only screen and (max-width: 960px) {
        .coachingclient-list.message .swiper-container {
            width: 270px;
            /*width: 48vw;*/
            margin-left: 23px;
            overflow: hidden;
        }
    }

    @media only screen and (orientation: landscape) {
        .coachingclient-list.message .swiper-container {
            /*width: 270px;*/
            width: 90%;
            /*width: 48vw;*/
            margin-left: 23px;
            overflow: hidden;
        }
    }

    .coachingclient-list.message .swiper-slide {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        width: 80px;
        margin-right: 0px !important; /* 強制的に `margin-right` を上書き */
    }

        .coachingclient-list.message .swiper-slide img {
            width: 70px;
            height: 70px;
            border-radius: 50%;
        }

    .coachingclient-list .person-search {
        margin-left: 32px;
    }

    .coachingclient-list .person-coach {
        padding-left: 10px;
        border-left: 1px solid #E3E3E3;
        margin-left: 9px;
        margin-right: 0;
    }

    .coachingclient-list .swiper-slide {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        width: 70px;
    }

        .coachingclient-list .swiper-slide img {
            width: 70px;
            height: 70px;
            border-radius: 50%;
        }

    /*前後の矢印の設定*/
    .coachingclient-list .swiper-button-prev:after,
    .coachingclient-list .swiper-rtl .swiper-button-next:after {
        content: '';
        background: url(../images/mypage/prev.svg) no-repeat center/contain;
        width: 14px;
        height: 24px;
    }

    .coachingclient-list .swiper-button-next:after,
    .coachingclient-list .swiper-rtl .swiper-button-prev:after {
        content: '';
        background: url(../images/mypage/next.svg) no-repeat center/contain;
        width: 14px;
        height: 24px;
    }

    .coachingclient-list.message .swiper-button-prev,
    .coachingclient-list.message .swiper-rtl .swiper-button-next {
        /*left: 90px;*/
        left: 40px;
        right: auto;
        width: 14px;
        height: 24px;
        /*top: 59%;*/
        top: 475px;
    }

    .coachingclient-list.message .swiper-button-next,
    .coachingclient-list.message .swiper-rtl .swiper-button-prev {
        /*right: 90px;*/
        right: 40px;
        left: auto;
        width: 14px;
        height: 24px;
        /*top: 59%;*/
        top: 475px;
    }

    /*スマホでの前後の矢印の設定*/
    @media only screen and (max-width: 960px) {
        .coachingclient-list.message .swiper-button-prev,
        .coachingclient-list.message .swiper-rtl .swiper-button-next {
            /*left: 90px;*/
            left: 20px;
            right: auto;
            width: 14px;
            height: 24px;
            /*top: 54.5%;*/
            top: 455px;
        }

        .coachingclient-list.message .swiper-button-next,
        .coachingclient-list.message .swiper-rtl .swiper-button-prev {
            /*right: 90px;*/
            right: 20px;
            left: auto;
            width: 14px;
            height: 24px;
            /*top: 54.5%;*/
            top: 455px;
        }
    }

.coachingclient-list.aiavatarlist .swiper-container {
    /*width:510px;*/
    /*width: 296px;*/
    /*width: 52.326vw;*/
    /*width: 46vw;*/
    width: 90%;
    margin-left: 30px;
    overflow: hidden;
}
/*スマホでの前後の矢印の設定*/
@media only screen and (max-width: 960px) {
    .coachingclient-list.aiavatarlist .swiper-container {
        width: 270px;
        /*width: 48vw;*/
        margin-left: 23px;
        overflow: hidden;
    }
}

@media only screen and (orientation: landscape) {
    .coachingclient-list.aiavatarlist .swiper-container {
        /*width: 270px;*/
        width: 90%;
        /*width: 48vw;*/
        margin-left: 23px;
        overflow: hidden;
    }
}

.coachingclient-list.aiavatarlist .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 90px;
    margin-right: 0px !important; /* 強制的に `margin-right` を上書き */
}

    .coachingclient-list.aiavatarlist .swiper-slide img {
        width: 70px;
        height: 70px;
        border-radius: 50%;
    }

.coachingclient-list.aiavatarlist .swiper-button-prev,
.coachingclient-list.aiavatarlist .swiper-rtl .swiper-button-next {
    /*left: 90px;*/
    left: 40px;
    right: auto;
    width: 14px;
    height: 24px;
    /*top: 59%;*/
    top: 350px;
}

.coachingclient-list.aiavatarlist .swiper-button-next,
.coachingclient-list.aiavatarlist .swiper-rtl .swiper-button-prev {
    /*right: 90px;*/
    right: 40px;
    left: auto;
    width: 14px;
    height: 24px;
    /*top: 59%;*/
    top: 350px;
}

.coachingclient-list.aiavatarlist .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 90px;
    margin-right: 0px !important; /* 強制的に `margin-right` を上書き */
}

/*スマホでの前後の矢印の設定*/
@media only screen and (max-width: 960px) {
    .coachingclient-list.aiavatarlist .swiper-button-prev,
    .coachingclient-list.aiavatarlist .swiper-rtl .swiper-button-next {
        /*left: 90px;*/
        left: 20px;
        right: auto;
        width: 14px;
        height: 24px;
        /*top: 54.5%;*/
        top: 330px;
    }

    .coachingclient-list.aiavatarlist .swiper-button-next,
    .coachingclient-list.aiavatarlist .swiper-rtl .swiper-button-prev {
        /*right: 90px;*/
        right: 20px;
        left: auto;
        width: 14px;
        height: 24px;
        /*top: 54.5%;*/
        top: 330px;
    }
}

    /*メッセージに関する設定*/
    /*コミュニティセッション*/
    /*swiperの表示幅の指定*/
    .communitysession-list.message {
        display: flex;
        flex-wrap: nowrap; /* 折り返しを防ぐ */
        justify-content: space-between; /* 要素間のスペースを均等に */
        align-items: center; /* 要素を縦方向に中央揃え */
        width: 600px; /* 必要な幅を指定 */
        margin-bottom: 30px;
    }

        .communitysession-list.message .swiper-container {
            flex-grow: 1; /* スライド部分を可能な限り広げる */
            width: 480px !important;
            max-width: 500px; /* 最大幅を指定 */
            /*width: 52.326vw;*/
            /*width:100%;*/
            /*width: 46vw;*/
            /*width: 90%;*/
            margin: 0; /* マージンをリセット */
            margin-left: 5px;
            overflow: hidden;
        }

    @media only screen and (orientation: landscape) {
        .communitysession-list.message .swiper-container {
            width: 270px;
            /*margin-left: 23px;*/
            overflow: hidden;
        }
    }

    .communitysession-list.message .swiper-wrapper {
        width: 480px;
    }

    .communitysession-list.message .swiper-slide {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        width: 83px !important;
        margin-right: 0px !important; /* 強制的に `margin-right` を上書き */
    }

        .communitysession-list.message .swiper-slide img {
            width: 70px;
            height: 70px;
            border-radius: 50%;
        }

    .communitysession-list .person-search {
        /*margin-left: 32px;*/
        flex-shrink: 0; /* サイズを縮小させない */
        margin-left: 10px; /* 間隔を調整 */
        text-align: center; /* 中央揃え */
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 12px;
        line-height: 24px;
        text-align: center;
        color: #555;
    }

    /*スマホでの前後の矢印の設定*/
    @media only screen and (max-width: 960px) {
        .communitysession-list.message {
            display: flex;
            flex-wrap: nowrap;
            justify-content: center;
            align-items: center;
            width: 320px;
            margin-bottom: 20px;
        }

            .communitysession-list.message .swiper-container {
                flex-grow: 1; /* スライド部分を可能な限り広げる */
                width: 270px !important;
                max-width: 100%; /* 最大幅を指定 */
                margin: 0; /* マージンをリセット */
                margin-left: 10px;
                overflow: hidden;
            }

            .communitysession-list.message .swiper-slide {
                display: flex;
                justify-content: center;
                align-items: center;
                flex-direction: column;
                width: 62px !important;
                margin-right: 0px !important; /* 強制的に `margin-right` を上書き */
            }

        .communitysession-list .person-search {
            /*margin-left: 32px;*/
            flex-shrink: 0; /* サイズを縮小させない */
            margin-left: 10px auto; /* 間隔を調整 */
            text-align: center; /* 中央揃え */
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 10px;
            line-height: 24px;
            text-align: center;
            color: #555;
        }

            .communitysession-list .person-search .myFigure2 {
                height: 50px !important;
                width: 50px !important;
                border: 1px solid #ccc;
            }
    }

    .communitysession-list .person-coach {
        padding-left: 10px;
        border-left: 1px solid #E3E3E3;
        margin-left: 9px;
        margin-right: 0;
    }

    .communitysession-list .swiper-slide {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        width: 70px;
    }

        .communitysession-list .swiper-slide img {
            width: 70px;
            height: 70px;
            border-radius: 50%;
        }

    /*前後の矢印の設定*/
    .communitysession-list .swiper-button-prev:after,
    .communitysession-list .swiper-rtl .swiper-button-next:after {
        content: '';
        background: url(../images/mypage/prev.svg) no-repeat center/contain;
        width: 14px;
        height: 24px;
    }

    .communitysession-list .swiper-button-next:after,
    .communitysession-list .swiper-rtl .swiper-button-prev:after {
        content: '';
        background: url(../images/mypage/next.svg) no-repeat center/contain;
        width: 14px;
        height: 24px;
    }

    .communitysession-list.message .swiper-button-prev,
    .communitysession-list.message .swiper-rtl .swiper-button-next {
        /*left: 90px;*/
        left: 45px;
        right: auto;
        width: 14px;
        height: 24px;
        /*top: 59%;*/
        /*top: 479px;*/
        top: 487px;
    }

    .communitysession-list.message .swiper-button-next,
    .communitysession-list.message .swiper-rtl .swiper-button-prev {
        right: 142px;
        /*right: 40px;*/
        left: auto;
        width: 14px;
        height: 24px;
        /*top: 59%;*/
        /*top: 479px;*/
        top: 487px;
    }

    /*スマホでの前後の矢印の設定*/
    @media only screen and (max-width: 960px) {
        .communitysession-list.message .swiper-button-prev,
        .communitysession-list.message .swiper-rtl .swiper-button-next {
            /*left: 90px;*/
            left: 15px;
            right: auto;
            width: 14px;
            height: 44px;
            /*top: 54.5%;*/
            top: 455px;
        }

        .communitysession-list.message .swiper-button-next,
        .communitysession-list.message .swiper-rtl .swiper-button-prev {
            /*right: 90px;*/
            right: 65px;
            left: auto;
            width: 14px;
            height: 44px;
            /*top: 54.5%;*/
            top: 455px;
        }
    }

    .community.session {
        justify-content: flex-start;
    }

        .community.session .person-you {
            margin-right: 33px;
        }

        .community.session .swiper-container {
            /*width: 296px;*/
            width: 32.326vw;
            overflow: hidden;
        }

        .community.session .swiper-slide {
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
            width: 70px;
            margin-right: 0 !important; /* 強制的に `margin-right` を上書き */
        }

            .community.session .swiper-slide img {
                width: 70px;
                height: 70px;
                border-radius: 50%;
            }

    .community .person-search {
        margin-left: 32px;
    }

    .community .person-coach {
        padding-left: 10px;
        border-left: 1px solid #E3E3E3;
        margin-left: 9px;
        margin-right: 0;
    }

    .community.session .swiper-button-next,
    .community.session .swiper-rtl .swiper-button-prev {
        right: 168px;
    }

    .community.session .swiper-container3 {
        /*width: 296px;*/
        width: 52.326vw;
        overflow: hidden;
    }

    .community.session .swiper-button-next3,
    .community.session .swiper-rtl .swiper-button-prev3 {
        right: 168px;
    }

    /*コーチ契約*/
    client_list {
        margin-bottom: 6.977vw;
        display: flex;
        /*flex-wrap:wrap;
        justify-content: space-around;*/
    }

    .client_list.client_list-figure-container,
    .client_list.client_list-slide {
        width: 16.279vw;
    }

    .client_list-figure-wrapper {
        display: flex;
        flex-wrap: wrap;
    }

    .client_list .client_list-new-friend {
        padding-right: 20px;
        width: 150px;
    }
        /*
    .client_list.client_list-new-friend {
        padding-right: 2.326vw;
        border-right: 1px solid #E3E3E3;
    }
    */

        .client_list .client_list-new-friend figure:nth-child(1)::after {
            content: '';
            position: absolute;
            right: -5px;
            top: 0;
            width: 2px;
            height: 70%;
            background-color: #E3E3E3;
        }

    .client_list-new-friend figure {
        display: inline-block;
        position: relative;
        padding-right: 10px;
    }

    .client_list-slide {
        display: inline-block;
        position: relative;
        padding-right: 7px;
        /*width:150px;
        margin:10px;
        text-align center;*/
    }

    .client_list .p-name-friends {
        font-family: "Noto Sans JP", sans-serif;
        /*font-size: 2.791vw;*/
        font-weight: 500;
        font-size: 12px;
        line-height: 32px;
        text-align: center;
        color: #555;
    }

    /*.client_list .client_list-figure-container figure {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        align-items: center;
    }*/

    /*.client_list .client_list-figure-wrapper figure {
        display: flex;
        position: relative;
        padding-right: 10px;
    }
    */

    .client_list-slide .p-name {
        font-size: 2.791vw;
        line-height: 32px;
        text-align: center;
        color: #555;
    }

    /*コーチング契約クライアント情報*/
    #coach-contract-userinfo-preview {
        width: 150px;
        height: 150px;
        overflow: hidden;
        border-radius: 50%;
        border: 2px solid #ccc;
        display: flex;
        justify-content: center;
        align-items: center;
        background-size: cover;
        background-position: center;
    }

        #coach-contract-userinfo-preview img {
            max-width: 100%;
            height: auto;
        }

    @media screen and (max-width: 768px) {
        #coach-contract-userinfo-preview {
            width: 100px;
            height: 100px;
            overflow: hidden;
            border-radius: 50%;
            border: 2px solid #ccc;
            display: flex;
            justify-content: center;
            align-items: center;
            background-size: cover;
            background-position: center;
        }

            #coach-contract-userinfo-preview img {
                max-width: 100%;
                height: auto;
            }
    }

    /*コーチング契約事項設定*/
    #sessionCharge,
    #monthlyFrequency {
        width: 70px; /* テキストボックスの横幅を指定 */
        height: 39px; /* テキストボックスの高さを指定 */
        padding: 0px; /* 内側の余白を指定 */
        font-size: 16px; /* フォントサイズを調整 */
        justify-content: center; /* 横方向の中央揃え */
        align-items: center; /* 縦方向の中央揃え */
        text-align: center;
    }

    #totalAmount {
        display: flex;
        width: 80px;
        height: 39px;
        justify-content: center; /* 横方向の中央揃え */
        align-items: center; /* 縦方向の中央揃え */
        text-align: center;
    }

    #coach-contract-item {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    /*アップした画像を丸く表示する*/
    #coach-contract-preview {
        width: 70px;
        height: 70px;
        overflow: hidden;
        border-radius: 50%;
        border: 2px solid #ccc;
        display: flex;
        justify-content: center;
        align-items: center;
        background-size: cover;
        background-position: center;
    }

        #coach-contract-preview img {
            max-width: 100%;
            height: auto;
        }

    #diagnosis-list {
        table-layout: fixed;
    }

    .diagnosis-list,
    .coach-list {
        table-layout: fixed;
        border-collapse: separate;
        width: 100%;
        border-radius: 10px;
        overflow: hidden;
        border-spacing: 0;
        border: 1px solid #ccc;
        border-top: none;
        margin-bottom: 30px;
    }

        .diagnosis-list th,
        .coach-list th {
            border: 1px solid #ccc;
            height: 40px;
            background: linear-gradient(#ff9aa9 0%, #ff9d4d 100%);
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            line-height: 32px;
            text-align: center;
            vertical-align: middle;
            color: #fff;
        }

        .diagnosis-list .community-tr th {
            border: 1px solid #ccc;
            height: 40px;
            background: linear-gradient(#ff9aa9 0%, #ff9d4d 100%);
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 14px;
            line-height: 22px;
            text-align: center;
            vertical-align: middle;
            color: #fff;
        }

        .diagnosis-list .check-question,
        .coach-list .coach-prof {
            font-family: "Noto Sans JP", sans-serif;
            height: 60px;
            vertical-align: middle !important;
            font-weight: 500;
            /*font-size: 16px;*/
            font-size: 14px;
            line-height: 32px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
        }

            .diagnosis-list .check-question.notcomp {
                color: #54a3c1;
                font-size: 14px;
            }

        .diagnosis-list .check-question-notlink, {
            font-family: "Noto Sans JP", sans-serif;
            height: 60px;
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 16px;
            line-height: 32px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
        }

        .diagnosis-list .check-question-date {
            font-family: "Noto Sans JP", sans-serif;
            font-size: 14px;
            font-weight: 500;
            color: #555;
            text-align: center !important;
            vertical-align: middle !important;
            /* ✅ 高さを自動にして、改行時に高さが広がらないようにする */
            height: auto;
            /* ✅ 行間を小さくして改行幅を詰める */
            line-height: 1.3;
            /* ✅ 枠線は維持 */
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
        }

        .diagnosis-list .comment_liset {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 10px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .casecomment_list {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 10px;
            line-height: 16px;
            text-align: left !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .casecomment_list_else {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 10px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .casecomment_keycode {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 10px;
            line-height: 16px;
            text-align: left !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list .casecomment_list_zero {
            font-family: "Noto Sans JP", sans-serif;
            height: 60px;
            /*height: auto;*/ /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 16px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .community_list {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 12px;
            line-height: 16px;
            text-align: left !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .community_list_else {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 12px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .community_list_keycode {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 12px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list .reportreview_list {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            padding: 8px 5px 8px 5px;
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: left !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .reportreview_list_else {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .reportreview_keycode {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list .reportreview_date {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list .reportreview_list_zero {
            font-family: "Noto Sans JP", sans-serif;
            height: 60px;
            /*height: auto;*/ /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 16px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .price_list {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            padding: 8px 5px 8px 5px;
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: left !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .price_list_else {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
            height: 40px;
        }

        .diagnosis-list .price_list_check {
            display: flex;
            align-items: center; /* 垂直方向の中央 */
            justify-content: center; /* 水平方向の中央 */
            font-family: "Noto Sans JP", sans-serif;
            height: 60px;
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 16px;
            line-height: 32px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
        }

            .diagnosis-list .price_list_check.notcomp {
                color: #54a3c1;
                font-size: 14px;
            }

        .diagnosis-list .price_list_keycode {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list .price_list_date {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list .price_list_zero {
            font-family: "Noto Sans JP", sans-serif;
            height: 60px;
            /*height: auto;*/ /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 16px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .price_list_button_link {
            border: none;
            outline: none;
            text-decoration: none; /* リンクの装飾を削除 */
        }

        /* 🔹 figure のデザイン */
        .diagnosis-list .price_list_sample_figure {
            margin-top: 8px;
            background-image: url("/Content/images/mypage/sample-button.png");
            width: 55px;
            height: 55px;
            display: inline-block;
            background-size: cover;
            background-position: center;
        }

        .diagnosis-list .grouplist {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 13px;
            line-height: 16px;
            text-align: left !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .grouplist_else {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 10px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .grouplist_keycode {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 10px;
            line-height: 16px;
            text-align: left !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list .grouplist_zero {
            font-family: "Noto Sans JP", sans-serif;
            height: 60px;
            /*height: auto;*/ /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 16px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .payment-id-else {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .payment-name {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            padding: 8px 5px 8px 5px;
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: left !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .payment-price {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list .payment-date {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list .tokenpurchase_list_else {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .tokenpurchase-id-else {
            font-family: "Noto Sans JP", sans-serif;
            height: 50px !important;
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .tokenpurchase-name {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            padding: 8px 5px 8px 5px;
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: left !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal; /* 改行を許可 */
            word-wrap: break-word; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word; /* 長い単語を改行 */
        }

        .diagnosis-list .tokenpurchase-price {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list .tokenpurchase-date {
            font-family: "Noto Sans JP", sans-serif;
            /*height: 40px;*/
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list.settemplete {
            font-family: "Noto Sans JP", sans-serif;
            height: auto; /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list.settemplete .message-text-summary{           
            line-height: 1.5 !important;
            margin: 0;
            padding: 0;
            white-space: normal;
            word-break: break-word;
            font-size: 14px;
            color: #333;
        }
            .diagnosis-list.settemplete .message-text-title {
                line-height: 1.5 !important;
                margin: 0;
                padding: 0;
                white-space: normal;
                word-break: break-word;
                font-size: 14px;
                color: #333;
            }

        .diagnosis-list td:last-child {
            border-right: none;
        }

        .diagnosis-list tr:last-child,
        .diagnosis-list tr:last-child td {
            border-bottom: none;
        }

        .diagnosis-list td [type="radio"] {
            width: 24px;
            height: 24px;
            appearance: none;
            border: 2px solid #ccc;
            border-radius: 50%;
            position: relative;
            cursor: pointer;
        }

            .diagnosis-list td [type="radio"]:checked {
                background-color: #F9EDD2;
                /* 変更したい色に設定 */
                border-color: #FF9D4D;
                /* 変更したい色に設定 */
            }

                .diagnosis-list td [type="radio"]:checked::before {
                    content: '';
                    display: block;
                    width: 10px;
                    height: 10px;
                    border-radius: 50%;
                    background: #FF9D4D;
                    position: absolute;
                    top: 50%;
                    left: 50%;
                    transform: translate(-50%, -50%);
                }

        .diagnosis-list th.aiavatar_no {
            width: 5%;
        }

        .diagnosis-list th.aiavatar_img {
            width: 10%;
        }

        .diagnosis-list th.aiavatar_name {
            width: 20%;
        }

        .diagnosis-list th.aiavatar_tone {
            width: 50%;
        }

        .diagnosis-list th.aiavatar_view_no {
            width: 10%;
        }

        .diagnosis-list th.aiavatar_select {
            width: 5%;
        }

        .diagnosis-list th.aiavatar_theme_no {
            width: 5%;
        }

        .diagnosis-list th.aiavatar_theme_title {
            width: 10%;
        }

        .diagnosis-list th.aiavatar_theme_name {
            width: 30%;
        }

        .diagnosis-list th.aiavatar_first_question {
            width: 25%;
        }

        .diagnosis-list th.aiavatar_theme_goal {
            width: 30%;
        }

        .diagnosis-list th.aiavatar_theme_view_no {
            width: 5%;
        }

        .diagnosis-list th.aiavatar_theme_select {
            width: 5%;
        }

        .diagnosis-list td.aiavatar_list_no {
            width: 5%;
            height: 40px;
            font-family: "Noto Sans JP", sans-serif;
            /*height: auto;*/ /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list td.aiavatar_list_img {
            width: 10%;
            height: 40px;
            font-family: "Noto Sans JP", sans-serif;
            /*height: auto;*/ /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list td.aiavatar_list_name {
            width: 20%;
            height: 40px;
            font-family: "Noto Sans JP", sans-serif;
            /*height: auto;*/ /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list td.aiavatar_list_tone {
            width: 50%;
            height: 40px;
            font-family: "Noto Sans JP", sans-serif;
            /*height: auto;*/ /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 10px;
            line-height: 16px;
            text-align: left !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list td.aiavatar_list_view_no {
            width: 10%;
            height: 40px;
            font-family: "Noto Sans JP", sans-serif;
            /*height: auto;*/ /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list td.aiavatar_list_select {
            width: 5%;
            height: 40px;
            font-family: "Noto Sans JP", sans-serif;
            /*height: auto;*/ /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

        .diagnosis-list td.aiavatar_non_data {
            font-family: "Noto Sans JP", sans-serif;
            height:40px;
            /*height: auto;*/ /* 高さを自動調整 */
            vertical-align: middle !important;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            text-align: center !important;
            color: #555;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
            white-space: normal !important; /* 改行を許可 */
            word-wrap: break-word !important; /* 列幅を超えた場合に単語を改行 */
            overflow-wrap: break-word !important; /* 長い単語を改行 */
        }

    /*Master設定*/
    th.Id {
        width: 10%;
    }

    th.test-list-name {
        width: 70%;
    }

    th.on-off {
        width: 10%;
    }

    th.test-list-select {
        width: 10%;
    }

    th.comment-list-name {
        width: 50%;
    }

    th.comment-key-code {
        width: 20%;
    }

    th.comment-on-off {
        width: 5%;
    }

    th.comment-view-no {
        width: 10%;
    }

    th.comment-select {
        width: 5%;
    }

    th.group-list-name {
        width: 50%;
    }

    th.group-list-avg {
        width: 15%;
    }

    th.group-list-stv {
        width: 15%;
    }

    th.group-list-on-off {
        width: 5%;
    }

    th.group-list-view-no {
        width: 10%;
    }

    th.group-list-select {
        width: 5%;
    }


    th.report-name {
        width: 80%;
    }

    th.report-select {
        width: 20%;
    }

    th.test-name {
        width: 50%;
    }

    th.test-date {
        width: 30%;
    }

    th.test-select {
        width: 20%;
    }

    th.reportreviewlist-name {
        width: 50%;
    }

    th.reportreviewlist-public {
        width: 20%;
    }

    th.reportreviewlist-date {
        width: 20%;
    }

    th.reportreviewlist-select {
        width: 10%;
    }

    th.reportreviewlist-sattlement-date {
        width: 30%;
    }

    th.payment-id-top {
        width: 10%;
    }

    th.payment-name-top {
        width: 40%;
    }

    th.payment-price-top {
        width: 25%;
    }

    th.payment-date-top {
        width: 25%;
    }

    th.tokenpurchase-id-top {
        width: 10%;
    }

    th.tokenpurchase-name-top {
        width: 50%;
    }

    th.tokenpurchase-price-top {
        width: 25%;
    }

    th.tokenpurchase-date-top {
        width: 15%;
    }

    th.price_list-name {
        width: 50%;
    }

    th.price_list-public {
        width: 20%;
    }

    th.price_list-date {
        width: 20%;
    }

    th.price_list-select {
        width: 10%;
    }

    th.openreportreviewlist-name {
        width: 80%;
    }

    th.openreportreviewlist-date {
        width: 20%;
    }

    th.settlement_item_name-top {
        width: 60%;
    }

    th.settlement_item_price-top {
        width: 40%;
    }

    .settlement_item_name {
        width: 60%;
        height: 120px !important;
        text-align: left; /* 横：左揃え */
        vertical-align: middle; /* 縦：中央揃え */
        padding: 10px; /* 適宜調整 */
        font-family: "Noto Sans JP", sans-serif;
        border-right: 1px solid #ccc; /* 右に縦線を表示 */
    }

    .settlement_item_price {
        width: 40%;
        height: 120px !important;
        text-align: center; /* 横：中央揃え */
        vertical-align: middle; /* 縦：中央揃え */
        padding: 10px; /* 適宜調整 */
        font-family: "Noto Sans JP", sans-serif;
    }

    .page-navi {
        display: flex;
        column-gap: 5px;
        align-items: center;
        justify-content: center;
        margin-bottom: 36px;
    }

        .page-navi .list-item.active a,
        .page-navi .list-item.prev.active a,
        .page-navi .list-item.next.active a,
        .page-navi .list-item a:hover {
            background: linear-gradient(#ff9aa9 0%, #ff9d4d 100%);
            color: #FFF;
            border: none;
        }

        .page-navi .list-item a {
            position: relative;
            display: flex;
            justify-content: center;
            align-items: center;
            width: 30px;
            height: 30px;
            border-radius: 15px;
            background: #fff;
            border: 1px solid #ddd;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: normal;
            font-size: 15px;
            line-height: 24px;
            text-align: center;
            color: #ddd;
        }

        .page-navi .list-item.prev a::before,
        .page-navi .list-item.next a::before,
        .page-navi .list-item.most-next a::before,
        .page-navi .list-item.most-prev a::before {
            content: "";
            position: absolute;
            background: url(../images/mypage/navi-prev.svg) no-repeat center/contain;
            width: 7px;
            height: 11px;
        }

        .page-navi .list-item.next a::before {
            background: url(../images/mypage/navi-next.svg) no-repeat center/contain;
        }

        .page-navi .list-item.most-next a::before {
            background: url(../images/mypage/most-next.svg) no-repeat center/contain;
            width: 12px;
            height: 11px;
        }

        .page-navi .list-item.most-prev a::before {
            background: url(../images/mypage/most-next.svg) no-repeat center/contain;
            transform: rotate(180deg);
            width: 12px;
            height: 11px;
        }

        .page-navi .list-item.prev.active a::before,
        .page-navi .list-item.most-prev.active a::before,
        .page-navi .list-item.next.active a::before,
        .page-navi .list-item.most-next.active a::before,
        .page-navi .list-item a:hover::before {
            filter: brightness(4);
        }

    /* メモ・メッセージ */
    .person-list.message {
        justify-content: flex-start;
    }

        .person-list.message .person-you {
            margin-right: 33px;
        }

        .person-list.message .swiper-container {
            /*width: 296px;*/
            width: 52.326vw;
            overflow: hidden;
        }

        .person-list.message .swiper-slide {
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
            width: 70px;
            margin-right: 0 !important; /* 強制的に `margin-right` を上書き */
        }

            .person-list.message .swiper-slide img {
                width: 70px;
                height: 70px;
                border-radius: 50%;
            }

    .person-list .person-search {
        margin-left: 32px;
    }

    .person-list .person-coach {
        padding-left: 10px;
        border-left: 1px solid #E3E3E3;
        margin-left: 9px;
        margin-right: 0;
    }

    .person-list.message .swiper-button-next,
    .person-list.message .swiper-rtl .swiper-button-prev {
        right: 168px;
    }

    .person-list.message .swiper-container3 {
        /*width: 296px;*/
        width: 52.326vw;
        overflow: hidden;
    }

    .person-list.message .swiper-button-next3,
    .person-list.message .swiper-rtl .swiper-button-prev3 {
        right: 168px;
    }

    .message-area {
        display: flex;
        flex-wrap: wrap;
        gap: 12px;
        margin-bottom: 20px;
    }

    .mypage-menu3 {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-bottom: 10px; /* ここで全体の余白を削除 */
    }

        .mypage-menu3 .list-item {
            max-width: 294px;
            width: 50%;
            box-sizing: border-box;
        }

            .mypage-menu3 .list-item a {
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 16px;
                line-height: 18px;
                text-align: center;
                color: #222;
                display: flex;
                justify-content: center;
                align-items: center;
                width: 100%;
                height: 100%;
                border-radius: 10px;
                background: #fff;
                border: 2px solid #ff9d4d;
                height: 60px;
            }

                .mypage-menu3 .list-item a:hover {
                    background: linear-gradient(#ff9aa9 0%, #ff9d55 99.61%, #ff9d4d 100%);
                    color: #FFF;
                }

        .mypage-menu3 .message-box {
            margin-top: 10px;
        }


    /*診断状況一覧の分類プルダウンメニューのスタイル*/
    .select-menu-category #menu-category {
        max-width: 150px;
        height: 42px;
        border-radius: 3px;
        background-color: #fff;
        border: 2px solid #ff9d4d;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 16px;
        text-align: left;
        color: #555;
        padding-left: 15px;
        display: inline-block;
        width: 100%;
        padding: 10px 0 10px;
        font-size: 16px;
        appearance: none;
        cursor: pointer;
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="gray" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M7 10l5 5 5-5"/></svg>');
        background-repeat: no-repeat;
        background-position: right 10px center;
        background-size: 16px 16px;
    }

    .select-menu-category {
        text-align: right;
        padding-bottom: 10px;
    }

.select-aiavatar-theme-category-templete {
    display: flex !important;
    gap: 10px; /* 要素間の余白 */
    align-items: center;
    justify-content: center;
}

    .custom-select-menu-wrapper {
        position: relative;
        display: inline-block;
        width: 100%;
    }

        .custom-select-menu-wrapper::before {
            content: "";
            position: absolute;
            top: 100%;
            left: 0;
            width: 100%;
            border: 1px solid #ccc;
            border-radius: 0 0 4px 4px;
            display: none;
            z-index: 1;
            background-color: white;
        }

        .custom-select-menu-wrapper .form-choices{
            display:flex;
            gap:10px;
            margin-top:10px;
            height:30px;
        }

        .custom-select-menu option:hover {
            background-color: #f1f1f1 !important;
            /* ホバー時の背景色をここで指定 */
        }

    .custom-select-menu:focus {
        outline: none;
        border-color: #ff9d4d;
    }

    .select-category #category {
        max-width: 150px;
        height: 42px;
        border-radius: 3px;
        background-color: #fff;
        border: 2px solid #ff9d4d;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 16px;
        text-align: left;
        color: #555;
        padding-left: 15px;
        display: inline-block;
        width: 100%;
        padding: 10px;
        font-size: 16px;
        appearance: none;
        cursor: pointer;
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="gray" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M7 10l5 5 5-5"/></svg>');
        background-repeat: no-repeat;
        background-position: right 10px center;
        background-size: 16px 16px;
    }

    .select-category {
        text-align: right;
    }

    .custom-select-wrapper {
        position: relative;
        display: inline-block;
        width: 100%;
    }

        .custom-select-wrapper::before {
            content: "";
            position: absolute;
            top: 100%;
            left: 0;
            width: 100%;
            border: 1px solid #ccc;
            border-radius: 0 0 4px 4px;
            display: none;
            z-index: 1;
            background-color: white;
        }

    .custom-select option:hover {
        background-color: #f1f1f1 !important;
        /* ホバー時の背景色をここで指定 */
    }

    .custom-select:focus {
        outline: none;
        border-color: #ff9d4d;
    }

    .message-history {
        position: relative;
        display: flex;
        flex-direction: column;
        z-index: 1;
        padding-top: 40px;
        padding-bottom: 111px;
    }

        .message-history::before {
            content: "";
            height: 100%;
            width: 5px;
            border-radius: 10px;
            background-color: #DDDDDD;
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            margin: auto;
            z-index: -1;
        }

        .message-history .history-item {
            display: flex;
            column-gap: 20px;
            justify-content: center;
            position: relative;
            margin-bottom: 80px;
            height: auto;
        }

            .message-history .history-item.reverse {
                flex-direction: row-reverse;
            }

            .message-history .history-item .history-date {
                width: 60px;
                height: 60px;
                background: linear-gradient(#ff9aa9 0%, #ff9d55 99.61%, #ff9d4d 100%);
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 16px;
                line-height: 32px;
                text-align: center;
                color: #fff;
                display: flex;
                justify-content: center;
                align-items: center;
                border-radius: 50px;
            }

            .message-history .history-item .history-end {
                width: 350px;
                height: 60px;
                background: linear-gradient(#ff9aa9 0%, #ff9d55 99.61%, #ff9d4d 100%);
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 16px;
                line-height: 32px;
                text-align: center;
                color: #fff;
                display: flex;
                justify-content: center;
                align-items: center;
                border-radius: 50px;
                clear: both;
            }

            .message-history .history-item .message-category {
                max-width: 250px;
                width: 100%;
                border-radius: 10px;
                background: #fff;
                padding: 15px;
                position: absolute;
                right: 0;
                top: -19px;
                margin-bottom: 30px; /* 要素同士に間隔を設ける */
            }

#messageContainer {
    position: relative; /* ← これが必要です */
}

.history-end-message {
    padding: 10px;
    width: 350px;
    height: 60px;
    background: linear-gradient(#ff9aa9 0%, #ff9d55 99.61%, #ff9d4d 100%);
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 32px;
    text-align: center;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
    clear: both;
}

            /*.message-history .history-item .message-category {
    max-width: 250px;
    width: 100%;
    border-radius: 10px;
    background: #fff;
    padding: 15px;
    position: absolute;
    right: 0;
    top: -19px;
    overflow:hidden;
    height: auto; 
}*/

            .message-history .history-item.reverse .message-category {
                right: auto;
                left: 0;
                height: auto;
            }

            .message-history .history-item .message-category::before {
                content: "";
                position: absolute;
                width: 22px;
                height: 3px;
                background-color: #ff9aa9;
                top: 50px;
                right: 100%;
            }

            .message-history .history-item.reverse .message-category::before {
                right: auto;
                left: 100%;
            }

            .message-history .history-item .message-category.sendto {
                border: 2px solid #ff9aa9;
            }

            .message-history .history-item .message-category figure {
                margin-bottom: 10px;
            }

            .message-history .history-item .message-category .message-text {
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 14px;
                letter-spacing: 0.04em;
                line-height: 20px;
                text-align: left;
                color: #555;
            }

            .message-history .history-item .message-category .message-text2 {
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 14px;
                letter-spacing: 0.04em;
                line-height: 20px;
                text-align: left;
                color: #555;
            }

            .message-history .history-item .message-category .message-title {
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 14px;
                letter-spacing: 0.04em;
                line-height: 20px;
                text-align: left;
                color: #555;
            }

            .message-history .history-item .message-container {
                display: flex !important; /* 子要素を横並びにする */
                align-items: center; /* 子要素の垂直方向の中央揃え */
            }

            .message-history .history-item .message-send {
                margin-right: 5px;
                display: inline-block;
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 14px;
            }

            .message-history .history-item .message-category.sendto figure::before,
            .message-history .history-item .message-category.reply figure::before,
            .message-history .history-item .message-category.coach figure::before,
            .message-history .history-item .message-category.send figure::before {
                /*content: "send to";*/
                content: "";
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 14px;
                line-height: 32px;
                text-align: left;
                color: #555;
                margin-right: 10px;
            }

            .message-history .history-item .message-category.memo {
                border: 2px solid #ddd;
            }

                .message-history .history-item .message-category.memo::before {
                    background-color: #ddd;
                }

            .message-history .history-item .message-category.reply {
                border: 2px solid #ff9d4d;
            }

                .message-history .history-item .message-category.reply::before {
                    background-color: #ff9d4d;
                }

            .message-history .history-item .message-category.coach {
                border: 2px solid #54a3c1;
            }

                .message-history .history-item .message-category.coach::before {
                    background-color: #54a3c1;
                }

            .message-history .history-item .message-category.send {
                border: 2px solid #bc2929;
            }

                .message-history .history-item .message-category.send::before {
                    background-color: #bc2929;
                }

            .message-history .history-item .message-category.reply figure::before {
                /*content: "Reply from";*/
                content: "";
            }

            .message-history .history-item .message-category.coach figure::before {
                /*content: "coarching from";*/
                content: "";
            }

            .message-history .history-item .message-category.send figure::before {
                /*content: "send";*/
                content: "";
            }

            .message-history .history-item .message-category .catename {
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 14px;
                line-height: 32px;
                text-align: left;
                color: #555;
            }


.message-history .history-item .message-category .message-text-summary {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.04em;
    line-height: 20px;
    text-align: left;
    color: #555;
    cursor: pointer;
    background: #f5f5f5;
    border-radius: 5px;
    padding: 8px;
    margin-top: 5px;
}
            /*.message-history .history-item .message-text-summary {
                cursor: pointer;
                background: #f5f5f5;
                border-radius: 5px;
                padding: 8px;
                margin-top: 5px;
            }*/

    .message-history .history-item .message-category .message-text-summary * {
        pointer-events: none;
        /*display: block;*/
    }

    .message-history .history-item .message-balloon {
                display: none;
                position: relative;
                margin-top: 10px;
                border: 1px solid #ccc;
                border-radius: 10px;
                background: #fff;
                padding: 10px;
                max-height: 200px;
                overflow-y: auto;
                box-shadow: 0 2px 10px rgba(0,0,0,0.1);
            }

                .message-history .history-item .message-balloon.active {
                    display: block;
                }

#modalWindow {
    width: 600px;
    max-width: 90vw;
    max-height: 80vh;
    padding: 16px;
    box-sizing: border-box;
    overflow-y: auto;
    position: relative; /* ← これ重要：子要素の絶対配置を参照させる */
}

/* ボタンと重ならないように上部に余白を確保 */
#modalContent {
    margin-top: 30px; /* ボタンの高さなどに合わせて調整 */
}

/* ボタンのスタイル */
#modalWindow button#modalClose {
    position: absolute;
    top: 8px;
    right: 8px;
    background: transparent;
    border: none;
    font-size: 1.2em;
    cursor: pointer;
    z-index: 10; /* 上に表示させる */
}

    /*.message-history {
    position: relative;
    display: flex;
    flex-direction: column;
    z-index: 1;
    padding-top: 40px;
    padding-bottom: 111px;
}

.message-history::before {
    content: "";
    height: 100%;
    width: 5px;
    border-radius: 10px;
    background-color: #DDDDDD;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: -1;
}

.message-history .history-item {
    display: flex;
    column-gap: 20px;
    justify-content: center;
    position: relative;
    margin-bottom: 100px;
}

.message-history .history-item.reverse {
    flex-direction: row-reverse;
}

.message-history .history-item .history-date {
    width: 60px;
    height: 60px;
    background: linear-gradient(#ff9aa9 0%, #ff9d55 99.61%, #ff9d4d 100%);
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 32px;
    text-align: center;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
}

.message-history .history-item .message-category {
    max-width: 250px;
    width: 100%;
    border-radius: 10px;
    background: #fff;
    padding: 15px;
    position: absolute;
    right: 0;
    top: -19px;
}

.message-history .history-item.reverse .message-category {
    right: auto;
    left: 0;
}

.message-history .history-item .message-category::before {
    content: "";
    position: absolute;
    width: 22px;
    height: 3px;
    background-color: #ff9aa9;
    top: 50px;
    right: 100%;
}

.message-history .history-item.reverse .message-category::before {
    right: auto;
    left: 100%;
}

.message-history .history-item .message-category.sendto {
    border: 2px solid #ff9aa9;
}

.message-history .history-item .message-category figure {
    margin-bottom: 10px;
}

.message-history .history-item .message-category .message-text .message-title {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.04em;
    line-height: 20px;
    text-align: left;
    color: #555;
}

.message-history .history-item .message-category.sendto figure::before,
.message-history .history-item .message-category.reply figure::before,
.message-history .history-item .message-category.coach figure::before,
.message-history .history-item .message-category.send figure::before {
    content: "send to";
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 32px;
    text-align: left;
    color: #555;
    margin-right: 10px;
}

.message-history .history-item .message-category.memo {
    border: 2px solid #ddd;
}

.message-history .history-item .message-category.memo::before {
    background-color: #ddd;
}

.message-history .history-item .message-category.reply {
    border: 2px solid #ff9d4d;
}

.message-history .history-item .message-category.reply::before {
    background-color: #ff9d4d;
}

.message-history .history-item .message-category.coach {
    border: 2px solid #54a3c1;
}

.message-history .history-item .message-category.coach::before {
    background-color: #54a3c1;
}

.message-history .history-item .message-category.send {
    border: 2px solid #bc2929;
}

.message-history .history-item .message-category.send::before {
    background-color: #bc2929;
}

.message-history .history-item .message-category.reply figure::before {
    content: "Reply from";
}

.message-history .history-item .message-category.coach figure::before {
    content: "coarching from";
}

.message-history .history-item .message-category.send figure::before {
    content: "send";
}

.message-history .history-item .message-category .catename {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 32px;
    text-align: left;
    color: #555;
}
*/

    /*MemoMessageのメモ・メッセージを書く*/
    .message-box {
        display: flex;
        column-gap: 20px;
        margin-top: 50px;
        margin-bottom: 20px;
    }

        .message-box figure .bg-orange {
            display: flex;
            justify-content: center;
            align-items: center;
            margin-bottom: 10px;
            height: 50px;
            border-radius: 3px;
            background: linear-gradient(#ff9aa9 0%, #ff9d4d 100%);
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 14px;
            line-height: 18px;
            text-align: center;
            color: #fff;
        }

        .message-box figure {
            width: 100px;
        }

            .message-box figure img {
                margin-bottom: 3px;
            }

            .message-box figure p {
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 12px;
                text-align: center;
                color: #555;
            }

        .message-box .message-figures {
            display: flex;
            align-items: center;
            margin-bottom: 10px;
        }

        .message-box.write-message .myFigure {
            width: 70px;
            height: 70px;
            margin-right: 10px;
        }

        .message-box .message-figures .p-name {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 14px;
            line-height: 24px;
            text-align: center;
            color: #555;
        }

        /*.message-box .select-menus {
            display: flex;
            align-items: center;
        }

            .message-box .select-menus .memoonlycheck {
                transform: scale(2);
                margin-right: 10px;
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 14px;
            }*/

        .message-box .select-menus {
            display: flex;
            flex-direction: column; /* 上下に配置 */
            gap: 15px; /* 要素間のスペース */
        }

            .message-box .select-menus > .select-menu-category {
                display: flex;
                gap: 10px; /* プルダウン間のスペース */
            }

            .message-box .select-menus .select-conditions {
                display: flex;
                justify-content: space-between; /* ボタンを右に寄せる */
                align-items: center;
            }

            .message-box .select-menus .custom-select-menu-wrapper .custom-select-menu {
                margin-bottom: 10px !important;
            }

            .message-box .select-menus .select-conditions .submit-btn {
                display: flex;
                gap: 10px; /* ボタン間のスペース */
                margin-left: auto; /* ボタンを右端に寄せる */
            }

        .message-box .btn-submit, .message-box .btn-back {
            padding: 8px 15px;
            text-decoration: none;
            font-size: 14px;
            color: #fff;
            background-color: #007bff; /* ボタンの色 */
            border: none;
            border-radius: 4px;
            cursor: pointer;
        }

        .message-box .btn-back {
            background-color: #6c757d; /* 戻るボタンの色 */
        }

            .message-box .btn-submit:hover, .message-box .btn-back:hover {
                opacity: 0.8; /* ホバー時のエフェクト */
            }


    .select-conditions {
        display: flex;
        align-items: center; /* 垂直方向に中央揃え */
        gap: 10px; /* select と checkbox の間にスペースを追加 */
    }

        .select-conditions .selectcheckbutton {
            display: flex;
            align-items: center;
            gap: 15px;
        }

    @media screen and (max-width: 768px) {
        .select-conditions {
            display: flex;
            align-items: center; /* 垂直方向に中央揃え */
            gap: 5px; /* select と checkbox の間にスペースを追加 */
        }

            .select-conditions .selectcheckbutton {
                display: flex;
                align-items: center;
                gap: 15px;
            }
    }
    /*formがネストされるため、表示に反映されない
.message-box .message-area form {
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    border-radius: 0 0 10px 10px;
}

.message-box .message-area form label {
    display: block;
    width: 100%;
    width: 480px;
    height: 40px;
    border-radius: 10px 10px 0px 0px;
    background: linear-gradient(#ff9aa9 0%, #ff9d4d 100%);
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 40px;
    text-align: center;
    color: #fff;
}

.message-box .message-area form textarea {
    width: 100%;
    max-width: 480px;
    background: #fff;
    padding: 10px;
    min-height: 160px;
    border-radius: 0 0 10px 10px;
}
*/
    .message-box .message-area {
        box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
        border-radius: 0 0 10px 10px;
    }

        .message-box .message-area label {
            display: block;
            width: 100%;
            /*max-width: 480px;*/
            max-width: 100%;
            height: 40px;
            border-radius: 10px 10px 0px 0px;
            background: linear-gradient(#ff9aa9 0%, #ff9d4d 100%);
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            line-height: 40px;
            text-align: center;
            color: #fff;
        }

        .message-box .message-area input {
            width: 100%;
            max-width: 100%;
            /*max-width: 480px;*/
            background: #fdfdfd;
            padding: 10px;
            height: 50px;
            /*min-height: 160px;*/
            border-radius: 0 0 10px 10px;
        }

        .message-box .message-area textarea {
            width: 100%;
            /*max-width: 480px;*/
            max-width: 100%;
            background: #fbfbfb;
            padding: 10px;
            min-height: 110px;
            border-radius: 0 0 10px 10px;
        }

        

    /* SNS選択メニューと分類選択メニューのコンテナ */
    .select-menus {
        display: flex; /* 横並びに配置 */
        flex-wrap: wrap; /* 必要に応じて折り返し */
        gap: 20px; /* 各選択メニュー間の間隔 */
        margin-bottom: 20px; /* メニュー全体の下部に余白 */
    }

    /* 個々のカスタムセレクトメニューのスタイル */
    .custom-select-menu-wrapper {
        flex: 1; /* 各セレクトメニューが同じ幅で配置される */
        max-width: 300px; /* 最大幅の設定 */
    }

    .custom-select-menu {
        width: 100%; /* 親要素の幅に合わせる */
        padding: 10px; /* 内側の余白 */
        font-size: 16px; /* フォントサイズの調整 */
        border-radius: 5px; /* 角の丸み */
        border: 1px solid #ccc; /* ボーダーのスタイル */
        box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1); /* ボックスシャドウ */
    }

    .submit-btn {
        display: flex;
        column-gap: 10px;
        margin-left: auto;
        justify-content: flex-start;
        margin-bottom: 20px;
    }

        .submit-btn .btn-submit,
        .submit-btn .btn-contract {
            display: flex;
            justify-content: center;
            align-items: center;
            width: 120px;
            height: 60px;
            border-radius: 30px;
            background: linear-gradient(#ff9d4d 0%, #ff9aa9 100%);
            font-family: "Noto Sans JP", sans-serif;
            font-weight: bold;
            font-size: 16px;
            text-align: center;
            color: #fff;
        }

        .submit-btn .btn-contract {
            width: 220px;
            margin-left: auto;
        }

            .submit-btn .btn-submit.active,
            .submit-btn .btn-contract.active {
                background: linear-gradient(#ff9d4d 0%, #ff9aa9 100%);
            }

        .submit-btn .btn-back {
            display: flex;
            justify-content: center;
            align-items: center;
            width: 100px;
            height: 60px;
            border-radius: 30px;
            background: #fff;
            border: 3px solid #e0e0e0;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: bold;
            font-size: 16px;
            text-align: center;
            color: #222;
        }


    .btn-area-common {
        display: flex;
        flex-direction: column;
        row-gap: 15px;
    }


        .btn-area-common .submit-btn {
            display: flex;
            column-gap: 10px;
            margin-left: auto;
            justify-content: flex-start;
            margin-bottom: 20px;
        }

            .btn-area-common .submit-btn .btn-submit,
            .btn-area-common .submit-btn .btn-contract {
                display: flex;
                justify-content: center;
                align-items: center;
                width: 120px;
                height: 60px;
                border-radius: 30px;
                background: linear-gradient(#ddd 0%, #ccc 100%);
                font-family: "Noto Sans JP", sans-serif;
                font-weight: bold;
                font-size: 16px;
                text-align: center;
                color: #fff;
            }

            .btn-area-common .submit-btn .btn-contract {
                width: 220px;
                margin-left: auto;
            }

                .btn-area-common .submit-btn .btn-submit.active,
                .btn-area-common .submit-btn .btn-contract.active {
                    background: linear-gradient(#ff9d4d 0%, #ff9aa9 100%);
                }

            .btn-area-common .submit-btn .btn-back {
                display: flex;
                justify-content: center;
                align-items: center;
                width: 100px;
                height: 60px;
                border-radius: 30px;
                background: #fff;
                border: 3px solid #e0e0e0;
                font-family: "Noto Sans JP", sans-serif;
                font-weight: bold;
                font-size: 16px;
                text-align: center;
                color: #222;
            }

        .btn-area-common.column3 {
            flex-direction: row;
            column-gap: 10px;
            margin-bottom: 36px;
        }

        .btn-area-common .btn-item {
            position: relative;
            font-family: "Noto Sans JP", sans-serif;
            max-width: 322px;
            width: 100%;
            margin: auto;
            display: flex;
            justify-content: center;
            align-items: center;
        }

        .btn-area-common .btn-orange {
            background: transparent linear-gradient(340deg, #FF9D4D 0%, #FF9AA9 100%) 0% 0% no-repeat padding-box;
            color: #FFF;
            font-weight: bold;
            font-size: 20px;
            height: 80px;
            border-radius: 40px;
        }

        .btn-area-common.column3 .btn-orange,
        .searchform .search-area .btn-area-common .btn-orange {
            height: 60px;
            max-width: 230px;
        }

        .btn-area-common .btn-orange.fs16 {
            font-size: 16px;
        }

        .btn-area-common.column3 .btn-back,
        .btn-area-common.coach-detail .btn-back,
        .searchform .search-area .btn-area-common .btn-back {
            max-width: 100px;
            height: 60px;
            border-radius: 30px;
            background: #fff;
            border: 3px solid #e0e0e0;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: bold;
            font-size: 16px;
            text-align: center;
            color: #222;
        }

        .btn-area-common .btn-white {
            border-radius: 40px;
            border: 3px solid #ff9d4d;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: bold;
            font-size: 20px;
            height: 80px;
            text-align: center;
            color: #ff9d4d;
        }

            .btn-area-common .btn-orange::after,
            .btn-area-common .btn-gray::after,
            .btn-area-common .btn-white::after {
                content: "";
                background: url(../images/right-w.svg) no-repeat center/contain;
                width: 11px;
                height: 17px;
                position: absolute;
                top: 0;
                bottom: 0;
                margin: auto;
                right: 28px;
            }

        .btn-area-common .btn-gray::after {
            background: url(../images/right-g.svg) no-repeat center/contain;
        }

        .btn-area-common .btn-gray.reverse::after {
            right: auto;
            left: 28px;
            transform: rotate(180deg);
        }

        .btn-area-common .btn-white::after {
            background: url(../images/right-o.svg) no-repeat center/contain;
        }

        .btn-area-common .btn-white.reverse::after {
            right: auto;
            left: 28px;
            transform: rotate(180deg);
        }

        .btn-area-common.column3 .btn-orange::after,
        .searchform .search-area .btn-area-common .btn-orange::after {
            content: none;
        }

        .btn-area-common .btn-gray {
            border: 3px solid #e0e0e0;
            font-weight: 500;
            font-size: 16px;
            color: #222;
            border-radius: 32px;
            border-radius: 32px;
            height: 64px;
        }

        .btn-area-common .btn-text {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            line-height: 32px;
            text-align: center;
            color: #555;
        }

            .btn-area-common .btn-text.fs-14 {
                font-size: 14px;
                line-height: 32px;
            }

    /* コーチを探す */
    .scroll-area {
        overflow-x: auto;
        overflow-y: hidden;
        width: 100%;
        cursor: grab;
        margin-bottom: 35px;
    }

    .coach-list {
        width: 600px;
        height: 100%;
    }

        .coach-list th.w10 {
            width: 10%;
            max-width: 90px;
        }

        .coach-list th.w20 {
            width: 20%;
            max-width: 200px;
        }

        .coach-list th.w25 {
            width: 27%;
            max-width: 250px;
        }

        .coach-list th.w30 {
            width: 30%;
            max-width: 300px;
        }

        .coach-list th.sp-hidden,
        .coach-list td.sp-hidden {
            display: table-cell;
        }

        .coach-list td:nth-last-child(2) {
            padding: 23px 26px;
        }

        .coach-list .coach-prof.tal {
            text-align: left;
            padding: 10px;
        }

        .coach-list [type="radio"] {
            width: 24px;
            height: 24px;
            appearance: none;
            border: 2px solid #ccc;
            border-radius: 50%;
            position: relative;
            cursor: pointer;
        }

            .coach-list [type="radio"]:checked {
                background-color: #F9EDD2;
                /* 変更したい色に設定 */
                border-color: #FF9D4D;
                /* 変更したい色に設定 */
            }

                .coach-list [type="radio"]:checked::before {
                    content: '';
                    display: block;
                    width: 10px;
                    height: 10px;
                    border-radius: 50%;
                    background: #FF9D4D;
                    position: absolute;
                    top: 50%;
                    left: 50%;
                    transform: translate(-50%, -50%);
                }

    .scroll-area::-webkit-scrollbar {
        height: 10px;
    }

    .scroll-area::-webkit-scrollbar-track {
        background: #eee;
        /* スクロールバーのトラック部分の色 */
        border-radius: 10px;
    }

    .scroll-area::-webkit-scrollbar-thumb {
        background: #ff9d4d;
        /* スクロールバーのサム部分の色 */
        border-radius: 10px;
    }

        .scroll-area::-webkit-scrollbar-thumb:hover {
            background: #ff9d4d;
        }

    /* 横スクロールバーの矢印を非表示にする */
    .scroll-area::-webkit-scrollbar-button {
        display: none;
    }

    /* コーチの詳細 */
    .btn-area.coach-detail {
        flex-direction: row;
        justify-content: space-between;
        width: 100%;
        margin-bottom: 45px;
    }

        .btn-area.coach-detail .btn-item {
            margin: 0;
        }

        .btn-area.coach-detail .btn-orange {
            height: 60px;
        }

            .btn-area.coach-detail .btn-orange::after {
                content: none;
            }

    .coach-detail .strengths {
        display: block;
        background-color: #FFF;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: bold;
        font-size: 18px;
        line-height: 40px;
        text-align: center;
        color: #ff9d4d;
        margin-bottom: 17px;
    }

    .coach-detail .mb55 {
        margin-bottom: 55px;
    }

    .coach-detail .mb55 {
        margin-bottom: 40px;
    }

    .coach-detail .coach-prof {
        display: flex;
        column-gap: 32px;
    }

    .coach-detail .prof-txt {
        width: 600px;
    }

    @media (max-width: 768px) {
        .coach-detail .prof-txt {
            /*width: 400px;*/
            width: 320px !important;
        }
    }

    .coach-detail .prof-txt p {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 16px;
        line-height: 25px;
        text-align: left;
        color: #555;
    }

    .coach-career {
        border-collapse: collapse;
    }

        .coach-career th {
            background: #ff9aa9;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            text-align: left;
            color: #fff;
            width: 190px;
            padding: 18px 15px;
            border: 1px solid #ccc;
            white-space: nowrap;
        }

        .coach-career td {
            border: 1px solid #ccc;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            line-height: 30px;
            text-align: left;
            color: #555;
            padding: 18px 25px 15px 34px;
            word-break: keep-all;
            background: #FFF;
            width: 400px;
        }

            .coach-career td p {
                word-wrap: break-word; /* 長い単語を折り返す */
                word-break: normal; /* 単語の途中で改行しない（デフォルト） */
                white-space: normal; /* テキストが自動的に折り返される */
            }

    @media (max-width: 768px) {
        .coach-career td {
            border: 1px solid #ccc;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            line-height: 30px;
            text-align: left;
            color: #555;
            padding: 18px 25px 15px 34px;
            word-break: keep-all;
            background: #FFF;
            width: 320px;
        }
    }

    #coach-detail-modified {
        display: flex;
        width: 600px;
        height: 60px;
    }

        #coach-detail-modified p {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            line-height: 30px;
            text-align: left;
            color: #555;
            word-break: keep-all;
            /*background: #FFF;*/
        }

    @media (max-width: 768px) {
        #coach-detail-modified {
            display: flex;
            width: 320px;
            height: 60px;
        }

            #coach-detail-modified p {
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 16px;
                line-height: 30px;
                text-align: left;
                color: #555;
                word-break: keep-all;
                /*background: #FFF;*/
            }
    }

    #coach-setting-butonn-area {
        display: flex;
        margin-top: 40px;
        height: 200px;
        padding: 40px;
    }

    @media (max-width: 768px) {
        #coach-setting-butonn-area {
            display: flex;
            margin-top: 40px;
            height: 200px;
            padding: 40px;
            width: 200px;
        }
    }

    /*コーチの選択*/
    #coach-name {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 30px;
        line-height: 48px;
        text-align: center;
        color: #222;
        margin-bottom: 28px;
    }

    /*コーチ情報の編集*/
    #area-expertise-title {
        width: 600px !important; /* 横幅を100%に設定 */
        height: 60px;
        padding: 10px; /* 内側の余白を設定 */
        font-size: 16px; /* フォントサイズを設定 */
        border: 1px solid #ccc; /* 枠線を薄いグレーに設定 */
        border-radius: 4px; /* 角を丸くする */
        box-sizing: border-box; /* パディングを含めて幅を計算 */
        outline: none; /* フォーカス時のアウトラインを消す */
        background-color: #ffeea0;
        margin-bottom: 20px;
    }

    @media (max-width: 768px) {
        #area-expertise-title {
            width: 320px !important; /* 横幅を100%に設定 */
            height: 50px;
            padding: 10px; /* 内側の余白を設定 */
            font-size: 16px; /* フォントサイズを設定 */
            border: 1px solid #ccc; /* 枠線を薄いグレーに設定 */
            border-radius: 4px; /* 角を丸くする */
            box-sizing: border-box; /* パディングを含めて幅を計算 */
            outline: none; /* フォーカス時のアウトラインを消す */
            background-color: #ffeea0;
            margin-bottom: 20px;
        }
    }

    #area-expertise-title::placeholder {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: normal;
        color: #ccc
    }

    #area-expertise-body {
        width: 420px !important; /* 横幅を100%に設定 */
        height: 270px;
        padding: 10px;
        font-size: 16px;
        border: 1px solid #ccc;
        border-radius: 4px;
        box-sizing: border-box;
        outline: none;
        background-color: #ffeea0;
        /*min-height: 160px;*/
        border-radius: 0 0 10px 10px;
    }

    @media (max-width: 768px) {
        #area-expertise-body {
            width: 320px !important;
            /*width: 100%;*/
            max-width: none;
            padding: 2.326vw;
            min-height: 37.209vw;
            border-radius: 4px;
            outline: none;
            background-color: #ffeea0;
            margin-bottom: 20px;
        }
    }

    #area-expertise-body::placeholder {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: normal;
        color: #ccc
    }

    #coach-poto {
        display: flex;
        margin-top: 0px;
        flex-direction: column; /* 縦に並べる */
        align-items: center; /* 中央揃えにする */
    }

    #coach-poto-entry {
        display: flex;
        flex-direction: column; /* 縦に並べる */
        align-items: center; /* 中央揃えにする */
    }

    #coach-poto figure {
        margin-top: 0px;
        margin-bottom: 20px;
    }

    @media (max-width: 768px) {
        #coach-poto {
            flex-direction: row; /* 横に並べる */
            justify-content: left;
        }

        #coach-poto-entry {
            display: flex;
            /*margin-top: 20px;*/
            flex-direction: column; /* 縦に並べる */
            align-items: start; /* 中央揃えにする */
            margin-left: 50px; /* 画像とボタンの間に少し余白を追加 */
        }
    }

    .coach-detail .prof-txt .coach-profile {
        width: 600px !important; /* 横幅を100%に設定 */
        height: 150px;
        padding: 10px;
        font-size: 16px;
        border: 1px solid #ccc;
        border-radius: 4px;
        box-sizing: border-box;
        outline: none;
        background-color: #ffeea0;
        /*min-height: 160px;*/
        border-radius: 0 0 10px 10px;
        margin-bottom: 20px;
    }

    @media (max-width: 768px) {
        .coach-detail .prof-txt .coach-profile {
            width: 320px !important;
            /*width: 100%;*/
            max-width: none;
            padding: 2.326vw;
            min-height: 37.209vw;
            border-radius: 4px;
            outline: none;
            background-color: #ffeea0;
            margin-bottom: 20px;
        }
    }

    .coach-detail .prof-txt .coach-profile::placeholder {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: normal;
        color: #ccc
    }


    .coach-detail .coach-career .coach-career-item {
        width: 385px !important; /* 横幅を100%に設定 */
        height: 150px;
        padding: 10px;
        font-size: 16px;
        border: 1px solid #ccc;
        border-radius: 4px;
        box-sizing: border-box;
        outline: none;
        background-color: #ffeea0;
        /*min-height: 160px;*/
        border-radius: 0 0 10px 10px;
    }

    .coach-detail .coach-career .coach-career-td {
        width: 320;
        border: 1px solid #ccc;
        font-size: 16px;
        line-height: 24px;
        padding: 5px;
        word-break: normal;
    }

    @media (max-width: 768px) {
        .coach-detail .coach-career .coach-career-item {
            width: 300px !important;
            /*width: 100%;*/
            max-width: none;
            padding: 2.326vw;
            min-height: 37.209vw;
            border-radius: 4px;
            outline: none;
            background-color: #ffeea0;
        }

        .coach-detail .coach-career .coach-career-td {
            border: 1px solid #ccc;
            font-size: 3.721vw;
            line-height: 6.977vw;
            padding: 2vw 2vw 2vw 2vw;
            word-break: normal;
        }
    }

    .coach-detail .coach-career .coach-career-item::placeholder {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: normal;
        color: #ccc
    }


    /* 検索 */
    .searchform {
        display: flex;
        margin-bottom: 56px;
    }

        .searchform figure {
            padding-right: 10px;
            border-right: 1px solid #E3E3E3;
            margin-right: 13px;
            max-width: 100px;
            width: 100%;
        }

            .searchform figure .p-name {
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 12px;
                line-height: 32px;
                text-align: center;
                color: #555;
            }

        .searchform .search-area {
            display: flex;
            flex-wrap: wrap;
            column-gap: 17px;
        }

            .searchform .search-area .form-group {
                display: flex;
                flex-direction: column;
                max-width: 230px;
                width: 50%;
                align-items: flex-start;
                margin: 0;
                row-gap: 7px;
            }

                .searchform .search-area .form-group input {
                    background-color: #FFF;
                }

            .searchform .search-area .btn-area {
                width: 100%;
                flex-direction: row;
                justify-content: space-between;
                margin-top: 18px;
            }

                .searchform .search-area .btn-area .btn-orange {
                    width: 120px;
                    font-size: 16px;
                }

                .searchform .search-area .btn-area .btn-item {
                    margin: 0;
                }

    .search-results {
        display: flex;
        flex-wrap: wrap;
        column-gap: 5px;
        row-gap: 21px;
    }

        .search-results.mb250 {
            margin-bottom: 250px;
        }

        .search-results figure {
            width: 70px;
        }

            .search-results figure .p-name {
                font-family: "Noto Sans JP", sans-serif;
                font-weight: 500;
                font-size: 12px;
                line-height: 32px;
                text-align: center;
                color: #555;
            }

    /*設定*/
    .setting-friends {
        margin-bottom: 6.977vw;
        display: flex;
        /*flex-wrap:wrap;
    justify-content: space-around;*/
    }

        .setting-friends.setting-friends-figure-container,
        .setting-friends.setting-friends-slide {
            width: 16.279vw;
        }

    .setting-friends-figure-wrapper {
        display: flex;
        flex-wrap: wrap;
    }

    .setting-friends .setting-friends-new-friend {
        padding-right: 20px;
        width: 150px;
    }
        /*
.setting-friends.setting-friends-new-friend {
    padding-right: 2.326vw;
    border-right: 1px solid #E3E3E3;
}
*/

        .setting-friends .setting-friends-new-friend figure:nth-child(1)::after {
            content: '';
            position: absolute;
            right: -5px;
            top: 0;
            width: 2px;
            height: 70%;
            background-color: #E3E3E3;
        }

    .setting-friends-new-friend figure {
        display: inline-block;
        position: relative;
        padding-right: 10px;
    }

    .setting-friends-new-friend figure2 {
        display: inline-block;
        position: relative;
        padding-right: 10px;
        width: 80px;
    }

    .setting-friends-new-friend .setting-friends-new-friend-img {
        width: 100%;
        height: 100%;
    }

    @media screen and (max-width: 768px) {
        .setting-friends .setting-friends-new-friend {
            padding-right: 20px;
            width: 80px;
        }

        .setting-friends-new-friend figure {
            display: inline-block;
            position: relative;
            padding-right: 5px;
        }

        .setting-friends-new-friend figure2 {
            display: inline-block;
            position: relative;
            padding-right: 5px;
            width: 55px;
        }
    }

    .setting-friends-slide {
        display: inline-block;
        position: relative;
        padding-right: 7px;
        /*width:150px;
    margin:10px;
    text-align center;*/
    }

    .setting-friends .p-name-friends {
        font-family: "Noto Sans JP", sans-serif;
        /*font-size: 2.791vw;*/
        font-weight: 500;
        font-size: 12px;
        line-height: 32px;
        text-align: center;
        color: #555;
    }

    .setting-nonfriends-figure-wrapper {
        margin-left: -50px;
    }

    .setting-nonfriends-slide {
        display: inline-block;
        position: relative;
        padding-right: 7px;
    }

        .setting-nonfriends-slide figure {
            display: inline-block;
            position: relative;
            padding-right: 5px;
            width: 70px;
        }

        .setting-nonfriends-slide img {
            width: 70px;
        }

    @media screen and (max-width: 768px) {
        .setting-nonfriends-figure-wrapper {
            margin-left: -80px;
        }

        .setting-nonfriends-slide {
            /*display: inline-block;
            position: relative;
            padding-right: 7px;*/
            display: flex; /* フレックスボックスを適用 */
            flex-direction: column; /* 縦方向に並べる */
            align-items: center; /* 中央揃え */
            justify-content: center; /* 縦方向の中央揃え */
            text-align: center; /* テキストを中央揃え */
            width: 50px; /* 必要に応じて調整 */
        }

            .setting-nonfriends-slide figure {
                display: inline-block;
                position: relative;
                padding-right: 5px;
            }

            .setting-nonfriends-slide img {
                width: 50px;
            }

            .setting-nonfriends-slide p {
                width: 60px;
            }
    }

    /*.setting-friends .setting-friends-figure-container figure {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}*/

    /*.setting-friends .setting-friends-figure-wrapper figure {
    display: flex;
    position: relative;
    padding-right: 10px;
}
*/

    .setting-friends-slide .p-name {
        font-size: 2.791vw;
        line-height: 32px;
        text-align: center;
        color: #555;
    }

    /*.setting-friends {
    display: flex;
    flex-wrap: wrap;
    column-gap: 5px;
    row-gap: 21px;
}

.setting-friends.mb250 {
    margin-bottom: 250px;
}

.setting-friends figure {
    width: 70px;
}

.setting-friends figure .p-name {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 32px;
    text-align: center;
    color: #555;
}

    .setting-friends figure:nth-child(1)::after {
        content: '';
        position: absolute;
        right: -5px;
        top: 0;
        width: 2px;
        height: 100%;
        background-color: #E3E3E3;
    }*/

    /*.setting-friends-figure-container {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.setting-friends-new-friend figure {
    display: inline-block;
    position: relative;
    padding-right: 10px;
}

.setting-friends-new-friend figure::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 2px;
    height: 80%;
    background-color: #E3E3E3;
}
*/
    /*
figure {
    display: inline-block;
    margin: 0;
    padding: 0;
    text-align: center;
}*/
    /*
.w100 {
    width: 70px;
    height: 70px;
}*/

    /*.myFigure {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background-size: cover;
    background-position: center;
    border: 1px solid #ccc;
    margin-bottom: 10px;
}

.p-name {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 32px;
    text-align: center;
    color: #555;
}

.p-name-friends {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 1.5;
    text-align: center;
    color: #555;
    margin-top: 10px;
}
*/

    /* 契約(申し込み) */
    .message-comment {
        background-color: #FFF;
        padding: 18px 27px 24px 23px;
        max-width: 480px;
        box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
        border-radius: 10px;
        width: 100%;
    }

        .message-comment p {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            line-height: 32px;
            text-align: left;
            color: #222;
        }

    .date-form {
        display: flex;
        flex-direction: column;
        margin: auto;
        row-gap: 7px;
        margin-bottom: 20px;
    }

        .date-form label,
        .fee-form label {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            text-align: left;
            color: #555;
        }

    .date-select {
        display: flex;
        align-items: flex-end;
        gap: 10px;
        flex-wrap: wrap;
    }

        .date-select select {
            background-color: #FFF;
            padding: 10px;
            font-size: 16px;
            border: 1px solid #ccc;
            border-radius: 5px;
            appearance: none;
            /* デフォルトの矢印を非表示にする */
            background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSI2IiB2aWV3Qm94PSIwIDAgMTAgNiI+PHBhdGggZD0iTTEgMWw0IDRMOSAxIiBzdHJva2U9IiM3Nzc3NzciIHN0cm9rZS13aWR0aD0iMiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==');
            background-repeat: no-repeat;
            background-position: right 10px center;
            background-size: 10px 6px;
            cursor: pointer;
            min-width: 80px;
        }

        .date-select span {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            text-align: left;
            color: #555;
        }

        .date-select select:focus {
            outline: none;
            border-color: #ff9d4d;
        }

        .date-select .textform {
            background: #fff;
            border: 1px solid #ccc;
            border-radius: 3px;
            /*padding: 9px 12px;*/
            padding: 0px;
            line-height: 1;
        }

    .fee-form,
    .arrangements {
        margin-bottom: 20px;
    }

        .arrangements .ttl,
        .write-message .ttl {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            text-align: left;
            color: #555;
            margin-bottom: 7px;
        }

        .arrangements .message-comment {
            padding: 10px;
            min-height: 120px;
        }

            .arrangements .message-comment p {
                font-family: "Noto Sans JP", sans-serif;
                font-weight: normal;
                font-size: 16px;
                line-height: 24px;
                text-align: left;
                color: #555;
            }

    .write-message .message-comment {
        padding: 0;
        min-height: 120px;
        width: 100%;
    }

        .write-message .message-comment textarea {
            padding: 10px;
            width: 100%;
            max-width: 100%;
            height: 100%;
        }

    /* 契約（クライアントの決済処理）*/
    .contract-detail {
        background: #fff;
        filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
        border-radius: 10px;
        border-collapse: collapse;
    }

        .contract-detail th {
            background: transparent linear-gradient(90deg, #FF9AA9 0%, #FF9D4D 100%) 0% 0% no-repeat padding-box;
            text-align: center;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            line-height: 40px;
            text-align: center;
            color: #fff;
            width: 140px;
            border-bottom: 1px solid #DDDDDD;
        }

        .contract-detail tr:first-child th {
            border-radius: 10px 0 0 0;
        }

        .contract-detail tr:last-child th {
            border-radius: 0 0 0 10px;
            border-bottom: none;
        }

        .contract-detail td {
            padding: 8px 15px;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            line-height: 24px;
            text-align: left;
            color: #555;
            border-bottom: 1px solid #DDDDDD;
        }

        .contract-detail tr:last-child td {
            border-bottom: none;
        }



    /*Q&Aに関する設定*/
    /*レポートの共有*/
    /*分類選択*/
    .friendtype-select-menu-wrapper {
        display: flex; /* 子要素を横並びに配置 */
        align-items: center; /* 縦方向の中央揃え */
        justify-content: flex-end; /* 右寄せに配置 */
        gap: 2px; /* <p>と<select>の間隔を設定 */
        width: 100%; /* 全体の幅を設定 */
    }

        .friendtype-select-menu-wrapper .friendtype-select-title {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 14px; /* テキストサイズ */
            text-align: right;
            color: #555;
            margin: 0; /* 不要な余白を削除 */
            white-space: nowrap; /* 改行を防ぐ */
        }

        .friendtype-select-menu-wrapper .custom-select-menu {
            width: auto; /* 必要に応じて幅を調整 */
            flex-grow: 1; /* 残りのスペースを占めるように設定（任意） */
            min-width: 150px; /* 適切な最小幅を設定 */
            padding: 5px; /* 内側の余白を追加 */
            border: 1px solid #ccc; /* 枠線のスタイル */
            border-radius: 4px; /* 角を丸める */
            font-size: 14px; /* テキストサイズを調整 */
        }
    /*.friendtype-select-menu-wrapper {
    display:flex;
    position: relative;
    display: inline-block;
    width: 100%;
}

    .friendtype-select-menu-wrapper::before {
        content: "";
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        border: 1px solid #ccc;
        border-radius: 0 0 4px 4px;
        display: none;
        z-index: 1;
        background-color: white;
    }

    .friendtype-select-menu-wrapper .friendtype-select-title{
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 14px;
        text-align: right;
        color: #555;
    }*/

    /*チェックボックスのサイズを大きく*/
    #checkbox-item {
        transform: scale(1.5); /* 倍率を指定 (1.5倍に拡大) */
        margin-right: 10px; /* チェックボックスとテキストの間に余白を追加 */
    }

    /*swiperの表示幅の指定*/
    .reportopentarget-list.message .swiper-container {
        /*width:510px;*/
        /*width: 296px;*/
        /*width: 52.326vw;*/
        /*width: 46vw;*/
        width: 90%;
        margin-left: 30px;
        overflow: hidden;
    }
    /*スマホでの前後の矢印の設定*/
    @media only screen and (max-width: 960px) {
        .reportopentarget-list.message .swiper-container {
            width: 270px;
            /*width: 48vw;*/
            margin-left: 23px;
            overflow: hidden;
        }
    }

    @media only screen and (orientation: landscape) {
        .reportopentarget-list.message .swiper-container {
            /*width: 270px;*/
            width: 90%;
            /*width: 48vw;*/
            margin-left: 23px;
            overflow: hidden;
        }
    }

    .reportopentarget-list.message .swiper-slide {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        width: 80px;
        margin-right: 0px !important; /* 強制的に `margin-right` を上書き */
    }

        .reportopentarget-list.message .swiper-slide img {
            width: 70px;
            height: 70px;
            border-radius: 50%;
        }

    .reportopentarget-list .person-search {
        margin-left: 32px;
    }

    .reportopentarget-list .person-coach {
        padding-left: 10px;
        border-left: 1px solid #E3E3E3;
        margin-left: 9px;
        margin-right: 0;
    }

    .reportopentarget-list .swiper-slide {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        width: 70px;
    }

        .reportopentarget-list .swiper-slide img {
            width: 70px;
            height: 70px;
            border-radius: 50%;
        }

    /*前後の矢印の設定*/
    .reportopentarget-list .swiper-button-prev:after,
    .reportopentarget-list .swiper-rtl .swiper-button-next:after {
        content: '';
        background: url(../images/mypage/prev.svg) no-repeat center/contain;
        width: 14px;
        height: 24px;
    }

    .reportopentarget-list .swiper-button-next:after,
    .reportopentarget-list .swiper-rtl .swiper-button-prev:after {
        content: '';
        background: url(../images/mypage/next.svg) no-repeat center/contain;
        width: 14px;
        height: 24px;
    }

    .reportopentarget-list.message .swiper-button-prev,
    .reportopentarget-list.message .swiper-rtl .swiper-button-next {
        /*left: 90px;*/
        left: 40px;
        right: auto;
        width: 14px;
        height: 24px;
        /*top: 59%;*/
        top: 440px;
    }

    .reportopentarget-list.message .swiper-button-next,
    .reportopentarget-list.message .swiper-rtl .swiper-button-prev {
        /*right: 90px;*/
        right: 40px;
        left: auto;
        width: 14px;
        height: 24px;
        /*top: 59%;*/
        top: 440px;
    }

    /*スマホでの前後の矢印の設定*/
    @media only screen and (max-width: 960px) {
        .reportopentarget-list.message .swiper-button-prev,
        .reportopentarget-list.message .swiper-rtl .swiper-button-next {
            /*left: 90px;*/
            left: 20px;
            right: auto;
            width: 14px;
            height: 24px;
            /*top: 54.5%;*/
            top: 385px;
        }

        .reportopentarget-list.message .swiper-button-next,
        .reportopentarget-list.message .swiper-rtl .swiper-button-prev {
            /*right: 90px;*/
            right: 20px;
            left: auto;
            width: 14px;
            height: 24px;
            /*top: 54.5%;*/
            top: 385px;
        }
    }



    .editcategory {
        width: 480px;
        height: 150px;
        margin-left: 100px;
        margin-bottom: 50px;
    }

    .editcategory-box {
        display: flex;
        column-gap: 20px;
        margin-top: 50px;
        margin-bottom: 20px;
    }

        .editcategory-box .category-name-area textarea {
            resize: none; /* リサイズを無効化 */
            width: 100%;
            max-width: 100%;
            background: #fbfbfb;
            padding: 10px;
            min-height: 110px;
            border-radius: 0 0 10px 10px;
            border: 2px solid #ccc; /* 枠線の太さ、スタイル、色を指定 */
            border-radius: 5px; /* 角を丸くする */
            padding: 10px; /* 内側の余白を指定 */
        }

    //メモ・メッセージの編集
    .message-edit-box {
        display: flex;
        column-gap: 20px;
        margin-top: 50px;
        margin-bottom: 20px;
    }

    .message-edit-box .message-area {
        box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
        border-radius: 0 0 10px 10px;
    }

        .message-edit-box .message-area label {
            display: block;
            width: 100%;
            /*max-width: 480px;*/
            max-width: 100%;
            height: 40px;
            border-radius: 10px 10px 0px 0px;
            background: linear-gradient(#ff9aa9 0%, #ff9d4d 100%);
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            line-height: 40px;
            text-align: center;
            color: #fff;
        }

        .message-edit-box .message-area .sub-title {
            display: block;
            width: 100%;
            /*max-width: 480px;*/
            max-width: 100%;
            height: 40px;
            border-radius: 0px 0px 0px 0px;
            background: linear-gradient(#faaf3e 0%, #faaf3e 100%);
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            line-height: 40px;
            text-align: center;
            color: #fff;
        }

        .message-edit-box .message-area .message2 {
            display: block;
            width: 100%;
            /*max-width: 480px;*/
            max-width: 100%;
            height: 40px;
            border-radius: 10px 10px 0px 0px;
            background: linear-gradient(#b0fa5c 0%, #6ac721 100%);
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 16px;
            line-height: 40px;
            text-align: center;
            color: #fff;
        }

        .message-edit-box .message-area input {
            width: 100%;
            max-width: 100%;
            background: #fdfdfd;
            padding: 10px;
            height: 50px;
            /*min-height: 160px;*/
            border-radius: 0 0 10px 10px;
        }

        .message-edit-box .message-area textarea {
            width: 100%;
            /*max-width: 480px;*/
            max-width: 100%;
            background: #fbfbfb;
            padding: 10px;
            min-height: 110px;
            border-radius: 0 0 10px 10px;
        }

        .message-edit-box .message-area .applycomment {
            width: 100%;
            max-width: 100%;
            background: #fbfbfb;
            padding: 10px;
            min-height: 80px;
            border-radius: 0 0 10px 10px;
        }

        .message-edit-box .message-area .avatar-prof {
            display: flex;
            align-items: center; /* ← これで縦中央揃え */
            gap: 10px; /* figure と名前の間にスペース */
            padding: 10px 0; /* 上下に余白 */
        }

        .message-edit-box .message-area .myFigure {
            margin-left:20px;
            width: 70px;
            height: 70px;
            background-size: cover;
            background-position: center;
            border-radius: 50%;
            border: 1px solid #ccc;
        }

        .message-edit-box .message-area .avatar-name {
            margin-top: 25px;
            font-size: 16px;
            font-weight: bold;
            color: #333;
            line-height: 1;
        }

        .message-edit-box figure .bg-orange {
            display: flex;
            justify-content: center;
            align-items: center;
            margin-bottom: 10px;
            height: 50px;
            border-radius: 3px;
            background: linear-gradient(#ff9aa9 0%, #ff9d4d 100%);
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 14px;
            line-height: 18px;
            text-align: center;
            color: #fff;
        }

    .message-edit-box figure {
        width: 100px;
    }

        .message-edit-box figure img {
            margin-bottom: 3px;
        }

        .message-edit-box figure p {
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 12px;
            text-align: center;
            color: #555;
        }

    .message-edit-box .message-figures {
        display: flex;
        align-items: center;
        margin-bottom: 10px;
    }

    .message-edit-box.edit-message .myFigure {
        width: 70px;
        height: 70px;
        margin-right: 10px;
    }

    .message-edit-box .message-figures .p-name {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 14px;
        line-height: 24px;
        text-align: center;
        color: #555;
    }

    .message-edit-box .select-menus {
        display: flex;
        align-items: center; /* 垂直方向に中央揃え */
        gap: 10px;
    }

        .message-edit-box .select-menus .memoonlycheck {
            transform: scale(2); /* 必要に応じて調整 (1.5は1.5倍のサイズ) */
            margin-right: 10px; /* チェックボックスと文字の間に適度なスペース */
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 500;
            font-size: 14px;
        }

    .message-edit-box.edit-message .myFigure {
        width: 70px;
        height: 70px;
        margin-right: 10px;
    }

    .message-edit-box.edit-message .message-figures .myFigure {
        width: 50px;
        height: 50px;
        margin-left: 10px;
    }

    .message-edit-box.edit-message .select-menus .memoonlycheck {
        transform: scale(1.5); /* 必要に応じて調整 (1.5は1.5倍のサイズ) */
        margin-right: 10px; /* チェックボックスと文字の間に適度なスペース */
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 12px;
    }

    .message-edit-box .input-recipient-number {
        box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
        border-radius: 5px 5px 5px 5px;
        width: 80%;
        height: 40px;
        margin-bottom: 40px;
    }

        .message-edit-box .input-recipient-number input {
            width: 100%;
            max-width: 100%;
            /*max-width: 480px;*/
            background: #fdfdfd;
            padding: 10px;
            height: 40px;
            /*min-height: 160px;*/
            border-radius: 5px 5px 5px 5px;
        }

    @media only screen and (max-width: 960px) {
        .message-edit-box {
            margin-top: 0px !important; /* 不要な余白を削除 */
        }

            .message-edit-box .select-menus {
                display: flex;
            }

                .message-edit-box .select-menus .submit-btn {
                    margin-top: 0px; /* 送信ボタンの余白を削除 */
                    display: block;
                }

                    .message-edit-box .select-menus .submit-btn .btn-submit {
                        width: 17vw;
                        height: 12vw;
                        border-radius: 6.977vw;
                        font-size: 3.721vw;
                        margin-bottom: 5px;
                    }

                    .message-edit-box .select-menus .submit-btn .btn-back {
                        width: 15vw;
                        height: 12vw;
                        border-radius: 6.977vw;
                        border: 3px solid #e0e0e0;
                        font-size: 3.721vw;
                    }

        .message-edit-box {
            flex-direction: column;
            row-gap: 4.651vw;
            margin-top: 11.628vw;
            margin-bottom: 4.651vw;
        }

            .message-edit-box .message-area form label {
                width: 100%;
                height: 9.302vw;
                border-radius: 2.326vw 2.326vw 0px 0px;
                font-size: 3.721vw;
                line-height: 9.302vw;
            }

            .message-edit-box .message-area form textarea {
                width: 100%;
                max-width: none;
                padding: 2.326vw;
                min-height: 37.209vw;
                border-radius: 0 0 2.326vw 2.326vw;
            }

        .submit-btn .btn-submit,
        .submit-btn .btn-contract {
            width: 46.512vw;
            height: 13.953vw;
            border-radius: 6.977vw;
            font-size: 3.721vw;
        }

        .submit-btn .btn-back {
            width: 23.256vw;
            height: 13.953vw;
            border-radius: 6.977vw;
            border: 3px solid #e0e0e0;
            font-size: 3.721vw;
        }

        .message-edit-box figure {
            width: 23.256vw;
            display: flex;
            flex-direction: column;
            align-items: center;
        }

            .message-edit-box figure p {
                font-size: 2.791vw;
            }

        .edit-message .message-edit-comment textarea {
            padding: 2.326vw;
        }
    }

    /* スマートフォンここから */
    @media only screen and (max-width: 960px) {
        .editcategory {
            width: 310px;
            height: 150px;
            margin-left: 0;
            margin-bottom: 30px;
        }

        .editcategory-box {
            display: flex;
            column-gap: 20px;
            margin-top: 50px;
            margin-bottom: 20px;
        }

            .editcategory-box .category-name-area textarea {
                resize: none; /* リサイズを無効化 */
                width: 100%;
                max-width: 100%;
                background: #fbfbfb;
                padding: 10px;
                min-height: 110px;
                border-radius: 0 0 10px 10px;
                border: 2px solid #ccc; /* 枠線の太さ、スタイル、色を指定 */
                border-radius: 5px; /* 角を丸くする */
                padding: 10px; /* 内側の余白を指定 */
            }
        /*.editcategory-box.write-category-name .editcategory-figures .myFigure {
        width: 50px;
        height: 50px;
        margin-left: 10px;
    }

    .editcategory-box.write-category-name .select-menus .memoonlycheck {
        transform: scale(1.5); 
        margin-right: 10px; 
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        font-size: 12px;
    }*/
    }

    /* スマートフォンここから */
    @media only screen and (max-width: 960px) {

        .sp-hidden,
        table .sp-hidden {
            display: none;
        }

        .smart-hidden {
            display: none;
        }

        .pc-hidden {
            display: block;
        }

        table .pc-hidden {
            display: table-row;
        }

        body {
            background-color: #f5ebeb;
            position: relative;
        }

        .wrap {
            height: 97.907vw;
            padding-bottom: 0;
            background: url(../images/bg_sp_new.png) no-repeat top center / 100% auto;
            overflow: visible;
        }

        header .btn-back {
            left: 3.256vw;
            right: auto;
            margin-left: 0;
            font-size: 2.326vw;
            max-width: 42.326vw;
            padding-left: 1.628vw;
            height: 8.605vw;
            border-radius: 5.698vw;
        }

            header .btn-back:before {
                width: 3.256vw;
                height: 2.326vw;
                left: 3.721vw;
            }

        .contents-wrapper {
            max-width: 89.535vw;
            /*top: 46.512vw;*/
            top: 36.512vw;
            padding-bottom: 27.907vw;
        }

        .contents .inner {
            padding-top: 10.233vw;
            margin-bottom: 8.14vw;
            max-width: 80.186vw;
        }

            .contents .inner .main-ttl {
                font-size: 4.884vw;
                /*font-size: 3.884vw;*/
                line-height: 6.977vw;
                margin-bottom: 3.953vw;
            }

        .description {
            /*font-size: 3.721vw;*/
            font-size: 3.1vw;
            /*line-height: 7.442vw;*/
            line-height: 5.442vw;
            max-width: 74.186vw;
            width: 100%;
            margin: auto auto 6.977vw;
        }

        .description-allowimg {
            width:12% !important;
        }

        .btn-area .btn-orange {
            font-size: 4.186vw;
            height: 15.814vw;
            border-radius: 23.256vw;
        }

        .btn-area .btn-gray {
            font-size: 3.256vw;
            height: 12.791vw;
            border-radius: 23.256vw;
        }

        .btn-area-common .btn-orange {
            font-size: 6.186vw;
            height: 12.814vw;
            width: 40vw;
            border-radius: 23.256vw;
        }

        .btn-area-common .btn-gray {
            font-size: 3.256vw;
            height: 12.791vw;
            border-radius: 23.256vw;
        }

        .btn-area-common .btn-white {
            border: 0.698vw solid #ff9d4d;
            font-size: 4.186vw;
            height: 15.814vw;
            border-radius: 23.256vw;
        }

        .btn-area-common .submit-btn .btn-submit {
            width: 46.512vw;
            height: 13.953vw;
            border-radius: 6.977vw;
            font-size: 3.721vw;
        }

        .btn-area-common .btn-contract {
            width: 46.512vw;
            height: 13.953vw;
            border-radius: 6.977vw;
            font-size: 3.721vw;
            display: flex;
            justify-content: center;
            align-items: center;
            background: linear-gradient(#ff9d4d 0%, #ff9aa9 100%);
            font-family: "Noto Sans JP", sans-serif;
            font-weight: bold;
            font-size: 14px;
            text-align: center;
            color: #fff;
        }

        .btn-area-common .submit-btn .btn-back {
            width: 23.256vw;
            height: 13.953vw;
            border-radius: 6.977vw;
            border: 3px solid #e0e0e0;
            font-size: 3.721vw;
        }

        .btn-area-common .submit-btn {
            column-gap: 2.326vw;
            margin-left: auto;
            margin-bottom: 11.628vw;
            justify-content: flex-end;
            margin-top: 6.977vw;
            flex-wrap: wrap;
            row-gap: 3.488vw;
            justify-content: center;
            align-items: center;
            background: linear-gradient(#ff9d4d 0%, #ff9aa9 100%);
            font-family: "Noto Sans JP", sans-serif;
            font-weight: bold;
            font-size: 3.721vw;
            text-align: center;
            color: #fff;
        }

            .btn-area-common .submit-btn .btn-contract {
                width: 100%;
            }

        .back-top {
            position: relative;
            right: 0;
            text-align: center;
            margin: auto;
            width: 100%;
        }

        .contents footer .inner {
            flex-wrap: wrap;
        }

        /* privacy */
        #consentForm {
            margin-bottom: 10.465vw;
            font-size: 3.721vw;
        }

            #consentForm [type="checkbox"] {
                width: 5.581vw;
                height: 5.581vw;
            }

        /* privacy */
        /* メニュー選択 */
        .menu-list {
            flex-direction: column;
            row-gap: 3.488vw;
            margin-bottom: 9.302vw;
        }

            .menu-list .list-item {
                max-width: none;
                width: 100%;
                border: 2px solid #eee;
                height: 18.605vw;
                border-radius: 2.326vw;
                font-size: 4.186vw;
                line-height: 4.186vw;
            }

        .contents .inner .second-ttl {
            font-size: 4.186vw;
            padding-bottom: 2.558vw;
            margin-bottom: 4.884vw;
        }

            .contents .inner .second-ttl::after {
                width: 11.628vw;
                height: 0.698vw;
            }

            .contents .inner .second-ttl::before {
                height: 0.698vw;
                left: 11.628vw;
                width: calc(100% - 11.628vw);
            }

        .catch {
            margin-bottom: 3.023vw;
        }

        /* メニュー選択 */
        /* 診断結果一覧 */
        .btn-area .btn-white {
            border: 0.698vw solid #ff9d4d;
            font-size: 4.186vw;
            height: 15.814vw;
            border-radius: 23.256vw;
        }

        .bg-white .inner .sub-ttl {
            line-height: normal;
        }

        .contents .inner {
            border-radius: 2.326vw;
        }

        .bg-white .inner {
            padding: 4.884vw 0;
        }

        .bg-gray .inner {
            padding: 4.651vw 0 9.302vw;
        }

            .bg-gray .inner .menu-column-2 {
                flex-direction: column;
                row-gap: 3.488vw;
                margin-bottom: 6.977vw;
            }

                .bg-gray .inner .menu-column-2 .mypage-menu .list-item {
                    display: flex;
                    align-items: center;
                    padding: 5px;
                }

                    .bg-gray .inner .menu-column-2 .mypage-menu .list-item a {
                        column-gap: 1.395vw;
                        font-size: 3.023vw;
                        line-height: 3.488vw;
                    }

        .mypage-menu2 {
            flex-wrap: wrap;
            gap: 0;
            margin-bottom: 9.302vw;
        }

            .mypage-menu2 .list-item {
                max-width: none;
                height: 19.302vw;
                width: 25%;
                border-radius: 2.326vw;
                border: 2px solid #eee;
            }

                .mypage-menu2 .list-item figure {
                    width: 30%;
                    height: 30%;
                }

                    .mypage-menu2 .list-item figure img {
                        width: 100%;
                        height: auto;
                    }

                .mypage-menu2 .list-item a {
                    font-size: 3.256vw;
                    line-height: 4.186vw;
                    row-gap: 3.023vw;
                }

        .bg-gray .inner .menu-column-2 .mypage-menu img {
            vertical-align: middle;
        }

        .person-list {
            margin-bottom: 6.977vw;
        }

            .person-list .p-name,
            .swiper-slide .p-name,
            .coach-list .p-name {
                font-size: 2.791vw;
                line-height: 2;
            }


        .diagnosis-list,
        .coach-list {
            width: 100%;
        }

            .diagnosis-list .check-question,
            .coach-list .coach-prof {
                height: 13.953vw;
                font-size: 3.256vw;
                line-height: 5.581vw;
                border-right: 1px solid #ccc;
                border-bottom: 1px solid #ccc;
            }

            .diagnosis-list .check-question-notlink,
            .coach-list .coach-prof {
                height: 13.953vw;
                font-size: 3.256vw;
                line-height: 5.581vw;
                border-right: 1px solid #ccc;
                border-bottom: 1px solid #ccc;
            }

        .person-list .swiper-button-next,
        .person-list .swiper-rtl .swiper-button-prev {
            right: 25.93vw;
            width: 3.256vw;
            height: 5.581vw;
        }

        .person-list .swiper-button-prev,
        .person-list .swiper-rtl .swiper-button-next {
            left: 20.93vw;
            width: 3.256vw;
            height: 5.581vw;
        }

            .person-list .swiper-button-prev:after,
            .person-list .swiper-rtl .swiper-button-next:after {
                width: 3.256vw;
                height: 5.581vw;
            }

        .person-list .swiper-button-next:after,
        .person-list .swiper-rtl .swiper-button-prev:after {
            width: 3.256vw;
            height: 5.581vw;
        }

        .person-list .person-you {
            padding-right: 2.326vw;
            border-right: 1px solid #E3E3E3;
        }

        .person-list .person-new {
            padding-left: 4.651vw;
        }

        .diagnosis-list th,
        .coach-list th {
            border: 1px solid #ccc;
            height: 9.302vw;
            font-size: 3.15vw;
            line-height: 7.442vw;
        }

        .diagnosis-list .community-tr th {
            border: 1px solid #ccc;
            height: 9.302vw;
            font-size: 3.3vw;
            line-height: 5.442vw;
        }

        .diagnosis-list .check-question.notcomp {
            font-size: 3.256vw;
        }

        .diagnosis-list td [type="radio"] {
            width: 4.651vw;
            height: 4.651vw;
            border: 2px solid #ccc;
        }

            .diagnosis-list td [type="radio"]:checked::before {
                width: 2.326vw;
                height: 2.326vw;
            }

        .page-navi .list-item a {
            width: 6.977vw;
            height: 6.977vw;
            border-radius: 3.488vw;
            border: 1px solid #ddd;
            font-size: 3.488vw;
            line-height: 5.581vw;
        }

        .page-navi .list-item.most-prev a::before {
            width: 2.791vw;
            height: 2.558vw;
        }

        .page-navi .list-item.prev a::before,
        .page-navi .list-item.next a::before,
        .page-navi .list-item.most-next a::before,
        .page-navi .list-item.most-prev a::before {
            width: 1.628vw;
            height: 2.558vw;
        }

        .btn-area .btn-item {
            max-width: 74.884vw;
        }

        .btn-area .btn-orange::after,
        .btn-area .btn-gray::after,
        .btn-area .btn-white::after {
            width: 2.558vw;
            height: 3.953vw;
            right: 6.512vw;
        }

        .btn-area .btn-text.fs-14 {
            font-size: 3.256vw;
            line-height: 7.442vw;
        }

        /* マイページ */
        .message-list .list-item {
            font-size: 3.721vw;
            line-height: 7.442vw;
            margin-left: 1.628vw;
            padding-left: 4.186vw;
        }

            .message-list .list-item::before {
                width: 1.628vw;
                height: 1.628vw;
                border-radius: 11.628vw;
                top: 3.023vw;
            }

        .mypage-ondemand .bg-whitebox a {
            font-size: 3.721vw;
            line-height: 7.442vw;
        }


        .ondemand.swiper-container {
            max-width: 130.233vw;
        }

        .ondemand .swiper-slide {
            width: 41.86vw;
        }

        .ondemand .swiper-button-prev:after,
        .ondemand .swiper-rtl .swiper-button-next:after,
        .ondemand .swiper-button-next:after,
        .ondemand .swiper-rtl .swiper-button-prev:after {
            width: 7.907vw;
            height: 7.907vw;
        }

        .ondemand .swiper-button-prev,
        .ondemand .swiper-rtl .swiper-button-next,
        .ondemand .swiper-button-next,
        .ondemand .swiper-rtl .swiper-button-prev {
            top: 30.698vw;
            width: 7.907vw;
            height: 7.907vw;
        }

        .ondemand .swiper-button-prev,
        .ondemand .swiper-rtl .swiper-button-next {
            left: -4.651vw;
        }

        .ondemand .swiper-button-next,
        .ondemand .swiper-rtl .swiper-button-prev {
            right: -4.651vw;
        }

        .ondemand .slide-text {
            font-size: 3.256vw;
            line-height: 4.651vw;
        }

        .mypage-growth .bg-orangebox {
            font-size: 3.721vw;
            line-height: 7.442vw;
        }

        /* ログイン */
        .form-group {
            max-width: none;
            flex-direction: column;
            row-gap: 3.488vw;
            align-items: flex-start;
        }

            .form-group label {
                font-size: 3.721vw;
            }

            .form-group input {
                max-width: none;
                width: 100%;
                padding: 1.86vw;
                border: 1px solid #ccc;
                border-radius: 0.698vw;
            }

        /* 事前登録 */
        .regist-form .form-group {
            width: 100%;
            row-gap: 1.628vw;
            margin-bottom: 6.977vw;
        }

        .regist-form .form-wrap {
            flex-direction: column-reverse;
            row-gap: 6.977vw;
        }

        .regist-form .form-file {
            width: 40%;
        }

        .regist-btn img {
            vertical-align: middle;
            width: 5.116vw;
        }

        .regist-btn {
            border-radius: 0.698vw;
            border: 1px solid #ccc;
            padding: 1.163vw 1.977vw;
        }

        .regist-form .form-choices input {
            width: 5.581vw;
            height: 5.581vw;
        }

        .custom-select select {
            width: 34.884vw;
            padding: 1.86vw;
            padding-right: 9.302vw;
            border: 1px solid #ccc;
            border-radius: 0.93vw;
            background-size: 5.581vw;
        }

        .regist-form [type="radio"]:checked::before {
            width: 2.326vw;
            height: 2.326vw;
        }

        /* 内容確認 */
        .form-group .confirm-txt {
            font-size: 3.721vw;
            margin-left: 2.326vw;
            margin-top: 3.721vw;
        }

        /* 受験前にお読みください */
        .num-list .list-item {
            font-size: 3.721vw;
            line-height: 7.442vw;
            column-gap: 4.651vw;
            margin-bottom: 9.767vw;
        }

        .btn-area .btn-text {
            font-size: 3.721vw;
            line-height: 7.442vw;
        }

        .num-list .list-item::before {
            max-width: 9.302vw;
            width: 9.302vw;
            height: 9.302vw;
            border: 2px solid #ff9d4d;
            border-radius: 11.628vw;
            font-size: 6.512vw;
        }

        .num-list .list-item p {
            width: 80%;
        }

        /* 決済処理 */
        .settle-wrap {
            flex-direction: column;
        }

            .settle-wrap .settle-item {
                border-radius: 2.326vw;
                max-width: none;
                width: 100%;
            }

                .settle-wrap .settle-item p {
                    height: 9.302vw;
                    border-radius: 2.326vw 2.326vw 0px 0px;
                    font-size: 3.721vw;
                    line-height: 9.302vw;
                }

                .settle-wrap .settle-item figure {
                    padding: 2.326vw 0;
                }

        /* 子育てのスタイル */
        .checksheet {
            width: 100%;
            table-layout: fixed;
        }

            .checksheet .bg-orange {
                width: 25%;
                height: 9.302vw;
                font-size: 4.651vw;
                line-height: 1;
            }

            .checksheet .check-question {
                /*font-size: 3.721vw;*/
                font-size: 3.1vw;
                line-height: 5.581vw;
                width: 30vw;
                padding: 2.326vw;
                text-align: left;
            }

            .checksheet .check-question-notlink {
                /*font-size: 3.721vw;*/
                font-size: 3.1vw;
                line-height: 5.581vw;
                width: 30vw;
                padding: 2.326vw;
                text-align: left;
            }

            .checksheet [type="radio"] {
                width: 5.581vw;
                height: 5.581vw;
                border: 2px solid #ccc;
            }

            .checksheet .bg1,
            .checksheet .bg2,
            .checksheet .bg3,
            .checksheet .bg4 {
                border: 1px solid #ccc;
                /*width: 13.953vw;*/
                width: 9.302vw;
                height: 9.302vw;
                font-size: 2.79vw;
                line-height: 3.72vw;
                padding: 0 5px;
                color: #222;
            }

        /* メモ・メッセージを書く */
        /* スマホ用のスタイル */
        @media (max-width: 768px) {
            /*.mypage-menu3 .message-box{
            margin-top:0px !important;
        }*/

            .message-box {
                margin-top: 0px !important; /* 不要な余白を削除 */
            }

                /*.message-box .select-menus {
                    display: flex;
                }

                    .message-box .select-menus .submit-btn {
                        margin-top: 0px;
                        display: block;
                    }

                        .message-box .select-menus .submit-btn .btn-submit {
                            width: 17vw;
                            height: 12vw;
                            border-radius: 6.977vw;
                            font-size: 3.721vw;
                            margin-bottom: 5px;
                        }

                        .message-box .select-menus .submit-btn .btn-back {
                            width: 15vw;
                            height: 12vw;
                            border-radius: 6.977vw;
                            border: 3px solid #e0e0e0;
                            font-size: 3.721vw;
                        }*/

                .message-box .select-menus {
                    flex-direction: column; /* プルダウンとボタンを縦方向に並べる */
                }

                    .message-box .select-menus .submit-btn {
                        flex-direction: column; /* ボタンを縦に並べる */
                        justify-content: center; /* 中央揃え */
                        align-items: center; /* ボタンを中央揃え */
                        gap: 10px; /* ボタン間のスペースを確保 */
                    }

                        .message-box .select-menus .submit-btn .btn-submit,
                        .message-box .select-menus .submit-btn .btn-back {
                            width: 80%; /* ボタンを画面幅の80%にする */
                            height: auto; /* 高さを自動調整 */
                            font-size: 4vw; /* フォントサイズを調整 */
                            white-space: nowrap; /* 文字を縦にしない */
                            text-align: center; /* 文字を中央揃え */
                            padding: 10px; /* ボタンの内側余白を調整 */
                            line-height: normal; /* 高さに応じて行の高さを調整 */
                            border-radius: 10px; /* 角丸を調整 */
                        }

            .mypage-menu3 .list-item {
                max-width: none;
                /*width: 100%;*/
                width: 100%;
                margin-bottom: 10px; /* 不要な余白を削除 */
            }
        }

        /* PC用のスタイル */
        @media (min-width: 769px) {
            .mypage-menu3 {
                display: flex;
                flex-wrap: wrap;
            }

                .mypage-menu3 .message-box {
                    margin-top: 0px;
                }

                .mypage-menu3 .list-item {
                    max-width: 294px;
                    width: 50%;
                }
        }

        .mypage-menu3 .list-item a {
            font-size: 3.721vw;
            line-height: 4.186vw;
            border-radius: 2.326vw;
            border: 2px solid #ff9d4d;
            height: 13.953vw;
        }

        .message-history::before {
            width: 1.163vw;
            border-radius: 2.326vw;
            left: 6.977vw;
            right: auto;
        }

        .message-history .history-item {
            column-gap: 4.651vw;
            justify-content: flex-start;
            margin-bottom: 23.256vw;
        }

            .message-history .history-item.reverse {
                flex-direction: row;
            }

            .message-history .history-item .history-date {
                width: 13.953vw;
                height: 13.953vw;
                font-size: 3.721vw;
                line-height: 7.442vw;
                border-radius: 11.628vw;
            }

            .message-history .history-item.reverse .message-category {
                right: 0;
                left: auto;
            }

            .message-history .history-item .message-category::before {
                width: 5.116vw;
                height: 0.698vw;
                top: 11.628vw;
                z-index: -1;
            }

            .message-history .history-item .message-category {
                max-width: 58.14vw;
                border-radius: 2.326vw;
                padding: 3.488vw;
                right: 0;
                top: -4.419vw;
            }

                .message-history .history-item .message-category .message-text {
                    font-size: 3.256vw;
                    letter-spacing: 0.04em;
                    line-height: 4.651vw;
                }

                .message-history .history-item .message-category .message-text2 {
                    font-size: 3.256vw;
                    letter-spacing: 0.04em;
                    line-height: 4.651vw;
                }

                .message-history .history-item .message-category.sendto figure::before,
                .message-history .history-item .message-category.reply figure::before,
                .message-history .history-item .message-category.coach figure::before,
                .message-history .history-item .message-category.send figure::before {
                    font-size: 3.256vw;
                    line-height: 7.442vw;
                    margin-right: 2.326vw;
                }

                .message-history .history-item .message-category figure img {
                    width: 9.302vw;
                    height: 9.302vw;
                }

                .message-history .history-item .message-category .catename {
                    font-size: 3.256vw;
                    line-height: 7.442vw;
                }

            .message-history .history-item.reverse .message-category::before {
                left: auto;
                right: 100%;
            }

        .message-history {
            padding-top: 9.302vw;
            padding-bottom: 13.953vw;
        }

        .select-category #category {
            max-width: 34.884vw;
            height: 9.767vw;
            border-radius: 0.698vw;
            font-size: 3.721vw;
            padding-left: 3.488vw;
            padding: 2.326vw;
            font-size: 3.721vw;
            background-position: right 10px center;
            background-size: 3.721vw 3.721vw;
        }

        .person-list.message {
            flex-wrap: wrap;
        }

            .person-list.message .swiper-container {
                width: 52.326vw;
                /*width:50vw;*/
                margin: auto;
            }

        .person-list .swiper-slide img {
            width: 100%;
            height: auto;
            border-radius: 50%;
        }

        .person-list.message .person-you {
            margin-right: 0;
            padding-right: 0;
            border-right: none;
            width: 100%;
        }

        .person-list .person-search {
            margin-left: auto;
        }

        .person-list .person-coach {
            padding-left: 0;
            margin-left: 0;
            border-left: none;
            width: 100%;
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        .person-list .list-item figure {
            width: 16.279vw;
            height: 16.279vw;
        }

        .person-list.message .swiper-button-prev,
        .person-list.message .swiper-rtl .swiper-button-next {
            left: 0;
        }

        .person-list.message .swiper-button-next,
        .person-list.message .swiper-rtl .swiper-button-prev {
            right: 16.744vw;
        }

        /* 相手を選択 */
        .message-box {
            flex-direction: column;
            row-gap: 4.651vw;
            margin-top: 11.628vw;
            margin-bottom: 4.651vw;
        }

            .message-box .message-area form label {
                width: 100%;
                height: 9.302vw;
                border-radius: 2.326vw 2.326vw 0px 0px;
                font-size: 3.721vw;
                line-height: 9.302vw;
            }

            .message-box .message-area form textarea {
                width: 100%;
                max-width: none;
                padding: 2.326vw;
                min-height: 37.209vw;
                border-radius: 0 0 2.326vw 2.326vw;
            }

        .submit-btn .btn-submit,
        .submit-btn .btn-contract {
            width: 46.512vw;
            height: 13.953vw;
            border-radius: 6.977vw;
            font-size: 3.721vw;
        }

        .submit-btn .btn-back {
            width: 23.256vw;
            height: 13.953vw;
            border-radius: 6.977vw;
            border: 3px solid #e0e0e0;
            font-size: 3.721vw;
        }

        .message-box figure {
            width: 23.256vw;
            display: flex;
            flex-direction: column;
            align-items: center;
        }

            .message-box figure p {
                font-size: 2.791vw;
            }

        .submit-btn {
            column-gap: 2.326vw;
            margin-left: auto;
            margin-bottom: 11.628vw;
            justify-content: flex-end;
            margin-top: 6.977vw;
            flex-wrap: wrap;
            row-gap: 3.488vw;
        }

        /* コーチを探す */
        .btn-area.column3 {
            flex-direction: column;
            row-gap: 2.326vw;
            margin-bottom: 8.372vw;
        }

        .btn-area .btn-orange.fs16 {
            font-size: 3.721vw;
        }

        .btn-area.column3 .btn-orange,
        .searchform .search-area .btn-area .btn-orange {
            height: 13.953vw;
            max-width: none;
            width: 100%;
        }

        .btn-area.column3 .btn-back,
        .btn-area.coach-detail .btn-back,
        .searchform .search-area .btn-area .btn-back {
            max-width: none;
            height: 13.953vw;
            border-radius: 6.977vw;
            border: 3px solid #e0e0e0;
            font-size: 3.721vw;
            width: 100%;
        }

        .coach-list th.w10 {
            width: 10%;
            max-width: none;
        }

        .coach-list .coach-prof figure img {
            width: 11.628vw;
        }

        .coach-list th.w30 {
            width: 38%;
            max-width: 69.767vw;
        }

        .coach-list .coach-prof.tal,
        .coach-list td:nth-last-child(2) {
            padding: 2.326vw;
        }

        .coach-list [type="radio"] {
            width: 5.581vw;
            height: 5.581vw;
            border: 2px solid #ccc;
        }

            .coach-list [type="radio"]:checked::before {
                width: 2.326vw;
                height: 2.326vw;
            }

        /* コーチの詳細 */
        .btn-area.coach-detail {
            flex-direction: column;
            row-gap: 3.488vw;
            margin-bottom: 10.465vw;
        }

            .btn-area.coach-detail .btn-orange {
                height: 13.953vw;
            }

        .coach-detail .coach-prof {
            flex-direction: column;
            row-gap: 7.442vw;
        }

        .coach-detail .strengths {
            font-size: 4.186vw;
            line-height: 9.302vw;
            margin-bottom: 3.953vw;
        }

        .coach-detail .prof-txt p {
            font-size: 3.721vw;
            line-height: 5.814vw;
        }

        .coach-detail .coach-prof figure {
            width: 34.884vw;
        }

            .coach-detail .coach-prof figure img {
                width: 100%;
                height: auto;
            }

        .coach-career tr {
            display: flex;
            flex-direction: column;
        }

        .coach-career th {
            font-size: 3.721vw;
            width: 100%;
            padding: 4.186vw 3.488vw;
            border: 1px solid #ccc;
        }

        .coach-career td {
            border: 1px solid #ccc;
            font-size: 3.721vw;
            line-height: 6.977vw;
            padding: 4.186vw 5.814vw 3.488vw 7.907vw;
            word-break: normal;
        }

        .submit-btn .btn-contract {
            width: 100%;
        }

        /* 検索 */
        .searchform .search-area .form-group {
            width: 100%;
            flex-direction: column-reverse;
            margin-bottom: 2.326vw;
            max-width: none;
        }

        .searchform .search-area .btn-area .btn-orange {
            font-size: 3.721vw;
        }

        .searchform .search-area .form-group:nth-last-child(3),
        .searchform .search-area .form-group:nth-last-child(2) {
            flex-direction: column;
        }

        .search-results figure,
        .search-results figure img {
            width: 16.279vw;
        }

            .search-results figure .p-name {
                font-size: 2.791vw;
                line-height: 7.442vw;
            }

        /* 検索結果 */
        .search-results.mb250 {
            margin-bottom: 34.884vw;
        }

        /* 契約する */
        .message-comment p {
            font-size: 3.721vw;
            line-height: 7.442vw;
        }

        .message-comment {
            padding: 4.186vw 6.279vw 5.581vw 5.349vw;
            max-width: none;
            border-radius: 2.326vw;
            width: 100%;
        }

        /* 契約規定 */
        .message-box figure .bg-orange {
            margin-bottom: 2.326vw;
            height: 11.628vw;
            border-radius: 0.698vw;
            font-size: 3.256vw;
            line-height: 4.186vw;
        }

        .date-select {
            gap: 2.326vw 0.698vw;
        }

            .date-select span {
                font-size: 3.023vw;
            }

        .arrangements .message-comment {
            padding: 2.326vw;
            min-height: 27.907vw;
        }

            .arrangements .message-comment p {
                font-size: 3.721vw;
                line-height: 5.581vw;
            }

        .write-message .message-comment textarea {
            padding: 2.326vw;
        }

        /* クライアントの決済処理 */
        .contract-detail {
            border-radius: 2.326vw;
        }

            .contract-detail tr {
                display: flex;
                flex-direction: column;
            }

            .contract-detail th {
                font-size: 3.721vw;
                line-height: 9.302vw;
                width: 100%;
                border-bottom: 1px solid #DDDDDD;
            }

            .contract-detail tr:first-child th {
                border-radius: 2.326vw 2.326vw 0 0;
            }

            .contract-detail tr:last-child th {
                border-radius: 0 0 0 0;
            }

            .contract-detail td {
                padding: 1.86vw 3.488vw;
                font-size: 3.721vw;
                line-height: 5.581vw;
                border-bottom: 1px solid #DDDDDD;
            }
    }