{"id":2653,"date":"2026-10-07T14:00:49","date_gmt":"2026-10-07T05:00:49","guid":{"rendered":"https:\/\/hotel-ishigaki.com\/bike_rental-2\/"},"modified":"2026-10-07T16:59:46","modified_gmt":"2026-10-07T07:59:46","slug":"bike_rental","status":"publish","type":"page","link":"https:\/\/hotel-ishigaki.com\/de\/bike_rental\/","title":{"rendered":"BIKE (DE)"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"2653\" class=\"elementor elementor-2653\" data-elementor-settings=\"{&quot;ha_cmc_init_switcher&quot;:&quot;no&quot;}\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-474ac076 elementor-section-full_width elementor-section-stretched elementor-section-height-min-height elementor-section-height-default elementor-section-items-middle\" data-id=\"474ac076\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;stretch_section&quot;:&quot;section-stretched&quot;,&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;none&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t\t<div class=\"elementor-background-overlay\"><\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-no\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-24f40cb5\" data-id=\"24f40cb5\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-f4a63b9 igb-heroen elementor-widget elementor-widget-heading\" data-id=\"f4a63b9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h4 class=\"elementor-heading-title elementor-size-default\">Bike Rental<\/h4>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-igbhero2 igb-herosub elementor-widget elementor-widget-heading\" data-id=\"igbhero2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Ishigaki ganz entspannt mit dem Fahrrad entdecken.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-igbintro elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"igbintro\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-9285ebb\" data-id=\"9285ebb\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-igbcss elementor-widget elementor-widget-html\" data-id=\"igbcss\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- IG bike page css v2.0.0 -->\n<style>\n.igb-photo.igb-photo img{width:100%!important;height:auto!important;aspect-ratio:16\/9;object-fit:cover;object-position:center;display:block;border-radius:12px}\n.igb-jp .elementor-heading-title,.igb-jp.elementor-widget-text-editor,.igb-jp .elementor-widget-container,.igb-jpf{font-family:\"Zen Maru Gothic\",\"Noto Sans JP\",sans-serif!important}\n.igb-btnf .elementor-button{font-family:\"Josefin Sans\",\"Zen Maru Gothic\",\"Noto Sans JP\",sans-serif!important}\n.igb-herosub .elementor-heading-title{font-family:\"Zen Maru Gothic\",\"Noto Sans JP\",sans-serif!important}\n.igb-heroen .elementor-heading-title{font-family:\"Josefin Sans\",\"Zen Maru Gothic\",\"Noto Sans JP\",sans-serif!important}\n.igb-jp .elementor-widget-container a{color:#A9707D}\n.igb-nw{white-space:nowrap}\n.igb-herosub .elementor-heading-title{text-shadow:0 1px 3px rgba(0,0,0,.55),0 0 18px rgba(0,0,0,.45)!important}\n.igb-heroen .elementor-heading-title{text-shadow:0 1px 4px rgba(0,0,0,.35),0 0 20px rgba(0,0,0,.35)!important}\n@media (max-width:767px){.igb-herosub{padding:0 22px}.igb-herosub .elementor-heading-title{word-break:keep-all;overflow-wrap:anywhere}}\n@media (max-width:600px){.igb-rules-card{padding:6px 18px!important;border-radius:14px!important}}\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-33ef0e4 elementor-widget elementor-widget-heading\" data-id=\"33ef0e4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Bike Rental<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f5a8ecb igb-jp elementor-widget elementor-widget-heading\" data-id=\"f5a8ecb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Fahrradverleih f\u00fcr unsere G\u00e4ste<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5740225 igb-jp elementor-widget elementor-widget-text-editor\" data-id=\"5740225\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\tDas Hotel Ishigaki &amp; Chikonkiya bietet seinen G\u00e4sten Leihfahrr\u00e4der an.<br>Ob zum F\u00e4hrterminal, ins Stadtzentrum oder entlang der K\u00fcste \u2013 erkunden Sie die Insel Ishigaki in aller Ruhe.\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-igbphoto elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"igbphoto\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-c0bb7a1\" data-id=\"c0bb7a1\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-4f8f0b9 igb-photo elementor-widget elementor-widget-image\" data-id=\"4f8f0b9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"800\" height=\"450\" src=\"https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2026\/09\/ig-city-bike-169-1024x576.webp\" class=\"attachment-large size-large wp-image-1937\" alt=\"Citybike (Fahrradverleih)\" srcset=\"https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2026\/09\/ig-city-bike-169-1024x576.webp 1024w, https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2026\/09\/ig-city-bike-169-300x169.webp 300w, https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2026\/09\/ig-city-bike-169-768x432.webp 768w, https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2026\/09\/ig-city-bike-169-1536x864.webp 1536w, https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2026\/09\/ig-city-bike-169.webp 2000w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a7ecd83 igb-jp elementor-widget elementor-widget-heading\" data-id=\"a7ecd83\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Citybike<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7010b20 igb-jp elementor-widget elementor-widget-text-editor\" data-id=\"7010b20\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\tIdeal f\u00fcr Wege durch die Stadt.<br>Bis zu 3 Stunden kostenlos (einmal pro Tag).<br><small style=\"color:#7A7A7A\">* Ohne Elektrounterst\u00fctzung<\/small>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-0be0b24\" data-id=\"0be0b24\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-55ab868 igb-photo elementor-widget elementor-widget-image\" data-id=\"55ab868\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"800\" height=\"450\" src=\"https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2026\/09\/ig-cross-bike-169-1024x576.webp\" class=\"attachment-large size-large wp-image-1938\" alt=\"Crossbike (Fahrradverleih)\" srcset=\"https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2026\/09\/ig-cross-bike-169-1024x576.webp 1024w, https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2026\/09\/ig-cross-bike-169-300x169.webp 300w, https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2026\/09\/ig-cross-bike-169-768x432.webp 768w, https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2026\/09\/ig-cross-bike-169-1536x864.webp 1536w, https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2026\/09\/ig-cross-bike-169.webp 2000w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0a92f5e igb-jp elementor-widget elementor-widget-heading\" data-id=\"0a92f5e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Crossbike<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c195e44 igb-jp elementor-widget elementor-widget-text-editor\" data-id=\"c195e44\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\tLeichter und flotter \u2013 f\u00fcr etwas weitere Strecken.<br>Ideal f\u00fcr Radtouren entlang der K\u00fcste.<br><small style=\"color:#7A7A7A\">* Ohne Elektrounterst\u00fctzung<\/small>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-igbpricesec elementor-section-full_width igb-sec-price elementor-section-height-default elementor-section-height-default\" data-id=\"igbpricesec\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-b5e22f8\" data-id=\"b5e22f8\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-9ed0726 elementor-widget elementor-widget-heading\" data-id=\"9ed0726\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Price<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3a2abc7 igb-jp elementor-widget elementor-widget-heading\" data-id=\"3a2abc7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Preise (inkl. Steuern)<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-igbprice elementor-widget elementor-widget-html\" data-id=\"igbprice\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- IG bike price table v2.2.0 -->\n<div class=\"igb-price igb-jpf\">\n<style>\n\/* v2.1.0 \u65b0\u30c8\u30f3\u30de\u30ca: \u767d\u3044\u89d2\u4e38\u30ab\u30fc\u30c9\uff08\u67a0\u7dda\u306a\u3057\u30fb\u6de1\u3044\u5f71\uff09\u30fb\u898b\u51fa\u3057\u884c\u306f\u6de1\u30d4\u30f3\u30af\u30fb\u91d1\u984d\u306f Josefin Sans *\/\n.igb-price{max-width:820px;margin:0 auto;color:#54595F;font-size:16px;line-height:1.7}\n.igb-price .igb-price-card{background:#fff;border-radius:16px;box-shadow:0 10px 30px rgba(169,112,125,.10);overflow:hidden}\n.igb-price table{width:100%;border-collapse:collapse;background:#fff;border:0;margin:0}\n.igb-price th,.igb-price td{padding:16px 16px;border:0;border-bottom:1px solid #F3E9EC;text-align:center;vertical-align:middle}\n.igb-price thead th{background:#FCEFF3;color:#54595F;font-weight:700;font-size:15px;letter-spacing:.04em}\n.igb-price tbody th{text-align:left;font-weight:700;background:#fff;width:40%;padding-left:24px}\n.igb-price tbody th small{display:block;font-weight:500;font-size:12.5px;color:#7A7A7A}\n.igb-price td{font-family:\"Josefin Sans\",sans-serif;font-weight:400;font-size:20px;letter-spacing:.04em}\n.igb-price td.free{font-family:inherit;font-weight:700;font-size:17px;letter-spacing:0;color:#A9707D}\n.igb-price td.free small{display:block;font-weight:500;font-size:12px;color:#7A7A7A;font-family:inherit}\n.igb-price td.formula{font-family:inherit;font-weight:500;font-size:14.5px;letter-spacing:0}\n.igb-price tr:last-child th,.igb-price tr:last-child td{border-bottom:0}\n.igb-price ul{margin:20px 0 0;padding-left:1.3em;font-size:14px;color:#54595F;line-height:1.8}\n.igb-price li{margin:4px 0}\n.igb-price li::marker{color:#CB98A1}\n@media (max-width:600px){\n  .igb-price{font-size:14px}\n  .igb-price .igb-price-card{border-radius:14px}\n  .igb-price th,.igb-price td{padding:12px 8px}\n  .igb-price thead th{font-size:12px;letter-spacing:0;padding:12px 4px;word-break:keep-all}\n  .igb-price tbody th{width:38%;font-size:13.5px;padding-left:14px}\n  .igb-price td{font-size:17px}\n  .igb-price td.free{font-size:15px}\n  .igb-price td.formula{font-size:12.5px}\n}\n<\/style>\n<div class=\"igb-price-card\"><table>\n<thead><tr><th>Tarif<\/th><th>Citybike<\/th><th>Crossbike<\/th><\/tr><\/thead>\n<tbody>\n<tr><th>Bis zu 3 Stunden<small>R\u00fcckgabe am selben Tag<\/small><\/th><td class=\"free\">Kostenlos<small>einmal pro Tag, einmal pro Gast<\/small><\/td><td>\u00a51.000<\/td><\/tr>\n<tr><th>Ganzer Tag<small>\u00fcber 3 Stunden, bis <span class=\"igb-nw\">23:00 Uhr<\/span><\/small><\/th><td>\u00a51.000<\/td><td>\u00a51.500<\/td><\/tr>\n<tr><th>2 Tage<\/th><td>\u00a51.500<\/td><td>\u00a52.000<\/td><\/tr>\n<tr><th>3 Tage<\/th><td>\u00a52.000<\/td><td>\u00a52.500<\/td><\/tr>\n<tr><th>Ab 4 Tagen<\/th><td class=\"formula\">3-Tages-Preis <span class=\"igb-nw\">+ \u00a51.000<\/span> pro Tag<\/td><td class=\"formula\">3-Tages-Preis <span class=\"igb-nw\">+ \u00a51.500<\/span> pro Tag<\/td><\/tr>\n<\/tbody>\n<\/table><\/div>\n<ul>\n<li>Alle Preise gelten pro Fahrrad und enthalten die Steuern. Die Miettage m\u00fcssen nicht aufeinanderfolgen; solange sie innerhalb Ihres Aufenthalts liegen, gilt der Mehrtagestarif.<\/li>\n<li>Kostenlos ist ausschlie\u00dflich die Ausleihe von Citybikes f\u00fcr bis zu 3 Stunden. Ist ein Crossbike dabei, ist die Ausleihe auch unter 3 Stunden kostenpflichtig.<\/li>\n<li>Kostenpflichtige wie kostenlose Tarife k\u00f6nnen auch am selben Tag und kurzfristig angefragt werden (bis 30 Minuten vor Mietbeginn). Kostenpflichtige Tarife werden per Kreditkarte (Stripe) bezahlt; die Buchung ist mit Abschluss der Zahlung best\u00e4tigt.<\/li>\n<li>Weder die Citybikes noch die Crossbikes haben eine Elektrounterst\u00fctzung (nur Muskelkraft).<\/li>\n<\/ul>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-igbrules elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"igbrules\" data-element_type=\"section\" data-e-type=\"section\" id=\"bike-rules\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-989a36e\" data-id=\"989a36e\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-76860cb elementor-widget elementor-widget-heading\" data-id=\"76860cb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Rules<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-59b2cc0 igb-jp elementor-widget elementor-widget-heading\" data-id=\"59b2cc0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Mietbedingungen<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d1cad39 igb-jp elementor-widget elementor-widget-text-editor\" data-id=\"d1cad39\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<ul class=\"igb-rules-card\" style=\"list-style:none;margin:0 auto;padding:14px 32px;text-align:left;max-width:820px;background:#fff;border-radius:16px;box-shadow:0 10px 30px rgba(169,112,125,.10)\">\n<li style=\"padding:14px 0 14px 1.4em;border-bottom:1px solid #F3E9EC;position:relative\"><span style=\"position:absolute;left:2px;top:1.45em;width:7px;height:7px;border-radius:50%;background:#CB98A1\"><\/span><strong style=\"display:block;margin-bottom:2px\">Mietzeiten<\/strong><span class=\"igb-nw\">9:00\u201323:00 Uhr<\/span> (Mietbeginn <span class=\"igb-nw\">9:00\u201320:00 Uhr<\/span>). Die R\u00fcckgabe muss am selben Tag bis <span class=\"igb-nw\">23:00 Uhr<\/span> erfolgen.<\/li>\n<li style=\"padding:14px 0 14px 1.4em;border-bottom:1px solid #F3E9EC;position:relative\"><span style=\"position:absolute;left:2px;top:1.45em;width:7px;height:7px;border-radius:50%;background:#CB98A1\"><\/span><strong style=\"display:block;margin-bottom:2px\">Anfragefrist<\/strong>Kostenpflichtige wie kostenlose Tarife k\u00f6nnen <strong>auch am selben Tag und kurzfristig<\/strong> angefragt werden (<strong>bis 30 Minuten vor Mietbeginn<\/strong>; kostenpflichtige Tarife sind mit Abschluss der Zahlung best\u00e4tigt).<\/li>\n<li style=\"padding:14px 0 14px 1.4em;border-bottom:1px solid #F3E9EC;position:relative\"><span style=\"position:absolute;left:2px;top:1.45em;width:7px;height:7px;border-radius:50%;background:#CB98A1\"><\/span><strong style=\"display:block;margin-bottom:2px\">Mietzeitraum<\/strong>Die Ausleihe ist bereits vor dem <span class=\"igb-nw\">Check-in<\/span> m\u00f6glich. Nach dem <span class=\"igb-nw\">Check-out<\/span> ist keine Ausleihe mehr m\u00f6glich.<\/li>\n<li style=\"padding:14px 0 14px 1.4em;border-bottom:1px solid #F3E9EC;position:relative\"><span style=\"position:absolute;left:2px;top:1.45em;width:7px;height:7px;border-radius:50%;background:#CB98A1\"><\/span><strong style=\"display:block;margin-bottom:2px\">Verf\u00fcgbarkeit<\/strong>Die Anzahl der Fahrr\u00e4der ist begrenzt (die Zahl der verf\u00fcgbaren R\u00e4der kann sich durch Wartung und Reparaturen \u00e4ndern). Farben und Hersteller k\u00f6nnen sich ohne Ank\u00fcndigung \u00e4ndern.<\/li>\n<li style=\"padding:14px 0 14px 1.4em;border-bottom:1px solid #F3E9EC;position:relative\"><span style=\"position:absolute;left:2px;top:1.45em;width:7px;height:7px;border-radius:50%;background:#CB98A1\"><\/span><strong style=\"display:block;margin-bottom:2px\">Fahrradtyp<\/strong>Weder die Citybikes noch die Crossbikes haben eine Elektrounterst\u00fctzung (nur Muskelkraft).<\/li>\n<li style=\"padding:14px 0 14px 1.4em;border-bottom:1px solid #F3E9EC;position:relative\"><span style=\"position:absolute;left:2px;top:1.45em;width:7px;height:7px;border-radius:50%;background:#CB98A1\"><\/span><strong style=\"display:block;margin-bottom:2px\">R\u00fcckgabe<\/strong>Bitte stellen Sie das Fahrrad nach der Nutzung wieder an den daf\u00fcr vorgesehenen Platz auf dem Hotelgel\u00e4nde (links neben dem Geb\u00e4udeeingang).<\/li>\n<li style=\"padding:14px 0 14px 1.4em;border-bottom:1px solid #F3E9EC;position:relative\"><span style=\"position:absolute;left:2px;top:1.45em;width:7px;height:7px;border-radius:50%;background:#CB98A1\"><\/span><strong style=\"display:block;margin-bottom:2px\">Helm &#038; Versicherung<\/strong>Helme werden nicht verliehen, und eine Versicherung ist nicht enthalten. Bitte beachten Sie die Verkehrsregeln und fahren Sie vorsichtig.<\/li>\n<li style=\"padding:14px 0 14px 1.4em;border-bottom:1px solid #F3E9EC;position:relative\"><span style=\"position:absolute;left:2px;top:1.45em;width:7px;height:7px;border-radius:50%;background:#CB98A1\"><\/span><strong style=\"display:block;margin-bottom:2px\">Sch\u00e4den oder Verlust<\/strong>Vors\u00e4tzlich oder fahrl\u00e4ssig verursachte Sch\u00e4den oder Verluste werden zum tats\u00e4chlichen Kostenbetrag berechnet.<\/li>\n<li style=\"padding:14px 0 14px 1.4em;border-bottom:1px solid #F3E9EC;position:relative\"><span style=\"position:absolute;left:2px;top:1.45em;width:7px;height:7px;border-radius:50%;background:#CB98A1\"><\/span><strong style=\"display:block;margin-bottom:2px\">Zustimmung zu den Bedingungen<\/strong>Mit Abschluss der Zahlung erkl\u00e4ren Sie sich mit den Mietbedingungen einverstanden.<\/li>\n<li style=\"padding:14px 0 14px 1.4em;position:relative\"><span style=\"position:absolute;left:2px;top:1.45em;width:7px;height:7px;border-radius:50%;background:#CB98A1\"><\/span><strong style=\"display:block;margin-bottom:2px\">Kontakt<\/strong>Ihre Buchungsdaten und der Schlosscode werden auf dem Anfragebildschirm angezeigt (es wird keine E-Mail versandt). Bei Fragen kontaktieren Sie uns bitte \u00fcber die Nachrichtenfunktion der Website, \u00fcber die Sie gebucht haben (z. B. Booking.com, Airbnb). Wenn Sie \u00fcber unsere offizielle Website gebucht haben, k\u00f6nnen Sie auch auf Ihre Buchungsbest\u00e4tigung per E-Mail antworten.<\/li>\n<\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-igbreserve elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"igbreserve\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7f4409d\" data-id=\"7f4409d\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-87e9507 elementor-widget elementor-widget-heading\" data-id=\"87e9507\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Bike Booking<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-029d0fa igb-jp elementor-widget elementor-widget-heading\" data-id=\"029d0fa\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Anfrageformular<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c8ea81b igb-jp elementor-widget elementor-widget-text-editor\" data-id=\"c8ea81b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\tBitte nutzen Sie das folgende Formular. Ihre Buchungsdaten sowie der Schlosscode (kostenloser Tarif) bzw. der Zahlungslink (kostenpflichtige Tarife) werden auf diesem Bildschirm angezeigt.\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-igbform elementor-widget elementor-widget-html\" data-id=\"igbform\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- IG bike rental form v3.7.0 (de) \u2014 hotel-ishigaki.com\/de\/bike_rental\/ Elementor HTML widget\uff08id igbform\uff09\u3002\u5916\u90e8\u30e9\u30a4\u30d6\u30e9\u30ea\u4e0d\u4f7f\u7528\u30fbjQuery\u975e\u4f9d\u5b58\u3002\n     \u751f\u6210\u5143: form_template.html + form_i18n.py \u2192 build_forms.py\uff08\u76f4\u63a5\u7de8\u96c6\u3057\u306a\u3044\u3002ja\/en\/zh\/ko \u306e4\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\uff09\n     v3.0.0: \u591a\u8a00\u8a9e\u5316\uff08\u6587\u8a00\u3092 L \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306b\u96c6\u7d04\u30fb\u975e\u65e5\u672c\u8a9e\u30da\u30fc\u30b8\u306f GAS \u306e message_en \u3092\u8868\u793a\uff09\u3002\u30ed\u30b8\u30c3\u30af\u306f v2.3.0 \u3068\u540c\u3058\n     v3.1.0: \u9375\u756a\u53f7\u306e\u771f\u4e0a\u306b\u30b9\u30af\u30b7\u30e7\u4fdd\u5b58\u306e\u6ce8\u610f\uff08.igb-shot-top\uff09\u30fb\u9375\u306e\u8eca\u4e21\u540d\u3092 GAS \u306e {code,ja,en,key} \u304b\u3089\u8868\u793a\u30fbPMS\u540d\u306e\u8868\u8a18\u3092\u5168\u5ec3\n     v3.2.0: \u7121\u6599\u30d7\u30e9\u30f3\u3082\u6709\u6599\u3068\u540c\u3058\u304f\u300c\u5229\u7528\u958b\u59cb\u306e30\u5206\u524d\u307e\u3067\u300d\u53d7\u4ed8\uff08\u7de0\u5207\u8868\u793a\u30fb\u30a8\u30e9\u30fc\u6587\u3092\u7d71\u4e00\uff09\n     v3.3.0: \u4e88\u7d04\u30b5\u30a4\u30c8\uff08site\uff09\u30fb\u4e88\u7d04\u756a\u53f7\uff08booking_no\uff09\u6b04\u3092\u8ffd\u52a0\u3002Airbnb\uff0b\u6709\u6599\u306f\u652f\u6255\u30dc\u30bf\u30f3\u3092\u51fa\u3055\u305a GAS \u306e\u6848\u5185\uff0b\u9375\u756a\u53f7\u78ba\u8a8d\u30ea\u30f3\u30af\uff08?check=1&id&k \u2192 bike_status\uff09\u3002Airbnb\uff0b\u7121\u6599\u306f\u5f93\u6765\u3069\u304a\u308a\n     v3.3.1: GAS v1.8.0 \u306e\u78ba\u5b9a\u5951\u7d04\u306b\u5408\u308f\u305b\u3001?id&k \u306e\u72b6\u614b\u8868\u793a\u3092 pending_airbnb\uff0fexpired\uff0fcancelled \u5225\u306e\u6587\u8a00\u306b\n     v3.4.0: \u6709\u6599\uff08\u652f\u6255\u5f85\u3061\uff09\u30fbAirbnb\uff0b\u6709\u6599\u306e\u7533\u8fbc\u5f8c\u753b\u9762\u306e\u898b\u51fa\u3057\u76f4\u4e0b\u306b\u300c\u307e\u3060\u78ba\u5b9a\u3057\u3066\u3044\u307e\u305b\u3093\u300d\u306e\u5f37\u8abf\u67a0\uff08.igb-pending\uff09\u30fb\u898b\u51fa\u3057\u3092\u300c\u304a\u652f\u6255\u3044\u5f85\u3061\u300d\u306b\u3002\u7121\u6599\u30fb?paid=1 \u306f\u5f93\u6765\u3069\u304a\u308a\n     v3.5.0: \u3010\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u3011bike_paid \u306f k \u3060\u3051\u3067\u306f\u78ba\u5b9a\u3057\u306a\u3044\uff08GAS v1.10.0\uff09\u3002?paid=1 \u3067 pending_payment \u306e\u9593\u306f\u300c\u304a\u652f\u6255\u3044\u3092\u78ba\u8a8d\u3057\u3066\u3044\u307e\u3059\u300d\u3092\u51fa\u3057\n             3\u79d2\u3054\u3068\u306b bike_status \u3092\u30dd\u30fc\u30ea\u30f3\u30b0\uff08\u6700\u5927120\u79d2\uff09\u3002paid \u3067\u9375\u756a\u53f7\u8868\u793a\u3001\u6642\u9593\u5207\u308c\u306f\u518d\u8aad\u307f\u8fbc\u307f\u306e\u6848\u5185\uff0b\u72b6\u6cc1\u78ba\u8a8d\u30ea\u30f3\u30af\n     v3.6.0: \u898b\u305f\u76ee\u306e\u307f\u65b0\u30c8\u30f3\u30de\u30ca\u5316\uff08ig-site\/STYLE.md\uff09\u3002Times New Roman \u5168\u5ec3\u2192\u82f1\u5b57\/\u6570\u5b57 Josefin Sans\u30fb\u548c\u6587 Zen Maru Gothic\uff08zh\/ko \u306f data-lang \u5225\u30d5\u30a9\u30fc\u30eb\u30d0\u30c3\u30af\uff09\u30fb\u30ab\u30fc\u30c9\u89d2\u4e3816px\uff0b\u6de1\u3044\u5f71\u30fb\u5165\u529b\u6b0416px\/\u89d2\u4e3810px\u30fb\u30dc\u30bf\u30f3\u306f\u30d4\u30f3\u30af\u5730\u00d7\u6fc3\u30b0\u30ec\u30fc\uff08\u652f\u6255\u30dc\u30bf\u30f3\u3082\uff09\u3002HTML\u69cb\u9020\u30fbJS\u30fb\u9001\u4fe1\u5185\u5bb9\u306f v3.5.0 \u3068\u540c\u4e00\n     v3.6.1: \u30c6\u30fc\u30de\u306e label{line-height:1} \u3067\u540c\u610f\u6587\u30fb\u30d7\u30e9\u30f3\u540d\u306e2\u884c\u76ee\u304c\u8a70\u307e\u3063\u3066\u3044\u305f\u306e\u3092\u4fee\u6b63\uff08CSS\u306e\u307f\uff09\n     v3.7.0: \u5168\u8a00\u8a9e\u30c1\u30a7\u30c3\u30af\u5bfe\u5fdc\uff08\u6587\u8a00\u30fbCSS\u306e\u307f\u3002\u5224\u5b9a\u30fb\u9001\u4fe1\u30fb\u8a08\u7b97\u30ed\u30b8\u30c3\u30af\u306f v3.6.1 \u3068\u540c\u4e00\uff09: \u7a7a\u304d\u72b6\u6cc1\u306e\u53d6\u5f97\u4e2d\u306f\u30ab\u30ec\u30f3\u30c0\u30fc\u4e0a\u90e8\u306b\u300c\u8aad\u307f\u8fbc\u307f\u4e2d\u300d\u3092\u8868\u793a\uff08CSS :has \u3067\u5224\u5b9a\u30fb\u53d6\u5f97\u5931\u6557\u6642\u306f\u6d88\u3048\u308b\uff09\uff0f\n             \u91d1\u984d\u306e\u533a\u5207\u308a\u3092\u8a00\u8a9e\u5225\u306b\uff08yen() \u306e\u533a\u5207\u308a\u6587\u5b57\u3092 L.thou_sep \u304b\u3089\u3002de\/it\/es \u306f \u00a51.000\uff09\uff0fko \u306e\u30dc\u30bf\u30f3\u5b57\u9593\u3092\u8a70\u3081\u308b\uff0f\u6642\u523b\u30fb\u91d1\u984d\u30fbCheck-in \u306e\u9014\u4e2d\u6539\u884c\u9632\u6b62 .igb-nw -->\n<div id=\"igbike\" data-lang=\"de\">\n<style>\n\/* v3.6.0 \u65b0\u30c8\u30f3\u30de\u30ca\uff08ig-site\/STYLE.md\uff09: \u82f1\u5b57\/\u6570\u5b57=Josefin Sans\u30fb\u548c\u6587=Zen Maru Gothic\uff08\u4e2d\u97d3\u306f\u5404\u8a00\u8a9e\u30d5\u30a9\u30fc\u30eb\u30d0\u30c3\u30af\uff09\u30fb\u767d\u3044\u89d2\u4e38\u30ab\u30fc\u30c9\u30fb\u30d4\u30f3\u30af\u5730\u00d7\u6fc3\u30b0\u30ec\u30fc\u306e\u30dc\u30bf\u30f3\u3002\u898b\u305f\u76ee\u3060\u3051\u306e\u5909\u66f4 *\/\n#igbike{--ig-text:#54595F;--ig-sub:#7A7A7A;--ig-line:#E8C9D1;--ig-rose:#A9707D;--ig-rose2:#CB98A1;--ig-accent:#F5C5D5;--ig-accent-h:#EDB3C6;--ig-bg:#FAF4EF;--ig-pinkbg:#FCEFF3;--ig-red:#B3261E;--ig-green:#2E7D32;\n  --ig-jp:\"Zen Maru Gothic\",\"Noto Sans JP\",\"Hiragino Sans\",sans-serif;--ig-en:\"Josefin Sans\",\"Zen Maru Gothic\",sans-serif;\n  color:var(--ig-text);font-family:var(--ig-jp);font-weight:500;font-size:16px;line-height:1.8;max-width:820px;margin:0 auto;box-sizing:border-box}\n#igbike[data-lang=\"zh\"]{--ig-jp:\"Zen Maru Gothic\",\"Noto Sans TC\",\"PingFang TC\",\"Microsoft JhengHei\",sans-serif;--ig-en:\"Josefin Sans\",\"Zen Maru Gothic\",\"Noto Sans TC\",sans-serif}\n#igbike[data-lang=\"ko\"]{--ig-jp:\"Zen Maru Gothic\",\"Noto Sans KR\",\"Apple SD Gothic Neo\",\"Malgun Gothic\",sans-serif;--ig-en:\"Josefin Sans\",\"Zen Maru Gothic\",\"Noto Sans KR\",sans-serif}\n#igbike *{box-sizing:border-box}\n#igbike b,#igbike strong{font-weight:700}\n#igbike .igb-card{background:#fff;border:0;border-radius:16px;box-shadow:0 10px 30px rgba(169,112,125,.10);padding:32px 32px 28px}\n#igbike .igb-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px}\n#igbike .igb-field{display:flex;flex-direction:column;gap:7px}\n#igbike .igb-field.igb-full{grid-column:1 \/ -1}\n#igbike label{font-weight:700;font-size:14.5px;color:var(--ig-text);letter-spacing:.03em;line-height:1.6}\n#igbike label .req{color:var(--ig-rose);font-weight:500;margin-left:6px;font-size:12px}\n#igbike label .opt{color:var(--ig-sub);font-weight:500;margin-left:6px;font-size:12px}\n#igbike input[type=text],#igbike select,#igbike textarea{\n  width:100%;padding:11px 14px;border:1px solid #E6DADD;border-radius:10px;font:inherit;font-family:var(--ig-jp);font-weight:500;font-size:16px;color:var(--ig-text);background:#fff;min-height:48px;transition:border-color .2s,box-shadow .2s}\n#igbike input[type=text]::placeholder{color:#A8A3A6}\n#igbike input[type=text]:focus,#igbike select:focus,#igbike textarea:focus{outline:0;border-color:var(--ig-rose2);box-shadow:0 0 0 3px rgba(245,197,213,.45)}\n#igbike .igb-day:focus{outline:2px solid var(--ig-rose2);outline-offset:1px}\n#igbike .igb-hint{font-size:12.5px;color:var(--ig-sub);line-height:1.6}\n#igbike .igb-pending{display:flex;gap:12px;align-items:flex-start;background:#FDECEA;border:2px solid #D93025;border-radius:12px;padding:14px 16px;margin:4px 0 14px;color:#8A1C12;font-size:15px;line-height:1.7}\n#igbike .igb-pending .igb-pending-ico{font-size:26px;line-height:1.1;flex:none}\n#igbike .igb-pending b.igb-pending-h{display:block;font-size:17px;margin-bottom:2px}\n#igbike .igb-ab-note{display:none;margin-top:6px;padding:11px 14px;border-radius:10px;background:var(--ig-pinkbg);border:0;font-size:13.5px;line-height:1.7;color:var(--ig-text)}\n#igbike .igb-ab-note.show{display:block}\n#igbike .igb-check-link{display:block;margin:12px 0;padding:12px 14px;border:1px solid var(--ig-line);border-radius:10px;background:#fff;font-size:14.5px;word-break:break-all;color:var(--ig-rose)}\n#igbike .igb-cal{border:1px solid #F0E6E9;border-radius:12px;background:#fff;padding:12px 10px 6px}\n#igbike .igb-month{margin:0 0 12px}\n#igbike .igb-month-title{font-family:var(--ig-en);font-size:17px;font-weight:400;letter-spacing:.12em;text-align:center;margin:2px 0 8px;color:var(--ig-text)}\n#igbike .igb-dow,#igbike .igb-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}\n#igbike .igb-dow span{text-align:center;font-size:11.5px;color:var(--ig-sub);padding:2px 0}\n#igbike .igb-dow span:first-child{color:#C0504D}\n#igbike .igb-dow span:last-child{color:#4F6FB3}\n#igbike .igb-day{border:1px solid #F0E6E9;background:#fff;border-radius:8px;min-height:58px;padding:3px 1px 3px;overflow:hidden;font:inherit;font-family:var(--ig-jp);color:var(--ig-text);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.15;transition:background .15s,border-color .15s}\n#igbike .igb-day:not(:disabled):not(.full):not(.on):hover{border-color:var(--ig-accent);background:#FFF9FB}\n#igbike .igb-day b{font-family:var(--ig-en);font-weight:400;font-size:15px}\n#igbike .igb-day small{font-size:10px;color:var(--ig-sub);white-space:nowrap;display:block;line-height:1.25}\n#igbike .igb-day small.zero{color:var(--ig-red)}\n#igbike .igb-day.on{background:var(--ig-accent);border-color:var(--ig-accent)}\n#igbike .igb-day.on small{color:#54595F}\n#igbike .igb-day:disabled{opacity:.35;cursor:not-allowed;background:#f7f7f7}\n#igbike .igb-day.full{opacity:.5;cursor:not-allowed;background:#f3eeea}\n#igbike .igb-day.full small{color:var(--ig-red)}\n#igbike .igb-stock{font-size:13.5px;margin-top:2px;min-height:1.4em}\n#igbike .igb-day.pad{visibility:hidden}\n\/* v3.7.0 \u7a7a\u304d\u72b6\u6cc1\u306e\u53d6\u5f97\u4e2d\u8868\u793a: \u53d6\u5f97\u524d\u306e\u30bb\u30eb\u306f <small>\u2026<\/small> \u304c1\u500b\u3060\u3051\uff08only-of-type\uff09\uff08\u53d6\u5f97\u5f8c\u306f2\u500b or \u6e80\u8eca\u306e .zero\uff09\u3002\u53d6\u5f97\u5931\u6557\u6642\u306f avail-note \u306e\u76ee\u5370 span \u304c\u6d88\u3048\u308b\u306e\u3067\u51fa\u306a\u3044 *\/\n#igbike .igb-field:has(.igb-ld-mark) .igb-cal:has(.igb-day small:only-of-type:not(.zero))::before{content:attr(data-ld);display:block;text-align:center;font-size:13.5px;line-height:1.6;color:var(--ig-rose);background:var(--ig-pinkbg);border-radius:8px;padding:8px 10px;margin:0 2px 10px}\n#igbike .igb-day small:only-of-type:not(.zero){animation:igbpulse 1.2s ease-in-out infinite}\n@keyframes igbpulse{50%{opacity:.25}}\n#igbike .igb-nw{white-space:nowrap}\n#igbike[data-lang=\"ko\"] .igb-btn{letter-spacing:1px}\n#igbike .igb-sel{font-size:13.5px;margin-top:6px;min-height:1.4em}\n#igbike .igb-plans{display:grid;grid-template-columns:1fr 1fr;gap:10px}\n#igbike .igb-plan-opt{display:flex;align-items:flex-start;gap:10px;border:1px solid #EFE3E7;border-radius:12px;padding:12px 14px;cursor:pointer;background:#fff;font-weight:500;transition:border-color .2s,background .2s}\n#igbike .igb-plan-opt:hover{border-color:var(--ig-accent)}\n#igbike .igb-plan-opt input{width:20px;height:20px;margin-top:3px;flex:none;accent-color:#A9707D}\n#igbike .igb-plan-opt.on{border-color:var(--ig-accent);background:var(--ig-pinkbg);box-shadow:0 0 0 1px var(--ig-accent) inset}\n#igbike .igb-plan-opt .igb-plan-name{font-weight:700;font-size:15px;display:block}\n#igbike .igb-plan-opt .igb-plan-price{font-size:12.5px;color:var(--ig-sub);display:block;line-height:1.6}\n#igbike .igb-plan-opt .igb-plan-price b{font-family:var(--ig-en);font-weight:400;font-size:14px;letter-spacing:.04em;color:var(--ig-text)}\n#igbike .igb-check{display:flex;align-items:flex-start;gap:10px;font-weight:500;font-size:15px;line-height:1.75;cursor:pointer}\n#igbike .igb-rules-link{color:var(--ig-rose);text-decoration:underline;text-underline-offset:3px}\n#igbike .igb-check input{width:20px;height:20px;margin-top:4px;flex:none;accent-color:#A9707D}\n#igbike .igb-quote{margin-top:20px;padding:20px 22px;border-radius:12px;background:var(--ig-bg);border:0}\n#igbike .igb-quote .igb-amount{font-size:32px;font-weight:400;font-family:var(--ig-en);letter-spacing:.04em;line-height:1.2}\n#igbike .igb-quote .igb-amount small{font-size:15px;font-family:var(--ig-jp);font-weight:500;letter-spacing:0;color:var(--ig-sub);margin-left:6px}\n#igbike .igb-quote .igb-plan{font-size:14.5px;margin-top:4px}\n#igbike .igb-quote .igb-deadline{font-size:14px;margin-top:10px;padding-top:10px;border-top:1px solid #EADFD6}\n#igbike .igb-msg{margin-top:12px;padding:12px 14px;border-radius:10px;font-size:14.5px;line-height:1.7;display:none}\n#igbike .igb-msg.show{display:block}\n#igbike .igb-msg.err{background:#FDECEA;color:var(--ig-red);border:1px solid #F5C6C2}\n#igbike .igb-msg.info{background:#fff;color:var(--ig-text);border:1px solid #EFE3E7}\n#igbike .igb-btn{display:inline-block;width:100%;margin-top:20px;padding:18px 48px 16px;border:0;border-radius:10px;background:var(--ig-accent);color:#54595F;font-family:var(--ig-en);font-size:17px;font-weight:400;text-transform:uppercase;letter-spacing:3px;line-height:1.5;cursor:pointer;text-align:center;text-decoration:none!important;transition:background .2s,opacity .2s}\n#igbike .igb-btn:hover,#igbike .igb-btn:focus{background:var(--ig-accent-h);color:#54595F}\n#igbike .igb-btn:disabled{opacity:.45;cursor:not-allowed;background:var(--ig-accent)}\n#igbike .igb-btn.igb-pay{background:var(--ig-accent);color:#54595F}\n#igbike .igb-btn.igb-pay:hover{background:var(--ig-accent-h);color:#54595F}\n#igbike .igb-result{display:none}\n#igbike .igb-result.show{display:block}\n#igbike .igb-result h3{font-family:var(--ig-jp);font-weight:700;font-size:23px;letter-spacing:.04em;line-height:1.5;margin:0 0 12px;color:var(--ig-text)}\n#igbike .igb-result p{margin:0 0 10px}\n#igbike .igb-notice{background:var(--ig-bg);border:0;border-radius:12px;padding:16px 18px;white-space:pre-line;font-size:15px;line-height:1.8;margin:12px 0}\n#igbike .igb-keys{background:#fff;border:2px solid var(--ig-accent);border-radius:12px;padding:14px 18px;margin:12px 0}\n#igbike .igb-keys .igb-key{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid #F3E7EB;font-size:15px}\n#igbike .igb-keys .igb-key:last-child{border-bottom:0}\n#igbike .igb-keys .igb-key b{font-family:var(--ig-en);font-weight:400;font-size:23px;letter-spacing:.14em}\n#igbike .igb-shot-top{display:flex;gap:12px;align-items:center;background:#fff4d6;border:2px solid #f0b429;border-radius:12px;padding:12px 16px;margin:14px 0 8px}\n#igbike .igb-shot-top .igb-shot-ico{font-size:30px;line-height:1}\n#igbike .igb-shot-top b{display:block;font-size:16px;color:#7a4b00}\n#igbike .igb-shot-top span{display:block;font-size:13px;color:#7a4b00;margin-top:2px}\n#igbike .igb-shot{margin-top:14px;padding:10px 14px;border:1px dashed var(--ig-line);border-radius:10px;font-size:14px;background:#fff}\n#igbike .igb-kv{width:100%;border-collapse:collapse;font-size:14.5px;margin:10px 0}\n#igbike .igb-kv th,#igbike .igb-kv td{padding:8px 8px;border-bottom:1px solid #F0E6E9;text-align:left;vertical-align:top}\n#igbike .igb-kv th{width:32%;color:var(--ig-sub);font-weight:700}\n#igbike .igb-spin{display:inline-block;width:14px;height:14px;border:2px solid #E8C9D1;border-top-color:#A9707D;border-radius:50%;animation:igbspin .8s linear infinite;vertical-align:-2px;margin-right:6px}\n@keyframes igbspin{to{transform:rotate(360deg)}}\n@media (max-width:600px){\n  #igbike{font-size:15px}\n  #igbike .igb-card{padding:22px 16px 20px;border-radius:14px}\n  #igbike .igb-grid{grid-template-columns:1fr;gap:14px}\n  #igbike .igb-plans{grid-template-columns:1fr}\n  #igbike .igb-cal{padding:8px 4px 4px;border-radius:10px}\n  #igbike .igb-dow,#igbike .igb-days{gap:2px}\n  #igbike .igb-day{min-height:56px;border-radius:6px;padding:2px 0}\n  #igbike .igb-day b{font-size:14px}\n  #igbike .igb-day small{font-size:9px;letter-spacing:-0.03em}\n  #igbike .igb-quote .igb-amount{font-size:28px}\n  #igbike .igb-btn{font-size:16px;letter-spacing:2.5px;padding:17px 18px 15px}\n  #igbike .igb-result h3{font-size:20px}\n}\n<\/style>\n\n<div class=\"igb-card\">\n  <form id=\"igb-form\" novalidate>\n    <div class=\"igb-grid\">\n      <div class=\"igb-field\">\n        <label for=\"igb-name\">Name (wie in Ihrer Reservierung)<span class=\"req\">Pflichtfeld<\/span><\/label>\n        <input type=\"text\" id=\"igb-name\" name=\"name\" autocomplete=\"name\" placeholder=\"z. B. Anna Schmidt\">\n      <\/div>\n      <div class=\"igb-field\">\n        <label for=\"igb-room\">Zimmernummer<span class=\"req\">Pflichtfeld<\/span><\/label>\n        <input type=\"text\" id=\"igb-room\" name=\"room\" inputmode=\"numeric\" placeholder=\"z. B. 201\">\n        <div class=\"igb-hint\">Wenn Sie Ihre Zimmernummer noch nicht kennen (vor dem <span class=\"igb-nw\">Check-in<\/span>), geben Sie bitte \u201eoffen\u201c ein.<\/div>\n      <\/div>\n      <div class=\"igb-field\">\n        <label for=\"igb-site\">Wo haben Sie Ihren Aufenthalt gebucht?<span class=\"req\">Pflichtfeld<\/span><\/label>\n        <select id=\"igb-site\" name=\"site\"><option value=\"\" selected>Bitte ausw\u00e4hlen<\/option><option value=\"official\">Offizielle Website<\/option><option value=\"booking\">Booking.com<\/option><option value=\"airbnb\">Airbnb<\/option><option value=\"rakuten\">Rakuten Travel<\/option><option value=\"jalan\">Jalan<\/option><option value=\"agoda\">Agoda<\/option><option value=\"expedia\">Expedia<\/option><option value=\"other\">Sonstige<\/option><\/select>\n      <\/div>\n      <div class=\"igb-field\">\n        <label for=\"igb-booking\">Buchungsnummer des Aufenthalts<span class=\"opt\">Optional<\/span><\/label>\n        <input type=\"text\" id=\"igb-booking\" name=\"booking_no\" placeholder=\"Falls bekannt\">\n      <\/div>\n      <div class=\"igb-field igb-full\" style=\"margin-top:-6px\"><div class=\"igb-ab-note\" id=\"igb-ab-note\">\u00dcber Airbnb gebucht? Bei kostenpflichtigen Tarifen erfolgt die Zahlung nicht auf dieser Seite. Nach Ihrer Anfrage senden wir Ihnen <strong>eine Zahlungsanforderung f\u00fcr den Zusatzbetrag \u00fcber die Airbnb-Nachrichten<\/strong>; den Schlosscode erhalten Sie nach best\u00e4tigter Zahlung. (Beim kostenlosen Tarif wird der Schlosscode wie gewohnt sofort angezeigt.)<\/div><\/div>\n      <div class=\"igb-field igb-full\">\n        <label>Tarif<span class=\"req\">Pflichtfeld<\/span><\/label>\n        <div class=\"igb-plans\" id=\"igb-plans\">\n          <label class=\"igb-plan-opt\"><input type=\"radio\" name=\"plan\" value=\"short\"><span><span class=\"igb-plan-name\">Bis zu 3 Stunden (R\u00fcckgabe am selben Tag)<\/span><span class=\"igb-plan-price\">Citybike <b>kostenlos<\/b> (einmal pro Tag) \/ Crossbike <b><span class=\"igb-nw\">\u00a51.000<\/span><\/b><\/span><\/span><\/label>\n          <label class=\"igb-plan-opt\"><input type=\"radio\" name=\"plan\" value=\"full\" checked><span><span class=\"igb-plan-name\">Ganzer Tag (bis <span class=\"igb-nw\">23:00 Uhr<\/span>)<\/span><span class=\"igb-plan-price\">Citybike <b><span class=\"igb-nw\">\u00a51.000<\/span><\/b> \/ Crossbike <b><span class=\"igb-nw\">\u00a51.500<\/span><\/b><\/span><\/span><\/label>\n          <label class=\"igb-plan-opt\"><input type=\"radio\" name=\"plan\" value=\"2d\"><span><span class=\"igb-plan-name\">2 Tage<\/span><span class=\"igb-plan-price\">Citybike <b><span class=\"igb-nw\">\u00a51.500<\/span><\/b> \/ Crossbike <b><span class=\"igb-nw\">\u00a52.000<\/span><\/b><\/span><\/span><\/label>\n          <label class=\"igb-plan-opt\"><input type=\"radio\" name=\"plan\" value=\"3d\"><span><span class=\"igb-plan-name\">3 Tage<\/span><span class=\"igb-plan-price\">Citybike <b><span class=\"igb-nw\">\u00a52.000<\/span><\/b> \/ Crossbike <b><span class=\"igb-nw\">\u00a52.500<\/span><\/b><\/span><\/span><\/label>\n          <label class=\"igb-plan-opt\"><input type=\"radio\" name=\"plan\" value=\"4plus\"><span><span class=\"igb-plan-name\">Ab 4 Tagen<\/span><span class=\"igb-plan-price\">3-Tages-Preis + je weiterem Tag: Citybike <b><span class=\"igb-nw\">\u00a51.000<\/span><\/b> \/ Crossbike <b><span class=\"igb-nw\">\u00a51.500<\/span><\/b><\/span><\/span><\/label>\n        <\/div>\n        <div class=\"igb-hint\">Preise pro Fahrrad, inkl. Steuern. Die Miettage m\u00fcssen nicht aufeinanderfolgen, solange sie innerhalb Ihres Aufenthalts liegen.<\/div>\n      <\/div>\n      <div class=\"igb-field igb-full\">\n        <label>Miettage (heute bis 30 Tage im Voraus)<span class=\"req\">Pflichtfeld<\/span><\/label>\n        <div class=\"igb-hint\" id=\"igb-plan-guide\" style=\"font-size:13.5px;color:var(--ig-text)\"><\/div>\n        <div class=\"igb-cal\" id=\"igb-cal\" data-ld=\"Verf\u00fcgbarkeit wird geladen \u2026 (dies kann einen Moment dauern)\"><\/div>\n        <div class=\"igb-sel\" id=\"igb-sel\"><\/div>\n        <div class=\"igb-stock\" id=\"igb-stock\"><\/div>\n        <div class=\"igb-hint\" id=\"igb-avail-note\"><span class=\"igb-ld-mark\" hidden><\/span>Die Zahlen zeigen die verf\u00fcgbaren Fahrr\u00e4der (oben: Citybike \/ unten: Crossbike). Ausleihe vor dem <span class=\"igb-nw\">Check-in<\/span> ist m\u00f6glich, nach dem <span class=\"igb-nw\">Check-out<\/span> nicht.<\/div>\n      <\/div>\n      <div class=\"igb-field\">\n        <label for=\"igb-start\">Mietbeginn<span class=\"req\">Pflichtfeld<\/span><\/label>\n        <select id=\"igb-start\" name=\"start\"><\/select>\n        <div class=\"igb-hint\">Mietzeiten <span class=\"igb-nw\">9:00\u201323:00 Uhr<\/span>. Mietbeginn <span class=\"igb-nw\">9:00\u201320:00 Uhr<\/span> (alle 30 Min.). F\u00fcr heute sind nur Zeiten w\u00e4hlbar, die mindestens 30 Minuten in der Zukunft liegen.<\/div>\n      <\/div>\n      <div class=\"igb-field\">\n        <label>&nbsp;<\/label>\n        <div class=\"igb-hint\" id=\"igb-time-note\" style=\"padding-top:10px\">Bei Tagestarifen und mehrt\u00e4gigen Tarifen geben Sie das Fahrrad bitte an jedem Miettag bis <span class=\"igb-nw\">23:00 Uhr<\/span> zur\u00fcck.<\/div>\n      <\/div>\n      <div class=\"igb-field\">\n        <label for=\"igb-city\">Citybikes<\/label>\n        <select id=\"igb-city\" name=\"city\"><option value=\"0\">0<\/option><option value=\"1\" selected>1<\/option><option value=\"2\">2<\/option><\/select>\n      <\/div>\n      <div class=\"igb-field\">\n        <label for=\"igb-cross\">Crossbikes<\/label>\n        <select id=\"igb-cross\" name=\"cross\"><option value=\"0\" selected>0<\/option><option value=\"1\">1<\/option><option value=\"2\">2<\/option><\/select>\n      <\/div>\n    <\/div>\n\n    <div class=\"igb-quote\" id=\"igb-quote\" aria-live=\"polite\">\n      <div class=\"igb-amount\" id=\"igb-amount\">\u2014<\/div>\n      <div class=\"igb-plan\" id=\"igb-plan\">Der Preis wird angezeigt, sobald Sie die Angaben ausgef\u00fcllt haben.<\/div>\n      <div class=\"igb-deadline\" id=\"igb-deadline\"><\/div>\n    <\/div>\n\n    <div class=\"igb-field igb-full\" style=\"margin-top:16px\">\n      <label class=\"igb-check\"><input type=\"checkbox\" id=\"igb-agree\" name=\"agree\"><span>Ich stimme den <a href=\"https:\/\/hotel-ishigaki.com\/de\/termsandconditions\/\" target=\"_blank\" rel=\"noopener\" class=\"igb-rules-link\">Beherbergungsbedingungen<\/a> und den <a href=\"#bike-rules\" class=\"igb-rules-link\">Mietbedingungen<\/a> zu. Bei kostenpflichtigen Tarifen gilt der Abschluss der Zahlung als Zustimmung zu den Bedingungen.<\/span><\/label>\n    <\/div>\n\n    <div class=\"igb-msg\" id=\"igb-msg\" role=\"alert\"><\/div>\n    <div class=\"igb-hint\" style=\"margin-top:14px;text-align:center\">Bitte lesen Sie vor dem Absenden die <a href=\"#bike-rules\" class=\"igb-rules-link\">Mietbedingungen<\/a> (Sprung zum Abschnitt mit den Bedingungen auf dieser Seite).<\/div>\n    <button type=\"submit\" class=\"igb-btn\" id=\"igb-submit\">Fahrrad anfragen<\/button>\n    <div class=\"igb-hint\" style=\"margin-top:10px;text-align:center\">Nach dem Absenden werden Ihre Buchungsdaten sowie der Schlosscode (kostenloser Tarif) bzw. der Zahlungslink (kostenpflichtige Tarife) auf diesem Bildschirm angezeigt. Kostenpflichtige Tarife sind mit Abschluss der Zahlung best\u00e4tigt (bei Anfragen am selben Tag bitte vor Mietbeginn bezahlen). Es wird keine E-Mail versandt \u2013 bitte machen Sie einen Screenshot dieses Bildschirms.<\/div>\n  <\/form>\n\n  <div class=\"igb-result\" id=\"igb-result\"><\/div>\n<\/div>\n\n<script>\n(function(){\n  var GAS_URL = \"https:\/\/script.google.com\/macros\/s\/AKfycbxen4in3lAtpNtHC8O-_B4RBDN97sOUBU3_Un5k03er6EsiF7ua9P_sEDyM3kYfPd_I\/exec\";\n  var L = {\"r_pending_h\":\"Anfrage erhalten (Zahlung ausstehend)\",\"pend_h\":\"Ihre Buchung ist noch nicht best\u00e4tigt\",\"pend_paid\":\"Sie wird best\u00e4tigt, sobald Sie die Zahlung \u00fcber die Schaltfl\u00e4che unten abgeschlossen haben.\",\"pend_ab\":\"Sie wird best\u00e4tigt, sobald Sie die \u00fcber die Airbnb-Nachrichten gesendete Zahlungsanforderung f\u00fcr den Zusatzbetrag bezahlt haben.\",\"pend_deadline\":\"Zahlungsfrist: {dl}. Nach Ablauf der Frist wird die Anfrage automatisch storniert.\",\"pend_keys\":\"Der Schlosscode wird nach Abschluss der Zahlung angezeigt.\",\"l_cancelled_p\":\"Die Buchung {id} wurde storniert. Wenn Sie ein Fahrrad mieten m\u00f6chten, senden Sie bitte auf dieser Seite eine neue Anfrage.\",\"l_cancelled_h\":\"Storniert\",\"l_expired_p\":\"Die Buchung {id} wurde storniert, da die Zahlungsfrist abgelaufen ist. Wenn Sie weiterhin ein Fahrrad mieten m\u00f6chten, senden Sie bitte auf dieser Seite eine neue Anfrage.\",\"l_expired_h\":\"Zahlungsfrist abgelaufen\",\"l_wait_ab_p\":\"Die Zahlung f\u00fcr die Buchung {id} ist bei uns noch nicht best\u00e4tigt. Bitte pr\u00fcfen Sie Ihre Airbnb-Nachrichten. \u00d6ffnen Sie diese Seite nach der Zahlung erneut, um Ihren Schlosscode zu sehen.\",\"v_site\":\"Bitte w\u00e4hlen Sie aus, wo Sie Ihren Aufenthalt gebucht haben.\",\"s_site\":\"Gebucht \u00fcber (Nummer)\",\"r_ab_h\":\"Anfrage erhalten\",\"r_ab_p\":\"Wir senden Ihnen <strong>eine Zahlungsanforderung f\u00fcr den Zusatzbetrag \u00fcber die Airbnb-Nachrichten<\/strong>. Ihre Buchung ist mit Abschluss der Zahlung best\u00e4tigt; anschlie\u00dfend erhalten Sie den Schlosscode.\",\"r_ab_check\":\"\ud83d\udd11 Nach der Zahlung hier den Schlosscode abrufen\",\"shot_top_p_ab\":\"Ihre Buchungs-ID und der Link zum Schlosscode werden nur auf diesem Bildschirm angezeigt. Es wird keine E-Mail versandt.\",\"l_checking_status\":\"Ihre Buchung wird gepr\u00fcft \u2026\",\"l_wait_pay_h\":\"Warten auf Zahlungsbest\u00e4tigung\",\"l_wait_pay_p\":\"Die Zahlung f\u00fcr die Buchung {id} ist bei uns noch nicht best\u00e4tigt. \u00d6ffnen Sie diese Seite nach der Zahlung erneut, um Ihren Schlosscode zu sehen.\",\"l_reload\":\"\ud83d\udd04 Erneut pr\u00fcfen\",\"l_status_other\":\"Status der Buchung {id}: {status}\",\"plan_name\":{\"short\":\"Bis zu 3 Stunden\",\"full\":\"Ganzer Tag\",\"2d\":\"2 Tage\",\"3d\":\"3 Tage\",\"4plus\":\"Ab 4 Tagen\"},\"thou_sep\":\".\",\"dow\":[\"So\",\"Mo\",\"Di\",\"Mi\",\"Do\",\"Fr\",\"Sa\"],\"months\":[\"Jan.\",\"Feb.\",\"M\u00e4rz\",\"Apr.\",\"Mai\",\"Juni\",\"Juli\",\"Aug.\",\"Sept.\",\"Okt.\",\"Nov.\",\"Dez.\"],\"fmt_day\":\"{w}, {d}. {mon}\",\"month_title\":\"{mon} {y}\",\"city_short\":\"City \",\"cross_short\":\"Cross \",\"full\":\"Voll\",\"selected\":\"Ausgew\u00e4hlt: {list} ({n} Tag(e))\",\"select_none\":\"W\u00e4hlen Sie die gew\u00fcnschten Miettage aus.\",\"guide_short\":\"Bis zu 3 Stunden: Bitte 1 Tag ausw\u00e4hlen.\",\"guide_full\":\"Ganzer Tag: Bitte 1 Tag ausw\u00e4hlen.\",\"guide_4plus\":\"Ab 4 Tagen: Bitte mindestens 4 Tage ausw\u00e4hlen (bei Auswahl des ersten Tages werden 4 aufeinanderfolgende Tage vorausgew\u00e4hlt; die Tage m\u00fcssen nicht aufeinanderfolgen).\",\"guide_n\":\"{need}-Tages-Tarif: Bitte {need} Tage ausw\u00e4hlen (bei Auswahl des ersten Tages werden aufeinanderfolgende Tage vorausgew\u00e4hlt; die Tage m\u00fcssen nicht aufeinanderfolgen).\",\"time_short\":\"Bis zu 3 Stunden: Bitte geben Sie das Fahrrad innerhalb von 3 Stunden nach Mietbeginn zur\u00fcck (sp\u00e4testens bis 23:00 Uhr).\",\"time_full\":\"Bei Tagestarifen und mehrt\u00e4gigen Tarifen geben Sie das Fahrrad bitte an jedem Miettag bis 23:00 Uhr zur\u00fcck.\",\"city_name\":\"Citybike(s)\",\"cross_name\":\"Crossbike(s)\",\"clamped\":\"Am {day} sind nur {max} {name} verf\u00fcgbar, daher wurde die Anzahl auf {max} ge\u00e4ndert.\",\"stock\":\"Verf\u00fcgbarkeit an diesen Tagen: Citybike {c} \/ Crossbike {x}\",\"stock_loading\":\"Verf\u00fcgbarkeit an diesen Tagen: wird geladen \u2026\",\"avail_fail\":\"Die Verf\u00fcgbarkeit konnte nicht geladen werden. Sie wird beim Absenden gepr\u00fcft.\",\"err_full_dates\":\"An den ausgew\u00e4hlten Tagen sind keine Fahrr\u00e4der verf\u00fcgbar. Bitte w\u00e4hlen Sie andere Tage.\",\"err_min_one\":\"Bitte w\u00e4hlen Sie mindestens ein Fahrrad aus.\",\"err_no_dates\":\"Bitte w\u00e4hlen Sie Ihre Miettage aus.\",\"err_4plus\":\"F\u00fcr den Tarif \u201eAb 4 Tagen\u201c m\u00fcssen mindestens 4 Tage ausgew\u00e4hlt werden (derzeit {n}).\",\"err_mismatch\":\"F\u00fcr den Tarif \u201e{plan}\u201c m\u00fcssen {need} Tag(e) ausgew\u00e4hlt werden (derzeit {n}).\",\"err_mismatch_key\":\"\u201c m\u00fcssen \",\"label_short\":\"Bis zu 3 Stunden ({start}\u2013{end})\",\"free_suffix\":\" \u00b7 Citybike kostenlos\",\"label_full\":\"Ganzer Tag ({start}\u201323:00)\",\"label_days\":\"{n} Tage\",\"err_no_start_today\":\"F\u00fcr heute ist kein Mietbeginn mehr verf\u00fcgbar (Anfragen sind bis sp\u00e4testens 30 Minuten vor Mietbeginn m\u00f6glich).\",\"dl_paid\":\"Anfrage bis 30 Minuten vor Mietbeginn ({t}); kostenpflichtige Tarife sind mit Abschluss der Zahlung best\u00e4tigt\",\"late_paid\":\"Anfragen sind bis sp\u00e4testens 30 Minuten vor Mietbeginn m\u00f6glich. Diese Uhrzeit kann nicht angenommen werden.\",\"err_city_avail\":\"Am {day} sind nur {n} Citybike(s) verf\u00fcgbar.\",\"err_cross_avail\":\"Am {day} sind nur {n} Crossbike(s) verf\u00fcgbar.\",\"amount_placeholder\":\"W\u00e4hlen Sie Ihre Miettage, um den Preis zu sehen\",\"qty_line\":\"Fahrr\u00e4der: City {c} \/ Cross {x}\",\"qty_plain\":\"Citybike {c} \/ Crossbike {x}\",\"line_dates\":\"Tage: {list}\",\"line_plan\":\"Tarif: {p}\",\"sep_list\":\", \",\"sep_parts\":\" \u00b7 \",\"tax\":\"inkl. Steuern\",\"free_tag\":\" \u00b7 kostenlos\",\"dl_prefix\":\"Frist: \",\"v_name\":\"Bitte geben Sie Ihren Namen ein.\",\"v_room\":\"Bitte geben Sie Ihre Zimmernummer ein (oder \u201eoffen\u201c).\",\"v_agree\":\"Bitte setzen Sie das H\u00e4kchen, um den Mietbedingungen zuzustimmen.\",\"sending\":\"Wird gesendet \u2026\",\"e_late_paid\":\"Anfragen sind bis sp\u00e4testens 30 Minuten vor Mietbeginn m\u00f6glich.\",\"e_no_stock\":\"Leider sind an den gew\u00fcnschten Tagen keine Fahrr\u00e4der verf\u00fcgbar. Bitte versuchen Sie es mit anderen Tagen oder einer anderen Anzahl.\",\"e_bad_dates\":\"Ung\u00fcltige Daten. Bitte w\u00e4hlen Sie Tage innerhalb von 30 Tagen ab heute.\",\"e_invalid\":\"Einige Angaben sind ung\u00fcltig.\",\"e_generic\":\"Das Senden ist fehlgeschlagen. Bitte versuchen Sie es sp\u00e4ter erneut oder kontaktieren Sie uns \u00fcber die Nachrichtenfunktion der Website, \u00fcber die Sie gebucht haben.\",\"btn_submit\":\"Fahrrad anfragen\",\"key_label\":\"Schlosscode\",\"key_title\":\"Schlosscode (Zahlenschloss)\",\"shot_top_p\":\"Der Schlosscode wird nur auf diesem Bildschirm angezeigt. Es wird keine E-Mail versandt.\",\"shot_top_h\":\"Bitte machen Sie einen Screenshot dieses Bildschirms\",\"shot_html\":\"Bitte <strong>machen Sie einen Screenshot<\/strong> dieses Bildschirms (es wird keine E-Mail versandt).<br>Bei Fragen kontaktieren Sie uns bitte \u00fcber die Nachrichtenfunktion der Website, \u00fcber die Sie gebucht haben (z. B. Booking.com, Airbnb). Wenn Sie \u00fcber unsere offizielle Website gebucht haben, k\u00f6nnen Sie auch auf Ihre Buchungsbest\u00e4tigung per E-Mail antworten.\",\"s_id\":\"Buchungs-ID\",\"s_name_room\":\"Name \/ Zimmer\",\"s_dates\":\"Tage\",\"s_plan\":\"Tarif\",\"s_qty\":\"Fahrr\u00e4der\",\"s_price\":\"Preis\",\"tax_paren\":\" (inkl. Steuern)\",\"r_paid_h\":\"Anfrage erhalten\",\"r_paid_p\":\"Bitte bezahlen Sie \u00fcber die Schaltfl\u00e4che unten. <strong>Ihre Buchung ist mit Abschluss der Zahlung best\u00e4tigt, und mit der Zahlung stimmen Sie den Bedingungen zu.<\/strong>\",\"r_paid_deadline\":\"Zahlungsfrist: {dl} (nach Ablauf der Frist wird die Anfrage automatisch storniert)\",\"r_pay_btn\":\"Weiter zur Zahlung\",\"r_pay_hint\":\"Nach der Zahlung kehren Sie auf diese Seite zur\u00fcck, wo der Schlosscode angezeigt wird.\",\"r_free_h\":\"Ihre Anfrage ist abgeschlossen\",\"r_free_hint\":\"Die Fahrr\u00e4der stehen am daf\u00fcr vorgesehenen Platz auf dem Hotelgel\u00e4nde (links neben dem Geb\u00e4udeeingang). Bitte stellen Sie das Fahrrad nach der Nutzung wieder dorthin zur\u00fcck.\",\"l_checking\":\"Ihre Zahlung wird best\u00e4tigt \u2026\",\"l_wait\":\"Bitte warten Sie einen Moment.\",\"l_thanks_h\":\"Vielen Dank f\u00fcr Ihre Zahlung\",\"l_thanks_p\":\"Die Buchung {id} ist best\u00e4tigt.\",\"l_thanks_hint\":\"Die Fahrr\u00e4der stehen am daf\u00fcr vorgesehenen Platz auf dem Hotelgel\u00e4nde (links neben dem Geb\u00e4udeeingang). Bitte stellen Sie das Fahrrad nach der Nutzung wieder dorthin zur\u00fcck. Mietzeiten: 9:00\u201323:00 Uhr.\",\"l_accepted_h\":\"Zahlung eingegangen\",\"l_accepted_p\":\"Buchung {id} (Status: {status}). Nach der Best\u00e4tigung senden wir Ihnen den Schlosscode \u00fcber die Nachrichtenfunktion der Website, \u00fcber die Sie gebucht haben.\",\"l_fail_h\":\"Best\u00e4tigung nicht m\u00f6glich\",\"l_fail_default\":\"Die Buchung wurde nicht gefunden.\",\"l_fail_p\":\"Bitte kontaktieren Sie uns \u00fcber die Nachrichtenfunktion der Website, \u00fcber die Sie gebucht haben (Buchungs-ID {id}).\",\"l_poll_timeout\":\"Buchung {id}. Die Best\u00e4tigung Ihrer Zahlung dauert etwas l\u00e4nger. Bitte pr\u00fcfen Sie es in K\u00fcrze erneut \u00fcber die Schaltfl\u00e4che unten (der Schlosscode wird angezeigt, sobald die Zahlung best\u00e4tigt ist).\",\"l_neterr_h\":\"Verbindungsfehler\",\"l_neterr_p\":\"Ihr Zahlungsstatus konnte nicht gepr\u00fcft werden. Wenn ein Neuladen der Seite nicht hilft, kontaktieren Sie uns bitte \u00fcber die Nachrichtenfunktion der Website, \u00fcber die Sie gebucht haben (Buchungs-ID {id}).\"};\n  var root = document.getElementById(\"igbike\");\n  var LANG = root.getAttribute(\"data-lang\") || \"ja\";\n  var MSG_FIELD = (LANG === \"ja\") ? \"message\" : \"message_en\";   \/\/ GAS \u306e\u6848\u5185\u6587: \u65e5\u672c\u8a9e\u30da\u30fc\u30b8\u306f message\u3001\u305d\u308c\u4ee5\u5916\u306f message_en\n  var RANGE_DAYS = 30;\n  var PLAN_DAYS = { short:1, full:1, \"2d\":2, \"3d\":3, \"4plus\":4 };   \/\/ \u5fc5\u8981\u65e5\u6570\uff084plus \u306f\u6700\u4f4e\uff09\n  var PRICE = { city:{one:1000,two:1500,three:2000,extra:1000,short:0}, cross:{one:1500,two:2000,three:2500,extra:1500,short:1000} };\n  var $ = function(id){ return document.getElementById(id); };\n  var form=$(\"igb-form\"), fName=$(\"igb-name\"), fRoom=$(\"igb-room\"), fSite=$(\"igb-site\"), fBooking=$(\"igb-booking\"), abNote=$(\"igb-ab-note\"), cal=$(\"igb-cal\"), selEl=$(\"igb-sel\"), stockEl=$(\"igb-stock\"), fStart=$(\"igb-start\"), guideEl=$(\"igb-plan-guide\"), timeNote=$(\"igb-time-note\"),\n      fCity=$(\"igb-city\"), fCross=$(\"igb-cross\"), fAgree=$(\"igb-agree\"), msg=$(\"igb-msg\"), btn=$(\"igb-submit\"),\n      amountEl=$(\"igb-amount\"), planEl=$(\"igb-plan\"), dlEl=$(\"igb-deadline\"), result=$(\"igb-result\"), availNote=$(\"igb-avail-note\");\n  var selected = {};      \/\/ \"YYYY-MM-DD\" -> true\n  var avail = null;       \/\/ {\"YYYY-MM-DD\":{city:n,cross:n}} or null (unknown)\n  var msgKind = \"\";       \/\/ \"late\" | \"err\" | \"info\" | \"\"\n  function T(s, v){ return String(s).replace(\/\\{(\\w+)\\}\/g, function(_, k){ return (v && k in v) ? v[k] : \"\"; }); }\n  function plan(){ var r=form.querySelector('input[name=plan]:checked'); return r? r.value : \"full\"; }\n\n  \/\/ ---- utils (JST) ----\n  function pad(n){ return (n<10?\"0\":\"\")+n; }\n  function ymd(d){ return d.getUTCFullYear()+\"-\"+pad(d.getUTCMonth()+1)+\"-\"+pad(d.getUTCDate()); }\n  function parseYmd(s){ var m=\/^(\\d{4})-(\\d{2})-(\\d{2})$\/.exec(s||\"\"); return m? Date.UTC(+m[1],+m[2]-1,+m[3]) : NaN; }\n  function jstMs(dateStr, hh, mm){ var b=parseYmd(dateStr); return isNaN(b)? NaN : b + ((hh*60+mm)*60 - 9*3600)*1000; }\n  function dayLabel(d){ return T(L.fmt_day, {m:d.getUTCMonth()+1, d:d.getUTCDate(), mon:L.months[d.getUTCMonth()], w:L.dow[d.getUTCDay()]}); }\n  function fmtJst(ms){ var d=new Date(ms+9*3600*1000); return dayLabel(d)+\" \"+pad(d.getUTCHours())+\":\"+pad(d.getUTCMinutes()); }\n  function fmtDay(s){ var b=parseYmd(s); if(isNaN(b)) return s; return dayLabel(new Date(b)); }\n  function yen(n){ return \"\u00a5\"+String(n).replace(\/\\B(?=(\\d{3})+(?!\\d))\/g, L.thou_sep||\",\"); }   \/\/ v3.7.0 \u533a\u5207\u308a\u6587\u5b57\u306f\u8a00\u8a9e\u5225\uff08\u8868\u793a\u306e\u307f\uff09\n  function esc(s){ return String(s==null?\"\":s).replace(\/[&<>\"']\/g,function(c){return {\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#39;\"}[c];}); }\n  function showMsg(kind, html){ msgKind=kind; msg.className=\"igb-msg show \"+(kind===\"info\"?\"info\":\"err\"); msg.innerHTML=html; }   \/\/ kind: late(\u9001\u4fe1\u30d6\u30ed\u30c3\u30af) \/ err(\u9001\u4fe1\u30a8\u30e9\u30fc) \/ info(\u53f0\u6570\u81ea\u52d5\u8abf\u6574)\n  function hideMsg(){ msgKind=\"\"; msg.className=\"igb-msg\"; msg.innerHTML=\"\"; }\n  function todayJstMs(){ var t=Date.now()+9*3600*1000; return t - (t % 86400000); }   \/\/ JST\u306e\u65e5\u4ed8 00:00 (UTC\u57fa\u6e96ms)\n  var TODAY = ymd(new Date(todayJstMs()));\n  var LAST = ymd(new Date(todayJstMs()+RANGE_DAYS*86400000));\n\n  \/\/ ---- start time options ----\n  (function(){ for(var h=9; h<=20; h++){ for(var m=0; m<60; m+=30){ if(h===20&&m>0) break; var v=pad(h)+\":\"+pad(m); var o=document.createElement(\"option\"); o.value=v; o.textContent=v; if(v===\"11:00\") o.selected=true; fStart.appendChild(o);} } })();\n\n  \/\/ ---- calendar (today .. today+30) ----\n  function renderCal(){\n    cal.innerHTML=\"\";\n    var t0=todayJstMs(), tEnd=t0+RANGE_DAYS*86400000;\n    var d=new Date(t0); var y=d.getUTCFullYear(), m=d.getUTCMonth();\n    while(Date.UTC(y,m,1) <= tEnd){\n      var mon=document.createElement(\"div\"); mon.className=\"igb-month\";\n      var title=document.createElement(\"div\"); title.className=\"igb-month-title\"; title.textContent=T(L.month_title,{y:y, m:m+1, mon:L.months[m]}); mon.appendChild(title);\n      var dow=document.createElement(\"div\"); dow.className=\"igb-dow\"; L.dow.forEach(function(w){ var s=document.createElement(\"span\"); s.textContent=w; dow.appendChild(s); }); mon.appendChild(dow);\n      var days=document.createElement(\"div\"); days.className=\"igb-days\";\n      var first=new Date(Date.UTC(y,m,1)).getUTCDay();\n      for(var i=0;i<first;i++){ var p=document.createElement(\"button\"); p.type=\"button\"; p.className=\"igb-day pad\"; p.tabIndex=-1; days.appendChild(p); }\n      var dim=new Date(Date.UTC(y,m+1,0)).getUTCDate();\n      for(var day=1; day<=dim; day++){\n        var ms=Date.UTC(y,m,day), key=ymd(new Date(ms));\n        var b=document.createElement(\"button\"); b.type=\"button\"; b.className=\"igb-day\"; b.setAttribute(\"data-d\",key);\n        var inRange = ms>=t0 && ms<=tEnd;\n        var a = avail && avail[key];\n        var sub = \"\";\n        if(inRange){\n          if(a){ sub = '<small class=\"'+(a.city===0?\"zero\":\"\")+'\">'+L.city_short+a.city+'<\/small><small class=\"'+(a.cross===0?\"zero\":\"\")+'\">'+L.cross_short+a.cross+'<\/small>'; }\n          else if(!avail){ sub = \"<small>\u2026<\/small>\"; }\n        }\n        if(inRange && a && a.city===0 && a.cross===0){ b.classList.add(\"full\"); sub='<small class=\"zero\">'+L.full+'<\/small>'; delete selected[key]; }\n        if(!inRange){ b.disabled=true; }\n        if(selected[key]) b.classList.add(\"on\");\n        b.innerHTML=\"<b>\"+day+\"<\/b>\"+sub;\n        (function(k,btn){ btn.addEventListener(\"click\", function(){ if(btn.classList.contains(\"full\")) return; toggleDate(k); }); })(key,b);\n        days.appendChild(b);\n      }\n      mon.appendChild(days); cal.appendChild(mon);\n      m++; if(m>11){ m=0; y++; }\n    }\n    renderSel();\n  }\n  function renderSel(){\n    var ks=Object.keys(selected).sort(), p=plan(), need=PLAN_DAYS[p];\n    selEl.innerHTML = ks.length ? T(L.selected,{list:\"<strong>\"+ks.map(fmtDay).join(L.sep_list)+\"<\/strong>\", n:ks.length}) : L.select_none;\n    var g;\n    if(p===\"short\") g=L.guide_short;\n    else if(p===\"full\") g=L.guide_full;\n    else if(p===\"4plus\") g=L.guide_4plus;\n    else g=T(L.guide_n,{need:need});\n    guideEl.textContent=g;\n    applyStockLimits(); applyStartLimits();\n    timeNote.textContent = p===\"short\" ? L.time_short : L.time_full;\n  }\n  function minAvail(){\n    \/\/ \u9078\u629e\u4e2d\u306e\u5229\u7528\u65e5\u3059\u3079\u3066\u3067\u306e\u7a7a\u304d\u53f0\u6570\u306e\u6700\u5c0f\u5024\uff08\u672a\u53d6\u5f97\u306e\u65e5\u306f\u4e0a\u96502\uff09\n    var ks=Object.keys(selected), m={city:2, cross:2, known:false};\n    ks.forEach(function(k){ var a=avail && avail[k]; if(a){ m.known=true; m.city=Math.min(m.city,a.city); m.cross=Math.min(m.cross,a.cross); } });\n    return m;\n  }\n  function limitDate(type){\n    \/\/ \u3069\u306e\u65e5\u304c\u4e0a\u9650\u3092\u6c7a\u3081\u3066\u3044\u308b\u304b\uff08\u30e1\u30c3\u30bb\u30fc\u30b8\u7528\uff09\n    var ks=Object.keys(selected).sort(), best=null;\n    ks.forEach(function(k){ var a=avail && avail[k]; if(a && (best===null || a[type] < (avail[best][type]))) best=k; });\n    return best;\n  }\n  function applyStockLimits(){\n    var m=minAvail(), changed=[];\n    [[fCity,\"city\",L.city_name],[fCross,\"cross\",L.cross_name]].forEach(function(t){\n      var sel=t[0], key=t[1], name=t[2], max=Object.keys(selected).length ? m[key] : 2;\n      Array.prototype.forEach.call(sel.options, function(o){ o.disabled = (+o.value > max); });\n      if(+sel.value > max){ sel.value=String(max); var d=limitDate(key); changed.push(T(L.clamped,{day:(d? fmtDay(d) : \"\"), name:name, max:max})); }\n    });\n    var ks=Object.keys(selected).length;\n    stockEl.innerHTML = ks ? (m.known ? T(L.stock,{c:m.city, x:m.cross}) : L.stock_loading) : \"\";\n    if(changed.length){ showMsg(\"info\", changed.map(esc).join(\"<br>\")); }\n    else if(msgKind===\"info\"){ hideMsg(); }\n  }\n  function dayBtn(k){ return cal.querySelector('.igb-day[data-d=\"'+k+'\"]'); }\n  function selectable(k){ var b=dayBtn(k); return b && !b.disabled && !b.classList.contains(\"full\"); }\n  function toggleDate(d){\n    var p=plan(), need=PLAN_DAYS[p], cur=Object.keys(selected).length;\n    if(selected[d]) { delete selected[d]; }\n    else if(need===1){ selected={}; selected[d]=true; }\n    else if(cur===0){\n      \/\/ \u6700\u521d\u306e\u65e5: \u5fc5\u8981\u65e5\u6570\u3076\u3093\u9023\u7d9a\u65e5\u3092\u4eee\u9078\u629e\uff08\u6e80\u8eca\u30fb\u7bc4\u56f2\u5916\u306f\u98db\u3070\u3059\uff09\n      selected={}; var t=parseYmd(d), got=0;\n      while(got<need && t<=parseYmd(LAST)){ var k=ymd(new Date(t)); if(selectable(k)){ selected[k]=true; got++; } t+=86400000; }\n    }\n    else { selected[d]=true; }\n    Array.prototype.forEach.call(cal.querySelectorAll(\".igb-day\"), function(c){ c.classList.toggle(\"on\", !!selected[c.getAttribute(\"data-d\")]); });\n    renderSel(); recalc();\n  }\n  function loadAvail(){\n    var url=GAS_URL+\"?action=bike_avail&from=\"+encodeURIComponent(TODAY)+\"&to=\"+encodeURIComponent(LAST);\n    fetch(url,{method:\"GET\",redirect:\"follow\"}).then(function(r){return r.json();}).then(function(j){\n      if(j && j.ok && j.days){ avail=j.days; }\n      else { avail=null; availNote.textContent=L.avail_fail; }\n      renderCal(); recalc();\n    }).catch(function(){ avail=null; availNote.textContent=L.avail_fail; renderCal(); recalc(); });\n  }\n\n  \/\/ ---- quote (DESIGN \u00a72 \u3068\u540c\u3058\u8a08\u7b97\u3002\u30b5\u30fc\u30d0\u5074\u304c\u6b63) ----\n  function applyStartLimits(){\n    \/\/ \u4eca\u65e5\u3092\u9078\u3093\u3067\u3044\u308b\u5834\u5408\u3001\u958b\u59cb\u6642\u523b\u3092\u300c\u73fe\u5728\u6642\u523b\uff0b30\u5206\u4ee5\u964d\u300d\u306b\u7d5e\u308b\uff08\u6709\u6599\u306e\u5f53\u65e5\u30fb\u76f4\u524d\u7533\u8fbc\u306b\u5bfe\u5fdc\uff09\n    var today = !!selected[TODAY], limit = Date.now() + 30*60*1000, firstOk = null;\n    Array.prototype.forEach.call(fStart.options, function(o){\n      var hh=+o.value.slice(0,2), mm=+o.value.slice(3,5);\n      o.disabled = today && (jstMs(TODAY,hh,mm) < limit);\n      if(!o.disabled && firstOk===null) firstOk=o.value;\n    });\n    if(fStart.options[fStart.selectedIndex] && fStart.options[fStart.selectedIndex].disabled && firstOk!==null) fStart.value=firstOk;\n  }\n  function quote(){\n    var dates=Object.keys(selected).sort(), n=dates.length, city=+fCity.value, cross=+fCross.value, p=plan(), three=(p===\"short\"), need=PLAN_DAYS[p], errors=[];\n    var q={amount:0, plan_label:\"\", free:false, deadline:NaN, dates:dates, city:city, cross:cross, three:three, errors:errors, start:fStart.value};\n    if(city+cross<1){ var mm=minAvail(); errors.push((n>=1 && mm.city===0 && mm.cross===0) ? L.err_full_dates : L.err_min_one); }\n    if(n<1) errors.push(L.err_no_dates);\n    else if(p===\"4plus\" && n<4) errors.push(T(L.err_4plus,{n:n}));\n    else if(p!==\"4plus\" && n!==need){ errors.push(T(L.err_mismatch,{plan:L.plan_name[p], need:need, n:n})); q.mismatch=true; }\n    var sh=+fStart.value.slice(0,2), sm=+fStart.value.slice(3,5);\n    var endLabel = three ? (pad(Math.min(sh+3,23))+\":\"+(sh+3>=23?\"00\":pad(sm))) : \"23:00\";\n    if(three){\n      q.amount = city*PRICE.city.short*n + cross*PRICE.cross.short*n;\n      q.free = (cross===0 && city>=1);\n      q.plan_label = T(L.label_short,{start:fStart.value, end:endLabel}) + (q.free ? L.free_suffix : \"\");\n    } else {\n      var pc, pk, m=Math.max(n,1);   \/\/ \u65e5\u6570\u306f\u30ab\u30ec\u30f3\u30c0\u30fc\u306e\u9078\u629e\u6570\uff08\u30d7\u30e9\u30f3\u3068\u4e0d\u4e00\u81f4\u306a\u3089\u4e0a\u306e\u30a8\u30e9\u30fc\u3067\u9001\u4fe1\u4e0d\u53ef\uff09\n      if(p===\"full\"||m<=1){ pc=PRICE.city.one; pk=PRICE.cross.one; q.plan_label=T(L.label_full,{start:fStart.value}); }\n      else if(m===2){ pc=PRICE.city.two; pk=PRICE.cross.two; q.plan_label=L.plan_name[\"2d\"]; }\n      else if(m===3){ pc=PRICE.city.three; pk=PRICE.cross.three; q.plan_label=L.plan_name[\"3d\"]; }\n      else { pc=PRICE.city.three+(m-3)*PRICE.city.extra; pk=PRICE.cross.three+(m-3)*PRICE.cross.extra; q.plan_label=T(L.label_days,{n:m}); }\n      q.amount = city*pc + cross*pk;\n    }\n    if(n>=1 && selected[TODAY] && Array.prototype.every.call(fStart.options, function(o){ return o.disabled; })){ errors.push(L.err_no_start_today); q.late=true; q.late_text=L.err_no_start_today; }\n    if(n>=1){\n      var first=dates[0];\n      \/\/ \u6709\u6599\u30fb\u7121\u6599\u3068\u3082\u5229\u7528\u958b\u59cb\u306e30\u5206\u524d\u307e\u3067\uff082026-09-28 \u30eb\u30fc\u30eb\u5909\u66f4\uff09\n      q.deadline = jstMs(first, sh, sm) - 30*60*1000; q.deadline_label=T(L.dl_paid,{t:fmtJst(q.deadline)});\n      if(Date.now() > q.deadline){\n        q.late_text = L.late_paid;\n        errors.push(q.late_text); q.late=true;\n      }\n      if(avail){\n        dates.forEach(function(d){ var a=avail[d]; if(!a) return;\n          if(city>a.city) errors.push(T(L.err_city_avail,{day:fmtDay(d), n:a.city}));\n          if(cross>a.cross) errors.push(T(L.err_cross_avail,{day:fmtDay(d), n:a.cross}));\n        });\n      }\n    }\n    return q;\n  }\n  function isBlocking(e){ return e===L.err_full_dates || e===L.err_min_one || e.indexOf(L.err_mismatch_key)>=0; }\n  function recalc(){\n    var q=quote();\n    if(!q.dates.length){\n      \/\/ \u5229\u7528\u65e5\u672a\u9078\u629e: \u91d1\u984d\u30fb\u30d7\u30e9\u30f3\u540d\u30fb\u7de0\u5207\u306f\u51fa\u3055\u306a\u3044\uff08\u300c\u00a50\u30fb\u7121\u6599\u300d\u304c\u30af\u30ed\u30b9\u30d0\u30a4\u30af\u3082\u7121\u6599\u3068\u8aa4\u8aad\u3055\u308c\u308b\u305f\u3081\uff09\n      amountEl.innerHTML = '\u2014<small>'+L.amount_placeholder+'<\/small>';\n      planEl.textContent = T(L.qty_line,{c:q.city, x:q.cross});\n      dlEl.textContent = \"\";\n    } else {\n      amountEl.innerHTML = yen(q.amount) + '<small>' + L.tax + (q.free? L.free_tag : \"\") + '<\/small>';\n      var parts=[T(L.line_dates,{list:q.dates.map(fmtDay).join(L.sep_list)})];\n      if(q.plan_label) parts.push(T(L.line_plan,{p:q.plan_label}));\n      parts.push(T(L.qty_line,{c:q.city, x:q.cross}));\n      planEl.textContent = parts.join(L.sep_parts);\n      dlEl.textContent = q.deadline_label ? (L.dl_prefix+q.deadline_label) : \"\";\n    }\n    var block = q.late ? q.late_text : (q.errors.filter(isBlocking)[0] || \"\");   \/\/ \u65e5\u6570\u4e0d\u4e00\u81f4\u30fb\u5408\u8a080\u53f0\u3082\u9001\u4fe1\u4e0d\u53ef\n    if(!q.dates.length) block=\"\";   \/\/ \u672a\u9078\u629e\u6642\u306f\u30e1\u30c3\u30bb\u30fc\u30b8\u306f\u51fa\u3055\u305a\u30dc\u30bf\u30f3\u3060\u3051\u7121\u52b9\n    if(block){ showMsg(\"late\", esc(block)); }\n    else if(msgKind===\"late\"){ hideMsg(); }     \/\/ \u9001\u4fe1\u30a8\u30e9\u30fc\u7b49\u306e\u8868\u793a\u306f\u6d88\u3055\u306a\u3044\n    btn.disabled = !!block || !q.dates.length;\n  }\n\n  \/\/ ---- validate & submit ----\n  function validate(q){\n    var errs=[];\n    if(!fName.value.trim()) errs.push(L.v_name);\n    if(!fRoom.value.trim()) errs.push(L.v_room);\n    if(!fSite.value) errs.push(L.v_site);\n    errs = errs.concat(q.errors);\n    if(!fAgree.checked) errs.push(L.v_agree);\n    return errs;\n  }\n  form.addEventListener(\"submit\", function(ev){\n    ev.preventDefault();\n    var q=quote(), errs=validate(q);\n    if(errs.length){ showMsg(\"err\", errs.map(esc).join(\"<br>\")); return; }\n    var payload={ action:\"bike_submit\", name:fName.value.trim(), room:fRoom.value.trim(), site:fSite.value, booking_no:fBooking.value.trim(), dates:q.dates, start:fStart.value,\n      three_hours:q.three, city:q.city, cross:q.cross, lang:LANG, note:\"\", agree:true, client_amount:q.amount };\n    btn.disabled=true; btn.innerHTML='<span class=\"igb-spin\"><\/span>'+L.sending; hideMsg();\n    fetch(GAS_URL,{method:\"POST\",body:JSON.stringify(payload),redirect:\"follow\"})\n      .then(function(r){ return r.text(); })\n      .then(function(t){ var j; try{ j=JSON.parse(t); }catch(e){ throw {code:\"bad_json\", error:t.slice(0,120)}; } return j; })\n      .then(function(j){ if(!j || !j.ok){ throw j || {code:\"unknown\"}; } renderResult(j, q); })\n      .catch(function(e){\n        var code = e && e.code, text;\n        if(code===\"late_paid\") text=L.e_late_paid;\n        else if(code===\"late_free\") text=L.e_late_paid;   \/\/ \u65e7\u30b3\u30fc\u30c9\u4e92\u63db\uff08\u7de0\u5207\u306f\u5171\u901a\u306e30\u5206\u524d\uff09\n        else if(code===\"no_stock\") text=L.e_no_stock;\n        else if(code===\"bad_dates\") text=L.e_bad_dates;\n        else if(code===\"invalid\") text=L.e_invalid+(e.error? \" (\"+esc(e.error)+\")\":\"\");\n        else text=L.e_generic+(e&&e.error? \"<br><small>\"+esc(e.error)+\"<\/small>\":\"\");\n        showMsg(\"err\", text);\n        btn.disabled=false; btn.textContent=L.btn_submit;\n        loadAvail();\n      });\n  });\n  function guideMsg(j){ var m = j && (j[MSG_FIELD] || j.message); return m ? '<div class=\"igb-notice\">'+esc(m)+'<\/div>' : \"\"; }\n  function keysHtml(keys){\n    if(!keys) return \"\";\n    var rows=[];\n    if(typeof keys===\"string\"){ rows.push('<div class=\"igb-key\"><span>'+L.key_label+'<\/span><b>'+esc(keys)+'<\/b><\/div>'); }\n    else if(Array.isArray(keys)){ keys.forEach(function(k){ if(k&&typeof k===\"object\") rows.push('<div class=\"igb-key\"><span>'+esc(k.label||(LANG===\"ja\"? k.ja : k.en)||k.ja||k.bike||k.name||\"\")+'<\/span><b>'+esc(k.key||k.code||k.value||\"\")+'<\/b><\/div>'); else rows.push('<div class=\"igb-key\"><span>'+L.key_label+'<\/span><b>'+esc(k)+'<\/b><\/div>'); }); }\n    else { Object.keys(keys).forEach(function(k){ rows.push('<div class=\"igb-key\"><span>'+esc(k)+'<\/span><b>'+esc(keys[k])+'<\/b><\/div>'); }); }\n    return rows.length ? '<div class=\"igb-shot-top\"><span class=\"igb-shot-ico\" aria-hidden=\"true\">\ud83d\udcf8<\/span><div><b>'+L.shot_top_h+'<\/b><span>'+L.shot_top_p+'<\/span><\/div><\/div>'+\n      '<div class=\"igb-keys\"><div style=\"font-weight:600;margin-bottom:4px\">'+L.key_title+'<\/div>'+rows.join(\"\")+'<\/div>' : \"\";\n  }\n  var SHOT = '<div class=\"igb-shot\">'+L.shot_html+'<\/div>';\n  function summaryRows(j, q){\n    return '<table class=\"igb-kv\">'+\n      '<tr><th>'+L.s_id+'<\/th><td>'+esc(j.id||\"\")+'<\/td><\/tr>'+\n      '<tr><th>'+L.s_name_room+'<\/th><td>'+esc(fName.value.trim())+' \/ '+esc(fRoom.value.trim())+'<\/td><\/tr>'+\n      '<tr><th>'+L.s_site+'<\/th><td>'+esc(siteLabel())+(fBooking.value.trim()? ' ('+esc(fBooking.value.trim())+')' : '')+'<\/td><\/tr>'+\n      '<tr><th>'+L.s_dates+'<\/th><td>'+esc(q.dates.map(fmtDay).join(L.sep_list))+'<\/td><\/tr>'+\n      '<tr><th>'+L.s_plan+'<\/th><td>'+esc(q.plan_label)+'<\/td><\/tr>'+\n      '<tr><th>'+L.s_qty+'<\/th><td>'+esc(T(L.qty_plain,{c:q.city, x:q.cross}))+'<\/td><\/tr>'+\n      '<tr><th>'+L.s_price+'<\/th><td>'+yen(j.amount!=null? j.amount : q.amount)+L.tax_paren+'<\/td><\/tr><\/table>';\n  }\n  function siteLabel(){ var o=fSite.options[fSite.selectedIndex]; return o && o.value ? o.text : \"\"; }\n  function isAirbnb(){ return fSite.value===\"airbnb\"; }\n  function checkUrl(j){\n    \/\/ \u9375\u756a\u53f7\u306e\u78ba\u8a8d\u7528URL\uff08GAS \u304c status_url\/check_url \u3092\u8fd4\u305b\u3070\u305d\u308c\u3092\u512a\u5148\u3002\u7121\u3051\u308c\u3070 id \u3068 k \u304b\u3089\u540c\u30da\u30fc\u30b8\u306e ?check=1 \u3092\u7d44\u307f\u7acb\u3066\u308b\uff09\n    var u = j && (j.status_url || j.check_url || \"\");\n    if(!u && j && j.id && j.k) u = location.origin + location.pathname + \"?check=1&id=\" + encodeURIComponent(j.id) + \"&k=\" + encodeURIComponent(j.k);\n    return u;\n  }\n  function pendingBox(body, dl){\n    \/\/ \u300c\u307e\u3060\u78ba\u5b9a\u3057\u3066\u3044\u307e\u305b\u3093\u300d\u5f37\u8abf\u67a0\uff08\u898b\u51fa\u3057\u306e\u76f4\u4e0b\u30fb\u53d7\u4ed8\u5185\u5bb9\u3088\u308a\u4e0a\uff09\n    return '<div class=\"igb-pending\" role=\"alert\"><span class=\"igb-pending-ico\" aria-hidden=\"true\">\u26a0\ufe0f<\/span><div><b class=\"igb-pending-h\">'+L.pend_h+'<\/b>'+body+\n      (dl? '<br>'+T(L.pend_deadline,{dl:\"<strong>\"+esc(dl)+\"<\/strong>\"}) : '')+'<br>'+L.pend_keys+'<\/div><\/div>';\n  }\n  function renderResult(j, q){\n    form.style.display=\"none\";\n    var html, message = guideMsg(j);\n    var abPending = (j.status===\"pending_airbnb\") || (isAirbnb() && !q.free && !(j.keys && j.keys.length));\n    if(abPending){\n      var cu = checkUrl(j);\n      var adl = j.pay_deadline_iso ? fmtJst(new Date(j.pay_deadline_iso).getTime()) : \"\";\n      html = '<h3>'+L.r_pending_h+'<\/h3>'+pendingBox(L.pend_ab, adl)+summaryRows(j,q)+message+\n        (cu? '<a class=\"igb-check-link\" href=\"'+esc(cu)+'\">'+L.r_ab_check+'<\/a>' : '')+\n        '<div class=\"igb-shot-top\"><span class=\"igb-shot-ico\" aria-hidden=\"true\">\ud83d\udcf8<\/span><div><b>'+L.shot_top_h+'<\/b><span>'+L.shot_top_p_ab+'<\/span><\/div><\/div>'+SHOT;\n    } else if(j.payment_url){\n      var dl = j.pay_deadline_iso ? fmtJst(new Date(j.pay_deadline_iso).getTime()) : \"\";\n      html = '<h3>'+L.r_pending_h+'<\/h3>'+pendingBox(L.pend_paid, dl)+summaryRows(j,q)+message+\n        '<a class=\"igb-btn igb-pay\" href=\"'+esc(j.payment_url)+'\" rel=\"noopener\">'+L.r_pay_btn+'<\/a>'+\n        '<p class=\"igb-hint\" style=\"margin-top:10px\">'+L.r_pay_hint+'<\/p>'+SHOT;\n    } else {\n      html = '<h3>'+L.r_free_h+'<\/h3>'+summaryRows(j,q)+keysHtml(j.keys)+message+\n        (message? \"\" : '<p class=\"igb-hint\">'+L.r_free_hint+'<\/p>')+SHOT;\n    }\n    result.innerHTML=html; result.className=\"igb-result show\";\n    try{ result.scrollIntoView({behavior:\"smooth\",block:\"start\"}); }catch(e){}\n  }\n\n  \/\/ ---- Stripe \u6c7a\u6e08\u5b8c\u4e86\u30ea\u30c0\u30a4\u30ec\u30af\u30c8 (?paid=1&id=IGB-xxxx&k=...) ----\n  function handlePaidLanding(){\n    var qs = new URLSearchParams(location.search);\n    var paid = qs.get(\"paid\")===\"1\";\n    var check = !paid && qs.get(\"id\") && qs.get(\"k\");      \/\/ ?check=1&id&k\uff08Airbnb \u7b49\u306e\u9375\u756a\u53f7\u78ba\u8a8d\uff09\u2192 bike_status\n    if(!paid && !check) return false;\n    var id=qs.get(\"id\")||\"\", k=qs.get(\"k\")||\"\", s=qs.get(\"s\")||qs.get(\"session_id\")||\"\";\n    form.style.display=\"none\";\n    result.className=\"igb-result show\";\n    result.innerHTML='<h3>'+(check? L.l_checking_status : L.l_checking)+'<\/h3><p><span class=\"igb-spin\"><\/span>'+L.l_wait+'<\/p>';\n    var url = check\n      ? GAS_URL+\"?action=bike_status&id=\"+encodeURIComponent(id)+\"&k=\"+encodeURIComponent(k)\n      : GAS_URL+\"?action=bike_paid&id=\"+encodeURIComponent(id)+\"&k=\"+encodeURIComponent(k)+(s?\"&s=\"+encodeURIComponent(s):\"\");\n    var t0=Date.now(), POLL_MS=3000, POLL_MAX=120000;\n    var stUrl=GAS_URL+\"?action=bike_status&id=\"+encodeURIComponent(id)+\"&k=\"+encodeURIComponent(k);\n    function render(j){\n      var message = guideMsg(j);\n      if(j && j.ok && (j.status===\"paid\"||j.status===\"confirmed\")){\n        result.innerHTML='<h3>'+L.l_thanks_h+'<\/h3><p>'+T(L.l_thanks_p,{id:\"<strong>\"+esc(id)+\"<\/strong>\"})+'<\/p>'+keysHtml(j.keys)+message+\n          (message? \"\" : '<p class=\"igb-hint\">'+L.l_thanks_hint+'<\/p>')+SHOT;\n      } else if(j && j.ok && paid && j.status===\"pending_payment\"){\n        \/\/ v3.5.0: \u652f\u6255\u5b8c\u4e86\u306e\u623b\u308a\u3002\u78ba\u5b9a\uff08Stripe \u306e\u901a\u77e5\uff09\u3092\u5f85\u3064\u9593\u306f\u30dd\u30fc\u30ea\u30f3\u30b0\u3002\u9375\u756a\u53f7\u306f paid \u306b\u306a\u3063\u3066\u304b\u3089\n        if(Date.now()-t0 < POLL_MAX){\n          result.innerHTML='<h3>'+L.l_checking+'<\/h3><p><span class=\"igb-spin\"><\/span>'+L.l_wait+'<\/p>';\n          setTimeout(function(){ get(stUrl); }, POLL_MS);\n          return;\n        }\n        var su = j.status_url || (location.origin + location.pathname + \"?check=1&id=\" + encodeURIComponent(id) + \"&k=\" + encodeURIComponent(k));\n        result.innerHTML='<h3>'+L.l_wait_pay_h+'<\/h3><p>'+T(L.l_poll_timeout,{id:\"<strong>\"+esc(id)+\"<\/strong>\"})+'<\/p>'+\n          '<a class=\"igb-check-link\" href=\"'+esc(su)+'\">'+L.l_reload+'<\/a>'+SHOT;\n      } else if(j && j.ok && check && (j.status===\"pending_airbnb\" || j.status===\"pending_payment\")){\n        var payLink = (j.status===\"pending_payment\" && j.payment_url) ? '<a class=\"igb-btn igb-pay\" href=\"'+esc(j.payment_url)+'\" rel=\"noopener\">'+L.r_pay_btn+'<\/a>' : '';\n        result.innerHTML='<h3>'+L.l_wait_pay_h+'<\/h3><p>'+T(j.status===\"pending_airbnb\"? L.l_wait_ab_p : L.l_wait_pay_p,{id:\"<strong>\"+esc(id)+\"<\/strong>\"})+'<\/p>'+message+payLink+\n          '<a class=\"igb-check-link\" href=\"'+esc(location.href)+'\">'+L.l_reload+'<\/a>'+SHOT;\n      } else if(j && j.ok && check && (j.status===\"expired\" || j.status===\"cancelled\")){\n        result.innerHTML='<h3>'+(j.status===\"expired\"? L.l_expired_h : L.l_cancelled_h)+'<\/h3><p>'+T(j.status===\"expired\"? L.l_expired_p : L.l_cancelled_p,{id:\"<strong>\"+esc(id)+\"<\/strong>\"})+'<\/p>'+message+SHOT;\n      } else if(j && j.ok && check){\n        result.innerHTML='<h3>'+L.l_fail_h+'<\/h3><p>'+T(L.l_status_other,{id:\"<strong>\"+esc(id)+\"<\/strong>\", status:esc(j.status||\"\")})+'<\/p>'+message+SHOT;\n      } else if(j && j.ok){\n        result.innerHTML='<h3>'+L.l_accepted_h+'<\/h3><p>'+T(L.l_accepted_p,{id:\"<strong>\"+esc(id)+\"<\/strong>\", status:esc(j.status||\"\")})+'<\/p>'+message+SHOT;\n      } else {\n        result.innerHTML='<h3>'+L.l_fail_h+'<\/h3><p>'+esc((j&&j.error)||L.l_fail_default)+'<br>'+T(L.l_fail_p,{id:esc(id)})+'<\/p>';\n      }\n    }\n    function get(u){\n      fetch(u,{method:\"GET\",redirect:\"follow\"}).then(function(r){return r.json();}).then(render).catch(function(){\n        if(paid && Date.now()-t0 < POLL_MAX){ setTimeout(function(){ get(stUrl); }, POLL_MS); return; }\n        result.innerHTML='<h3>'+L.l_neterr_h+'<\/h3><p>'+T(L.l_neterr_p,{id:esc(id)})+'<\/p>';\n      });\n    }\n    get(url);\n    return true;\n  }\n\n  \/\/ ---- wire up ----\n  [fStart,fCity,fCross].forEach(function(el){ el.addEventListener(\"change\", recalc); });\n  function abToggle(){ abNote.classList.toggle(\"show\", isAirbnb()); }\n  fSite.addEventListener(\"change\", abToggle);\n  Array.prototype.forEach.call(form.querySelectorAll('input[name=plan]'), function(r){\n    r.addEventListener(\"change\", function(){\n      Array.prototype.forEach.call(form.querySelectorAll(\".igb-plan-opt\"), function(l){ l.classList.toggle(\"on\", l.querySelector(\"input\").checked); });\n      var need=PLAN_DAYS[plan()], ks=Object.keys(selected).sort();\n      if(plan()!==\"4plus\" && ks.length>need){ selected={}; ks.slice(0,need).forEach(function(k){ selected[k]=true; }); }   \/\/ \u591a\u3059\u304e\u308b\u5206\u306f\u5148\u982d\u304b\u3089\u6b8b\u3059\n      Array.prototype.forEach.call(cal.querySelectorAll(\".igb-day\"), function(c){ c.classList.toggle(\"on\", !!selected[c.getAttribute(\"data-d\")]); });\n      renderSel(); recalc();\n    });\n  });\n  Array.prototype.forEach.call(form.querySelectorAll(\".igb-plan-opt\"), function(l){ l.classList.toggle(\"on\", l.querySelector(\"input\").checked); });\n  if(!handlePaidLanding()){ renderCal(); recalc(); loadAvail(); }\n})();\n<\/script>\n<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-4d3f0401 elementor-section-stretched elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"4d3f0401\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;stretch_section&quot;:&quot;section-stretched&quot;,&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-no\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-igbtailc\" data-id=\"igbtailc\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-180dbdb elementor-widget elementor-widget-heading\" data-id=\"180dbdb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Reservation<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-443f759 igb-jp elementor-widget elementor-widget-heading\" data-id=\"443f759\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Reservierung &amp; Verf\u00fcgbarkeit<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-34df6dd6 elementor-align-center elementor-mobile-align-justify igb-btnf elementor-widget elementor-widget-button\" data-id=\"34df6dd6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-md\" href=\"https:\/\/hotel-ishigaki.airhost.co\/en\" target=\"_blank\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Verf\u00fcgbarkeit pr\u00fcfen<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Bike Rental Ishigaki ganz entspannt mit dem Fahrrad entdecken. Bike Rental Fahrradverleih f\u00fcr unsere G\u00e4ste Das Hotel Ishigaki &amp; Chikonkiya bietet seinen G\u00e4sten Leihfahrr\u00e4der an.Ob zum F\u00e4hrterminal, ins Stadtzentrum oder entlang der K\u00fcste \u2013 erkunden Sie die Insel Ishigaki in aller Ruhe. Citybike Ideal f\u00fcr Wege durch die Stadt.Bis zu 3 Stunden kostenlos (einmal pro [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_templately_pack_id":"","_templately_imported_at":"","_templately_source":"","_templately_import_session_id":"","_locale":"de_DE","_original_post":"https:\/\/hotel-ishigaki.com\/?page_id=1571","footnotes":""},"class_list":["post-2653","page","type-page","status-publish","hentry","de-DE"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"Fahrradverleih f\u00fcr G\u00e4ste des Hotel Ishigaki: Citybikes bis 3 Stunden kostenlos, Crossbikes ab \u00a51.000. Online-Anfrage bis 30 Minuten vor Mietbeginn.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/hotel-ishigaki.com\/de\/bike_rental\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"\u3010\u516c\u5f0f\u3011\u30db\u30c6\u30eb\u77f3\u57a3 &amp; \u3061\u3053\u3093\u304d\u3084\u30fc - \u300e\u5cf6\u306e\u4e2d\u5fc3\u3067\u3001\u5fc3\u3068\u8eab\u4f53\u3092\u6574\u3048\u308b\u300f \u30d2\u30ce\u30ad\u304c\u9999\u308b\u9ad8\u7d1a\u30d9\u30c3\u30c9\u3001\u81ea\u7136\u3092\u611b\u3059\u308b\u6d41\u6728\u5bb6\u5177 \u81ea\u5206\u3060\u3051\u306e\u6642\u9593\u3092\u904e\u3054\u305d\u3046\u3002\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Fahrradverleih auf Ishigaki | Hotel Ishigaki &amp; Chikonkiya\" \/>\n\t\t<meta property=\"og:description\" content=\"Fahrradverleih f\u00fcr G\u00e4ste des Hotel Ishigaki: Citybikes bis 3 Stunden kostenlos, Crossbikes ab \u00a51.000. Online-Anfrage bis 30 Minuten vor Mietbeginn.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/hotel-ishigaki.com\/de\/bike_rental\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2023\/10\/cropped-\u80cc\u666f\u7121\u3057\u3061\u3053\u3093\u304d\u3084\u30fc\u30ed\u30b4\u306e\u307f\u5c0f.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2023\/10\/cropped-\u80cc\u666f\u7121\u3057\u3061\u3053\u3093\u304d\u3084\u30fc\u30ed\u30b4\u306e\u307f\u5c0f.png\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-07T05:00:49+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-07T07:59:46+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Fahrradverleih auf Ishigaki | Hotel Ishigaki &amp; Chikonkiya\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Fahrradverleih f\u00fcr G\u00e4ste des Hotel Ishigaki: Citybikes bis 3 Stunden kostenlos, Crossbikes ab \u00a51.000. Online-Anfrage bis 30 Minuten vor Mietbeginn.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2023\/10\/cropped-\u80cc\u666f\u7121\u3057\u3061\u3053\u3093\u304d\u3084\u30fc\u30ed\u30b4\u306e\u307f\u5c0f.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/hotel-ishigaki.com\\\/de\\\/bike_rental\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/hotel-ishigaki.com\\\/#listItem\",\"position\":1,\"name\":\"\\u5bb6\",\"item\":\"https:\\\/\\\/hotel-ishigaki.com\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/hotel-ishigaki.com\\\/de\\\/bike_rental\\\/#listItem\",\"name\":\"BIKE (DE)\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/hotel-ishigaki.com\\\/de\\\/bike_rental\\\/#listItem\",\"position\":2,\"name\":\"BIKE (DE)\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/hotel-ishigaki.com\\\/#listItem\",\"name\":\"\\u5bb6\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/hotel-ishigaki.com\\\/#organization\",\"name\":\"\\u30db\\u30c6\\u30eb\\u77f3\\u57a3 & \\u3061\\u3053\\u3093\\u304d\\u3084\\u30fc\",\"description\":\"\\u300e\\u5cf6\\u306e\\u4e2d\\u5fc3\\u3067\\u3001\\u5fc3\\u3068\\u8eab\\u4f53\\u3092\\u6574\\u3048\\u308b\\u300f \\u30d2\\u30ce\\u30ad\\u304c\\u9999\\u308b\\u9ad8\\u7d1a\\u30d9\\u30c3\\u30c9\\u3001\\u81ea\\u7136\\u3092\\u611b\\u3059\\u308b\\u6d41\\u6728\\u5bb6\\u5177 \\u81ea\\u5206\\u3060\\u3051\\u306e\\u6642\\u9593\\u3092\\u904e\\u3054\\u305d\\u3046\\u3002\",\"url\":\"https:\\\/\\\/hotel-ishigaki.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/hotel-ishigaki.com\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/cropped-\\u80cc\\u666f\\u7121\\u3057\\u3061\\u3053\\u3093\\u304d\\u3084\\u30fc\\u30ed\\u30b4\\u306e\\u307f\\u5c0f.png\",\"@id\":\"https:\\\/\\\/hotel-ishigaki.com\\\/de\\\/bike_rental\\\/#organizationLogo\",\"width\":239,\"height\":239},\"image\":{\"@id\":\"https:\\\/\\\/hotel-ishigaki.com\\\/de\\\/bike_rental\\\/#organizationLogo\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/hotel-ishigaki.com\\\/de\\\/bike_rental\\\/#webpage\",\"url\":\"https:\\\/\\\/hotel-ishigaki.com\\\/de\\\/bike_rental\\\/\",\"name\":\"Fahrradverleih auf Ishigaki | Hotel Ishigaki & Chikonkiya\",\"description\":\"Fahrradverleih f\\u00fcr G\\u00e4ste des Hotel Ishigaki: Citybikes bis 3 Stunden kostenlos, Crossbikes ab \\u00a51.000. Online-Anfrage bis 30 Minuten vor Mietbeginn.\",\"inLanguage\":\"de-DE\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/hotel-ishigaki.com\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/hotel-ishigaki.com\\\/de\\\/bike_rental\\\/#breadcrumblist\"},\"datePublished\":\"2026-10-07T14:00:49+09:00\",\"dateModified\":\"2026-10-07T16:59:46+09:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/hotel-ishigaki.com\\\/#website\",\"url\":\"https:\\\/\\\/hotel-ishigaki.com\\\/\",\"name\":\"\\u30db\\u30c6\\u30eb\\u77f3\\u57a3 & \\u3061\\u3053\\u3093\\u304d\\u3084\\u30fc\",\"description\":\"\\u300e\\u5cf6\\u306e\\u4e2d\\u5fc3\\u3067\\u3001\\u5fc3\\u3068\\u8eab\\u4f53\\u3092\\u6574\\u3048\\u308b\\u300f \\u30d2\\u30ce\\u30ad\\u304c\\u9999\\u308b\\u9ad8\\u7d1a\\u30d9\\u30c3\\u30c9\\u3001\\u81ea\\u7136\\u3092\\u611b\\u3059\\u308b\\u6d41\\u6728\\u5bb6\\u5177 \\u81ea\\u5206\\u3060\\u3051\\u306e\\u6642\\u9593\\u3092\\u904e\\u3054\\u305d\\u3046\\u3002\",\"inLanguage\":\"de-DE\",\"publisher\":{\"@id\":\"https:\\\/\\\/hotel-ishigaki.com\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Fahrradverleih auf Ishigaki | Hotel Ishigaki & Chikonkiya","description":"Fahrradverleih f\u00fcr G\u00e4ste des Hotel Ishigaki: Citybikes bis 3 Stunden kostenlos, Crossbikes ab \u00a51.000. Online-Anfrage bis 30 Minuten vor Mietbeginn.","canonical_url":"https:\/\/hotel-ishigaki.com\/de\/bike_rental\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https:\/\/hotel-ishigaki.com\/de\/bike_rental\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/hotel-ishigaki.com\/#listItem","position":1,"name":"\u5bb6","item":"https:\/\/hotel-ishigaki.com\/","nextItem":{"@type":"ListItem","@id":"https:\/\/hotel-ishigaki.com\/de\/bike_rental\/#listItem","name":"BIKE (DE)"}},{"@type":"ListItem","@id":"https:\/\/hotel-ishigaki.com\/de\/bike_rental\/#listItem","position":2,"name":"BIKE (DE)","previousItem":{"@type":"ListItem","@id":"https:\/\/hotel-ishigaki.com\/#listItem","name":"\u5bb6"}}]},{"@type":"Organization","@id":"https:\/\/hotel-ishigaki.com\/#organization","name":"\u30db\u30c6\u30eb\u77f3\u57a3 & \u3061\u3053\u3093\u304d\u3084\u30fc","description":"\u300e\u5cf6\u306e\u4e2d\u5fc3\u3067\u3001\u5fc3\u3068\u8eab\u4f53\u3092\u6574\u3048\u308b\u300f \u30d2\u30ce\u30ad\u304c\u9999\u308b\u9ad8\u7d1a\u30d9\u30c3\u30c9\u3001\u81ea\u7136\u3092\u611b\u3059\u308b\u6d41\u6728\u5bb6\u5177 \u81ea\u5206\u3060\u3051\u306e\u6642\u9593\u3092\u904e\u3054\u305d\u3046\u3002","url":"https:\/\/hotel-ishigaki.com\/","logo":{"@type":"ImageObject","url":"https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2023\/10\/cropped-\u80cc\u666f\u7121\u3057\u3061\u3053\u3093\u304d\u3084\u30fc\u30ed\u30b4\u306e\u307f\u5c0f.png","@id":"https:\/\/hotel-ishigaki.com\/de\/bike_rental\/#organizationLogo","width":239,"height":239},"image":{"@id":"https:\/\/hotel-ishigaki.com\/de\/bike_rental\/#organizationLogo"}},{"@type":"WebPage","@id":"https:\/\/hotel-ishigaki.com\/de\/bike_rental\/#webpage","url":"https:\/\/hotel-ishigaki.com\/de\/bike_rental\/","name":"Fahrradverleih auf Ishigaki | Hotel Ishigaki & Chikonkiya","description":"Fahrradverleih f\u00fcr G\u00e4ste des Hotel Ishigaki: Citybikes bis 3 Stunden kostenlos, Crossbikes ab \u00a51.000. Online-Anfrage bis 30 Minuten vor Mietbeginn.","inLanguage":"de-DE","isPartOf":{"@id":"https:\/\/hotel-ishigaki.com\/#website"},"breadcrumb":{"@id":"https:\/\/hotel-ishigaki.com\/de\/bike_rental\/#breadcrumblist"},"datePublished":"2026-10-07T14:00:49+09:00","dateModified":"2026-10-07T16:59:46+09:00"},{"@type":"WebSite","@id":"https:\/\/hotel-ishigaki.com\/#website","url":"https:\/\/hotel-ishigaki.com\/","name":"\u30db\u30c6\u30eb\u77f3\u57a3 & \u3061\u3053\u3093\u304d\u3084\u30fc","description":"\u300e\u5cf6\u306e\u4e2d\u5fc3\u3067\u3001\u5fc3\u3068\u8eab\u4f53\u3092\u6574\u3048\u308b\u300f \u30d2\u30ce\u30ad\u304c\u9999\u308b\u9ad8\u7d1a\u30d9\u30c3\u30c9\u3001\u81ea\u7136\u3092\u611b\u3059\u308b\u6d41\u6728\u5bb6\u5177 \u81ea\u5206\u3060\u3051\u306e\u6642\u9593\u3092\u904e\u3054\u305d\u3046\u3002","inLanguage":"de-DE","publisher":{"@id":"https:\/\/hotel-ishigaki.com\/#organization"}}]},"og:locale":"de_DE","og:site_name":"\u3010\u516c\u5f0f\u3011\u30db\u30c6\u30eb\u77f3\u57a3 &amp; \u3061\u3053\u3093\u304d\u3084\u30fc - \u300e\u5cf6\u306e\u4e2d\u5fc3\u3067\u3001\u5fc3\u3068\u8eab\u4f53\u3092\u6574\u3048\u308b\u300f \u30d2\u30ce\u30ad\u304c\u9999\u308b\u9ad8\u7d1a\u30d9\u30c3\u30c9\u3001\u81ea\u7136\u3092\u611b\u3059\u308b\u6d41\u6728\u5bb6\u5177 \u81ea\u5206\u3060\u3051\u306e\u6642\u9593\u3092\u904e\u3054\u305d\u3046\u3002","og:type":"article","og:title":"Fahrradverleih auf Ishigaki | Hotel Ishigaki &amp; Chikonkiya","og:description":"Fahrradverleih f\u00fcr G\u00e4ste des Hotel Ishigaki: Citybikes bis 3 Stunden kostenlos, Crossbikes ab \u00a51.000. Online-Anfrage bis 30 Minuten vor Mietbeginn.","og:url":"https:\/\/hotel-ishigaki.com\/de\/bike_rental\/","og:image":"https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2023\/10\/cropped-\u80cc\u666f\u7121\u3057\u3061\u3053\u3093\u304d\u3084\u30fc\u30ed\u30b4\u306e\u307f\u5c0f.png","og:image:secure_url":"https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2023\/10\/cropped-\u80cc\u666f\u7121\u3057\u3061\u3053\u3093\u304d\u3084\u30fc\u30ed\u30b4\u306e\u307f\u5c0f.png","article:published_time":"2026-10-07T05:00:49+00:00","article:modified_time":"2026-10-07T07:59:46+00:00","twitter:card":"summary_large_image","twitter:title":"Fahrradverleih auf Ishigaki | Hotel Ishigaki &amp; Chikonkiya","twitter:description":"Fahrradverleih f\u00fcr G\u00e4ste des Hotel Ishigaki: Citybikes bis 3 Stunden kostenlos, Crossbikes ab \u00a51.000. Online-Anfrage bis 30 Minuten vor Mietbeginn.","twitter:image":"https:\/\/hotel-ishigaki.com\/wp-content\/uploads\/2023\/10\/cropped-\u80cc\u666f\u7121\u3057\u3061\u3053\u3093\u304d\u3084\u30fc\u30ed\u30b4\u306e\u307f\u5c0f.png"},"aioseo_meta_data":{"post_id":"2653","title":"Fahrradverleih auf Ishigaki | Hotel Ishigaki & Chikonkiya","description":"Fahrradverleih f\u00fcr G\u00e4ste des Hotel Ishigaki: Citybikes bis 3 Stunden kostenlos, Crossbikes ab \u00a51.000. Online-Anfrage bis 30 Minuten vor Mietbeginn.","keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2026-10-07 05:04:31","updated":"2026-10-07 10:12:04","seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/hotel-ishigaki.com\/\" title=\"\u5bb6\">\u5bb6<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tBIKE (DE)\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"\u5bb6","link":"https:\/\/hotel-ishigaki.com\/"},{"label":"BIKE (DE)","link":"https:\/\/hotel-ishigaki.com\/de\/bike_rental\/"}],"_links":{"self":[{"href":"https:\/\/hotel-ishigaki.com\/wp-json\/wp\/v2\/pages\/2653","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hotel-ishigaki.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/hotel-ishigaki.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/hotel-ishigaki.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hotel-ishigaki.com\/wp-json\/wp\/v2\/comments?post=2653"}],"version-history":[{"count":11,"href":"https:\/\/hotel-ishigaki.com\/wp-json\/wp\/v2\/pages\/2653\/revisions"}],"predecessor-version":[{"id":3099,"href":"https:\/\/hotel-ishigaki.com\/wp-json\/wp\/v2\/pages\/2653\/revisions\/3099"}],"wp:attachment":[{"href":"https:\/\/hotel-ishigaki.com\/wp-json\/wp\/v2\/media?parent=2653"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}