:root{
  --poi-padding: 15px;
  --poi-font-title:48px;
  --poi-font-xl:36px;
  --poi-font-l:24px;
  --poi-font-m:18px;
  --poi-font-s:16px;
  --poi-pink:#f5766e;
  --poi-blue:#809ec9;
  --poi-orange:#fe744f;
}
@media screen and (max-width:1400px) {
    :root{
      --poi-padding: 10px;
      --poi-font-title:20px;
      --poi-font-xl:30px;
      --poi-font-l:18px;
      --poi-font-m:16px;
      --poi-font-s:14px;      
    }
}




/* poiAutoTemplate css v1.1 20220920*/
#localPage,
#localPage * {
    box-sizing: border-box;
}





#localPage {
    position: sticky;
    top: 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    overflow: hidden;
    z-index: 10;
    background: rgba(255,255,255,0.8);
    padding: 15px 0;
}

#localPage a {
    position: relative;
    display: inline-block;
    flex-shrink: 0;
    text-decoration: none;
    font-size: var(--poi-font-l);
        text-align: center;
        letter-spacing: 0.1em;
        font-weight: 600;
    padding: 0.6em 0 0.6em 1em;
    color: #534497;
    background: white;
    border-radius: 5em;
    border:solid 2px #534497;
    width: calc( (1080px / 4) - 30px );
    margin: 0 15px;
}

#localPage a.on{
    background: #534497;
    color: white;
}
@media screen and (min-width:1280px) {
    #localPage a:hover{
        background: #534497;
        color: white;
    }
}

#localPage a:after{
    content: '';
    display: inline-block;
    width: 2.2em;
    height: 2.2em;
    border-radius: 5em;
    position: absolute;
    left: -1px;
    top: -1px;
    border: solid 1px #534497;
    background: #534497 url(../images/localPage-icon-1.png) center center no-repeat;
    background-size: contain;
}

#localPage a:nth-of-type(1):after{
    background-image: url(../images/localPage-icon-1.png);
}

#localPage a:nth-of-type(2):after{
    background-image: url(../images/localPage-icon-2.png);
}

#localPage a:nth-of-type(3):after{
    background-image: url(../images/localPage-icon-3.png);
}

#localPage a:nth-of-type(4):after{
    background-image: url(../images/localPage-icon-4.png);
}




.poiAutoTemplate,
.poiAutoTemplate * {
    box-sizing: border-box;
}

.poiAutoTemplate {
    font-family: 'Noto Serif TC', serif;
    font-weight: 400;
}

.poiAutoTemplate.poiAutoTemplate-center {
    margin: 0 auto;
}

.poiAutoTemplate img {
    width: 100%;
}

.poiAutoTemplate .ph-group {
        width: 94%;
    margin: 0 auto;
    margin-bottom: calc( var(--padding) * 2 );
}

.poiAutoTemplate .ph-group-title {
    display: block;
        padding: var(--padding);
    text-decoration: none;
    font-family: 'Noto Serif TC', serif;
    font-size: var(--poi-font-title);
    font-weight: 700;
    color: #4a3e40;
    text-align: center;
    letter-spacing: 0.5em;
        overflow: hidden;
}

.poiAutoTemplate .ph-group-title span{
    position: relative;
    z-index: 1;
    display: inline-block;
}

.poiAutoTemplate .ph-group-title span:before{
    content: '';
    display: inline-block;
    width: auto;
    position: absolute;
        left: -1.1em;
    top: -0.1em;
    width: 0.9em;
    height: 1.2em;
    background: url(../images/poi-title-pink-1.png) center top no-repeat;
    background-size: contain;
        z-index: -1;
}


.poiAutoTemplate .ph-group-title span:after{
    content: '';
    display: inline-block;
    width: auto;
    position: absolute;
        right: -0.7em;
    top: 0.3em;
    width: 1.4em;
    height: 1em;
    background: url(../images/poi-title-pink-2.png) center top no-repeat;
    background-size: contain;
        z-index: -1;
}

.poiAutoTemplate.poiAutoTemplate-titleHide .ph-group-title {
    display: none !important;
}

.poiAutoTemplate .ph-group,
.poiAutoTemplate.poiAutoTemplate-scrollTab .ph-group {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.poiAutoTemplate.poiAutoTemplate-itemScroll .ph-group,
.poiAutoTemplate.poiAutoTemplate-scrollTab.poiAutoTemplate-itemScroll .ph-group {
    flex-wrap: nowrap;
    justify-content: start;
    overflow-x: scroll;
}

.poiAutoTemplate.poiAutoTemplate-changeTab .ph-group {
    display: none;
}

.poiAutoTemplate.poiAutoTemplate-changeTab .ph-group.poiAutoTemplate-on {
    display: flex;
}


.poiAutoTemplate.poiAutoTemplate-menuTrans .ph-menu {
    display: none;
}


.poiAutoTemplate .ph-menu{
    position: sticky;
    left: 0;
    top: 0;
    z-index: 99;
    background: white;
}


.poiAutoTemplate .slidecontain {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    font-size: var(--poi-font-l);
    font-weight: 500;
    letter-spacing: 0.15em;
        margin-bottom: var(--padding);
        border-bottom: solid 1px darkgray;
}

.poiAutoTemplate .slidecontain li {
    display: inline-block;
    flex-shrink: 0;
}

.poiAutoTemplate .slidecontain li a {
    position: relative;
    display: inline-block;
    padding: 0.2em 1.2em 0.3em;
    margin: 0.2em;
    border-radius: 5em;
}

.poiAutoTemplate .slidecontain li a:before{
    content: '';
    display: inline-block;
    width: 0.8em;
    height: 0.8em;
    background: #f2f2f2;
    border-radius: 5em;
    position: absolute;
    left: 0.8em; top: 0;
    z-index: -1;
    transition: all 0.2s;
}

@media screen and (min-width:960px) {
    .poiAutoTemplate .slidecontain li:hover a:before {
        width: 100%;
        height: 100%;
        left: 0;
    }
}

.poiAutoTemplate .slidecontain li.poiAutoTemplate-on a{
}
.poiAutoTemplate .slidecontain li.on a{
    color: white;
}
.poiAutoTemplate .slidecontain li.on a:before{
    width: 100%;
        height: 100%;
        left: 0;
    background: #4a3e40;
}
.poiAutoTemplate .slidecontain li.on a:after{
  content: "";
  display: inline-block;
  position: absolute;
  bottom: 0;
  right: 50%;
  width: 0;
  height: 0;
  border-top: 0.2em solid #4a3e40;
  border-left: 0.2em solid transparent;
  border-right: 0.2em solid transparent;
  transform: translate(50%, 100%);
}




.poiAutoTemplate .ph-group-content {
    position: relative;
    padding: var(--poi-padding);
    padding-bottom: 3em;
    margin: var(--poi-padding) 0;
    margin-bottom: calc( var(--poi-padding)*2 );
}

.poiAutoTemplate-box1 .ph-group-content {
    width: 100%;
}

.poiAutoTemplate-box2 .ph-group-content {
    width: calc(100% / 2 - 30px);
}

.poiAutoTemplate-box3 .ph-group-content {
    width: calc(100% / 3 - 30px);
}

.poiAutoTemplate-box4 .ph-group-content {
    width: calc(100% / 4);
}

.poiAutoTemplate-box5 .ph-group-content {
    width: calc(100% / 5 - 30px);
}

.poiAutoTemplate-box6 .ph-group-content {
    width: calc(100% / 6 - 30px);
}


.poiAutoTemplate .ph-group-content .ph-group-content-photo {
}
.poiAutoTemplate .ph-group-content .ph-group-content-photo a{
    display: block;
    overflow: hidden;
}
.poiAutoTemplate .ph-group-content .ph-group-content-text {
}



.poiAutoTemplate .ph-group-content-tag {
    display: block;
    font-size: var(--poi-font-m);
    font-weight: 600;
    letter-spacing: 0.2em;
    text-align: center;
    padding: 0.5em 0;
}



.poiAutoTemplate .ph-group-content-text-name {
    display: block;
    padding: var(--poi-padding);
    font-size: var(--poi-font-m);
    line-height: 1.4;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../images/poi-name-bg-pink.jpg) center center repeat;
}

.poiAutoTemplate .ph-group-content-text-sale{
    position: relative;
}

.poiAutoTemplate .ph-group-content-text-sale a {
    display: block;
    width: 100%;
    margin: 0 auto;
    font-size: var(--poi-font-s);
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.2;
    color: #f5766e;
        padding-top: var(--poi-padding);
}

.poiAutoTemplate .ph-group-content-text-detail a {
    display: block;
    padding: var(--poi-padding) 0;
    font-size: var(--poi-font-s);
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 500;
}

.poiAutoTemplate .ph-group-content-text-price {
    display: block;
    font-size: var(--poi-font-xl);
    font-weight: 700;
    color: #f5766e;
    text-align: center;
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
}

.poiAutoTemplate .ph-group-content-text-price span {
    font-size: var(--poi-font-s);
    font-weight: 400;
}



.poiAutoTemplate .link-right-wrap{
    text-align: center;
    padding-bottom: calc( var(--padding)*2 );
    margin-top: -50px;
}
.poiAutoTemplate .link-right{
    display: inline-block;
    font-size: var(--poi-font-m);
    letter-spacing: 0.1em;
    background: url(../images/poi-name-bg-pink.jpg) center center repeat;
        padding: 0.4em 1.5em;
        border-radius: 5em;
            text-decoration: underline;
}
.poiAutoTemplate .link-right:hover{
    padding: 0.4em 2em;
    text-decoration:none;
}
@media screen and (max-width:1400px) {
    .poiAutoTemplate .link-right-wrap{
        margin-top: -5%;
    }
}





/*hover*/
.poiAutoTemplate-box4 .ph-group-content:hover{
    transform: translate(3px,3px);
}




/*改色*/
.poiAutoTemplate .ph-group-title:nth-of-type(even) span:before{
    background-image: url(../images/poi-title-orange-1.png);
}
.poiAutoTemplate .ph-group-title:nth-of-type(even) span:after{
    background-image: url(../images/poi-title-orange-2.png);
}
.poiAutoTemplate .ph-group:nth-of-type(even) .ph-group-content-text-name{
    background-image: url(../images/poi-name-bg-orange.jpg);
}
.poiAutoTemplate .ph-group:nth-of-type(even) .ph-group-content-text-sale a , .poiAutoTemplate .ph-group:nth-of-type(even) .ph-group-content-text-price{
    color: var(--poi-orange);
}
.poiAutoTemplate .ph-group:nth-of-type(even) + .link-right-wrap .link-right{
    background-image: url(../images/poi-name-bg-orange.jpg);
}



/************POI商品 自動寬度CSS********************/
/************POI商品 自動寬度CSS********************/
/************POI商品 自動寬度CSS********************/
/************POI商品 自動寬度CSS********************/
@media screen and (max-width: 1400px){
    .poiAutoTemplate .slidecontain{
        overflow-x: scroll;
        justify-content: flex-start;
        flex-wrap: nowrap;
    }
    .poiAutoTemplate-box4 .ph-group-content{
        width: calc(100% / 3);
    }
}
@media screen and (max-width: 768px){
    .poiAutoTemplate-box4 .ph-group-content{
        width: calc(100% / 2);
    }
    .poiAutoTemplate .slidecontain li a{
        padding: 0.2em 0.5em 0.3em;
    }
    .poiAutoTemplate .slidecontain li a:before{
            left: 0.2em;
    }
}
@media screen and (max-width: 480px){
    .poiAutoTemplate-box4 .ph-group-content{
        width: 100%;
    }
}
/************POI商品 自動寬度CSS********************/
/************POI商品 自動寬度CSS********************/
/************POI商品 自動寬度CSS********************/
/************POI商品 自動寬度CSS********************/