@charset "utf-8";
.product-feature{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(340px,.8fr);gap:6vw;align-items:center;margin-top:120px;padding-bottom:120px;border-bottom:1px solid #d8d6d2}
.product-feature__image{display:block;aspect-ratio:4/3;overflow:hidden}.product-feature__image img,.product-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.product-feature__image:hover img,.product-card__image:hover img{transform:scale(1.035)}
.product-eyebrow,.product-route{color:#9a8069;font-family:'Marcellus',serif;font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.product-feature h2{margin:22px 0;font-family:'Marcellus',serif;font-size:clamp(42px,4vw,66px);font-weight:400;line-height:1.05}.product-feature__copy>p:not(.product-price){line-height:1.9;color:#5e5d5d}
.product-facts{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:24px;color:#777;font-family:'Marcellus',serif;font-size:11px;letter-spacing:.06em}.product-facts span:not(:last-child)::after{content:"/";margin-left:18px;color:#c8c3bc}
.product-price{margin-top:28px;font-family:'Marcellus',serif;font-size:21px;color:#252525}
.product-actions{display:flex;gap:10px;margin-top:30px}.product-actions a{min-height:48px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #252525;font-family:'Marcellus',serif;font-size:12px;letter-spacing:.06em}.product-actions a.primary{background:#252525;color:#fff}.product-actions a:hover{opacity:.72}
.product-index{margin-top:90px;margin-bottom:150px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:70px 32px;margin-top:55px}.product-card{border-bottom:1px solid #d8d6d2;padding-bottom:32px}.product-card__image{position:relative;display:block;aspect-ratio:4/3;overflow:hidden}.product-card__image>span{position:absolute;left:0;bottom:0;padding:8px 13px;background:#fff;color:#8f7259;font-size:11px;letter-spacing:.08em}.product-card__body{padding-top:22px}.product-card h2{margin:10px 0 12px;font-family:'Marcellus',serif;font-size:28px;font-weight:400;line-height:1.25}.product-card__body>p:not(.product-route):not(.product-price){margin-top:18px;color:#666;line-height:1.75;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.product-card .product-actions{flex-direction:column}.product-card .product-actions a{width:100%}
.product-hero{min-height:100vh;padding-top:90px;background:#f6f6f6}.product-hero__image{width:56%;margin-left:auto}.product-hero__image img{width:100%;height:min(67vh,780px);object-fit:cover}.product-hero__copy{margin-top:-22vh;padding-bottom:120px;position:relative}.product-hero__copy h1{max-width:850px;margin:26px 0;font-family:'Marcellus',serif;font-size:clamp(58px,7vw,110px);font-weight:400;line-height:.95}.product-hero__copy>p:last-child{max-width:700px;margin-top:38px;font-size:17px;line-height:1.9}.trip-tag{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}.trip-tag span{padding:8px 11px;background:#fff;color:#6a625a;font-size:11px;letter-spacing:.04em}
.product-detail-page #overview{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;margin-top:150px;position:relative}.product-detail-page #overview .fac-image img{width:100%}.product-detail-page #overview h2{font-family:'Marcellus',serif;font-size:40px;font-weight:400;line-height:1.25}.product-detail-page #overview p{margin-top:28px;line-height:2;color:#555}.product-detail-page #overview>.en-tit{position:absolute;right:0;top:-55px}
.product-detail-page #map-show{margin-top:150px;padding:110px 6vw;background:#f6f6f6;text-align:center}.product-detail-page #map-show .map-img{max-width:1100px;margin:55px auto 0}.product-detail-page #map-show img{max-width:100%}
.product-carousel{padding:135px 0 90px;overflow:hidden}.product-carousel .swiper{margin-top:55px}.product-carousel .swiper-slide{width:min(420px,72vw)}.product-carousel figure{aspect-ratio:4/3;overflow:hidden}.product-carousel figure img{width:100%;height:100%;object-fit:cover}.product-carousel .swiper-slide p{margin-top:18px;font-size:18px}.product-carousel .num{margin-right:12px;color:#9a8069;font-family:'Marcellus',serif}
.core-experiences{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:80px 0 140px}.core-experiences article:nth-child(2){transform:translateY(55px)}.core-experiences img{width:100%;aspect-ratio:4/5;object-fit:cover}.core-experiences h3{margin-top:20px;font-size:17px;font-weight:400;line-height:1.5}
.product-detail-page #gallery{padding:130px 0;background:#f6f6f6}.product-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:60px}.product-gallery a{display:block;aspect-ratio:4/3;overflow:hidden}.product-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.product-gallery a:hover img{transform:scale(1.04)}
.product-detail-page #schedule{padding:140px 0}.itinerary-list{margin-top:60px;border-top:1px solid #d8d6d2}.itinerary-list article{display:grid;grid-template-columns:150px 1fr;gap:55px;padding:42px 0;border-bottom:1px solid #d8d6d2}.itinerary-day{font-family:'Marcellus',serif;font-size:20px;color:#9a8069}.itinerary-list h3{font-family:'Marcellus',serif;font-size:28px;font-weight:400}.itinerary-list dl{display:grid;grid-template-columns:135px 1fr;gap:7px 20px;margin:20px 0;color:#666}.itinerary-list dt{font-size:12px;text-transform:uppercase;letter-spacing:.08em}.itinerary-list p{line-height:1.8;color:#555}
.product-detail-page #plan-detail{padding:135px 0;background:rgba(237,237,237,.4)}.price-panel{margin-top:55px;padding:55px;background:#fff}.price-panel h3{font-family:'Marcellus',serif;font-size:38px;font-weight:400}.price-panel>p{margin-top:10px}.price-panel dl{display:grid;grid-template-columns:190px 1fr;margin-top:35px;border-top:1px solid #e2dfdb}.price-panel dt,.price-panel dd{padding:18px 0;border-bottom:1px solid #e2dfdb}.price-panel dt{font-weight:600}.price-panel dd{line-height:1.7}.price-panel .price{margin-top:32px;font-family:'Marcellus',serif;font-size:26px}.price-panel .price span{font-family:inherit;font-size:15px;color:#777}.price-notes{margin-top:28px;color:#777;font-size:12px;line-height:1.8}
.product-inquiry{padding:130px 0;background:#c2a991;color:#fff}.product-inquiry p{font-size:15px}.product-inquiry h2{max-width:900px;margin-top:16px;font-family:'Marcellus',serif;font-size:clamp(38px,5vw,70px);font-weight:400;line-height:1.05}.product-inquiry a{display:inline-flex;align-items:center;justify-content:center;min-width:220px;min-height:58px;margin-top:42px;background:#fff;color:#111;font-family:'Marcellus',serif;letter-spacing:.08em}
.hachi-contact{position:fixed;right:20px;bottom:32px;z-index:9990;display:flex;flex-direction:column;gap:10px}.hachi-contact a{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;color:#fff;font-size:11px;font-weight:600;box-shadow:0 4px 14px rgba(0,0,0,.16)}.hachi-whatsapp{background:#25d366}.hachi-messenger{background:#0866ff}
@media(max-width:1024px){.product-grid{grid-template-columns:repeat(2,1fr)}.product-feature{grid-template-columns:1.1fr .9fr}.product-hero__copy{margin-top:-12vh}.product-detail-page #overview{gap:5vw}.product-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.product-feature{display:block;margin-top:70px;padding-bottom:75px}.product-feature__copy{margin-top:32px}.product-feature h2{font-size:42px}.product-actions{flex-direction:column}.product-actions a{width:100%}.product-index{margin-top:70px;margin-bottom:90px}.product-grid{grid-template-columns:1fr;gap:55px}.product-hero{min-height:0;padding-top:75px}.product-hero__image{width:100%}.product-hero__image img{height:52vh}.product-hero__copy{margin-top:0;padding-top:40px;padding-bottom:75px}.product-hero__copy h1{font-size:52px}.product-detail-page #overview{display:block;margin-top:80px}.product-detail-page #overview .txt-wrap{margin-top:35px}.product-detail-page #overview h2{font-size:30px}.product-detail-page #map-show{margin-top:80px;padding:75px 6vw}.product-carousel{padding:85px 0 55px}.core-experiences{grid-template-columns:1fr;padding:50px 0 90px}.core-experiences article:nth-child(2){transform:none}.product-detail-page #gallery{padding:85px 0}.product-gallery{grid-template-columns:1fr 1fr;gap:6px}.product-detail-page #schedule{padding:90px 0}.itinerary-list article{grid-template-columns:1fr;gap:14px;padding:32px 0}.itinerary-list dl{grid-template-columns:1fr;gap:4px}.price-panel{padding:28px 20px}.price-panel dl{grid-template-columns:1fr}.price-panel dt{padding-bottom:4px;border-bottom:0}.price-panel dd{padding-top:4px}.price-panel .price{font-size:22px}.product-inquiry{padding:85px 0}.hachi-contact{right:12px;bottom:22px}}
