* {
    box-sizing: border-box;
}

body {
    color: #333;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

input:disabled,
select:disabled {
    background: #ccc;
}

/* スピンボタンを非表示 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type="number"] {
    -webkit-appearance: none;
    -moz-appearance: textfield;
    appearance: none;
}


/* PC用メディアクエリ */
@media screen and (min-width: 480px) {
    .sp-only {
        display: none;
    }
    .pc-only {
        display: block;
    }
    .contact {
        width: 800px;
        margin: 0 auto;
        padding: 10px 0;
    }
}

#torihiki-row {
    display: none;
}
.contact-ttl {
    font-size: 38px;
    font-weight: bold;
    margin-bottom: 10px;
    text-align: center;
}

.contact-ttl1 {
    font-size: 32px;
    font-weight: bold;
    margin: 0;
    text-align: center;
}

.contact-ttl2 {
    font-size: 32px;
    font-weight: bold;
    margin: 0px;
    text-align: center;
}

.contact-comment {
    font-size: 18px;
    text-align: center;
}

.contact-table {
    width: 100%;
    margin-bottom: 20px;
    border: 1px solid #ccc;
}

.contact-item,
.contact-body {
    padding: 20px;
    border: 1px solid #ccc;
}

.contact-item {
    text-align: left;
    width: 24%;
    background-color: #FFFFCC;
}

.contact-body {
    width: 76%;
}

.form-text {
    width: 100%;
    padding: 10px;
    border-radius: 5px;
    border: 1px solid #ccc;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    max-width: 400px;
}

.form-text2 {
    width: 100%;
    padding: 10px;
    border-radius: 5px;
    border: 1px solid #ccc;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    max-width: 600px;
}

.form-text3 {
    width: 100%;
    padding: 10px;
    border-radius: 5px;
    border: 1px solid #ccc;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    max-width: 120px;
}

.contact-sex + .contact-sex {
    margin-left: 10px;
}

.contact-sex-txt {
    display: inline-block;
    margin-left: 5px;
}

.form-select {
    width: 150px;
    height: 40px;
    padding: 5px;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.contact-skill {
    display: block;
}

.contact-skill + .contact-skill {
    margin-top: 10px;
}

.contact-keitai {
    display: block;
}

.contact-skill-txt,
.contact-skill-txt-s {
    display: inline-block;
    margin-left: 5px;
}

/* PC用：wrapはinline */
.contact-skill-text-wrap {
    display: inline;
}

.contact-skill-text-wrap small {
    display: inline;
    margin-top: 10px;
}

.form-textarea {
    width: 100%;
    padding: 10px;
    height: 100px;
    border-radius: 5px;
    border: 1px solid #ccc;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.contact-submit {
    width: 250px;
    background-color: rgb(6, 42, 248);
    color: #fff;
    font-weight: bold;
    display: block;
    margin: 0 auto;
    font-size: 16px;
    padding: 15px;
    border-radius: 100vh;
    border: none;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer;
}

.btn {
    border-radius: 5px;
    background-color: #1ee9e124;
    padding: 4px;
    text-decoration: none;
    color: black;
    border: 1px solid #a0a0a0;
}

.sma {
    display: none;
}

/* ===== スマホ用 ===== */
@media screen and (max-width: 479px) {

    .pc-only {
        display: none;
    }

    #torihiki-row {
    display: none;
    }
    .contact {
        width: 100%;
        padding: 5px 10px;
    }

    .contact-ttl {
        font-size: 18px;
        font-weight: bold;
        margin-bottom: 10px;
        text-align: center;
    }

    .contact-ttl1 {
    font-size: 18px;
    font-weight: bold;
    margin: 0;
    text-align: center;
   }

    h3.contact-ttl2 {
    font-size: 13px !important;
    font-weight: bold !important;
    margin: 0px !important;
    text-align: center !important;
    margin-bottom: 5px !important;
   }

    .contact-comment {
        font-size: 12px;
        text-align: center;
    }

    .contact-table {
        width: 100%;
        margin-bottom: 15px;
        border: 1px solid #ccc;
    }

    .contact-table tr {
        display: block;
        margin-bottom: 8px;
    }

    .contact-item,
    .contact-body {
        display: block;
        width: 100%;
        padding: 8px 14px;
        border: 1px solid #ccc;
        box-sizing: border-box;
    }

    .contact-item {
        font-size: 14px;
        font-weight: bold;
        background-color: #FFFFCC;
        border-bottom: none;
    }

    .contact-body {
        font-size: 14px;
        border-top: none;
    }

    .contact-skill,
    .contact-keitai {
        display: flex;
        align-items: flex-start;
        gap: 6px;
        margin-top: 0px;
    }

    .contact-skill + .contact-skill {
        margin-top: 8px;   /*ボタン間のマージン*/
    }

    .contact-skill input[type="radio"],
    .contact-keitai input[type="radio"] {
        flex-shrink: 0;
        width: 18px;
        height: 18px;
        margin-top: 1px;
        cursor: pointer;
    }

    .contact-skill-txt {
        display: block;
        font-size: 11px;
        margin-left: 0;
        margin-top: 2px;
        line-height: 1.5;
    }

    .contact-skill-text-wrap {
        display: block;
        line-height: 1.6;
    }

    .contact-skill-text-wrap small {
        display: block;
        font-size: 10px;
        color: #555;
        margin-top: 0;
    }

    .contact-skill-txt-s {
        display: block;
        font-size: 11px;
        margin-left: 0;
        line-height: 1.4;
    }

    .form-text,
    .form-text2,
    .form-text3 {
        font-size: 16px;
        width: 100%;
        max-width: 100%;
        padding: 8px;
        border-radius: 5px;
        border: 1px solid #ccc;
        box-sizing: border-box;
    }

    .form-text3 {
        max-width: 120px;
    }

    .form-select {
        font-size: 16px;
        width: 100%;
        max-width: 200px;
        height: 36px;
        padding: 5px;
        border: 1px solid #ccc;
        border-radius: 5px;
    }

    .form-textarea {
        font-size: 16px;
        width: 100%;
        padding: 8px;
        height: 100px;
        border-radius: 5px;
        border: 1px solid #ccc;
        box-sizing: border-box;
    }

    .contact-submit {
        width: 80%;
        max-width: 300px;
        background-color: rgb(26, 248, 6);
        color: #fff;
        font-weight: bold;
        display: block;
        margin: 0 auto;
        font-size: 16px;
        padding: 14px;
        border-radius: 100vh;
        border: none;
        cursor: pointer;
    }
}