/* pc-only */
.news {
    width: 100%;
    height: 3.75rem;
    background-color: #D85E96;
    display: flex;
    justify-content: center;
    align-items: center;
}

.news p {
    width: 15.8125rem;
    height: 2.1875rem;
    color: #FFF;
    font-family: "Noto Sans TC";
    font-size: 1.3125rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.09188rem;
    white-space: nowrap;
}

.brand-nav {
    width: 100%;
    height: 7.8125rem;
    background-color: #f7e8dc;
    display: flex;
    justify-content: space-between;
    align-items: center;

}

.sakura-logo {
    width: 30.4375rem;
    height: 4.5rem;
    margin-left: 6.12rem;
}

.header_right {
    display: flex;
    align-items: center;
    padding-right: 5.39rem;
}

.login {
    width: 9.75rem;
    height: 2.5rem;
    margin-right: 1.5rem;
}

.cart {
    width: 8.5rem;
    height: 2.5rem;
    margin-right: 2rem;
}

.tel {
    width: 16.42219rem;
    height: 4.94594rem;
    flex-shrink: 0;
}

.header-ul {
    width: 100%;
    height: 4.375rem;
    background-color: #3EA34A;
    display: flex;
    justify-content: center;
    gap: 7.44rem;
    align-items: center;
}

.header-ul li a {
    color: #FFF;
    font-family: "Noto Sans TC";
    font-size: 1.5625rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.products-category {
    background-image: url(/img/Frame\ 2.png);
    background-size: cover;
    background-position: top center;
    width: 120rem;
    height: 26.625rem;
}

.products-category-container {
    margin: 0 20.56rem 0 17.75rem;
}

.products-category-title {
    color: #3FC04E;
    font-family: "Noto Sans TC";
    font-size: 2.8125rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.30938rem;
    padding: 5.31rem 34.06rem 4.09rem 35.44rem;
    white-space: nowrap;
}

.category-list {
    display: flex;
    justify-content: space-between;
}

.category-button {
    display: flex;
    align-items: center;
    padding: 2rem 2.12rem 1.75rem 5.56rem;
    background-color: #FFF;
    gap: 0;
}

.category-button p {
    color: #000;
    font-family: "Noto Sans TC";
    font-size: 2.25rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.2475rem;
    padding-right: 3.31rem;
}

.category-button img {
    width: 2.5625rem;
    height: 1.625rem;
    aspect-ratio: 41/26;
}


.product-wrapper_1 {
    margin: 10.25rem 14.878rem 0 14.81rem;
}

.type-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.type-title h3 {
    color: #3C3C3C;
    font-family: "Noto Sans TC";
    font-size: 2.25rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.2475rem;
    white-space: nowrap;
}

.type-title img {
    width: 75.625rem;
    height: 0.21875rem;
}

.product-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 4.75rem;
}

.product-area {
    width: 20rem;
    display: flex;
    flex-direction: column !important;
    text-decoration: none;
    color: inherit;
}

.product-area img {
    display: block;
    width: 100%;
}

.text-area {
    width: 20rem;
    height: 8.5625rem;
    font-family: "PingFang TC", "Microsoft JhengHei", "Noto Sans TC", sans-serif;
    background-color: #F7E8DC;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 0;
}

.product-name {
    color: #000;
    font-family: "Noto Sans TC";
    font-size: 1.3125rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    padding-bottom: 0.5rem;
}

.product-catchphrase {
    color: #000;
    font-family: "Noto Sans TC";
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    padding-bottom: 0.75rem;
}

.text-area img {
    width: 15.21894rem;
    height: 2.0025rem;
}

.product-wrapper_2 {
    margin: 13.88rem 15.94rem 9.56rem 16rem;
}

.product-container_2 {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 4.75rem;
}

.product-area.dummy {
    visibility: hidden;
    pointer-events: none;
}

.product-wrapper_3 {
    margin: 9.56rem 15.94rem 17.94rem 14.81rem;
}

.footer-gray {
    width: 100%;
    height: 5.3125rem;
    background-color: #D9D9D9;
    display: flex;
    justify-content: center;
    align-items: center;
}

.footer-gray p {
    color: #FFF;
    font-family: "Noto Sans TC";
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.12rem;
}

.footer-gray img {
    width: 3.1875rem;
    height: 3.1875rem;
    aspect-ratio: 1/1;
    margin-left: 2.5rem;
}

.footer-ul {
    width: 100%;
    height: 5.0625rem;
    background-color: #F6E7DB;
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 1.87rem 24.75rem 1.37rem 25.88rem;
}

.footer-ul li  a {
    color: #000;
    font-family: "Noto Sans TC";
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.12rem;
}

.about {
    color: #282828;
    font-family: "Noto Sans TC";
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.045rem;
    margin: 2.5rem 75.88rem 5.19rem 3.81rem; 
    white-space: nowrap;
}

/* sp-only */

.news-sp {
    width: 100%;
    height: 3.4375rem;
    background-color: #D85E96;
    display: flex;
    justify-content: center;
    align-items: center;
}

.news-sp p {
    display: flex;
    width: 17.625rem;
    height: 2.1875rem;
    flex-direction: column;
    justify-content: center;
    color: #FFF;
    font-family: "Noto Sans TC";
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.0875rem;
    align-items: center;
}

.brand-nav-sp {
    display: flex;
    height: 8.75rem;
    align-items: stretch;
}

.header-left-sp {
    display: flex;
    width: 38.875rem;
    height: 8.75rem;
    align-items: center;
    background-color: #F7E8DC;
}

.sakura-logo-sp {
    width: 14.5rem;
    height: 4.9375rem;
    flex-shrink: 0;
    aspect-ratio: 232/79;
    margin: 2.31rem 7.26rem 1.5rem 1.06rem;
}

.login-sp {
    width: 5.40144rem;
    height: 6.6875rem;
    margin-right: 2.12rem;
}

.cart-sp {
    width: 5.40144rem;
    height: 6.6875rem;
    margin-right: 3rem;
}

.header-right-sp {
    width: 9.25rem;
    height: 9.4375rem;
    aspect-ratio: 99/101;
}


.products-category-sp {
    width: 48rem;
    height: 18.75rem;
    background-image: url(../img/Frame\ 4.png);
    background-size: cover;
    background-position: top center;
}

.products-category-container-sp {
    margin: 0 13.5rem 0 12.5rem;
}

.products-category-title-sp {
    color: #000;
    font-family: "Noto Sans TC";
    font-size: 2.1875rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.24063rem;
    padding: 6rem 6.19rem 2.06rem 6.31rem;
    white-space: nowrap;
}

.category-button-sp {
    width: 22rem;
    height: 4.0625rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.13rem 1.69rem 1rem 4.38rem;
    border-radius: 0.5rem;
    border: 2px solid #3FC04E;
    background: #FFF;
    gap: 0;
}

.category-button-sp p {
    color: #3EA34A;
    font-family: "Noto Sans TC";
    font-size: 1.9375rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.21313rem;
    white-space: nowrap;
}

.category-button-sp img {
    width: 1.875rem;
    height: 1.9375rem;
    aspect-ratio: 30/31;
}

/* 産品一覧オーバーレイ */
.sp-only main {
    position: relative;
}

.products-category-ov {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
    width: 48rem;
    height: 18.75rem;
    background-image: url(../img/Frame\ 4.png);
    background-size: cover;
    background-position: top center;
}

.products-category-ov.is-open {
    display: block;
}

.products-category-container-ov {
    margin: 0 13.25rem 0 12.25rem;
}

.products-category-title-ov {
    color: #000;
    font-family: "Noto Sans TC";
    font-size: 2.1875rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.24063rem;
    padding: 5.94rem 6.44rem 1.81rem 6.56rem;
    white-space: nowrap;
}

.category-list-ov {
    width: 22.5rem;
    height: 22.3125rem;
    border-radius: 0.5rem;
    border: 4px solid #3FC04E;
    background: #FFF;
}

.category-button-ov {
    width: 22rem;
    height: 4.0625rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.13rem 1.69rem 1rem 4.38rem;
    gap: 0;
    border-bottom: 4px solid #3FC04E;
}

.category-button-ov p {
    color: #3EA34A;
    font-family: "Noto Sans TC";
    font-size: 1.9375rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.21313rem;
}

.arrow-list-ov {
    width: 21.9375rem;
    height: 5.8125rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.category-list-ov li {
    background: #FFF;
}

.category-list-ov li:nth-child(2) {
    background: #D7F3DA;
}

.arrow-list-ov p {
    color: #3F3D3C;
    font-family: "Noto Sans TC";
    font-size: 1.9375rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.21313rem;
    padding-right: 4.5rem;
}

.arrow-list-ov img {
    width: 1.9375rem;
    height: 1.25rem;
    aspect-ratio: 31/20;
}
/* 産品一覧オーバーレイ */


.product-wrapper-sp_1{
    margin: 7.44rem 2.69rem 0 2.62rem;
}

.type-title-sp_1 h3 {
    color: #000;
    font-family: "Noto Sans TC";
    font-size: 2.1875rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.24063rem;
    padding: 0 16.94rem 3.94rem 16.25rem;
    white-space: nowrap;
}

.product-container-sp {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding-bottom: 3.37rem;
}

.product-container-sp:last-child {
    padding-bottom: 0;
}

.product-wrapper-sp_2{
    margin: rem 2.69rem 0 2.62rem;
}

.type-title-sp h3 {
    color: #000;
    font-family: "Noto Sans TC";
    font-size: 2.1875rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.24063rem;
    padding: 0 16.94rem 3.94rem 16.25rem;
    white-space: nowrap;
}

.product-wrapper-sp_3 {
    margin: 9.87rem 2.69rem 0 2.69rem;
}

.type-title-sp_3 h3 {
    color: #000;
    font-family: "Noto Sans TC";
    font-size: 2.1875rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.24063rem;
}


.footer-top {
    margin: 4.25rem 1.31rem 2.56rem 1.5rem;
    padding: 0.88rem 1.25rem 0.88rem 0.88rem;
}

.footer-content__body {
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding-inline-start: 0px;
}

.footer-content-list {
    padding: 2.88rem 2.12rem 2.06rem 1.94rem;
    background-color: #F4F5CE;
}

.footer-content-list:first-child {
    border-right: 1px dotted #4D4D4D;
    border-bottom: 1px dotted #4D4D4D;
}

.footer-content-list:last-child {
    border-left: 1px dotted #4D4D4D;
    border-top: 1px dotted #4D4D4D;
}

.footer-content__icon {
    display: flex;
    align-items: center;
}

.footer-nav {
    display: flex;
    align-items: center;
    padding-right: 1.37rem;
}

.footer-nav img {
    width: 5.5625rem;
    height: 5.5625rem;
    aspect-ratio: 1/1;
}

.footer-nav-text {
    color: #4D4D4D;
    font-family: "Noto Sans TC";
    font-size: 1.9375rem;
    font-style: normal;
    font-weight: 500;
    line-height: 2.375rem; /* 122.581% */
    letter-spacing: 0.155rem;
    white-space: nowrap;
}

.footer-arrow-icon {
    width: 1.625rem;
    height: 2.8125rem;
    aspect-ratio: 26/45;
}

.legal-links {
    display: flex;
    align-items: center;
    border: 1px dotted #4D4D4D;
    margin: 0 1.31rem 0 1.5rem;
}

.legal-links a {
    color: #4D4D4D;
    font-family: "Noto Sans TC";
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 500;
    line-height: 2.375rem; /* 158.333% */
    letter-spacing: 0.12rem;
    white-space: nowrap;
}

.legal-links a:first-child {
    padding: 1.06rem 4.88rem 1rem 4.69rem;
    border-right: 1px dotted #4D4D4D;
}

.legal-links a:last-child {
    padding: 1.06rem 4.06rem 1rem 4.19rem;
}

.company-info {
    margin-top: 3.06rem;
}

.company-info p {
    color: #000;
    font-family: "Noto Sans TC";
    font-size: 0.875rem;
    font-style: normal;
    font-weight: 500;
    line-height: 0; /* 0% */
    letter-spacing: 0.07rem;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.company-info p:first-child {
    padding-bottom: 1.25rem;
}

.back-to-top {
    width: 41.375rem;
    height: 7.875rem;
    margin: 3.81rem 3.19rem 8.69rem 3.44rem;
}

.leaf-sp-1 {
    width: 12.625rem;
    height: 11.625rem;
    aspect-ratio: 101/93;
    position: absolute;
    top: 433.31rem;
    left: 35.38rem;
}