@charset "UTF-8";

/* ------------------------------------------------
                    TOP
--------------------------------------------------- */

/*----------- 共通 -----------*/
.ttl-txt {
    font-size: 22px;
}
.middle-txt {
    font-size: 18px;
}
@media (max-width: 768px) {
    .ttl-txt {
        font-size: 6vw;
    }
    .middle-txt {
        font-size: 3.6vw;
    }
    
}




/*----------- メインヴィジュアル -----------*/
.main-visual {
    width: 100%;
    height: auto;
    position: relative;
}
.main-visual h1 {
    position: fixed;
    top: 120px;
    right: calc(3% + 10px);
    font-size: 12px;
    font-weight: 300;
    letter-spacing: 0.2em;
    z-index: 2;
}
.main-visual .main-txt {
    margin: 85px auto 60px;
    display: inline-block;
    font-size: 18px;
    letter-spacing: 0.2em;
    line-height: 3;
}


@media (max-width: 768px) {
    .main-visual {
        width: 100%;
        height: auto;
        position: relative;
    }
    .main-visual h1 {
        display: none !important;
    }
    .main-visual .main-txt {
        margin: 32vw auto 22vw;
        display: inline-block;
        font-size: 4vw;
        line-height: 3;
    }
}



/*----------- テキスト -----------*/
.yubin-txt {
    width: 70%;
    margin: 88px auto 110px;
    font-size: 15px;
}
.yubin-txt p {
    line-height: 3;
}
@media (max-width: 768px) {
    .yubin-txt {
        width: 96%;
        margin: 0 auto 20vw;
        font-size: 3.2vw;
    }
    .yubin-txt p {
        margin-bottom: 10vw;
        line-height: 2.6;
    }
}





/*----------- 手紙寺郵便 -----------*/
.yubin-list {
    width: 100%;
    margin: 0 auto 110px;
}
.yubin-list h2 {
    margin-bottom: 60px;
    font-size: 22px;
    font-weight: 300;
    letter-spacing: 0.2em;
    line-height: 2;
}
.yubin-list .yubin-cont-list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
}
.yubin-list .yubin-cont-list li {
    width: 31.5%;
    display: flex;
    flex-direction: column;
}

.yubin-list .yubin-cont-list li .list-ttl {
    margin-top: 30px;
    margin-bottom: 25px;
    font-size: 22px;
    line-height: 1;
}
.yubin-list .yubin-cont-list li .list-sub-ttl {
    margin-bottom: 30px;
    font-size: 18px;
    line-height: 1;
}
.yubin-list .yubin-cont-list li .list-txt {
    margin-bottom: 10px;
    font-size: 14px;
}
.yubin-list .yubin-cont-list li .tar {
    margin-top: auto;
}

@media (max-width: 768px) {
    .yubin-list {
        width: 96%;
        margin: 0 auto 20vw;
    }
    .yubin-list h2 {
        margin-bottom: 10vw;
        font-size: 4.8vw;
        font-weight: 300;
        line-height: 2;
    }
    .yubin-list .yubin-cont-list {
        width: 100%;
        display: block;
    }
    .yubin-list .yubin-cont-list li {
        width: 100%;
        margin-bottom: 12vw;
        display: block;
    }

    .yubin-list .yubin-cont-list li .list-ttl {
        margin-top: 6vw;
        margin-bottom: 5vw;
        font-size: 4.8vw;
        line-height: 1;
    }
    .yubin-list .yubin-cont-list li .list-sub-ttl {
        margin-bottom: 4vw;
        font-size: 3.8vw;
        line-height: 1;
    }
    .yubin-list .yubin-cont-list li .list-txt {
        margin-bottom: 0;
        font-size: 3.2vw;
    }
    .yubin-list .yubin-cont-list li .tar {
        margin-top: auto;
    }
}





