/* UMATABI: rounded journey illustrations / 2026-10-18 */
body .p-content02 {
 display:grid; grid-template-columns:repeat(3,minmax(0,1fr));
 gap:clamp(30px,4vw,64px); padding:64px max(32px,calc((100% - 1240px)/2));
 background:#faf7ef; overflow:visible; box-sizing:border-box;
}
body .p-content02 > .p-content02__item {
 width:auto; min-width:0; margin:0; float:none; position:relative;
}
body .p-content02 > .p-content02__item > a {
 display:block; overflow:visible; height:auto; color:#38534c;
 text-decoration:none; background:transparent; text-align:center;
}
body .p-content02 .p-content02__item-img {
 display:block; width:100%; height:auto; max-width:100%; aspect-ratio:1/1;
 object-fit:cover; border-radius:50%; opacity:1;
 box-shadow:0 0 0 7px #faf7ef,0 0 0 8px #b68d6c;
 transform:none; transition:transform .35s ease;
}
body .p-content02 .p-content02__item > a:hover .p-content02__item-img {
 transform:translateY(-4px); opacity:1;
}
body .p-content02 .p-content02__item-content,
body .p-content02 .p-content02__item > a:hover .p-content02__item-content {
 display:block; position:relative; inset:auto; width:auto; height:auto;
 min-height:76px; padding:28px 0 0; margin:0;
 opacity:1; visibility:visible; transform:none; color:#38534c;
 background:transparent; box-sizing:border-box;
}
body .p-content02 .p-content02__item-title {
 margin:0 0 9px; padding:0; font-family:Georgia,'Times New Roman',serif;
 font-size:clamp(22px,2vw,29px); font-weight:400; line-height:1.2;
 letter-spacing:.025em; color:#38534c;
}
body .p-content02 .p-content02__item-sub {
 margin:0; padding:0; font-size:12px; font-weight:400; line-height:1.8;
 letter-spacing:.09em; color:#625d50;
}
body .p-content02 .p-content02__item > a:focus-visible {
 outline:2px solid #56766a; outline-offset:16px; border-radius:12px;
}
body .p-content02 .p-content02__item-content::before {
 content:""; display:block; position:absolute; z-index:2;
 background-repeat:no-repeat; background-position:center; background-size:contain;
 pointer-events:none;
}
body .p-content02 .p-content02__item:nth-child(1) .p-content02__item-content::before {
 width:76px; height:84px; left:-12px; top:-68px; background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20110%22%3E%3Cpath%20d%3D%22M18%2098%20Q32%2064%2074%2024%22%20fill%3D%22none%22%20stroke%3D%22%2374876b%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M32%2073%20Q2%2068%2010%2043%20Q33%2048%2032%2073M52%2051%20Q48%2022%2072%2012%20Q78%2037%2052%2051M27%2082%20Q57%2077%2061%20103%20Q38%20105%2027%2082%22%20fill%3D%22%2398a88c%22%2F%3E%3Cg%20fill%3D%22%23f5e5bd%22%20transform%3D%22translate(40%2057)%22%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%2F%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%20transform%3D%22rotate(45)%22%2F%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%20transform%3D%22rotate(90)%22%2F%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%20transform%3D%22rotate(135)%22%2F%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%20transform%3D%22rotate(180)%22%2F%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%20transform%3D%22rotate(225)%22%2F%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%20transform%3D%22rotate(270)%22%2F%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%20transform%3D%22rotate(315)%22%2F%3E%3Ccircle%20r%3D%2210%22%20fill%3D%22%23c6954f%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}
body .p-content02 .p-content02__item:nth-child(2) > a::before {
 content:""; position:absolute; top:0; right:-8px; z-index:2;
 width:64px; height:64px; background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%3E%3Cpath%20d%3D%22M36%205%20Q40%2035%2062%2039%20Q40%2043%2036%2073%20Q32%2043%2010%2039%20Q32%2035%2036%205Z%22%20fill%3D%22%23c6954f%22%2F%3E%3Cpath%20d%3D%22M78%2058%20Q80%2073%2092%2076%20Q80%2079%2078%2094%20Q76%2079%2064%2076%20Q76%2073%2078%2058Z%22%20fill%3D%22%23c6954f%22%2F%3E%3Ccircle%20cx%3D%2279%22%20cy%3D%2224%22%20r%3D%223%22%20fill%3D%22%23d9b98c%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;
 pointer-events:none;
}
body .p-content02 .p-content02__item:nth-child(3) .p-content02__item-content::before {
 width:84px; height:84px; right:-13px; top:-69px; background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20120%20120%22%3E%3Cpath%20d%3D%22M12%20111%20Q75%2082%2099%2012%22%20fill%3D%22none%22%20stroke%3D%22%2374876b%22%20stroke-width%3D%222.5%22%2F%3E%3Cpath%20d%3D%22M30%20102%20Q29%2080%2042%2070%20Q47%2091%2030%20102M49%2091%20Q64%2069%2083%2077%20Q73%2096%2049%2091M60%2075%20Q45%2056%2055%2043%20Q72%2058%2060%2075M78%2053%20Q90%2035%20108%2041%20Q97%2059%2078%2053M91%2032%20Q86%2011%20104%202%20Q108%2020%2091%2032%22%20fill%3D%22%2398a88c%22%2F%3E%3Cpath%20d%3D%22M3%20110%20Q18%20116%2031%20115%22%20fill%3D%22none%22%20stroke%3D%22%23b88b60%22%20stroke-width%3D%223%22%20stroke-dasharray%3D%221%208%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%22103%22%20cy%3D%2277%22%20r%3D%226%22%20fill%3D%22%23c6954f%22%2F%3E%3C%2Fsvg%3E");
}
@media (max-width:767px) {
 body .p-content02 { grid-template-columns:minmax(0,340px); justify-content:center; gap:44px; padding:48px 32px; }
 body .p-content02 .p-content02__item-content {padding-top:26px;min-height:76px;}
 body .p-content02 .p-content02__item-title {font-size:26px;}
}
@media (prefers-reduced-motion:reduce) {
 body .p-content02 .p-content02__item-img {transition:none;}
 body .p-content02 .p-content02__item > a:hover .p-content02__item-img {transform:none;}
}
/* End UMATABI rounded journey illustrations *//* UMATABI: rounded journey illustrations / 2026-10-18 */
body .p-content02:not(.slick-slider) {
 display:grid; grid-template-columns:repeat(3,minmax(0,1fr));
 gap:clamp(30px,4vw,64px); padding:64px max(32px,calc((100% - 1240px)/2));
 background:#faf7ef; overflow:visible; box-sizing:border-box;
}
body .p-content02 > .p-content02__item {
 width:auto; min-width:0; margin:0; float:none; position:relative;
}
body .p-content02 > .p-content02__item > a {
 display:block; overflow:visible; height:auto; padding:0; color:#38534c;
 text-decoration:none; background:transparent; text-align:center;
}
body .p-content02 .p-content02__item-img {
 display:block; position:static; inset:auto; margin:0; width:100%; height:auto; max-width:100%; aspect-ratio:1/1;
 object-fit:cover; border-radius:50%; opacity:1;
 box-shadow:0 0 0 7px #faf7ef,0 0 0 8px #b68d6c;
 transform:none; transition:transform .35s ease;
}
body .p-content02 .p-content02__item > a:hover .p-content02__item-img {
 transform:translateY(-4px); opacity:1;
}
body .p-content02 .p-content02__item-content,
body .p-content02 .p-content02__item > a:hover .p-content02__item-content {
 display:block; position:relative; inset:auto; width:auto; height:auto;
 min-height:76px; padding:28px 0 0; margin:0;
 opacity:1; visibility:visible; transform:none; color:#38534c;
 background:transparent; box-sizing:border-box;
}
body .p-content02 .p-content02__item-title {
 margin:0 0 9px; padding:0; font-family:Georgia,'Times New Roman',serif;
 font-size:clamp(22px,2vw,29px); font-weight:400; line-height:1.2;
 letter-spacing:.025em; color:#38534c;
}
body .p-content02 .p-content02__item-sub {
 margin:0; padding:0; font-size:12px; font-weight:400; line-height:1.8;
 letter-spacing:.09em; color:#625d50;
}
body .p-content02 .p-content02__item > a:focus-visible {
 outline:2px solid #56766a; outline-offset:16px; border-radius:12px;
}
body .p-content02 .p-content02__item-content::before {
 content:""; display:block; position:absolute; z-index:2;
 background-repeat:no-repeat; background-position:center; background-size:contain;
 pointer-events:none;
}
body .p-content02 .p-content02__item:nth-child(1) .p-content02__item-content::before {
 width:76px; height:84px; left:-12px; top:-68px; background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20110%22%3E%3Cpath%20d%3D%22M18%2098%20Q32%2064%2074%2024%22%20fill%3D%22none%22%20stroke%3D%22%2374876b%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M32%2073%20Q2%2068%2010%2043%20Q33%2048%2032%2073M52%2051%20Q48%2022%2072%2012%20Q78%2037%2052%2051M27%2082%20Q57%2077%2061%20103%20Q38%20105%2027%2082%22%20fill%3D%22%2398a88c%22%2F%3E%3Cg%20fill%3D%22%23f5e5bd%22%20transform%3D%22translate(40%2057)%22%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%2F%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%20transform%3D%22rotate(45)%22%2F%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%20transform%3D%22rotate(90)%22%2F%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%20transform%3D%22rotate(135)%22%2F%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%20transform%3D%22rotate(180)%22%2F%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%20transform%3D%22rotate(225)%22%2F%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%20transform%3D%22rotate(270)%22%2F%3E%3Cellipse%20cy%3D%22-19%22%20rx%3D%2210%22%20ry%3D%2219%22%20transform%3D%22rotate(315)%22%2F%3E%3Ccircle%20r%3D%2210%22%20fill%3D%22%23c6954f%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}
body .p-content02 .p-content02__item:nth-child(2) > a::before {
 content:""; position:absolute; top:0; right:-8px; z-index:2;
 width:64px; height:64px; background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%3E%3Cpath%20d%3D%22M36%205%20Q40%2035%2062%2039%20Q40%2043%2036%2073%20Q32%2043%2010%2039%20Q32%2035%2036%205Z%22%20fill%3D%22%23c6954f%22%2F%3E%3Cpath%20d%3D%22M78%2058%20Q80%2073%2092%2076%20Q80%2079%2078%2094%20Q76%2079%2064%2076%20Q76%2073%2078%2058Z%22%20fill%3D%22%23c6954f%22%2F%3E%3Ccircle%20cx%3D%2279%22%20cy%3D%2224%22%20r%3D%223%22%20fill%3D%22%23d9b98c%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;
 pointer-events:none;
}
body .p-content02 .p-content02__item:nth-child(3) .p-content02__item-content::before {
 width:84px; height:84px; right:-13px; top:-69px; background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20120%20120%22%3E%3Cpath%20d%3D%22M12%20111%20Q75%2082%2099%2012%22%20fill%3D%22none%22%20stroke%3D%22%2374876b%22%20stroke-width%3D%222.5%22%2F%3E%3Cpath%20d%3D%22M30%20102%20Q29%2080%2042%2070%20Q47%2091%2030%20102M49%2091%20Q64%2069%2083%2077%20Q73%2096%2049%2091M60%2075%20Q45%2056%2055%2043%20Q72%2058%2060%2075M78%2053%20Q90%2035%20108%2041%20Q97%2059%2078%2053M91%2032%20Q86%2011%20104%202%20Q108%2020%2091%2032%22%20fill%3D%22%2398a88c%22%2F%3E%3Cpath%20d%3D%22M3%20110%20Q18%20116%2031%20115%22%20fill%3D%22none%22%20stroke%3D%22%23b88b60%22%20stroke-width%3D%223%22%20stroke-dasharray%3D%221%208%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%22103%22%20cy%3D%2277%22%20r%3D%226%22%20fill%3D%22%23c6954f%22%2F%3E%3C%2Fsvg%3E");
}
@media (max-width:767px) {
 body .p-content02:not(.slick-slider) { grid-template-columns:minmax(0,340px); justify-content:center; gap:44px; padding:48px 32px; }
 body .p-content02 .p-content02__item-content {padding-top:26px;min-height:76px;}
 body .p-content02 .p-content02__item-title {font-size:26px !important;}
}
@media (prefers-reduced-motion:reduce) {
 body .p-content02 .p-content02__item-img {transition:none;}
 body .p-content02 .p-content02__item > a:hover .p-content02__item-img {transform:none;}
}
/* End UMATABI rounded journey illustrations */
/* UMATABI editorial navigation — 2026-10-18 */
#js-header.l-header {
  position:sticky; top:0; left:0; height:96px; line-height:normal;
  background:rgba(250,248,242,.97); color:#294b42;
  border-bottom:1px solid #dddcd1; box-shadow:0 3px 20px rgba(36,64,53,.035);
  animation:none; -webkit-animation:none; backdrop-filter:blur(16px);
}
body.admin-bar #js-header {top:32px;}
#js-header + .l-main {padding-top:0;}
#js-header .l-header__inner {
  display:flex; align-items:center; justify-content:space-between; gap:28px;
  width:calc(100% - 80px); max-width:1320px; height:100%; margin:0 auto;
}
#js-header .l-header__logo {flex:0 0 auto; padding:0; margin:0;}
#js-header .l-header__logo a {
  display:flex; flex-direction:column; justify-content:center; gap:6px; overflow:visible;
  width:auto; color:#294b42; font-family:'Yu Mincho','Hiragino Mincho ProN',serif;
  font-size:34px !important; font-weight:500; letter-spacing:.12em; line-height:1;
}
#js-header .l-header__logo a::after {
  content:'UMATABI'; font-family:Arial,sans-serif; font-size:8px;
  font-weight:500; letter-spacing:.35em; padding-left:.2em; color:#6e7e70;
}
#js-header a:focus-visible {outline:2px solid #a48555; outline-offset:4px;}
#js-header #js-global-nav {font-family:Arial,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif;}
#js-header #js-global-nav a {color:#294b42; text-decoration:none; transition:background .2s,color .2s;}
@media(min-width:1025px) {
  #js-header nav {margin-left:auto;}
  #js-header #js-global-nav {display:flex !important; align-items:center; gap:6px; height:96px;}
  #js-header #js-global-nav::after {display:none;}
  #js-header #js-global-nav > li {float:none;}
  #js-header #js-global-nav > li > a {
    position:relative; padding:15px 17px; border-radius:9px; font-size:12px;
    font-weight:500; letter-spacing:.055em; line-height:1.35; white-space:nowrap;
  }
  #js-header #js-global-nav > li > a::after {
    display:block; margin-top:6px; color:#788176; font-size:9px;
    letter-spacing:.12em; line-height:1.4; text-align:center;
  }
  #js-header #menu-item-78 > a::after {content:'ホーム';}
  #js-header #menu-item-79 > a::after {content:'読みもの';}
  #js-header #menu-item-102 > a::after {content:'馬との旅';}
  #js-header #menu-item-103 > a::after {content:'馬を知る';}
  #js-header #menu-item-222 > a::after {content:'馬旅について';}
  #js-header #menu-item-2188 > a::after {content:'パートナー';}
  #js-header #js-global-nav > li > a:hover,
  #js-header #js-global-nav > li:focus-within > a {background:#eeeee4; color:#294b42;}
  #js-header #js-global-nav > li.current-menu-item > a,
  #js-header #js-global-nav > li.current-menu-ancestor > a {background:#e7ece3; color:#294b42;}
  #js-header #menu-item-1919 {order:9; margin-left:16px;}
  #js-header #menu-item-1919 > a {
    background:#294b42; color:#fff; border:1px solid #294b42; border-radius:999px;
    padding:13px 24px; text-align:center;
  }
  #js-header #js-global-nav > #menu-item-1919 > a::after {content:'馬旅倶楽部'; color:#e1e7da;}
  #js-header #js-global-nav > #menu-item-1919 > a:hover,
  #js-header #js-global-nav > #menu-item-1919:focus-within > a {background:#406052; color:#fff;}
  #js-header #js-global-nav .sub-menu {
    width:210px; padding:8px; border:1px solid #e4e3d8; border-radius:12px;
    background:#faf8f2; box-shadow:0 14px 35px rgba(33,55,45,.12); box-sizing:border-box;
  }
  #js-header #js-global-nav > li > .sub-menu {top:100%; left:0;}
  #js-header #js-global-nav > #menu-item-1919 > .sub-menu {left:auto; right:0;}
  #js-header #js-global-nav .sub-menu a {
    width:auto; padding:14px 16px; background:transparent; border-radius:7px;
    font-size:12px; line-height:1.5; letter-spacing:.04em;
  }
  #js-header #js-global-nav .sub-menu a:hover,
  #js-header #js-global-nav .sub-menu a:focus-visible {background:#e7ece3; color:#294b42;}
  #js-header #js-global-nav li:focus-within > .sub-menu {opacity:1; visibility:visible; top:0;}
  #js-header #js-global-nav > li:focus-within > .sub-menu {top:100%;}
}
@media(min-width:1025px) and (max-width:1200px) {
  #js-header .l-header__inner {width:calc(100% - 48px); gap:18px;}
  #js-header #js-global-nav {gap:1px;}
  #js-header #js-global-nav > li > a {padding:14px 11px; font-size:11px;}
  #js-header #menu-item-1919 {margin-left:9px;}
  #js-header #menu-item-1919 > a {padding:13px 18px;}
}
@media(max-width:1024px) {
  #js-header.l-header {height:76px;}
  #js-header .l-header__inner {display:block; width:100%; padding:0 24px;}
  #js-header .l-header__logo {display:flex; align-items:center; height:76px;}
  #js-header .l-header__logo a {font-size:29px !important; gap:5px;}
  #js-header .l-header__logo a::after {font-size:7px;}
  #js-header #js-menu-button {
    display:flex; align-items:center; justify-content:center; gap:8px;
    top:17px; right:24px; width:84px; height:42px; line-height:1;
    border:1px solid #cbd2c4; border-radius:999px; color:#294b42; background:transparent;
  }
  #js-header #js-menu-button::before {content:'MENU'; font:9px Arial,sans-serif; letter-spacing:.11em;}
  #js-header #js-menu-button::after {content:''; display:block; width:12px; height:5px; border-top:1px solid currentColor; border-bottom:1px solid currentColor;}
  #js-header #js-menu-button.is-active {background:#294b42; border-color:#294b42; color:#fff;}
  #js-header #js-menu-button.is-active::before {content:'CLOSE';}
  #js-header #js-menu-button.is-active::after {height:0; border-bottom:0;}
  #js-header #js-global-nav {
    position:absolute; top:76px; left:0; width:100%; max-height:calc(100dvh - 76px);
    overflow-y:auto; overscroll-behavior:contain; padding:14px 24px 24px; box-sizing:border-box;
    background:#faf8f2; border-top:1px solid #e2e3d7; border-bottom:1px solid #d8ddcf;
    box-shadow:0 16px 26px rgba(33,55,45,.10);
  }
  body.admin-bar #js-header #js-global-nav {max-height:calc(100dvh - 122px);}
  #js-header #js-global-nav > li {border-bottom:1px solid #e4e5da;}
  #js-header #js-global-nav > li:last-child {border-bottom:0;}
  #js-header #js-global-nav a {
    color:#294b42 !important; height:auto; min-height:52px; padding:15px 14px;
    line-height:22px; font-size:13px; letter-spacing:.06em; border-radius:6px;
  }
  #js-header #js-global-nav > li > a:hover,
  #js-header #js-global-nav > li.current-menu-item > a {background:#e7ece3;}
  #js-header #js-global-nav .sub-menu {padding:0 0 9px 12px; box-sizing:border-box;}
  #js-header #js-global-nav .sub-menu a {min-height:46px; padding:12px 14px; background:#eff0e7; font-size:12px;}
  #js-header #js-global-nav .sub-menu a:hover {background:#e4e9de;}
  #js-header #js-global-nav .sub-menu ul a {background:#e5e9df;}
  #js-header #js-global-nav .menu-item-has-children > a > span::before {
    border-color:#c1cbbd; color:#426052; right:12px; width:26px; height:26px; line-height:26px;
  }
  #js-header #menu-item-1919 > a {font-weight:600;}
}
@media(max-width:782px) {body.admin-bar #js-header {top:46px;}}
@media(max-width:600px) {body.admin-bar #js-header {top:0;}}
@media(prefers-reduced-motion:reduce) {#js-header #js-global-nav a,#js-header #js-global-nav .sub-menu {transition:none;}}
/* End UMATABI editorial navigation */

/* Use the shared navigation on the riding-club directory. */
body.page-id-771.umatabi-club-enhanced > #js-header.l-header {display:block !important;}
body.page-id-771.umatabi-club-enhanced #umatabi-club-app > .site-header {display:none !important;}
body.page-id-771 #umatabi-club-app #directory {scroll-margin-top:124px;}
body.page-id-771.admin-bar #umatabi-club-app #directory {scroll-margin-top:156px;}
@media(max-width:1024px) {
  body.page-id-771 #umatabi-club-app #directory {scroll-margin-top:98px;}
  body.page-id-771.admin-bar #umatabi-club-app #directory {scroll-margin-top:144px;}
}
body.page-id-771 #umatabi-club-app #results-title {scroll-margin-top:156px;}
@media(max-width:1024px) {body.page-id-771 #umatabi-club-app #results-title {scroll-margin-top:144px;}}

/* UMATABI: a little happiness, a little support — 2026-10-18 */
#js-request.p-request {
  box-sizing:border-box; left:24px; right:24px; bottom:20px; margin:0 auto;
  width:calc(100% - 48px); max-width:1180px; height:auto;
  background:radial-gradient(ellipse at 0 100%,#eaf0df 0,transparent 36%),radial-gradient(ellipse at 100% 0,#f5ded4 0,transparent 44%),#fff9ef !important;
  border:1px solid #e6d8c7; border-radius:24px;
  box-shadow:0 12px 44px rgba(67,50,37,.17),0 2px 6px rgba(67,50,37,.04);
  transform:translate3d(0,calc(100% + 28px),0); transition:transform .35s ease;
}
#js-request.p-request.is-active {transform:translate3d(0,0,0);}
#js-request .p-request__inner {
  display:flex; align-items:center; justify-content:space-between; gap:22px;
  box-sizing:border-box; min-height:120px; height:auto; padding:20px 65px 20px 26px;
}
#js-request .p-request__inner::before {
  content:''; display:block; flex:0 0 68px; width:68px; height:68px; border-radius:22px;
  background:#e5ebdb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 80'%3E%3Cpath d='M25 19c-6 9-9 21-6 31 3 11 12 17 21 17s18-6 21-17c3-10 0-22-6-31l-10 5c5 7 7 14 6 21-1 7-5 11-11 11s-10-4-11-11c-1-7 1-14 6-21Z' fill='%23fff9ef' stroke='%23577560' stroke-width='2.2' stroke-linejoin='round'/%3E%3Cg fill='%23577560'%3E%3Ccircle cx='25' cy='36' r='1.5'/%3E%3Ccircle cx='25' cy='47' r='1.5'/%3E%3Ccircle cx='31' cy='58' r='1.5'/%3E%3Ccircle cx='55' cy='36' r='1.5'/%3E%3Ccircle cx='55' cy='47' r='1.5'/%3E%3Ccircle cx='49' cy='58' r='1.5'/%3E%3C/g%3E%3Cpath d='M40 22c-12-7-9-16-3-15 2 0 3 1 3 3 1-2 3-3 5-3 6 0 8 8-5 15Z' fill='%23c77e70'/%3E%3Cpath d='M66 8v10m-5-5h10' stroke='%23b99a60' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center/58px 58px no-repeat;
  transform:rotate(-7deg); box-shadow:0 0 0 4px rgba(255,255,255,.62);
}
#js-request .p-request__text {
  flex:1; margin:0; padding:0; color:#315046 !important;
  font-family:'Yu Mincho','Hiragino Mincho ProN',serif;
  font-size:21px; font-weight:600; letter-spacing:.035em; line-height:1.5;
}
#js-request .p-request__text::before {
  content:'A LITTLE LOVE FOR HORSES'; display:block; margin-bottom:7px;
  font:600 9px/1.2 Arial,sans-serif; letter-spacing:.18em; color:#905f51;
}
#js-request .p-request__text::after {
  content:'馬旅の定期郵送 ＆ 引退馬支援'; display:block; margin-top:6px;
  font-family:'Hiragino Kaku Gothic ProN',Meiryo,sans-serif;
  font-size:11px; font-weight:400; letter-spacing:.07em; line-height:1.5; color:#6c7162;
}
#js-request .p-request__btn {
  flex:0 0 auto; display:flex; align-items:center; justify-content:center; gap:16px;
  min-width:0; height:58px; padding:0 23px; margin:0; border:1px solid #a75046;
  border-radius:999px; background:#ad574e; color:#fffaf4 !important;
  box-shadow:0 5px 0 #e7c9bb; text-decoration:none; white-space:nowrap;
  font:500 13px/1.5 'Hiragino Kaku Gothic ProN',Meiryo,sans-serif; letter-spacing:.04em;
  transition:background .2s,transform .2s,box-shadow .2s;
}
#js-request .p-request__btn::after {
  content:''; display:block; width:26px; height:26px; margin:0; flex:0 0 26px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Ccircle cx='14' cy='14' r='12.5' fill='none' stroke='%23edc7b8'/%3E%3Cpath d='M8 14h12m-5-5 5 5-5 5' fill='none' stroke='%23fffaf4' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  transition:transform .2s;
}
#js-request .p-request__btn:hover {background:#91483f; transform:translateY(-2px); box-shadow:0 7px 0 #e7c9bb;}
#js-request .p-request__btn:hover::after {transform:translateX(3px);}
#js-request .p-request__btn:active {transform:translateY(2px); box-shadow:0 2px 0 #e7c9bb;}
#js-request .p-request__btn:focus-visible,#js-request .p-request__close:focus-visible,#js-request > a:focus-visible {outline:2px solid #315046; outline-offset:4px;}
#js-request .p-request__close {
  display:flex; align-items:center; justify-content:center; top:12px; right:12px;
  width:40px; height:40px; padding:0; border:1px solid #dfd6c9; border-radius:50%;
  background:rgba(255,255,255,.7); color:#796c5e; cursor:pointer;
}
#js-request .p-request__close::before {content:'×'; font:20px/1 Arial,sans-serif;}
#js-request .p-request__close:hover {background:#e9ddd0; color:#315046;}
@media(max-width:1050px) and (min-width:768px) {
  #js-request .p-request__inner {gap:16px; padding-left:20px;}
  #js-request .p-request__inner::before {flex-basis:54px; width:54px; height:58px; background-size:49px;}
  #js-request .p-request__text {font-size:17px;}
  #js-request .p-request__btn {font-size:11px; padding:0 17px; gap:10px; height:54px;}
}
@media(max-width:767px) {
  #js-request.p-request {left:12px; right:12px; bottom:max(12px,env(safe-area-inset-bottom)); width:calc(100% - 24px); border-radius:20px;}
  #js-request .p-request__inner {
    display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px 12px;
    min-height:0; padding:17px 18px 18px; height:auto;
  }
  #js-request .p-request__inner::before {width:42px; height:48px; border-radius:15px; background-size:40px; align-self:center;}
  #js-request .p-request__text {font-size:16px; line-height:1.55; padding-right:12px; letter-spacing:0; text-wrap:balance;}
  #js-request .p-request__text::before {font-size:7px; letter-spacing:.12em; margin-bottom:5px;}
  #js-request .p-request__text::after {font-size:9px; letter-spacing:0; margin-top:5px;}
  #js-request .p-request__btn {
    display:flex; grid-column:1/-1; justify-content:center; width:100%; height:45px;
    padding:0 16px; font-size:12px; gap:16px; box-shadow:0 3px 0 #e7c9bb;
  }
  #js-request .p-request__btn::after {width:23px; height:23px; flex-basis:23px;}
  #js-request .p-request__close {top:-10px; right:-4px; width:36px; height:36px; box-shadow:0 2px 6px rgba(67,50,37,.08);}
  #js-request > a {display:block; height:auto; color:#315046; text-decoration:none;}
  #js-request > a::after {
    content:'馬旅倶楽部をのぞいてみる'; position:static; display:block; width:auto; height:auto;
    margin:0 18px 18px; padding:12px 15px; border-radius:999px; background:#ad574e;
    color:#fffaf4; text-align:center; font:12px/1.5 'Hiragino Kaku Gothic ProN',Meiryo,sans-serif;
  }
  #js-request > a .p-request__btn {display:none;}
}
@media(prefers-reduced-motion:reduce) {
  #js-request.p-request,#js-request .p-request__btn,#js-request .p-request__btn::after {transition:none;}
}
/* End UMATABI support bar */

/* Keep the existing back-to-top control clear of the invitation. */
body:has(#js-request.is-active:not([style*="display: none"])) #wpfront-scroll-top-container {bottom:162px !important;}
@media(max-width:767px) {body:has(#js-request.is-active:not([style*="display: none"])) #wpfront-scroll-top-container {bottom:220px !important;}}

/* The directory uses its own footer, with this shared invitation above it. */
body.page-id-771.umatabi-club-enhanced > footer.l-footer {display:contents !important;}
body.page-id-771.umatabi-club-enhanced > footer.l-footer > :not(#js-request) {display:none !important;}
body:has(#js-request.is-active:not([style*="display: none"])) {padding-bottom:164px;}
@media(max-width:767px) {body:has(#js-request.is-active:not([style*="display: none"])) {padding-bottom:210px;}}
#js-request .p-request__close::after {
  content:'案内を閉じる'; position:absolute; width:1px; height:1px; padding:0; overflow:hidden;
  white-space:nowrap; clip-path:inset(50%);
}

/* UMATABI logo punctuation alignment */
body .brand .brand-ja .brand-dot {
  position: relative;
  left: .14em;
  top: .05em;
}
