/* =========================================================
   ① 全体共通（index / mymap 共通）
   ========================================================= */
/* 全体 */
body {
    font-family: "Noto Sans JP", "Noto Sans SC", "Helvetica Neue", Arial, sans-serif;
    margin: 0;
    color: #333;
    line-height: 1.6;
    text-align: center;
}
/* 言語切替ボタン（共通） */
.lang-switcher {
    display: flex;
    align-items: center;
}
.lang-switcher button {
    background: none;
    border: 1px solid #333;
    padding: 8px 16px;
    margin-left: 0.5rem;
    font-size: 14px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.3s, color 0.3s;
}
.lang-switcher button:hover {
    background: #333;
    color: #fff;
}
[hidden] {
    display: none;
}
/* =========================================================
   ② index.html 用
   ========================================================= */
/* タイトルと説明文 */
.intro {
    margin: 1rem auto 0 auto;
}
.intro h1 {
    font-size: 4rem;
    font-weight: 700;
    margin: 0;
    color: #222;
}
.intro p {
    font-size: 1.4rem;
    color: #555;
    margin: 0;
    line-height: 1.6;
}
/* セクション */
.section {
    width: 90%;
    max-width: 1200px;
    margin: 1rem auto 0 auto;
    text-align: left;
}
/* 言語切替ボタン */
.index-lang-switcher {
    display: flex;
    justify-content: flex-end;
}
/* 小見出し */
.section-title {
    font-size: 1.4rem;
    font-weight: 700;
    display: inline-block;
    border-bottom: 1.5px solid #666;
    margin: 0;
    padding-bottom: 0.3rem;
}
/* イラスト */
.illustration-wrapper {
    margin: 1rem auto 0 auto;
    position: relative;
}
.illustration {
    width: 100%;
    height: auto;
    display: block;
}
/* イラストのボトム幅 */
#izakayaImage {
    margin-bottom: 2.5rem; 
}
#antenaImage {
    margin-bottom: 4rem; 
}
/* イラスト上の透明ボタン */
.overlay-button {
    position: absolute;
    background: rgba(255, 0, 0, 0);
    cursor: pointer;
}
.overlay-button:hover {
    background: rgba(255, 255, 255, 0.4);
    /* 白の透明 */
}
/* 居酒屋マップ用ボタン */
.izakaya-btn {
    right: 0.5%;
    bottom: 0.7%;
    width: 21.7%;
    height: 3%;
}
/* アンテナショップ用ボタン */
.antena-btn {
    right: 0.5%;
    bottom: 0.7%;
    width: 30%;
    height: 4%;
}
/* スマホ（index） */
@media (max-width: 768px) {
    .intro h1 {
        font-size: 2.5rem;
    }
    .intro p {
        font-size: 1rem;
        line-height: 2;
}
    .index-lang-switcher {
        width: 95%;
        justify-content: center;
    }
}
/* =========================================================
   ③ mysakemap.html 用
   ========================================================= */
/* 言語切替 */
.map-lang-switcher {
    width: 90%;
    margin: 1rem auto 0 auto;
    display: flex;
    justify-content: flex-end;
}
/* 地図 */
.map-wrapper {
    width: 90%;
    margin: 1rem auto 0 auto;
}
.map-frame {
    width: 100%;
    height: 85vh;
    border: none;
}
/* スマホ（map） */
@media (max-width: 768px) {
    .map-lang-switcher {
        width: 95%;
        justify-content: center;
    }
    .map-wrapper {
        width: 95%;
        margin: 1rem auto 0 auto;
    }
    .map-frame {
        height: 80vh;
    }
}