body {
    background-image: url("../../img/texture.png");
    background-repeat: repeat;
    z-index: 3;

    font-family: "Noto Sans JP";
}
.pageContainer {
    position: relative;
    display: flex;
    flex-direction: column;
    /* align-items: center; */
}

/* ======================手機===================== */
/* header-logo */
h1,h1 a img{
    width: 20vw;
    min-width: 100px;
}
h1 {
    margin: 10px 20px;
}
.header {
    display: flex;
    justify-content: space-between;
    align-items: center;

    position: fixed;
    top:0;
    
    width: 100%;
    background-color: var(--white);
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    z-index: 2;
}

/* header-選單-項目變下拉選單 */  
.nav .menuList{
    display: none;
}

.nav.mobile-active .menuList{
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background-color: var(--white);
    border-top: 1px solid var(--lightgray);
    box-shadow: 0 2px 10px rgba(0,0,0,.1);
    
    display: flex;
    flex-direction: column;
    align-items: stretch;
    
}

.nav.mobile-active .menuList li{
    border-bottom:1px solid var(--lightgray);
}

.nav.mobile-active .menuList li:last-child{
    border-bottom:none;
}

/* header-選單-項目變下拉選單的樣式設定 */  
.nav.mobile-active .menuList a{
    display: block;
    padding: 24px 32px;

    font-weight: var(--fw-0);
    color: var(--primary);
    font-size: var(--fz-1);
    letter-spacing: 5.76px;
    text-decoration: none;
    
    transition: background 0.3s;
}
.nav.mobile-active .menuList a:hover{
    background-color: var(--brown);
}


/* header-選單-icon固定在底部 */
.nav .iconList {
    position:fixed;
    bottom:0;
    left:0;
    right:0;
    /* padding: 20px; */

    background-color: var(--white);
    box-shadow: 0 -2px 4px rgba(0,0,0,0.1);
    z-index:1;

    display: flex;
    justify-content: space-around;
}
.nav .iconList li{
    flex-grow: 1;
}

.nav .iconList li:first-child {
    display: none;
}

/* header-選單-icon固定在底部的寬高設定 */
.nav .iconList a {
    display: block;
    width: 100%;
    text-align:center;
    margin: auto;
    padding: 14px 0px;
    font-size: var(--fz-3);
    color: var(--primary);
}

.iconList a:hover {
    background-color: var(--brown);
}

/* header-漢堡選單icon */
button.hamburger {
    display: block;
    height: 100%;
    all: unset;
    cursor: pointer;
    margin: 8px 8px;
    padding: 12px;
    font-size: var(--fz-4);
    color: var(--primary);
}

/* header-漢堡選單icon-展開模式 */
button.hamburger .iconBar-close {
    display: none;
}

button.hamburger.active .iconBar {
    display: none;
}

button.hamburger.active .iconBar-close {
    display: inline;
}




/* =====================768===================== */
@media screen and (min-width: 768px){

/* ----header區塊---- */
.header{
    display: flex;
    justify-content: space-between;
    align-items: center;

    position: fixed;
    width: 100%;
    z-index: 1;

    /* 初始狀態：只讓 logo 可見，背景透明、無陰影 */
    background-color: transparent;
    box-shadow: none;
    transition: background-color .3s ease, box-shadow .3s ease;
}

#header.is-visible {
    opacity: 1;
    pointer-events: auto;

    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    background-color: var(--white);
    background-image: url("../../img/texture.png");
    background-repeat: repeat;
    z-index: 3;

}

/* header-logo */
h1,h1 a img{
    width: 12vw;
    max-width: 160px;
    transition: width 1s ease; 
}

.header.is-visible h1 a img {
    max-width: 120px;
}

/* header-導覽列 */
#nav {
    opacity: 0;
    pointer-events: none;
}

#nav.is-visible {
    opacity: 1;
    pointer-events: auto;
}

.nav {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 24px;
    padding: 8px 16px;
}

/* header-文字選單 */
.nav .menuList {
    display: flex;
}

.nav .menuList a {
    margin: 0 12px;
    padding: 8px 0;

    font-weight: var(--fw-0);
    color: var(--primary);
    font-size: 2.0vw;
    /* font-size: var(--fz-2); */
    letter-spacing: 5.76px;

    position: relative;
    text-decoration: none;
    overflow: hidden;
}

/* header-文字選單-底線效果 */
.nav .menuList a::after {
    content: "";
    position: absolute;

    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: var(--secondary);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease-out;
}
.nav .menuList a:hover::after {
    transform: scaleX(1);
}

.nav .menuList a:hover {
    color: var(--secondary);
    font-weight: var(--fw-2);
}

/* header-icon列 */
.nav .iconList {
    position:static;
    box-shadow:0 0 0 0 ;
    background-color: transparent;
}

.nav .iconList li:first-child {
    display: block;
}


.nav .iconList a {
    margin: 0 8px;
    padding: 8px 8px;
    font-size: 24px;
    color: var(--primary);
}

.nav .iconList a:hover {
    color: var(--secondary);
    background-color: transparent;
}

/* header-漢堡選單icon */
button.hamburger {
    display: none;
}
}

@media screen and (min-width: 1024px){
/* header-文字選單 */
    .nav .menuList a {
    margin: 0 16px;
    padding: 8px 0;

    font-weight: var(--fw-0);
    color: var(--primary);
    /* font-size: 1.0vw; */
    font-size: var(--fz-2);
    letter-spacing: 5.76px;

    position: relative;
    text-decoration: none;
    overflow: hidden;
}
}