/* body全体のスタイル */
body{
    width: min(100% - 2rem, 960px);
    padding: 10px;
    max-width: 960px;
    margin-inline: auto;
}
/* ヘッダー */
header {
    padding: 10px 0;
    background-color: #006bee;
    color: #ffffff;
    text-align: center;
}
p:before{
    content:"PC : ";
}
div.taitol{
    text-align: center;
}
/* エラーメッセージ */
.error{
    color: red;
}
/* エラーカウント */
div.error_count{
    display: block;
    text-align: center;
}
/* 必須項目 */
.label-required{ 
    color: red;
    display: block; /*改行*/
}
/* テーブル全体 */
table{
    margin-top: 5%;
    width: 100%;
    text-align: center;
}
/* 確認ボタン */
.button{
    text-align:center;
}
/* 項目名 */
th{
    width: 220px; /* サイズ */
    padding: 16px 12px; /* 余白 上下 | 左右 */
    background: #DCDCDC;
    border: 3px solid #ced4da;
}
/* 入力欄 */
td{
    border: 1px solid #ced4da; /*枠線の太さ | 枠線の色*/
    padding-top: 0px;
    padding-right: 1px;
    padding-bottom: 0px;
    padding-left: 1px;
}
/* 名前 */
#fullname{
    width: 70%;
    text-align: center;
    margin-top: 3%;
}

/* かたかな */
#kananame{
    width: 70%;
    text-align: center;
    margin-top: 3%;
}
/* 性別 */

/* 生年月日 */
/* 年 */
#year{
    width: 20%;
    text-align: center;
    margin-top: 3%;
}
/* 月 */
#month{
    width: 20%;
    text-align: center;
    margin-top: 3%;
}
/* 日 */
#day{
    width: 20%;
    text-align: center;
    margin-top: 3%;
}

/* 郵便番号 */
.postcode{
    width: 70%;
    text-align: center;
    margin-top: 3%;
}

/* 都道府県 */
select#prefectures{
    word-wrap: normal;
    width: 70%;
    text-align: center;
    margin-top: 3%;
}

/*市区町村 | 町名・番地 | その他・建物名 */
input[type=text]#address1,#address2,#address3{
    width: 70%;
    height: 30%;
    font-size: 1rem;
    margin-top: 3%;
    text-align: center;
}
/* 電話番号 */
input[type=tel]{
    width: 70%;
    margin-top: 3%;
    text-align: center;
}
/* メールアドレス or 確認 */
input[type=email]{
    width: 70%;
    margin-top: 3%;
    text-align: center;
}
/* お問い合わせ内容 */
textarea {
    width: 90%;
    margin-top: 3%;
}

#message-counter {
    text-align: end;
    margin-top: 1%;
    margin-bottom: -2%;
    margin-right: 6%;
}

.completion{
    text-align:center;
    width: 100%;
}

.countdown{
    text-align:center;
    width: 100%;
}

/* メディアクエリ */
@media screen and (max-width: 768px) {
    /* 768px以下の画面幅に対するスタイル */
    header {
        padding: 10px 0;
        background-color: #2c7774;
        color: #ffffff;
        margin-inline: auto;
    }
    p:before{
    content:"タブレット : ";
    }
    /* 必須項目 */
    .label-required{
    color: red;
    }
    table{
        text-align:center;
        width: 100%;  
    }
    th{
        width: 220px; /* サイズ */
        padding: 16px 12px; /* 余白 上下 | 左右 */
        background: #DCDCDC;
        border: 3px solid #ced4da;
    }
    td{
        border: 1px solid #ced4da; /*枠線の太さ | 枠線の色*/
        padding-top: 0px;
        padding-right: 1px;
        padding-bottom: 0px;
        padding-left: 1px;
    }
}
/* 別のメディアクエリ */
@media screen and (max-width: 480px) {
    /* 480px以下の画面幅に対するスタイル */
    header {
        padding: 15px 0px;
        background-color: #26d0c9;
        color: #ffffff;
        text-align:center;
    }
    p:before{
        content:"スマホ : ";
    }
    table{
        text-align:center;
    }
    th{
        display: block;
        padding: 0.5px 1px; /* 余白 上下 | 左右 */
        width: 100%; /* サイズ */
        background: #DCDCDC;
        border: 3px solid #ced4da;
    }
    td{
        display: block;
        padding: 16px 1px; /* 余白 上下 | 左右 */
        width: 100%;
        border: 1px solid #ced4da; /*枠線の太さ | 枠線の色*/
    }
}