.pc-hero .pc-workbench {
    --bubble-tail-width: 10px;
    --bubble-tail-height: 16px;
    --bubble-tail-offset: 5px;
    --bubble-tail-overlap: 1px;
    --bubble-tail-inner-scale: 0.9;
    --bubble-tail-cover: 2px;
    --bubble-tail-clip: polygon(
        5.6% 3.7%,
        5.9% 3.9%,
        6.6% 4.4%,
        7.7% 5.1%,
        9% 6%,
        10.4% 6.9%,
        11.8% 7.9%,
        13.2% 8.8%,
        14.6% 9.7%,
        16% 10.6%,
        17.4% 11.5%,
        18.8% 12.4%,
        20.2% 13.3%,
        21.6% 14.2%,
        22.9% 15.1%,
        24.3% 16%,
        25.7% 16.9%,
        27.1% 17.7%,
        28.5% 18.2%,
        29.9% 18.5%,
        31.3% 18.5%,
        32.7% 18.5%,
        34.1% 18.7%,
        35.5% 19.3%,
        36.9% 20.1%,
        38.2% 21%,
        39.6% 21.8%,
        41% 22.2%,
        42.4% 22.2%,
        43.8% 22.2%,
        45.2% 22.6%,
        46.6% 23.4%,
        48% 24.3%,
        49.4% 25.1%,
        50.8% 25.7%,
        52.1% 25.9%,
        53.5% 25.9%,
        54.9% 25.9%,
        56.3% 25.9%,
        57.7% 25.9%,
        59.1% 25.9%,
        60.5% 25.9%,
        61.9% 25.9%,
        63.3% 25.9%,
        64.7% 26%,
        66.1% 26.2%,

        67.4% 26.6%,
        68.6% 27.1%,
        69.8% 27.7%,
        71% 28.4%,
        72% 28.9%,
        73% 29.2%,
        74% 29.4%,
        75% 29.5%,
        76% 29.6%,
        77.8% 29.6%,
        83.3% 29.6%,
        88.9% 29.6%,
        94.4% 29.6%,
        100% 29.6%,
        100% 100%,

        99.9% 95.3%,
        99.5% 90.9%,
        98.9% 86.8%,
        98% 83%,
        96.9% 79.4%,
        95.5% 76.1%,

        94.4% 74.1%,
        94.1% 73.9%,
        93.4% 73.4%,
        92.3% 72.7%,
        91% 71.8%,
        89.6% 71%,
        88.9% 70.4%,
        87.5% 70.3%,
        86.1% 70.4%,
        84.7% 70.4%,
        83.3% 70.4%,
        81.9% 70.4%,
        80.5% 70.4%,
        79.1% 70.4%,
        77.8% 70.4%,

        77.1% 70.3%,
        76.4% 70.1%,
        75.7% 69.9%,
        75% 69.6%,
        74.3% 69.3%,
        73.6% 68.9%,

        72.2% 66.7%,
        70.8% 65.8%,
        69.4% 64.9%,
        68% 64%,
        66.7% 63%,
        65.3% 63%,
        63.9% 63%,
        62.5% 63%,
        61.1% 63%,
        59.7% 62.7%,
        58.3% 62%,
        56.9% 61.1%,
        55.6% 59.3%,
        54.2% 58.4%,
        52.8% 57.5%,
        51.4% 56.6%,
        50% 55.6%,
        48.6% 54.7%,
        47.2% 53.8%,
        45.8% 52.9%,
        44.4% 51.9%,
        43% 51.9%,
        41.6% 51.9%,
        40.2% 51.9%,
        38.9% 51.9%,
        37.5% 50%,
        36.1% 48.3%,
        34.7% 46.4%,
        33.3% 44.4%,
        31.9% 43.3%,
        30.5% 42.4%,
        29.1% 41.5%,
        27.8% 40.7%,
        26.4% 39.8%,
        25% 38.9%,
        23.6% 38%,
        22.2% 37%,
        20.8% 35.6%,
        19.4% 34.2%,
        18.1% 32.8%,
        16.7% 29.6%,
        15.3% 27.8%,
        13.9% 26%,
        12.5% 24.1%,
        11.1% 22.2%,
        9.7% 20.4%,
        8.3% 18.5%,
        7% 16.2%,
        5.9% 13.7%,
        5.6% 11.1%,
        5.6% 8.3%,
        5.6% 6.5%,
        5.6% 5.1%,
        5.6% 4.2%
    );
}
.pc-hero .pc-widget-messages {
    font-family: 'Sora', 'Noto Sans JP', Meiryo, sans-serif;
    font-size: 14px;
}
.pc-hero .pc-widget-messages .pc-chat-message {
    margin: 12px 0 0;
    width: auto;
    max-width: none;
}
.pc-hero .pc-widget-messages .pc-widget-question {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    text-align: right;
}
.pc-hero .pc-widget-messages .pc-widget-reply {
    display: block;
    text-align: left;
}
.pc-hero .pc-widget-messages .pc-bot-avatar {
    display: block;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: none;
    object-fit: cover;
    transform: translateY(26px);
    margin-top: -26px;
    box-sizing: border-box;
}
.pc-hero .pc-message-row {
    display: inline-flex;
    align-items: flex-end;
    flex-wrap: nowrap;
    vertical-align: bottom;
    max-width: 100%;
}
.pc-hero .pc-chat-bubble {
    border-radius: 18px;
    padding: 12px 16px;
    max-width: 85%;
    word-break: break-word;
    white-space: normal;
    margin-top: 4px;
    margin-bottom: 0;
    line-height: 1.6;
    box-shadow: none;
    border: 1px solid rgba(15, 23, 42, 0.08);
    min-width: 0;
}
.pc-hero .pc-widget-question .pc-chat-bubble {
    width: fit-content;
    min-width: 1%;
    text-align: left;
    margin-right: calc(var(--bubble-tail-width) - var(--bubble-tail-overlap));
    background: #2a9d8f;
    --bubble-bg: #2a9d8f;
    color: #fff;
}
.pc-hero .pc-widget-reply .pc-chat-bubble {
    display: inline-block;
    vertical-align: bottom;
    margin-left: 40px;
    background: #f1f1f1;
    --bubble-bg: #f1f1f1;
    color: #1c1c1c;
}
.pc-hero .pc-widget-messages .pc-chat-bubble > p {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.6;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    color: inherit;
    white-space: pre-line;
    overflow-wrap: anywhere;
}
.pc-hero .pc-widget-messages .pc-message-time {
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    flex: 0 0 auto;
    font-size: 10px;
    line-height: 1.2;
    color: rgba(15, 23, 42, 0.6);
    opacity: 0.6;
    white-space: nowrap;
    vertical-align: bottom;
    margin-top: 0;
}
.pc-hero .pc-widget-question .pc-message-time {
    margin-left: auto;
    margin-right: 6px;
    text-align: right;
}
.pc-hero .pc-widget-reply .pc-message-time {
    margin-left: 6px;
    text-align: left;
}
.pc-hero :is(.pc-widget-question .pc-chat-bubble, .pc-admin-reply p),
.pc-hero :is(.pc-widget-reply .pc-chat-bubble, .pc-admin-question) {
    position: relative;
    --bubble-border: rgba(15, 23, 42, 0.08);
}
.pc-hero :is(.pc-widget-question .pc-chat-bubble, .pc-admin-reply p)::before,
.pc-hero :is(.pc-widget-question .pc-chat-bubble, .pc-admin-reply p)::after,
.pc-hero :is(.pc-widget-reply .pc-chat-bubble, .pc-admin-question)::before,
.pc-hero :is(.pc-widget-reply .pc-chat-bubble, .pc-admin-question)::after {
    content: '';
    position: absolute;
    pointer-events: none;
    -webkit-clip-path: var(--bubble-tail-clip);
    clip-path: var(--bubble-tail-clip);
}
.pc-hero :is(.pc-widget-question .pc-chat-bubble, .pc-admin-reply p)::before {
    width: var(--bubble-tail-width);
    height: var(--bubble-tail-height);
    top: var(--bubble-tail-offset);
    right: calc(-1 * (var(--bubble-tail-width) - var(--bubble-tail-overlap)));
    background: var(--bubble-border, rgba(15, 23, 42, 0.08));
    transform: scaleX(-1);
}
.pc-hero :is(.pc-widget-question .pc-chat-bubble, .pc-admin-reply p)::after {
    width: var(--bubble-tail-width);
    height: var(--bubble-tail-height);
    top: calc(var(--bubble-tail-offset));
    right: calc(-1 * (var(--bubble-tail-width) - var(--bubble-tail-overlap)));
    background: var(--bubble-bg, #ffffff);
    transform: scaleX(-1) scale(var(--bubble-tail-inner-scale));
    box-shadow: calc(-1 * var(--bubble-tail-cover)) 0 0 0 var(--bubble-bg);
}
.pc-hero :is(.pc-widget-reply .pc-chat-bubble, .pc-admin-question)::before {
    width: var(--bubble-tail-width);
    height: var(--bubble-tail-height);
    top: var(--bubble-tail-offset);
    left: calc(-1 * (var(--bubble-tail-width) - var(--bubble-tail-overlap)));
    background: var(--bubble-border, rgba(15, 23, 42, 0.08));
}
.pc-hero :is(.pc-widget-reply .pc-chat-bubble, .pc-admin-question)::after {
    width: var(--bubble-tail-width);
    height: var(--bubble-tail-height);
    top: calc(var(--bubble-tail-offset));
    left: calc(-1 * (var(--bubble-tail-width) - var(--bubble-tail-overlap)));
    background: var(--bubble-bg, #ffffff);
    transform-origin: 100% 50%;
    transform: scale(var(--bubble-tail-inner-scale));
    box-shadow: var(--bubble-tail-cover) 0 0 0 var(--bubble-bg);
}

.pc-hero .pc-admin-conversation {
    font-family: 'Sora', 'Noto Sans JP', Meiryo, sans-serif;
    font-size: 14px;
}
.pc-hero .pc-admin-question,
.pc-hero .pc-admin-reply p {
    width: fit-content;
    max-width: 80%;
    min-width: 0;
    margin: 4px 0 0;
    padding: 16px;
    border-radius: 18px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: none;
    font-family: 'Sora', 'Noto Sans JP', Meiryo, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    text-align: left;
    word-break: break-word;
    overflow-wrap: anywhere;
    white-space: pre-wrap;
    color: #0f172a;
}
.pc-hero .pc-admin-question {
    background: #f1f1f1;
    --bubble-bg: #f1f1f1;
}
.pc-hero .pc-admin-reply {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    width: 100%;
    max-width: none;
    margin: 16px 0 0;
}
.pc-hero .pc-admin-reply p {
    background: #bbe0dc;
    --bubble-bg: #bbe0dc;
}
