.otonavi-relay{width:min(1180px,calc(100% - 40px));margin:70px auto;padding:34px;border:1px solid #e5e0d8;background:#fff}
.otonavi-relay-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #171b2d}
.otonavi-relay-head span{color:#d71968;font-size:10px;font-weight:850;letter-spacing:.18em}
.otonavi-relay-head h2{margin:5px 0 0;color:#10152b;font-family:serif;font-size:27px}
.otonavi-relay-head p{margin:7px 0 0;color:#777b86;font-size:12px}
.otonavi-relay-head>b{color:#e3dfe2;font-family:serif;font-size:18px;letter-spacing:.12em}
.otonavi-relay-grid{display:grid;grid-template-columns:repeat(var(--relay-columns),minmax(0,1fr));gap:16px}
.otonavi-relay-card{display:block;overflow:hidden;border:1px solid #e3e0dc;background:#fff;color:inherit;text-decoration:none;transition:transform .2s,box-shadow .2s}
.otonavi-relay-card:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(17,21,43,.12)}
.otonavi-relay-card.is-killer{border-color:#e5a4bd}
.otonavi-relay-media{position:relative;display:flex;aspect-ratio:16/9;align-items:center;justify-content:center;background:linear-gradient(135deg,#11162d,#a7265b);background-position:center;background-size:cover}
.otonavi-relay-media>i{color:#fff;font-family:serif;font-size:48px;font-style:normal;font-weight:800;opacity:.75}
.otonavi-relay-media>em,.otonavi-relay-media>strong{position:absolute;top:10px;padding:5px 8px;background:rgba(8,12,27,.82);color:#fff;font-size:8px;font-style:normal;letter-spacing:.08em}
.otonavi-relay-media>em{left:10px}
.otonavi-relay-media>strong{right:10px;background:#d71968}
.otonavi-relay-body{display:flex;min-height:150px;flex-direction:column;padding:14px}
.otonavi-relay-body>small{color:#d71968;font-size:9px;font-weight:800;letter-spacing:.06em}
.otonavi-relay-body>b{display:-webkit-box;overflow:hidden;margin-top:7px;color:#151a2d;font-family:serif;font-size:16px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.otonavi-relay-body>span{display:-webkit-box;overflow:hidden;margin-top:8px;color:#717580;font-size:10px;line-height:1.7;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.otonavi-relay-body>i{margin-top:auto;padding-top:12px;color:#34394c;font-size:9px;font-style:normal;font-weight:800}
@media(max-width:1050px){.otonavi-relay-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){.otonavi-relay{width:calc(100% - 24px);margin:40px auto;padding:20px 14px}
.otonavi-relay-head{align-items:flex-start}
.otonavi-relay-head>b{display:none}
.otonavi-relay-grid{grid-template-columns:1fr}
.otonavi-relay-card{display:grid;grid-template-columns:42% 58%}
.otonavi-relay-media{height:100%;aspect-ratio:auto}
.otonavi-relay-body{min-height:135px}
}
@media(prefers-reduced-motion:reduce){.otonavi-relay-card,.media-drop span{transition:none}
}
/* source: v038.css */
/* Otonavi CMS v0.3.8 — widget layouts, reusable sets and integration screens. */
.widget-layout-shell{width:100%;min-width:0}
.widget-page-grid{min-width:0}
.widget-layout-columns-1 .widget-page-grid{display:block}
.widget-layout-columns-2 .widget-page-grid,.widget-layout-columns-3 .widget-page-grid{display:grid;align-items:start;gap:28px;width:min(1720px,calc(100% - 40px));margin:0 auto}
.widget-layout-columns-2 .widget-page-grid{grid-template-columns:minmax(0,1fr) 300px}
.widget-layout-columns-3 .widget-page-grid{grid-template-columns:240px minmax(0,1fr) 240px}
.widget-layout-main{min-width:0}
.widget-layout-sidebar{position:sticky;top:92px;min-width:0;padding:30px 0}
.widget-layout-shell>.widget-area,.site-header+.widget-area,.site-footer>.widget-area,.site-footer~.widget-area{width:min(1440px,calc(100% - 40px));margin-left:auto;margin-right:auto}
.widget-area{display:grid;gap:18px;margin-top:22px;margin-bottom:22px;min-width:0}
.widget-block{min-width:0}
.widget-title{margin:0 0 12px;font-size:18px;line-height:1.5}
.widget-text{padding:18px;border:1px solid #e3ddd4;border-radius:8px;background:#fff;line-height:1.8}
.widget-banner{display:block;overflow:hidden;border-radius:8px}
.widget-banner img{display:block;width:100%;height:auto}
.widget-search{display:flex;gap:7px;padding:14px;border:1px solid #e3ddd4;background:#fff}
.widget-search input{min-width:0;flex:1;padding:11px;border:1px solid #d7dce5}
.widget-search button{padding:0 16px;border:0;background:#d71968;color:#fff;font-weight:700}
.widget-recent-articles{display:grid;gap:0;margin:0;padding:0;border:1px solid #e3ddd4;background:#fff;list-style:none}
.widget-recent-articles li+li{border-top:1px solid #eee8df}
.widget-recent-articles a{display:block;padding:12px 14px;color:#102344;text-decoration:none}
.widget-device-mobile,.widget-area-footer_mobile{display:none}
.article-page .widget-area{margin-top:18px;margin-bottom:18px}
.article-page .widget-area-article_after{width:min(1120px,calc(100% - 40px));margin-left:auto;margin-right:auto}
.widget-set-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-bottom:24px}
.widget-set-card{display:grid;gap:16px;padding:22px;border:1px solid #d9dfe9;border-radius:10px;background:#fff}
.widget-set-card.is-disabled{opacity:.65}
.widget-set-card span,.widget-area-admin article span{font-size:11px;font-weight:800;letter-spacing:.12em;color:#d71968}
.widget-set-card h3{margin:6px 0;font-size:21px}
.widget-set-card p{margin:0;color:#687287}
.widget-set-card dl{display:flex;gap:24px;margin:0}
.widget-set-card dl div{display:grid;gap:3px}
.widget-set-card dt{font-size:11px;color:#7a8496}
.widget-set-card dd{margin:0;font-weight:700}
.widget-set-meta{margin-bottom:20px}
.widget-area-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.widget-area-admin{border:1px solid #ccd4e0;background:#fff}
.widget-area-admin summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 18px;cursor:pointer;list-style:none}
.widget-area-admin summary::-webkit-details-marker{display:none}
.widget-area-admin summary span{display:grid;gap:3px}
.widget-area-admin summary strong{font-size:16px}
.widget-area-admin summary small{color:#707b8d}
.widget-area-admin summary b{color:#596579;font-size:12px}
.widget-area-admin-body{display:grid;gap:12px;padding:14px 18px 18px;border-top:1px solid #e2e6ed;background:#f7f9fc}
.widget-area-admin article{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px;border:1px solid #dce2eb;background:#fff}
.widget-area-admin article>div:first-child{display:grid;gap:3px}
.widget-area-admin article small{color:#697589}
.widget-form textarea,.integration-code-form textarea{width:100%;font-family:Consolas,"Courier New",monospace;font-size:13px;line-height:1.65;tab-size:2}
@media(max-width:1100px){.widget-layout-columns-3 .widget-page-grid{grid-template-columns:minmax(0,1fr) 280px}
.widget-layout-columns-3 .widget-layout-left{display:none}
}
@media(max-width:760px){.widget-layout-columns-2 .widget-page-grid,.widget-layout-columns-3 .widget-page-grid{display:block;width:100%}
.widget-layout-sidebar{position:static;padding:0 16px}
.widget-layout-left{display:block!important}
.widget-area{margin-top:16px;margin-bottom:16px}
.widget-layout-shell>.widget-area,.site-header+.widget-area,.site-footer>.widget-area{width:calc(100% - 24px)}
.widget-device-desktop{display:none!important}
.widget-device-mobile{display:block}
.widget-area-footer_mobile{display:grid}
.assignment-grid,.widget-area-admin-grid{grid-template-columns:1fr}
.widget-area-admin article{align-items:flex-start;flex-direction:column}
.widget-set-card dl{flex-wrap:wrap}
}
/* source: v0313.css */
/* OTONAVI CMS v0.3.13 - contextual link colors */

/* 本文内リンク：白背景で判別しやすい青 */
.public-body .prose a,
.public-body .info-table a,
.public-body .comment-list a,
.public-body .hotel-description a,
.public-body .widget-content a{color:var(--otonavi-link-content,#0657d9);text-decoration:underline}
.public-body .prose a:hover,
.public-body .info-table a:hover,
.public-body .comment-list a:hover,
.public-body .hotel-description a:hover,
.public-body .widget-content a:hover{text-decoration-thickness:2px}
/* フッター：濃色背景に白 */
.public-body .site-footer .footer-inner a,
.public-body .site-footer .widget-content a{color:var(--otonavi-link-footer,#fff)}
.public-body .site-footer .footer-inner a:hover,
.public-body .site-footer .widget-content a:hover{color:#fff;text-decoration:underline}
/* source: v0331.css */
.affiliate-area{width:min(1180px,calc(100% - 32px));margin:24px auto;display:grid;gap:18px}
.affiliate-card{position:relative;border:1px solid #e3ddd4;border-radius:14px;background:#fff;color:#111827;box-shadow:0 10px 28px rgba(10,14,30,.08);overflow:hidden}
.affiliate-card-body{display:grid;grid-template-columns:minmax(180px,34%) 1fr;align-items:center;gap:22px;padding:20px}
.affiliate-disclosure{position:absolute;z-index:2;top:10px;left:10px;padding:3px 8px;border-radius:999px;background:rgba(7,11,28,.82);color:#fff;font-size:11px;line-height:1.5}
.affiliate-image{display:block;border-radius:10px;overflow:hidden;background:#f5f5f5}
.affiliate-image img{display:block;width:100%;height:auto;max-height:240px;object-fit:cover}
.affiliate-copy h2{margin:0 0 10px;font-size:clamp(20px,2.2vw,30px);line-height:1.45;color:#111827}
.affiliate-copy p{margin:0 0 16px;color:#4b5563;line-height:1.8}
.affiliate-cta,.article-page .affiliate-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 24px;border-radius:8px;background:var(--otonavi-theme-accent,#d71968);color:#fff!important;font-weight:700;text-decoration:none;box-shadow:0 8px 20px rgba(215,25,104,.22)}
.affiliate-cta:hover{filter:brightness(1.08);transform:translateY(-1px)}
.affiliate-card.device-desktop,.affiliate-card.device-tablet,.affiliate-card.device-mobile{display:none}
@media(min-width:1025px){.affiliate-card.device-desktop{display:block}
}
@media(min-width:768px) and (max-width:1024px){.affiliate-card.device-tablet{display:block}
}
@media(max-width:767px){.affiliate-area{width:calc(100% - 24px);margin:18px auto}
.affiliate-card.device-mobile{display:block}
.affiliate-card-body{grid-template-columns:1fr;padding:16px}
.affiliate-copy h2{font-size:20px}
.affiliate-cta{width:100%}
}
/* source: v0336.css */
/* v0.3.36: progressive scroll reveal for below-the-fold public content. */
html.otonavi-motion-enabled :where(
  .home-region-finder,
  .digest-section .section-heading,
  .digest-card,
  .join-cta,
  .hotel-region-browser,
  .listing-shell .listing-toolbar,
  .detail-main>.detail-section,
  .otonavi-relay-head,
  .otonavi-relay-card,
  .affiliate-card,
  .widget-block
){
  opacity:0;
  transform:translate3d(0,18px,0);
  transition:opacity .5s ease,transform .5s cubic-bezier(.22,.61,.36,1);
  transition-delay:var(--otonavi-reveal-delay,0ms);
  will-change:opacity,transform;
}
html.otonavi-motion-enabled :where(
  .home-region-finder,
  .digest-section .section-heading,
  .digest-card,
  .join-cta,
  .hotel-region-browser,
  .listing-shell .listing-toolbar,
  .detail-main>.detail-section,
  .otonavi-relay-head,
  .otonavi-relay-card,
  .affiliate-card,
  .widget-block
).is-revealed{
  opacity:1;
  transform:none;
  will-change:auto;
}
@media(prefers-reduced-motion:reduce){html.otonavi-motion-enabled :where(
    .home-region-finder,
    .digest-section .section-heading,
    .digest-card,
    .join-cta,
    .hotel-region-browser,
    .listing-shell .listing-toolbar,
    .detail-main>.detail-section,
    .otonavi-relay-head,
    .otonavi-relay-card,
    .affiliate-card,
    .widget-block
  ){
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
}
/* source: v0337.css */
/* v0.3.37: reveal only elements that JavaScript confirms are below the fold. */
:where(
  .home-region-finder,
  .digest-section .section-heading,
  .digest-card,
  .join-cta,
  .hotel-region-browser,
  .listing-shell .listing-toolbar,
  .detail-main>.detail-section,
  .otonavi-relay-head,
  .otonavi-relay-card,
  .affiliate-card,
  .widget-block
).otonavi-reveal{
  opacity:0;
  transform:translate3d(0,18px,0);
  transition:opacity .42s ease,transform .42s cubic-bezier(.22,.61,.36,1);
  transition-delay:var(--otonavi-reveal-delay,0ms);
  will-change:opacity,transform;
}
:where(
  .home-region-finder,
  .digest-section .section-heading,
  .digest-card,
  .join-cta,
  .hotel-region-browser,
  .listing-shell .listing-toolbar,
  .detail-main>.detail-section,
  .otonavi-relay-head,
  .otonavi-relay-card,
  .affiliate-card,
  .widget-block
).otonavi-reveal.is-revealed{
  opacity:1;
  transform:none;
  will-change:auto;
}
@media(prefers-reduced-motion:reduce){.otonavi-reveal{opacity:1!important;transform:none!important;transition:none!important}
}
/* Otonavi CMS v0.4.26: source identity above every relay card. */
.otonavi-relay-source{display:flex;grid-column:1/-1;align-items:center;gap:8px;min-width:0;min-height:48px;padding:9px 12px;border-bottom:1px solid #e3e0dc;background:#faf9f7;line-height:1.5}
.otonavi-relay-source-label{flex:none;color:#666b75;font-size:10px;font-weight:600;white-space:nowrap}
.otonavi-relay-source-logo{display:block;flex:none;width:72px;height:28px;object-fit:contain;object-position:center}
.otonavi-relay-source-logo[hidden]{display:none}
.otonavi-relay-source-name{flex:1;min-width:0;color:#151a2d;font-size:12px;font-weight:800;overflow-wrap:anywhere}
.otonavi-relay-source-arrow{flex:none;color:#666b75;font-size:13px}
.otonavi-relay-body>b{margin-top:0}
.otonavi-relay-source-name[hidden]{display:none}
.otonavi-relay-source.is-logo-only .otonavi-relay-source-logo{width:160px;max-width:calc(100% - 64px);object-position:left center;flex:0 1 auto;min-width:0}
.otonavi-relay-source-arrow{margin-left:auto}
.otonavi-relay-source{height:54px;min-height:54px}
.otonavi-relay-source-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
