* {
        -webkit-user-select: none;
        -ms-user-select: none;
        user-select: none;
        -webkit-touch-callout: none;
        }
    body {
        font-family: sans-serif;
        background: #ffe5e5; /* ページ背景を白に近い薄ピンクに */
        text-align: center;
        margin: 0;
        padding: 30px 10px;
        color: #333; /* 文字色は黒寄りにして読みやすく */
    }

    h1 {
        color: #333;
        margin-bottom: 5px;
        font-size: 32px;
    }

    button.request-btn {
        position: absolute;
        top: 20px;
        right: 20px;
        padding: 10px 20px;
        border: 2px solid #ff5959; /* ボーダーを少し濃いめに */
        border-radius: 10px;
        background: #ffb3b3; /* ページ背景に合わせる薄ピンク */
        color: #ff5959; /* 文字はベースカラーで目立たせる */
        cursor: pointer;
        font-size: 16px;
    }

    button.request-btn:hover {
        background: rgb(255, 210, 210); /* ホバーで少し濃く */
        border-color: #ff5959; /* ボーダーも濃くして強調 */
    }

    .info {
        margin: 10px 0;
        font-size: 16px;
        color: #333;
    }

    h2 {
        margin-top: 30px;
        margin-bottom: 15px;
        color: #ff5959; /* 見出しはベースカラー */
    }

    .youtube-card-container {
        background: #ff7a7a; /* カードはやや濃い赤でアクセント */
        padding: 20px;
        border-radius: 15px;
        display: inline-block;
        text-align: center;
    }

    .youtube-container {
        display: flex;
        justify-content: center;
        gap: 20px;
        flex-wrap: wrap;
        margin-top: 15px;
    }

    .youtube {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .youtube img {
        width: 100px;
        height: 100px;
        border-radius: 50%;
        object-fit: cover;
        margin-bottom: 10px;
        border: 2px solid #fff; /* アイコンに白枠で見やすく */
    }

    .youtube a {
        text-decoration: none;
        color: #fff; /* 白文字でリンク */
        font-weight: bold;
        text-align: center;
    }

    
    .accordion {
        margin-top: 20px;
        text-align: center;
    }

    .accordion-button {
        width: 200px;
        padding: 10px 15px;
        margin: 5px 0;
        background: #ff5959;
        color: white;
        border: none;
        border-radius: 8px;
        cursor: pointer;
        font-size: 16px;
    }

    .accordion-button:hover {
        background: #ff7a7a;
    }

    .accordion-content {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
        margin-bottom: 10px;
    }

    .accordion-content iframe {
        margin-top: 10px;
        border-radius: 10px;
    }
    .achievement {
        margin-top: 20px;
        width: 90%;
        max-width: 500px;
        margin-left: auto;
        margin-right: auto;
        text-align: left;
    }

    .achievement-item {
        border-bottom: 1px dashed #ff9999; /* 点線 */
        padding: 10px 0;
    }

    .achievement-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        cursor: pointer;
        font-weight: bold;
        color: #ff5959;
    }

    .arrow {
        transition: transform 0.3s ease;
    }

    .achievement-content {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
        margin-top: 5px;
    }

    .achievement-content iframe {
        width: 100%;
        border-radius: 10px;
    }
    .request-link {
        margin-top: 40px;
        margin-bottom: 20px;
    }

    a {
        color: #ff5959;
        font-weight: bold;
        font-size: 18px;
        text-decoration: none;
        border-bottom: 2px solid #ff9999;
        padding-bottom: 3px;
        transition: 0.2s;
    }

    a:hover {
        color: #e04848;
        border-color: #ff5959;
    }
    .price-table {
        margin-top: 20px;
        width: 95%;
        max-width: 600px;
        margin-left: auto;
        margin-right: auto;
        background: #fff;
        border: 2px solid #ff9999;
        border-radius: 12px;
        overflow: hidden;
    }

    .price-header {
        background: #ffb3b3;
        padding: 12px;
        font-weight: bold;
        text-align: center;
        font-size: 18px;
        color: #ff5959;
    }

    .price-row {
        display: flex;
        justify-content: space-between;
        padding: 15px;
        border-top: 1px solid #ffd6d6;
    }

    .price-row:nth-child(even) {
        background: #fff5f5;
    }

    .price-title {
    font-weight: bold;
    color: #ff5959;
    text-align: left;
}

    .price-amount {
        font-weight: bold;
        white-space: nowrap;
    }

    .price-description {
        font-size: 14px;
        margin-top: 5px;
        color: #555;
    }

    .price-footer {
        padding: 15px;
        border-top: 2px dashed #ff9999;
        text-align: center;
        font-size: 14px;
    }

    .note {
        font-size: 14px;
        color: #555;
    }

    .negotiation {
        text-align: center;
        font-weight: bold;
        color: #ff5959;
        margin-top: 10px;
    }

    input {
    width: 90%;
    padding: 8px;
    border-radius: 6px;
    border: 1px solid #ff9999;
    margin-top: 5px;
}

input:focus {
    outline: none;
    border-color: #ff5959;
}

