.contact-wrapper {
    width: calc(100% - 60px);
    max-width: 768px;
    margin: 0 auto 40px auto;
    align-items: center;
}


.contact-label h2 {
    text-align: center;
    font-size: 2rem;
    color: #08B355;
    margin: 40px 0;
}

.contact-label .description {
    text-align: center;
    font-size: 1.625rem;
    color: #000;
    margin-bottom: 40px;
}

.form-group {
    display: flex;
    flex-direction: column;
}

.form-label {
    margin-bottom: 5px;
    font-weight: 700;
    font-size: 1rem;
    margin-top: 30px;
}

.form-label span {
    margin-left: 10px;
    color: red;
    font-weight: 500;
    font-size: 0.8rem;
}

.form-input {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    border: solid 1px #E2E5E8;
    border-radius: 5px;
}

input {
    font-family: sans-serif; /* システムのデフォルトフォントを使用 */
}

.form-textarea {
    width: 100%;
    height: 200px;
    padding: 10px;
    box-sizing: border-box;
    border: solid 1px #E2E5E8;
    border-radius: 5px;
}

textarea {
    font-family: sans-serif; /* システムのデフォルトフォントを使用 */
}

.privacy-policy-container {
    max-height: 200px; /* スクロール可能な高さ */
    overflow-y: auto;  /* 縦のスクロールを有効にする */
    border: 1px solid #ccc; /* 枠線 */
    padding: 10px; /* パディング */
    margin-bottom: 10px; /* 下の余白 */
    border-radius: 10px;
}

.privacy-policy {
    /* プライバシーポリシーの内容に合わせてスタイル調整 */
    font-size: 14px;
    line-height: 1.6;
}

.privacy-policy ul {
    list-style-type: disc; /* 「・」を表示 */
    padding-left: 20px; /* 文字と「・」の間に余白を追加 */
}

.privacy-policy p {
    margin: 10px 0;
}

.form-check {
    margin-top: 10px; /* チェックボックスの余白 */
    text-align: center;
}

.form-check-input {
    margin-right: 5px; /* チェックボックスとラベルの間隔 */
}

/* チェックボックスの基本スタイル */
.form-check-input {
    width: 30px; /* チェックボックスの幅 */
    height: 30px; /* チェックボックスの高さ */
    border: 1px solid #ccc; /* 枠線 */
    border-radius: 4px; /* 角を丸く */
    appearance: none; /* デフォルトのスタイルを無効化 */
    position: relative;
    cursor: pointer;
}

/* チェックボックスにチェックが入ったときのスタイル */
.form-check-input:checked {
    background-color: #08B355; /* チェックボックスの背景色 */
    border-color: #08B355; /* 枠線の色 */
}

/* チェックマークの表示（擬似要素を使用） */
.form-check-input:checked::before {
    content: ''; /* 擬似要素として空の内容を追加 */
    position: absolute;
    top: 5px; /* チェックマークの位置調整 */
    left: 9px; /* チェックマークの位置調整 */
    width: 10px; /* チェックマークの幅 */
    height: 15px; /* チェックマークの高さ */
    border: solid white; /* チェックマークの色 */
    border-width: 0 4px 4px 0; /* チェックマークの形状を作成 */
    transform: rotate(45deg); /* チェックマークの回転 */
}

.form-check-input {
    vertical-align: middle;            /* チェックボックスを中央揃え */
}

.form-check-label {
    vertical-align: middle;            /* ラベルを中央揃え */
}

.primary-btn {
    width: 45%;
    padding: 10px;
    margin: 0 auto;
    color: #000;
    background-color: #FEE101;
    font-size: 1rem;
    border: none;
    font-weight: 700;
    cursor: pointer;
    border-radius: 40px;
    display: block;
    margin-top: 30px;
}

.primary-btn:hover {
    opacity: 0.7;
    color: #fff;
}

/* メディアクエリでレスポンシブ対応 */
@media (max-width: 768px) {
    .contact-wrapper {
        width: calc(100% - 50px);
    }
}

/* メディアクエリでレスポンシブ対応 */
@media (max-width: 480px) {
    .contact-label p {
        padding: 0;
    }
}