:root{
  --boon-ink:#26211e;
  --boon-brown:#744a2f;
  --boon-brown-dark:#4c2f1f;
  --boon-paper:#f5f2ed;
  --boon-line:#ddd4ca;
  --boon-muted:#6f655d;
}

body{
  color:var(--boon-ink);
  font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
}

/* 複合語は語中で分断せず、次の行へまとめて送る。 */
.boon-keepTogether{display:inline-block;white-space:nowrap;}

.site-header{
  z-index:30;
  padding:12px 0;
  border-bottom:1px solid rgba(52,32,20,.38);
  background-position:center;
  background-size:auto 100%;
  box-shadow:0 2px 10px rgba(31,18,11,.14);
}
.site-header .site-header-container{
  display:flex;
  min-height:58px;
  max-width:1200px;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.site-header .site-header-logo{margin:0;line-height:0;}
.site-header.site-header--layout--nav-float .site-header-logo{width:auto;flex:0 0 auto;}
.site-header .site-header-logo img{width:auto;max-width:220px;max-height:58px;}
/* Lightning はスクロール時にロゴを非表示にするため、常にブランドロゴを残します。 */
.header_scrolled .site-header .site-header-logo{display:block!important;flex:0 0 auto;}
.header_scrolled .site-header .site-header-logo img{display:block;}
.header_scrolled .site-header .global-nav{margin:0 0 0 auto;}
.site-header .global-nav{
  margin:0;
  padding:3px 14px;
  border:1px solid rgba(61,38,24,.18);
  background:#fff;
  box-shadow:0 2px 8px rgba(38,25,17,.12);
}
.site-header .global-nav-list{align-items:stretch;}
.site-header .global-nav-list>li{margin:0;}
.site-header .global-nav-list>li>a{
  min-width:105px;
  padding:10px 12px 8px;
  color:var(--boon-ink);
  text-align:center;
  text-decoration:none;
}
.site-header .global-nav-name{display:block;font-size:13px;font-weight:700;line-height:1.25;}
.site-header .global-nav-description{display:block;margin-top:3px;color:var(--boon-brown);font-size:9px;font-weight:700;letter-spacing:.1em;line-height:1;text-transform:uppercase;}
.site-header .global-nav-list>li>a:hover,.site-header .global-nav-list>.current-menu-item>a{color:var(--boon-brown);background:var(--boon-paper);}

@media (min-width:1101px){
  .site-header .global-nav-list>li.menu-item-has-children{position:relative;}
  .site-header .global-nav-list>li.menu-item-has-children>.sub-menu{
    position:absolute;
    top:100%;
    left:0;
    z-index:40;
    display:block!important;
    min-width:164px;
    max-height:none!important;
    margin:0;
    padding:6px;
    border:1px solid rgba(61,38,24,.18);
    background:#fff;
    box-shadow:0 8px 18px rgba(38,25,17,.16);
    list-style:none;
    overflow:visible!important;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(7px);
    transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
  }
  .site-header .global-nav-list>li.menu-item-has-children:hover>.sub-menu,
  .site-header .global-nav-list>li.menu-item-has-children:focus-within>.sub-menu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
  }
  .site-header .global-nav-list>li>.sub-menu>li{margin:0;}
  .site-header .global-nav-list>li>.sub-menu>li>a{display:block;padding:10px 12px;color:var(--boon-ink);font-size:13px;text-decoration:none;}
  .site-header .global-nav-list>li>.sub-menu>li>a:hover{background:var(--boon-paper);color:var(--boon-brown);}
  .site-header .global-nav-list>li>.sub-menu .global-nav-name{font-size:13px;}
  .site-header .global-nav-list>li>.sub-menu .global-nav-description{margin-top:2px;font-size:8px;}
}

.site-footer{
  margin-top:0;
  border-top:4px solid var(--boon-brown);
  background:#29231f;
  color:rgba(255,255,255,.78);
}
.site-footer a{color:#fff;}
.site-footer .footer-nav{
  border-bottom:1px solid rgba(255,255,255,.18);
  background:#211c18;
}
.site-footer .footer-nav .container{padding-top:0;padding-bottom:0;}
.site-footer .footer-nav .menu,.site-footer .footer-nav .menu li{margin:0;border:0;background:transparent;}
.site-footer .footer-nav .menu li a{
  display:block;
  padding:14px 18px;
  border:0;
  color:rgba(255,255,255,.78);
  font-size:13px;
  text-decoration:none;
}
.site-footer .footer-nav .menu li a:hover{color:#fff;background:rgba(255,255,255,.08);}
.site-footer .site-footer-content{padding-top:38px;padding-bottom:24px;}
.site-footer .site-footer-content .widget,
.site-footer .site-footer-content .widget_nav_menu,
.site-footer .site-footer-content .widget_nav_menu .menu,
.site-footer .site-footer-content .widget_nav_menu .menu li{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.site-footer .site-footer-content .widget{margin-bottom:24px;}
.site-footer .site-footer-content .widget_nav_menu .menu li a{
  display:block;
  padding:8px 0!important;
  border:0!important;
  background:transparent!important;
  color:rgba(255,255,255,.82)!important;
  font-size:14px;
  text-decoration:none;
}
.site-footer .site-footer-content .widget_nav_menu .menu li a:hover{color:#fff!important;text-decoration:underline;}
.site-footer .site-footer-content p{color:rgba(255,255,255,.82);line-height:1.75;}
.site-footer .site-footer-content .profile_media{max-width:100%;height:auto;}
.site-footer .site-footer-content .media_outer{max-width:100%;}
.site-footer .site-footer-content .wp-block-image{margin:14px 0 0;}
.site-footer .site-footer-content .wp-block-image img{max-width:100%;height:auto;}
.site-footer .site-footer-content #block-14 .wp-block-image img{filter:brightness(0) invert(1);}
.site-footer .site-footer-copyright{padding-top:18px;padding-bottom:18px;border-top:1px solid rgba(255,255,255,.18);font-size:12px;}
.site-footer .site-footer-copyright,.site-footer .site-footer-copyright a{color:rgba(255,255,255,.68);}
.site-footer .wp-block-image img{filter:none;}

.boon-siteMobileMenu{display:none;}

@media (max-width:1100px){
  .site-header .site-header-container{justify-content:center;}
  .site-header .global-nav{display:none;}
  .boon-siteMobileMenu{position:fixed;top:16px;left:16px;z-index:2200;display:block;}
  .boon-siteMobileMenu summary{display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(38,33,30,.55);background:#fff;box-shadow:0 2px 6px rgba(24,16,11,.14);cursor:pointer;list-style:none;}
  .boon-siteMobileMenu summary::-webkit-details-marker{display:none;}
  .boon-siteMobileMenu summary>span{width:18px;height:12px;background:linear-gradient(var(--boon-ink),var(--boon-ink)) 0 0/100% 2px no-repeat,linear-gradient(var(--boon-ink),var(--boon-ink)) 0 50%/100% 2px no-repeat,linear-gradient(var(--boon-ink),var(--boon-ink)) 0 100%/100% 2px no-repeat;}
  .boon-siteMobileMenu[open] summary>span{width:20px;height:20px;background:linear-gradient(45deg,transparent 46%,var(--boon-ink) 47%,var(--boon-ink) 53%,transparent 54%),linear-gradient(-45deg,transparent 46%,var(--boon-ink) 47%,var(--boon-ink) 53%,transparent 54%);}
  .boon-siteMobileMenu nav{position:absolute;top:46px;left:0;width:min(238px,calc(100vw - 32px));max-height:calc(100dvh - 72px);overflow-y:auto;border:1px solid var(--boon-line);background:#fff;box-shadow:0 10px 28px rgba(24,16,11,.2);}
  .boon-siteMobileMenu nav a{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;border-bottom:1px solid var(--boon-line);color:var(--boon-ink);font-size:14px;font-weight:700;text-decoration:none;}
  .boon-siteMobileMenu nav a:last-child{border-bottom:0;}
  .boon-siteMobileMenu nav a:hover{color:var(--boon-brown);background:var(--boon-paper);}
  .boon-siteMobileMenu nav small{color:var(--boon-brown);font-size:9px;font-weight:800;letter-spacing:.09em;}
}

@media (max-width:767px){
  .site-header{padding:8px 0;}
  .site-header .site-header-container{min-height:48px;justify-content:center;}
  .site-header .site-header-logo img{max-width:205px;max-height:48px;}
  .site-header .global-nav{display:none;}
  .vk-mobile-nav-menu-btn{
    position:absolute!important;
    top:16px!important;
    left:16px!important;
    display:grid!important;
    width:38px!important;
    height:38px!important;
    place-items:center;
    border:1px solid rgba(38,33,30,.55)!important;
    border-radius:0!important;
    background:#fff!important;
    text-indent:0!important;
    z-index:2100;
  }
  .vk-mobile-nav-menu-btn::before{
    width:18px;
    height:12px;
    background:linear-gradient(var(--boon-ink),var(--boon-ink)) 0 0/100% 2px no-repeat,
      linear-gradient(var(--boon-ink),var(--boon-ink)) 0 50%/100% 2px no-repeat,
      linear-gradient(var(--boon-ink),var(--boon-ink)) 0 100%/100% 2px no-repeat;
    content:"";
  }
  .vk-mobile-nav-menu-btn.menu-open::before{
    width:auto;
    height:auto;
    background:none;
    color:var(--boon-ink);
    content:"×";
    font-size:29px;
    font-weight:300;
    line-height:1;
  }
}

@media (max-width:1100px){
  .vk-mobile-nav-menu-btn{display:none!important;}
}
