*{box-sizing:border-box}body{color:#17211b;background:#f4f7f6;margin:0;font-family:-apple-system,BlinkMacSystemFont,Noto Sans JP,sans-serif}main{max-width:1100px;margin:auto;padding:24px 16px}header{justify-content:space-between;align-items:flex-end;margin-bottom:18px;display:flex}h1,h2,h3,h4,p{margin-top:0}.eyebrow{letter-spacing:.15em;color:#27785c;margin-bottom:6px;font-size:.72rem;font-weight:800}h1{margin-bottom:4px;font-size:2rem}.date-chip{color:#fff;background:#163d31;border-radius:999px;padding:10px 15px;font-weight:700}.panel{background:#fff;border:1px solid #d9e4dd;border-radius:18px;margin-bottom:18px;padding:20px;box-shadow:0 8px 25px #173b2b0a}.form-panel{border-top:5px solid #27785c}.entry-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.entry-grid label,.filters label{font-size:.82rem;font-weight:700}.entry-grid input,.entry-grid select,.filters input,.filters select{background:#fff;border:1px solid #bfcfc5;border-radius:9px;width:100%;margin-top:6px;padding:11px;font-size:1rem;display:block}.primary{color:#fff;cursor:pointer;background:#27785c;border:0;border-radius:9px;align-self:end;padding:12px;font-weight:800}.primary:disabled{opacity:.65;cursor:wait}.section-title{justify-content:space-between;align-items:center;display:flex}.section-title h2{margin-bottom:0}.filters{grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0;display:grid}.schedule-filters{grid-template-columns:repeat(2,minmax(0,1fr));max-width:560px}.transport-tabs{grid-template-columns:1fr 1fr;gap:8px;margin:18px 0 4px;display:grid}.transport-tabs button{color:#174638;cursor:pointer;background:#f5faf7;border:1px solid #b9cfc3;border-radius:10px;padding:14px;font-size:1.1rem;font-weight:800}.transport-tabs button.selected{color:#fff;border-color:#0000}.transport-tabs .pickup-tab.selected{background:#17734e}.transport-tabs .dropoff-tab.selected{background:#a55b1d}.schedule-table-wrap{margin-top:10px;overflow-x:auto}.schedule-table{border-collapse:collapse;width:100%;min-width:680px}.schedule-table th,.schedule-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #e3ebe6;padding:12px 10px}.schedule-table th{color:#174638;background:#edf6f0}.schedule-table tbody tr:hover{background:#f8fcf9}.schedule-time{color:#173d32;font-size:1.12rem;font-weight:800}.hour-tabs{z-index:10;background:#fff;border-bottom:1px solid #d9e4dd;grid-template-columns:repeat(auto-fit,minmax(52px,1fr));gap:6px;padding:8px 0;display:grid;position:sticky;top:0}.hour-tabs a{text-align:center;color:#174638;border:1px solid #b9cfc3;border-radius:8px;padding:8px 3px;font-size:.86rem;font-weight:800;text-decoration:none}.hour-tabs a.active,.hour-tabs a:hover{color:#fff;background:#27785c}.time-group{scroll-margin-top:100px}.time-heading{color:#fff;background:#173d32;border-radius:12px 12px 0 0;align-items:center;gap:16px;margin-top:16px;padding:13px 16px;display:flex}.time-heading strong{font-size:1.5rem}.hotel-card{background:#f8fbf9;border:1px solid #d9e4dd;border-radius:0 0 12px 12px;margin-bottom:10px;padding:14px}.hotel-card+.hotel-card{border-radius:12px;margin-top:10px}.hotel-card h3{color:#174638;margin-bottom:10px}.transport-block{background:#fff;border-radius:10px;margin-top:10px;padding:10px}.transport-block h4{margin-bottom:8px}.pickup{color:#17734e}.dropoff{color:#a55b1d}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #e3ebe6;padding:8px}th{background:#f0f6f2;font-size:.85rem}.notice{background:#fff4c9;border-radius:9px;padding:12px}.muted,.empty{color:#83938a}.empty{text-align:center;padding:35px}.page-links{text-align:center;margin:20px 0}.page-links a{color:#17634c;background:#fff;border:1px solid #b9cfc3;border-radius:10px;padding:12px 18px;font-weight:800;text-decoration:none;display:inline-block}.page-links a:hover{background:#eef7f1}@media (width<=700px){main{padding:16px 10px}header{flex-direction:column;align-items:flex-start;gap:12px}h1{font-size:1.6rem}.entry-grid,.filters,.schedule-filters{grid-template-columns:1fr}.primary{grid-column:span 1}.time-heading{flex-direction:column;align-items:flex-start;gap:2px}}@media print{body,main{background:#fff}.entry-grid,.filters,.hour-tabs,.transport-tabs{display:none}.panel{box-shadow:none;border:0;padding:0}.hotel-card,.time-group{break-inside:avoid}}.development-banner{z-index:1000;color:#3d3100;text-align:center;background:#ffd84d;border-bottom:2px solid #b98b00;padding:10px 16px;font-size:.95rem;font-weight:900;display:none;position:sticky;top:0}.development-host .development-banner{display:block}.schedule-menu-page{max-width:880px;min-height:100vh;padding-top:36px}.schedule-menu-header{align-items:center;margin-bottom:28px}.schedule-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.schedule-menu-card{color:#17211b;background:#fff;border:1px solid #d9e4dd;border-left:7px solid #27785c;border-radius:18px;grid-template-rows:auto auto;grid-template-columns:64px 1fr;align-items:center;gap:4px 16px;min-height:150px;padding:22px;text-decoration:none;transition:transform .15s,box-shadow .15s;display:grid;box-shadow:0 10px 28px #173b2b12}.schedule-menu-card:hover,.schedule-menu-card:focus-visible{outline-offset:2px;outline:3px solid #9cd8c1;transform:translateY(-2px);box-shadow:0 14px 32px #173b2b20}.schedule-menu-card img{object-fit:cover;border-radius:14px;grid-row:1/3;width:64px;height:64px}.schedule-menu-copy{flex-direction:column;min-width:0;display:flex}.schedule-menu-copy strong{font-size:1.2rem;line-height:1.35}.schedule-menu-copy small{color:#718078;margin-top:3px;font-size:.78rem}.schedule-menu-action{color:#17634c;align-self:end;font-weight:900}.schedule-menu-action span{vertical-align:-.08em;font-size:1.4rem}.schedule-menu-card.park{border-left-color:#2776a4}.schedule-menu-card.garden{border-left-color:#63833d}.schedule-menu-card.sanmalte{border-left-color:#8f5c2d}@media (width<=700px){.schedule-menu-page{padding-top:20px}.schedule-menu-header{gap:8px;margin-bottom:18px}.schedule-menu-grid{grid-template-columns:1fr;gap:12px}.schedule-menu-card{grid-template-columns:54px 1fr;min-height:116px;padding:16px}.schedule-menu-card img{width:54px;height:54px}.schedule-menu-copy strong{font-size:1.08rem}.schedule-menu-action{font-size:.92rem}}
