:root{ --fixed-header-h: 72px; }
@media (max-width:1366px){ :root{ --fixed-header-h: 82px; } }

:root{
  --font-display: 'Shippori Mincho B1', serif;
  --font-body: 'Noto Sans JP', sans-serif;
  --font-numeric: 'Oswald', sans-serif;
}

  *{box-sizing:border-box}
  html{scroll-behavior:smooth;background:#1B1815}
  body{margin:0;background:#1B1815;color:#33302A;font-family:'Noto Sans JP',sans-serif;-webkit-font-smoothing:antialiased;overflow-x:clip}
  a{color:#A24A2A;text-decoration:none}
  a:hover{color:#7f3820}
  ::selection{background:#A24A2A;color:#F3ECDC}
  .grain::before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.5;mix-blend-mode:multiply;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.35'/%3E%3C/svg%3E");}
  .reveal{transition:opacity 1.05s cubic-bezier(.16,1,.3,1),transform 1.05s cubic-bezier(.16,1,.3,1)}
  .js .reveal{opacity:0;transform:translateY(46px)}
  .js .reveal.in{opacity:1;transform:none}
  .mask{overflow:hidden;display:block}
  .rise{display:block;transition:transform 1.15s cubic-bezier(.16,1,.3,1)}
  .js .rise{transform:translateY(112%)}
  .js .js-rise.in .rise{transform:translateY(0)}
  .navlink{position:relative}
  .navlink::after{content:'';position:absolute;left:0;bottom:-4px;width:0;height:1px;background:#fff;transition:width .35s ease}
  .navlink:hover::after{width:100%}
  .navlink.current{color:#C89B5B !important}
  .navlink.current::after{width:0 !important}
  
  .has-sub{position:relative;display:flex;align-items:center}
  .has-sub>.navlink{display:inline-flex;align-items:center;gap:6px}
  .caret{display:inline-block;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid #C89B5B;transition:transform .28s ease}
  .has-sub:hover .caret{transform:rotate(180deg)}
  .subnav{position:absolute;top:100%;left:-14px;min-width:210px;background:rgba(20,17,14,.98);border:1px solid rgba(200,155,91,.22);padding:8px 0;display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .26s ease,transform .26s ease,visibility .26s;z-index:60;box-shadow:0 18px 40px rgba(0,0,0,.4)}
  .subnav::before{content:'';position:absolute;bottom:100%;left:0;right:0;height:16px}
  .has-sub:hover .subnav{opacity:1;visibility:visible;transform:translateY(0)}
  .subnav a{padding:12px 22px;color:#F3ECDC;font-size:13.5px;letter-spacing:.06em;white-space:nowrap;transition:background .2s ease,color .2s ease}
  .subnav a:hover{background:rgba(200,155,91,.14);color:#C89B5B}
  
  .mobile-panel .m-sub{padding-left:22px !important;font-size:14.5px !important;color:#D8C9A6 !important;border-bottom:1px solid rgba(200,155,91,.08) !important}
  .mobile-panel .m-sub::before{content:'\2514';color:#C89B5B;margin-right:8px}
  .cta-hover{transition:background .3s,border-color .3s,color .3s}
  .cta-hover:hover{background:#C89B5B !important;border-color:#C89B5B !important;color:#1B1815 !important}
  .next-card{transition:background .35s ease,color .35s ease}
  .next-card:hover{background:#C89B5B !important}
  .next-card:hover .next-arrow{color:#1B1815 !important}
  .next-card:hover .np-eyebrow{color:#5a4326 !important}
  .next-card:hover .np-title{color:#1B1815 !important}
  .next-card:hover .np-desc{color:#3a2f1c !important}
  img.imgslot{--_r:0;background:#d5d3cf}
  .totop{opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .4s ease,transform .4s ease,visibility .4s,background .25s ease,border-color .25s ease}
  .totop.show{opacity:1;visibility:visible;transform:translateY(0)}
  .totop:hover{background:#C89B5B !important;border-color:#C89B5B !important;color:#141110 !important;box-shadow:0 8px 22px rgba(20,17,14,.35)}
  .totop.show:hover{transform:translateY(-4px)}
  .totop svg{transition:transform .3s ease}
  .totop:hover svg{transform:translateY(-2px)}
  
  .hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:46px;height:46px;padding:0;background:transparent;border:0;cursor:pointer}
  .hamburger span{display:block;width:26px;height:2px;background:#F3ECDC;transition:transform .32s ease,opacity .25s ease}
  .site-header.menu-open .hamburger span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  .site-header.menu-open .hamburger span:nth-child(2){opacity:0}
  .site-header.menu-open .hamburger span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
  .mobile-panel{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:rgba(20,17,14,.97);border-top:1px solid rgba(200,155,91,.22);padding:8px 26px 24px}
  .mobile-panel a{color:#F3ECDC;font-size:16px;letter-spacing:.08em;font-weight:500;padding:13px 2px;border-bottom:1px solid rgba(200,155,91,.14);opacity:0;transform:translateY(10px);transition:opacity .3s ease,transform .45s cubic-bezier(.16,1,.3,1)}
  .mobile-panel .m-cta{margin-top:12px;border-bottom:0;background:#A24A2A;text-align:center;font-weight:700;letter-spacing:.12em;padding:16px}
  @media (max-width:1366px){
    .desktop-nav{display:none !important}
    .hamburger{display:flex}
    .mobile-panel{display:flex;max-height:0;opacity:0;overflow:hidden;transform:translateY(-6px);pointer-events:none;transition:max-height .44s cubic-bezier(.16,1,.3,1),opacity .3s ease,transform .44s cubic-bezier(.16,1,.3,1)}
    .site-header.menu-open{background:rgba(20,17,14,.97) !important}
    .site-header.menu-open .mobile-panel{max-height:calc(100dvh - 72px);overflow-y:auto;opacity:1;transform:none;pointer-events:auto}
    .site-header.menu-open .mobile-panel a{opacity:1;transform:none}
    .site-header.menu-open .mobile-panel a:nth-child(1){transition-delay:.06s}
    .site-header.menu-open .mobile-panel a:nth-child(2){transition-delay:.10s}
    .site-header.menu-open .mobile-panel a:nth-child(3){transition-delay:.14s}
    .site-header.menu-open .mobile-panel a:nth-child(4){transition-delay:.18s}
    .site-header.menu-open .mobile-panel a:nth-child(5){transition-delay:.22s}
    .site-header.menu-open .mobile-panel a:nth-child(6){transition-delay:.26s}
    .site-header.menu-open .mobile-panel a:nth-child(7){transition-delay:.30s}
    .site-header.menu-open .mobile-panel a:nth-child(8){transition-delay:.34s}
    .site-header.menu-open .mobile-panel a:nth-child(9){transition-delay:.38s}
    .site-header.menu-open .mobile-panel a:nth-child(10){transition-delay:.42s}
    .site-header.menu-open .mobile-panel a:nth-child(11){transition-delay:.46s}
    .site-header.menu-open .mobile-panel a:nth-child(12){transition-delay:.50s}
    .site-header.menu-open .mobile-panel a:nth-child(13){transition-delay:.54s}
  }
  @media (max-width:960px){
    .msg-grid{grid-template-columns:1fr !important}
    .msg-grid .msg-figure{order:-1;aspect-ratio:16/10 !important}
    .future-grid{grid-template-columns:1fr !important}
    .footer-grid{grid-template-columns:1fr !important;gap:36px !important}
  }
  @media (min-width:641px) and (max-width:1024px){
    .cta-bar-inner{flex-direction:column !important;align-items:stretch !important;gap:26px !important}
    .cta-btns{width:100% !important;flex-wrap:nowrap !important;gap:16px !important}
    .cta-btn{flex:1 1 0 !important}
    .footer-grid{grid-template-columns:1fr 1fr 1fr !important;gap:32px 40px !important}
    .footer-grid>div:first-child{grid-column:1 / -1 !important}
  }
  @media (max-width:640px){
    .totop{right:18px;bottom:18px;width:46px;height:46px}
    .page-hero h1{font-size:34px !important}
    .philo-word{font-size:32px !important;letter-spacing:.04em !important}
    .sec-pad{padding-left:22px !important;padding-right:22px !important}
    .cta-bar-inner{flex-direction:column !important;text-align:center !important}
    .cta-btns{flex-direction:column !important;width:100% !important;gap:12px !important}
    .cta-btn{width:100% !important}
  }
  @media (max-width:960px){
    .cards3,.steps4,.stat4,.vint-grid{grid-template-columns:1fr 1fr !important}
    .contact-grid{grid-template-columns:1fr !important}
  }
  @media (max-width:640px){
    .cards3,.steps4,.svc-grid,.vint-grid{grid-template-columns:1fr !important}
    .info-row{grid-template-columns:110px 1fr !important}
  }  .cards3>*,.svc-grid>*,.stat4>*,.steps4>*,.vint-grid>*,.contact-grid>*,.ba2>*,.msg-grid>*,.future-grid>*,.footer-grid>*{min-width:0}

.js .hero-in .rise{transform:translateY(0)}
.js .rise.in{transform:translateY(0)}
@keyframes spUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes spFade{from{opacity:0}to{opacity:1}}
@keyframes spBar{0%{transform:scaleX(0)}60%{transform:scaleX(.72)}100%{transform:scaleX(1)}}
@keyframes spExit{from{transform:translateY(0)}to{transform:translateY(-100%)}}
.splash{position:fixed;inset:0;z-index:200;overflow:hidden;background:#1B1815;will-change:transform}
.splash.exit{animation:spExit .9s cubic-bezier(.7,0,.2,1) forwards}
.splash-logo{animation:spUp 1.1s cubic-bezier(.16,1,.3,1) both}
.splash-tag{animation:spUp 1.1s cubic-bezier(.16,1,.3,1) .35s both}
.splash-bar-wrap{animation:spFade 1s ease .8s both}
.splash-bar{transform-origin:left center;animation:spBar 2.6s cubic-bezier(.6,0,.2,1) .9s both}
.vm-text{position:relative}
.vm-text::after{content:'';position:absolute;left:0;bottom:-3px;width:0;height:1px;background:currentColor;transition:width .35s ease}
.card-wrap:hover .card-arrow .vm-text::after{width:100%}
.news-link:hover .vm-text::after{width:100%}
.va-link{position:relative;text-decoration:none}
.va-link::after{content:'';position:absolute;left:0;bottom:-4px;width:0;height:1px;background:#fff;transition:width .35s ease}
.va-link:hover::after{width:100%}
.card-wrap:hover img.imgslot{filter:none}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(9px)}}
.scrollcue{animation:bob 2.2s ease-in-out infinite}
@media (max-width:1024px){
  .news-link{flex-direction:column}
  .news-label{width:100% !important;flex:none !important;padding:8px 16px !important;justify-content:center !important;font-size:15px !important;letter-spacing:.2em !important}
  .news-body{flex-direction:column !important;align-items:flex-start !important;gap:10px !important;padding:22px 26px !important}
  .news-title{white-space:normal !important;overflow:visible !important;line-height:1.6 !important}
}
@media (min-width:1025px){
  .madoguchi-grid .card-wrap>div:first-child{aspect-ratio:16/9 !important}
  .madoguchi-grid .card-wrap>div:last-child{padding:18px 22px 50px !important}
  .madoguchi-grid .card-wrap p{font-size:15.5px !important;line-height:1.75 !important}
  #madoguchi .up-root h2{font-size:clamp(28px,3.4vw,44px) !important}
}
@media (max-width:1024px){
  .madoguchi-grid{grid-template-columns:1fr !important}
  .blog-grid .card-wrap h3{font-size:18px !important}
  .footer-grid{grid-template-columns:1fr 1fr 1fr !important;gap:32px 40px !important}
  .footer-grid>div:first-child{grid-column:1 / -1 !important}
}
@media (min-width:641px) and (max-width:1024px){
  .madoguchi-grid .card-wrap{display:flex !important;align-items:stretch !important}
  .madoguchi-grid .card-wrap>div:first-child{flex:0 0 40% !important;aspect-ratio:auto !important;align-self:stretch !important}
  .madoguchi-grid .card-wrap>div:first-child img.imgslot{position:absolute !important;inset:0 !important}
  .madoguchi-grid .card-wrap>div:last-child{flex:1 1 auto !important;min-width:0;padding-bottom:26px !important}
  .madoguchi-grid .card-arrow{position:static !important;margin-top:16px !important}
}
@media (max-width:640px){
  .stats-grid{grid-template-columns:repeat(2,1fr) !important;row-gap:40px !important}
  .stats-grid>div{border-right:0 !important}
  .hero-content{padding-bottom:98px !important}
  .hero-root h1{font-size:34px !important;line-height:1.34 !important}
  .hero-sub{font-size:24px !important;letter-spacing:.08em !important}
  .blog-grid{grid-template-columns:1fr !important}
  .footer-grid{grid-template-columns:1fr !important;gap:36px !important}
  .cta-lg{white-space:nowrap !important;font-size:18px !important;padding:22px 30px !important;max-width:100% !important}
  .cta-lg span{font-size:24px !important}
  .sekai-row{flex-direction:column !important;align-items:stretch !important;max-width:none !important}
  .sekai-row>div{width:72% !important;flex:0 0 auto !important;margin-left:0 !important}
  .sekai-row>div:nth-child(1){align-self:flex-start !important;margin-top:0 !important}
  .sekai-row>div:nth-child(2){align-self:flex-end !important;margin-top:-12% !important}
  .sekai-row>div:nth-child(3){align-self:flex-start !important;margin-top:-12% !important}
  .sekai-tagline{font-size:24px !important;letter-spacing:.06em !important}
  .works-grid{grid-template-columns:1fr !important;gap:0 !important}
  .works-grid>div{grid-column:auto !important;flex:0 0 auto !important}
  .works-grid>div:nth-child(1){width:88% !important;justify-self:start !important;margin-top:0 !important}
  .works-grid>div:nth-child(2){width:66% !important;justify-self:end !important;margin-top:34px !important}
  .works-grid>div:nth-child(3){width:72% !important;justify-self:start !important;margin-top:38px !important}
  .works-grid>div:nth-child(4){width:82% !important;justify-self:end !important;margin-top:34px !important}
  .works-grid>div:nth-child(5){width:62% !important;justify-self:start !important;margin-top:38px !important}
}

.hub-card{transition:border-color .3s ease,box-shadow .3s ease;position:relative}
.hub-card>div:last-child{padding-bottom:54px !important}
.hub-card .card-arrow{position:absolute;right:22px;bottom:20px}
.hub-card:hover{border-color:#C89B5B;box-shadow:0 16px 36px rgba(20,17,14,.16)}
.hub-card:hover .vm-text::after{width:100%}
.hub-card:hover .vm-arrow{transform:translateX(4px)}
.hub-card:hover img.imgslot{filter:brightness(1.04)}

@keyframes vfade{0%{opacity:0}4%{opacity:1}30%{opacity:1}34%{opacity:0}100%{opacity:0}}
.vslide{position:absolute;inset:0;opacity:0;animation:vfade 12s infinite}
.vslide:nth-child(1){animation-delay:0s}
.vslide:nth-child(2){animation-delay:4s}
.vslide:nth-child(3){animation-delay:8s}
.vslide img.imgslot{position:absolute;inset:0}

@media (max-width:640px){
  .cards3,.steps4,.svc-grid,.vint-grid,.voice-grid{grid-template-columns:1fr !important}
}

:root{ --ogn-logo-mask: url("data:image/webp;base64,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"); }

.ogn-top{ color:#1B1815; }

.splash{ display:none; }
.js .splash{ display:block; }

.js .up-root{ opacity:0; }

@media (max-width:1366px){
  html:not(.js) .mobile-panel{ max-height:none !important; opacity:1 !important; transform:none !important; pointer-events:auto !important; overflow:visible !important; }
}

.desktop-nav a{ white-space:nowrap; }
@media (min-width:1367px) and (max-width:1440px){
  .desktop-nav{ gap:18px !important; }
}

@media (max-width:1366px){
  .site-header.menu-open .mobile-panel a:nth-child(14){ transition-delay:.58s; }
}

.cta-btn--tel{ display:inline-flex; align-items:center; justify-content:center; gap:10px; border:1px solid rgba(200,155,91,.5); color:#F3ECDC; font-family:'Oswald',sans-serif; font-size:20px; letter-spacing:.06em; padding:15px 26px; }
.cta-btn--form{ display:inline-flex; align-items:center; justify-content:center; gap:8px; background:#A24A2A; color:#F3ECDC; font-size:15px; letter-spacing:.1em; font-weight:700; padding:16px 30px; border:1px solid #A24A2A; }

a[href^="tel:"]{ min-height:44px; display:inline-flex; align-items:center; }

.footer-grid p a[href^="tel:"], td a[href^="tel:"], div a[href^="tel:"]:not(.cta-btn--tel){
  min-height:0; display:inline-block; padding-block:12px; margin-block:-12px;
}

.site-header > a{ min-height:44px; }

.page-hero .sec-pad a{ display:inline-block; padding-block:14px; margin-block:-14px; }

.va-link{ padding-block:9px; margin-block:-9px; }

.footer-grid a.navlink{ display:inline-flex; align-items:center; min-height:44px; }

.desktop-nav a.navlink{ min-height:44px; }

.footer-grid a.navlink::after, .desktop-nav a.navlink::after{ bottom:calc(50% - 0.6em - 4px); }

.subnav a{ min-height:44px; display:flex; align-items:center; }

.catchip{ min-height:44px; }

:root{
  
  --dyn-bg:        var(--background-color, #ffffff);   
  --dyn-surface:   var(--temporary-color, #f4f4f2);    
  --dyn-text:      var(--text-color, #222222);         
  --dyn-heading:   var(--text-color, #111111);         
  --dyn-muted:     var(--sub-color, #8a8a8a);          
  --dyn-border:    var(--sub-color, #dddddd);          
  --dyn-accent:    var(--main-color, #1e3a5f);         
  --dyn-accent-2:  var(--link-color, var(--main-color, #1e3a5f)); 
  --dyn-on-accent: #ffffff;

  --dyn-font-display: var(--font-display, "Noto Serif JP","Yu Mincho",serif);
  --dyn-font-body:    var(--font-body, "Noto Sans JP","Yu Gothic",sans-serif);
  --dyn-font-numeric: var(--font-numeric, "EB Garamond","Noto Serif JP",serif);

  --dyn-radius: 6px;
  
  --dyn-card-min: 300px;
  --dyn-gap: 32px;
}

[class*="_breadcrumb"], .p-breadcrumb{ background:var(--dyn-bg) !important; }
.p-breadcrumb__inner{
  list-style:none; margin:0 auto; padding:14px 24px;
  max-width:1200px; display:flex; flex-wrap:wrap; align-items:center;
}
.p-breadcrumb__item{
  display:inline-flex; align-items:center;
  color:var(--dyn-muted) !important; font-family:var(--dyn-font-body);
  font-size:.78rem; letter-spacing:.04em;
}
.p-breadcrumb__item a{ color:var(--dyn-muted) !important; text-decoration:none; }
.p-breadcrumb__item a:hover{ color:var(--dyn-accent-2) !important; text-decoration:underline; }
.p-breadcrumb__item:last-child{ color:var(--dyn-text) !important; }   

.p-breadcrumb__item + .p-breadcrumb__item::before{
  content:"\203A"; margin:0 .6em; color:var(--dyn-border) !important; font-size:.95em;
}
.p-breadcrumb meta{ display:none; }

[class*="_article_header"] .ja, [class*="_article_header"] h1, [class*="_article_header"] h2{
  color:var(--dyn-heading) !important; font-family:var(--dyn-font-display) !important;
  text-shadow:0 2px 14px rgba(0,0,0,.5) !important;
}
[class*="_article_header"] .en{ color:var(--dyn-muted) !important; font-family:var(--dyn-font-numeric) !important; letter-spacing:.1em; text-shadow:0 1px 10px rgba(0,0,0,.5) !important; }

.pagination_num, .pagination_prev, .pagination_next{
  font-family:var(--dyn-font-numeric); color:var(--dyn-text) !important;
  border:1px solid var(--dyn-border) !important; border-radius:var(--dyn-radius);
  min-width:40px; height:40px; display:inline-flex; align-items:center; justify-content:center; text-decoration:none;
}
.pagination_num.current{ background:var(--dyn-accent) !important; border-color:var(--dyn-accent) !important; color:var(--dyn-on-accent) !important; }
.pagination_num:hover, .pagination_prev:hover, .pagination_next:hover{ border-color:var(--dyn-accent-2) !important; color:var(--dyn-accent-2) !important; }

[class*="_pagenation"] a{ border-color:var(--dyn-accent) !important; color:var(--dyn-text) !important; }
[class*="_pagenation"] span.current, [class*="_pagenation"] .current, [class*="_pagenation"] .active{
  background:var(--dyn-accent) !important; border-color:var(--dyn-accent) !important; color:var(--dyn-on-accent) !important;
}
[class*="_pagenation"] a:hover{ border-color:var(--dyn-accent-2) !important; color:var(--dyn-accent-2) !important; }
.pe-none{ opacity:.3; pointer-events:none; }

[class*="_post_list"], [class*="_post_wrap"]{ } 

[class*="_post_list"]{ display:grid !important; grid-template-columns:repeat(auto-fill, minmax(var(--dyn-card-min), 1fr)) !important; gap:var(--dyn-gap) !important; }

[class*="_post_wrap"]{
  
  display:flex !important; flex-direction:column;
  margin:0 !important;   
  width:auto !important; max-width:none !important; text-decoration:none;
  background:var(--dyn-surface) !important; border:1px solid var(--dyn-border) !important;
  border-radius:var(--dyn-radius); overflow:hidden;
  transition:transform .3s ease, border-color .3s ease;
}
[class*="_post_wrap"]:hover{ transform:translateY(-4px); border-color:var(--dyn-accent-2) !important; }
[class*="_post_wrap"] > a{ display:flex; flex-direction:column; flex:1 1 auto; color:inherit; }  

[class*="_post_img"]{ width:100%; display:block; border-radius:0; aspect-ratio:16/10; overflow:hidden; }
[class*="_post_img"] img{ width:100%; height:100%; object-fit:cover; display:block; }

[class*="_post_status"]{ border:none !important; background:transparent !important; margin:14px 16px 0 !important; padding:0 !important; display:flex !important; flex-wrap:wrap; justify-content:flex-start !important; gap:10px; align-items:center; }
[class*="_post_status"]:has([class*="_title-excerpt"]){ display:block !important; }   
[class*="_post_title-excerpt"]{ padding:10px 16px 16px !important; flex:1 1 auto; }   
[class*="_post_status"]:has([class*="_title-excerpt"]) [class*="_title-excerpt"]{ padding:10px 0 16px !important; }   
[class*="_post_title"]{ font-family:var(--dyn-font-display) !important; color:var(--dyn-heading) !important; font-weight:700 !important; line-height:1.5; }
[class*="_post_excerpt"]{ color:var(--dyn-muted) !important; }
[class*="_post_date"]{ font-family:var(--dyn-font-numeric) !important; color:var(--dyn-muted) !important; }

[class*="_post_category"]:not([class*="_sidebar"]), [class*="_post_status"] > span:last-child{
  
  width:auto; max-width:none !important;
  background:var(--dyn-bg) !important; border:1px solid var(--dyn-accent) !important;
  border-radius:var(--dyn-radius); padding:2px 8px; color:var(--dyn-accent) !important;
}
.parts-blog-ex-tag_wrap{ display:flex; flex-wrap:wrap; gap:6px; padding:0 16px 14px; }
.parts-blog-ex_tag{ font-size:.72rem; color:var(--dyn-muted) !important; background:var(--dyn-surface) !important; border:1px solid var(--dyn-border); border-radius:var(--dyn-radius); padding:2px 8px; }

[class*="_section"]:has([class*="_post_list"]) > h2,
[class*="_section"] > h2.f_meiryo{ display:none !important; }

[class*="_post_list"]::after{ content:none !important; display:none !important; }

[class*="_sidebar"], .recent_posts_wrap{ color:var(--dyn-text); }

[class*="_sidebar"] h3{ color:var(--dyn-heading) !important; padding-left:0 !important; padding-right:0 !important; }
[class*="_sidebar_post_title"], .recent_post_title{ font-family:var(--dyn-font-display) !important; color:var(--dyn-heading) !important; }

.recent_post_title{ background:transparent !important; padding-left:0 !important; }
[class*="_sidebar_date"], .recent_post_date{ font-family:var(--dyn-font-numeric) !important; color:var(--dyn-muted) !important; }

[class*="_sidebar"] ul li, .recent_posts_wrap ul li{ border-bottom-color:var(--dyn-border) !important; }

[class*="_sidebar_post_category_count"]{ background:var(--dyn-surface) !important; color:var(--dyn-text) !important; border:1px solid var(--dyn-border); border-radius:var(--dyn-radius); padding:0 8px !important; }

[class*="category_post_count"] li{ border-left:0 !important; border-right:0 !important; }

[class*="category_post_count"] li a{ display:flex; justify-content:space-between; align-items:center; gap:8px; padding-left:0 !important; padding-right:0 !important; }

.parts-blog-ex_text{ font-family:var(--dyn-font-body); color:var(--dyn-text) !important; line-height:1.9; }
.parts-blog-ex_text h2, .parts-blog-ex_text h3{ font-family:var(--dyn-font-display) !important; color:var(--dyn-heading) !important; }
.signature_wrap{ font-family:var(--dyn-font-display); color:var(--dyn-muted) !important; border-top:1px solid var(--dyn-border); padding-top:16px; }
.slick-prev, .slick-next{ color:var(--dyn-accent-2) !important; }

.contact_section, [class*="_section_form"], [class*="_section_content"], [class*="_content_wrap"], [class*="_content"]{ background:var(--dyn-bg) !important; color:var(--dyn-text) !important; }
[class*="_form_wrap"]{ max-width:720px; margin:0 auto; }
[class*="_form_wrap"] label, [class*="_form_wrap"] dt, [class*="_form_wrap"] .ja, [class*="_form_wrap"] .en{ color:var(--dyn-text) !important; }

[class*="_form_wrap"] dd input:not([type="checkbox"]):not([type="radio"]),
[class*="_form_wrap"] dd select{ width:100% !important; max-width:none !important; padding:14px 16px !important; font-size:16px !important; min-height:54px !important; background:var(--dyn-surface) !important; color:var(--dyn-text) !important; border:1px solid var(--dyn-border) !important; border-radius:var(--dyn-radius); }
[class*="_form_wrap"] textarea, .form_textarea textarea{ width:100% !important; padding:14px 16px !important; font-size:16px !important; min-height:220px !important; background:var(--dyn-surface) !important; color:var(--dyn-text) !important; border:1px solid var(--dyn-border) !important; border-radius:var(--dyn-radius); }

[class*="_form_wrap"] input[type="checkbox"], [class*="_form_wrap"] input[type="radio"]{ width:18px !important; height:18px !important; min-height:0 !important; padding:0 !important; margin:0 8px 0 0 !important; vertical-align:-3px; accent-color:var(--dyn-accent); flex:none !important; }

.required{ display:inline-flex !important; align-items:center !important; justify-content:center !important; line-height:1 !important; white-space:nowrap !important; padding:6px 12px !important; border-radius:var(--dyn-radius) !important; background:var(--dyn-accent) !important; color:var(--dyn-on-accent) !important; }
.error{ color:var(--dyn-accent-2) !important; }

.form_textarea, .form_text_dt{ border:none !important; background:transparent !important; }

.contact_submit button, .contact_submit input{ background:var(--dyn-accent) !important; color:var(--dyn-on-accent) !important; border:none !important; border-radius:var(--dyn-radius) !important; }

.contact_submit input[name="back"]{ background:transparent !important; color:var(--dyn-text) !important; border:1px solid var(--dyn-border) !important; }

.contact_submit input[disabled]{ opacity:.5; cursor:not-allowed; }

.label_file_upload{ display:block; width:100%; padding:12px 14px; cursor:pointer;
  background:var(--dyn-surface) !important; color:var(--dyn-text) !important;
  border:1px solid var(--dyn-border) !important; border-radius:var(--dyn-radius); }
.label_file_upload button{ background:var(--dyn-bg) !important; color:var(--dyn-text) !important;
  border:1px solid var(--dyn-border) !important; border-radius:var(--dyn-radius) !important; pointer-events:none; }
.label_file_upload span, #file-chosen, [id$="filechosen"]{ color:var(--dyn-muted) !important; }
.des{ color:var(--dyn-muted) !important; }

.attention{ color:var(--dyn-muted) !important; }

[class*="_form_wrap"] dd input.zip:not([type="checkbox"]):not([type="radio"]){ width:9em !important; max-width:9em !important; display:inline-block; margin-right:8px; }

.privacypolicy{ background:var(--dyn-surface) !important; border:1px solid var(--dyn-border); border-radius:var(--dyn-radius); padding:16px; color:var(--dyn-muted) !important; }
.privacypolicy-link{ color:var(--dyn-accent-2) !important; }

[class*="_content"] [class*="btn"], [class*="_content"] a[class*="round"]{ border-radius:var(--dyn-radius) !important; }

.formWrapbg, .formWrap, .form, [class*="formSec"]{ background:var(--dyn-bg) !important; color:var(--dyn-text) !important; }
.formWrap{ max-width:720px; margin:0 auto; }
.formBox{ margin-bottom:20px; }
.formBox dt, .formBox label{ color:var(--dyn-text) !important; }
.formBox dd input:not([type="checkbox"]):not([type="radio"]),
.formBox dd select,
.formWrap input[type="text"], .formWrap input[type="email"], .formWrap input[type="tel"]{
  width:100% !important; max-width:none !important; padding:14px 16px !important; font-size:16px !important;
  min-height:54px !important; background:var(--dyn-surface) !important; color:var(--dyn-text) !important;
  border:1px solid var(--dyn-border) !important; border-radius:var(--dyn-radius);
}
.formBox dd textarea, .formWrap textarea{
  width:100% !important; padding:14px 16px !important; font-size:16px !important; min-height:220px !important;
  background:var(--dyn-surface) !important; color:var(--dyn-text) !important;
  border:1px solid var(--dyn-border) !important; border-radius:var(--dyn-radius);
}
.formWrap input[type="checkbox"], .formWrap input[type="radio"]{
  width:18px !important; height:18px !important; min-height:0 !important; padding:0 !important; margin:0 8px 0 0 !important;
  vertical-align:-3px; accent-color:var(--dyn-accent); flex:none !important;
}

.req, .formBox .req{
  display:inline-flex !important; align-items:center !important; justify-content:center !important; line-height:1 !important;
  white-space:nowrap !important; padding:6px 12px !important; border-radius:var(--dyn-radius) !important;
  background:var(--dyn-accent) !important; color:var(--dyn-on-accent) !important;
}
.wpcf7-not-valid-tip, .wpcf7-response-output{ color:var(--dyn-accent-2) !important; }

input.wpcf7-submit, .formWrap button[type="submit"]{
  background:var(--dyn-accent) !important; color:var(--dyn-on-accent) !important;
  border:none !important; border-radius:var(--dyn-radius) !important;
  min-height:54px !important; padding:14px 28px !important; font-size:16px !important; cursor:pointer;
}

[class*="_section"] h2, [class*="_section"] h3{
  border-radius:0 !important; background:transparent !important; border:none !important; text-align:inherit !important;
}

.parts040506_notice-news{ background:var(--dyn-bg) !important; color:var(--dyn-text) !important; }
.parts040506_notice-news *{ color:var(--dyn-text) !important; }
.parts040506_notice-news .title, .parts040506_notice-news .title a{ color:var(--dyn-heading) !important; }
.parts040506_notice-news [class*="date"], .parts040506_notice-news .f_yugothic{ font-family:var(--dyn-font-numeric) !important; color:var(--dyn-muted) !important; }
.parts040506_notice-news .more{ white-space:nowrap !important; color:var(--dyn-accent-2) !important; }
.parts040506_notice-news a{ color:var(--dyn-accent-2) !important; }

[class*="_blog_title_wrap"]{ font-family:var(--dyn-font-display) !important; color:var(--dyn-heading) !important; }
[class*="_blog_thumbnail"]{ border-radius:var(--dyn-radius); }

[class*="_blog"] .card{ background:var(--dyn-surface) !important; border-color:var(--dyn-border) !important; border-radius:var(--dyn-radius) !important; }
[class*="_blog"] .card-title, [class*="_blog"] .card-text{ color:var(--dyn-text) !important; }
[class*="_blog"] .card-title{ font-family:var(--dyn-font-display) !important; }

[class*="parts"] .text-dark{ color:var(--dyn-text) !important; }
[class*="parts"] .bg-light{ background:var(--dyn-surface) !important; }
.card-header.bg-light{ background:var(--dyn-accent) !important; color:var(--dyn-on-accent) !important; }

.privacy{ max-width:880px; margin:0 auto; padding:64px 24px; color:var(--dyn-text); font-family:var(--dyn-font-body); line-height:1.9; }
.privacy__title{ font-family:var(--dyn-font-display); color:var(--dyn-heading); font-size:clamp(1.8rem,4vw,2.6rem); }
.privacy__subtitle{ font-family:var(--dyn-font-display); color:var(--dyn-heading); font-size:1.2rem; margin-top:8px; }
.privacy__lead{ color:var(--dyn-muted); margin:24px 0 40px; }
.privacy-item{ margin-bottom:32px; }
.privacy-item__title{ font-family:var(--dyn-font-display); color:var(--dyn-heading); border-left:3px solid var(--dyn-accent); padding-left:12px; margin-bottom:12px; }
.privacy-item__body{ color:var(--dyn-text); }

.privacy-item__list{ list-style:none; counter-reset:pp; margin:8px 0; padding:0; }
.privacy-item__list li{ counter-increment:pp; padding-left:2.2em; text-indent:-2.2em; margin:4px 0; color:var(--dyn-text); }
.privacy-item__list li::before{ content:"(" counter(pp) ") "; }

.subpage-header{ position:relative; padding:calc(72px + var(--fixed-header-h, 0px)) 24px 72px; background:var(--dyn-surface); text-align:center; overflow:hidden; }
.subpage-header__bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.45; z-index:0; }
.subpage-header__inner{ position:relative; z-index:1; }
.subpage-header__title{ font-family:var(--dyn-font-display); color:var(--dyn-heading); font-size:clamp(1.8rem,5vw,3rem); line-height:1.3; text-shadow:0 2px 14px rgba(0,0,0,.5); }
.subpage-header__en{ font-family:var(--dyn-font-numeric); color:var(--dyn-muted); letter-spacing:.12em; margin-top:8px; }

.thanks, .notfound{ max-width:760px; margin:0 auto; padding:calc(80px + var(--fixed-header-h, 0px)) 24px 96px; text-align:center; }

.not-found{ padding-top: calc(var(--fixed-header-h, 0px) + 24px); }
.thanks__title, .notfound__title{ font-family:var(--dyn-font-display); color:var(--dyn-heading); font-size:clamp(1.8rem,5vw,2.6rem); line-height:1.3; margin-bottom:28px; }
.thanks__lead, .notfound__lead{ color:var(--dyn-text); line-height:2; margin-bottom:40px; }
.thanks__action, .notfound__action{ margin-top:8px; }

mark, .mark{
  background-color:transparent !important; color:inherit !important;
  padding:0 !important; border-radius:0 !important;
}

a:hover{ color:inherit; }

a[href^="tel:"]{ white-space:nowrap; }

:root{ --dyn-radius: 0; }

html, body{ height:auto !important; }
body{ overflow-x:clip !important; }

[class*="_breadcrumb"], .p-breadcrumb{ display:none !important; }

.parts040506_notice-news, .design-parts-52{ background:#dad9d8 !important; }
.parts040506_notice-news *, .design-parts-52 .content{ color:#1B1815 !important; }
.parts040506_notice-news a, .design-parts-52 ul a{ color:#1B1815 !important; }
.design-parts-52 h4.banner-area{
  background:#B8973F !important; color:#111111 !important;
  font-family:'Oswald',sans-serif !important; font-weight:600 !important; letter-spacing:.14em !important;
}
.design-parts-52 ul{ list-style:none !important; }
.design-parts-52 ul a:hover{ color:#A24A2A !important; }

[class*="parts"][class*="_blog"]{ position:relative; z-index:5; background:#1B1815 !important; }
[class*="parts"][class*="_blog"] .card{ background:#ffffff !important; border-color:#CDBF9F !important; }

[class*="_post_wrap"]{ border:none !important; }

[class*="_post_date"], [class*="_sidebar_date"]{ color:#6B6250 !important; }

.contact-grid--single{ max-width:720px !important; }

.parts231_breadcrumb {
  display:none !important;
}
.parts228_post_wrap {
  max-width: 100% !important;
}
.parts228_post_wrap:nth-last-child(-n+3) {
  margin-bottom: 45px !important;
}
.parts-blog-ex-single-wrap .parts-blog-ex_gallery-slider .gallery-blog-ex {
  background: #FFFFFF !important;
}
.parts228_post_wrap .parts228_post_img {
  height: auto !important;
}
@media screen and (min-width: 992px) and (max-width: 1260px) {
  .parts228_post_wrap .parts228_post_img img {
    max-height: unset !important;
    height: 200px !important;
  }
}
.parts222_sidebar {
  max-width: none !important;
}
.parts222_post_wrap {
  max-width: 100% !important;
}
.parts222_post_status {
  padding: 0 20px !important;
  justify-content: left !important;
}
.parts222_post_title-excerpt {
  padding: 0 20px !important;
}

[class*="_single_article"],
[class*="-single-wrap"],
.not-found{ background:var(--background-color, #EDE4D3) !important; }

[class*="signature_wrap"]{ color:#6B6250 !important; }

.attention{ color:#6B6250 !important; }
[class*="signature_wrap"] a, [class*="signature_wrap"] a span{ background:#A24A2A !important; color:#F3ECDC !important; }
[class*="article_category_wrap"]{ background:transparent !important; }

@media (min-width:992px){
  aside[class*="_sidebar"]{ flex:0 0 300px !important; max-width:300px !important; margin-left:48px !important; }
  main[class*="_main"]{ flex:1 1 0 !important; max-width:none !important; }
}

.desktop-nav .has-sub > .navlink{ align-items:flex-start !important; }
.desktop-nav .has-sub .caret{ margin-top:0.5em !important; }