@charset "UTF-8";

/*--------------------------------------------------------------
mv
--------------------------------------------------------------*/
.mv {
    position: relative;
    width: 100%;
}

.mv-img-wrap {
    position: relative;
    padding-top: 49.58%;
    background: url(../asset/img_mv_pc.jpg)center/cover no-repeat;
}

.copy {
    position: absolute;
    top: 57.35%;
    left: 19.53%;
    color: #fff;
    font-size: clamp(1.3em, 1.56vw, 3em);
    line-height: 1.3;
    letter-spacing: .08em;
}

.copy span {
    display: block;
    width: fit-content;
    margin-bottom: .6em;
    padding: 0 .3em;
    background: #fff;
    color: #613500;
    font-family: 'Shippori Mincho', serif;
    font-weight: 800;
}

.tapmaestro-wrap {
    margin: -4.4% auto 0;
    position: relative;
}

.tapmaestro {
    width: 48.44%;
    max-width: 928px;
    margin: 0 auto;
    font-feature-settings: "palt";
}

.copy-ta-wrap {
    width: 100%;
    margin-bottom: 7.4%;
    text-align: center;
    font-family: 'Alegreya', serif;
    font-weight: 800;
    font-size: clamp(3em, 6.15vw, 11.8em);
    letter-spacing: .05em;
}

/* h1 の中は span（div は入れられない）なのでブロックにする */
.copy-ta-logo,
.copy-ta {
    display: block;
}

.copy-ta-svg {
    display: block;
    width: 65.8%;
    margin: 0 auto 3.2%;
}

.copy-ta {
    line-height: 1;
    color: #613500;
    white-space: nowrap;
    margin: 0 -19%;
}

.tapmaestro-txt-wrap {
    margin-bottom: 13.79%;
    line-height: 2;
    letter-spacing: .06em;
    color: var(--black);
}

.tapmaestro-txt {
    font-size: clamp(1.4em, 1.2vw, 2.3em);
    line-height: 2.1;
    font-weight: bold;
    text-align: center;
    color: #613500;
}

.aconcert {
    margin: 0 calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
    background: url(../asset/img_back.png) center/cover no-repeat;
    padding-bottom: 11.6%;
}

.aconcert_title {
    margin: 14.94% auto 0;   /* SVG は上下の余白がないので、PNG の余白分を margin で補う */
    width: 73.37%;
}

.aconcert_title img {
    display: block;
    width: 100%;
}

.aconcert_wrap {
    margin-top: 6.9%;
    margin-bottom: 9.43%;
    line-height: 2;
    letter-spacing: .06em;
    color: var(--black);
}

.aconcert_txt {
    font-size: clamp(1.4em, 1.2vw, 2.3em);
    line-height: 2.1;
    font-weight: bold;
    text-align: center;
    color: #613500;
}

.aconcert_type {
    display: flex;
    align-items: center;
    margin-bottom: 10.6%;
}

.aconcert_type:last-child {
    margin-bottom: 0;
}

.aconcert_icon {
    width: 27.932%;
    margin-left: 3.6%;
    flex-shrink: 0;
}

.aconcert_glass {
    width: 8.1%;
    margin: 1.1% 5.3% 0 5.8%;
    flex-shrink: 0;
}

.aconcert_list_txt {
    flex: 1;
    letter-spacing:  .1em;
    margin-top: 1.94%;
}

.aconcert_icon img, .aconcert_glass img, .aconcert_list_title img {
    display: block;
    width: 100%;
}

.aconcert_list_title {
    margin-bottom: 5.7%;
}

.aconcert_list_title img {
    width: auto;
    height: clamp(2.5em, 2.55vw, 4.9em);   /* SVG は余白なし。1920px 幅で 49px */
}

.aconcert_sub_title {
    margin-bottom: 4.1%;
    font-size: clamp(1.4em, 1.09vw,2.1em);
    color: #2e3035;
    font-weight: bold;
}

.aconcert_list_body {
    font-size: clamp(1.3em, 1.04vw, 2em);
    line-height: 1.85;
    white-space: nowrap;
    color: #000;
}

.aconcert_movie {
    margin-top: 15.1%;
}

.aconcert_movie p {
    font-size: 2.6em;
    text-align: center;
    line-height: 1.5;
    color: #000;
    letter-spacing: .1em;
}

.aconcert_movie-youtube {
    width: 85%;
    margin:  6.4% auto 0;
    aspect-ratio: 16/9;
}

.aconcert_movie-youtube iframe {
    display: block;
    width: 100%;
    height: 100%;
}

.tapmaestro-list {
    margin-top: 21%;
    font-feature-settings: normal;   /* 一覧は palt なしがカンプと一致 */
}

.tapmaestro-title h2 {
    font-family: 'Alegreya', serif;
    font-weight: 800;
    font-size: clamp(3em, 5.05vw, 9.7em);
    letter-spacing: .04em;
    word-spacing: .3em;
    margin-bottom: .7%;
    text-align: center;
    color: #613500;
}

.tapmaestro-title-kana {
    font-size: 1.8em;
    line-height: 1.5;
    letter-spacing: .05em;
    text-align: center;
    color: #613500;
}

.tapmaestro-note {
    font-size: 1.6em;
    font-weight: normal;
    line-height: 1.875;
    letter-spacing: .1em;
    text-align: center;
    color: #613500;
    margin-top: 4.4%;
}

.tapmaestro-items {
    margin-top: 11.47%;
}

.tapmaestro-item {
    margin-bottom: 11.03%;
}

.tapmaestro-no {
    font-family: 'Alegreya', serif;
    font-weight: 800;
    font-size: 3em;
    margin-bottom: 2.45%;
    letter-spacing: .05em;
    text-align: center;
    color: #613500;
}

.tapmaestro-no span {
    font-family: 'Arial Black', Arial, sans-serif;
    font-weight: 900;
    letter-spacing: .05em;
}

.tapmaestro-name {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 4.5%;
}

.tapmaestro-name h3 {
    font-size: 4em;
    margin-right: .82vw;
    letter-spacing: .03em;
    color: #f15a24;
}

.tapmaestro-name-kana {
    font-size: 1.6em;
    font-family: 'Alegreya', serif;
    font-weight: 800;
    margin-right: 0;
    letter-spacing: .066em;
    color: #f15a24;
}

.tapmaestro-beer-icon {
    width: .6vw;
    margin-right: .77vw;
}

.tapmaestro-beer-icon img {
    width: 100%;
    display:block;
}

.tapmaestro-type {
    font-family: 'Alegreya', serif;
    font-weight: 800;
    font-size: 2.64em;
    color: #00a0e9;
}

.tapmaestro-type a {
    color: inherit;
    text-decoration: underline;
}

/* 店舗非公開（リンクなし）は黒 */
.tapmaestro-type--private {
    color: #231815;
}

.tapmaestro-profile {
    display: flex;
    align-items:center;
    gap: 5%;
}

.tapmaestro-photo {
    width: 38.8%;
    margin-left: 5.3%;
}

.tapmaestro-photo img {
    width: 100%;
    display: block;
}

.tapmaestro-text {
    width: 41%;
}

.tapmaestro-text p {
    font-size: 2em;
    line-height: 1.86;
    text-align: justify;
    color: #000;
}

/* 名前の行のグループ（PC・SP 共通） */
.tapmaestro-name-main,
.tapmaestro-shop {
    display: flex;
    align-items: center;
}

.tapmaestro-name-main {
    margin-right: 3.3%;
}

@media screen and (max-width: 768px) {
    /*  MV  */
    .mv-img-wrap {
        padding-top: 78.93%;
    }
    .copy {
        top: 11%;
        left: 7.73%;
        font-size: 3.73vw;
        letter-spacing: .065em;
    }

    /*  タイトル  */
    .tapmaestro-wrap {
        margin-top: -7.87%;
    }
    .tapmaestro {
        width: 86.27%;
        font-feature-settings: normal;
    }
    .copy-ta-wrap {
        font-size: 11.6vw;
        margin-bottom: 6.5%;
        letter-spacing: .04em;
    }
    .copy-ta-svg {
        width: 68.5%;
        margin-bottom: 3.1%;
    }
    .tapmaestro-txt {
        font-size: 3.52vw;
        line-height: 1.82;
        letter-spacing: .1em;
    }

    /*  Aconcert  */
    .aconcert {
        padding-bottom: 0;
    }
    .aconcert_title {
        width: 82.4%;
        margin-top: 11.6%;
    }
    .aconcert_wrap {
        margin-top: 8.8%;
        margin-bottom: 15%;
    }
    .aconcert_txt {
        font-size: 3.52vw;
        line-height: 1.82;
        letter-spacing: .1em;
    }
    .aconcert_type {
        height: 25.36vw;
        margin-bottom: 18.85%;
    }
    .aconcert_icon {
        width: 29.4%;
        margin-left: 0;
    }
    .aconcert_glass {
        width: 9.9%;
        margin: 0 6.6% 0 3.6%;
    }
    .aconcert_list_txt {
        margin-bottom: 1%;
    }
    .aconcert_list_title {
        margin-bottom: 7.5%;
    }
    .aconcert_list_title img {
        height: 5.87vw;
    }
    .aconcert_sub_title {
        font-size: 2.47vw;
        margin-bottom: 4.9%;
        letter-spacing: .16em;
    }
    .aconcert_list_body {
        font-size: 2.47vw;
        line-height: 1.78;
    }

    /*  youtube  */
    .aconcert_movie {
        margin-top: 21.5%;
    }
    .aconcert_movie p {
        font-size: 4.27vw;
        letter-spacing: 0;
    }
    .aconcert_movie-youtube {
        width: 100vw;
        margin: 8.6% calc(50% - 50vw) 0;
    }

    /*  tap maestro  */
    .tapmaestro-list {
        margin-top: 28.4%;
    }
    .tapmaestro-title h2 {
        font-size: 11.4vw;
        letter-spacing: .03em;
        margin-bottom: 2.4%;
    }
    .tapmaestro-title-kana {
        font-size: 4vw;
        letter-spacing: .06em;
    }
    .tapmaestro-note {
        font-size: 2.4vw;
        line-height: 1.67;
        margin-top: 3.9%;
    }
    .tapmaestro-items {
        margin-top: 15%;
    }
    .tapmaestro-item {
        margin-bottom: 14.75%;
    }
    .tapmaestro-no {
        font-size: 4.85vw;
        margin-bottom: 4.5%;
        letter-spacing: .06em;
    }
    .tapmaestro-name {
        flex-direction: column;
        margin-bottom: 6.15%;
    }
    .tapmaestro-name-main {
        margin: 0 0 4.8%;
    }
    .tapmaestro-name h3 {
        font-size: 6.13vw;
        margin-right: 2.2vw;
        letter-spacing: .08em;
    }
    .tapmaestro-name-kana {
        font-size: 2.23vw;
        letter-spacing: .1em;
    }
    .tapmaestro-beer-icon {
        width: 1.83vw;
        margin-right: 2.67vw;
    }
    .tapmaestro-type {
        font-size: 3.8vw;
        letter-spacing: .06em;
    }
    .tapmaestro-profile {
        flex-direction: column;
        gap: 0;
    }
    .tapmaestro-photo {
        width: 55.6%;
        margin: 0;
    }
    .tapmaestro-text {
        width: 65.7%;
        margin-top: 5.1%;
    }
    .tapmaestro-text p {
        font-size: 2.8vw;
        line-height: 1.76;
        text-align: justify;
    }

}