body {
    font-size: 16px;
    line-height: 1.75;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 400;
    margin: 0;
    padding: 0;
    color: #333333;
}

* {
    box-sizing: border-box;
}

a {
    color: inherit;
    text-decoration: none;
}

a:visited {
    color: inherit !important;
}

a>img:hover {
    opacity: 0.7;
}

a>img {
    transition: 0.5s;
}

ul {
    padding: 0;
}

li {
    list-style: none;
}

h1 {
    margin: 0;
}

img {
    display: block;
}

h1, h2, h3, h4, h5 {
    font-weight: 500;
    line-height: 1.75;
}

/* =================================================================
		Clearfix
================================================================= */
#assist-area:after,
#assist-nav:after,
#gnav:after,
#gnav-second:after,
.cal_main:after,
#index-pickup:after,
#popular-item:after,
#fathersday ul:after,
.recommend ul:after,
.footer-about:after,
#container:after,
#fguide:after,
#f-nav:after,
#topic-path:after,
.FS2_TweetButton_area:after,
.set-content-inner:after,
.FS2_upper_comment .make:after,
.FS2_upper_comment .make .text ul:after,
.list-article:after,
.entry-article:after,
.recommend-image:after,
#other-shop ul:after,
.link-container:after,
#ate-content:after,
#sake-content:after,
#atesake-list:after,
.about-lead01:after,
.about-lead02:after,
#about-legend:after,
#about-nearview:after,
#club348-lead:after,
#koubo-list:after,
#staff-list:after,
#award-lead:after,
#award-container .image-content:after,
#news-container:after,
#fguide-center-right:after,
#fguide-about:after,
.hanakoubo-list li:after,
.header-banner2:after,
#review-step .content:after,
#faq-nav ul:after,
.present-list li:after,
#campaign-2013newyear #special ul li:after,
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

#assist-area,
#assist-nav,
#gnav,
#gnav-second,
.cal_main,
#index-pickup,
#popular-item,
#fathersday ul,
.recommend ul,
.footer-about,
#container,
#fguide,
#f-nav,
#topic-path,
.FS2_TweetButton_area,
.set-content-inner,
.FS2_upper_comment .make,
.FS2_upper_comment .make .text ul,
.list-article,
.entry-article,
.recommend-image,
#other-shop ul,
.link-container,
#ate-content,
#sake-content,
#atesake-list,
.about-lead01,
.about-lead02,
#about-legend,
#about-nearview,
#club348-lead,
#koubo-list,
#staff-list,
#award-lead,
#award-container .image-content,
#news-container,
#fguide-center-right,
#fguide-about,
.hanakoubo-list li,
.header-banner2,
#review-step .content,
#faq-nav ul,
.present-list li,
#campaign-2013newyear #special ul li,
.clearfix {
    display: inline-block;
}


@media screen and (max-width: 768px) {

    body {
        font-size: 14px;
    }

}


.headinfo {
    background: #2B5E84;
    color: #fff;
    text-align: center;
    padding: .5em;
}

.shop_header_block {
    font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}

.shop_header_block>.wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: min-content;
    width: 100%;
}

.shop_header_block>.wrap>.gnav {
    grid-column: span 2 / span 2;
    border-top: solid 1px #4D4D4D80;
    padding: 1.2em 0;
}

.shop_header_block>.wrap>.gnav>ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 95%;
    margin: auto;
    max-width: 750px;
    font-size: calc(20 / 16 * 1em);
}

.shop_header_block>.wrap>.gnav>ul>li.sub_menu>.menu {
    position: absolute;
    z-index: 9999;
    visibility: hidden;
    height: 0;
}

.shop_header_block>.wrap>.gnav>ul>li.sub_menu>.menu>ul {
    padding: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 3em;
    margin: 0 2em;
}

.shop_header_block>.wrap>.gnav>ul>li.sub_menu>.menu>ul>li {}

button.sub_menu_toggle_btn {
    background: none;
    border: none;
}

.shop_header_block>.wrap>.icon_nav {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: calc(50/1200*100%);
    padding-right: 5%;
}

.shop_header_block>.wrap>.icon_nav>:where(a, button) {
    display: flex;
    flex-direction: column;
    align-items: center;
    /*-font-size: calc(13.5 / 16 * 1em);-*/
}

.shop_header_block>.wrap>.logo {
    padding-left: 5%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin: .25em 0;
}



.fs-p-searchForm>form {
    background: #2b5e848c;
    aspect-ratio: 3/1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 1em;
    width: calc(100% - 2em);
    margin: auto;
    margin-left: 0;
}

input.fs-p-searchForm__input.fs-p-inputGroup__input {
    width: 12em;
}

button.search_toggle_btn {
    background: none;
    padding: 0;
    border: none;
}

.fs-p-searchForm {
    position: absolute;
    width: 95%;
    max-width: 350px;
    right: 0;
    transform: translate(0, -5em);
}

.fs-p-searchForm::before {
    content: "";
    clip-path: polygon(0 100%, 70% 0, 70% 100%);
    width: 1em;
    height: .8em;
    background: #2b5e848c;
    position: absolute;
    top: -.8em;
    right: 5em;
}

.fs-p-searchForm {
    visibility: hidden;
    height: 0;
}

.fs-p-searchForm.open {
    visibility: visible;
    height: auto;
}

.shop_header_block>.wrap>.gnav>ul>li.sub_menu>.menu>h3 {
    margin: 0;
}

@media screen and (min-width: 769px) {

    .shop_header_block>.wrap>.gnav>ul>li.sub_menu:hover>.menu {
        visibility: visible;
        height: auto;
        left: 0;
        right: 0;
        width: 100%;
        background: #ffffffd6;
        padding-bottom: 2em;
    }

    .shop_header_block>.wrap>.gnav>ul>li.sub_menu:hover>.menu a:hover {
        text-decoration: underline;
    }

    .shop_header_block>.wrap>.gnav>ul>li.sub_menu:hover>.menu>h3 {
        margin: 1em;
        background: #2b5e84ab;
        color: #fff;
        padding: 0.5em;
    }

    .shop_header_block>.wrap>.gnav>ul>li.sub_menu>a>button.sub_menu_toggle_btn {
        display: none;
    }

}

@media screen and (max-width: 768px) {

    .shop_header_block>.wrap>.gnav>ul>li.sub_menu.open>.menu {
        visibility: visible;
        height: auto;
        left: 0;
        right: 0;
        width: 100%;
        background: #ffffffd6;
        padding-bottom: 2em;
    }

    .shop_header_block>.wrap>.gnav>ul>li.sub_menu.open>.menu a:hover {
        text-decoration: underline;
    }

    .shop_header_block>.wrap>.gnav>ul>li.sub_menu.open>.menu>h3 {
        margin: 1em 0;
        background: #2b5e84ab;
        color: #fff;
        padding: 0.5em;
    }

    .shop_header_block>.wrap>.gnav>ul>li.sub_menu.open>.menu>ul {
        gap: 0.5em 1em;
    }

    .headinfo {
        font-size: calc(12 / 14 * 1em);
    }

    .shop_header_block>.wrap {
        display: flex;
        flex-direction: column;
    }

    .shop_header_block>.wrap>.logo {
        padding: 1em 0;
        margin: auto;
    }

    .shop_header_block>.wrap>.logo img {
        max-height: 2em;
        object-fit: cover;
    }

    .shop_header_block>.wrap>.icon_nav {
        padding: 0;
        justify-content: center;
        gap: 1px;
        align-items: unset;
    }

    .shop_header_block>.wrap>.icon_nav>:where(a, button) {
        width: calc(100%/3);
        color: #fff;
        background: #333333;
    }

    .shop_header_block>.wrap>.icon_nav>:where(a, button)>span {
        transform: translate(0, -.5em);
        color: #fff;
    }

    .shop_header_block>.wrap>.gnav {
        width: 80%;
        position: fixed;
        background: #fffffff0;
        height: 100vh;
        z-index: 999;
        top: 0;
        right: 0;
        padding: 3em 0;
        transition: .5s;
    }

    .shop_header_block>.wrap>.gnav {
        transform: translate(100%, 0);
    }

    .shop_header_block>.wrap>.gnav.open {
        transform: translate(0, 0);
    }

    .shop_header_block>.wrap>.gnav>ul {
        flex-direction: column;
        width: 100%;
        gap: 1em;
        padding: 0;
    }

    .shop_header_block>.wrap>.gnav>ul>li {
        width: 100%;
        text-align: center;
    }

    .shop_header_block>.wrap>.gnav>ul>li.sub_menu>.menu {
        position: relative;
        background: #3333331c;
    }

    .shop_header_block>.wrap>.gnav>ul>li {
        width: 100%;
        text-align: center;
    }

    .fs-p-searchForm {
        transform: translate(0, .5em);
        z-index: 999;
        width: 95%;
        max-width: none;
        left: 0;
        right: 0;
        margin: auto;
    }

    .fs-p-searchForm>form {
        background: #2b5e84;
        aspect-ratio: auto;
        padding: 1em 0;
        width: 100%;
        margin: auto;
    }

    .fs-p-searchForm::before {
        background: #2b5e84;
    }

    input.fs-p-searchForm__input.fs-p-inputGroup__input {
        width: calc(100% - 5em);
    }

    .fs-p-searchForm>form>span {
        display: flex;
        width: calc(100% - 2em);
    }

    .fs-p-searchForm>form>span>button {
        width: 5em;
    }



    /* ハンバーガーアイコンのベース */
    #header-nav-drawer {
        width: 3em;
        height: 3em;
        position: absolute;
        cursor: pointer;
        z-index: 1001;
        left: -4em;
    }

    #header-nav-drawer span,
    #header-nav-drawer span::before,
    #header-nav-drawer span::after {
        content: '';
        position: absolute;
        width: 100%;
        height: 2px;
        background: #333;
        transition: 0.3s ease;
        left: 0;
    }

    #header-nav-drawer span {
        top: 50%;
        transform: translateY(-50%);
    }

    #header-nav-drawer span::before {
        top: -10px;
    }

    #header-nav-drawer span::after {
        bottom: -10px;
    }

    /* アイコン開いたときの変形 */
    #header-nav-drawer.open span {
        background: transparent;
    }

    #header-nav-drawer.open span::before {
        transform: rotate(45deg);
        top: 0;
    }

    #header-nav-drawer.open span::after {
        transform: rotate(-45deg);
        bottom: 0;
    }

}






.fv-slider-wrapper {
    width: 100%;
    overflow: hidden;
    box-sizing: border-box;
}

/* slick本体 */
.fv-slick {
    overflow: visible;
}

/* スライド画像 */
.fv-slide>a>img {
    width: 100%;
    display: block;
}

/* PC：中央1枚＋左右見切れ */
@media (min-width: 769px) {
    .fv-slide {
        padding: 0 1em;
        /* spaceBetween代替 */
        box-sizing: border-box;
    }
}

/* SP：1枚ぴったり */
@media (max-width: 768px) {
    .fv-slider-wrapper {
        margin-top: 1em;
    }

    .fv-slide {
        padding: 0;
    }
}

/* controls 共通 */
.fv-slider-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 2em;
    gap: 2em;
}

/* dots */
.fv-slider-controls .slick-dots {
    position: relative;
    width: fit-content;
}

.fv-slider-controls .slick-dots li {
    margin: 0;
}

.fv-slider-controls .slick-dots button {
    font-size: 0;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: #ccc;
    border: none;
}

.fv-slider-controls .slick-dots .slick-active button {
    background: #2B5E84;
}


/* 共通SVG（左向き） */
:root {
    --arrow-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8.538' height='19.553' viewBox='0 0 8.538 19.553'%3E%3Cpath d='M878.17,1033.45l-7-9.326,7-9.326' transform='translate(-870.232 -1014.347)' fill='none' stroke='gray' stroke-miterlimit='10' stroke-width='1.5'/%3E%3C/svg%3E");
}

.fv-slider-controls .slick-prev,
.fv-slider-controls .slick-next {
    position: relative;
    width: 24px;
    height: 24px;
    background: none;
    border: none;
    padding: 0;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    transform: translate(0, 0);
}

/* 疑似要素にSVGを表示 */
.fv-slider-controls .slick-prev::before,
.fv-slider-controls .slick-next::before {
    content: "";
    display: block;
    width: 8.538px;
    height: 19.553px;
    background-image: var(--arrow-svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 1;
}

/* 進む矢印だけ反転 */
.fv-slider-controls .slick-next::before {
    transform: translate(-50%, -50%) rotate(180deg);
}


@media screen and (max-width: 768px) {

    .fv-slider-controls {
        margin-top: 0;
    }

}







.shop_footer {
    background: #333333;
    color: #fff;
    padding: 100px 0;
}

.shop_footer>.inner {
    max-width: 1200px;
    margin: auto;
    width: 95%;
}

.shop_footer>.inner>.footer_top {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: min-content;
}

.shop_footer>.inner>.footer_top .sns {
    margin-top: 1em;
}

.shop_footer>.inner>.footer_top .sns>ul {
    display: flex;
    gap: 1em;
}

.shop_footer>.inner>.footer_top .sns>ul>li {}

.shop_footer>.inner>.footer_top .sns>ul>li>button#openQr {
    background: transparent;
    filter: none;
    border: none;
    padding: 0;
}

.shop_footer>.inner>.footer_top .sns>ul img {
    width: 2em;
}

.shop_footer>.inner>.footer_top>.f_nav {
    grid-column: span 2 / span 2;
    display: flex;
    gap: 2em;
}

.shop_footer>.inner>.footer_top>.f_nav>ul>.link:nth-child(1) {}

.shop_footer>.inner>.footer_top>.f_nav>ul>.link:nth-child(2) {}

.shop_footer>.inner>.footer_top>.f_nav>ul>.link:nth-child(3) {}

.shop_footer>.inner>.footer_top>.f_nav>ul {
    width: calc((100% - 2em)/2);
    display: flex;
    flex-direction: column;
    gap: 3em;
}

.shop_footer>.inner>.footer_top>.f_nav>ul>.link>h3 {
    border-bottom: solid 1px #fff;
    padding: 1em 0;
    margin-top: 0;
}

.shop_footer>.inner>.footer_top>.f_nav>ul>.link>.txt {
    font-size: calc(17/16*1em);
}

.shop_footer>.inner>.footer_top>.f_nav>ul>.link a {
    color: #fff;
}

.shop_footer>.inner>.footer_top>.f_nav>ul>.link>form {}

.shop_footer>.inner>.footer_top>.f_nav>ul>.link>form .input {
    display: flex;
    gap: 1em;
}

.shop_footer>.inner>.footer_top>.f_nav>ul>.link>form>ul {
    display: flex;
    flex-direction: column;
    gap: 1em;
}

.shop_footer>.inner>.footer_top>.f_nav>.link input[type="submit"] {
    background: #2B5E84;
    color: #fff;
    border: none;
    padding: .3em 1.5em;
    border-radius: 5px;
}

.shop_footer>.inner>.footer_top>.f_nav>ul>.link>ul {
    display: flex;
    flex-direction: column;
    gap: .5em;
}

.shop_footer>.inner>.footer_2 {
    display: flex;
    justify-content: space-between;
    margin-top: 100px;
    margin-bottom: 50px;
}

.shop_footer>.inner>.footer_2>.box {
    width: 48%;
    background: #fff;
    color: #333;
    padding: 45px;
    border-radius: 0.8em;
}

.shop_footer>.inner>.footer_2>.box a {
    color: #333;
}

.shop_footer>.inner>.footer_2>.box:first-child {
    display: flex;
}

.shop_footer>.inner>.footer_2>.box:first-child>.tel {
    width: 60%;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.shop_footer>.inner>.footer_2>.box:first-child>.note {
    width: 43%;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: -0.02em;
}

.shop_footer>.inner>.footer_2>.box:first-child>.tel>* {
    font-size: 32px;
    line-height: 1;
}

.shop_footer>.inner>.footer_2>.box:first-child>.tel>*>span {
    font-size: 28px;
}

.shop_footer>.inner>.footer_2>.box:first-child>.note>span {
    font-size: 0.9em;
}

.shop_footer>.inner>.footer_2>.box:last-child {
    font-size: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.copy {
    text-align: center;
    font-size: 10px;
    padding: .5em;
}

@media screen and (max-width: 768px) {

    footer {
        font-size: 14px;
    }

    .shop_footer {
        padding: 50px 0;
    }

    .shop_footer>.inner>.footer_top>.f_nav>ul {
        width: 100%;
    }

    .shop_footer>.inner>.footer_top {
        display: flex;
        flex-direction: column-reverse;
        gap: 2em;
    }

    .shop_footer>.inner>.footer_top>.info {
        display: flex;
        align-items: center;
        gap: 1em;
        flex-wrap: wrap;
    }

    .shop_footer>.inner>.footer_top>.info>.sns {
        width: 100%;
    }

    .shop_footer>.inner>.footer_top>.info>a {
        width: 25%;
    }

    .shop_footer>.inner>.footer_top>.f_nav {
        display: flex;
        flex-direction: column;
    }

    .shop_footer>.inner>.footer_2 {
        flex-direction: column;
        gap: 1em;
        margin-bottom: 3em;
        margin-top: 50px;
    }

    .shop_footer>.inner>.footer_2>.box {
        width: 100%;
        padding: 2em;
    }

    .shop_footer>.inner>.footer_2>.box:first-child {
        flex-direction: column;
        gap: 1em;
    }

    .shop_footer>.inner>.footer_2>.box:first-child>.tel {
        width: 100%;
        gap: 1em;
    }

    .shop_footer>.inner>.footer_2>.box:first-child>.note {
        width: 100%;
        font-size: 16px;
    }

    .shop_footer>.inner>.footer_2>.box:first-child>.tel>* {
        font-size: 28px;
    }

    .shop_footer>.inner>.footer_2>.box:last-child {
        font-size: 24px;
    }
}



body#fs_Top h2 {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: calc(38/16*1em);
    margin-bottom: 1em;
}

#news_slide .fs-pt-column, section#top_column .fs-pt-column {
    margin-top: 0;
}

body#fs_Top h2>span.en {
    color: #2B5E84;
}

body#fs_Top h2>span.en {
    font-size: calc(22/36*1em);
}

body#fs_Top h2>span.jp {
    font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}

.address>h2 {
    display: block !important;
    margin: .5em 0 0 !important;
    font-size: calc(22 / 16 * 1em) !important;
}



section#top_banner {
    max-width: 1200px;
    width: 95%;
    margin: 10em auto 0;
}

section#top_banner>.wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 2em;
    gap: 2em;
}

section#top_banner>.wrap>a {
    width: calc((1200px - 2em*2)/3);
}

section#top_banner>.wrap>a>img {
    width: 100%;
    height: 100%;
}

section#top_banner>a>img {
    width: 100%;
}

.fs-l-page>section:not(:last-of-type) {
    margin-bottom: 150px !important;
}

section#news_slide {}

#news_slide>.fs-pt-column {
    padding: 0 0;
    box-sizing: border-box;
}

#news_slide>.fs-pt-column .fs-pt-column__item {
    box-sizing: border-box;
    padding: 0 60px;
    position: relative;
}

span.fs-pt-column__image {
    background: #dfe1e3;
    aspect-ratio: 5 / 2;
    overflow: hidden;
    display: block;
}

#news_slide>.fs-pt-column .fs-pt-column__item img {
    width: 100%;
    height: -webkit-fill-available;
    object-fit: contain;
}

#news_slide>.fs-pt-column .fs-pt-column__item .note {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: calc(100% - 60px*2);
    margin: auto;
    height: 100%;
    background: #ffffff80;
    padding: 2em;
    transition: .5s;
}

#news_slide>.fs-pt-column .fs-pt-column__item .note {
    opacity: 0;
    visibility: hidden;
}

#news_slide>.fs-pt-column .fs-pt-column__item .note.show {
    opacity: 1;
    visibility: visible;
    overflow-y: scroll;
}

#news_slide>.fs-pt-column .fs-pt-column__item:has(.show) span.fs-pt-column__image img {
    opacity: 0.2;
}

#news_slide>.fs-pt-column .fs-pt-column__item .note>span.fs-pt-column__heading {
    font-size: 1.2em;
    font-weight: 700;
}

.slick-arrow {
    position: absolute;
    bottom: 50%;
    transform: translate(0, 50%);
    background: none;
    border: none;
    font-size: 4em;
    z-index: 1;
    font-family: monospace;
    color: #0000004d;
}



button.slick-prev {
    left: 1em;
}

button.slick-next {
    right: 1em;
}

ul.slick-dots {
    display: flex;
    justify-content: center;
    gap: 1.3em;
}

ul.slick-dots>li {
    background: #B9B9B9;
    width: 11px;
    aspect-ratio: 1;
    border-radius: 50%;
}

ul.slick-dots>li>button {
    display: none;
}

ul.slick-dots>li.slick-active {
    background: #2B5E84;
}




:where(#top_category, #top_celebration, #banner, section#top_column) {
    max-width: 1200px;
    width: 95%;
    margin: auto;
}

:where(#top_category, #top_celebration)>ul {
    display: flex;
    flex-wrap: wrap;
    text-align: center;
}

:where(#top_category, #top_celebration)>ul>li {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1em;
    font-size: calc(26/16*1em);
}

section#top_category>ul {
    gap: calc(100/1200*100%);
}

section#top_celebration>ul {
    gap: calc(60/1200*100%);
}

section#top_category>ul>li {
    width: calc((100% - (100/1200*100%)*2)/3);
}

section#top_celebration>ul>li {
    width: calc((100% - (60/1200*100%)*3)/4);
}




section#banner {
    display: flex;
    gap: 1%;
    justify-content: space-between;
}




section#top_column {
    max-width: 1200px;
    width: 95%;
    margin: auto;
}

section#top_column>.fs-pt-column>.fs-pt-column__item img {
    display: block;
    width: 100%;
}

:where(section#top_column, section#top_products)>a.btn {
    margin: 2em auto 0;
}

ul.top_column_list {
    display: flex;
    gap: calc(50/1200*100%);
    align-items: stretch;
}

ul.top_column_list>li {
    width: calc((100% - (50/1200*100%)*2)/3);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    background: #F2F2F2;
    position: relative;
}

ul.top_column_list>li>.note {
    background: #F2F2F2;
    font-size: calc(20/16*1em);
    padding: 1em;
}

ul.top_column_list>li>a {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

ul.top_column_list>li>.note>.date {
    color: #2B5E84;
    font-size: 0.9em;
}

section#top_info {
    display: flex;
    background: #F2F2F2;
    position: relative;
    padding: calc(120/1920*100%) 0;
}

section#top_info>.note {
    width: 50%;
    max-width: 1220px;
    min-width: 500px;
    background: #F2F2F2;
    padding-left: calc(120/1920*100%);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

section#top_column>img {
    width: 40%;
}

section#top_info>img {
    width: 40%;
    object-fit: contain;
}

section#top_info>.note>h2 {
    color: #2B5E84;
    font-size: 3em;
    line-height: 1;
    font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
    display: block;
    margin: 0 0 .8em;
}

section#top_info>.note>.txt {
    font-size: 1.2em;
    line-height: 2.5;
    margin-bottom: 2em;
}


body:not(#fs_ProductCategory) .btn {
    background: #2B5E84;
    color: #fff !important;
    font-size: calc(28/16*1em);
    display: block;
    width: fit-content;
    padding: .8em 3em;
    border-radius: 3em;
    max-width: 95%;
    word-break: keep-all;
}


:where(.season_osusume, .top_products) {}

:where(.season_osusume, .top_products) .slick-slide {
    border: solid 2px #E0DED7;
    width: calc((1200px - calc(50 / 1200 * 100%)*4)/5);
    height: auto;
    padding: 1em;
    margin-bottom: 3em;
}

:where(.season_osusume, .top_products) .slick-slide:not(:nth-child(5n)) {
    margin-right: calc(50 / 1200 * 100%);
}

:where(.season_osusume, .top_products) .slick-track {
    max-width: 1200px;
    margin: auto;
    width: 100% !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-content: stretch;
}

:where(.season_osusume, .top_products) .slick-slide img {
    display: block;
    margin: auto;
    aspect-ratio: 1;
    object-fit: contain;
    min-height: 200px;
}

:where(.season_osusume, .top_products) .slick-slide .fs-c-button--addToWishList--icon {
    display: none;
}

:where(.season_osusume, .top_products) h2 {
    font-size: calc(20/16*1em) !important;
    margin-bottom: 1em !important;
}

:where(.season_osusume, .top_products) span.fs-c-productPrice__main__label {
    display: none;
}

:where(.season_osusume, .top_products) .fs-c-price {
    justify-content: flex-start;
    font-size: calc(18/16*1em);
}

:where(.season_osusume, .top_products) .fs-c-productPrice {
    display: flex;
    align-items: baseline;
}

:where(.season_osusume, .top_products) span.fs-c-productPrice__addon::before {
    content: "(";
}

:where(.season_osusume, .top_products) span.fs-c-productPrice__addon::after {
    content: ")";
}

:where(.season_osusume, .top_products) span.fs-c-productPrice__main {
    font-weight: 700;
}

:where(.season_osusume, .top_products) span.fs-c-productPrice__addon {
    font-size: 0.8em;
}

:where(.season_osusume, .top_products) .slick-arrow {
    display: none !important;
}

section:has(:where(.season_osusume, .top_products)) {
    width: 95%;
    margin: auto;
}

@media screen and (max-width: 768px) {

    .fv-slider-wrapper {
        width: 95%;
        margin: 1em auto;
    }

    section#top_banner {
        margin-top: 3em;
    }

    body#fs_Top h2 {
        margin-bottom: 1em;
    }

    #news_slide>.fs-pt-column .fs-pt-column__item {
        padding: 0;
    }

    button.slick-next {
        right: 0;
    }

    button.slick-prev {
        left: 0;
    }

    #news_slide>.fs-pt-column .fs-pt-column__item .note {
        margin: 0;
        width: 100%;
    }

    #news_slide>.fs-pt-column .fs-pt-column__item .note.show {
        position: relative;
    }

    #news_slide>.fs-pt-column .fs-pt-column__item .note.show::after {
        content: "閉じる×";
        margin: auto;
        display: block;
        text-align: center;
        margin-top: 2em;
    }

    .fs-l-page>section:not(:last-of-type) {
        margin-bottom: 100px !important;
    }

    :where(.season_osusume, .top_products) .slick-slide {
        width: calc((100% - 1em)/2);
        margin-bottom: 1em;
    }

    :where(.season_osusume, .top_products) .slick-slide:not(:nth-child(5n)) {
        margin-right: auto;
    }

    :where(.season_osusume, .top_products) .slick-slide:not(:nth-child(odd)) {
        margin-left: 1em;
    }

    :where(section#top_category, section#top_celebration)>ul {
        gap: 2em calc(100/1200*100%) !important;
    }

    :where(section#top_category, section#top_celebration)>ul>li {
        width: calc((100% - (100/1200*100%))/2) !important;
    }

    section#top_column>.fs-pt-column {
        gap: 2em 0;
        flex-direction: column;
    }

    section#top_column>.fs-pt-column>.fs-pt-column__item {
        width: 100%;
    }

    section#top_info {
        display: block;
        padding: 5em 0;
    }

    section#top_info>.note {
        min-width: unset;
        max-width: none;
        width: 95%;
        padding: 0;
        margin: auto;
        position: relative;
        background: transparent;
        z-index: 1;
    }

    section#top_info>img {
        width: 100%;
        position: absolute;
        z-index: 0;
        filter: blur(3px) opacity(0.2);
        bottom: 0;
    }

    section#top_info>.note>h2 {}

    body:not(#fs_ProductCategory) .btn {
        font-size: 16px;
    }

    ul.top_column_list {
        flex-direction: column;
        gap: 1em 0;
    }

    ul.top_column_list>li {
        width: 100%;
    }

}

section.category_header>.fv, section#product_main>.product_description>.txt>.comment>.fv, section#product_main>.product_description>.txt>.comment>.fv, section#product_main>.product_description>.txt>.comment>.fv {
    max-width: 1200px;
    margin: auto;
    width: 95%;
}

section.category_header>.fv, section#product_main>.product_description>.txt>.comment>.fv {
    font-size: calc(46/16*1em);
    font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}

section.category_header, section#product_main>.product_description>.txt>.comment {}

section.category_header>.container, section#product_main>.product_description>.txt>.comment>.container {
    background: #F2F2F2;
    padding: 30px calc((100% - 1200px)/2) calc(200/1200*100%);
}

section.category_header>.fv>img, section#product_main>.product_description>.txt>.comment>.fv>img {
    margin-bottom: 2em;
}

section.category_header>.container>h2, section#product_main>.product_description>.txt>.comment>.container>h2 {
    font-size: calc(38/16*1em);
    font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}

section.category_header>.container>.label, section#product_main>.product_description>.txt>.comment>.container>.label {
    display: flex;
    gap: 2em;
}

section.category_header>.container>.label>img, section#product_main>.product_description>.txt>.comment>.container>.label>img {
    width: calc((1200px - 2em*3)/4);
}

section.category_header>.container>.note, section#product_main>.product_description>.txt>.comment>.container>.note {
    background: #fff;
    padding: calc(80/1200*100%);
    margin-top: calc(80/1200*100%);
}

section.category_header>.container>.note>h3, section#product_main>.product_description>.txt>.comment>.container>.note>h3 {
    font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
    color: #2B5E84;
    font-size: calc(38/16*1em);
    font-weight: 200;
    padding-left: 1em;
    position: relative;
    margin-top: 0;
}

section.category_header>.container>.note>h3::before, section#product_main>.product_description>.txt>.comment>.container>.note>h3::before {
    content: "";
    width: .3em;
    height: 100%;
    background: #2B5E84;
    position: absolute;
    left: 0;
}

section.category_header>.container>.note>.box, section#product_main>.product_description>.txt>.comment>.container>.note>.box {
    font-size: calc(21/16*1em);
}

section.category_header>.container>.note>.box:first-of-type, section#product_main>.product_description>.txt>.comment>.container>.note>.box:first-of-type {
    display: flex;
    gap: 5em;
}

section.category_header>.container>.note>.box:first-of-type>.txt, section#product_main>.product_description>.txt>.comment>.container>.note>.box:first-of-type>.txt {
    max-width: 900px;
}

section.category_header>.container>.note>.box:first-of-type>.txt>span, section#product_main>.product_description>.txt>.comment>.container>.note>.box:first-of-type>.txt>span {
    margin-bottom: 3em;
    display: block;
}

section.category_header>.container>.note>.box>ul, section#product_main>.product_description>.txt>.comment>.container>.note>.box>ul {
    display: flex;
    flex-wrap: wrap;
    gap: 11.11%;
    font-size: calc(21 / 16 * 1em);
}

section.category_header>.container>.note>.box>ul>li, section#product_main>.product_description>.txt>.comment>.container>.note>.box>ul>li {
    width: calc((100% - 11.11%)/2);
}

section.category_header>.container>.note>.box:nth-of-type(2), section#product_main>.product_description>.txt>.comment>.container>.note>.box:nth-of-type(2) {
    width: 90%;
    margin: auto;
}

section.category_header>.container>.note>.box>ul>li>.note, section#product_main>.product_description>.txt>.comment>.container>.note>.box>ul>li>.note {
    margin-top: 1em;
    margin-bottom: 5em;
}


@media screen and (max-width: 768px) {

    section.category_header>.fv, section#product_main>.product_description>.txt>.comment>.fv {
        font-size: calc(16/14*1em);
    }

    section.category_header>.container, section#product_main>.product_description>.txt>.comment>.container {
        padding-left: 2.5%;
        padding-right: 2.5%;
    }

    section.category_header>.container>h2, section#product_main>.product_description>.txt>.comment>.container>h2 {
        font-size: calc(20 / 14 * 1em);
    }

    section.category_header>.container>.note>.box, section#product_main>.product_description>.txt>.comment>.container>.note>.box {
        flex-direction: column;
        font-size: calc(14 / 14 * 1em);
    }

    section.category_header>.container>.note>.box:first-of-type, section#product_main>.product_description>.txt>.comment>.container>.note>.box:first-of-type {
        flex-direction: column;
    }

    section.category_header>.container>.note>.box:first-of-type>img, section#product_main>.product_description>.txt>.comment>.container>.note>.box:first-of-type>img {
        position: absolute;
        filter: blur(3px) opacity(0.3);
        z-index: 0;
        width: 30%;
        right: 2em;
    }

    section.category_header>.container>.note>h3:nth-of-type(2), section#product_main>.product_description>.txt>.comment>.container>.note>h3:nth-of-type(2) {
        margin-top: 2em;
    }

    section.category_header>.container>.note>.box>ul, section#product_main>.product_description>.txt>.comment>.container>.note>.box>ul {
        flex-direction: column;
        gap: 3em 0;
        font-size: 1em;
    }

    section.category_header>.container>.note>.box>ul>li, section#product_main>.product_description>.txt>.comment>.container>.note>.box>ul>li {
        width: 100%;
    }

    section.category_header>.container>.note>.box:nth-of-type(2), section#product_main>.product_description>.txt>.comment>.container>.note>.box:nth-of-type(2) {
        width: 100%;
    }

    section.category_header>.container>.note>.box>ul>li>.note, section#product_main>.product_description>.txt>.comment>.container>.note>.box>ul>li>.note {
        margin-bottom: 0em;
    }

}




.fs-c-productList__list, .fs-c-productList {
    max-width: 1200px;
    margin: auto;
    width: 95%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 1%;
}

article.fs-c-productList__list__item.fs-c-productListItem {
    border: solid 2px #E0DED7;
    width: calc((100% - 1%*3) / 4);
    font-size: calc(20 / 16 * 1em);
    padding: 2em 1.5em;
    margin-bottom: 2%;
}

.fs-c-productListItem__imageContainer img {
    height: 12em;
    object-fit: contain;
    display: block;
    margin: auto;
}

.fs-c-productListItem__viewMoreImageButton.fs-c-buttonContainer {
    display: none;
}

h2.fs-c-productListItem__productName.fs-c-productName {
    font-size: 1em;
}

.fs-c-productPrice.fs-c-productPrice--selling {
    display: flex;
    align-items: flex-end;
}

span.fs-c-productPrice__main__label {
    display: none;
}

span.fs-c-productPrice__main__price.fs-c-price {
    font-weight: 700;
}

span.fs-c-productPrice__addon {
    font-size: 0.9em;
}

span.fs-c-productPrice__addon::before {
    content: "(";
}

span.fs-c-productPrice__addon::after {
    content: ")";
}

.fs-c-productListItem__control.fs-c-buttonContainer {
    display: none;
}

.fs-c-productListItem__productDescription {
    display: none !important;
}

.fs-c-sortItems {
    display: flex;
    align-items: baseline;
    gap: 1em;
}

ul.fs-c-sortItems__list {
    margin: 0;
    display: flex;
    gap: 1.5em;
}

span.fs-c-sortItems__label {
    font-weight: 700;
}

.fs-c-productList__controller {
    display: flex;
    justify-content: space-between;
    max-width: 1200px;
    width: 95%;
    margin: 3em auto 1em;
}

.fs-pt-column {
    max-width: 1200px;
    width: 95%;
    margin: calc(150/1200*100%) auto;
}

h2.title {
    max-width: 1200px;
    width: 95%;
    margin: auto;
    display: flex;
    flex-direction: column;
    font-size: calc(46/16*1em);
}

h2.title>span.en {
    font-size: 0.6em;
    color: #2B5E84;
    letter-spacing: .1em;
}

h2.title>span.ja {
    font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}

@media screen and (max-width: 768px) {

    h2.title {
        font-size: calc(18/14*1em);
    }

}

@media screen and (max-width: 768px) {

    .fs-c-productList__controller {
        flex-direction: column;
        gap: 1em;
    }

    article.fs-c-productList__list__item.fs-c-productListItem {
        width: calc((100% - .5em)/2);
        padding: 1em;
        font-size: calc(14/14*1em);
    }

    .fs-c-productList__list {
        gap: .5em;
        font-size: calc(14/16*1em);
    }

    section.category_header>.container>.note>h3, section#product_main>.product_description>.txt>.comment>.container>.note>h3 {
        font-size: calc(20 / 14 * 1em);
    }
}


.fs-l-productLayout.fs-system-product {}

.fs-c-productCarouselMainImage {
    display: none;
}

h1.fs-c-productNameHeading.fs-c-heading {
    display: none;
}

.fs-c-productNumber {
    display: none;
}

.fs-c-productPointDisplay {
    display: none;
}

section#product_main, section#product_main>.fs-p-productDescription {
    max-width: 1200px;
    margin: auto;
    width: 95%;
    display: flex;
    flex-wrap: wrap;
}

section#product_main>h2 {
    font-size: calc(28/16*1em);
    display: flex;
    flex-direction: column;
    padding-bottom: 1em;
    border-bottom: solid 1px #4D4D4D80;
    font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
    width: 100%;
    margin-top: 50px !important;
}

section#product_main>h2>span.cat {
    font-size: 0.8em;
}

section#product_main>.product_img {
    width: 40%;
    object-fit: contain;
    object-position: top;
}

section#product_main>main {
    width: 55%;
    margin-left: 5%;
}

section#product_main>.fs-p-productDescription {
    width: 100%;
}

section#product_main .fs-c-productPrices {
    font-size: calc(28 / 16 * 1em);
}

span.fs-c-productPrice__addon .fs-c-productSelection {
    border: solid 2px #E0DED7;
    font-size: calc(21 / 16 * 1em);
    padding: 2em;
}

button.fs-c-button--addToWishList--detail.fs-c-button--particular, .fs-c-returnedSpecialContract, .fs-c-inquiryAboutProduct.fs-c-buttonContainer.fs-c-buttonContainer--inquiryAboutProduct {
    display: none;
}

span.fs-c-productQuantityAndWishlist__quantity.fs-c-quantity.fs-system-assistTarget {
    position: relative;
    padding-left: 3em;
    max-width: none;
    font-size: calc(21 / 16 * 1em);
}

span.fs-c-productQuantityAndWishlist__quantity.fs-c-quantity.fs-system-assistTarget::before {
    content: "数量";
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: 0;
}

select.fs-c-quantity__select.fs-system-quantity-list {
    border: solid 2px #E0DED7;
    padding: .25em .5em;
    width: fit-content;
}

button.fs-c-button--addToCart--detail.fs-c-button--primary {
    background: #2B5E84;
    color: #fff;
    border: none;
    font-size: calc(22 / 16 * 1em);
    padding: .5em 3em;
    border-radius: 3em;
    margin: 1em auto;
    display: block;
}

table.item-spec tr {
    border-bottom: solid 1px #E0DED7;
}

table.item-spec tr:first-child {
    border-top: solid 1px #E0DED7;
}

table.item-spec th, table.item-spec td {
    padding: .5em 1em;
    text-align: left;
}

table.item-spec th {
    width: 55%;
}

table.item-spec {
    border-collapse: collapse;
    font-size: calc(18 / 16 * 1em);
    width: 100%;
    max-width: 700px;
}

table.item-spec+table {
    margin-top: 2em;
}

section#product_main>.fs-p-productDescription {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

section#product_main>.fs-p-productDescription>table {
    width: 45%;
}

@media screen and (max-width: 999px) {

    section#product_main>.fs-p-productDescription>table {
        width: 100%;
        max-width: none;
    }

}

section#product_main>h2 {
    order: 0;
}

section#product_main>img {
    order: 1;
}

section#product_main>main {
    order: 2;
}

section#product_main>.fs-p-productDescription {
    order: 4;
}

section#product_main>.fs-c-productReview {
    order: 7;
    width: 100%;
}

section#product_main>.product_description {
    order: 3;
}

section#product_main>.product_details_img_2 {
    order: 5;
}

section#product_main>.product_details_img_3 {
    order: 6;
}

section#product_main>.fs-pt-column {
    order: 8;
}

section#product_main>.product_description>.txt {
    word-break: break-all;
    width: 100%;
    font-size: calc(18 / 16 * 1em);
}

section#product_main>*>h2 {
    font-size: calc(28 / 16 * 1em);
    font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
    margin-top: 0;
    width: 100%;
}

section#product_main>* {
    margin-top: 100px !important;
    width: 100%;
}

section#product_main>img, section#product_main>main {
    margin-top: 0 !important;
}

section#product_main>.product_details_img_2>img {}

section#product_main>.product_details_img_3>img {}

section#product_main>*>img[src=""] {
    display: none;
}

@media screen and (max-width: 768px) {

    section#product_main>h2 {
        font-size: calc(18/14*1em);
    }

    section#product_main>.product_img {
        width: 100%;
    }

    section#product_main>* {
        margin-top: 1em !important;
    }

    section#product_main>main {
        width: 100%;
        margin-left: 0;
    }

    .fs-c-productPrices {
        font-size: calc(24 / 14 * 1em);
    }

    .fs-c-productPrice.fs-c-productPrice--selling {
        justify-content: flex-end;
    }

    .fs-c-productSelection {
        font-size: calc(16 / 14 * 1em);
        padding: 2em 1em;
    }

    span.fs-c-productQuantityAndWishlist__quantity.fs-c-quantity.fs-system-assistTarget {
        font-size: calc(18 / 14 * 1em);
        text-align: right;
        width: fit-content;
        margin: auto;
        margin-right: 0;
    }

    button.fs-c-button--addToCart--detail.fs-c-button--primary {
        font-size: calc(18 / 14 * 1em);
        width: 100%;
        padding: 1em;
    }

    section#product_main>*>h2, .fs-c-productReview::before {
        font-size: calc(22 / 14 * 1em);
    }

    section#product_main>.product_description>.txt {
        font-size: 1em;
    }

    section#product_main>.product_details_img_2>img, section#product_main>.product_details_img_3>img {
        max-width: none;
        min-width: 800px;
    }

    section#product_main>.product_details_img_2, section#product_main>.product_details_img_3 {
        overflow-x: scroll;
    }

    table.item-spec tr {
        display: flex;
        flex-direction: column;
    }

    table.item-spec th {
        padding-bottom: 0;
        width: 100%;
    }

}

aside.fs-p-drawer.fs-l-sideArea {
    display: none !important;
}

.fs-l-sideArea+.fs-l-pageMain, .fs-l-pageMain+.fs-l-sideArea {
    max-width: none !important;
}

.fs-l-header {
    padding: 0;
}





.fs-c-heading--page {
    font-size: calc(46/16*1em);
    color: #333333;
    font-family: 游明朝;
    font-weight: 600;
    text-align: left;
    border: none;
    padding: 0;
    margin: 1em 0;
}

section#about h3 {
    color: #2B5E84;
    font-size: calc(38/16*1em);
    font-family: 游明朝;
    padding: .2em 0;
    padding-left: .5em;
    border-left: solid 0.3em;
    line-height: 1;
}

section#about {}

section#about>.container:nth-of-type(1) {
    width: 95%;
    margin: auto;
}

section#about>.container:nth-of-type(1)>ul {}

section#about>.container:nth-of-type(1)>ul>li {
    display: flex;
    justify-content: space-between;
}

section#about>.container:nth-of-type(1)>ul>li:nth-of-type(2) {
    flex-direction: row-reverse;
}


section#about>.container:nth-of-type(1)>ul>li>.txt {
    font-size: calc(21/16*1em);
}

section#about>.container:nth-of-type(1)>ul>li:nth-of-type(1)>img {
    width: 45%;
    margin-bottom: 5%;
    object-fit: contain;
    object-position: top left;
}

section#about>.container:nth-of-type(1)>ul>li:nth-of-type(1)>.txt {
    width: 49%;
}

section#about>.container:nth-of-type(1)>ul>li:nth-of-type(2)>img {
    width: 23%;
    margin-bottom: 5%;
    object-fit: contain;
    object-position: top left;
}

section#about>.container:nth-of-type(1)>ul>li:nth-of-type(2)>.txt {
    width: 69%;
}

body#fs_CustomPage .fs-l-main {
    max-width: 1400px !important;
    width: 100% !important;
}

section#about>.container:nth-of-type(2)>ul {
    display: flex;
    flex-wrap: wrap;
    width: 85%;
    margin: auto;
    gap: 8%;
}

section#about>.container:nth-of-type(2)>ul>li {
    width: 46%;
    margin-bottom: 5%;
}

section#about>.container:nth-of-type(2)>ul>li>.note {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 2em;
    font-size: calc(21/16*1em);
    margin-top: 2em;
}

section#about>.container:nth-of-type(2)>ul>li>.note>span {
    color: #2B5E84;
    font-size: 2em;
    font-weight: 600;
    font-family: system-ui;
    aspect-ratio: 1;
    border: solid 1px;
    display: block;
    width: 12%;
    display: flex;
    align-items: center;
    justify-content: center;
}

section#about>.container:nth-of-type(2)>ul>li>.note>.txt {
    width: 80%;
}

section#about>.container:nth-of-type(2)>ul>li>img {
    aspect-ratio: 41/26;
    object-fit: cover;
    width: 100%;
}

section#about>.container:nth-of-type(3) {}

section#about>.container:nth-of-type(3)>h3 {
    color: #A1621E;
    text-align: center;
    border: none;
    display: flex;
    flex-direction: column;
    gap: .8em;
}

section#about>.container:nth-of-type(3)>h3>span {
    color: #333333;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-size: 0.7em;
}

section#about>.container:nth-of-type(3)>.box {
    border: solid 1.5px #A1621E;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: calc(23/16*1em);
    padding: 2em 3em;
    background: #FFFFFF;
    background: radial-gradient(circle, rgba(255, 255, 255, 1) 75%, rgba(255, 247, 235, 1) 100%);
}

section#about>.container:nth-of-type(3)>.box>img {
    border-left: solid 1px #a1621e80;
    width: 60%;
}

section#about>.container:nth-of-type(3)>.box>.txt {
    width: 40%;
}

section#about>.gallery_box:nth-of-type(4) .gallery {
    display: flex;
    gap: 10px;
}

section#about>.gallery_box:nth-of-type(4) .swiper-main {
    width: 70%;
}

section#about>.gallery_box:nth-of-type(4) .swiper-thumbs {
    width: 30%;
}

section#about>.gallery_box:nth-of-type(4) .swiper-thumbs .swiper-slide {
    opacity: 0.5;
    cursor: pointer;
    height: auto !important;
    width: 50%;
    padding: 1%;
}

section#about>.gallery_box:nth-of-type(4) .swiper-thumbs .swiper-slide-thumb-active {
    opacity: 1;
    border: 2px solid #333;
}

section#about>.gallery_box:nth-of-type(4) img {
    width: 100%;
    display: block;
}

.swiper-vertical>.swiper-wrapper {
    flex-direction: row !important;
    flex-wrap: wrap;
}

section#about>.gallery_box:nth-of-type(4) .swiper-thumbs .swiper-slide>img {
    height: 126px;
    object-fit: cover;
}

section#about>.gallery_box:nth-of-type(4) .swiper-main img {
    height: 670px;
    object-fit: cover;
}

section#about>.info, section#about>.history {
    position: relative;
}

section#about>.info>.note, section#about>.history>.note {
    border: solid 1px;
    text-align: center;
    aspect-ratio: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 60%;
    margin: auto;
    margin-right: 0;
}

section#about>.history>.note {
    aspect-ratio: auto;
    margin: auto;
    margin-left: 0;
    width: 70%;
    padding: 2em 0;
}

section#about>.info>.note>h4, section#about>.history>.note>h4 {
    font-size: calc(44/16*1em);
    font-family: 游明朝;
    color: #2B5E84;
    margin: .8em 0;
}

section#about>.info>.note>.txt {
    font-size: calc(24/16*1em);
    line-height: 2.5;
}

section#about>.history>.note>.txt {
    font-size: calc(18/16*1em);
    line-height: 2.5;
    width: 70%;
    text-align: left;
    margin: 0 auto 5%;
    transform: translate(-5%, 0);
}

section#about>.info>img {
    position: absolute;
    width: 44%;
    top: 50%;
    transform: translate(0, -50%);
}

section#about>.history>img {
    position: absolute;
    width: 40%;
    top: 50%;
    transform: translate(0, -50%);
    right: 0;
}

section#about>.map>.map_area {
    position: relative;
    padding-bottom: 38%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}

section#about>.map>.map_area iframe,
section#about>.map>.map_area object,
section#about>.map>.map_area embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

body#fs_CustomPage main.fs-l-main:has(section#about) {
    max-width: 1200px !important;
    width: 95%;
}

section#about>.info, section#about>* {
    margin: 200px 0;
}

@media screen and (max-width: 768px) {

    section#about>.container:nth-of-type(1)>ul>li {
        flex-direction: column;
    }

    section#about>.container:nth-of-type(1)>ul>li:nth-of-type(1)>img {
        width: 100%;
    }

    section#about>.container:nth-of-type(1)>ul>li:nth-of-type(1)>.txt {
        width: 100%;
    }

    section#about>.container:nth-of-type(1)>ul>li:nth-of-type(2) {
        display: block;
    }

    section#about>.container:nth-of-type(1)>ul>li:nth-of-type(2)>img {
        float: left;
        width: 40%;
        margin: 5%;
        margin-right: 0;
    }

    section#about>.container:nth-of-type(1)>ul>li:nth-of-type(2)>.txt {
        width: 100%;
    }

    .fs-c-heading--page {
        font-size: calc(24/14*1em);
    }

    section#about h3 {
        font-size: calc(22/14*1em);
    }

    section#about>.container:nth-of-type(1)>ul>li>.txt {
        font-size: calc(14/14*1em);
    }

    section#about>.container:nth-of-type(2)>ul>li>.note {
        flex-direction: column;
        font-size: calc(14/14*1em);
        gap: 1em;
        margin-top: 1em;
    }

    section#about>.container:nth-of-type(2)>ul>li>.note>span {}

    section#about>.container:nth-of-type(2)>ul {
        width: 100%;
        flex-direction: column;
    }

    section#about>.container:nth-of-type(2)>ul>li {
        width: 100%;
    }

    section#about>.container:nth-of-type(2)>ul>li>.note>.txt {
        width: 100%;
    }

    section#about>.container:nth-of-type(3)>.box {
        flex-direction: column;
        padding: 2em 1em;
        font-size: calc(16/14*1em);
        gap: 1em;
    }

    section#about>.container:nth-of-type(3)>.box>.txt {
        width: 100%;
    }

    section#about>.container:nth-of-type(3)>.box>img {
        width: 100%;
    }

    section#about>.gallery_box:nth-of-type(4) .gallery {
        flex-direction: column;
    }

    section#about>.gallery_box:nth-of-type(4) .swiper-main {
        width: 100%;
    }

    section#about>.gallery_box:nth-of-type(4) .swiper-thumbs {
        width: 100%;
    }

    section#about>.gallery_box:nth-of-type(4) .swiper-thumbs .swiper-slide {
        width: 25%;
    }

    section#about>.info>img {
        width: 100%;
        z-index: 0;
        filter: opacity(0.2);
        height: 100%;
        object-fit: cover;
    }

    section#about>.info>.note, section#about>.history>.note {
        width: 95%;
        margin: auto;
        aspect-ratio: auto;
        padding: 2em 1em;
    }

    section#about>.info>.note>h4, section#about>.history>.note>h4 {
        font-size: calc(24/14*1em);
    }

    section#about>.info>.note>.txt {
        font-size: calc(14/14*1em);
    }

    section#about>.history>img {
        width: 100%;
        filter: opacity(0.2);
        z-index: 0;
        top: auto;
        bottom: 0;
        transform: translate(0, 0);
        height: 100%;
        object-fit: cover;
    }

    section#about>.history>.note>.txt {
        font-size: calc(14/14*1em);
        width: 100%;
        transform: translate(0, 0);
    }

    section#about>.info, section#about>* {
        margin: 50px 0;
    }

    section#about>.gallery_box:nth-of-type(4) .swiper-main img {
        height: auto;
    }

    section#about>.gallery_box:nth-of-type(4) .swiper-thumbs .swiper-slide>img {
        height: auto;
    }

}




section#brewing {}

body#fs_CustomPage .fs-l-main h2 {
    color: #2B5E84;
    text-align: center;
    font-size: calc(38/16*1em);
    font-family: 游明朝;
    padding-top: 1.5em;
    position: relative;
    margin: 0 auto 2em;
}

body#fs_CustomPage .fs-l-main h2::after {
    content: "";
    width: 1px;
    height: 1em;
    background: #2B5E87;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
}

section#brewing>.about {
    position: relative;
    margin-top: 0;
}

section#brewing>.about>img {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    width: 53%;
}

section#brewing>.about>.note {
    border: solid 1px #2B5E84;
    width: 50%;
    aspect-ratio: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-content: center;
    margin: auto;
    margin-right: 0;
}

section#brewing>.about>.note>h4 {
    color: #2B5E84;
    text-align: center;
    font-size: calc(38 / 16 * 1em);
    font-family: 游明朝;
}

section#brewing>.about>.note>.txt {
    font-size: calc(21 / 16 * 1em);
    width: 70%;
    margin: 0 auto;
}

section#brewing>.encounter {}

section#brewing>.encounter>h3 {
    color: #2B5E84;
    font-size: calc(38/16*1em);
    font-family: 游明朝;
    padding: .2em 0;
    padding-left: .5em;
    border-left: solid 0.3em;
    line-height: 1;
}

section#brewing>.encounter>.txt {
    font-size: calc(21/16*1em);
}

section#brewing>.encounter>.txt>span {
    color: #A1621E;
    font-weight: 700;
}

section#brewing>.encounter>.container {
    border: solid 1.5px #A1621E;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: calc(23 / 16 * 1em);
    padding: 2em 3em;
    background: #FFFFFF;
    background: radial-gradient(circle, rgba(255, 255, 255, 1) 75%, rgba(255, 247, 235, 1) 100%);
}

section#brewing>.container {
    border: solid 1.5px #A1621E;
    justify-content: center;
    align-items: center;
    font-size: calc(23 / 16 * 1em);
    padding: 2em 0 4em;
    background: #FFFFFF;
    background: radial-gradient(circle, rgba(255, 255, 255, 1) 75%, rgba(255, 247, 235, 1) 100%);
}

section#brewing>.container>h3 {
    margin: 0;
}

section#brewing>.container>.txt {
    width: 75%;
    margin: auto;
}

body#fs_CustomPage .fs-l-main:has(section#brewing) {
    max-width: none !important;
    margin: auto;
    padding: 0;
}

section#brewing>.bg {
    background: #F2F2F2;
    width: 100%;
    max-width: none;
    padding: 5% 0;
    margin-bottom: 0;
}

section#brewing>* {
    max-width: 1200px;
    margin: 200px auto;
}

section#brewing>.bg>div {
    max-width: 1200px;
    margin: auto;
}

section#brewing>.bg>div>h2 {}

section#brewing>.bg>div>.txt {
    text-align: center;
    font-size: calc(21/16*1em);
    margin-bottom: 3em;
}

section#brewing>.bg>div>ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

section#brewing>.bg>div>ul>li {
    background: #fff;
    width: 48.5%;
    margin-bottom: 1.5%;
    padding: 3em;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

section#brewing>.bg>div>ul>li>.title {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: auto;
    gap: 0 1em;
}

section#brewing>.bg>div>ul>li>.title>img {
    grid-row: span 2 / span 2;
    width: 100%;
}

section#brewing>.bg>div>ul>li>.title>.name {
    grid-column: span 3 / span 3;
    font-size: calc(28/16*1em);
    font-weight: 700;
}

section#brewing>.bg>div>ul>li>.title>.kobo {
    grid-column: span 3 / span 3;
    grid-column-start: 2;
    grid-row-start: 2;
    font-size: calc(18/16*1em);
}

section#brewing>.bg>div>ul>li>.txt {
    font-size: calc(21/16*1em);
    margin: 1em auto 0;
}

section#brewing>.bg>div>ul>li>.flower {
    background: #FBF8F3;
    font-size: calc(23/16*1em);
    padding: 1em;
    margin-top: 2em;
}

h1.fs-c-heading.fs-c-heading--page {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    width: 95%;
}

@media screen and (max-width: 768px) {

    section#brewing>* {
        width: 95%;
        margin: 50px auto;
    }

    .fs-l-main h2 {
        font-size: calc(22/14*1em);
    }

    section#brewing>.about>img {
        width: 100%;
        z-index: 0;
        filter: opacity(0.2);
        height: 100%;
        object-fit: cover;
    }

    section#brewing>.about>.note {
        width: 100%;
        margin: auto;
        aspect-ratio: auto;
    }

    section#brewing>.about>.note>.txt {
        width: 85%;
        margin-bottom: 2em;
        font-size: calc(14 / 14 * 1em);
    }

    section#brewing>.about>.note>h4 {
        font-size: calc(22 / 14 * 1em);
    }

    section#brewing>.encounter>h3 {
        font-size: calc(22/14*1em);
    }

    section#brewing>.encounter>.txt {
        font-size: calc(14/14*1em);
    }

    section#brewing>.container>.txt {
        width: 85%;
    }

    section#brewing>.container {
        font-size: calc(14 / 14 * 1em);
        padding-bottom: 3em;
        width: 95%;
    }

    section#brewing>.bg>div>.txt {
        font-size: calc(14/14*1em);
        text-align: left;
        width: 95%;
        margin: 0 auto 3em;
    }

    section#brewing>.bg>div>ul>li {
        width: 95%;
        margin: 0 auto 1em;
        padding: 2em;
    }

    section#brewing>.bg>div>ul {
        flex-direction: column;
    }

    section#brewing>.bg>div>ul>li>.title>.name {
        font-size: calc(18/14*1em);
    }

    section#brewing>.bg>div>ul>li>.title>.kobo {
        font-size: calc(12/14*1em);
    }

    section#brewing>.bg>div>ul>li>.txt {
        font-size: calc(14/14*1em);
    }

    section#brewing>.bg>div>ul>li>.flower {
        font-size: calc(14/14*1em);
    }

}



section#shopping_guide>h2:not(:first-of-type) {
    margin-top: 200px;
}

section#shopping_guide>ul {
    display: flex;
    flex-direction: column;
    gap: 50px;
}

section#shopping_guide>ul>li {}

section#shopping_guide>ul>li>h3 {
    font-size: calc(38/16*1em);
    font-family: 游明朝;
}

section#shopping_guide>ul>li>h4 {
    font-size: calc(26/16*1em);
    border-bottom: solid 1px #B9B9B9;
    padding: .5em 1em;
    margin-bottom: 1em;
}

section#shopping_guide>ul>li>.txt, section#shopping_guide>.txt {
    width: 95%;
    margin: 0 auto 1.5em;
    font-size: calc(21/16*1em);
}

section#shopping_guide>ul>li>.note {
    border: solid 1px #2B5E84;
    width: 95%;
    margin: auto;
    font-size: calc(21/16*1em);
    padding: 2em;
}

section#shopping_guide>ul>li>.note>h5 {
    color: #2B5E84;
    font-size: calc(28/16*1em);
    margin: 0 0 .6em;
}

section#shopping_guide>ul>li>.note>.txt {}

section#shopping_guide>ul>li>.note>.txt>ul, section#shopping_guide>.txt>ul {
    display: flex;
    flex-direction: column;
    gap: 2em;
}

section#shopping_guide>ul>li>.note>.txt>ul>li, section#shopping_guide>.txt>ul>li {
    position: relative;
    padding-left: 1.5em;
}

section#shopping_guide>ul>li>.note>.txt>ul>li::after, section#shopping_guide>.txt>ul>li::after {
    content: "";
    height: .5em;
    width: .5em;
    background: #2B5E84;
    position: absolute;
    border-radius: 50%;
    left: 0;
    top: .5em;
}

section#shopping_guide table {
    border-collapse: collapse;
    font-size: calc(18/16*1em);
    width: 95%;
    margin: 3em auto 0;
}

section#shopping_guide table tr {
    border-bottom: solid 1px #B9B9B9;
}

section#shopping_guide table th {
    background: #F2F2F2;
    font-weight: 400;
}

section#shopping_guide table th, section#shopping_guide table td {
    padding: .8em;
}

section#shopping_guide table tr:first-child {
    border-top: solid 1px #B9B9B9;
}

section#shopping_guide>ul>li img {
    margin: 1em 0;
}

section#shopping_guide>ul>li>.note>.txt>table {
    width: 100%;
}

section#shopping_guide>ul:last-child {}

section#shopping_guide>ul:last-of-type>li>h3 {
    color: #2B5E84;
    font-size: calc(28/16*1em);
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 400;
}

section#shopping_guide>ul:last-of-type>li>table {
    width: 100%;
    margin: 0 0 1em;
}

section#shopping_guide>ul:last-of-type>li>.txt {
    width: 100%;
}

section#shopping_guide>img {
    display: block;
    margin: auto;
}

@media screen and (max-width: 768px) {

    section#shopping_guide>ul>li>h3 {
        font-size: calc(22/14*1em);
    }

    section#shopping_guide>ul>li>h4 {
        font-size: calc(18/14*1em);
    }

    section#shopping_guide>ul>li>.txt {
        font-size: calc(14/14*1em);
    }

    section#shopping_guide>ul>li>.note>h5 {
        font-size: calc(16/14*1em);
    }

    section#shopping_guide>ul>li>.note, section#shopping_guide>.txt {
        font-size: calc(14/14*1em);
    }

    section#shopping_guide table {
        font-size: calc(12/14*1em);
    }

    section#shopping_guide>h2:not(:first-of-type) {
        margin-top: 100px;
    }

    section#shopping_guide>ul:last-of-type>li>h3 {
        font-size: calc(20 / 14 * 1em);
    }

}


section#club348 {}

section#club348>.container {
    display: flex;
    justify-content: space-between;
}

section#club348>.container:first-child {}

section#club348>.container:last-child {
    flex-direction: column;
    border: solid 1px #A1621E;
    padding: 4em;
    padding-top: 2em;
    margin-top: 150px;
}

section#club348>.container:first-child>img {
    width: 40%;
}

section#club348>.container:first-child>.txt {
    font-size: calc(21/16*1em);
    width: 55%;
}

section#club348>.container:last-child>h3 {
    font-size: calc(54/16*1em);
    text-align: center;
    color: #970200;
    font-family: 游明朝;
}

section#club348>.container:last-child>.txt {
    font-size: calc(23/16*1em);
    margin-bottom: 3em;
}

section#club348>.container:last-child>a {
    background: #970200;
    color: #fff !important;
    display: block;
    width: fit-content;
    padding: 1em 4em;
    font-size: calc(28/16*1em);
    border-radius: 3em;
    margin: 3em auto 0;
}


@media screen and (max-width: 768px) {

    section#club348>.container {
        flex-direction: column;
    }

    section#club348>.container:first-child>img {
        width: 100%;
    }

    section#club348>.container:first-child>.txt {
        width: 100%;
        font-size: calc(16/14*1em);
    }

    section#club348>.container:last-child>h3 {
        font-size: calc(24/14*1em);
    }

    section#club348>.container:last-child>.txt {
        font-size: calc(16/14*1em);
    }

    section#club348>.container:last-child>a {
        font-size: calc(16/14*1em);
    }

    section#club348>.container:last-child {
        padding: 2em 1em;
        margin-top: 50px;
    }

}


section#link {}

section#link>ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 80px 0;
}

section#link>ul>li {
    width: calc((100% - 80px)/2);
}

section#link>ul>li>h3 {
    background: #F2F2F2;
    font-family: 游明朝;
    font-size: calc(38/16*1em);
    padding: .5em 1em;
    margin-bottom: 0;
}

section#link>ul>li>ul {
    width: 90%;
    margin: .5em auto;
    font-size: calc(26/16*1em);
}

section#link>ul>li>ul>li {
    border-bottom: solid 1px #B9B9B9;
    padding: .5em 2em;
    position: relative;
}

section#link>ul>li>ul>li::before {
    content: "";
    width: 2em;
    height: 0.5em;
    background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="55.492" height="7.241" viewBox="0 0 55.492 7.241"><path d="M14347.456,559.336h53.952l-8.731-6.336" transform="translate(-14347.456 -552.595)" fill="none" stroke="%23b9b9b9" stroke-miterlimit="10" stroke-width="1"/></svg>') no-repeat center;
    position: absolute;
    right: 2em;
    top: 50%;
    background-size: contain;
}



@media screen and (max-width: 768px) {

    section#link>ul {
        flex-direction: column;
        gap: 50px 0;
    }

    section#link>ul>li {
        width: 100%;
    }

    section#link>ul>li>h3 {
        font-size: calc(18/14*1em);
    }

    section#link>ul>li>ul {
        font-size: calc(16/14*1em);
    }

}



a.fs-c-button--back.fs-c-button--standard {
    background: #2b5e84;
    color: #fff !important;
    font-size: 1.2em;
    border: none;
    border-radius: 3em;
    margin: auto;
}

ul.fs-c-accountService {
    justify-content: flex-start;
    gap: 10px;
}

.fs-c-accountService>li {
    width: calc((100% - 10px*2)/3);
    flex-basis: auto;
    margin: 0;
    text-align: center;
    height: auto;
    aspect-ratio: 1;
}

li.fs-c-accountService__page.fs-c-accountService__page--accountDelete {
    display: flex;
    justify-content: center;
}

/*--メインエリア>コンテンツエリア>商品グループ表示--*/
.fs-c-subgroup {
    display: none;
}

section#category_header, section#category_footer, section#product_main>.product_description>.txt>.comment, section#category_footer {
    width: 95%;
    max-width: 1200px;
    margin: 50px auto;
}

:where(#category_header, #category_footer) img {
    width: 100%;
    height: auto;
}


section#category_header, section#product_main>.product_description>.txt>.comment {
    /*-font-size: 24px-*/
}

section#category_header>*, section#product_main>.product_description>.txt>.comment>* {
    margin-bottom: 3em;
    display: block;
}

#waliqueur-caution {
    background-color: #fef4f4;
    text-align: center;
    line-height: 1.8;
    border: #981117 1px solid;
    padding: 1em;
}

section#category_footer {
    font-size: 18px;
}

section#category_footer a {
    color: #007aff;
    text-decoration: underline;
}

.recommend ul li {
    background-color: #fff;
    border: #BCBCBC 1px solid;
    width: calc((100% - 3em) / 4);
    padding: 1em;
}

.recommend ul li p {
    padding: 0 0 5px 0;
}

.recommend li p.comment {
    font-weight: bold;
    line-height: 1.2;
    padding: 5px 0 5px 0;
}

.recommend li p.price {
    line-height: 1.2;
    text-align: center;
    padding: 5px 0 5px 0;
}

.recommend li p.price strong {
    color: #B3321E;
    font-size: 108%;
    font-weight: bold;
}

.recommend {}

.recommend ul {
    display: flex;
    gap: 1em;
    flex-wrap: wrap;
}

.recommend-section {
    clear: both;
    border-top: #ccc 1px solid;
}

.recommend-section .description {
    float: left;
    width: 498px;
}

.recommend-section .description h5 {
    background: url(https://sansya.itembox.design/item/img/pro/h5_bg.jpg) no-repeat left top;
    height: 33px;
    color: #A71319;
    font-size: 108%;
    font-weight: bold;
    line-height: 33px;
    padding: 0 0 0 10px;
    margin: 0 0 15px 0;
}

.recommend-image {}

.recommend-image .recommend-comment {
    float: right;
    width: 250px;
}

.recommend-image img {
    float: left;
    width: 229px;
    border: #ccc 1px solid;
}

.recommend-section .item {
    float: right;
    width: 202px;
    padding: 30px 0 0 0;
}

.recommend-section .item-image {
    border-right: #E5E5E5 1px solid;
    border-bottom: #E5E5E5 1px solid;
    text-align: center;
    width: 192px;
    overflow: hidden;
    padding: 0 5px 5px 4px;
    margin: 0 0 10px 0;
}

.recommend-section .item-price {
    font-size: 108%;
    text-align: right;
    padding: 0 0 10px 0;
}

.recommend-section .item-price strong {
    color: #A71319;
    font-size: 138%;
    font-weight: bold;
}

.footer-about {
    border: #BFBFBF 1px solid;
    display: flex;
    justify-content: space-between;
    max-width: 1000px;
    margin-bottom: 200px;
    align-items: center;
    padding: 0 2em;
}

.footer-about .image {
    width: 50%;
    margin: 0;
}

.footer-about .description {
    width: 50%;
    padding: 2em 0 2em 2em;
    font-size: 80%;
}

.footer-about .description h2,
section#noshi_page .main .footer-about .description h2 {
    background: none;
    height: auto;
    line-height: 1.5;
    margin: 0 0 20px 0;
    padding: 0;
}

.footer-about .description p {
    line-height: 2.0;
    padding: 0 0 0 7px;
}

.footer-about .description p span a {
    background: url(https://sansya.itembox.design/item/img/common/arrow03.gif) no-repeat left center;
    padding: 0 0 0 15px;
}

.footer-about .description p.btn {
    background: url(https://sansya.itembox.design/item/img/common/about-btn_bg.jpg) no-repeat left top;
    padding: 45px 0 0 0;
    width: auto;
    border-radius: 0;
}

.footer-about .description p.btn img {
    width: auto;
}

.footer-about .about-image {
    margin-bottom: 40px;
}

.footer-about .history {
    clear: both;
    width: 675px;
    margin: 30px 0 30px 30px;
    background-image: url("https://sansya.itembox.design/item/img/common/history_middle.jpg");
    background-repeat: repeat-y;
}

.footer-about .history_inner {
    width: 600px;
    margin: 30px auto;
}

.footer-about .history_inner img {
    float: right;
    margin-left: 20px;
}

.footer-about .history_inner p {
    margin-bottom: 10px;
    text-align: justify;
    line-height: 1.8;
}

.footer-about .history:after {
    content: "";
    clear: both;
    display: block;
    background: url("https://sansya.itembox.design/item/img/common/history_end.jpg") bottom no-repeat;
    background-size: 100%;
    height: 25px;
}

@media screen and (max-width: 768px) {

    section#category_header, section#product_main>.product_description>.txt>.comment {
        font-size: 16px
    }

    .recommend ul li {
        width: calc((100% - 1em) / 2);
    }

    .footer-about .image {
        position: absolute;
        z-index: 0;
        width: 100%;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        height: 100%;
        filter: opacity(0.2) brightness(0.9);
    }

    .footer-about .image>img {
        height: 100%;
        object-fit: cover;
    }

    .footer-about .description {
        z-index: 1;
        width: 100%;
        padding: 0;
    }

    .footer-about {
        position: relative;
        overflow: hidden;
        padding: 2em 1em;
        font-size: 20px;
    }

    .footer-about .description p.btn {
        background: none;
        padding: 0;
    }

    section#category_footer {
        font-size: 16px;
    }

}






.greeting_gift {}

.greeting_gift>p.first_explain {
    margin: 1em;
}

.greeting_service {
    border: solid 1.5px #A1621E;
    background: #FFFFFF;
    background: radial-gradient(circle, rgba(255, 255, 255, 1) 75%, rgba(255, 247, 235, 1) 100%);
    padding: 2em 1em;
}

.greeting_service>h2 {
    width: 100%;
    max-width: 900px;
    margin: auto;
}

.greeting_service>p.explain {
    text-align: center;
    margin: 1em 0;
}

.greeting_service>ul {
    display: flex;
    flex-wrap: wrap;
    gap: .5em;
}

.greeting_service>ul>li {
    width: calc((100% - .5em*2)/3);
}

.greeting_service>.paper_area {
    position: relative;
}

.greeting_service>.paper_area>p.btn {
    position: absolute;
    width: 20%;
    top: 50%;
    left: 20%;
}

section#category_header:has(.greeting_gift)+.fs-pt-column,
section#category_header:has(.greeting_gift)~section#category_footer, section#product_main>.product_description>.txt>.comment:has(.greeting_gift)~section#category_footer {
    display: none;
}

@media screen and (max-width: 768px) {

    .greeting_service>ul>li {
        width: calc((100% - 0.5em*1)/2);
    }

    .greeting_service>.paper_area>p.btn {
        width: 33%;
        left: 2em;
        bottom: 0;
        top: auto;
    }

}


.set-content li {
    border: #CCBB9A 3px solid;
    padding: 2px;
    margin: 0 0 10px 0;
}

.set-content.type02 li {
    background: #f2ede2;
    border: none;
}

.set-content-inner {
    border: #CCBB9A 1px solid;
    padding: 2em;
    display: flex;
    justify-content: space-between;
}

.type02 .set-content-inner {
    border: none;
}

.set-content-inner .text {
    width: 65%;
}

.set-content-inner .image {
    width: 30%;
}

.set-content-inner .text h3 {
    margin: 0 0 15px 0;
}

.set-content-inner .text p.lead {
    padding: 0 15px 0 0;
    margin: 0 0 15px 0;
}

#category_header .make, section#product_main>.product_description>.txt>.comment .make {
    background: url(https://sansya.itembox.design/item/img/products/make_bg.jpg) no-repeat left top;
    margin: 0 0 20px 0;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    background-size: cover;
}

#category_header .make .image, section#product_main>.product_description>.txt>.comment .make .image {
    width: 25.17%;
    margin: 0;
}

#category_header .make .text, section#product_main>.product_description>.txt>.comment .make .text {
    width: 74.83%;
}

#category_header .make .text p, section#product_main>.product_description>.txt>.comment .make .text p {
    margin: 0;
}

#category_header .make .text ul, section#product_main>.product_description>.txt>.comment .make .text ul {
    display: flex;
    flex-wrap: wrap;
    gap: 2em;
    padding-right: 8%;
}

#category_header .make .text ul li, section#product_main>.product_description>.txt>.comment .make .text ul li {
    width: calc((100% - 2em) / 2);
}

#category_header .make .text ul li p, section#product_main>.product_description>.txt>.comment .make .text ul li p {
    padding: 5px 0 0 0;
}

section#product_main>.product_description>.txt>.comment img {
    width: 100%;
    height: auto;
}

@media screen and (max-width: 768px) {
    .set-content-inner {
        padding: 1em;
        flex-direction: column;
    }

    .set-content-inner .text {
        width: 100%;
    }

    .set-content-inner .image {
        width: auto;
        max-width: 50%;
        margin: auto;
    }

    .item-hanakoubo_inner {
        padding: 1em;
    }

    #category_header .make .text ul, section#product_main>.product_description>.txt>.comment .make .text ul {
        flex-direction: column;
        padding: 0;
        width: 95%;
    }

    #category_header .make .text ul li, section#product_main>.product_description>.txt>.comment .make .text ul li {
        width: 100%;
    }

    #category_header .make, section#product_main>.product_description>.txt>.comment .make {}

    #category_header .make .text, section#product_main>.product_description>.txt>.comment .make .text {
        height: 330px;
        overflow: scroll;
        transform: translate(0, 15px);
    }

    #category_header .make .text>p>img, section#product_main>.product_description>.txt>.comment .make .text>p>img {
        object-view-box: inset(30px 0px 30px 0px);
    }

}

.item-hanakoubo {
    border: #E6B3B6 3px solid;
    padding: 2px;
    margin: 0 0 20px 0;
}

.item-hanakoubo_inner {
    border: #E6B3B6 1px solid;
    padding: 30px 30px 5px 30px;
}

.item-hanakoubo_inner h3 {
    border-bottom: #D4D4D4 1px solid;
    margin: 0 0 20px 0;
}

.item-hanakoubo_inner h3>img {
    width: auto !important;
}

.hanakoubo-list {}

.hanakoubo-list li {
    margin: 0 0 25px 0;
    display: flex;
    justify-content: space-between;
}

.hanakoubo-list li .content {
    width: 65%;
}

.hanakoubo-list li .image {
    width: 30%;
}

.hanakoubo-list .name {
    background: url(https://sansya.itembox.design/item/img/products/h4-hanakoubo_bg.jpg) no-repeat left center;
    height: 32px;
    padding: 0 0 0 35px;
    margin: 0 0 10px 0;
    display: flex;
    gap: 2em;
}

.hanakoubo-list h4 {
    /*-float: left;
    width: 200px;
    font-weight: bold;-*/
    line-height: 32px;
    margin: 0;
}

.hanakoubo-list span {
    display: block;
    color: #A41215;
    font-weight: bold;
    line-height: 32px;
    text-align: right;
    padding: 0 15px 0 0;
}

.hanakoubo-list p {
    margin: 0 0 25px 0;
}

.hanakoubo-list p.word {
    background: url(https://sansya.itembox.design/item/img/products/word.jpg) no-repeat left center;
    height: 28px;
    line-height: 28px;
    padding: 0 0 0 65px;
    margin: 0;
}

p.cart-anchor {
    margin: auto;
    width: fit-content;
}

.cart-anchor img {
    width: auto;
}



.award_area>ul {
    display: flex;
    flex-wrap: wrap;
}

.award_area>ul>li {
    width: calc(100%/4);
}


@media screen and (max-width: 768px) {
    .award_area>ul>li {
        width: calc(100%/3);
    }

    .hanakoubo-list li {
        flex-direction: column;
        gap: 2em;
    }

    .hanakoubo-list li .content {
        width: 100%;
    }

    .hanakoubo-list li .image {
        width: 100%;
    }

    .item-hanakoubo_inner {
        padding: 2em 1em 0;
    }
}




/*! end @import */
/*! @import https://www.sansya.co.jp/common/css/page.css */
.FS2_body_Goods_gr46 .userTable_01 {
    display: none;
    width: 97%;
    padding: 0 !important;
    margin-left: 8px !important;
}

.FS2_body_Goods_gr46 .user_wrap {
    margin: 20px 0 20px 0;
}

.FS2_body_Goods_gr46 .user_wrap .FS2_MyReviewList_Text {
    width: 95%;
}

/*! end @import */
/*! @import https://www.sansya.co.jp/common/css/system.css */
.userTable_01 {
    width: 100%;
    margin-bottom: 10px;
    border-top: 1px solid #DDDDDD;
    border-left: 1px solid #DDDDDD;
}

.userTable_01>tbody, .userTable_01 tr {
    display: block;
    width: 100%;
}

.userTable_01 td {
    /* border-bottom: 1px solid #DDDDDD; */
    /* border-right: 1px solid #DDDDDD; */
    /* padding: 3px 5px; */
    width: 100%;
    display: block;
}

.gl_Item {
    padding: 0px;
    margin: 0 0 15px 0;
}

.FS2_Review_Detail_container_td table {
    width: 100%;
    border: none;
}

.FS2_Review_Detail_td {
    background: #F6F6F6;
}

.FS2_Review_User_Status {
    background: #FF6600;
    color: #FFFFFF;
    padding: 0.25em;
    line-height: 1.2;
    border: 1px solid #FFFFFF;
    font-size: 14px;
    margin-left: 5px;
}

.FS2_Review_Detail_Prof_Date {
    padding: 0px;
    margin: 0px;
    text-align: right;
}

.FS2_MyReviewStatus {
    color: #5BA633;
    float: left;
    font-size: 85%;
    margin: 5px;
    display: flex;
    align-items: center;
    padding: 0 .5em;
    gap: .5em;
}

.FS2_MyReviewStatus img {
    /* position: relative; */
    /* top: -2px; */
    width: auto;
}

.FS2_MyReviewStatus_text {
    line-height: 2;
    color: #000000;
    display: block;
}

.FS2_MyReviewList_Text {
    padding: 0px;
    margin: 0 5px 5px 5px;
    width: 98%;
}

.FS2_MyReviewList_Text:after {
    content: ".";
    display: block;
    visibility: hidden;
    height: 0.1px;
    font-size: 0.1em;
    line-height: 0;
    clear: both;
}

.FS2_MyReviewList_Text {
    display: inline-block;
}

/*! end @import */
/*! @import https://www.sansya.co.jp/common/css/system-custom.css */
#FS2_itemlayout_E table {
    border: #ccc 1px solid;
    padding: 5px;
}

#FS2_itemlayout_E .userTable_01 {
    border: #ccc 1px solid;
    margin: 15px 0 0 0;
}

#FS2_itemlayout_E .userTable_01 .FS2_Review_Detail_container_td {
    /* padding: 10px; */
}

#FS2_itemlayout_E .userTable_01 .FS2_Review_Detail_container_td table {
    border: none;
}

#FS2_itemlayout_E .userTable_01 .FS2_Review_Detail_container_td .FS2_Review_Detail_td {
    background-color: #FDF1D5;
    padding: 10px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.FS2_Review_Detail_name {
    /* float: left; */
    /* width: 360px; */
    font-weight: bold;
}

.FS2_Review_Detail_Prof_Date {
    /* float: right; */
    /* width: 290px; */
}

.FS2_MyReviewStatus {
    /* padding: 0px 10px 0px 10px; */
}

.FS2_MyReviewList_Text {
    padding: 0px 10px 0px 10px;
}

#original-description {
    position: relative;
}

#original-text {
    position: absolute;
    width: 97%;
    padding: 0 2em;
    left: 0;
    right: 0;
    top: 25%;
    margin: auto;
    background: #ffffff;
    font-size: calc((11px / 2) + (11 - (11 / 2)) * (100vw - 375px) / (1200 - 375));
}

#original-text ul {}

#original-text ul li {
    margin: 0 0 1em 0;
    position: relative;
    padding-left: .5em;
}

#original-text ul li::after {
    content: "";
    height: 1.5em;
    width: 0.3em;
    background: #A71216;
    position: absolute;
    left: 0;
    top: 0.1em;
}

#original-text ul li strong {
    color: #A71216;
    font-weight: normal;
}

#original-inquiry {
    width: 85%;
    border: #E7DABA 1px solid;
    padding: 1em;
    margin: 0 auto;
}

#original-inquiry h3 {
    color: #715114;
    font-size: 93%;
    font-weight: bold;
    margin: 0 0 10px 0;
}

#original-inquiry p {
    font-size: 93%;
}


span.fs-c-productPrice__addon.fs-c-productPrice__addon--listed::before,
span.fs-c-productPrice__addon.fs-c-productPrice__addon--listed::after {
    display: none;
}

span.fs-c-productPrice__addon.fs-c-productPrice__addon--listed {
    font-size: .7em;
}

.fs-c-productPrice.fs-c-productPrice--listed {
    display: flex;
    align-items: baseline;
    gap: .25em;
    font-size: 0.8em;
}





body#fs_CustomPage .fs-l-main .campaign h2 {
    all: unset;
}

body:not(#fs_ProductCategory) .campaign .btn {
    background: unset;
    color: unset !important;
    font-size: unset;
    display: unset;
    width: unset;
    padding: unset;
    border-radius: unset;
    max-width: unset;
    word-break: unset;
}

body:not(#fs_ProductCategory) .description .btn {
    all: unset;
}

.campaign {
    max-width: 735px;
    margin: auto;
    font: 13px/1.231 "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
    font-size: 80%;
}

.campaign :where(h1, h2, h3, h4, h5) {
    margin: 0;
}

.campaign p,
.campaign ul {
    margin: 0;
}

.campaign * {
    box-sizing: unset;
}

body#fs_CustomPage .fs-l-main:has(.campaign)+section#category_footer {
    max-width: 735px;
    margin: auto;
    font-size: 14px;
}

body#fs_CustomPage .fs-l-main:has(.campaign)+section#category_footer .recommend ul li {
    width: calc((100% - 3em) / 4) !important;
    padding: 1em !important;
    margin: 0 !important;
}

body#fs_CustomPage .fs-l-main:has(.campaign)+section#category_footer .footer-about .image {
    width: 50% !important;
    margin: 0;
    float: none !important;
}

body#fs_CustomPage .fs-l-main:has(.campaign)+section#category_footer .footer-about .description {
    width: 50% !important;
    padding: 2em 0 2em 2em !important;
    font-size: 80% !important;
    float: none !important;
}



@media screen and (max-width: 735px) {

    .campaign {
        overflow: scroll;
    }

    .campaign>.inner {
        width: 735px;
    }

    body#fs_CustomPage .fs-l-main:has(.campaign)+section#category_footer .recommend ul li {
        width: calc((100% - 1em) / 2) !important;
        height: auto !important;
    }

    body#fs_CustomPage .fs-l-main:has(.campaign)+section#category_footer .footer-about .image, body#fs_CustomPage .fs-l-main:has(.campaign)+section#category_footer .footer-about .description {
        width: 100% !important;
        padding: 0 !important;
    }

}





.fs-body-product li.fs-c-reviewList__item {
    border: solid 1px #E0DED7;
}

.fs-body-product .fs-c-reviewInfo__reviewer.fs-c-reviewer {
    display: flex;
}

.fs-body-product .fs-c-reviewer__status {
    margin-left: .5em;
    font-size: 0.7em;
    background: #E0DED7;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0 .5em;
}

.fs-body-product .fs-c-reviewer__profile {
    margin-left: .5em;
}

.fs-body-product dl.fs-c-reviewInfo__date {
    display: flex;
    justify-content: flex-start;
    margin-left: 2em;
}

.fs-body-product dl.fs-c-reviewInfo__date>dd {
    margin: 0 .5em;
}

.fs-body-product ul.fs-c-productReview__reviewList.fs-c-reviewList.fs-c-reviewList--productDescription {
    display: flex;
    flex-direction: column;
    gap: 1em;
}

.fs-body-product .fs-c-reviewList__item__body.fs-c-reviewBody {
    padding: 1em;
}

.fs-body-product .fs-c-reviewList__item__info.fs-c-reviewInfo.fs-c-reviewInfo--productDescription {
    display: flex;
    align-items: center;
    border-bottom: solid 1px #E0DED7;
    padding: 1em;
}

.fs-body-product .fs-c-reviewRating {
    margin-left: 2em;
}

.fs-c-productReview::before {
    content: "レビュー";
    font-size: calc(28 / 16 * 1em);
    font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
    margin-bottom: 1em;
    display: block;
}

.fs-c-breadcrumb {
    max-width: 1200px;
    margin: 1em auto;
}

@media screen and (max-width: 768px) {

    .fs-body-product .fs-c-reviewList__item__info.fs-c-reviewInfo.fs-c-reviewInfo--productDescription {
        flex-direction: column;
        align-items: self-start;
    }

    .fs-body-product dl.fs-c-reviewInfo__date, .fs-body-product .fs-c-reviewRating {
        margin: 0;
    }

}


.link-container.bottom>.container {
    display: flex;
    flex-wrap: wrap;
    gap: 1em;
}

.link-container.bottom>.container>.title {
    background-color: #5f4a38;
    font-size: 108%;
    font-weight: bold;
    border: #DDD4BB 1px solid;
    padding: 5px 10px;
    margin: 0 0 5px 0;
    color: #fff;
    width: 100%;
}

.link-box {
    width: calc(50% - 1em);
}

.link-box h3 {
    background-color: #E6DEC9;
    font-size: 108%;
    font-weight: bold;
    border: #DDD4BB 1px solid;
    padding: 5px 10px;
    margin: 0 0 5px 0;
}

.link-box ul {
    padding: 5px;
}

.link-box ul:first-child {
    margin-top: 0;
}

.link-box ul li {
    background: url(https://sansya.itembox.design/item/img/common/arrow07.gif) no-repeat left 5px;
    padding: 0 0 5px 20px;
}

#sitemap .link-box ul {
    padding: 5px;
    margin: 0 0 15px 0;
}

.link-container:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.link-container {
    display: inline-block;
}

.link-container {
    display: block;
}

@media screen and (max-width: 768px) {

    .link-container.bottom {
        flex-direction: column;
    }

    .link-box {
        width: 100%;
    }

}

.shop_footer h2 {
    font-size: inherit;
}



.noshigami {
    width: 735px;
}

.noshigami ul {
    margin: 0;
    padding: 0;
}

body#fs_CustomPage .fs-l-main section#noshi_page h2 {
    color: unset;
    text-align: unset;
    font-size: unset;
    font-family: unset;
    position: unset;
}

.noshigami_service {
    padding: 1px 40px 70px 40px;
    width: 735px;
    background: url("https://sansya.itembox.design/item/img/products/noshigami/bg_noshigami.jpg") no-repeat center top;
    box-sizing: border-box;
}

section#noshi_page .noshigami_service h2 {
    height: auto;
    border-bottom: 1px solid #d4d4d4;
    padding: 53px 0 49px 5px;
    background: url("https://sansya.itembox.design/item/img/products/noshigami/bg_ttl_noshi.png") top right no-repeat;
    margin: 8px 0 26px 0;
}

section#noshi_page .noshigami_service h2.second {
    background: url("https://sansya.itembox.design/item/img/products/noshigami/bg_ttl_about_wrapping.png") top right no-repeat;
    margin: 8px 0 27px 0;
}

.noshigami_service .first_explain {
    margin: 10px 0 30px 0;
}

.noshigami_service .inner {
    padding: 0 20px;
}

.noshigami ul li h4 {
    margin: 19px 0 12px 0;
}

.noshigami table.noshi_type td {
    box-sizing: border-box;
    vertical-align: middle;
    height: 60px;
    font-weight: normal;
    font-size: 14px;
    line-height: 1.5em;
}

.noshigami_service ul li {
    list-style: none;
}

.noshigami_service table {
    background: #fff;
}

.noshigami table, .noshigami table th, .noshigami table td {
    border: 1px solid #e6d4b3;
}

.noshigami th {
    color: #fff;
    font-weight: bold;
    font-size: 18px;
}

.noshigami table .bg1 {
    background: #f8f4ee;
    text-align: center;
}

.noshigami table td p {
    margin: 16px 0;
}

.noshigami th.first, .noshigami th {
    background: linear-gradient(#664216, #7a511d);
}

.noshigami table {
    margin: 70px 0 80px 0;
}

.noshigami table th, .noshigami table td {
    padding: 10px;
}

.noshigami table.border {
    border-collapse: collapse;
}

.noshigami_service p.second_explain {
    margin-bottom: 44px;
}

.noshigami_service h3.gift_ttl, .noshigami_service h3.kesho_ttl {
    margin-bottom: 16px;
}

.noshigami_service ul.gift_wrap, .noshigami_service ul.kesho_wrap {
    display: flex;
    justify-content: space-between;
}

.noshigami_service ul.gift_wrap {
    margin-bottom: 60px;
}

.noshigami {
    width: 735px;
}

.noshigami ul {
    margin: 0;
    padding: 0;
}

.noshigami_service {
    padding: 1px 40px 70px 40px;
    width: 735px;
    background: url("https://sansya.itembox.design/item/img/products/noshigami/bg_noshigami.jpg") no-repeat center top;
    box-sizing: border-box;
}

section#noshi_page .noshigami_service h2 {
    height: auto;
    border-bottom: 1px solid #d4d4d4;
    padding: 53px 0 49px 5px;
    background: url("https://sansya.itembox.design/item/img/products/noshigami/bg_ttl_noshi.png") top right no-repeat;
    margin: 8px 0 26px 0;
}

section#noshi_page .noshigami_service h2.second {
    background: url("https://sansya.itembox.design/item/img/products/noshigami/bg_ttl_about_wrapping.png") top right no-repeat;
    margin: 8px 0 27px 0;
}

.noshigami_service .first_explain {
    margin: 10px 0 30px 0;
}

.noshigami_service .inner {
    padding: 0 20px;
}

.noshigami ul li h4 {
    margin: 19px 0 12px 0;
}

.noshigami table.noshi_type td {
    box-sizing: border-box;
    vertical-align: middle;
    height: 60px;
    font-weight: normal;
    font-size: 14px;
    line-height: 1.5em;
}

.noshigami_service ul li {
    list-style: none;
}

.noshigami_service table {
    background: #fff;
}

.noshigami table, .noshigami table th, .noshigami table td {
    border: 1px solid #e6d4b3;
}

.noshigami th {
    color: #fff;
    font-weight: bold;
    font-size: 18px;
}

.noshigami table .bg1 {
    background: #f8f4ee;
    text-align: center;
}

.noshigami table td p {
    margin: 16px 0;
}

.noshigami th.first, .noshigami th {
    background: linear-gradient(#664216, #7a511d);
}

.noshigami table {
    margin: 70px 0 80px 0;
}

.noshigami table th, .noshigami table td {
    padding: 10px;
}

.noshigami table.border {
    border-collapse: collapse;
}

.noshigami_service p.second_explain {
    margin-bottom: 44px;
}

.noshigami_service h3.gift_ttl, .noshigami_service h3.kesho_ttl {
    margin-bottom: 16px;
}

.noshigami_service ul.gift_wrap, .noshigami_service ul.kesho_wrap {
    display: flex;
    justify-content: space-between;
}

.noshigami_service ul.gift_wrap {
    margin-bottom: 60px;
}

section#noshi_page h2::after {
    display: none;
}

section#noshi_page, section#takayama_lp {
    width: fit-content;
    margin: auto;
}


@media screen and (max-width: 768px) {

    section#noshi_page, section#takayama_lp {
        overflow-x: scroll;
        width: 100%;
    }

}



span.fs-c-mark--coolDelivery>span.fs-c-mark__label {
    background-color: #3ea8ff;
    color: #FFF;
}




/*---商品画像スライド---*/

.container.product_slide {}

.container.product_slide img {
    height: auto;
    width: 100%;
}

.container.product_slide .slick-img img {
    height: 600px;
    object-fit: contain;
}

.container.product_slide .thumbnail .slick-track {
    transform: unset !important;
}

.container.product_slide .thumbnail-img {
    opacity: 0.3;
    transition: opacity .3s linear;
}

.container.product_slide .thumbnail-img img {
    width: 100%;
    object-fit: contain;
    height: auto;
    aspect-ratio: 1;
}

.container.product_slide .thumbnail .slick-current {
    opacity: 1;
}

section#product_main>.container.product_slide {
    margin-top: 0 !important;
}

.container.product_slide .slick-track {
    margin-left: 0;
    display: flex;
    gap: 1em;
}






.modal[hidden] {
    display: none;
}

.modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
}

.modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .5);
}

.modal__panel {
    position: relative;
    margin: 5vh auto;
    max-width: 480px;
    background: #fff;
    border-radius: 12px;
    padding: 16px 16px 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .2);
}

.modal__title {
    margin: 0 0 .5rem;
    font-size: 1.1rem;
}

.modal__close {
    position: absolute;
    top: 8px;
    right: 8px;
    border: 0;
    background: transparent;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
}

.modal__body {
    text-align: center;
}

.qr-img {
    width: min(80vw, 360px);
    height: auto;
    display: block;
    margin: 0 auto;
}

.modal__body .note {
    color: #555;
    margin-top: .5rem;
}

.modal__body .actions {
    margin-top: .75rem;
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
}

@media (min-width: 600px) {
    .modal__panel {
        padding: 20px 22px 24px;
    }
}

.comment table.item-spec {
    max-width: none;
}

footer.fs-l-footer {
    margin-top: 100px;
}

section#product_main>.product_description>.txt>.comment>.make {
    display: none;
}

.secret2512, .secret2512>.bg {
    max-width: 750px;
    margin: auto;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}

.secret2512>.bg {
    background: url(https://sansya.itembox.design/item/sansya_secret_2512_bg.png);
}

.secret2512 img {
    display: inline-block;
}

.secret2512 img>a {
    display: inline-block;
}

.secret2512 .wrap {
    display: flex;
    flex-wrap: wrap;
}

.secret2512 .wrap>a {
    width: 50%;
}

main.fs-l-main:has(.secret2512) {
    padding: 0;
    margin: 0;
}

main.fs-l-main:has(.secret2512) h1 {
    margin: 0;
}


/* ========================================================================
	受賞歴											[ award.html ]
======================================================================== */
#award-container {
    margin: 0 0 50px 0;
}

#award-lead {
    margin: 0 0 25px 0;
}

#award-lead p {
    font-size: 93%;
    padding: 5px 0 0 22px;
}

#award-lead img {
    float: right;
    padding: 0 0 10px 10px;
}

#award-container h3 {
    margin: 0 0 22px 10px;
}

#award-container ul {
    border: #ccc 1px solid;
    margin: 0 10px 30px 20px;
}

#award-container ul li {}

#award-container .image-content {
    padding: 5px 30px 25px 30px;
}

#award-container .image-content img {
    float: right;
    padding: 0 0 0 20px;
}


#award-container .list li {
    border-bottom: 1px dotted #AFAFAF;
    padding: 15px 25px;
}

#award-container .list .link {
    margin: 10px 0 0;
    text-align: right;
    clear: both;
}

#award-container .list .link a {
    background: url(https://www.sansya.co.jp/img/common/arrow03.gif) no-repeat left center;
    padding: 0 0 0 15px;
}

#award-container .list .txt {
    padding: 0 10px 0 0;
}


/* ========================================================================
	19.アクセスマップ							[	access.html ]
======================================================================== */
#access-container {
    text-align: center;
    padding: 15px 0 0 0;
}

.access-gmap {
    width: 700px;
    border: #BFBFBF 1px solid;
    margin: 0 auto 10px auto;
}

#access-container p {
    width: fit-content;
    margin: auto;
}

@media screen and (max-width: 768px) {}

@media screen and (max-width: 768px) {}

@media screen and (max-width: 768px) {}

@media screen and (max-width: 768px) {}

@media screen and (max-width: 768px) {}