:root{--ink:#233c43;--muted:#606d6b;--paper:#fcfaf6;--cream:#f2eee6;--line:#dbded5;--red:#a52e26;--green:#53665a;--gold:#87704a;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font-size:15px;line-height:1.9}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button,a,summary,select{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #2679a0;outline-offset:4px}img{display:block;max-width:100%;height:auto}p,h1,h2,h3,figure{margin:0}p+p{margin-top:14px}h1,h2,h3,.serif{font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif CJK JP",Georgia,serif;font-weight:400}h1{font-size:clamp(35px,3.5vw,55px);line-height:1.55;letter-spacing:.045em}h2{font-size:clamp(28px,2.7vw,40px);line-height:1.6;letter-spacing:.035em}h3{font-size:24px;line-height:1.55}small,.small{font-size:12px;line-height:1.8}.muted{color:var(--muted)}.wrap{max-width:1200px;margin:auto;width:calc(100% - 80px)}.section{padding:104px 0}.eyebrow{font-size:11px;letter-spacing:.19em;font-weight:600;color:var(--gold);margin-bottom:18px}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:white;padding:12px;z-index:100}.preview-bar{padding:8px 20px;text-align:center;background:#ece8df;color:#605744;font-size:11px;letter-spacing:.04em}.preview-bar b{font-size:10px;letter-spacing:.16em;margin-right:16px}.site-header{position:sticky;top:0;z-index:20;background:rgba(252,250,246,.97);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:28px;min-height:83px}.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}.brand-seal{display:grid;place-items:center;width:36px;height:36px;border:1px solid #8f998e;border-radius:50%;font-family:serif;font-size:21px;color:#486252}.brand-name{font-family:"Yu Mincho",serif;font-size:20px;letter-spacing:.13em;line-height:1.2}.brand small{display:block;font-size:8px;letter-spacing:.19em;margin-top:6px;color:var(--muted)}.desktop-nav{display:flex;gap:26px;margin-left:auto;font-size:12px}.desktop-nav a{padding:14px 0}.desktop-nav a:hover{color:var(--red)}.language{position:relative;display:flex;align-items:center;gap:6px;margin-left:auto}.language .globe{font-size:18px}.language select{background:transparent;border:0;padding:10px 17px 10px 3px;font-size:12px;min-height:44px;max-width:100px}.mobile-menu{display:none}.hero{display:grid;grid-template-columns:47% 53%;min-height:700px;max-width:1560px;margin:auto}.hero-copy{padding:84px 54px 60px max(40px,calc((100vw - 1200px)/2));display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.hero-name{font-size:13px;letter-spacing:.07em;margin-bottom:24px}.hero-copy h1{margin-bottom:27px}.hero-copy .lead{max-width:390px;font-size:14px;line-height:2.1;color:var(--muted)}.hero-copy .eyebrow{margin-bottom:22px}.hero-buttons{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:52px;padding:12px 24px;background:var(--ink);color:white;border:1px solid var(--ink);font-size:13px;letter-spacing:.04em;border-radius:0}.button:hover{background:#3d565b}.button.outline{background:transparent;color:var(--ink);border-color:#9caaa5}.button.outline:hover{background:var(--cream)}.text-link{font-size:13px;border-bottom:1px solid #9baba7;padding:7px 0}.hero-copy .preparing{margin-top:24px;font-size:11px;color:var(--muted)}.hero-photo{position:relative;min-width:0;margin:22px 22px 22px 0}.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:50% 63%;max-height:750px}.hero-photo figcaption{position:absolute;bottom:19px;left:22px;right:22px;display:flex;justify-content:space-between;color:white;text-shadow:0 1px 7px #111;font-size:11px;letter-spacing:.1em}.hero-photo:after{content:"";position:absolute;bottom:0;left:0;right:0;height:100px;background:linear-gradient(transparent,#101a1b55);pointer-events:none}.hero-photo figcaption{z-index:1}.facts{display:grid;grid-template-columns:repeat(3,1fr);padding:28px 0;border-bottom:1px solid var(--line)}.facts div{display:flex;flex-direction:column;gap:3px;padding:0 36px;border-right:1px solid var(--line)}.facts div:first-child{padding-left:0}.facts div:last-child{border:0}.facts b{font-size:12px;font-weight:500}.facts span{font-size:10px;color:var(--muted);letter-spacing:.08em}.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.intro p{color:var(--muted)}.intro .eyebrow{color:var(--gold)}.intro h2{max-width:500px}.intro-copy{padding-top:38px}.chapter-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:38px}.chapter-head .muted{max-width:380px;font-size:13px}.plans{background:var(--cream)}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.plan-card{background:var(--paper)}.plan-card>img{width:100%;height:320px;object-fit:cover;object-position:50% 66%}.plan-copy{padding:34px 36px}.plan-title{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px}.index{font:italic 32px Georgia,serif;color:#87948a}.plan-copy p{font-size:14px;color:var(--muted)}.plan-details{display:flex;flex-wrap:wrap;gap:7px;margin:23px 0}.plan-details span{font-size:11px;padding:4px 10px;border:1px solid var(--line)}.plan-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:20px;font-size:12px}.status{font-size:10px;letter-spacing:.06em;color:#645739;border:1px solid #b5aa92;background:#f6f1e7;display:inline-block;padding:3px 10px;white-space:nowrap}.horse{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.horse-art{padding:55px;background:#e9eee7;min-height:440px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border:1px solid #d8dfd4}.horse-art .word{font:42px Georgia,serif;letter-spacing:.03em}.horse-art .cross{font:32px Georgia,serif;margin:12px 0;color:#8a9784}.horse-art .eyebrow{margin-bottom:35px}.horse-art .small{color:var(--muted);max-width:270px;margin-top:32px}.horse-copy h2{margin:20px 0}.horse-copy p{color:var(--muted);font-size:14px}.horse-copy .text-link{display:inline-block;margin-top:22px}.stay{background:#edf1f0}.stay-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.stay-card img{width:100%;height:220px;object-fit:cover}.stay-card h3{font-size:23px;margin:24px 0 13px}.stay-card p{font-size:13px;color:var(--muted)}.stay-card .text-link{display:inline-block;margin-top:17px}.occasion-art{height:220px;background:#e2d7c5;display:flex;align-items:center;justify-content:center;text-align:center;color:#735d3b;flex-direction:column}.occasion-art span{font:italic 44px Georgia,serif;line-height:1.15}.occasion-art small{margin-top:15px;letter-spacing:.17em;font-size:9px}.stay-note{border-top:1px solid #cdd6d2;margin-top:37px;padding-top:22px;font-size:12px;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:18px}.gallery-button{display:block;width:100%;background:none;border:0;text-align:left;padding:0}.gallery-button img{width:100%;height:360px;object-fit:cover;object-position:50% 63%;transition:filter .2s}.gallery-button:hover img{filter:brightness(1.05)}.gallery-button span{font-size:11px;color:var(--muted);display:flex;justify-content:space-between;padding-top:12px}.journey{border-top:1px solid var(--line);padding-top:65px;margin-top:80px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;list-style:none;padding:0;margin:35px 0 0}.steps li{border-top:1px solid #b1bdb5;padding-top:24px}.steps .index{font-size:24px}.steps h3{font-size:21px;margin:10px 0}.steps p{font-size:13px;color:var(--muted)}.faq-section{background:#f3f0e9}.faq-layout{display:grid;grid-template-columns:1fr 1.7fr;gap:80px}.faq details{border-top:1px solid #d4d9d0}.faq details:last-child{border-bottom:1px solid #d4d9d0}.faq summary{list-style:none;cursor:pointer;padding:23px 30px 23px 0;font-size:14px;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:5px;font-size:20px;top:18px;font-weight:300}.faq details[open] summary:after{content:"−"}.faq details p{font-size:13px;color:var(--muted);padding:0 26px 24px 0}.inquiry-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:80px}.inquiry-copy h2{margin-bottom:22px}.inquiry-copy>p{font-size:14px;color:var(--muted)}.address{margin-top:40px;padding-top:24px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.address b{display:block;font-weight:500;color:var(--ink);font-size:15px}.address a{display:inline-block;margin-top:12px;font-size:23px;font-family:Georgia,serif}.form-note{background:#edf1eb;padding:18px 20px;font-size:12px;color:#485d4f;margin-bottom:25px;border-left:2px solid #82957d}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:7px;font-size:12px;min-width:0}.field.full{grid-column:1/-1}.field span.required{color:var(--red);font-size:10px;margin-left:8px}.field input,.field select,.field textarea{width:100%;min-height:49px;background:transparent;border:1px solid #bcc8c1;padding:10px 12px;border-radius:0;font-size:16px}.field textarea{resize:vertical;min-height:125px}.field small{font-size:10px;color:var(--muted)}.check{display:flex;align-items:flex-start;gap:10px;font-size:12px;margin:24px 0}.check input{width:18px;height:18px;flex-shrink:0;margin-top:3px;accent-color:var(--green)}.privacy-note{font-size:11px;color:var(--muted);margin:18px 0}.form-actions{display:flex;gap:14px;flex-wrap:wrap}.form-confirm{border:1px solid #c8d3ca;padding:26px;background:#f3f6f0;margin-top:25px}.form-confirm h3{font-size:22px;margin-bottom:10px}.form-confirm p{font-size:12px;color:var(--muted)}.form-confirm textarea{width:100%;height:250px;background:var(--paper);border:1px solid var(--line);padding:14px;font-size:13px;line-height:1.8;margin:18px 0;resize:vertical}.copy-status{min-height:25px;font-size:12px}.footer{padding:42px 0;background:#e8ede7;border-top:1px solid #d8dfd5}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-links{display:flex;gap:22px;font-size:12px}.footer-bottom{font-size:10px;color:var(--muted);margin-top:30px;padding-top:20px;border-top:1px solid #cdd6cb;display:flex;justify-content:space-between;gap:28px}.footer-bottom p{max-width:690px}.lightbox{padding:0;border:0;background:var(--paper);max-width:min(94vw,1000px);max-height:92vh;overflow:auto}.lightbox::backdrop{background:#162427dd}.lightbox img{max-height:77vh;width:auto;margin:auto}.lightbox-bar{padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px}.lightbox-close{background:transparent;border:1px solid #829487;padding:8px 14px;min-width:44px;min-height:44px}.mobile-cta{display:none}[hidden]{display:none!important}.noscript{padding:20px;background:#fff4d7}.breadcrumb{display:flex;flex-wrap:wrap;gap:10px;font-size:10px;color:var(--muted);margin-bottom:24px}.hero-english h1{letter-spacing:0;line-height:1.25;font-size:clamp(42px,4.2vw,65px)}
@media(min-width:1560px){.hero-copy{padding-left:100px}}@media(max-width:1100px){.wrap{width:calc(100% - 48px)}.desktop-nav{gap:17px}.header-inner{gap:16px}.hero-copy{padding:48px 32px}.hero{min-height:620px}.hero-photo{margin:16px 16px 16px 0}.hero h1{font-size:38px}.hero-english h1{font-size:48px}.intro,.horse,.inquiry-layout,.faq-layout{gap:42px}.horse-art{padding:30px}.horse-art .word{font-size:34px}.plan-copy{padding:26px}.section{padding:80px 0}.gallery-button img{height:300px}}
@media(max-width:760px){html{scroll-padding-top:85px}.wrap{width:calc(100% - 40px)}body{font-size:14px}.preview-bar{font-size:10px;padding:7px 10px;line-height:1.6}.preview-bar b{margin-right:8px}.header-inner{min-height:72px;gap:12px}.brand-name{font-size:16px;letter-spacing:.08em}.brand small{font-size:7px}.brand-seal{width:30px;height:30px;font-size:18px}.desktop-nav{display:none}.language{gap:0}.language select{font-size:11px;max-width:88px;padding-right:0}.language .globe{font-size:16px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:46px 24px 36px}.hero-name{font-size:11px;margin-bottom:20px}.hero-copy .eyebrow{font-size:10px;margin-bottom:17px}.hero h1{font-size:36px;line-height:1.5;margin-bottom:19px}.hero-english h1{font-size:45px;line-height:1.2}.hero-copy .lead{font-size:13px;max-width:520px}.hero-buttons{margin-top:23px;gap:20px}.hero-copy .preparing{margin-top:15px;font-size:10px}.button{padding:11px 20px;font-size:12px;gap:24px}.hero-photo{margin:0 16px 16px;height:440px}.hero-photo img{max-height:none;object-position:50% 67%}.hero-photo figcaption{bottom:16px;left:16px;right:16px;font-size:9px}.facts{padding:20px 0}.facts div{padding:0 12px;gap:4px}.facts b{font-size:10px}.facts span{font-size:9px;letter-spacing:0}.section{padding:64px 0}.intro,.horse,.inquiry-layout,.faq-layout{grid-template-columns:1fr;gap:28px}.intro-copy{padding:0}h2{font-size:29px}.intro-copy p{font-size:13px}.chapter-head{display:block;margin-bottom:28px}.chapter-head .muted{margin-top:15px}.plan-grid,.stay-grid{grid-template-columns:1fr;gap:30px}.plan-card>img{height:300px}.plan-copy{padding:25px}.plan-title h3{font-size:23px}.plan-details{margin:18px 0}.horse-art{min-height:330px;order:2}.horse-art .word{font-size:36px}.horse-art .eyebrow{margin-bottom:20px}.horse-art .small{margin-top:22px}.horse-copy h2{margin:18px 0}.stay-card{display:grid;grid-template-columns:1fr;gap:0}.stay-card img,.occasion-art{height:240px}.stay-card h3{margin-top:20px}.stay-note{margin-top:30px}.gallery-grid{grid-template-columns:1fr 1fr;gap:18px 12px}.gallery-button:first-child{grid-column:1/-1}.gallery-button:first-child img{height:360px}.gallery-button img{height:230px}.gallery-button span{font-size:10px}.journey{margin-top:55px;padding-top:45px}.steps{grid-template-columns:1fr;gap:26px;margin-top:28px}.steps li{padding-top:18px}.steps .index{float:left;margin-right:20px;min-height:65px}.steps h3{margin:0 0 8px;font-size:20px}.steps p{margin-left:47px}.faq-layout{gap:25px}.faq summary{font-size:13px;padding:20px 28px 20px 0}.faq details p{font-size:12px}.inquiry-layout{gap:32px}.address{margin-top:25px}.form-grid{gap:18px 14px}.field{font-size:11px}.field:first-child,.field:nth-child(2){grid-column:1/-1}.field input,.field select{min-height:48px}.form-confirm{padding:20px}.footer-top{display:block}.footer-links{margin-top:25px;gap:18px;flex-wrap:wrap}.footer-bottom{display:block;font-size:10px}.footer-bottom>span{display:block;margin-top:16px}.footer{padding:35px 0 100px}.mobile-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;position:fixed;bottom:0;left:0;right:0;padding:11px 18px calc(11px + env(safe-area-inset-bottom));background:rgba(252,250,246,.97);border-top:1px solid #ccd5cd;z-index:19}.mobile-cta span{font-size:10px;line-height:1.6;color:var(--muted)}.mobile-cta .button{min-height:44px;font-size:11px;padding:8px 17px;gap:20px}.breadcrumb{font-size:9px;margin-bottom:20px}}
@media(max-width:370px){.wrap{width:calc(100% - 32px)}.header-inner{gap:5px}.brand{gap:7px}.brand-name{font-size:15px}.brand-seal{width:26px;height:26px}.hero-copy{padding:36px 20px 30px}.hero h1{font-size:31px}.hero-english h1{font-size:39px}.hero-photo{height:380px}.hero-buttons{gap:15px}.text-link{font-size:12px}.facts div{padding:0 8px}.facts b{font-size:9px}.form-grid{grid-template-columns:1fr}.field{grid-column:1/-1}.gallery-button img{height:200px}.footer-links{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{.site-header,.mobile-cta,.hero-buttons,.form-actions{display:none}.section{padding:30px 0}.hero{min-height:500px}.preview-bar{display:block}.lightbox{display:none}}

body[data-lang="ja"] .hero h1{font-size:clamp(32px,3vw,45px)}
@media(max-width:760px){body[data-lang="ja"] .hero h1{font-size:clamp(24px,7.1vw,36px)}}
@media(max-width:760px){.hero-photo{order:0;height:350px;margin:16px 16px 0}.hero-copy{order:1;padding-top:34px}.hero-english h1{font-size:36px}}
@media(max-width:370px){.hero-photo{height:310px}.hero-english h1{font-size:30px}}

.horse-website{margin-top:26px;max-width:100%;gap:14px}.horse-website>span:first-child{min-width:0;overflow-wrap:anywhere}.horse-website>span:last-child{flex-shrink:0}

/* Tax-inclusive photography and conditional passenger experience prices. */
.photography-pricing{background:#f6f1e8;border-top:1px solid var(--line)}.tax-label{font-size:12px;color:var(--muted);padding:8px 12px;border:1px solid #c8c0af}.photo-rates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.photo-rate{background:var(--paper);border-top:3px solid var(--red);padding:28px 25px;display:flex;flex-direction:column;align-items:flex-start}.rate-duration{font-size:12px;letter-spacing:.05em;color:var(--muted);margin-bottom:12px}.photo-rate h3{font-size:23px;line-height:1.5;min-height:70px}.rate-amount{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:18px 0 22px}.rate-amount strong{font:36px/1.2 Georgia,serif;color:var(--red);font-weight:400;white-space:nowrap}.rate-amount span{font-size:12px;color:var(--muted)}.photo-rate .text-link{margin-top:auto}.pricing-note{font-size:12px;color:var(--muted);margin-top:20px}.passenger-rates{margin-top:36px;border:1px solid #c8c9bd;display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:28px}.passenger-rates h3{font-size:23px;line-height:1.5}.passenger-amounts{display:flex;flex-direction:column;gap:8px;font-size:13px;margin-top:16px}.passenger-amounts b{font:24px Georgia,serif;margin:0 5px;white-space:nowrap}.ride-tax{font-size:11px;color:var(--muted);margin-top:8px}.passenger-condition{border-left:1px solid #c8c9bd;padding-left:28px;font-size:12px}.passenger-condition strong{font-weight:600;color:var(--ink)}.passenger-condition p+p{margin-top:10px;color:var(--muted)}.passenger-condition .text-link{display:inline-block;margin-top:12px}
@media(max-width:1000px){.photo-rates{gap:14px}.photo-rate{padding:24px 20px}.photo-rate h3{font-size:21px}.rate-amount strong{font-size:32px}}
@media(max-width:760px){.tax-label{display:inline-block;margin-top:18px}.photo-rates{grid-template-columns:1fr;gap:18px}.photo-rate h3{min-height:0;font-size:24px}.photo-rate{padding:24px}.rate-amount{margin:14px 0 18px}.rate-amount strong{font-size:36px}.passenger-rates{grid-template-columns:1fr;gap:22px;padding:24px;margin-top:28px}.passenger-condition{border-left:0;border-top:1px solid #c8c9bd;padding:20px 0 0}.passenger-rates h3{font-size:22px}.passenger-amounts{font-size:12px}.passenger-amounts b{font-size:23px}}
