/* 太字 */
.fb {
    font-weight: bold;
}

/* 注意書き */
.Cautionarynote {
    font-size: 80%;
    color: #666;
}

/* ボタン */
#postcontent .wp-block-button__link {
    display: block;
    color: #fff;
    border-radius: 9999px;
    box-shadow: none;
    text-decoration: none;
    padding: calc(.667em + 2px) calc(1.333em + 2px);
    font-size: 1.125em;
    border: #FF8896 1px solid;
    background-color: #FF8896;
}

#postcontent .wp-block-button__link a {
    text-decoration: unset;
    color: #FF8896;
    background-color: #fff;
}

.wp-block-button:hover .wp-block-button__link {
    background-color: #555;
    transform: translateY(-2px);
    transition: 0.3s;
}

/* ある一日のスケジュール */
table.schedule,
table.schedule td {
    border: none !important;
}

table.schedule tr {
    border-bottom: 1px dashed #ccc;
}

table.schedule td {
    padding: 10px 0;
}

td.time {
    width: 100px;
    font-weight: bold;
}

div.gray-box {
    background-color: #efefef;
    padding: 5px;
}


/* レシピ */
table.recipe,
table.recipe tbody,
table.recipe tr,
table.recipe td {
    border: none;
}

table.recipe td {
    border-bottom: 1px dashed #ccc;
    padding: 10px 0;
}

table.recipe td.ingredients {
    width: 60%;
}

table.recipe td.chomi {
    border-bottom: none;
    padding: 20px 0 0;
}


/* リスト */
.PinkBox li::marker {
    color: #ff8896;
}


/* お問い合わせラベル */
.wpcf7-form p:has(.wpcf7-validates-as-required) label:after,
.wpcf7-form .wpcf7-form-control-wrap:has(.wpcf7-validates-as-required)+label:after,
.wpcf7-form label:has(+ .wpcf7-form-control-wrap .wpcf7-validates-as-required):after {
    display: none;
}


.wpcf7-form label:has(.wpcf7-validates-as-required) .FormLabel::after {
    content: "必須入力";
    color: #EE3639;
    font-size: 12px;
    margin-left: 4px;
    font-weight: bold;
}

.wpcf7-form label.fb {
    font-weight: bold;
}

/* 性別 */
.Contact_Gender select {
    width: 30%;
}

/* 学年 */
.Contact_Schoolyear select {
    width: 30%;
}

/* 都道府県 */
.Contact_Pref select {
    width: 30%;
}


/* プロフィールボックス */
#postcontent .GuestProfBox {
    width: 100%;
    display: flex;
    justify-content: center;
    margin: 20px 0 0;
}

#postcontent .GuestProf {
    flex-shrink: 0;
}

#postcontent .GuestProf img {
    margin: 0;
    width: 160px;
}

#postcontent .GuestProfTextBox {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
    margin: 0 0 0 3%;
}

#postcontent .ContentBody p {
    width: 100%;
    display: flex;
    justify-content: center;
    font-size: 20px;
    line-height: 1.8;
}

#postcontent .GuestText {
    font-weight: bold;
}

#postcontent .GuestProfile {
    margin: 0;
    font-size: 16px;
}


/*--- スマホ・タブレット ---*/
@media screen and (max-width:768px) {

    /* 性別 */
    .Contact_Gender select {
        width: 100%;
    }

    /* 学年 */
    .Contact_Schoolyear select {
        width: 100%;
    }

    /* 都道府県 */
    .Contact_Pref select {
        width: 100%;
    }


    table.schedule td {
        display: block;
        width: 100% !important;
    }

    td.time {
        padding-bottom: 0 !important;
    }

    #postcontent .ContactButton {
        width: 100%;
        padding: 10px;
    }

    #postcontent .GuestProfBox {
        display: flex;
        justify-content: center;
        flex-direction: column;
        align-items: center;
    }

    #postcontent .GuestText {
        margin: 20px 0 0;
    }

}

/* テーブル */
.wp-block-table .has-fixed-layout {
    table-layout: fixed;
    width: 100%;
}

.wp-block-table td,
.wp-block-table th {
    border: 1px solid;
    border-color: #ddd;
    padding: .5em;
    text-align: left;
    border-width: 1px 1px 1px 0;
}

.wp-block-table td:first-child {
    width: 20%;
}

/* リスト */
#postcontent ul.wp-block-list {
    padding-left: 20px;
}

#postcontent ul.wp-block-list.PinkBox li {
    margin-bottom: 1rem;
    list-style: disc;
}

ul.wp-block-list.PinkBox li::marker {
    color: #ff8896;
}