@charset "utf-8";
/* ===============
main
=============== */
.mainVis__container{
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
}

.mainVis__img{
    display: block;
}

.mainVisImg{
    width: 100vw;
}
.mainVisImg--PC{
    display: none;
}

.text-container{
    width: 100%;
    padding: 20px 0px;
    color: var(--primay-darkBrown);
    background-color: rgba(244, 243, 240, 0.8);
    box-shadow: 0px 0px 20px 0px #F4F3F0;
    position: absolute;
    bottom: 60px;
}

.mainVis__maintxtBox{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.clown__mainVis{
    width: 42.865px;
    height: 22.979px;
}
.clown__mainVis--reversal{
    transform: scaleX(-1); /* 左右反転 */
}
.mainVis__maintxt{
    color: var(--primary--darkBrown, #401E0A);
    text-align: center;
    font-size: 3.6rem;
    font-weight: 700;
    line-height: 1.0;
}
.text-container p{
    margin-top: 24px;
    color: var(--primary--liteBrown);
    text-align: center;
    font-size: 2.0rem;
    font-weight: 400;
    line-height: 1.0;
}

.howToOrder{
    margin-top: 36px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}

.howToOrder__EnTxt{
    font-family: Garamond;
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.0;
    letter-spacing: 0.64rem;
    text-align: center;
}
.howToOrder__txt{
    font-size: 1.6rem;
    letter-spacing: 0.64px;
    text-align: center;
}


/* pc  769px */
@media screen and (min-width:769px) {
    .mainVis__img{
        width: 100%;
        height: 500px;
        overflow: hidden;
    }
    .mainVisImg{
        display: none;
    }
    .mainVisImg--PC{
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover; /* 画像を比率を維持しつつコンテナにフィットさせる */
    }
    .text-container{
        bottom: 80px;
    }
    
    .mainVis__maintxtBox{
        gap: 24px;
    }
    
    .clown__mainVis{
        width: 74.617px;
        height: 40px;
    }
    .mainVis__maintxt{
        font-size: 4.8rem;
    }
    .text-container p{
        font-size: 3.6rem;
    }
    
    .howToOrder{
        margin-top: 40px;
        gap: 18px;
    }
    .howToOrder__EnTxt{
        font-size: 4.0rem;
        letter-spacing: 0.96rem;
        text-align: center;
    }
    .howToOrder__txt{
        font-size: 2.0rem;
        line-height: 1.5;
        letter-spacing: 0.36rem;
        text-align: center;
    }
}

/* ===============
firster
=============== */
.firster__content{
    margin-top: 48px;
}
.firster__content img{
    margin-top: 60px;
}
.firster__item{
    margin: 60px auto 0;
    width: var(--width-SP);
}
.firster__content img:last-child{
    margin-top: 0 ;
}

.firsterItem__title{
    display: block;
    text-align: center;
    font-size: 2.0rem;
    letter-spacing: 0.08rem;
}
.firsterItem__txt{
    margin-top: 12px;
    font-size: 1.6rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.8; /* 28.8px */
    letter-spacing: 0.064rem;
}
.lineDec02__contenar{
    margin-bottom: 40px;
}

/* pc  769px */
@media screen and (min-width:769px) {
    .firster__content{
        margin-top: 60px;
    }
    .firster__content img{
        margin-top: 60px;
    }
    .firster__item{
        width: var(--width-PC);
    }
    .firsterItem__title{
        font-size: 3.2rem;
        letter-spacing: 0.256rem;
    }
    .firsterItem__txt{
        text-align: center;
        margin-top: 36px;
        font-size: 2.0rem;
        line-height: 1.8;
        letter-spacing: 0.36rem;
    }
}

/* ===============
about
=============== */
.about{
    background-color: var(--primary--greige);
    padding: 40px 0;
}
.about__contenar{
    display: flex;
    flex-direction: column;
    align-items: center;
}
.about__item{
    margin-top: 58px;
    width: var(--width-SP);
}
.aboutItem__title{
    text-align: center;
    font-size: 2.0rem;
    letter-spacing: 0.08rem;
}
.aboutItem__content{
    margin-top: 12px;
    display: flex;
    gap: 20px;
}
.aboutItem__content--second{
    justify-content: flex-end;
}
.about__img{
    /* width: 50%; */
    /* width: 100%; */
    margin-top: 20px;
    width: 100px;
    height: 125px;
    object-fit: cover; 
}
.aboutItem__txtBox{
    width: 80vw;
    max-width: 250px;
}
.aboutItem__txt{
    font-family: "Zen Old Mincho";
    font-size: 1.5rem;
    letter-spacing: 0.064rem;
}
/* pc  769px */
@media screen and (min-width:769px) {
    .about{
        padding: 60px 0;
    }
    .about__item{
        margin-top: 60px;
        width: 94%;
    }
    .aboutItem__title{
        text-align: center;
        font-size: 3.2rem;
        letter-spacing: 0.256rem;
    }
    .aboutItem__content{
        margin-top: 40px;
        align-items: center;
        gap: 60px;
    }
    .about__img{
        margin-top: 40px;
        width: 720px;
        height: 360px;
    }
    .aboutItem__txtBox{
        width: 80vw;
        max-width: 600px;
    }
    .aboutItem__txt{
        font-family: "Zen Old Mincho";
        font-size: 2.0rem;
        line-height: 2.0;
        letter-spacing: 0.36rem;
    }
}

/* ===============
creator
=============== */
.creator__content{
    margin: 0 auto;
    margin-top: 40px;
    width: var(--width-SP);
    display: flex;
    flex-direction: column;
    align-items: center;
}
.creator__icon{
    display: flex;
    gap: 20px;
}
.creatorImg{
    width: 100px;
    height: 100px;
}
.nameBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4px;
}
.creator__dec{
    width: 150px;
    height: 21px;
}
.creator__dec--under{
    transform: scaleY(-1);/* 上下反転 */
}
.name{
    font-size: 2.0rem;
    letter-spacing: 0.08rem;
}
.creator__txtBox{
    margin-top: 33px;
    display: flex;
    flex-direction: column;
    gap: 21px;
}
.creator__txt{
    font-size: 1.6rem;
    letter-spacing: 0.064rem;
}
/* pc  769px */
@media screen and (min-width:769px) {
    .creator__content{
        margin-top: 60px;
        width: 94%;
    }
    .creator__icon{
        gap: 40px;
    }
    .creatorImg{
        width: 256px;
        height: 256px;
    }
    .nameBox{
        gap: 12px;
    }
    .creator__dec{
        width: 195px;
        height: 27.3px;
    }
    .name{
        font-size:  3.0rem;
        letter-spacing: 0.16rem;
    }
    .creator__txtBox{
        gap: 30px;
        width: var(--width-PC);
    }
    .creator__txt{
        text-align: center;
        font-size: 1.6rem;
        line-height: 2.0;
        letter-spacing: 0.36rem;
    }
}
/* ===============
woeks
=============== */
.works{
    background-color: var(--primary--greige);
    padding: 40px 0;
}
.works__item{
    /* display: flex;
    flex-direction: column; */
    width: var(--width-SP);
    margin: 40px auto 0;
}
.works__txtBox{
    margin-top: 40px;
}
.works__txt{
    text-align: center;
    font-size: 2.0rem;
    letter-spacing: 0.08rem;
}
.works__txtBox a{
    display: block;
    margin-top: 16px;
}
/* pc  769px */
@media screen and (min-width:769px) {
    .works{
        padding: 60px 0;
    }
    .works__item{
        width: var(--width-PC);
        margin: 80px auto 0;
    }
    .works__txtBox{
        margin-top: 60px;
    }
    .works__txt{
        font-size: 3.2rem;
        line-height: 1.0;
        letter-spacing: 0.256rem;
    }
    .works__txtBox a{
        margin-top: 40px;
    }
}

/* ===============
howToOrder--second
=============== */
.howToOrder__imgOlw{
    margin-top: 18px;
}
.howToOrder__txtBox{
    display: block;
    margin: 18px auto 0;
    width: var(--width-SP);
}

/* pc  769px */
@media screen and (min-width:769px) {
    .howToOrder__imgOlw{
        margin-top: 38px;
    }
    .howToOrder__txtBox{
        margin: 38px auto 0;
        /* width: var(--width-PC); */
        width: 100%;
        color: #000;
        font-size: 2.0rem;
        letter-spacing: 0.36rem;
    }
}