*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body,h1,h2,p,ul{margin:0}ul{padding:0;list-style:none}img,picture,svg{max-width:100%;display:block}button,a{font:inherit}button{color:inherit;cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit;text-decoration:none}
:root{--color-white:#fff;--color-ivory:#f6f2ec;--color-light-gold:#e9d8b8;--color-gold:#c9a24b;--color-deep-red:#b31324;--color-deep-red-dark:#8f0f1d;--color-text:#272522;--color-text-sub:#716d67;--color-line:#d8d1c7;--font-serif:"Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", serif;--font-sans:"Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", sans-serif;--side-width:clamp(210px, 15.5vw, 280px);--transition-base:.35s ease}html{font-size:62.5%}body{min-width:320px;color:var(--color-text);font-family:var(--font-sans);background:var(--color-white);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-size:1.6rem;line-height:1.8;overflow-x:clip}body.is-menu-open{overflow:hidden}::selection{color:var(--color-white);background:var(--color-deep-red)}:focus-visible{outline:2px solid var(--color-gold);outline-offset:4px}.u-visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.u-sp-only{display:none}@media (max-width:767px){.u-sp-only{display:block}}
.site-shell{min-height:100%}.site-main{isolation:isolate;margin-left:var(--side-width);position:relative}.side-header{z-index:30;width:var(--side-width);-webkit-backdrop-filter:blur(14px);background:#ffffff80;border-right:1px solid #c9a24b38;flex-direction:column;min-height:100svh;padding:clamp(2.8rem,4vh,5.6rem) clamp(2.4rem,2.4vw,4.2rem);display:flex;position:fixed;inset:0 auto 0 0}.side-header a{flex-direction:column;align-items:center;gap:1rem;display:flex}.side-header__brand{width:min(100%,176px);margin-bottom:clamp(4rem,7vh,8.8rem);display:block}.side-nav{margin-top:auto;margin-bottom:auto}.side-nav__list{gap:clamp(1.2rem,1.8vh,2.2rem);display:grid}.side-nav__link{min-height:32px;color:var(--color-text);font-family:var(--font-serif);letter-spacing:.08em;transition:color var(--transition-base), transform var(--transition-base);align-items:center;font-size:clamp(1.35rem,1vw,1.65rem);display:inline-flex;position:relative}.side-nav__link:before{content:"";background:var(--color-gold);opacity:0;transform-origin:100%;width:24px;height:1px;transition:opacity var(--transition-base), transform var(--transition-base);position:absolute;top:50%;left:-42px;transform:scaleX(0)}.side-nav__link:hover,.side-nav__link.is-current{color:var(--color-gold);transform:translate(4px)}.side-nav__link:hover:before,.side-nav__link.is-current:before{opacity:1;transform:scaleX(1)}.side-nav__item{position:relative}.side-nav__flyout{z-index:1;opacity:0;visibility:hidden;transition:opacity var(--transition-base), visibility var(--transition-base), transform var(--transition-base);padding-left:1.6rem;position:absolute;top:50%;left:100%;transform:translateY(-50%)translate(-.6rem)}.side-nav__item:hover .side-nav__flyout,.side-nav__item:focus-within .side-nav__flyout{opacity:1;visibility:visible;transform:translateY(-50%)translate(0)}.side-nav__flyout-list{background:#fffffff5;border:1px solid #c9a24b66;gap:.8rem;padding:1.2rem 1.6rem;display:grid;box-shadow:0 10px 26px #2725221f}.side-nav__flyout-link{min-height:32px;color:var(--color-text);font-family:var(--font-serif);letter-spacing:.08em;white-space:nowrap;transition:color var(--transition-base);font-size:1.3rem;display:block}.side-nav__flyout-link:hover{color:var(--color-gold)}.side-social{flex-wrap:wrap;justify-content:center;gap:1.8rem;margin-top:auto;display:flex}@media (min-width:768px) and (max-height:620px){.side-header{padding-block:1.6rem}.side-header__brand{margin-bottom:1.6rem}.side-nav__list{gap:.6rem}}.mobile-header,.mobile-menu{display:none}.site-footer{z-index:2;margin-left:var(--side-width);background:radial-gradient(circle at 50% 0,#fff 0%,#fcfaf7 62%,#f6f2ec 100%);padding:clamp(5.6rem,6vw,9.2rem) clamp(3.2rem,5vw,8.4rem) 3.4rem;position:relative}.site-footer__inner{grid-template-columns:minmax(260px,.8fr) minmax(360px,1.45fr) auto;align-items:center;gap:clamp(3.2rem,4vw,7.2rem);width:min(100%,1420px);margin-inline:auto;display:grid}.site-footer__brand{align-items:center;gap:clamp(1.8rem,2vw,3.4rem);display:flex}.site-footer__farm-logo{width:clamp(100px,8vw,130px);height:auto}.site-footer__brand-divider{background:#c9a24bb3;width:1px;height:100px}.site-footer__kiratto-logo{width:clamp(164px,13vw,218px);height:auto}.site-footer__nav-list{flex-wrap:wrap;justify-content:center;gap:1.2rem 1.6rem;display:flex}.site-footer__nav-list li:not(:last-child):after{color:var(--color-gold);content:"/";margin-left:1.6rem}.site-footer__nav-list a{color:var(--color-text);font-family:var(--font-serif);letter-spacing:.08em;font-size:clamp(1.45rem,1.1vw,1.7rem)}.site-footer__nav-list a:hover{color:var(--color-gold)}.site-footer__social{flex-direction:column;align-items:flex-start;gap:1.4rem;display:flex}.site-footer__legal{text-align:center;margin-top:clamp(4.8rem,5vw,7.2rem)}.site-footer__legal a{color:var(--color-text-sub);letter-spacing:.12em;font-size:1.3rem}.site-footer__legal a:hover{color:var(--color-gold)}.site-footer__legal+.site-footer__copyright{margin-top:1.6rem}.site-footer__copyright{color:var(--color-text-sub);letter-spacing:.12em;text-align:center;margin-top:clamp(4.8rem,5vw,7.2rem);font-size:1.3rem}@media (min-width:768px) and (max-width:1200px){.site-footer{padding-inline:clamp(3.2rem,4vw,4.8rem)}.site-footer__inner{grid-template-columns:minmax(0,1fr);gap:clamp(2.8rem,3vw,4rem)}.site-footer__brand{justify-content:center}.site-footer__social{flex-direction:row;grid-column:1/-1;justify-content:center;align-items:center}}@media (max-width:767px){:root{--mobile-header-height:75px}.site-main{margin-left:0}.side-header{display:none}.mobile-header{z-index:50;height:var(--mobile-header-height);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-bottom:1px solid #c9a24b33;justify-content:space-between;align-items:center;padding:1rem 1.6rem 1rem 1.8rem;display:flex;position:fixed;inset:0 0 auto}.mobile-header__brand{width:86px}.mobile-menu{z-index:45;padding-top:var(--mobile-header-height);visibility:hidden;opacity:0;background:linear-gradient(160deg,#fffffffb,#f6f2ecfb);transition:visibility .4s,opacity .4s,transform .4s;display:block;position:fixed;inset:0;transform:translateY(-12px)}.mobile-menu.is-open{visibility:visible;opacity:1;transform:translateY(0)}.mobile-menu__inner{height:calc(100svh - var(--mobile-header-height));flex-direction:column;padding:4.4rem 2.8rem 3.6rem;display:flex;overflow-y:auto}.mobile-nav{gap:.4rem;display:grid}.mobile-nav a{font-family:var(--font-serif);letter-spacing:.08em;border-bottom:1px solid #c9a24b33;padding:1.3rem .4rem;font-size:1.8rem;display:block}.mobile-nav__children{gap:.2rem;padding:.4rem 0 1.2rem 1.6rem;display:grid}.mobile-nav__children a{color:var(--color-text-sub);border-bottom:0;padding:.9rem .4rem;font-size:1.4rem}.mobile-menu__social{gap:2.4rem;margin-top:auto;padding-top:3rem;display:flex}.site-footer{margin-left:0;padding:5.2rem 1.8rem 2.8rem}.site-footer__inner{flex-direction:column;align-items:center;gap:3.6rem;display:flex}.site-footer__brand{gap:1.8rem}.site-footer__brand-divider{height:72px}.site-footer__farm-logo{width:88px}.site-footer__kiratto-logo{width:160px}.site-footer__nav-list{gap:.8rem 1.6rem;max-width:370px}.site-footer__nav-list li:not(:last-child):after{margin-left:1.6rem}.site-footer__nav-list a{font-size:1.35rem}.site-footer__social{flex-direction:row;align-items:center}.site-footer__legal{margin-top:4rem}.site-footer__legal a{font-size:1.15rem}.site-footer__legal+.site-footer__copyright{margin-top:1.4rem}.site-footer__copyright{margin-top:4rem;font-size:1.15rem}}
.social-link{color:var(--color-text-sub);letter-spacing:.06em;transition:color var(--transition-base), opacity var(--transition-base);align-items:center;gap:.8rem;font-family:Georgia,Times New Roman,serif;font-size:1.35rem;display:inline-flex}.social-link img{object-fit:contain;width:22px;height:22px}.social-link:hover{color:var(--color-gold)}.menu-button{place-content:center;width:48px;height:48px;display:grid;position:relative}.menu-button__line{background:var(--color-text);width:26px;height:1px;margin:.3rem 0;transition:transform .35s,opacity .25s;display:block}.menu-button__text{color:var(--color-text-sub);letter-spacing:.14em;margin-top:.3rem;font-family:Georgia,Times New Roman,serif;font-size:.9rem}.menu-button.is-open .menu-button__line:first-child{transform:translateY(7px)rotate(45deg)}.menu-button.is-open .menu-button__line:nth-child(2){opacity:0}.menu-button.is-open .menu-button__line:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.button{width:min(100%,310px);min-height:66px;font-family:var(--font-serif);letter-spacing:.08em;transition:color var(--transition-base), background-color var(--transition-base), border-color var(--transition-base), transform var(--transition-base), box-shadow var(--transition-base);border:1px solid #0000;justify-content:space-between;align-items:center;padding:1.4rem 2.4rem;font-size:clamp(1.45rem,1.1vw,1.8rem);display:inline-flex}.button:hover{transform:translateY(-2px)}.button--primary{color:var(--color-white);background:var(--color-deep-red);border-color:var(--color-deep-red);box-shadow:0 12px 30px #6b051233}.button--primary:hover{background:var(--color-deep-red-dark);border-color:var(--color-deep-red-dark)}.button--outline{color:#8c6b21;border-color:var(--color-gold);background:#ffffffeb;box-shadow:0 12px 30px #2725221a}.button--outline:hover{color:var(--color-white);background:var(--color-gold)}.button__arrow{font-family:var(--font-sans);flex:none;font-size:1.8rem;line-height:1}.section-label{width:fit-content;color:var(--color-gold);flex-direction:column;align-items:stretch;display:inline-flex}.section-label__text{letter-spacing:.1em;white-space:nowrap;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.5rem,1.2vw,1.8rem);line-height:1.4}.section-label__decoration{align-items:center;gap:1.2rem;width:100%;margin-top:1.6rem;display:flex}.section-label__line{opacity:.65;background:currentColor;flex:1;height:1px;display:block}.section-label__icon{flex:none;width:24px;height:24px;display:block}.card-slider__footer{justify-content:flex-end;align-items:center;gap:clamp(1.2rem,1.5vw,2rem);margin-top:1.6rem;display:none}@media (scripting:enabled){.card-slider__footer{display:flex}}.card-slider__hint{color:var(--color-gold);font-family:var(--font-serif);letter-spacing:.08em;transition:opacity var(--transition-base), visibility var(--transition-base);align-items:center;gap:.8rem;font-size:clamp(1.2rem,1vw,1.4rem);display:flex}.card-slider__controls{gap:.8rem;display:none}@media (hover:hover) and (pointer:fine){.card-slider__controls{display:flex}}.card-slider__arrow{border:1px solid var(--color-gold);width:3.6rem;height:3.6rem;color:var(--color-gold);background:var(--color-white);font-family:var(--font-serif);transition:background-color var(--transition-base), color var(--transition-base), opacity var(--transition-base);border-radius:50%;place-items:center;font-size:1.6rem;line-height:1;display:grid}.card-slider__arrow:hover:not(:disabled){color:var(--color-white);background:var(--color-gold)}.card-slider__arrow:disabled{opacity:.35;cursor:default}[data-card-slider].is-static .card-slider__footer{display:none}.card-slider__hint-arrow{line-height:1;animation:2s ease-in-out infinite card-slider-hint-arrow}[data-card-slider].is-hint-hidden .card-slider__hint{opacity:0;visibility:hidden}@keyframes card-slider-hint-arrow{0%,to{transform:translate(0)}50%{transform:translate(.6rem)}}.click-effect-layer{z-index:60;pointer-events:none;position:fixed;inset:0;overflow:hidden}.click-effect{left:var(--effect-x);top:var(--effect-y);width:var(--effect-size);pointer-events:none;will-change:transform, opacity;background-position:50%;background-repeat:no-repeat;background-size:contain;position:absolute}.click-effect--strawberry{aspect-ratio:400/494.21;background-image:url(/images/effect/effect-strawberry.svg)}.click-effect--tomato{aspect-ratio:400/405.12;background-image:url(/images/effect/effect-tomato.svg)}.click-effect--light{aspect-ratio:400/542.1;background-image:url(/images/effect/effect-light.svg)}.click-effect--fruit{animation:click-effect-fruit var(--effect-duration) var(--effect-delay,0s) both}.click-effect--light{animation:click-effect-light var(--effect-duration) forwards}@keyframes click-effect-fruit{0%{opacity:0;animation-timing-function:cubic-bezier(.18,.9,.32,1.4);transform:translate(-50%,-50%)rotate(0)scale(.55)}16%{opacity:1;transform:translate3d(calc(-50% + var(--effect-drift-x-start)), calc(-50% + var(--effect-jump-y-partial)), 0) rotate(0deg) scale(1.06);animation-timing-function:cubic-bezier(.25,.76,.4,1)}48%{opacity:1;transform:translate3d(calc(-50% + var(--effect-drift-x-middle)), calc(-50% + var(--effect-jump-y)), 0) rotate(var(--effect-rotate-mid)) scale(1);animation-timing-function:cubic-bezier(.55,.06,.68,.44)}to{opacity:0;transform:translate3d(calc(-50% + var(--effect-drift-x)), calc(-50% + var(--effect-fall-y)), 0) rotate(var(--effect-rotate-end)) scale(.86)}}@keyframes click-effect-light{0%{opacity:0;animation-timing-function:cubic-bezier(.16,1.1,.3,1.5);transform:translate(-50%,-50%)scale(.2)}26%{opacity:1;animation-timing-function:cubic-bezier(.36,0,.66,-.2);transform:translate(-50%,-50%)scale(1.28)}52%{opacity:.92;animation-timing-function:ease-out;transform:translate(-50%,-50%)scale(.92)}to{opacity:0;transform:translate(-50%,-50%)scale(1.18)}}@media (prefers-reduced-motion:reduce){.click-effect-layer{display:none}}@media (max-width:767px){.social-link{font-size:1.4rem}.button{width:100%;min-height:58px;padding:1.2rem 1.8rem;font-size:1.5rem}}
