@charset "UTF-8";

/*=================================
title 
================================ */
.title__contact {
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 1;
    text-align: center;
    color: #FFFFFF;
    white-space: nowrap;
}

.subtitle__contact,
.subtitle__access {
    font-size: 2rem;
    line-height: 1;
    align-items: center;
    margin: 40px 10px 0;
}

.decoLine {
    display: flex;
    margin-top: 10px;
}

.colorLine {
    width: 116px;
    height: 3px;
    background-color: var(--blue);
    display: block;
}

.colorLine--green {
    width: 116px;
    height: 3px;
    background-color: var(--green);
    display: block;
}

.grayLine {
    width: 220px;
    height: 3px;
    background-color: rgba(35, 35, 35, 0.2);
    display: block;
}

/* title pc */
@media screen and (min-width: 769px) {
    .title__contact {
        font-size: 6rem;
    }

    .subtitle__contact,
    .subtitle__access {
        font-size: 3.2rem;
        margin: 60px 0 0;
    }

    .decoLine {
        margin-top: 16px;
    }

    .colorLine {
        width: 148px;
    }

    .colorLine--green {
        width: 148px;
    }

    .grayLine {
        width: 330px;
    }
}
/* pc 769px */

/*=================================
article header
================================ */
.article__header {
    background-image: url(../images/background_contact-sp.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 40px 0px;
}

/* article header pc */
@media screen and (min-width: 769px) {
    .article__header {
        background-image: url(../images/background_contact-pc.png);
        padding: 170px 0px;
    }
}
/* pc 769px */

/*=================================
contact
================================ */
#contact {
    padding: 0 var(--contentPadding) 20px;
}

.txt__contact {
    font-size: 1.6rem;
    text-align: center;
    margin-top: 40px;
}

.item__tel {
    display: flex;
    justify-content: center;
    margin-top: 40px;
    align-items: flex-end;
}

.item__tel img {
    width: 40px;
    height: 40px;
}

.txt__tel {
    font-family: 'Oswald';
    font-weight: 700;
    font-size: 4rem;
    line-height: 1;
    color: var(--blue);
}

.txt__time {
    font-size: 1.4rem;
    line-height: 1;
    text-align: center;
    margin-top: 16px;
}

/* contact pc */
@media screen and (min-width: 769px) {
    #contact {
        padding: 0 9.7% 60px;
    }
    .txt__contact {
        font-size: 2.4rem;
        margin-top: 60px;
    }
    
    .item__tel {
        margin-top: 60px;
    }
    
    .item__tel img {
        width: 80px;
        height: 80px;
    }
    
    .txt__tel {
        font-size: 8rem;
    }
    
    .txt__time {
        font-size: 2.4rem;
        margin-top: 40px;
    }
}
/* pc 769px */

/*=================================
access
================================ */
#access {
    padding: 0 var(--contentPadding);
}

.address img {
    width: 14px;
    height: 14px;
    margin-right: 4px;
}

.num {
    font-size: 1.4rem;
    margin-right: 4px;
}

.address {
    font-size: 1.6rem;
    margin-top: 40px;
    align-items: center;
    display: flex;
    justify-content: center;
}

.mapall {
    justify-items: center;
}

.map {
    min-width: 343px;
    min-height: 220px;
    margin: 10px auto 0;
    display: block;
}

.txt__access {
    min-width: 343px;
    margin: 10px;
}

.txt__access li {
    font-size: 1.6rem;
}

.greenDot {
    color: #006B4E;
}

/* access pc */
@media screen and (min-width: 769px) {
    #access {
        padding: 0 9.7%;
    }
    .address img {
        width: 24px;
        height: 24px;
        margin-right: 8px;
    }
    
    .num {
        font-size: 2rem;
        margin-right: 8px;
    }
    
    .address {
        font-size: 2.4rem;
        margin-top: 60px;
    }
    
    .map {
        max-width: 766px;
        min-height: 494px;
        width: 100%;
        margin: 10px auto;
    }
    
    .txt__access {
        max-width: 766px;
        margin: 40px auto 0;
    }
    
    .txt__access li {
        font-size: 2.2rem;
    }
}
/* pc 769px */

/*=================================
page top btn
================================ */
.btn__arrow {
    margin: 40px 4.2%;
}

/* page top btn pc */
@media screen and (min-width: 769px) {
    .btn__arrow {
        margin: 60px 9.7%;
    }
}
/* pc 769px */