@charset "utf-8";

/* section__topic */
.article__header {
    width: 100%;
    height: 100%;
    background: url(../images/access-sp.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    padding: 154px 0 10px 0;
}

.article__header .section__topic {
    padding-left: 33px;
}

.article__header .section__topic::before {
    content: '';
    position: absolute;
    width: 100px;
    height: 1px;
    background-color: var(--primary-mauvepink, #A36D6A);
    top: 80px;
    left: 33px;
}

@media screen and (min-width: 769px) {
    .article__header {
        background: url(../images/access-pc.jpg);
        padding: 362px 0 28px 0;
    }

    .article__header .section__topic {
        padding-left: 13.33%;
    }

    .article__header .section__topic::before {
        top: 84px;
        left: 13.33%;
    }
}

/* Access */
.access {
    padding: 26px 0;
}

.access h3 {
    margin-top: 47px;
}

.access__txt::before {
    content: '';
    display: inline-block;
    background: var(--primary-black, #646464);
    border-radius: 50%;
    width: 5px;
    height: 5px;
    margin: 0 5px 2.5px 0;
}

.access p {
    margin-top: 14px;
}

.map__frame {
    width: 100%;
    height: 291px;
}

@media screen and (min-width: 769px) {
    .section--access {
        padding: 120px var(--contentsp2Padding) 53px;
    }

    .access__flex {
        display: flex;
        max-width: 1080px;
        margin: 0 auto;
    }

    .access {
        margin-right: 52px;
        padding-top: 100px;
    }

    .access .button__viewmore {
        display: block;
        margin-top: 83px;
    }

    .map {
        width: 60%;
        height: 465px;
    }

    .map__frame {
        height: 465px;
    }
}

/* Direction */
.section--direction .section__topic {
    text-align: center;
    padding-left: 0;
}

.section--direction .section__topic::before {
    width: 100px;
    top: 80px;
    left: 50%;
    margin-left: -50px;
}

.direction__item {
    margin-top: 36px;
}

.direction__img--pc {
    display: none;
}

.direction__txt {
    line-height: 1.7;
}

@media screen and (min-width: 769px) {
    .section--direction {
        padding: 128px var(--contentsp2Padding) 0;
    }

    .direction {
        display: flex;
        justify-content: space-between;
        max-width: 1080px;
        margin: 64px auto 0;
    }

    .direction__item:first-child {
        margin-right: 24px;
    }

    .direction__item {
        margin-top: 0;
    }

    .direction__img--sp {
        display: none;
    }

    .direction__img--pc {
        display: block;
    }

    .direction__img--pc img {
        width: 484px;
    }

    .direction__txt {
        font-size: 1.6rem;
        margin-top: 12px;
        max-width: 484px;
    }
}