@charset "UTF-8";
*, ::before, ::after{
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x:  ;
    --tw-pan-y:  ;
    --tw-pinch-zoom:  ;
    --tw-scroll-snap-strictness: proximity;
    --tw-gradient-from-position:  ;
    --tw-gradient-via-position:  ;
    --tw-gradient-to-position:  ;
    --tw-ordinal:  ;
    --tw-slashed-zero:  ;
    --tw-numeric-figure:  ;
    --tw-numeric-spacing:  ;
    --tw-numeric-fraction:  ;
    --tw-ring-inset:  ;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgb(59 130 246 / 0.5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur:  ;
    --tw-brightness:  ;
    --tw-contrast:  ;
    --tw-grayscale:  ;
    --tw-hue-rotate:  ;
    --tw-invert:  ;
    --tw-saturate:  ;
    --tw-sepia:  ;
    --tw-drop-shadow:  ;
    --tw-backdrop-blur:  ;
    --tw-backdrop-brightness:  ;
    --tw-backdrop-contrast:  ;
    --tw-backdrop-grayscale:  ;
    --tw-backdrop-hue-rotate:  ;
    --tw-backdrop-invert:  ;
    --tw-backdrop-opacity:  ;
    --tw-backdrop-saturate:  ;
    --tw-backdrop-sepia:  ;
    --tw-contain-size:  ;
    --tw-contain-layout:  ;
    --tw-contain-paint:  ;
    --tw-contain-style:  ;
}
::backdrop{
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x:  ;
    --tw-pan-y:  ;
    --tw-pinch-zoom:  ;
    --tw-scroll-snap-strictness: proximity;
    --tw-gradient-from-position:  ;
    --tw-gradient-via-position:  ;
    --tw-gradient-to-position:  ;
    --tw-ordinal:  ;
    --tw-slashed-zero:  ;
    --tw-numeric-figure:  ;
    --tw-numeric-spacing:  ;
    --tw-numeric-fraction:  ;
    --tw-ring-inset:  ;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgb(59 130 246 / 0.5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur:  ;
    --tw-brightness:  ;
    --tw-contrast:  ;
    --tw-grayscale:  ;
    --tw-hue-rotate:  ;
    --tw-invert:  ;
    --tw-saturate:  ;
    --tw-sepia:  ;
    --tw-drop-shadow:  ;
    --tw-backdrop-blur:  ;
    --tw-backdrop-brightness:  ;
    --tw-backdrop-contrast:  ;
    --tw-backdrop-grayscale:  ;
    --tw-backdrop-hue-rotate:  ;
    --tw-backdrop-invert:  ;
    --tw-backdrop-opacity:  ;
    --tw-backdrop-saturate:  ;
    --tw-backdrop-sepia:  ;
    --tw-contain-size:  ;
    --tw-contain-layout:  ;
    --tw-contain-paint:  ;
    --tw-contain-style:  ;
}
:root{
    --color-inherit: inherit;
    --color-current: currentColor;
    --color-transparent: transparent;
    --color-black: #333333;
    --color-white: #fff;
    --color-slate-50: #f8fafc;
    --color-slate-100: #f1f5f9;
    --color-slate-200: #e2e8f0;
    --color-slate-300: #cbd5e1;
    --color-slate-400: #94a3b8;
    --color-slate-500: #64748b;
    --color-slate-600: #475569;
    --color-slate-700: #334155;
    --color-slate-800: #1e293b;
    --color-slate-900: #0f172a;
    --color-slate-950: #020617;
    --color-gray-50: #f9fafb;
    --color-gray-100: #FAF8F2;
    --color-gray-200: #e5e7eb;
    --color-gray-300: #D9D9D9;
    --color-gray-400: #9ca3af;
    --color-gray-500: #ADADAD;
    --color-gray-550: #999;
    --color-gray-600: #4b5563;
    --color-gray-700: #333;
    --color-gray-800: #1f2937;
    --color-gray-900: #111827;
    --color-gray-950: #030712;
    --color-zinc-50: #fafafa;
    --color-zinc-100: #f4f4f5;
    --color-zinc-200: #e4e4e7;
    --color-zinc-300: #d4d4d8;
    --color-zinc-400: #a1a1aa;
    --color-zinc-500: #71717a;
    --color-zinc-600: #52525b;
    --color-zinc-700: #3f3f46;
    --color-zinc-800: #27272a;
    --color-zinc-900: #18181b;
    --color-zinc-950: #09090b;
    --color-neutral-50: #fafafa;
    --color-neutral-100: #f5f5f5;
    --color-neutral-200: #e5e5e5;
    --color-neutral-300: #d4d4d4;
    --color-neutral-400: #a3a3a3;
    --color-neutral-500: #737373;
    --color-neutral-600: #525252;
    --color-neutral-700: #404040;
    --color-neutral-800: #262626;
    --color-neutral-900: #171717;
    --color-neutral-950: #0a0a0a;
    --color-stone-50: #fafaf9;
    --color-stone-100: #f5f5f4;
    --color-stone-200: #e7e5e4;
    --color-stone-300: #d6d3d1;
    --color-stone-400: #a8a29e;
    --color-stone-500: #78716c;
    --color-stone-600: #57534e;
    --color-stone-700: #44403c;
    --color-stone-800: #292524;
    --color-stone-900: #1c1917;
    --color-stone-950: #0c0a09;
    --color-red-50: #fef2f2;
    --color-red-100: #fee2e2;
    --color-red-200: #fecaca;
    --color-red-300: #fca5a5;
    --color-red-400: #f87171;
    --color-red-500: #ef4444;
    --color-red-600: #dc2626;
    --color-red-700: #b91c1c;
    --color-red-800: #991b1b;
    --color-red-900: #7f1d1d;
    --color-red-950: #450a0a;
    --color-orange-50: #fff7ed;
    --color-orange-100: #ffedd5;
    --color-orange-200: #fed7aa;
    --color-orange-300: #fdba74;
    --color-orange-400: #fb923c;
    --color-orange-500: #f97316;
    --color-orange-600: #ea580c;
    --color-orange-700: #c2410c;
    --color-orange-800: #9a3412;
    --color-orange-900: #7c2d12;
    --color-orange-950: #431407;
    --color-amber-50: #fffbeb;
    --color-amber-100: #fef3c7;
    --color-amber-200: #fde68a;
    --color-amber-300: #fcd34d;
    --color-amber-400: #fbbf24;
    --color-amber-500: #f59e0b;
    --color-amber-600: #d97706;
    --color-amber-700: #b45309;
    --color-amber-800: #92400e;
    --color-amber-900: #78350f;
    --color-amber-950: #451a03;
    --color-yellow: #FFD900;
    --color-lime-50: #f7fee7;
    --color-lime-100: #ecfccb;
    --color-lime-200: #d9f99d;
    --color-lime-300: #bef264;
    --color-lime-400: #a3e635;
    --color-lime-500: #84cc16;
    --color-lime-600: #65a30d;
    --color-lime-700: #4d7c0f;
    --color-lime-800: #3f6212;
    --color-lime-900: #365314;
    --color-lime-950: #1a2e05;
    --color-green-50: #f0fdf4;
    --color-green-100: #dcfce7;
    --color-green-200: #bbf7d0;
    --color-green-300: #86efac;
    --color-green-400: #4ade80;
    --color-green-500: #22c55e;
    --color-green-600: #16a34a;
    --color-green-700: #15803d;
    --color-green-800: #166534;
    --color-green-900: #14532d;
    --color-green-950: #052e16;
    --color-emerald-50: #ecfdf5;
    --color-emerald-100: #d1fae5;
    --color-emerald-200: #a7f3d0;
    --color-emerald-300: #6ee7b7;
    --color-emerald-400: #34d399;
    --color-emerald-500: #10b981;
    --color-emerald-600: #059669;
    --color-emerald-700: #047857;
    --color-emerald-800: #065f46;
    --color-emerald-900: #064e3b;
    --color-emerald-950: #022c22;
    --color-teal-50: #f0fdfa;
    --color-teal-100: #ccfbf1;
    --color-teal-200: #99f6e4;
    --color-teal-300: #5eead4;
    --color-teal-400: #2dd4bf;
    --color-teal-500: #14b8a6;
    --color-teal-600: #0d9488;
    --color-teal-700: #0f766e;
    --color-teal-800: #115e59;
    --color-teal-900: #134e4a;
    --color-teal-950: #042f2e;
    --color-cyan-50: #ecfeff;
    --color-cyan-100: #cffafe;
    --color-cyan-200: #a5f3fc;
    --color-cyan-300: #67e8f9;
    --color-cyan-400: #22d3ee;
    --color-cyan-500: #06b6d4;
    --color-cyan-600: #0891b2;
    --color-cyan-700: #0e7490;
    --color-cyan-800: #155e75;
    --color-cyan-900: #164e63;
    --color-cyan-950: #083344;
    --color-sky-50: #f0f9ff;
    --color-sky-100: #e0f2fe;
    --color-sky-200: #bae6fd;
    --color-sky-300: #7dd3fc;
    --color-sky-400: #38bdf8;
    --color-sky-500: #0ea5e9;
    --color-sky-600: #0284c7;
    --color-sky-700: #0369a1;
    --color-sky-800: #075985;
    --color-sky-900: #0c4a6e;
    --color-sky-950: #082f49;
    --color-blue-50: #eff6ff;
    --color-blue-100: #dbeafe;
    --color-blue-200: #bfdbfe;
    --color-blue-300: #93c5fd;
    --color-blue-400: #60a5fa;
    --color-blue-500: #3b82f6;
    --color-blue-600: #2563eb;
    --color-blue-700: #1d4ed8;
    --color-blue-800: #1e40af;
    --color-blue-900: #1e3a8a;
    --color-blue-950: #172554;
    --color-indigo-50: #eef2ff;
    --color-indigo-100: #e0e7ff;
    --color-indigo-200: #c7d2fe;
    --color-indigo-300: #a5b4fc;
    --color-indigo-400: #818cf8;
    --color-indigo-500: #6366f1;
    --color-indigo-600: #4f46e5;
    --color-indigo-700: #4338ca;
    --color-indigo-800: #3730a3;
    --color-indigo-900: #312e81;
    --color-indigo-950: #1e1b4b;
    --color-violet-50: #f5f3ff;
    --color-violet-100: #ede9fe;
    --color-violet-200: #ddd6fe;
    --color-violet-300: #c4b5fd;
    --color-violet-400: #a78bfa;
    --color-violet-500: #8b5cf6;
    --color-violet-600: #7c3aed;
    --color-violet-700: #6d28d9;
    --color-violet-800: #5b21b6;
    --color-violet-900: #4c1d95;
    --color-violet-950: #2e1065;
    --color-purple-50: #faf5ff;
    --color-purple-100: #f3e8ff;
    --color-purple-200: #e9d5ff;
    --color-purple-300: #d8b4fe;
    --color-purple-400: #c084fc;
    --color-purple-500: #a855f7;
    --color-purple-600: #9333ea;
    --color-purple-700: #7e22ce;
    --color-purple-800: #6b21a8;
    --color-purple-900: #581c87;
    --color-purple-950: #3b0764;
    --color-fuchsia-50: #fdf4ff;
    --color-fuchsia-100: #fae8ff;
    --color-fuchsia-200: #f5d0fe;
    --color-fuchsia-300: #f0abfc;
    --color-fuchsia-400: #e879f9;
    --color-fuchsia-500: #d946ef;
    --color-fuchsia-600: #c026d3;
    --color-fuchsia-700: #a21caf;
    --color-fuchsia-800: #86198f;
    --color-fuchsia-900: #701a75;
    --color-fuchsia-950: #4a044e;
    --color-pink-50: #fdf2f8;
    --color-pink-100: #fce7f3;
    --color-pink-200: #fbcfe8;
    --color-pink-300: #f9a8d4;
    --color-pink-400: #f472b6;
    --color-pink-500: #ec4899;
    --color-pink-600: #db2777;
    --color-pink-700: #be185d;
    --color-pink-800: #9d174d;
    --color-pink-900: #831843;
    --color-pink-950: #500724;
    --color-rose-50: #fff1f2;
    --color-rose-100: #ffe4e6;
    --color-rose-200: #fecdd3;
    --color-rose-300: #fda4af;
    --color-rose-400: #fb7185;
    --color-rose-500: #f43f5e;
    --color-rose-600: #e11d48;
    --color-rose-700: #be123c;
    --color-rose-800: #9f1239;
    --color-rose-900: #881337;
    --color-rose-950: #4c0519;
    --color-body: #333333;
    --color-primary: #FFD900;
    --color-success: #3E84CF;
    --color-error: #F33838;
    --color-link: #3E84CF;
    --color-caution: #F33838;
    --color-beige-100: #F6F4EC;
    --color-beige-200: #EDE9DA;
    --color-inherit-rgb: NaN NaN NaN NaN;
    --color-current-rgb: 12 NaN 14 NaN NaN NaN;
    --color-transparent-rgb: NaN 10 NaN 10 14 NaN;
    --color-black-rgb: 51 51 51;
    --color-white-rgb: 255 15;
    --color-slate-50-rgb: 248 250 252;
    --color-slate-100-rgb: 241 245 249;
    --color-slate-200-rgb: 226 232 240;
    --color-slate-300-rgb: 203 213 225;
    --color-slate-400-rgb: 148 163 184;
    --color-slate-500-rgb: 100 116 139;
    --color-slate-600-rgb: 71 85 105;
    --color-slate-700-rgb: 51 65 85;
    --color-slate-800-rgb: 30 41 59;
    --color-slate-900-rgb: 15 23 42;
    --color-slate-950-rgb: 2 6 23;
    --color-gray-50-rgb: 249 250 251;
    --color-gray-100-rgb: 250 248 242;
    --color-gray-200-rgb: 229 231 235;
    --color-gray-300-rgb: 217 217 217;
    --color-gray-400-rgb: 156 163 175;
    --color-gray-500-rgb: 173 173 173;
    --color-gray-550-rgb: 153 9;
    --color-gray-600-rgb: 75 85 99;
    --color-gray-700-rgb: 51 3;
    --color-gray-800-rgb: 31 41 55;
    --color-gray-900-rgb: 17 24 39;
    --color-gray-950-rgb: 3 7 18;
    --color-zinc-50-rgb: 250 250 250;
    --color-zinc-100-rgb: 244 244 245;
    --color-zinc-200-rgb: 228 228 231;
    --color-zinc-300-rgb: 212 212 216;
    --color-zinc-400-rgb: 161 161 170;
    --color-zinc-500-rgb: 113 113 122;
    --color-zinc-600-rgb: 82 82 91;
    --color-zinc-700-rgb: 63 63 70;
    --color-zinc-800-rgb: 39 39 42;
    --color-zinc-900-rgb: 24 24 27;
    --color-zinc-950-rgb: 9 9 11;
    --color-neutral-50-rgb: 250 250 250;
    --color-neutral-100-rgb: 245 245 245;
    --color-neutral-200-rgb: 229 229 229;
    --color-neutral-300-rgb: 212 212 212;
    --color-neutral-400-rgb: 163 163 163;
    --color-neutral-500-rgb: 115 115 115;
    --color-neutral-600-rgb: 82 82 82;
    --color-neutral-700-rgb: 64 64 64;
    --color-neutral-800-rgb: 38 38 38;
    --color-neutral-900-rgb: 23 23 23;
    --color-neutral-950-rgb: 10 10 10;
    --color-stone-50-rgb: 250 250 249;
    --color-stone-100-rgb: 245 245 244;
    --color-stone-200-rgb: 231 229 228;
    --color-stone-300-rgb: 214 211 209;
    --color-stone-400-rgb: 168 162 158;
    --color-stone-500-rgb: 120 113 108;
    --color-stone-600-rgb: 87 83 78;
    --color-stone-700-rgb: 68 64 60;
    --color-stone-800-rgb: 41 37 36;
    --color-stone-900-rgb: 28 25 23;
    --color-stone-950-rgb: 12 10 9;
    --color-red-50-rgb: 254 242 242;
    --color-red-100-rgb: 254 226 226;
    --color-red-200-rgb: 254 202 202;
    --color-red-300-rgb: 252 165 165;
    --color-red-400-rgb: 248 113 113;
    --color-red-500-rgb: 239 68 68;
    --color-red-600-rgb: 220 38 38;
    --color-red-700-rgb: 185 28 28;
    --color-red-800-rgb: 153 27 27;
    --color-red-900-rgb: 127 29 29;
    --color-red-950-rgb: 69 10 10;
    --color-orange-50-rgb: 255 247 237;
    --color-orange-100-rgb: 255 237 213;
    --color-orange-200-rgb: 254 215 170;
    --color-orange-300-rgb: 253 186 116;
    --color-orange-400-rgb: 251 146 60;
    --color-orange-500-rgb: 249 115 22;
    --color-orange-600-rgb: 234 88 12;
    --color-orange-700-rgb: 194 65 12;
    --color-orange-800-rgb: 154 52 18;
    --color-orange-900-rgb: 124 45 18;
    --color-orange-950-rgb: 67 20 7;
    --color-amber-50-rgb: 255 251 235;
    --color-amber-100-rgb: 254 243 199;
    --color-amber-200-rgb: 253 230 138;
    --color-amber-300-rgb: 252 211 77;
    --color-amber-400-rgb: 251 191 36;
    --color-amber-500-rgb: 245 158 11;
    --color-amber-600-rgb: 217 119 6;
    --color-amber-700-rgb: 180 83 9;
    --color-amber-800-rgb: 146 64 14;
    --color-amber-900-rgb: 120 53 15;
    --color-amber-950-rgb: 69 26 3;
    --color-yellow-rgb: 255 217 0;
    --color-lime-50-rgb: 247 254 231;
    --color-lime-100-rgb: 236 252 203;
    --color-lime-200-rgb: 217 249 157;
    --color-lime-300-rgb: 190 242 100;
    --color-lime-400-rgb: 163 230 53;
    --color-lime-500-rgb: 132 204 22;
    --color-lime-600-rgb: 101 163 13;
    --color-lime-700-rgb: 77 124 15;
    --color-lime-800-rgb: 63 98 18;
    --color-lime-900-rgb: 54 83 20;
    --color-lime-950-rgb: 26 46 5;
    --color-green-50-rgb: 240 253 244;
    --color-green-100-rgb: 220 252 231;
    --color-green-200-rgb: 187 247 208;
    --color-green-300-rgb: 134 239 172;
    --color-green-400-rgb: 74 222 128;
    --color-green-500-rgb: 34 197 94;
    --color-green-600-rgb: 22 163 74;
    --color-green-700-rgb: 21 128 61;
    --color-green-800-rgb: 22 101 52;
    --color-green-900-rgb: 20 83 45;
    --color-green-950-rgb: 5 46 22;
    --color-emerald-50-rgb: 236 253 245;
    --color-emerald-100-rgb: 209 250 229;
    --color-emerald-200-rgb: 167 243 208;
    --color-emerald-300-rgb: 110 231 183;
    --color-emerald-400-rgb: 52 211 153;
    --color-emerald-500-rgb: 16 185 129;
    --color-emerald-600-rgb: 5 150 105;
    --color-emerald-700-rgb: 4 120 87;
    --color-emerald-800-rgb: 6 95 70;
    --color-emerald-900-rgb: 6 78 59;
    --color-emerald-950-rgb: 2 44 34;
    --color-teal-50-rgb: 240 253 250;
    --color-teal-100-rgb: 204 251 241;
    --color-teal-200-rgb: 153 246 228;
    --color-teal-300-rgb: 94 234 212;
    --color-teal-400-rgb: 45 212 191;
    --color-teal-500-rgb: 20 184 166;
    --color-teal-600-rgb: 13 148 136;
    --color-teal-700-rgb: 15 118 110;
    --color-teal-800-rgb: 17 94 89;
    --color-teal-900-rgb: 19 78 74;
    --color-teal-950-rgb: 4 47 46;
    --color-cyan-50-rgb: 236 254 255;
    --color-cyan-100-rgb: 207 250 254;
    --color-cyan-200-rgb: 165 243 252;
    --color-cyan-300-rgb: 103 232 249;
    --color-cyan-400-rgb: 34 211 238;
    --color-cyan-500-rgb: 6 182 212;
    --color-cyan-600-rgb: 8 145 178;
    --color-cyan-700-rgb: 14 116 144;
    --color-cyan-800-rgb: 21 94 117;
    --color-cyan-900-rgb: 22 78 99;
    --color-cyan-950-rgb: 8 51 68;
    --color-sky-50-rgb: 240 249 255;
    --color-sky-100-rgb: 224 242 254;
    --color-sky-200-rgb: 186 230 253;
    --color-sky-300-rgb: 125 211 252;
    --color-sky-400-rgb: 56 189 248;
    --color-sky-500-rgb: 14 165 233;
    --color-sky-600-rgb: 2 132 199;
    --color-sky-700-rgb: 3 105 161;
    --color-sky-800-rgb: 7 89 133;
    --color-sky-900-rgb: 12 74 110;
    --color-sky-950-rgb: 8 47 73;
    --color-blue-50-rgb: 239 246 255;
    --color-blue-100-rgb: 219 234 254;
    --color-blue-200-rgb: 191 219 254;
    --color-blue-300-rgb: 147 197 253;
    --color-blue-400-rgb: 96 165 250;
    --color-blue-500-rgb: 59 130 246;
    --color-blue-600-rgb: 37 99 235;
    --color-blue-700-rgb: 29 78 216;
    --color-blue-800-rgb: 30 64 175;
    --color-blue-900-rgb: 30 58 138;
    --color-blue-950-rgb: 23 37 84;
    --color-indigo-50-rgb: 238 242 255;
    --color-indigo-100-rgb: 224 231 255;
    --color-indigo-200-rgb: 199 210 254;
    --color-indigo-300-rgb: 165 180 252;
    --color-indigo-400-rgb: 129 140 248;
    --color-indigo-500-rgb: 99 102 241;
    --color-indigo-600-rgb: 79 70 229;
    --color-indigo-700-rgb: 67 56 202;
    --color-indigo-800-rgb: 55 48 163;
    --color-indigo-900-rgb: 49 46 129;
    --color-indigo-950-rgb: 30 27 75;
    --color-violet-50-rgb: 245 243 255;
    --color-violet-100-rgb: 237 233 254;
    --color-violet-200-rgb: 221 214 254;
    --color-violet-300-rgb: 196 181 253;
    --color-violet-400-rgb: 167 139 250;
    --color-violet-500-rgb: 139 92 246;
    --color-violet-600-rgb: 124 58 237;
    --color-violet-700-rgb: 109 40 217;
    --color-violet-800-rgb: 91 33 182;
    --color-violet-900-rgb: 76 29 149;
    --color-violet-950-rgb: 46 16 101;
    --color-purple-50-rgb: 250 245 255;
    --color-purple-100-rgb: 243 232 255;
    --color-purple-200-rgb: 233 213 255;
    --color-purple-300-rgb: 216 180 254;
    --color-purple-400-rgb: 192 132 252;
    --color-purple-500-rgb: 168 85 247;
    --color-purple-600-rgb: 147 51 234;
    --color-purple-700-rgb: 126 34 206;
    --color-purple-800-rgb: 107 33 168;
    --color-purple-900-rgb: 88 28 135;
    --color-purple-950-rgb: 59 7 100;
    --color-fuchsia-50-rgb: 253 244 255;
    --color-fuchsia-100-rgb: 250 232 255;
    --color-fuchsia-200-rgb: 245 208 254;
    --color-fuchsia-300-rgb: 240 171 252;
    --color-fuchsia-400-rgb: 232 121 249;
    --color-fuchsia-500-rgb: 217 70 239;
    --color-fuchsia-600-rgb: 192 38 211;
    --color-fuchsia-700-rgb: 162 28 175;
    --color-fuchsia-800-rgb: 134 25 143;
    --color-fuchsia-900-rgb: 112 26 117;
    --color-fuchsia-950-rgb: 74 4 78;
    --color-pink-50-rgb: 253 242 248;
    --color-pink-100-rgb: 252 231 243;
    --color-pink-200-rgb: 251 207 232;
    --color-pink-300-rgb: 249 168 212;
    --color-pink-400-rgb: 244 114 182;
    --color-pink-500-rgb: 236 72 153;
    --color-pink-600-rgb: 219 39 119;
    --color-pink-700-rgb: 190 24 93;
    --color-pink-800-rgb: 157 23 77;
    --color-pink-900-rgb: 131 24 67;
    --color-pink-950-rgb: 80 7 36;
    --color-rose-50-rgb: 255 241 242;
    --color-rose-100-rgb: 255 228 230;
    --color-rose-200-rgb: 254 205 211;
    --color-rose-300-rgb: 253 164 175;
    --color-rose-400-rgb: 251 113 133;
    --color-rose-500-rgb: 244 63 94;
    --color-rose-600-rgb: 225 29 72;
    --color-rose-700-rgb: 190 18 60;
    --color-rose-800-rgb: 159 18 57;
    --color-rose-900-rgb: 136 19 55;
    --color-rose-950-rgb: 76 5 25;
    --color-body-rgb: 51 51 51;
    --color-primary-rgb: 255 217 0;
    --color-success-rgb: 62 132 207;
    --color-error-rgb: 243 56 56;
    --color-link-rgb: 62 132 207;
    --color-caution-rgb: 243 56 56;
    --color-beige-100-rgb: 246 244 236;
    --color-beige-200-rgb: 237 233 218;
  --main_c: #FEE100;
  /*
  --main_c_light: #FFF0BF;
  --main_c_light-listing: #FFFCEA;
  */
  --main_c_light: #FFFCEF;
  --main_c_light-listing: #FFF0BF;

  --bg_blue: #004cca;
  --bg_gray_light: #F8F8F7;
}
.object-cover-full{
    object-fit: cover;
    width: 100%;
    height: 100%;
}
:root {
  --tw-gradient-via-position: 50%;
  --breakpoint-sm: 560px;
  --breakpoint-md: 768px;
  --breakpoint-semi: 900px;
  --breakpoint-lg: 1024px;
  --breakpoint-xl: 1280px;
  --breakpoint-2xl: 1366px;
  --inner-slim: 1000px;
  --inner-base: 1200px;
  --inner-loose: 1300px;
  --inner-wide: 1440px;
  --tw-gradient-from-position: 0%;
  --tw-gradient-to-position: 100%;
  --view-width: 100vw;
  --font-size-body: 14px;
  --header-height: 74px;
  --map-height: 44px;
  --navbar-height: calc(70px + env(safe-area-inset-bottom));
  --gutter: 20px;
  }
@media (min-width: 768px) {
  :root {
    --header-height: 80px;
    --map-height: 54px;
  }
}
@media (min-width: 1024px) {
  :root {
    --navbar-height:0px;
  }
}
@media (max-width: 767.98px) {
  :root:has(body.page-map) {
    --header-height: 0px;
  }
}

/***
    The new CSS reset - version 1.11.3 (last updated 25.08.2024)
    GitHub page: https://github.com/elad2412/the-new-css-reset
***/
/*
    Remove all the styles of the "User-Agent-Stylesheet", except for the 'display' property
    - The "symbol *" part is to solve Firefox SVG sprite bug
    - The "html" element is excluded, otherwise a bug in Chrome breaks the CSS hyphens property (https://github.com/elad2412/the-new-css-reset/issues/36)
 */
*:where(:not(html, iframe, canvas, img, svg, video, audio, svg *, symbol *)) {
  all: unset;
  display: revert;
}

/* Preferred box-sizing value */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Fix mobile Safari increase font-size on landscape mode */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* Reapply the pointer cursor for anchor tags */
a,
button {
  cursor: revert;
}

/* Remove list styles (bullets/numbers) */
ol,
ul,
menu,
summary {
  list-style: none;
}

/* Firefox: solve issue where nested ordered lists continue numbering from parent (https://bugzilla.mozilla.org/show_bug.cgi?id=1881517) */
ol {
  counter-reset: revert;
}

/* For images to not be able to exceed their container */
img {
  max-inline-size: 100%;
  max-block-size: 100%;
}

/* removes spacing between cells in tables */
table {
  border-collapse: collapse;
}

/* Safari - solving issue when using user-select:none on the <body> text input doesn't working */
input,
textarea {
  -webkit-user-select: auto;
}

/* revert the 'white-space' property for textarea elements on Safari */
textarea {
  white-space: revert;
}

/* minimum style to allow to style meter element */
meter {
  -webkit-appearance: revert;
  appearance: revert;
}

/* preformatted text - use only for this feature */
:where(pre) {
  all: revert;
  box-sizing: border-box;
}

/* reset default text opacity of input placeholder */
::placeholder {
  color: unset;
}

/* fix the feature of 'hidden' attribute.
 display:revert; revert to element instead of attribute */
:where([hidden]) {
  display: none;
}

/* revert for bug in Chromium browsers
 - fix for the content editable attribute will work properly.
 - webkit-user-select: auto; added for Safari in case of using user-select:none on wrapper element */
:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}

/* apply back the draggable feature - exist only in Chromium and Safari */
:where([draggable=true]) {
  -webkit-user-drag: element;
}

/* Revert Modal native behavior */
:where(dialog:modal) {
  all: revert;
  box-sizing: border-box;
}

/* Remove details summary webkit styles */
::-webkit-details-marker {
  display: none;
}

body {
  font: var(--font-size-body)/1.6  "ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN","メイリオ","Meiryo",sans-serif;
  color: #333333;
  background-color: #F6F4EC;
}
body.is-open {
  overflow: hidden;
}

:where(*) {
  letter-spacing: 0.04em;
  outline-color: #FFD900;
  border-style: solid;
  border-width: 0;
}

input,
select,
option,
textarea,
button {
  box-sizing: border-box;
  font: var(--font-size-body)/1.6  "ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN","メイリオ","Meiryo",sans-serif;
  color: #333333;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  image-rendering: smooth;
}

svg {
  width: 100%;
}
svg:has(use) {
  line-height: 0;
}

:where(button, [type=button], [type=reset], [type=submit]) {
  padding: 0;
  touch-action: manipulation;
  background: transparent;
  border-width: 0;
}

:any-link,
button,
[type=button],
[type=reset],
[type=submit],
label[for],
select,
summary,
[role=tab],
[role=button] {
  cursor: pointer;
}

:focus:not(:focus-visible) {
  outline: none;
}

i:has(> svg) {
  line-height: 0;
}

a:not([class]) {
  color: inherit;
}

.l-app-intro {
  max-width: 1440px;
  margin-inline: auto;
  margin-top: 80px;
}
.l-app-intro__btns {
  display: grid;
  grid-template-columns: 120fr 135fr;
  gap: 0 9px;
  max-width: 400px;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .l-app-intro {
    margin-top: 60px;
    background: url("../images/shared/bg-app-intro.jpg") no-repeat center bottom/1440px 310px;
  }
  .l-app-intro__container {
    display: flex;
    justify-content: center;
  }
  .l-app-intro__content {
    position: relative;
    z-index: 1;
    flex: 0 0 auto;
    padding-top: 89px;
    padding-bottom: 54px;
  }
  .l-app-intro__image {
    flex: 0 0 455px;
    align-self: flex-end;
    width: 455px;
    translate: 5px 0;
  }
}
@media (max-width: 767.98px) {
  .l-app-intro {
    padding-inline: 20px;
  }
  .l-app-intro__image {
    display: none;
  }
  .l-app-intro__mbimg {
    margin-inline: -15px;
    margin-bottom: max(-38%, -121px);
    text-align: center;
  }
  .l-app-intro__in {
    padding: 26px 15px;
    overflow: hidden;
    background: linear-gradient(to bottom, #FFD900 0%, #FFC800 100%);
    border-radius: 12px;
  }
}

.l-article__container {
  padding-top: 40px;
}
@media (min-width: 768px) {
  .l-article__container {
    padding-top: 50px;
  }
}

.l-aside__board {
  overflow: hidden;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 12px;
  box-shadow: 0 0 10px #FAF8F2;
}
.l-aside__heading {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  background-color: #333333;
}
.l-aside__category {
  padding: 20px 16px;
}
.l-aside__ftr {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 0 0 10px;
}

.l-biz-owner {
  padding-block: 64px 56px;
}
.l-biz-owner__item {
  padding: 35px 20px;
}
.l-biz-owner__label {
  margin-top: 6px;
  font-size: 22px;
  line-height: 1.7;
  text-align: center;
}
.l-biz-owner__label span {
  width: fit-content;
  padding-inline: 0.25em;
  margin-inline: auto;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.05em;
  background-color: #333333;
  border-radius: 2px;
}
@media (min-width: 768px) {
  .l-biz-owner {
    padding-block: 87px 65px;
  }
  .l-biz-owner__item {
    padding: 30px 42px 26px;
  }
  .l-biz-owner__label {
    margin-top: 11px;
  }
  .l-biz-owner__label span {
    line-height: 1.35;
  }
  .l-biz-owner__blk01 {
    display: grid;
    grid-template-columns: 294fr 188fr;
    gap: 0 27px;
    align-items: center;
    max-width: 509px;
    margin-inline: auto;
    margin-top: 26px;
  }
  .l-biz-owner__blk01 figure {
    order: 0;
  }
  .l-biz-owner__blk01 div {
    order: 1;
  }
  .l-biz-owner__blk02 {
    max-width: 500px;
    margin-inline: auto;
    margin-top: 26px;
  }
}
@media (max-width: 1023.98px) {
  .l-biz-owner__label {
    display: flex;
    flex-direction: column;
    gap: 7px 0;
    align-items: center;
    justify-content: center;
  }
}
@media (max-width: 767.98px) {
  .l-biz-owner__blk01 {
    margin-top: 6px;
  }
  .l-biz-owner__blk01 div {
    max-width: 350px;
    margin-inline: auto;
  }
  .l-biz-owner__blk01 figure {
    padding-top: 14px;
    text-align: center;
  }
  .l-biz-owner__blk02 {
    margin-top: 21px;
  }
  .l-biz-owner__blk02 figure {
    text-align: center;
  }
}

:where(.l-biz-owner__label span) {
  display: block;
}

.l-bnrarea {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px 10px;
  width: min(942px, 100% - 20px * 2);
  padding-block-end: 40px;
  margin-inline: auto;
}
.l-bnrarea__item {
  display: grid;
  grid-template-rows: auto 1fr;
  grid-template-columns: 100%;
  gap: 8px 15px;
}
@media (min-width: 560px) {
  .l-bnrarea {
    grid-template-columns: 100%;
  }
  .l-bnrarea__item {
    grid-template-columns: 170px 1fr;
    align-items: center;
  }
}
@media (min-width: 768px) {
  .l-bnrarea {
    grid-template-columns: 1fr 1fr;
    gap: 24px 36px;
    padding-block-end: 80px;
  }
}
.l-footer-bnrarea {
    padding-block: 40px 20px;
            text-align: center;
}
@media (min-width: 768px) {
  .l-footer-bnrarea {
    padding-block: 60px;
  }
}

.l-archive-container {
  width: min(1200px, var(--view-width) - 20px * 2);
  margin-inline: auto;
  margin-top: 24px;
}
@media (min-width: 768px) {
  .l-archive-container {
    margin-top: 42px;
  }
}
@media (min-width: 1024px) {
  .l-archive-container {
    position: relative;
    display: grid;
    grid-template: ". hdr" auto "aside main" 1fr/277px 1fr;
    gap: 12px 22px;
  }
  .l-archive-container__aside {
    grid-area: aside;
  }
  .l-archive-container__hdr {
    grid-area: hdr;
    padding-left: 5px;
  }
  .l-archive-container__main {
    grid-area: main;
  }
}
@media (max-width: 1023.98px) {
  .l-archive-container__hdr {
    margin-bottom: 12px;
  }
  .l-archive-container__aside {
    display: none;
  }
}

.l-article-container {
  display: grid;
  grid-template-columns: 100%;
  gap: 40px 0;
}
@media (min-width: 768px) {
  .l-article-container .c-hour-table th, .l-article-container .c-hour-table td {
    padding-block: 8px;
  }
}

.l-fixed-area {
  position: fixed;
  right: 0;
  bottom: 16px;
  left: 0;
  z-index: 50;
  display: flex;
  justify-content: center;
  pointer-events: none;
}
.l-fixed-area__in {
  pointer-events: all;
}
@media (min-width: 768px) {
  .l-fixed-area {
    bottom: 32px;
  }
}

body:has(.l-navbar) .l-fixed-area {
  bottom: calc(var(--navbar-height) + 16px);
}
@media (min-width: 768px) {
  body:has(.l-navbar) .l-fixed-area {
    bottom: calc(var(--navbar-height) + 32px);
  }
}

.l-navbar {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 50;
  padding-bottom: env(safe-area-inset-bottom);
  background-color: #fff;
  box-shadow: 0 -7px 10px rgb(var(--color-black-rgb)/5%);
}
.l-navbar__in {
  display: flex;
  justify-content: space-evenly;
  max-width: 500px;
  height: var(--navbar-height);
  margin-inline: auto;
}
.l-navbar__item {
  padding-top: 7px;
}
.l-navbar__item.is-current {
  position: relative;
}
.l-navbar__item.is-current::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  content: "";
  background-color: #FFD900;
}
.l-navbar__item.is-current .l-navbar__btn span {
  font-weight: bold;
}
.l-navbar__btn {
  display: block;
  transition-duration: 0.3s;
  transition-property: opacity;
}
@media (any-hover: hover) {
  .l-navbar__btn:hover {
    opacity: 0.6;
  }
}
.l-navbar__btn > figure {
  text-align: center;
}
.l-navbar__btn > span {
  display: block;
  margin-top: 4px;
  font-size: 10px;
  text-align: center;
}
@media (min-width: 1024px) {
  .l-navbar {
    display: none;
  }
}

.l-wrapper:has(.l-header) {
  padding-top: var(--header-height);
}
.l-wrapper:has(.l-navbar) {
  padding-bottom: var(--navbar-height);
}
.l-wrapper:is(body.page-map *) {
  padding-bottom: 0;
}

.l-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 99;
  padding-inline: 9px 20px;
  background-color: #fff;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
}
.l-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: var(--header-height);
}
.l-header__logo {
  flex: 0 0 147px;
  width: 147px;
}
.l-header__nav {
  display: flex;
  gap: 0 10px;
}
@media (min-width: 768px) {
  .l-header {
    padding-inline: 30px;
  }
  .l-header__logo {
    flex: 0 0 180px;
    width: 180px;
  }
  .l-header__nav {
    gap: 0;
  }
}
@media (max-width: 767.98px) {
  .l-header:is(body.page-map *) {
    display: none;
  }
}

.l-map-header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--map-height);
}
.l-map-header__back {
  position: absolute;
  left: 20px;
  width: 24px;
  line-height: 0;
}
.l-map-header__heading {
  font-size: 14px;
  font-weight: 500;
}
.l-map-header__heading b {
  padding-inline: 2px;
  font-size: 18px;
  font-weight: 500;
}
@media (min-width: 768px) {
  .l-map-header__heading {
    font-size: 18px;
  }
  .l-map-header__heading b {
    font-size: 24px;
  }
}
@media (max-width: 767.98px) {
  .l-map-header {
    background-color: #fff;
  }
}

.l-home-header {
  position: relative;
  z-index: 0;
  display: flex;
  flex-direction: column;
  gap: 16px 0;
  align-items: center;
  justify-content: flex-start;
  padding-block: 41px 23px;
  padding-inline: 20px;
  background-color: #fff;
}
.l-home-header__nav {
  display: flex;
  gap: 0 10px;
  justify-content: center;
}
@media (min-width: 768px) {
  .l-home-header {
    gap: 56px 0;
    padding-block: 51px 210px;
  }
  .l-home-header__nav {
    gap: 0 12px;
  }
  .l-home-header__logo {
    order: 2;
  }
}

.l-footer {
  padding-block: 40px 64px;
  background-color: #fff;
}
.l-footer__sns {
  display: flex;
  gap: 0 24px;
  align-items: flex-end;
  justify-content: center;
}
.l-footer__bnrs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
}
.l-footer__copyright {
  font-size: 12px;
  text-align: center;
  opacity: 0.7;
}
@media (min-width: 768px) {
  .l-footer {
    padding-block: 66px;
  }
  .l-footer__container {
    display: grid;
    grid-template: "logo sns bnrs" auto "copyright menu menu"/auto 1fr auto;
    gap: 35px 0;
  }
  .l-footer__logo {
    grid-area: logo;
  }
  .l-footer__sns {
    grid-area: sns;
    justify-content: flex-end;
  }
  .l-footer__menu {
    grid-area: menu;
  }
  .l-footer__bnrs {
    grid-area: bnrs;
    padding-left: 40px;
  }
  .l-footer__copyright {
    grid-area: copyright;
    text-align: left;
  }
}
@media (max-width: 767.98px) {
  .l-footer__logo {
    margin-top: 58px;
    text-align: center;
  }
  .l-footer__logo img {
    width: 226px;
  }
  .l-footer__menu {
    margin-top: 16px;
  }
  .l-footer__sns {
    margin-top: 20px;
  }
  .l-footer__copyright {
    margin-top: 66px;
  }
}

@media (max-width: 1023.98px) {
  .l-archive-main {
    padding-top: 40px;
  }
}

.l-single-main {
  padding-block: 30px 80px;
  background-color: #fff;
}
@media (min-width: 768px) {
  .l-single-main {
    padding-block: 75px 90px;
  }
}

.l-map-main {
  position: relative;
  height: calc(100vh - var(--header-height) - var(--map-height));
}
.l-map-main__list {
  position: absolute;
  z-index: 10;
}
@media (min-width: 768px) {
  .l-map-main__list {
    top: 0;
    bottom: 0;
    left: 40px;
    width: 350px;
  }
  .l-map-main__list .swiper {
    height: 100%;
  }
}
@media (max-width: 767.98px) {
  .l-map-main__list {
    right: 0;
    bottom: calc(var(--navbar-height) + 66px);
    left: 0;
  }
}

.l-home-main {
  position: relative;
  z-index: 1;
}
@media (min-width: 768px) {
  .l-home-main {
    margin-top: -153px;
  }
}

.c-search-area__hdr {
  display: flex;
    flex-wrap: wrap;
  gap: 0 7px;
  align-items: center;
  padding-bottom: 12px;
}
.c-search-area__selected {
  position: relative;
  min-height: 64px;
  padding: 18px 20px;
  background-color: #fff;
  border-radius: 6px;
}
.c-search-area__empty {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  padding-inline: 20px;
  font-weight: 300;
  /*
  color: rgb(var(--color-black-rgb)/80%);
  */
}
.c-search-area__empty:is(.c-search-area__selected.is-filled *) {
  display: none;
}
.c-search-area__tags {
  display: flex;
  gap: 0 6px;
}
.c-search-area__tags > * {
  flex: 0 0 auto;
}
@media (min-width: 768px) {
  .c-search-area {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 10px;
  }
  .c-search-area__hdr {
    gap: 0 10px;
    padding-bottom: 12px;
  }
  .c-search-area__selected {
    min-height: 76px;
    padding: 24px 20px;
  }
  .c-search-area__empty {
    padding-inline: 20px;
    font-size: 16px;
  }
  .c-search-area__tags {
    flex-wrap: wrap;
    gap: 6px;
  }
  .c-search-area__submit {
    grid-column: span 2;
    margin-top: 46px;
  }
  .c-search-area__submit .c-search-btn {
    max-width: 260px;
    margin-inline: auto;
  }
}
@media (min-width: 1150px) {
  .c-search-area {
    grid-template-columns: 1fr 1fr 260px;
    gap: 0 20px;
  }
  .c-search-area__submit {
    grid-column: span 1;
  }
}
@media (max-width: 767.98px) {
  .c-search-area {
    padding: 28px 0px;
  }
  .c-search-area__box + .c-search-area__box {
    margin-top: 28px;
  }
  .c-search-area__tags {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .c-search-area__tags::-webkit-scrollbar {
    display: none;
  }
  .c-search-area__submit {
    max-width: 310px;
    margin-inline: auto;
    margin-top: 29px;
  }
}

.c-archive-board {
  position: relative;
  padding: 22px 20px;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 8px;
}
.c-archive-board:has(.c-archive-board__offical-mark) {
  padding-top: 28px;
  margin-top: 11px;
}
.c-archive-board__offical-mark {
  position: absolute;
  top: -11px;
  right: 0;
  display: flex;
  gap: 0 5px;
  align-items: center;
  justify-content: center;
  width: 140px;
  height: 29px;
  background-color: #fff;
  border-radius: 100vmax;
  box-shadow: 0 -1px 1px #D9D9D9;
}
.c-archive-board__offical-mark i {
  flex: 0 0 17px;
  width: 17px;
  line-height: 0;
}
.c-archive-board__offical-mark span {
  font-size: 12px;
  font-weight: bold;
}
.c-archive-board__points {
  display: grid;
  grid-template-columns: 100%;
  gap: 24px 0;
  margin-top: 20px;
  margin-bottom: 20px;
}
.c-archive-board__grid {
  display: grid;
  grid-template-columns: 100%;
  gap: 24px 0;
}
.c-archive-board__timetable {
  margin-top: 10px;
}
.c-archive-board__features {
  margin-top: 24px;
}
.c-archive-board__more {
  margin-top: 24px;
}
.c-archive-board.is-featured {
  /*
  background-color: #FFD900;
  */
  background-color: var(--main_c_light);
}
.c-archive-board.is-featured .c-review__stars span::before,
.c-archive-board.is-featured .c-user-review__stars span::before {
  background-image: url("../images/icons/star-black.svg");
}
.c-archive-board.is-featured .c-regular-box .c-user-review__stars span::before {
  background-image: url("../images/icons/star.svg");
}
.c-archive-board.is-featured .c-archive-board__offical-mark {
  background-color: #FFD900;
}

.c-archive-board.is-featured-sp {
  /*
  background-color: #FFD900;
  */
  background-color: var(--main_c_light);
}
.c-archive-board.is-featured-sp .c-review__stars span::before,
.c-archive-board.is-featured-sp .c-user-review__stars span::before {
  background-image: url("../images/icons/star-black.svg");
}
.c-archive-board.is-featured-sp .c-regular-box .c-user-review__stars span::before {
  background-image: url("../images/icons/star.svg");
}
.c-archive-board.is-featured-sp .c-archive-board__offical-mark {
  background-color: #FFD900;
}

.c-archive-board.is-featured-listing {
  /*
  background-color: #FFD900;
  */
  background-color: var(--main_c_light-listing);
}
.c-archive-board.is-featured-listing .c-review__stars span::before,
.c-archive-board.is-featured-listing .c-user-review__stars span::before {
  background-image: url("../images/icons/star-black.svg");
}
.c-archive-board.is-featured-listing .c-regular-box .c-user-review__stars span::before {
  background-image: url("../images/icons/star.svg");
}
.c-archive-board.is-featured-listing .c-archive-board__offical-mark {
  background-color: #FFD900;
}

@media (min-width: 768px) {
  .c-archive-board {
    padding: 28px;
  }
  .c-archive-board:has(.c-archive-board__offical-mark) {
    padding-top: 34px;
    margin-top: 14px;
  }
  .c-archive-board__offical-mark {
    top: -14px;
    gap: 6px;
    width: 183px;
    height: 40px;
  }
  .c-archive-board__offical-mark i {
    flex: 0 0 20px;
    width: 20px;
  }
  .c-archive-board__offical-mark span {
    font-size: 16px;
  }
  .c-archive-board__timetable {
    margin-top: 22px;
  }
  .c-archive-board__points {
    gap: 20px 0;
  }
  .c-archive-board__other {
    /*
    margin-top: 40px;
    */
    margin-top: 0px;
  }
  .c-archive-board__more {
    display: none;
  }
  .c-archive-board__features {
    margin-top: 40px;
  }
  .c-archive-board__grid {
    gap: 40px 0;
  }
  .c-archive-board.is-featured .c-info-table tr + tr {
    border-top: 1px solid #333;
  }
  .c-archive-board.is-featured-sp .c-info-table tr + tr {
    border-top: 1px solid #333;
  }
  .c-archive-board.is-featured-listing .c-info-table tr + tr {
    border-top: 1px solid #333;
  }
}
@media (max-width: 767.98px) {
  .c-archive-board__more {
    width: fit-content;
    margin-inline: auto;
  }
  .c-archive-board__other {
    height: 0;
    overflow: hidden;
  }
  .c-archive-board__other .c-archive-board__grid {
    padding-top: 24px;
  }
}

.c-aisupport-board {
  padding: 4px;
  background-image: linear-gradient(150deg, #FFFF1D 35%, #FF21BC 100%);
  border-radius: 12px;
}
.c-aisupport-board__in {
  position: relative;
  display: grid;
  grid-template: "heading img" auto "text img" auto "btn btn" 1fr/1fr 137px;
  padding: 20px 25px;
  background-color: #fff;
  border-radius: 12px;
}
.c-aisupport-board__heading {
  grid-area: heading;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.06em;
}
.c-aisupport-board__txt {
  grid-area: text;
  font-size: 12px;
  letter-spacing: 0.06em;
}
.c-aisupport-board__img {
  grid-area: img;
}
.c-aisupport-board__btn {
  grid-area: btn;
}
@media (min-width: 768px) {
  .c-aisupport-board {
    width: 576px;
    height: 242px;
    background-image: linear-gradient(135deg, #FFFF1D 35%, #FF21BC 120%);
  }
  .c-aisupport-board__in {
    grid-template: "heading img" auto "text img" auto "btn img" 1fr/1fr 167px;
    height: 234px;
    padding: 35px 38px 0 64px;
  }
  .c-aisupport-board__heading {
    padding-top: 1px;
    font-size: 24px;
  }
  .c-aisupport-board__txt {
    max-width: 280px;
    padding: 11px 0 0;
    font-size: 14px;
    text-align: center;
  }
  .c-aisupport-board__btn {
    padding-top: 17px;
    translate: -10px 0;
  }
}
@media (max-width: 767.98px) {
  .c-aisupport-board__img {
    translate: 10px 2px;
  }
}

.c-regular-box {
  padding: 16px 20px 20px;
  background-color: #F6F4EC;
  border-radius: 8px;
}
.c-regular-box--sp {
  background-color: #FFFFFF;
}

.c-multiply-box {
  position: relative;
}
.c-multiply-box::before {
  position: absolute;
  inset: 0;
  z-index: 0;
  content: "";
  background-color: #EDE9DA;
  border-radius: 8px;
  mix-blend-mode: multiply;
}
.c-multiply-box__in {
  position: relative;
  z-index: 1;
}

.c-staff-box {
  display: grid;
  grid-template: "image heading" auto "content content" 1fr/130px 1fr;
  gap: 16px;
}
.c-staff-box__image {
  grid-area: image;
}
.c-staff-box__image img {
  width: 100%;
  max-width: none;
  aspect-ratio: 16/10;
  object-fit: cover;
}
.c-staff-box__heading {
  grid-area: heading;
}
.c-staff-box__content {
  grid-area: content;
}
@media (min-width: 768px) {
  .c-staff-box {
    grid-template: "image heading" auto "image content" 1fr/160px 1fr;
    gap: 8px 24px;
  }
}
@media (max-width: 767.98px) {
  .c-staff-box {
    align-items: center;
  }
}

.c-Lstaff-box {
  display: grid;
  grid-template: "image heading" auto "content content" 1fr/160px 1fr;
  gap: 16px;
}
.c-Lstaff-box__image {
  grid-area: image;
}
.c-Lstaff-box__image img {
  width: 100%;
  max-width: none;
  /*画像が切れてしまうとのことで削除 */
  /*
  aspect-ratio: 16/10;
  object-fit: cover;
  */
}
.c-Lstaff-box__heading {
  display: flex;
  flex-direction: column;
  grid-area: heading;
  gap: 2px 0;
  align-items: flex-start;
  align-self: center;
}
.c-Lstaff-box__heading .-name {
  font-size: 16px;
  font-weight: bold;
}
.c-Lstaff-box__content {
  grid-area: content;
}
@media (min-width: 768px) {
  .c-Lstaff-box {
    grid-template: "image heading" auto "image content" 1fr/260px 1fr;
    gap: 8px 28px;
  }
  .c-Lstaff-box__heading {
    flex-direction: row;
    gap: 0 14px;
    align-items: center;
  }
}
@media (max-width: 767.98px) {
  .c-Lstaff-box {
    align-items: center;
  }
}

.c-review-box {
  padding: 16px;
  background-color: #fff;
  border-radius: 8px;
}
.c-review-box__hdr {
  display: flex;
  flex-wrap: wrap;
  gap: 0 10px;
}
.c-review-box__hdr span {
  font-weight: 500;
}
.c-review-box__hdr .-year,
.c-review-box__hdr .-date {
  opacity: 0.8;
}
.c-review-box__stars {
  display: flex;
  gap: 0 2px;
}
.c-review-box__stars span {
  --review: 1;
  position: relative;
  flex: 0 0 17px;
  width: 17px;
  height: 17px;
  line-height: 0;
}
.c-review-box__stars span::before {
  position: absolute;
  inset: 0;
  z-index: 10;
  content: "";
  background: url("../images/icons/star.svg") no-repeat center center/17px 17px;
  clip-path: inset(0 calc(100% - var(--review) * 100%) 0 0);
}
@media (min-width: 768px) {
  .c-review-box {
    padding: 20px;
  }
  .c-review-box__hdr {
    gap: 0 14px;
  }
  .c-review-box__bdy {
    display: flex;
    gap: 0 16px;
    align-items: flex-start;
    margin-top: 12px;
  }
  .c-review-box__stars {
    flex: 0 0 auto;
  }
  .c-review-box__ftr {
    margin-top: 10px;
  }
}
@media (max-width: 767.98px) {
  .c-review-box__hdr .-date {
    margin-left: auto;
  }
  .c-review-box__comment {
    margin-top: 16px;
  }
  .c-review-box__bdy {
    margin-top: 9px;
  }
  .c-review-box__ftr {
    margin-top: 16px;
  }
}

.c-supportComment-box {
  padding: 0 20px 25px;
  background-color: #EDE9DA;
  border-radius: 8px;
}
.c-supportComment-box__txt {
  font-size: 16px;
  font-weight: 500;
  text-align: center;
}
@media (min-width: 768px) {
  .c-supportComment-box {
    display: flex;
    align-items: center;
    padding: 12px 22px;
  }
  .c-supportComment-box__txt {
    margin-left: 8px;
    text-align: left;
  }
  .c-supportComment-box__link {
    margin-left: auto;
  }
}
@media (max-width: 767.98px) {
  .c-supportComment-box__icon {
    display: block;
    width: 39px;
    margin-inline: auto;
    translate: 0 -50%;
  }
  .c-supportComment-box__txt {
    margin-top: -10px;
  }
  .c-supportComment-box__link {
    margin-top: 12px;
    text-align: center;
  }
}

.c-selected-box {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-height: 46px;
  padding: 8px 12px 10px;
  background-color: #F6F4EC;
  border-radius: 6px;
}

.c-doctor-box {
  display: grid;
  grid-template: "image" auto "content" 1fr/100%;
  gap: 16px 0;
}
.c-doctor-box__image {
  grid-area: image;
}
.c-doctor-box__image img {
  width: 100%;
  max-width: none;
  /*
  aspect-ratio: 16/10;
  object-fit: cover;
  */
}
.c-doctor-box__content {
  display: grid;
  grid-area: content;
  grid-template-columns: 100%;
  gap: 30px 0;
}
@media (min-width: 768px) {
  .c-doctor-box {
    grid-template: "image content" 1fr/260px 1fr;
    gap: 0 28px;
  }
  .c-doctor-box__image figcaption {
    margin: 19px 5px 0;
  }
}
@media (max-width: 767.98px) {
  .c-doctor-box__image {
    display: grid;
    grid-template-columns: 160px 1fr;
    gap: 16px;
    align-items: center;
  }
}

.c-breadcrumbs {
  gap: 0 0.25em;
  align-items: center;
  padding: 24px 20px;
  font-size: 12px;
}
.c-breadcrumbs:has(.c-breadcrumbs__back) {
  height: 49px;
  padding: 0 20px;
}
.c-breadcrumbs a, .c-breadcrumbs span {
  font-weight: 500;
}
.c-breadcrumbs__in {
  gap: 0 0.25em;
  justify-content: flex-end;
  margin-left: auto;
}
.c-breadcrumbs__in a {
  color: #3E84CF;
  text-decoration: underline;
}
.c-breadcrumbs__in a:hover {
  text-decoration: none;
}
.c-breadcrumbs__back {
  flex: 0 0 24px;
  width: 24px;
  line-height: 0;
}
.l-header__logo_container {
  display: flex;
  align-items: center;
  gap: 0 10px;
}
.l-header__back_container {
  display: block;
}
.l-header__back_container svg {
  width: 24px;
}
@media (min-width: 768px) {
  .c-breadcrumbs {
    padding: 25px 30px;
  }
  .c-breadcrumbs:has(.c-breadcrumbs__back) {
    height: 55px;
    padding: 0 30px;
  }
}

:where(.c-breadcrumbs) {
  display: flex;
}

@media (min-width: 768px) {
  :where(.c-breadcrumbs__in) {
    display: flex;
  }
}
.c-header-btn {
  display: block;
  transition-duration: 0.3s;
  transition-property: opacity;
}
@media (any-hover: hover) {
  .c-header-btn:hover {
    opacity: 0.6;
  }
}
.c-header-btn > figure {
  text-align: center;
}
.c-header-btn > span {
  display: block;
  /*
  font-size: 12px;
  */
  font-size: 10px;
  text-align: center;
}
@media (min-width: 768px) {
  .c-header-btn {
    width: 110px;
  }
  .c-header-btn > span {
    font-size: 14px;
  }
}
@media (max-width: 767.98px) {
  .c-header-btn.-home {
    display: flex;
    gap: 0 6px;
    align-items: center;
  }
}

.c-acdnmore-btn {
  display: flex;
  gap: 0 4px;
  align-items: center;
  width: fit-content;
}
.c-acdnmore-btn::before {
  content: "さらに見る";
}
.c-acdnmore-btn::after {
  width: 12px;
  height: 12px;
  content: "";
  background: url("../images/icons/acdn-open.svg") no-repeat center center/contain;
}
.c-acdnmore-btn.is-open::before {
  content: "閉じる";
}
.c-acdnmore-btn.is-open::after {
  background-image: url("../images/icons/acdn-close.svg");
}

.c-acdn-btn {
  --size: 1em;
  display: flex;
  align-items: center;
}
.c-acdn-btn::after {
  width: var(--size);
  height: var(--size);
  content: "";
  background: url("../images/icons/acdn-open.svg") no-repeat center center/contain;
}
.c-acdn-btn.is-open::after {
  background: url("../images/icons/acdn-close.svg") no-repeat center center/contain;
}

:where(.c-acdn-btn) {
  width: 100%;
}

.c-inline-btn {
  padding: 4px 7px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  border-radius: 100vmax;
}
.c-inline-btn.-black {
  color: #fff;
  background-color: #333333;
  transition-duration: 0.3s;
  transition-property: background-color;
}
@media (any-hover: hover) {
  .c-inline-btn.-black:hover {
    background-color: #3E84CF;
  }
}

:where(.c-inline-btn) {
  display: inline-flex;
}

.c-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  line-height: 1.5;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 100vmax;
  transition-duration: 0.3s;
  transition-property: color, border-color, background-color;
}
@media (any-hover: hover) {
  .c-btn:hover {
    color: #fff;
    background-color: #3E84CF;
    border-color: #3E84CF;
  }
}

:where(.c-btn) {
  width: 100%;
}
@media (min-width: 768px) {
  :where(.c-btn) {
    padding: 12px 8px;
  }
}

.c-arrow-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  line-height: 1.5;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 100vmax;
  transition-duration: 0.3s;
  transition-property: color, border-color, background-color;
}
.c-arrow-btn__arrow {
  position: absolute;
  right: 20px;
  display: block;
  width: 20px;
  height: 20px;
  transition-duration: 0.3s;
  transition-property: translate;
}
.c-arrow-btn__arrow02 {
  transition-duration: 0.3s;
  transition-property: translate;
}
@media (any-hover: hover) {
  .c-arrow-btn:hover {
    color: #fff;
    background-color: #3E84CF;
    border-color: #3E84CF;
  }
  .c-arrow-btn:hover .c-arrow-btn__arrow {
    translate: 5px 0;
  }
  .c-arrow-btn:hover .c-arrow-btn__arrow02 {
    translate: 5px 0;
  }
  .c-arrow-btn:hover .c-arrow-btn__ext-link svg,
  .c-arrow-btn:hover .c-arrow-btn__ext-link svg .st0,
  .c-arrow-btn:hover .c-arrow-btn__ext-link svg .st1 {
    stroke: #ffffff;
  }
}

.c-keyword-btn {
  display: flex;
  align-items: center;
  width: 100%;
  padding-block: 14px;
}
.c-keyword-btn__label {
  flex: 0 0 auto;
  padding-right: 12px;
  font-weight: bold;
}
.c-keyword-btn__selected {
  flex: 0 1 auto;
  margin-left: auto;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 500;
  white-space: nowrap;
  opacity: 0.5;
}
.c-keyword-btn__arrow {
  flex: 0 0 20px;
  width: 20px;
  line-height: 0;
  opacity: 0.5;
}

.c-search-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  font-weight: 500;
  color: #fff;
  background-color: #333333;
  border-radius: 100vmax;
  transition-duration: 0.3s;
  transition-property: background-color;
}
.c-search-btn__icon {
  flex: 0 0 24px;
}
@media (any-hover: hover) {
  .c-search-btn:hover {
    background-color: #3E84CF;
  }
}

.c-map-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 138px;
  height: 40px;
  background-color: #fff;
  border-radius: 100vmax;
  box-shadow: 0 0 15px rgb(var(--color-black-rgb)/20%);
  transition-duration: 0.3s;
  transition-property: background-color, color;
}
.c-map-btn__icon {
  flex: 0 0 24px;
}
@media (any-hover: hover) {
  .c-map-btn:hover {
    color: #fff;
    background-color: #3E84CF;
  }
}

.c-list-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 144px;
  height: 40px;
  background-color: #fff;
  border-radius: 100vmax;
  box-shadow: 0 0 15px rgb(var(--color-black-rgb)/20%);
  transition-duration: 0.3s;
  transition-property: background-color, color;
}
.c-list-btn__icon {
  flex: 0 0 20px;
}
@media (any-hover: hover) {
  .c-list-btn:hover {
    color: #fff;
    background-color: #3E84CF;
  }
}
.c-sagiApp-btn {
  position: fixed;
  right: 20px;
  bottom: calc(var(--navbar-height) + 140px);
  z-index: 51;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  box-shadow: 0px 1px 5px rgba(0, 0, 0, 22%);
  transition-duration: 0.3s;
  transition-property: background-color;
}
@media (min-width: 768px) {
  .c-sagiApp-btn {
    width: 70px;
    height: 70px;
  }
  .c-sagiApp-btn:is(body:has(.c-pagetop-btn) *) {
    bottom: calc(var(--navbar-height) + 20px + 160px);
  }
}
.c-pagetop-btn {
  position: fixed;
  right: 20px;
  bottom: calc(var(--navbar-height) + 20px);
  z-index: 51;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  padding-bottom: 4px;
  color: #fff;
  background-color: #333333;
  border-radius: 50%;
  transition-duration: 0.3s;
  transition-property: background-color;
}
.c-pagetop-btn i {
  display: block;
  width: 16px;
  margin-inline: auto;
}
.c-pagetop-btn span {
  display: block;
  font-size: 10px;
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
  letter-spacing: 0.02em;
}
@media (any-hover: hover) {
  .c-pagetop-btn:hover {
    background-color: #3E84CF;
  }
}
@media (min-width: 768px) {
  .c-pagetop-btn {
    width: 70px;
    height: 70px;
    padding-bottom: 8px;
  }
  .c-pagetop-btn i {
    width: 20px;
  }
  .c-pagetop-btn span {
    font-size: 12px;
  }
}

.c-aisearch-btn {
  position: fixed;
  right: 20px;
  bottom: calc(var(--navbar-height) + 20px);
  z-index: 51;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  box-shadow: 0 2px 7px rgba(222, 148, 0, 0.4);
  transition-duration: 0.3s;
  transition-property: opacity;
}
.c-aisearch-btn:is(body:has(.c-pagetop-btn) *) {
  bottom: calc(var(--navbar-height) + 20px + 60px);
}
@media (any-hover: hover) {
  .c-aisearch-btn:hover {
    opacity: 0.6;
  }
}
@media (min-width: 768px) {
  .c-aisearch-btn {
    width: 70px;
    height: 70px;
  }
  .c-aisearch-btn:is(body:has(.c-pagetop-btn) *) {
    bottom: calc(var(--navbar-height) + 20px + 80px);
  }
}

.c-aisearch-static-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
    width: 70px;
    height: 70px;
  border-radius: 50%;
  box-shadow: 0 2px 7px rgba(222, 148, 0, 0.4);
  transition-duration: 0.3s;
  transition-property: opacity;
}

@media (any-hover: hover) {
  .c-aisearch-static-btn:hover {
    opacity: 0.6;
  }
}


.c-exlink-btn, .c-tel-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 47px;
  border-style: solid;
  border-width: 1px;
  border-radius: 100vmax;
  transition-duration: 0.3s;
  transition-property: border-color, background-color, color;
}
.c-exlink-btn span, .c-tel-btn span {
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.06em;
}
.c-exlink-btn i, .c-tel-btn i {
  line-height: 0;
}
@media (min-width: 768px) {
  .c-exlink-btn, .c-tel-btn {
    height: 55px;
  }
}

.c-tel-btn {
  gap: 0 2px;
  color: #fff;
  background-color: #333333;
  border-color: #333333;
}
.c-tel-btn i {
  flex: 0 0 24px;
  width: 24px;
}
@media (any-hover: hover) {
  .c-tel-btn:hover {
    color: #333333;
    background-color: #fff;
  }
}

.c-exlink-btn {
  gap: 0 2px;
  color: #fff;
  background-color: #333333;
  border-color: #333333;
}
.c-exlink-btn i {
  flex: 0 0 24px;
  width: 24px;
  translate: 0 1px;
}
@media (any-hover: hover) {
  .c-exlink-btn:hover {
    color: #333333;
    background-color: #fff;
  }
}
.c-exlink-btn.-border {
  color: #333333;
  background-color: #fff;
  border-color: rgb(var(--color-black-rgb)/40%);
}
@media (any-hover: hover) {
  .c-exlink-btn.-border:hover {
    color: #fff;
    background-color: #333333;
    border-color: #333333;
  }
}

.c-column-btn {
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 0 10px;
  align-items: center;
  padding: 7px 8px 5px;
  line-height: 1.4;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 8px;
  transition-duration: 0.3s;
  transition-property: color, background-color;
}
@media (any-hover: hover) {
  .c-column-btn:hover {
    color: #3E84CF;
  }
}
@media (min-width: 768px) {
  .c-column-btn {
    grid-template-columns: 52px 1fr;
    gap: 0 11px;
    padding: 8px 9px 5px;
    font-size: 16px;
    border-radius: 9px;
  }
}

.c-recommend-card {
  display: grid;
  grid-template-columns: 1fr 106px;
  gap: 14px 12px;
  padding: 16px;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 6px;
  box-shadow: 0 0 10px rgb(var(--color-black-rgb)/20%);
}
.c-recommend-card__heading {
  font-weight: 500;
}
.c-recommend-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 12px;
}
.c-recommend-card__image img {
  width: 100%;
  max-width: none;
  aspect-ratio: 53/40;
  object-fit: cover;
}
.c-recommend-card__tags {
  display: flex;
  flex-wrap: wrap;
  grid-column: span 2;
  gap: 5px;
}
.c-recommend-card__tags span {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.2;
  background-color: #FFD900;
  border-radius: 100vmax;
}
@media (min-width: 768px) {
  .c-recommend-card {
    grid-template-columns: 1fr 147px;
    padding: 14px 18px;
  }
  .c-recommend-card__tags {
    gap: 7px;
  }
  .c-recommend-card__tags span {
    padding: 6px 15px;
    font-size: 16px;
  }
  .c-recommend-card__heading {
    font-size: 19px;
  }
}

.c-map-card {
  display: grid;
  grid-template-columns: 1fr 130px;
  gap: 8px 16px;
  padding: 10px 16px;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 6px;
  box-shadow: 0 0 10px rgb(var(--color-black-rgb)/20%);
}
.c-map-card__heading {
  padding-bottom: 12px;
  font-size: 16px;
  font-weight: 500;
}
.c-map-card__image img {
  width: 100%;
  max-width: none;
  aspect-ratio: 53/40;
  object-fit: cover;
}
.c-map-card__tags {
  display: flex;
  flex-wrap: wrap;
  grid-column: span 2;
  gap: 6px;
}
.c-map-card__tags span {
  padding: 5px 10px;
  font-size: 14px;
  line-height: 1.2;
  background-color: #FFD900;
  border-radius: 100vmax;
}
.c-map-card__content {
  text-align: left;
}
.c-map-card--sp {
  background-color: var(--main_c_light);
}
.c-map-card--listing {
  background-color: var(--main_c_light-listing);
}
@media (min-width: 768px) {
  .c-map-card {
    padding: 20px;
  }
}

.c-column-card__img {
  display: block;
  aspect-ratio: 276/155;
  overflow: hidden;
  border-radius: 4px;
}
.c-column-card__img img {
  transition-duration: 0.5s;
  transition-property: scale;
}
.c-column-card__heading {
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.6;
  transition-duration: 0.3s;
  transition-property: color;
}
.c-column-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}
@media (any-hover: hover) {
  .c-column-card:hover .c-column-card__img img {
    scale: 1.03;
  }
  .c-column-card:hover .c-column-card__heading {
    color: #3E84CF;
  }
}
@media (min-width: 768px) {
  .c-column-card__heading {
    margin-top: 15px;
  }
}

.c-column-card__img {
  display: block;
  aspect-ratio: 276/155;
  overflow: hidden;
  border-radius: 4px;
}
.c-column-card__img img {
  transition-duration: 0.5s;
  transition-property: scale;
}
.c-column-card__heading {
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.6;
  transition-duration: 0.3s;
  transition-property: color;
}
.c-column-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}
@media (any-hover: hover) {
  .c-column-card:hover .c-column-card__img img {
    scale: 1.03;
  }
  .c-column-card:hover .c-column-card__heading {
    color: #3E84CF;
  }
}
@media (min-width: 768px) {
  .c-column-card__heading {
    margin-top: 15px;
  }
}
@media (max-width: 559.98px) {
  .c-column-card.-mb-style {
    display: grid;
    grid-template: "img heading" auto "img tags" auto/160px 1fr;
    gap: 7px 15px;
  }
  .c-column-card.-mb-style .c-column-card__img {
    grid-area: img;
  }
  .c-column-card.-mb-style .c-column-card__heading {
    grid-area: heading;
    margin-top: -5px;
    align-self: flex-start;
  }
  .c-column-card.-mb-style .c-column-card__tags {
    grid-area: tags;
    margin-top: 0;
    align-self: flex-end;
  }
}

.c-attraction-card {
  background-color: #fff;
  border-radius: 8px;
  padding-top: 25px;
}
.c-attraction-card.is-new {
  position: relative;
}
.c-attraction-card.is-new::before {
  content: "NEW";
  width: 50px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  background-color: #F33838;
  color: #fff;
  font-size: 12px;
  position: absolute;
  top: 10px;
  left: 10px;
}
.c-attraction-card__hgrp p {
  width: fit-content;
  margin-inline: auto;
  font-size: 12px;
  border-bottom: 1px solid currentColor;
  letter-spacing: 0.04em;
}
.c-attraction-card__hgrp h3 {
  font-size: 20px;
  line-height: 1.6;
  font-weight: 500;
  text-align: center;
  padding-top: 12px;
}
@media (min-width: 768px) {
  .c-attraction-card {
    padding-top: 24px;
  }
  .c-attraction-card__hgrp h3 {
    font-size: 22px;
    padding-top: 14px;
  }
}

.c-license-dl dt {
  font-weight: 500;
}
.c-license-dl dd {
  padding-left: 1em;
  text-indent: -1em;
}
.c-license-dl dd::before {
  content: "・";
}
@media (min-width: 768px) {
  .c-license-dl {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0 28px;
  }
  .c-license-dl dt {
    grid-column: 1/span 1;
  }
  .c-license-dl dd {
    grid-column: 2/span 1;
  }
}

.c-career-dl {
  display: grid;
  grid-template-columns: 100%;
  gap: 16px 0;
}
.c-career-dl > div {
  display: grid;
  grid-template-columns: 5em 1fr;
}

.c-feature-fg img {
  display: block;
}
.c-feature-fg figcaption {
  display: flex;
  justify-content: center;
  font-size: 12px;
  font-weight: 500;
  text-align: center;
}
@media (min-width: 768px) {
  .c-feature-fg {
    display: flex;
    gap: 0 5px;
    align-items: center;
  }
  .c-feature-fg img {
    flex: 0 0 50px;
    width: 50px;
  }
  .c-feature-fg figcaption {
    text-align: left;
  }
}
@media (max-width: 767.98px) {
  .c-feature-fg img {
    width: 70px;
    margin-inline: auto;
  }
  .c-feature-fg figcaption {
    margin-top: 6px;
  }
}

.c-filter-group {
  display: flex;
  gap: 6px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.c-filter-group::-webkit-scrollbar {
  display: none;
}
.c-filter-group > * {
  flex: 0 0 auto;
}

.c-tag-group {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.c-tag-group > * {
  flex: 0 0 auto;
}

.c-features-group {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}
.c-features-group div.icon-box {
  padding: 5px;
  background: #ffffff;
  border-radius: 10px;
  width: auto;
}
@media (min-width: 768px) {
  .c-features-group {
    gap: 20px;
  }
}
@media (max-width: 767.98px) {
  .c-features-group > * {
    flex: 0 0 70px;
    width: 70px;
  }
}

.c-genre-group {
  border-bottom: 1px solid #D9D9D9;
}
.c-genre-group.is-selected .c-genre-group__btn {
  grid-template-columns: 38px 1fr 57px 24px;
}
.c-genre-group.is-selected .c-genre-group__selected {
  display: flex;
}
.c-genre-group__btn {
  display: grid;
  grid-template-columns: 38px 1fr 24px;
  gap: 0 16px;
  align-items: center;
  width: 100%;
  padding: 16px 20px;
}
.c-genre-group__btn.is-open .c-genre-group__arrow {
  rotate: x 180deg;
}
.c-genre-group__txt {
  font-weight: bold;
}
.c-genre-group__selected {
  display: none;
  align-items: center;
  justify-content: center;
  width: 57px;
  height: 24px;
  font-size: 12px;
  font-weight: 500;
  color: #fff;
  background-color: #F33838;
  border-radius: 100vmax;
}
.c-genre-group__arrow {
  line-height: 0;
  opacity: 0.5;
}
.c-genre-group__content {
  height: 0;
  overflow: hidden;
}
.c-genre-group__in {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 20px 20px;
  background-color: #F6F4EC;
}
@media (min-width: 768px) {
  .c-genre-group__btn {
    padding: 16px 20px;
  }
  .c-genre-group__in {
    padding: 14px 21px;
  }
}

.c-area-group__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 72px;
  padding-inline: 20px;
}
.c-area-group__heading .-txt {
  font-weight: bold;
}
.c-area-group__pref {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 50px;
  padding-inline: 35px 15px;
  border-bottom: 1px solid #D9D9D9;
}
.c-area-group__pref .-arrow {
  flex: 0 0 20px;
  opacity: 0.5;
}
@media (min-width: 768px) {
  .c-area-group__heading {
    height: 40px;
    padding-inline: 0;
  }
  .c-area-group__heading .-txt {
    font-size: 18px;
  }
  .c-area-group__heading .-arrow {
    display: none;
  }
  .c-area-group__pref {
    padding-inline: 20px;
  }
}
@media (max-width: 767.98px) {
  .c-area-group {
    border-bottom: 1px solid #D9D9D9;
  }
  .c-area-group__heading .-arrow {
    flex: 0 0 20px;
    line-height: 0;
    opacity: 0.5;
  }
  .c-area-group__heading.is-open .-arrow {
    rotate: 180deg;
  }
  .c-area-group__prefs {
    height: 0;
    overflow: hidden;
    background-color: #F6F4EC;
  }
  .c-area-group__prefs .c-area-group__pref:last-child {
    border-bottom: none;
  }
}

.c-pref-group__heading {
  display: none;
}
.c-pref-group__city {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 72px;
  padding-inline: 20px;
  border-bottom: 1px solid #D9D9D9;
}
.c-pref-group__city .-txt {
  font-weight: bold;
}
.c-pref-group__city .-arrow {
  flex: 0 0 20px;
  opacity: 0.5;
}
@media (min-width: 768px) {
  .c-pref-group__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 40px;
    padding-inline: 20px;
    padding-inline: 0;
    font-size: 18px;
    font-weight: bold;
  }
  .c-pref-group__cites {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 20px;
  }
  .c-pref-group__city {
    height: 52px;
  }
}

.c-info-group {
  display: grid;
  grid-template-columns: 100%;
  gap: 30px 0;
}
.c-info-group__column {
  display: grid;
  grid-template-columns: 100%;
  gap: 30px 0;
}
@media (min-width: 768px) {
  .c-info-group {
    grid-template-columns: 1fr 1fr;
    gap: 0 40px;
    align-items: flex-start;
  }
}

.c-access-group {
  display: grid;
  grid-template-columns: 100%;
  gap: 12px 0;
}
.c-access-group dt {
  font-weight: bold;
}
.c-access-group__bus, .c-access-group__train, .c-access-group__car {
  display: grid;
  grid-template-columns: 90px 1fr;
  gap: 0;
  align-items: flex-start;
}
.c-access-group__bus dt, .c-access-group__train dt, .c-access-group__car dt {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 30px;
  padding-left: 35px;
}
.c-access-group__bus dt::before, .c-access-group__train dt::before, .c-access-group__car dt::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 30px;
  height: 30px;
  content: "";
  translate: 0 -50%;
}
.c-access-group__bus dd, .c-access-group__train dd, .c-access-group__car dd {
  padding-top: 4px;
}
.c-access-group__train dt::before {
  background: url("../images/icons/train.svg") no-repeat center center/contain;
}
.c-access-group__bus dt::before {
  background: url("../images/icons/bus.svg") no-repeat center center/contain;
}
.c-access-group__car dt::before {
  background: url("../images/icons/car.svg") no-repeat center center/contain;
}
@media (min-width: 768px) {
  .c-access-group {
    gap: 20px 0;
  }
}

.c-archboard-hdr {
  display: grid;
  grid-template: "heading" auto "content" 1fr/100%;
}
.c-archboard-hdr:has(.c-archboard-hdr__image) {
  grid-template: "heading image" auto "content content" 1fr/1fr 130px;
}
.c-archboard-hdr__heading {
  grid-area: heading;
}
.c-archboard-hdr__image {
  grid-area: image;
}
.c-archboard-hdr__image img {
  width: 100%;
  max-width: none;
  /* 見切れないようにする
  aspect-ratio: 18/10;
  */
  object-fit: cover;
}
.c-archboard-hdr__content {
  grid-area: content;
}
.c-archboard-hdr__access {
  display: flex;
  gap: 0 4px;
  align-items: center;
  margin-top: 17px;
}
.c-archboard-hdr__access > span {
  flex: 0 1 auto;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.c-archboard-hdr__access > a {
  flex: 0 0 auto;
}
@media (min-width: 768px) {
  .c-archboard-hdr {
    gap: 12px;
  }
  .c-archboard-hdr:has(.c-archboard-hdr__image) {
    grid-template: "heading image" auto "content image" 1fr/1fr 220px;
  }
  .c-archboard-hdr__access {
    margin-top: 14px;
  }
  .c-archboard-hdr__image img {
    /* 見切れないようにする
    aspect-ratio: 22/13;
    */
  }
}
@media (max-width: 767.98px) {
  .c-archboard-hdr__image img {
    width: 100%;
    height: 100px;
    object-fit: cover;
  }
  .c-archboard-hdr__content {
    margin-top: 16px;
  }
}

.c-article-hdr {
  display: grid;
}
.c-article-hdr__heading {
  grid-area: heading;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.4;
}
.c-article-hdr__review {
  grid-area: review;
}
.c-article-hdr__offical-mark {
  display: flex;
  grid-area: offcial;
  gap: 0 5px;
  align-items: center;
}
.c-article-hdr__offical-mark i {
  flex: 0 0 17px;
  width: 17px;
  line-height: 0;
}
.c-article-hdr__offical-mark span {
  font-size: 12px;
  font-weight: bold;
}
.c-article-hdr__access {
  display: flex;
  gap: 0 4px;
  align-items: center;
  margin-top: 17px;
}
.c-article-hdr__access > span {
  flex: 0 1 auto;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.c-article-hdr__access > a {
  flex: 0 0 auto;
}
.c-article-hdr__info {
  grid-area: info;
}
.c-article-hdr__image {
  grid-area: image;
  text-align: center;
}
.c-article-hdr__image img {
  width: 100%;
  max-width: none;
  /* 見切れないようにする
  aspect-ratio: 70/39;
  */
  object-fit: cover;
}
@media (min-width: 768px) {
  .c-article-hdr {
    grid-template: "heading" auto "review" auto "info" 1fr/100%;
    gap: 0 40px;
  }
  .c-article-hdr__heading {
    font-size: 26px;
  }
  .c-article-hdr__review {
    padding-top: 12px;
  }
  .c-article-hdr__access {
    margin-top: 16px;
  }
  .c-article-hdr__info {
    padding-top: 21px;
  }
  .c-article-hdr__offical-mark {
    align-self: center;
  }
  .c-article-hdr:has(.c-article-hdr__offical-mark) {
    grid-template: "heading offcial" auto "review review" auto "info info" 1fr/1fr auto;
  }
  .c-article-hdr:has(.c-article-hdr__image) {
    grid-template: "heading image" auto "review image" auto "info image" 1fr/1fr 350px;
  }
  .c-article-hdr:has(.c-article-hdr__image):has(.c-article-hdr__offical-mark) {
    grid-template: "heading offcial image" auto "review review image" auto "info info image" 1fr/1fr auto 350px;
  }
}
@media (max-width: 767.98px) {
  .c-article-hdr {
    grid-template: "heading" auto "review" auto "info" 1fr/100%;
    grid-template-columns: 100%;
    gap: 12px 16px;
  }
  .c-article-hdr__image {
    padding-block: 8px;
  }
  .c-article-hdr:has(.c-article-hdr__offical-mark) {
    grid-template: "heading heading" auto "review offcial" auto "info info" 1fr/1fr auto;
  }
  .c-article-hdr:has(.c-article-hdr__image) {
    grid-template: "heading" auto "review" auto "image" auto "info" 1fr/100%;
  }
  .c-article-hdr:has(.c-article-hdr__image):has(.c-article-hdr__offical-mark) {
    grid-template: "heading heading" auto "review offcial" auto "image image" auto "info info" 1fr/1fr auto;
  }
}

.c-heading {
  line-height: 1.4;
}

:where(.c-heading) {
  font-weight: 700;
}

.c-h1 {
  font-size: 32px;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .c-h1 {
    font-size: 34px;
  }
}

:where(.c-h1) {
  font-weight: 500;
}

.c-h2 {
  font-size: 24px;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .c-h2 {
    font-size: 28px;
  }
}

:where(.c-h2) {
  font-weight: 700;
}

.c-h3 {
  font-size: 20px;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .c-h3 {
    font-size: 26px;
  }
}

:where(.c-h3) {
  font-weight: 500;
}

.c-h4 {
  font-size: 18px;
}
@media (min-width: 768px) {
  .c-h4 {
    font-size: 20px;
  }
}

:where(.c-h4) {
  font-weight: 500;
}

.c-h5 {
  font-size: 16px;
}
@media (min-width: 768px) {
  .c-h5 {
    font-size: 18px;
  }
}

:where(.c-h5) {
  font-weight: 500;
}

.c-bg-h4 {
  padding-block: 4px;
  padding-inline: 10px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.4;
  color: #fff;
  background-color: #333333;
  border-radius: 2px;
}
@media (min-width: 768px) {
  .c-bg-h4 {
    padding-inline: 16px;
  }
}

.c-column-hgrp p {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 180px;
  height: 32px;
  margin-inline: auto;
  font-weight: 500;
  background-color: #FFD900;
  border-radius: 16px;
}
.c-column-hgrp p::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 13px;
  height: 12px;
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2213%22%20height%3D%2212%22%20viewBox%3D%220%200%2013%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8.06506%2010.5C7.29526%2011.8333%205.37076%2011.8333%204.60096%2010.5L0.27083%203C-0.49897%201.66666%200.463282%20-1.29995e-06%202.00288%20-1.16536e-06L10.6631%20-4.08253e-07C12.2027%20-2.73657e-07%2013.165%201.66667%2012.3952%203L8.06506%2010.5Z%22%20fill%3D%22%23FFD900%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: 13px 12px;
  translate: -50% 7px;
}
.c-column-hgrp h1 {
  margin-top: 12px;
  font-size: 26px;
  font-weight: 500;
  text-align: center;
}
@media (min-width: 768px) {
  .c-column-hgrp h1 {
    margin-top: 10px;
    font-size: 34px;
  }
}

.c-wide-inner, .c-loose-inner, .c-inner, .c-slim-inner {
  margin-inline: auto;
  --section-gutter: var(--gutter);
}

.c-slim-inner {
  width: min(100% - var(--section-gutter) * 2, var(--inner-slim));
}

.c-inner {
  width: min(100% - var(--section-gutter) * 2, var(--inner-base));
}

.c-loose-inner {
  width: min(100% - var(--section-gutter) * 2, var(--inner-loose));
}

.c-wide-inner {
  width: min(100% - var(--section-gutter) * 2, var(--inner-wide));
}

.-x-fill:is(*.c-slim-inner, *.c-inner, *.c-loose-inner, *.c-wide-inner) {
  --section-gutter: 0px;
}
@media (min-width: 768px) {
  .-x-fill-pc:is(*.c-slim-inner, *.c-inner, *.c-loose-inner, *.c-wide-inner) {
    --section-gutter: 0px;
  }
}
@media (max-width: 767.98px) {
  .-x-fill-mobile:is(*.c-slim-inner, *.c-inner, *.c-loose-inner, *.c-wide-inner) {
    --section-gutter: 0px;
  }
}

.c-link {
  color: #3E84CF;
  text-decoration: underline;
  text-underline-offset: 2px;
}
@media (any-hover: hover) {
  .c-link:hover {
    text-decoration: none;
  }
}

.c-txt-link {
  text-underline-offset: 2px;
}
.c-txt-link[target=_blank]::after {
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-inline-start: 0.5em;
  vertical-align: middle;
  content: "";
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2014%2014%22%3E%3Cpath%20fill%3D%22%23333%22%20d%3D%22M12.43%2C7.77v4.67c0%2C.41-.16.81-.46%2C1.1-.29.29-.69.46-1.1.46H1.56c-.41%2C0-.81-.16-1.1-.46-.29-.29-.46-.69-.46-1.1V3.11c0-.41.16-.81.46-1.1.29-.29.69-.46%2C1.1-.46h4.67v1.56H1.56v9.32h9.32v-4.67h1.56%2C0ZM7.77%2C0v1.56h3.57l-6.06%2C6.06%2C1.1%2C1.1%2C6.06-6.06v3.57h1.56V0h-6.23Z%22%2F%3E%3C%2Fsvg%3E") no-repeat center center/contain;
  translate: 0 -0.1em;
}
@media (any-hover: hover) {
  .c-txt-link:hover {
    color: #3E84CF;
    text-decoration: underline;
  }
}

.c-arrow-link {
  display: inline-flex;
  align-items: center;
  transition-duration: 0.3s;
  transition-property: color;
}
.c-arrow-link__arrow {
  width: 1em;
  height: 1em;
  line-height: 0;
  transition-duration: 0.3s;
  transition-property: translate;
}
@media (any-hover: hover) {
  .c-arrow-link:hover {
    color: #3E84CF;
  }
  .c-arrow-link:hover .c-arrow-link__arrow {
    translate: 5px 0;
  }
}

:where(.c-arrow-link) {
  gap: 0 8px;
}

:where(.c-arrow-link__arrow) {
  font-size: 20px;
}

.c-category-list > li {
  border-top: 1px solid #D9D9D9;
}
.c-category-list.-border-bottom {
  border-bottom: 1px solid #D9D9D9;
}

.c-info-map {
  width: 100%;
  aspect-ratio: 4/3;
}
.c-info-map iframe {
  width: 100%;
  height: 100%;
}
@media (min-width: 768px) {
  .c-info-map {
    aspect-ratio: 485/250;
  }
}

.c-marker {
  position: relative;
}
.c-marker::before {
  content: "";
  position: absolute;
  inset: auto 0.02em 0.2em;
  height: 0.3636em;
  z-index: -1;
  background-color: #FFD900;
}

.c-ftr-menu {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
}
.c-ftr-menu li {
  flex: 0 0 auto;
  font-size: 12px;
}
.c-ftr-menu a {
  transition-duration: 0.3s;
  transition-property: color;
}
@media (any-hover: hover) {
  .c-ftr-menu a:hover {
    color: #3E84CF;
  }
}
@media (min-width: 768px) {
  .c-ftr-menu {
    gap: 0 20px;
    justify-content: flex-end;
  }
}
@media (max-width: 767.98px) {
  .c-ftr-menu {
    justify-content: center;
  }
}

.c-modal {
  --top: 60px;
  position: fixed;
  inset: 0;
  z-index: 999;
  display: flex;
  visibility: hidden;
  justify-content: center;
  padding-top: var(--top);
  opacity: 0;
}
.c-modal.is-active .c-modal__bg {
  -webkit-backdrop-filter: blur(7.8px);
  backdrop-filter: blur(7.8px);
}
.c-modal:has(.c-modal__ftr) .c-modal__container {
  padding-bottom: 146px;
}
.c-modal__bg {
  position: fixed;
  inset: 0;
  z-index: 0;
  background-color: rgb(var(--color-black-rgb)/60%);
}
.c-modal__container {
  position: relative;
  z-index: 1;
  flex: 1 1 100%;
  max-width: 1000px;
  min-height: calc(100dvh - var(--top));
  overflow: auto;
  background-color: #fff;
  border-radius: 12px 12px 0 0;
  -webkit-overflow-scrolling: touch;
}
.c-modal__hdr {
  display: grid;
  grid-template: "prev heading close" 1fr/24px 1fr 24px;
  align-items: center;
  min-height: 62px;
  padding-inline: 20px;
  border-bottom: 1px solid #D9D9D9;
}
.c-modal__bdy.-min-h {
  min-height: calc(100% - 62px);
}
.c-modal__heading {
  grid-area: heading;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}
.c-modal__prev {
  grid-area: prev;
}
.c-modal__remove {
  grid-area: close;
}
.c-modal__ftr {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10;
  height: 146px;
  padding-inline: 20px;
  background: #fff;
}
@media (min-width: 768px) {
  .c-modal {
    --top: 76px;
  }
  .c-modal:has(.c-modal__ftr) .c-modal__container {
    padding-bottom: 127px;
  }
  .c-modal__hdr {
    min-height: 88px;
    padding-inline: 35px;
    border-bottom: none;
  }
  .c-modal__bdy {
    padding-inline: 20px;
  }
  .c-modal__bdy.-min-h {
    min-height: calc(100% - 88px);
  }
  .c-modal__ftr {
    right: max(0px, var(--view-width) * 0.5 - 500px);
    left: max(0px, var(--view-width) * 0.5 - 500px);
    display: flex;
    gap: 0 15px;
    align-items: center;
    justify-content: center;
    height: 127px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
  }
  .c-modal__submit {
    flex: 0 0 320px;
  }
  .c-modal__sub {
    flex: 0 0 auto;
  }
}
@media (max-width: 767.98px) {
  .c-modal__ftr {
    display: flex;
    flex-direction: column;
    gap: 13px;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 17px #F8F5EB;
  }
  .c-modal__submit {
    width: 100%;
    max-width: 400px;
    margin-inline: auto;
  }
  .c-modal__sub {
    display: flex;
    width: 100%;
    max-width: 300px;
    margin-inline: auto;
  }
}

.c-chat-modal {
  position: fixed;
  inset: 0;
  z-index: 999;
  display: flex;
  visibility: hidden;
  justify-content: center;
  opacity: 0;
}
.c-chat-modal.is-active .c-chat-modal__bg {
  -webkit-backdrop-filter: blur(7.8px);
  backdrop-filter: blur(7.8px);
}
.c-chat-modal__bg {
  position: fixed;
  inset: 0;
  z-index: 0;
  background-color: rgb(var(--color-black-rgb)/60%);
}
.c-chat-modal__hdr {
  display: grid;
  grid-template: "prev heading close" 1fr/24px 1fr 24px;
  align-items: center;
  height: 50px;
  padding-inline: 20px;
  border-radius: 12px 12px 0 0;
}
.c-chat-modal__prev {
  grid-area: prev;
}
.c-chat-modal__heading {
  grid-area: heading;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.2;
  color: #fff;
  text-align: center;
}
.c-chat-modal__remove {
  grid-area: close;
}
.c-chat-modal__container {
  position: relative;
  z-index: 1;
  flex: 0 0 100%;
  width: 100%;
  background-color: #F6F4EC;
}
.c-chat-modal__bdy {
  display: grid;
  grid-template-columns: 100%;
  grid-auto-rows: min-content;
  gap: 20px;
  width: 100%;
  height: calc(100dvh - 226px);
  padding: 16px 16px calc(16px + env(safe-area-inset-bottom));
  overflow: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.c-chat-modal__bdy::-webkit-scrollbar {
  display: none;
}
.c-chat-modal__reply {
  display: flex;
  gap: 0 8px;
  width: 100%;
}
.c-chat-modal__reply .-img {
  flex: 0 0 40px;
  align-self: flex-start;
  width: 40px;
  height: 40px;
  border: 1px solid #D9D9D9;
  border-radius: 50%;
}
.c-chat-modal__reply .-message {
  flex: 1 1 auto;
  padding: 10px 16px;
  font-size: 14px;
  line-height: 1.6;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 0 12px 12px;
  box-shadow: 0 0 15px #F6F4EC;
}
.c-chat-modal__reply .-message a {
  color: #3E84CF;
  text-decoration: underline;
}
.c-chat-modal__reply .-message small {
  color: rgb(var(--color-black-rgb)/60%);
}
.c-chat-modal__reply .-message strong {
  font-size: 18px;
  font-weight: 500;
}
.c-chat-modal__reply .-message b {
  font-weight: 500;
}
.c-chat-modal__reply .-date {
  flex: 0 0 auto;
  align-self: flex-end;
  font-size: 10px;
  font-weight: 500;
}
.c-chat-modal__post {
  display: flex;
  gap: 0 8px;
  justify-content: flex-end;
  width: 100%;
  padding-left: 48px;
}
.c-chat-modal__post .-message {
  flex: 0 1 auto;
  padding: 10px 16px;
  font-size: 14px;
  line-height: 1.6;
  background-color: #FFD900;
  border-radius: 12px 12px 0;
}
.c-chat-modal__post .-date {
  flex: 0 0 auto;
  align-self: flex-end;
  font-size: 10px;
  font-weight: 500;
}
.c-chat-modal__ftr {
  position: sticky;
  right: 0;
  bottom: 0;
  left: 0;
  /*height: 77px;*/
  height: 167px;
  padding: 0 10px 17px;
}
.c-chat-modal__ftr .footer-msg {
  margin-top: 10px;
  font-size: 11px;
  text-indent: -1em;
  padding-left: 1em;
}
.c-chat-modal__ftr .footer-msg .footer-link {
  /* 下線あり、文字色変更あり */
  color: #3E84CF;
  text-decoration: underline;
}
.c-chat-modal__ftrin {
  display: flex;
  gap: 8px;
  align-items: center;
  padding-inline: 30px 14px;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 30px;
  box-shadow: 0 0 20px #F6F4EC;
}
.c-chat-modal__input {
  flex: 1 1 auto;
  width: calc(100% - 44px);
  height: 58px;
  font-size: 14px;
}
.c-chat-modal__input::-webkit-input-placeholder {
  color: #888;
}
.c-chat-modal__input::placeholder {
  color: #888;
  opacity: 1;
}
.c-chat-modal__submit {
  display: flex;
  flex: 0 0 36px;
  transition-duration: 0.3s;
  transition-property: opacity;
}
@media (any-hover: hover) {
  .c-chat-modal__submit:hover {
    opacity: 0.6;
  }
}
@media (min-width: 768px) {
  .c-chat-modal {
    align-items: stretch;
    justify-content: flex-end;
  }
  .c-chat-modal__hdr {
    border-radius: 0;
  }
  .c-chat-modal__container {
    flex: 0 0 445px;
    width: 445px;
  }
}

.c-pager {
  display: flex;
  gap: 0 20px;
  align-items: center;
  justify-content: center;
}
.pc-only {
  display: block;
}
.sp-only {
  display: none;
}
@media (max-width: 767.98px) {
.c-pager {
  gap: 0 8px;
}
.pc-only {
  display: none;
}
.sp-only {
  display: block;
}
}
.c-pager__prev, .c-pager__next {
  display: flex;
  flex: 0 0 36px;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: 1px solid currentcolor;
  border-radius: 50%;
  transition-duration: 0.3s;
  transition-property: color, background-color;
}
@media (any-hover: hover) {
  .c-pager__prev:hover, .c-pager__next:hover {
    color: #fff;
    background-color: #3E84CF;
  }
}
.c-pager__prev {
  margin-right: auto;
}
.c-pager__next {
  margin-left: auto;
}
.c-pager__current {
  font-weight: bold;
}
.c-pager__item {
  transition-duration: 0.3s;
  transition-property: color;
}
@media (any-hover: hover) {
  .c-pager__item:hover {
    color: #3E84CF;
    text-decoration: underline;
  }
}

.c-posting__row + .c-posting__row {
  padding-top: 25px;
  margin-top: 25px;
  border-top: 1px solid #D9D9D9;
}
.c-posting__errors {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  margin-top: 10px;
}
.c-posting__errors p {
  min-width: 310px;
  padding: 5px 0.5em;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background-color: #F33838;
}
@media (min-width: 768px) {
  .c-posting__row {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 0 50px;
  }
}
@media (max-width: 767.98px) {
  .c-posting__th {
    padding-bottom: 10px;
  }
}

.c-tag-radio {
  display: flex;
  align-items: center;
  padding: 8px 13px;
  font-size: 12px;
  line-height: 1.2;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 100vmax;
}
.c-tag-radio input {
  display: none;
  visibility: none;
}
.c-tag-radio:has(input:checked) {
  gap: 0 4px;
  background-color: #FFD900;
  border-color: #FFD900;
}
.c-tag-radio:has(input:checked)::after {
  display: block;
  width: 10px;
  height: 10px;
  content: "";
  background: url("../images/icons/remove.svg") no-repeat center center/cover;
}

.c-radio {
  display: flex;
  align-items: center;
  padding: 8px 13px;
  font-size: 12px;
  line-height: 1.2;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 100vmax;
}
.c-radio input {
  display: none;
  visibility: none;
}
.c-radio:has(input:checked) {
  background-color: #FFD900;
  border-color: #FFD900;
}

.c-review {
  display: flex;
  align-items: center;
}
.c-review__average {
  padding-right: 4px;
  font-size: 12px;
}
.c-review__stars {
  position: relative;
  display: flex;
  flex: 0 0 68px;
  gap: 0 2px;
  width: 68px;
  height: 12px;
}
.c-review__stars span {
  --review: 1;
  position: relative;
  flex: 0 0 12px;
  width: 12px;
  height: 12px;
  line-height: 0;
}
.c-review__stars span::before {
  position: absolute;
  inset: 0;
  z-index: 10;
  content: "";
  background: url("../images/icons/star.svg") no-repeat center center/12px 12px;
  clip-path: inset(0 calc(100% - var(--review) * 100%) 0 0);
}
.c-review__count {
  font-size: 12px;
  opacity: 0.5;
}

.c-user-review {
  display: flex;
  align-items: center;
}
.c-user-review__average {
  padding-right: 8px;
  font-size: 20px;
  font-weight: bold;
}
.c-user-review__stars {
  display: flex;
  flex: 0 0 139px;
  justify-content: space-between;
  width: 139px;
  height: 26px;
}
.c-user-review__stars span {
  --review: 1;
  position: relative;
  flex: 0 0 25px;
  width: 25px;
  height: 25px;
  line-height: 0;
}
.c-user-review__stars span::before {
  position: absolute;
  inset: 0;
  z-index: 10;
  content: "";
  background: url("../images/icons/star.svg") no-repeat center center/25px 25px;
  clip-path: inset(0 calc(100% - var(--review) * 100%) 0 0);
}
.c-user-review__count {
  opacity: 0.5;
}
@media (min-width: 768px) {
  .c-user-review__count {
    margin-left: 8px;
  }
}
@media (max-width: 767.98px) {
  .c-user-review {
    flex-wrap: wrap;
  }
  .c-user-review__count {
    flex: 0 0 100%;
  }
}

.c-recommend-review {
  display: flex;
  align-items: center;
}
.c-recommend-review__average {
  padding-right: 3px;
  font-size: 10px;
}
.c-recommend-review__stars {
  position: relative;
  display: flex;
  flex: 0 0 auto;
  gap: 0 2px;
  height: 10px;
}
.c-recommend-review__stars span {
  --review: 1;
  position: relative;
  flex: 0 0 10px;
  width: 10px;
  height: 10px;
  line-height: 0;
}
.c-recommend-review__stars span::before {
  position: absolute;
  inset: 0;
  z-index: 10;
  content: "";
  background: url("../images/icons/star.svg") no-repeat center center/100% auto;
  clip-path: inset(0 calc(100% - var(--review) * 100%) 0 0);
}
.c-recommend-review__stars span img {
  width: 100%;
  max-width: none;
}
.c-recommend-review__count {
  font-size: 10px;
  opacity: 0.5;
}
@media (min-width: 768px) {
  .c-recommend-review__average {
    font-size: 14px;
  }
  .c-recommend-review__stars span {
    flex: 0 0 14px;
    width: 14px;
    height: 14px;
  }
  .c-recommend-review__count {
    font-size: 14px;
  }
}

.c-map-review {
  display: flex;
  align-items: center;
}
.c-map-review__average {
  padding-right: 3px;
  font-size: 12px;
}
.c-map-review__stars {
  position: relative;
  display: flex;
  flex: 0 0 auto;
  gap: 0 2px;
  height: 12px;
}
.c-map-review__stars span {
  --review: 1;
  position: relative;
  flex: 0 0 12px;
  width: 12px;
  height: 12px;
  line-height: 0;
}
.c-map-review__stars span::before {
  position: absolute;
  inset: 0;
  z-index: 10;
  content: "";
  background: url("../images/icons/star.svg") no-repeat center center/100% auto;
  clip-path: inset(0 calc(100% - var(--review) * 100%) 0 0);
}
.c-map-review__stars span img {
  width: 100%;
  max-width: none;
}
.c-map-review__count {
  font-size: 12px;
  opacity: 0.5;
}

.c-posting-review {
  display: flex;
  gap: 0 8px;
  align-items: center;
  width: fit-content;
}
.c-posting-review label {
  position: relative;
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  cursor: pointer;
}
.c-posting-review label input {
  position: absolute;
  inset: 0;
  z-index: 10;
  opacity: 0;
}
.c-posting-review label::before {
  position: absolute;
  inset: 0;
  z-index: 10;
  content: "";
  background: url("../images/icons/star.svg") no-repeat center center/100% auto;
  opacity: 0;
}
.c-posting-review label.is-active::before, .c-posting-review label.is-hover::before {
  opacity: 1;
}
.c-posting-review:has(label.is-hover) label.is-active::before {
  opacity: 0;
}
.c-posting-review:has(label.is-hover) label.is-active.is-hover::before {
  opacity: 1;
}
.c-plane-select {
  padding-right: 30px;
  font-weight: 500;
  text-align: right;
  background: url("../images/icons/chevron-down.svg") no-repeat right center/24px 24px;
}
@media (min-width: 768px) {
  .c-plane-select {
    font-size: 16px;
  }
}

.c-recommend-slider {
  position: relative;
}
.c-recommend-slider .swiper {
  padding-top: 25px;
  padding-bottom: 40px;
}
.c-recommend-slider .swiper-slide {
  width: 289px;
}
.c-recommend-slider__prev, .c-recommend-slider__next {
  position: absolute;
  top: calc(50% - 10px);
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #333333;
  border-radius: 50%;
  translate: 0 -50%;
  transition-duration: 0.3s;
  transition-property: border-color, background-color, color;
}
.c-recommend-slider__prev svg, .c-recommend-slider__next svg {
  width: 15px;
}
@media (any-hover: hover) {
  .c-recommend-slider__prev:hover, .c-recommend-slider__next:hover {
    color: #fff;
    background-color: #3E84CF;
    border-color: #3E84CF;
  }
}
.c-recommend-slider__prev {
  left: calc(50% - 168px);
}
.c-recommend-slider__next {
  right: calc(50% - 168px);
}
.c-recommend-slider__pagination {
  display: flex;
  gap: 0 14px;
  justify-content: center;
}
.c-recommend-slider__pagination .-bullet {
  top: 50%;
  flex: 0 0 6px;
  width: 6px;
  height: 6px;
  background-color: rgb(var(--color-black-rgb)/100%);
  border-radius: 50%;
  opacity: 0.4;
  transition-duration: 0.2s;
  transition-property: scale, opacity;
}
.c-recommend-slider__pagination .-bullet.is-active {
  opacity: 1;
  scale: 1.666;
}
@media (min-width: 768px) {
  .c-recommend-slider .swiper {
    padding-top: 40px;
  }
  .c-recommend-slider .swiper-slide {
    width: 397px;
  }
  .c-recommend-slider__prev, .c-recommend-slider__next {
    top: 50%;
    width: 40px;
    height: 40px;
  }
  .c-recommend-slider__prev svg, .c-recommend-slider__next svg {
    width: 20px;
  }
  .c-recommend-slider__prev {
    left: max(20px, 50% - 640px);
  }
  .c-recommend-slider__next {
    right: max(20px, 50% - 640px);
  }
  .c-map-slider {
    height: 100%;
  }
  .c-map-slider .swiper-slide {
    height: auto;
  }
}
@media (max-width: 767.98px) {
  .c-map-slider .swiper-slide {
    width: 350px;
  }
}

.c-submit {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 54px;
  font-size: 16px;
  font-weight: bold;
  background-color: #FFD900;
  border-radius: 100vmax;
  transition-duration: 0.3s;
  transition-property: background-color, color;
}
.c-submit:disabled {
  cursor: not-allowed;
  background-color: #D9D9D9;
}
@media (any-hover: hover) {
  .c-submit:not(:disabled):hover {
    color: #fff;
    background-color: #333333;
  }
}

.c-textarea {
  width: 100%;
  height: 174px;
  min-height: 3em;
  padding: 0.5em 0.75em;
  line-height: 1.5;
  resize: vertical;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 6px;
}
.c-textarea::-webkit-input-placeholder {
  color: #888888;
}
.c-textarea::placeholder {
  color: #888888;
  opacity: 1;
}
@media (min-width: 768px) {
  .c-textarea {
    font-size: 16px;
  }
}

.c-tab {
  font-size: 16px;
  border-bottom: 2px solid #D9D9D9;
  text-align: center;
  padding-bottom: 17px;
}
.c-tab.is-active {
  font-weight: bold;
  border-bottom: 2px solid currentColor;
  position: relative;
}
.c-tab.is-active::after {
  content: "";
  background-color: currentColor;
  width: 14px;
  height: 11px;
  position: absolute;
  clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
  bottom: -11px;
  left: 50%;
  translate: -50% 0;
}
@media (min-width: 768px) {
  .c-tab {
    font-size: 18px;
    padding-bottom: 16px;
  }
}

.c-hour-table {
  width: 100%;
  background-color: #fff;
  border-top: 1px solid rgb(var(--color-gray-700-rgb)/20%);
  border-bottom: 1px solid rgb(var(--color-gray-700-rgb)/20%);
}
.c-hour-table thead {
  background-color: #F6F4EC;
}
.c-hour-table tbody th {
  text-align: right;
}
.c-hour-table th, .c-hour-table td {
  padding-block: 7px;
}
.c-hour-table th {
  width: 20.28%;
  text-align: center;
}
.c-hour-table td {
  width: 9.96%;
  text-align: center;
}
@media (min-width: 768px) {
  .c-hour-table th, .c-hour-table td {
    padding-block: 5px;
  }
  .c-hour-table tbody th {
    padding-right: 3%;
  }
}
@media (max-width: 767.98px) {
  .c-hour-table {
    font-size: 12px;
  }
  .c-hour-table tbody th {
    font-size: 10px;
  }
}

.c-info-table {
  width: 100%;
}
.c-info-table th {
  font-weight: bold;
}
@media (min-width: 768px) {
  .c-info-table tr:first-child * {
    padding-block-start: 0;
  }
  .c-info-table tr:last-child * {
    padding-block-end: 0;
  }
  .c-info-table tr + tr {
    border-top: 1px solid #D9D9D9;
  }
  .c-info-table th, .c-info-table td {
    padding-block: 15px;
  }
  .c-info-table th {
    width: 155px;
    padding-right: 15px;
  }
}
@media (max-width: 767.98px) {
  .c-info-table {
    display: block;
  }
  .c-info-table th {
    padding-bottom: 4px;
  }
  .c-info-table tr + tr {
    padding-top: 16px;
    margin-top: 16px;
    border-top: 1px solid #D9D9D9;
  }
  .c-info-table tbody, .c-info-table tr, .c-info-table td, .c-info-table td {
    display: block;
  }
}

.c-tag {
  display: flex;
  gap: 0 4px;
  align-items: center;
  justify-content: center;
  line-height: 1;
  border-radius: 100vmax;
}
.c-tag > * {
  line-height: 1;
}
.c-tag > button {
  line-height: 0;
}

:where(.c-tag) {
  padding: 4px 12px;
}
@media (min-width: 768px) {
  :where(.c-tag) {
    padding: 4px 14px;
  }
}

a.c-tag, button.c-tag, .c-tag button {
  transition-duration: 0.3s;
  transition-property: opacity;
}
@media (any-hover: hover) {
  a.c-tag:hover, button.c-tag:hover, .c-tag button:hover {
    opacity: 0.6;
  }
}

.c-filter-tag {
  display: flex;
  gap: 0 4px;
  align-items: center;
  justify-content: center;
  line-height: 1;
  background-color: #FFD900;
  border-radius: 100vmax;
}
.c-filter-tag > * {
  line-height: 1;
}
.c-filter-tag::after {
  width: 10px;
  height: 10px;
  content: "";
  background: url("../images/icons/remove.svg") no-repeat center center/cover;
}

:where(.c-filter-tag) {
  padding: 7px 14px;
}

button.c-filter-tag {
  transition-duration: 0.3s;
  transition-property: opacity;
}
@media (any-hover: hover) {
  button.c-filter-tag:hover {
    opacity: 0.6;
  }
}

.c-step-tag {
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #333333;
  color: #fff;
  font-size: 12px;
  line-height: 1.2;
  text-align: center;
  border-radius: 50%;
}

.l-columnArticle-container {
  width: min(1200px, var(--view-width) - 20px * 2);
  margin-inline: auto;
  margin-top: 24px;
}
@media (min-width: 768px) {
  .l-columnArticle-container {
    margin-top: 42px;
  }
}
@media (min-width: 1024px) {
  .l-columnArticle-container {
    position: relative;
    display: grid;
    grid-template: ". hdr" auto "main aside" 1fr/1fr 277px;
    gap: 12px 22px;
  }
  .l-columnArticle-container__aside {
    grid-area: aside;
  }
  .l-columnArticle-container__main {
    grid-area: main;
  }
}
@media (max-width: 1023.98px) {
  .l-columnArticle-container__aside {
    display: none;
  }
}
.c-toast {
  position: fixed;
  inset: 30px 0 auto;
  z-index: 999;
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: center;
  justify-content: center;
}
.c-toast__item {
  display: flex;
  visibility: hidden;
  gap: 0 8px;
  align-items: center;
  justify-content: center;
  padding: 8px 16px;
  font-weight: bold;
  border-radius: 100vmax;
  box-shadow: 0 0 5px rgb(var(--color-black-rgb)/30%);
  opacity: 0;
  translate: 0 3px;
}
.c-toast__item button {
  flex: 0 0 1em;
  width: 1em;
  line-height: 0;
  color: currentcolor;
}

.c-wysiwyg {
  --border: #e6e6e6;
  --color-primary: var(--color-primary);
  --bglight: var(--color-bg5);
  --black: var(--color-text-body);
}
.c-wysiwyg a {
  text-decoration: none;
}
.c-wysiwyg a:hover {
  color: var(--color-primary);
  text-decoration: underline;
}
.c-wysiwyg abbr {
  cursor: help;
  border-bottom: 1px dotted;
}
.c-wysiwyg cite {
  font-style: italic;
}
.c-wysiwyg hr {
  display: block;
  height: 1px;
  margin-top: 1.4em;
  margin-bottom: 1.4em;
  background: var(--border);
  border: none;
}
.c-wysiwyg small {
  font-size: 0.8em;
}
.c-wysiwyg em {
  font-style: italic;
}
.c-wysiwyg del,
.c-wysiwyg strike {
  text-decoration: line-through;
}
.c-wysiwyg strong,
.c-wysiwyg b {
  font-weight: 700;
}
.c-wysiwyg sub,
.c-wysiwyg sup {
  font-size: 0.8em;
}
.c-wysiwyg sub {
  vertical-align: sub;
}
.c-wysiwyg sup {
  vertical-align: super;
}
.c-wysiwyg p,
.c-wysiwyg dl,
.c-wysiwyg ol,
.c-wysiwyg ul,
.c-wysiwyg blockquote,
.c-wysiwyg pre,
.c-wysiwyg table {
  margin-bottom: 1.3em;
}
.c-wysiwyg h1,
.c-wysiwyg h2,
.c-wysiwyg h3,
.c-wysiwyg h4,
.c-wysiwyg h5,
.c-wysiwyg h6 {
  font-weight: 700;
  line-height: 1.2;
}
.c-wysiwyg h1 {
  margin-top: 0.58333em;
  margin-bottom: 0.58333em;
  font-size: 2.4em;
  line-height: 1;
}
.c-wysiwyg h2 {
  margin-top: 1.75em;
  margin-bottom: 0.875em;
  font-size: 1.6em;
  line-height: 1.1;
}
.c-wysiwyg h3 {
  margin-top: 1.07692em;
  margin-bottom: 1.07692em;
  font-size: 1.3em;
}
.c-wysiwyg h4 {
  margin-top: 1.16667em;
  margin-bottom: 1.16667em;
  font-size: 1.2em;
}
.c-wysiwyg h5 {
  margin-top: 1.27273em;
  margin-bottom: 1.27273em;
  font-size: 1.1em;
}
.c-wysiwyg h6 {
  margin-top: 1.4em;
  margin-bottom: 1.4em;
  font-size: 1em;
}
.c-wysiwyg dd {
  margin-left: 1.4em;
}
.c-wysiwyg ol,
.c-wysiwyg ul {
  margin-left: 1.4em;
  list-style-position: outside;
}
.c-wysiwyg ol {
  list-style-type: decimal;
}
.c-wysiwyg ol ol {
  list-style-type: lower-alpha;
}
.c-wysiwyg ol ol ol {
  list-style-type: lower-roman;
}
.c-wysiwyg ol ol ol ol {
  list-style-type: lower-greek;
}
.c-wysiwyg ol ol ol ol ol {
  list-style-type: decimal;
}
.c-wysiwyg ol ol ol ol ol ol {
  list-style-type: lower-alpha;
}
.c-wysiwyg ul {
  list-style-type: disc;
}
.c-wysiwyg ul ul {
  list-style-type: circle;
}
.c-wysiwyg ul ul ul {
  list-style-type: square;
}
.c-wysiwyg ul ul ul ul {
  list-style-type: circle;
}
.c-wysiwyg ul ul ul ul ul {
  list-style-type: disc;
}
.c-wysiwyg ul ul ul ul ul ul {
  list-style-type: circle;
}
.c-wysiwyg blockquote {
  padding: 0.6em 1.2em;
  border-left: 4px solid var(--border);
}
.c-wysiwyg blockquote p {
  margin-bottom: 0;
}
.c-wysiwyg code,
.c-wysiwyg kbd,
.c-wysiwyg samp,
.c-wysiwyg pre {
  font-size: 0.9em;
  color: var(--black);
  background-color: var(--bglight);
  -webkit-font-smoothing: auto;
  -moz-osx-font-smoothing: auto;
}
.c-wysiwyg code,
.c-wysiwyg kbd,
.c-wysiwyg samp {
  padding: 0.1em 0.4em 0.2em;
  line-height: 1.77778;
  vertical-align: baseline;
  border-radius: 3px;
}
.c-wysiwyg pre {
  padding: 1em 1.2em;
  overflow: auto;
}
.c-wysiwyg pre code {
  font-size: 1em;
  line-height: 1em;
  background: none;
}
.c-wysiwyg figure {
  margin-bottom: 2.8em;
  text-align: center;
}
.c-wysiwyg figure:first-child {
  margin-top: 0;
}
.c-wysiwyg figure:last-child {
  margin-bottom: 0;
}
.c-wysiwyg figcaption {
  margin-top: 0.875em;
  font-size: 0.8em;
}
.c-wysiwyg table {
  width: 100%;
}
.c-wysiwyg table pre {
  white-space: pre-wrap;
}
.c-wysiwyg th,
.c-wysiwyg td {
  padding: 0.7em;
  font-size: 1em;
  line-height: 1.4;
  border: 1px solid var(--border);
}
.c-wysiwyg thead tr,
.c-wysiwyg tfoot tr {
  background-color: var(--bglight);
}
.c-wysiwyg thead th,
.c-wysiwyg thead td {
  padding: 0.77778em;
  font-size: 0.9em;
}
.c-wysiwyg thead th code,
.c-wysiwyg thead td code {
  background-color: #fff;
}
.c-wysiwyg tfoot th,
.c-wysiwyg tfoot td {
  padding: 0.77778em;
  font-size: 0.9em;
}
.c-wysiwyg tfoot th code,
.c-wysiwyg tfoot td code {
  background-color: #fff;
}
.c-wysiwyg tbody tr {
  background-color: #fff;
}
.c-wysiwyg h1:first-child,
.c-wysiwyg h2:first-child,
.c-wysiwyg h3:first-child,
.c-wysiwyg h4:first-child,
.c-wysiwyg h5:first-child,
.c-wysiwyg h6:first-child {
  margin-top: 0;
}
.c-wysiwyg p:last-child,
.c-wysiwyg dl:last-child,
.c-wysiwyg ol:last-child,
.c-wysiwyg ul:last-child,
.c-wysiwyg blockquote:last-child,
.c-wysiwyg pre:last-child,
.c-wysiwyg table:last-child {
  margin-bottom: 0;
}
.c-wysiwyg p:empty {
  display: none;
}
.c-comment {margin-top: 20px; font-size: 12px}
.c-comment li {}

.p-home-genres {
  display: grid;
  grid-template-columns: repeat(12, 90px);
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.p-home-genres::-webkit-scrollbar {
  display: none;
}
@media (min-width: 768px) {
  .p-home-genres {
    grid-template-columns: repeat(12, 100px);
  }
}
@media (max-width: 767.98px) {
  .p-home-genres {
    padding-left: var(--gutter);
    margin-inline: calc(-1 * var(--gutter));
  }
}

.p-home-genre {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  transition-duration: 0.3s;
  transition-property: color;
}
.p-home-genre + .p-home-genre {
  border-left: 1px solid #D9D9D9;
}
.p-home-genre p {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
}
@media (any-hover: hover) {
  .p-home-genre:hover {
    color: #3E84CF;
  }
}
@media (min-width: 768px) {
  .p-home-genre p {
    margin-top: 6px;
  }
}

.p-home-columns {
  display: flex;
  gap: 0 15px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.p-home-columns::-webkit-scrollbar {
  display: none;
}
.p-home-columns > * {
  flex: 1 1 auto;
  min-width: 221px;
  max-width: 276px;
}
@media (min-width: 768px) {
  .p-home-columns {
    gap: 0 30px;
  }
}

.first-sec01 {
  position: relative;
  padding-top: 20px;
}
.first-sec01__inner {
  position: relative;
  z-index: 10;
}
@media (min-width: 768px) {
  .first-sec01 {
    padding-top: 60px;
  }
  .first-sec01::before {
    content: "";
    position: absolute;
    z-index: 1;
    border-radius: 100%;
    width: 2332px;
    height: 1410px;
    background-color: #EDE9DA;
    left: 50%;
    top: 127px;
    translate: -50% 0;
  }
  .first-sec01::after {
    content: "";
    position: absolute;
    z-index: 0;
    height: 505px;
    width: 100%;
    background-color: #fff;
    left: 0;
    top: 1032px;
  }
  .first-sec01__bg {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .first-sec01::before {
    content: "";
    width: 800px;
    height: 800px;
    border-radius: 50%;
    background-color: #EDE9DA;
    position: absolute;
    top: 100px;
    left: 50%;
    translate: -50% 0;
    z-index: 0;
  }
  .first-sec01::after {
    content: "";
    width: 1200px;
    height: 1200px;
    border-radius: 50%;
    background-color: #EDE9DA;
    position: absolute;
    bottom: -150px;
    left: 50%;
    translate: -50% 0;
    z-index: 0;
  }
  .first-sec01__bg {
    background-color: #EDE9DA;
    position: absolute;
    z-index: 0;
    inset: 500px 0 250px;
  }
}
@media (max-width: 559.98px) {
  .first-sec01::before, .first-sec01::after {
    width: 585px;
    height: 585px;
  }
  .first-sec01__bg {
    inset: 392px 0 142px;
  }
}

.first-about {
  padding-inline: 20px;
}
.first-about__mbimage {
  margin-top: 34px;
  margin-inline: calc(-1 * 20px);
}
@media (min-width: 768px) {
  .first-about {
    position: relative;
    padding-bottom: 37px;
  }
  .first-about__mbimage {
    display: none;
  }
  .first-about__img01 {
    position: absolute;
    width: 420px;
    top: -106px;
    right: calc(50% + 301px);
  }
  .first-about__img01 img {
    border-radius: 5px;
  }
  .first-about__img02 {
    position: absolute;
    width: 400px;
    bottom: 0;
    left: calc(50% + 319px);
  }
  .first-about__img02 img {
    border-radius: 5px;
  }
}
@media (max-width: 767.98px) {
  .first-about__img01, .first-about__img02 {
    display: none;
  }
}

.first-attraction {
  padding-top: 51px;
}
@media (min-width: 768px) {
  .first-attraction {
    padding-top: 75px;
  }
  .first-box01 {
    display: grid;
    grid-template-columns: 100px 1fr;
    gap: 0 12px;
  }
}
@media (min-width: 900px) {
  .first-box01 {
    grid-template-columns: 170px 1fr;
    gap: 0 24px;
  }
}
@media (max-width: 767.98px) {
  .first-box01__img {
    text-align: center;
    padding-bottom: 18px;
  }
  .first-box01__content {
    padding-inline: 40px;
  }
}

.first-sec02 {
  background-color: #fff;
  padding-top: 235px;
  padding-bottom: 85px;
}
@media (min-width: 768px) {
  .first-sec02 {
    padding-top: 454px;
    padding-bottom: 112px;
  }
}
[class*="hover:"] {
  transition-duration: 0.3s;
  transition-property: opacity;
}

.visible{
    visibility: visible;
}

.relative{
    position: relative;
}

.z-0{
    z-index: 0;
}

.mx-auto{
    margin-left: auto;
    margin-right: auto;
}

.mb-10{
    margin-bottom: 10px;
}

.mb-12{
    margin-bottom: 12px;
}

.mb-13{
    margin-bottom: 13px;
}

.mb-14{
    margin-bottom: 14px;
}

.mb-16{
    margin-bottom: 16px;
}

.mb-18{
    margin-bottom: 18px;
}

.mb-19{
    margin-bottom: 19px;
}

.mb-20{
    margin-bottom: 20px;
}

.mb-27{
    margin-bottom: 27px;
}

.mb-30{
    margin-bottom: 30px;
}

.mb-6{
    margin-bottom: 6px;
}

.mb-8{
    margin-bottom: 8px;
}

.ml-auto{
    margin-left: auto;
}

.mt-10{
    margin-top: 10px;
}

.mt-12{
    margin-top: 12px;
}

.mt-13{
    margin-top: 13px;
}

.mt-14{
    margin-top: 14px;
}

.mt-15{
    margin-top: 15px;
}

.mt-16{
    margin-top: 16px;
}

.mt-17{
    margin-top: 17px;
}

.mt-20{
    margin-top: 20px;
}

.mt-22{
    margin-top: 22px;
}

.mt-24{
    margin-top: 24px;
}

.mt-25{
    margin-top: 25px;
}

.mt-32{
    margin-top: 32px;
}

.mt-40{
    margin-top: 40px;
}

.mt-5{
    margin-top: 5px;
}

.mt-55{
    margin-top: 55px;
}

.mt-56{
    margin-top: 56px;
}

.mt-6{
    margin-top: 6px;
}

.mt-8{
    margin-top: 8px;
}

.flex{
    display: flex;
}

.table{
    display: table;
}

.grid{
    display: grid;
}

.hidden{
    display: none;
}

.h-0{
    height: 0px;
}

.h-16{
    height: 16px;
}

.h-26{
    height: 26px;
}

.h-30{
    height: 30px;
}

.h-40{
    height: 40px;
}

.h-47{
    height: 47px;
}

.h-54{
    height: 54px;
}

.h-full{
    height: 100%;
}

.w-100{
    width: 100px;
}

.w-110{
    width: 110px;
}

.w-121{
    width: 121px;
}

.w-15{
    width: 15px;
}

.w-16{
    width: 16px;
}

.w-18{
    width: 18px;
}

.w-20{
    width: 20px;
}

.w-23{
    width: 23px;
}

.w-250{
    width: 250px;
}

.w-27{
    width: 27px;
}

.w-78{
    width: 78px;
}

.w-fit{
    width: fit-content;
}

.w-full{
    width: 100%;
}

.max-w-310{
    max-width: 310px;
}

.max-w-347{
    max-width: 347px;
}

.max-w-400{
    max-width: 400px;
}

.max-w-532{
    max-width: 532px;
}
.max-w-593{
    max-width: 593px;
}

.max-w-880{
    max-width: 880px;
}

.max-w-890{
    max-width: 890px;
}

.flex-none{
    flex: none;
}

.translate-y-10{
    --tw-translate-y: 10px;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.grid-cols-1{
    grid-template-columns: repeat(1, minmax(0, 1fr));
}

.grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.flex-wrap{
    flex-wrap: wrap;
}

.items-center{
    align-items: center;
}

.items-baseline{
    align-items: baseline;
}

.justify-center{
    justify-content: center;
}

.justify-between{
    justify-content: space-between;
}

.gap-10{
    gap: 10px;
}

.gap-12{
    gap: 12px;
}

.gap-6{
    gap: 6px;
}

.gap-x-2{
    column-gap: 2px;
}

.gap-x-20{
    column-gap: 20px;
}

.gap-x-4{
    column-gap: 4px;
}

.gap-x-6{
    column-gap: 6px;
}

.gap-x-8{
    column-gap: 8px;
}

.gap-x-9{
    column-gap: 9px;
}

.gap-y-10{
    row-gap: 10px;
}

.gap-y-11{
    row-gap: 11px;
}

.gap-y-12{
    row-gap: 12px;
}

.gap-y-16{
    row-gap: 16px;
}

.gap-y-24{
    row-gap: 24px;
}

.gap-y-25{
    row-gap: 25px;
}

.gap-y-4{
    row-gap: 4px;
}

.gap-y-40{
    row-gap: 40px;
}

.gap-y-6{
    row-gap: 6px;
}

.overflow-hidden{
    overflow: hidden;
}

.whitespace-nowrap{
    white-space: nowrap;
}

.rounded{
    border-radius: 8px;
}

.rounded-b-lg{
    border-bottom-right-radius: 12px;
    border-bottom-left-radius: 12px;
}

.rounded-t-lg{
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
}

.border{
    border-width: 1px;
}

.border-black{
    --tw-border-opacity: 1;
    border-color: rgb(51 51 51 / var(--tw-border-opacity, 1));
}

.border-gray-300{
    --tw-border-opacity: 1;
    border-color: rgb(217 217 217 / var(--tw-border-opacity, 1));
}

.bg-beige-100{
    --tw-bg-opacity: 1;
    background-color: rgb(246 244 236 / var(--tw-bg-opacity, 1));
}

.bg-black{
    --tw-bg-opacity: 1;
    background-color: rgb(51 51 51 / var(--tw-bg-opacity, 1));
}

.bg-primary{
    --tw-bg-opacity: 1;
    background-color: rgb(255 217 0 / var(--tw-bg-opacity, 1));
}

.bg-white{
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.p-16{
    padding: 16px;
}

.p-20{
    padding: 20px;
}

.px-10{
    padding-left: 10px;
    padding-right: 10px;
}

.px-13{
    padding-left: 13px;
    padding-right: 13px;
}

.px-15{
    padding-left: 15px;
    padding-right: 15px;
}

.px-18{
    padding-left: 18px;
    padding-right: 18px;
}

.px-2{
    padding-left: 2px;
    padding-right: 2px;
}

.px-30{
    padding-left: 30px;
    padding-right: 30px;
}

.px-gutter{
    padding-left: 20px;
    padding-right: 20px;
}

.py-0{
    padding-top: 0px;
    padding-bottom: 0px;
}

.py-10{
    padding-top: 10px;
    padding-bottom: 10px;
}

.py-16{
    padding-top: 16px;
    padding-bottom: 16px;
}

.py-24{
    padding-top: 24px;
    padding-bottom: 24px;
}

.py-4{
    padding-top: 4px;
    padding-bottom: 4px;
}

.py-5{
    padding-top: 5px;
    padding-bottom: 5px;
}

.py-6{
    padding-top: 6px;
    padding-bottom: 6px;
}

.py-7{
    padding-top: 7px;
    padding-bottom: 7px;
}

.pb-11{
    padding-bottom: 11px;
}

.pb-25{
    padding-bottom: 25px;
}

.pb-40{
    padding-bottom: 40px;
}

.pl-18{
    padding-left: 18px;
}

.pl-8{
    padding-left: 8px;
}

.pr-12{
    padding-right: 12px;
}

.pr-6{
    padding-right: 6px;
}

.pt-10{
    padding-top: 10px;
}

.pt-16{
    padding-top: 16px;
}

.pt-25{
    padding-top: 25px;
}

.pt-40{
    padding-top: 40px;
}

.pt-52{
    padding-top: 52px;
}

.pt-55{
    padding-top: 55px;
}

.pt-56{
    padding-top: 56px;
}

.pt-76{
    padding-top: 76px;
}

.text-center{
    text-align: center;
}

.text-12{
    font-size: 12px;
}

.text-14{
    font-size: 14px;
}

.text-16{
    font-size: 16px;
}

.text-18{
    font-size: 18px;
}

.text-22{
    font-size: 22px;
}

.text-caption{
    font-size: 12px;
    line-height: 1.4;
}

.font-bold{
    font-weight: 700;
}

.font-medium{
    font-weight: 500;
}

.font-normal{
    font-weight: 400;
}

.leading-0{
    line-height: 0;
}

.leading-none{
    line-height: 1;
}

.leading-normal{
    line-height: 1.5;
}

.leading-tight{
    line-height: 1.2;
}

.text-black{
    --tw-text-opacity: 1;
    color: rgb(51 51 51 / var(--tw-text-opacity, 1));
}

.text-caution{
    --tw-text-opacity: 1;
    color: rgb(243 56 56 / var(--tw-text-opacity, 1));
}

.text-white{
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.text-white\/0{
    color: rgb(255 255 255 / 0);
}

.text-white\/10{
    color: rgb(255 255 255 / 0.1);
}

.text-white\/100{
    color: rgb(255 255 255 / 1);
}

.text-white\/15{
    color: rgb(255 255 255 / 0.15);
}

.text-white\/20{
    color: rgb(255 255 255 / 0.2);
}

.text-white\/25{
    color: rgb(255 255 255 / 0.25);
}

.text-white\/30{
    color: rgb(255 255 255 / 0.3);
}

.text-white\/35{
    color: rgb(255 255 255 / 0.35);
}

.text-white\/40{
    color: rgb(255 255 255 / 0.4);
}

.text-white\/45{
    color: rgb(255 255 255 / 0.45);
}

.text-white\/5{
    color: rgb(255 255 255 / 0.05);
}

.text-white\/50{
    color: rgb(255 255 255 / 0.5);
}

.text-white\/55{
    color: rgb(255 255 255 / 0.55);
}

.text-white\/60{
    color: rgb(255 255 255 / 0.6);
}

.text-white\/65{
    color: rgb(255 255 255 / 0.65);
}

.text-white\/70{
    color: rgb(255 255 255 / 0.7);
}

.text-white\/75{
    color: rgb(255 255 255 / 0.75);
}

.text-white\/80{
    color: rgb(255 255 255 / 0.8);
}

.text-white\/85{
    color: rgb(255 255 255 / 0.85);
}

.text-white\/90{
    color: rgb(255 255 255 / 0.9);
}

.text-white\/95{
    color: rgb(255 255 255 / 0.95);
}

.bg-blend-normal{
    background-blend-mode: normal;
}

.bg-blend-multiply{
    background-blend-mode: multiply;
}

.bg-blend-screen{
    background-blend-mode: screen;
}

.bg-blend-overlay{
    background-blend-mode: overlay;
}

.bg-blend-darken{
    background-blend-mode: darken;
}

.bg-blend-lighten{
    background-blend-mode: lighten;
}

.bg-blend-color-dodge{
    background-blend-mode: color-dodge;
}

.bg-blend-color-burn{
    background-blend-mode: color-burn;
}

.bg-blend-hard-light{
    background-blend-mode: hard-light;
}

.bg-blend-soft-light{
    background-blend-mode: soft-light;
}

.bg-blend-difference{
    background-blend-mode: difference;
}

.bg-blend-exclusion{
    background-blend-mode: exclusion;
}

.bg-blend-hue{
    background-blend-mode: hue;
}

.bg-blend-saturation{
    background-blend-mode: saturation;
}

.bg-blend-color{
    background-blend-mode: color;
}

.bg-blend-luminosity{
    background-blend-mode: luminosity;
}

.hover\:opacity-60:hover{
    opacity: 0.6;
}

@media (min-width: 560px){
    .sm\:hidden{
        display: none;
    }
    .sm\:grid-cols-2{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .sm\:grid-cols-3{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 768px){
    .md\:my-40{
        margin-top: 40px;
        margin-bottom: 40px;
    }
    .md\:mb-14{
        margin-bottom: 14px;
    }
    .md\:mb-30{
        margin-bottom: 30px;
    }
    .md\:mb-32{
        margin-bottom: 32px;
    }
    .md\:mb-40{
        margin-bottom: 40px;
    }
    .md\:mt-10{
        margin-top: 10px;
    }
    .md\:mt-15{
        margin-top: 15px;
    }
    .md\:mt-20{
        margin-top: 20px;
    }
    .md\:mt-33{
        margin-top: 33px;
    }
    .md\:mt-37{
        margin-top: 37px;
    }
    .md\:mt-48{
        margin-top: 48px;
    }
    .md\:mt-54{
        margin-top: 54px;
    }
    .md\:mt-7{
        margin-top: 7px;
    }
    .md\:mt-73{
        margin-top: 73px;
    }
    .md\:flex{
        display: flex;
    }
    .md\:hidden{
        display: none;
    }
    .md\:h-76{
        height: 76px;
    }
    .md\:w-147{
        width: 147px;
    }
    .md\:w-28{
        width: 28px;
    }
    .md\:w-31{
        width: 31px;
    }
    .md\:w-441{
        width: 441px;
    }
    .md\:max-w-300{
        max-width: 300px;
    }
    .md\:flex-none{
        flex: none;
    }
    .md\:grid-cols-2{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .md\:grid-cols-3{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .md\:grid-cols-4{
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .md\:items-start{
        align-items: flex-start;
    }
    .md\:justify-between{
        justify-content: space-between;
    }
    .md\:gap-9{
        gap: 9px;
    }
    .md\:gap-x-16{
        column-gap: 16px;
    }
    .md\:gap-x-18{
        column-gap: 18px;
    }
    .md\:gap-x-20{
        column-gap: 20px;
    }
    .md\:gap-x-24{
        column-gap: 24px;
    }
    .md\:gap-x-30{
        column-gap: 30px;
    }
    .md\:gap-x-4{
        column-gap: 4px;
    }
    .md\:gap-x-40{
        column-gap: 40px;
    }
    .md\:gap-y-32{
        row-gap: 32px;
    }
    .md\:gap-y-40{
        row-gap: 40px;
    }
    .md\:self-center{
        align-self: center;
    }
    .md\:rounded-2xl{
        border-radius: 24px;
    }
    .md\:px-24{
        padding-left: 24px;
        padding-right: 24px;
    }
    .md\:px-28{
        padding-left: 28px;
        padding-right: 28px;
    }
    .md\:px-50{
        padding-left: 50px;
        padding-right: 50px;
    }
    .md\:py-20{
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .md\:pb-40{
        padding-bottom: 40px;
    }
    .md\:pb-45{
        padding-bottom: 45px;
    }
    .md\:pb-75{
        padding-bottom: 75px;
    }
    .md\:pl-6{
        padding-left: 6px;
    }
    .md\:pt-21{
        padding-top: 21px;
    }
    .md\:pt-34{
        padding-top: 34px;
    }
    .md\:pt-41{
        padding-top: 41px;
    }
    .md\:pt-58{
        padding-top: 58px;
    }
    .md\:pt-64{
        padding-top: 64px;
    }
    .md\:pt-88{
        padding-top: 88px;
    }
    .md\:text-right{
        text-align: right;
    }
    .md\:text-14{
        font-size: 14px;
    }
    .md\:text-16{
        font-size: 16px;
    }
    .md\:text-22{
        font-size: 22px;
    }
    .md\:text-24{
        font-size: 24px;
    }
    .md\:text-26{
        font-size: 26px;
    }
    .md\:text-30{
        font-size: 30px;
    }
    .md\:text-34{
        font-size: 34px;
    }
}

@media (max-width: 767.98px){
    .\@md\:-mx-30{
        margin-left: -30px;
        margin-right: -30px;
    }
    .\@md\:mx-auto{
        margin-left: auto;
        margin-right: auto;
    }
    .\@md\:hidden{
        display: none;
    }
    .\@md\:max-w-310{
        max-width: 310px;
    }
    .\@md\:justify-center{
        justify-content: center;
    }
    .\@md\:bg-primary{
        --tw-bg-opacity: 1;
        background-color: rgb(255 217 0 / var(--tw-bg-opacity, 1));
    }
    .\@md\:px-gutter{
        padding-left: 20px;
        padding-right: 20px;
    }
    .\@md\:py-24{
        padding-top: 24px;
        padding-bottom: 24px;
    }
    .\@md\:pb-12{
        padding-bottom: 12px;
    }
    .\@md\:pb-34{
        padding-bottom: 34px;
    }
    .\@md\:pl-30{
        padding-left: 30px;
    }
    .\@md\:pt-32{
        padding-top: 32px;
    }
    .\@md\:pt-40{
        padding-top: 40px;
    }
    .\@md\:text-center{
        text-align: center;
    }
    .\@md\:text-24{
        font-size: 24px;
    }
    .\@md\:font-bold{
        font-weight: 700;
    }
}

@media (min-width: 1024px){
    .lg\:hidden{
        display: none;
    }
    .lg\:grid-cols-3{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .lg\:grid-cols-4{
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .lg\:grid-cols-6{
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }
}

@media (max-width: 1149.98px){
    .\@lg\:hidden{
        display: none;
    }
}


.ajax-modal__bg, .ajax-modal {
  position: absolute;
}
.ajax-modal__bg {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 90000;
  top: 0;
  left: 0;
  display: none;
  cursor: pointer;
  background: #000;
  opacity: 0.3;
}
.ajax-modal {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  /*
  z-index: 2000;
  */
  z-index: 90001;
  max-width: 100px;
}
.ajax-modal-chat {
  /* 吹き出しの中央に配置 */
  position: relative;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50px;
}

.category-tags-logo {
  display: flex;
  justify-content: center;
  align-items: start;
  gap: 20px;
}
.category-tags-logo div {
  width: 60px;
  text-align: center;
  font-size: 11px;
}
.category-tags-logo img {
  height: 48px;
}

.response-box {
  background: #e8e8e8;
  padding: 1rem;
  border-radius: 5px;
}
.response-caption {
  color: #808080;
  margin-bottom: 0.5rem;
}



/* サジェスト */
.area_form_div {
  /*
  position: relative;
  */
}
.popup_area_suggest {
  position: absolute;
  left: 0px;
  top: 73px;
  width: 100%;
  height: 200px;
  overflow-y: auto;
  overflow-x: hidden;
  /*
  background-color: #ffffff;
  border: solid 1px #c0c0c0;
  */
  display: none;
  z-index: 10;
}
.popup_area_suggest div {
  text-align: left;
}
.popup_area_suggest li {
  padding: 4px 8px;
  cursor: pointer;
}

.word_form_div {
  /*
  position: relative;
  */
}
.popup_word_suggest {
  position: absolute;
  left: 0px;
  top: 73px;
  width: 100%;
  height: 200px;
  overflow-y: auto;
  overflow-x: hidden;
  /*
  background-color: #ffffff;
  border: solid 1px #c0c0c0;
  */
  display: none;
  z-index: 10;
}
.popup_word_suggest div {
  text-align: left;
}

.suggest1 {
  font-size: 15px;
}
.suggest2 {
  font-size: 14px;
  color: #7e8e96;
  float: right
}
/* オートコンプリートの装飾 */
ul.ui-autocomplete {
  position: absolute;
  list-style: none;
  margin: 0;
  border: none;

  /*
  border-radius: 8px;
  */
  background-color: #ffffff;
  border: solid 1px #c0c0c0;

  cursor: default;
  background-color: #fff;
  width: 100%;
}
ul.ui-autocomplete {
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}
ul.ui-autocomplete li {
  padding: 4px 10px;
  border-bottom: 1px solid var(--border_c_light);
  display: flex;
  justify-content: space-between;
}
ul.ui-autocomplete li:first-child {
  border-radius: 8px 8px 0 0;
}
ul.ui-autocomplete li:last-child {
  border-bottom: none;
  border-radius: 0 0 8px 8px;
}
ul.ui-autocomplete li:hover {
  background: var(--bg_gray_light);
}


.swiper {
  /* wrapperのサイズを調整 */
  width: 100%;
  /*
  height: 340px;
  max-height: 340px;
  */
  height: max-content;
}
.swiper-slide {
  /* スライドのサイズを調整、中身のテキスト配置調整、背景色 */
  color: var(--bg-color);
  width: calc((100%) / 3) !important;
  /*
  height: 330px !important;
  */
  height: unset !important;
  text-align: center;
  box-sizing: border-box;
  padding: 10px;
}
.swiper-max {
  /* wrapperのサイズを調整 */
  width: 100%;
  /*
  height: 340px;
  max-height: 340px;
  */
  height: max-content;
}
.swiper-slide-other {
  /* スライドのサイズを調整、中身のテキスト配置調整、背景色 */
  color: var(--bg-color);
  width: calc((100%) / 3) !important;
  /*
  height: 330px !important;
  */
  height: unset !important;
  text-align: center;
  box-sizing: border-box;
  padding: 10px;

  cursor: pointer;
}
.swiper-slide-max {
  /* スライドのサイズを調整、中身のテキスト配置調整、背景色 */
  color: var(--bg-color);
  /*
  width: calc((100%) / 3) !important;
  */
  width: 100% !important;
  /*
  height: 330px !important;
  */
  height: unset !important;
  text-align: left;
  box-sizing: border-box;
  padding: 0px;

  cursor: pointer;
}
.swiper-slide-ranking {
  /* スライドのサイズを調整、中身のテキスト配置調整、背景色 */
  color: var(--bg-color);
  width: calc((100%) / 3) !important;
  /*
  height: 330px !important;
  */
  height: unset !important;
  text-align: center;
  box-sizing: border-box;
  padding: 10px;
}
.other__item {
  width: 100%;
  /*
  height: 330px;
  */
  height: 100%;
  padding: 1.5rem 1.5rem 2.5rem;
  background: #fff;
  border: 1px solid var(--main_c);
  border-top: 3px solid var(--main_c)
}
.ranking__item {
  width: 100%;
  /*
  height: 330px;
  */
  height: 100%;
  padding: 1.5rem 1.5rem 2.5rem;
  background: #fff;
  border: 1px solid var(--main_c);
  border-top: 3px solid var(--main_c)
}
@media only screen and (max-width: 767px) {
  .detail-intro .swiper-slide {
    width: 100% !important;
  }
  .swiper-slide-other {
    width: 100% !important;
  }
  .swiper-slide-ranking {
    width: 100% !important;
  }
  .other__item {
    width: 100%;
    /*
    height: 330px;
    */
    height: 100%;
    padding: 1rem 1rem 1.5rem;
  }
  .ranking__item {
    width: 100%;
    /*
    height: 330px;
    */
    height: 100%;
    padding: 1rem 1rem 1.5rem;
  }
}

/* スーパープラン */
.superplan a, .superplan_div {
  background-color: #F6F2E9;
}

.c-head__ttl {
  padding-left: 1.5rem;
  /*
  border-left: 5px solid var(--main_c);
  */
  font-size: 26px;
  font-weight: 700;
  line-height: 1.35;
}


/*	PR 検索結果 -- 一覧
---------------------------------*/
.searchPRArea__inner {
  margin-top: 1rem;
  padding: 2rem;
  /*
  background-color: #fff
  */
}
.searchPRArea__head {
  display: flex;
  align-items: center;
  gap: 5px;
  font-weight: 600;
}
.searchPRArea__head span {
  padding: .1rem .5rem;
  background-color: #E50000;
  color: #fff;
  font-size: 12px;
  display: inline-block;
}
.searchPRArea-cts {
  width: 100%;
  height: 80px;
  margin-top: 1.5rem;
  background-color: #FFFAE0;
  display: flex !important;
  align-items: center;
}
.searchPRArea-cts__img {
  width: 104px;
  height: 80px;
  object-fit: cover;
}
.searchPRArea-cts-txt {
  width: 100%;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.searchPRArea-cts-txt__ttl {
  width: 50%;
  max-width: 400px;
  padding: 0 2rem;
  color: var(--text_link_c);
  text-decoration: underline;
}
.searchPRArea-cts-txt__description {
  padding: 0 2rem;
  border-left: 1px solid #D8D0C8
}
@media screen and (max-width: 767px) {
  .searchPRArea .l-container {
    padding: 0
  }
  .searchPRArea__inner {
    margin-top: 0;
    padding: 1rem;
    font-size: 14px;
  }
  .searchPRArea-cts {
    margin-top: .5rem;
  }
  .searchPRArea-cts-txt {
    padding: 1rem;
    gap: 2px;
  }
  .searchPRArea-cts-txt__ttl {
    width: 100%;
    max-width: none;
    padding: 0;
  }
  .searchPRArea-cts-txt__description {
    padding: 0;
    border-left: none;
    font-size: 12px;
  }
}

/*	同意バー・追従バナー共通
---------------------------------*/
.fixed-box {
  width: 100%;
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 100;
}
/*	同意バー
---------------------------------*/
.notice-consent {
  width: 100%;
  background: rgba(0, 0, 0, .8);
  padding: 2rem 0;
  display: none;
  visibility: hidden;
}
.notice-consent.is-show {
  display: block;
  visibility: visible;
}
.notice-consent-cts {
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
}
.notice-consent a {
  color: var(--main_c);
  text-decoration: underline
}
.notice-consent-cts__agree {
  width: 120px;
  height: 50px;
  background: linear-gradient(to bottom, #3b85ff 0%, var(--bg_blue) 100%);
  border-radius: 6px;
  color: #fff;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
}
.notice-consent-cts__agree:hover {
  opacity: .7;
  cursor: pointer;
}
/* パッと消える */
.hide {
  display: none !important;
}
@media screen and (max-width: 767px) {
  .notice-consent {
    padding: 1.2rem .5rem 2.2rem;
    background: rgba(45, 45, 45);
    position: relative;
    z-index: 100;
  }
  .notice-consent-cts {
    flex-direction: column;
    gap: 8px;
  }
  .notice-consent-cts__txt {
    font-size: 14px;
    line-height: 1.45;
  }
  .notice-consent-cts__txt br {
    display: none
  }
  .notice-consent-cts__agree {
    width: 100%;
    height: 45px;
    font-size: 14px
  }
}
/*	追従バナー
---------------------------------*/
.floating-banner {
  padding: .5rem;
  position: absolute;
  right: 0;
  bottom: 100%;
}
.floating-banner.hidden {
  display: none !important
}
.banner {
  width: 360px;
  max-width: 100%;
  margin-left: auto;
}
.banner a {
  transition: all 0.2s ease;
}
.banner a:hover {
  opacity: 1
}
.banner a:hover img {
  transform: scale(1.025, 1.025);
}
.floating-banner a {
  text-decoration: none;
}
.close-btn {
  width: 30px;
  height: 30px;
  position: absolute;
  top: 10px;
  right: 10px;
}
@media screen and (max-width: 959px) {
  .floating-banner {}
}
@media screen and (max-width: 767px) {
  .floating-banner {
    bottom: 0;
  }
  .banner {
    width: 280px;
  }
  .close-btn {
    width: 28px;
    height: 28px;
  }
}

.c-chat-modal__feedback {
  font-size: 90%;
}

.detail-kana-name {
  font-size: 12px;
  cursor: pointer;
}
.list-kana-name {
  font-size: 12px;
  cursor: pointer;
}

.popup-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 54px;
  font-size: 16px;
  font-weight: bold;
  background-color: #FFD900;
  border-radius: 100vmax;
  transition-duration: 0.3s;
  transition-property: background-color, color;
}

.map_info_window {
  position: relative;
  width: 300px;
  padding: 10px;
  border-radius: 5px;
  background-color: #ffffff;
  max-height: 200px;
  overflow-y: auto;
  font-size: 8pt;
}

.c-map-slider .swiper-slide {
  width: 100% !important;
}

.highlight a {
  background-color: #fff8d0;
  border: solid 5px #fff080;
}

.map-marker-info {
  width: 100%;
  height: 100%;
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  margin-top: 5px;
  padding: 5px;
  border: solid 1px #e0e0e0;
}
.map-marker-link1 {
  width: 70%;
}
.map-marker-link2 {
  width: 30%;
  background: #3E84CF;
  color: #ffffff;
  padding: 4px 8px;
}

.init-chat-ui {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
  text-align: center;
  height: inherit;
}
.init-chat-ui .-message {
}
.init-chat-ui span {
  font-size: 24px;
  line-height: 30px;
}
.init-chat-ui .c-chat-modal__ftrin {
  width: 100%;
  text-align: left;
}
.second-chat-ui {
  display: none;
}
.c-chat-modal__ftr {
  position: relative;
  bottom: -50px !important;
}

.map-reload-button {
  position: absolute;
  top: 30px;
  left: calc(50% - 100px);
  z-index: 10;
  width: 200px;
  text-align: center;
  background: #ffffff;
  padding: 5px;
  white-space: nowrap;
  border-radius: 5px;
  font-size: 14px;
  border: solid 3px #ffd900;
}
.map-reload-button a {
  display: inline-block;
  width: 100%;
}

.c-arrow-btn__ext-link {
  position: absolute;
  right: 20px;
  display: block;
  width: 16px;
  height: 16px;
  transition-duration: 0.3s;
  transition-property: translate;
}

/* placeholder の色を薄くする */
input::placeholder,
textarea::placeholder {
  color: #aaa;
  opacity: 1;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #aaa;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
  color: #aaa;
  opacity: 1;
}

.pickup-mark {
  font-size: 13px;
  border: solid 1px #606060;
  padding: 1px 5px;
  border-radius: 6px;
  background: #ffffff;
  font-weight: bold;
  color: #606060;
}
.pickup-link {
  text-align: right;
  text-decoration: underline;
  text-underline-offset: 2px;
  margin-top: -15px;
  margin-bottom: 15px;
  font-size: 12px;
}