@charset "utf-8";

/* SPファーストビュー 
==========================*/

/* =======img====== */
#foodGuide .foodInfoAlert {
    position: relative;
}
.foodAlertImg_1 img,
.circleText,
.actionimg img,
.cheekimg img,
.healthimg img {
    position: absolute;
}

/* 個別の位置指定 */
.foodInfoSeed img {
    right: 0px;
    top: -10px;
}
.circleText {
    top: 150px;
    right: 0px;
}
.foodAlertImg_1 img {
    right: 12px;
    bottom: 10px;
}
.actionimg img {
    top: 65px;
    right: 0px;
}
.cheekimg img {
    right: 0px;
    bottom: -35px;
}
.healthimg img {
    right: 40%;
    bottom: -50px;
}

/* --- #foodGuide --- */
#foodGuide .foodInfo {
    padding: 30px 14px 14px;
}
#foodGuide .foodInfo h3 {
    border-bottom: 2px dotted #46AABE;
}
#foodGuide .foodInfo p {
    font-size: 1.5rem;
}
dl.foodList {
    row-gap: 2em;
}
dl.foodList dt {
    height: 150px;
}
dl.foodList dd span.foodListTitle {
    color: #46AABE;
}
.circleText {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 106px;
    height: 106px;
    border-radius: 50%;
    background-color: #46AABE;
    color: #fff;
    font-size: 1.3rem !important;
    font-weight: bold;
    text-align: center;
    box-sizing: border-box;
    white-space: pre-line;
    grid-column: 3;
}
.foodInfoAlert {
    background-color: #EFEEE8;
    border-radius: 10px;
    margin-top: 33px;
}
.foodInfoAlert h3 {
    margin-top: 2px !important;
}
.foodInfoAlert p {
    padding: 16px 16px 52px;
}
/* --- /#foodGuide --- */

/* --- #animalKinds --- */
#animalKinds {
    margin-top: 40px;
    padding-top: 15px;
    text-align: center;
}
#animalKinds h2 {
    font-size: 3.1rem;
}
.animalKindsText {
    font-weight: bold;
}
.animalKinds {
    margin-top: 28px;
}
.animalKinds section {
    margin-bottom: 35px;
}
#animalKinds section h3 {
    font-size: 1.7rem;
    font-weight: bold;
    margin-top: 6px;
}
.animalKindsExplanation {
    font-size: 1.5rem;
}
/* --- /#animalKinds --- */

/* --- #healthAlert --- */
#healthAlert .diseaseText {
    margin: 20px auto 0;
    display: flex;
    justify-content: center;
}
#healthAlert .diseaseGraph {
    justify-content: center;
    width: 250px;
    margin: 12px auto 64px;
}
.dataSource {
    bottom: -35px;
}
.headsUpContent {
    font-size: 1.7rem;
    padding: 25px 13px 30px 25px;
    font-weight: bold;
}
.redText {
    color: #CE0000;
}
.otherDisease {
    background-color: #fff;
    border-radius: 10px;
    padding: 25px 24px 0;
    font-weight: bold;
    max-width: 331px;
    margin: 27px auto 0;
}
.otherDiseaseTitle {
    font-size: 1.9rem;
    text-align: center;
    margin-bottom: 15px;
}
.otherDiseaseContent {
    padding-bottom: 20px;
}
.otherDiseaseName {
    font-size: 1.7rem;
    margin-bottom: 8px;
    background-color: #EFEEE8;
    padding-left: 10px;
    border-radius: 50px;
}
/* --- /#healthAlert --- */

/* --- #familiarDanger --- */
.dangerHeader {
    background-color: #46AABE;
}
/* --- /#familiarDanger --- */

/* --- #healthCheck --- */
#healthCheck .healthCheckInner {
    padding: 60px 13px 60px 19px;
}
.reference {
    margin-top: 19px;
    font-size: 0.9rem;
}
/* --- /#healthCheck --- */

/* --- #closingMessage --- */
.closingMessage {
    margin-top: 42px;
}

@media only screen and (min-width: 768px) {

    /* --- #foodGuide -- */
    #foodGuide .foodInfoWrap {
        display: flex;
        gap: 24px;
    }
    #foodGuide .foodInfoWrap > * {
        flex: 1;
        min-width: 0;
    }
    #foodGuide .foodInfo {
        overflow: auto;
        margin-top: 34px;
        padding: 28px 34px 32px;
    }
    dl.foodList {
        row-gap: 1em;
    }
    dl.foodList dt {
        height: auto !important;
    }
    .foodInfoAlert {
        margin-top: 0;
        height: 215px;
    }
    /* --- /#foodGuide --- */

    /* --- #animalKinds --- */
    #animalKinds {
        padding-top: 0;
    }
    .animalKinds {
        display: flex;
        justify-content: space-around;
    }
    /* --- /#animalKinds --- */

    /* --- #familiarDanger --- */
    #familiarDanger .dangerGrid {
        grid-template-columns: 1fr 1fr 1fr;
    }
    /* --- /#familiarDanger --- */

    /* ---#healthAlert */
    #healthAlert .diseaseGraph {
    margin: 0 0 0 27px;
    width: 275px;
    }
    #healthAlert .healthAlertWrap {
        margin-top: 10px;
        gap: 0;
    }
    .headsUpContent {
        font-size: 1.5rem;
        padding: 15px 20px 20px 18px;
    }
    .otherDisease {
        padding: 18px 39px 0;
        max-width: 100%;
    }
    .otherDiseaseTitle {
        font-size: 2.3rem;
    }
    .otherDiseaseWrap {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0 40px;
    }
    .otherDiseaseName {
        font-size: 1.5rem;
        margin-bottom: 8px;
        background-color: #EFEEE8;
        padding: 5px 10px;
        border-radius: 50px;
    }
    .otherDiseaseContent p {
        font-size: 1.4rem;
    }
    /* --- /#healthAlert --- */

    /* --- #healthCheck --- */
    #healthCheck {
        margin-top: 43px;
    }
    #healthCheck .healthCheckInner {
        padding: 20px 20px 30px;
    }
    #healthCheck .healthCheckContent {
        padding: 0 14px;
        display: grid;
        grid-auto-flow: column;
        gap: 20px 27.5px;
    }
    #healthCheck .healthCheckContent > section:nth-child(n + 3) {
        grid-column: 2;
    }
    .reference {
        margin-top: 11px;
    }
    /* --- /#healthCheck --- */

    /* --- #closingMessage --- */
    .closingMessage {
        margin-top: 49px;
    }
    /* --- /#closingMessage --- */

    /* ---img--- */
    .foodInfoSeed img {
        right: 20px;
    }
    .circleText {
        top: 120px;
    }
    .foodAlertImg_1 img {
        right: 20px;
    }
    .actionimg img {
        width: 123px;
        top: 75px;
    }
    .cheekimg img {
        right: -10px;
        bottom: -10px;
    }
    .healthimg img {
        right: -10px;
        bottom: -20px;
    }
}
@media only screen and (max-width: 360px) {
    .foodInfoSeed img:nth-of-type(1) {
        display: none;
    }
    .circleText {
        top: 200px;
        right: -20px;
    }
    .circleText {
        width: 75px;
        height: 75px;
        font-size: 0.9rem !important;
    }
}