/*
Theme Name: Taisho Hakko LP Refined v4
Theme URI: http://www.taisyohakkou.jp/
Author: Generated from static HTML
Description: Static one-page WordPress theme converted from index.html for 大正発酵薬品株式会社.
Version: 1.4.0
Requires at least: 6.0
Tested up to: 6.6
Text Domain: taisho-hakko
*/


  :root{
    --ebicha:#6d2a2a;        /* 海老茶 */
    --ebicha-deep:#4a1c1c;
    --ebicha-soft:#8a4842;
    --kinari:#f4efe4;        /* 生成り（背景） */
    --paper:#fbf8f1;         /* カード・ヘッダー */
    --kinari-deep:#eae1cf;   /* 面の切り替え・チップ */
    --sumi:#2b2521;          /* 墨色（本文） */
    --sumi-soft:#6b6259;
    --brass:#a3823f;         /* 金の細線アクセント（控えめ） */
    --line:rgba(43,37,33,.14);
    --line-soft:rgba(43,37,33,.09);
    --footer:#3d1919;
    --footer-tx:#eadfce;

    --disp:"Shippori Mincho B1",serif;
    --body:"Noto Serif JP",serif;
    --util:"Zen Kaku Gothic New",sans-serif;

    --wrap:1160px;
    --pad:clamp(20px,5vw,44px);
    --sec-y:clamp(72px,9vw,118px);
  }

  *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
  @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

  body{
    font-family:var(--body);
    color:var(--sumi);
    background:var(--kinari);
    line-height:1.9;
    font-weight:400;
    letter-spacing:.01em;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
    overflow-x:hidden;
  }
  /* 和紙の微細な地合い */
  body::before{
    content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E");
    opacity:.035;mix-blend-mode:multiply;
  }
  main,header,footer{position:relative;z-index:1}

  img{max-width:100%;display:block}
  a{color:inherit;text-decoration:none}

  .wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--pad);width:100%}

  /* 共通の印章シンボル */
  .seal{display:inline-block;color:var(--ebicha)}
  .seal svg{width:100%;height:100%;display:block}

  /* ---------- ヘッダー ---------- */
  header{
    position:fixed;top:0;left:0;right:0;z-index:50;
    background:rgba(244,239,228,.72);
    backdrop-filter:saturate(140%) blur(10px);
    -webkit-backdrop-filter:saturate(140%) blur(10px);
    border-bottom:1px solid transparent;
    transition:background .4s ease,border-color .4s ease,box-shadow .4s ease;
  }
  header.scrolled{
    background:rgba(244,239,228,.92);
    border-bottom-color:var(--line);
    box-shadow:0 8px 30px -22px rgba(74,28,28,.55);
  }
  .bar{display:flex;align-items:center;justify-content:space-between;height:66px;gap:20px}
  .brand{display:flex;align-items:center;gap:12px;line-height:1}
  .brand .seal{width:38px;height:38px;flex:none}
  .brand-tx{display:flex;flex-direction:column;gap:2px}
  .brand-name{font-family:var(--disp);font-weight:700;font-size:1.12rem;letter-spacing:.14em;color:var(--sumi)}
  .brand-name .corp{font-size:.62em;font-weight:500;letter-spacing:.24em;color:var(--sumi-soft);margin-left:.35em}
  .brand-sub{font-family:var(--util);font-size:.56rem;letter-spacing:.34em;color:var(--brass);text-transform:uppercase;padding-left:1px}

  nav.main{display:flex;align-items:center;gap:clamp(18px,2.4vw,38px)}
  nav.main a{
    font-family:var(--util);font-size:.86rem;letter-spacing:.1em;color:var(--sumi);
    position:relative;padding:6px 0;transition:color .25s ease;
  }
  nav.main a::after{
    content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;
    background:var(--ebicha);transition:right .3s ease;
  }
  nav.main a:hover,nav.main a[aria-current="true"]{color:var(--ebicha)}
  nav.main a:hover::after,nav.main a[aria-current="true"]::after{right:0}

  .menu-btn{display:none;background:none;border:none;cursor:pointer;padding:10px;color:var(--sumi)}
  .menu-btn span{display:block;width:24px;height:1.6px;background:currentColor;transition:transform .3s ease,opacity .3s ease}
  .menu-btn span+span{margin-top:6px}
  .menu-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(7.6px) rotate(45deg)}
  .menu-btn[aria-expanded="true"] span:nth-child(2){opacity:0}
  .menu-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-7.6px) rotate(-45deg)}

  /* モバイルメニューパネル */
  .drawer{
    position:fixed;top:66px;left:0;right:0;z-index:49;
    background:var(--paper);border-bottom:1px solid var(--line);
    transform:translateY(-12px);opacity:0;pointer-events:none;
    transition:transform .32s ease,opacity .32s ease;
    box-shadow:0 24px 40px -28px rgba(74,28,28,.6);
  }
  .drawer.open{transform:translateY(0);opacity:1;pointer-events:auto}
  .drawer a{
    display:block;font-family:var(--disp);font-size:1.06rem;letter-spacing:.1em;color:var(--sumi);
    padding:16px var(--pad);border-top:1px solid var(--line-soft);
  }
  .drawer a:first-child{border-top:none}

  /* ---------- ヒーロー ---------- */
  .hero{
    position:relative;min-height:clamp(560px,92vh,860px);
    display:flex;align-items:center;justify-content:center;text-align:center;
    padding:120px 0 90px;overflow:hidden;
  }
  .hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
  .hero-bg::before{ /* 温かい面 */
    content:"";position:absolute;inset:0;
    background:
      radial-gradient(120% 80% at 50% 8%, #fbf7ee 0%, rgba(251,247,238,0) 55%),
      radial-gradient(100% 70% at 50% 100%, #efe6d4 0%, rgba(239,230,212,0) 60%);
  }
  .hero-seal-bg{ /* 大きな印の透かし */
    position:absolute;top:50%;left:50%;width:min(620px,86vw);aspect-ratio:1;
    transform:translate(-50%,-52%);color:var(--ebicha);opacity:.05;
  }
  .hero-inner{position:relative;z-index:1;max-width:820px;padding-inline:var(--pad)}
  .hero .seal.mark{width:74px;height:74px;margin:0 auto 26px}
  .hero-name{
    font-family:var(--disp);font-weight:500;font-size:clamp(1rem,2.1vw,1.22rem);
    letter-spacing:.36em;color:var(--ebicha);text-indent:.36em;margin-bottom:26px;
  }
  .hero h1{
    font-family:var(--disp);font-weight:800;
    font-size:clamp(2rem,5.4vw,3.55rem);line-height:1.42;letter-spacing:.04em;color:var(--sumi);
  }
  .hero h1 .em{color:var(--ebicha)}
  .hero-rule{width:52px;height:1px;background:var(--brass);margin:34px auto 30px;position:relative}
  .hero-rule::before,.hero-rule::after{content:"";position:absolute;top:50%;width:5px;height:5px;transform:translateY(-50%) rotate(45deg);border:1px solid var(--brass)}
  .hero-rule::before{left:-13px}.hero-rule::after{right:-13px}
  .hero-sub{
    font-size:clamp(.98rem,1.5vw,1.1rem);line-height:2.05;color:var(--sumi-soft);
    max-width:30em;margin-inline:auto;
  }
  /* 縦書きの装飾（PC・大画面のみ） */
  .hero-vertical{
    position:absolute;top:50%;right:clamp(18px,3.6vw,60px);transform:translateY(-50%);
    writing-mode:vertical-rl;font-family:var(--disp);font-weight:500;
    font-size:.82rem;letter-spacing:.5em;color:var(--sumi-soft);opacity:.55;z-index:1;
    display:none;
  }
  .scroll-cue{
    position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:1;
    font-family:var(--util);font-size:.6rem;letter-spacing:.3em;color:var(--sumi-soft);
    display:flex;flex-direction:column;align-items:center;gap:8px;
  }
  .scroll-cue i{display:block;width:1px;height:34px;background:linear-gradient(var(--brass),transparent);animation:cue 2.2s ease-in-out infinite}
  @keyframes cue{0%,100%{transform:scaleY(.4);transform-origin:top;opacity:.5}50%{transform:scaleY(1);opacity:1}}

  /* ---------- セクション共通 ---------- */
  section{padding-block:var(--sec-y)}
  section[id]{scroll-margin-top:80px}

  .eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:22px}
  .eyebrow .tick{width:30px;height:1px;background:var(--brass);flex:none}
  .eyebrow .jp{font-family:var(--util);font-size:.86rem;letter-spacing:.24em;color:var(--ebicha)}
  .eyebrow .en{font-family:var(--util);font-size:.64rem;letter-spacing:.28em;color:var(--sumi-soft);text-transform:uppercase}

  .sec-title{
    font-family:var(--disp);font-weight:700;
    font-size:clamp(1.55rem,3.6vw,2.35rem);line-height:1.5;letter-spacing:.05em;color:var(--sumi);
    margin-bottom:clamp(28px,4vw,44px);
  }
  .lead{font-size:clamp(1rem,1.5vw,1.14rem);line-height:2.1;color:var(--sumi);max-width:40em}
  .lead + .lead{margin-top:1.4em}
  .muted{color:var(--sumi-soft)}

  /* 面の切り替え */
  .tint{background:var(--kinari-deep);position:relative}
  .tint::before,.tint::after{content:"";position:absolute;left:0;right:0;height:1px;background:var(--line-soft)}
  .tint::before{top:0}.tint::after{bottom:0}

  /* セクション見出し帯（About / Business など）を二段組に */
  .head-2col{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);gap:clamp(24px,5vw,72px);align-items:start}
  @media (max-width:820px){.head-2col{grid-template-columns:1fr;gap:8px}}

  /* ---------- 私たちについて：3つの柱 ---------- */
  .pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.6vw,34px);margin-top:clamp(44px,6vw,66px)}
  @media (max-width:820px){.pillars{grid-template-columns:1fr;gap:0}}
  .pillar{padding:clamp(26px,3vw,34px) 0;border-top:1px solid var(--line)}
  @media (min-width:821px){.pillar{border-top:none;padding:4px clamp(24px,2.4vw,34px);border-left:1px solid var(--line)}.pillar:first-child{border-left:none;padding-left:0}}
  .pillar .num{font-family:var(--util);font-size:.66rem;letter-spacing:.24em;color:var(--brass);display:block;margin-bottom:14px}
  .pillar h3{font-family:var(--disp);font-weight:700;font-size:1.16rem;letter-spacing:.06em;color:var(--ebicha);margin-bottom:12px;line-height:1.6}
  .pillar p{font-size:.96rem;line-height:1.95;color:var(--sumi)}

  /* ---------- 事業内容：バリューチェーン ---------- */
  .flow{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.6vw,20px);margin:clamp(40px,5vw,58px) 0 clamp(34px,4vw,48px);counter-reset:step}
  @media (max-width:860px){.flow{grid-template-columns:1fr 1fr}}
  @media (max-width:520px){.flow{grid-template-columns:1fr}}
  .step{background:var(--paper);border:1px solid var(--line);border-radius:2px;padding:26px 22px 24px;position:relative;overflow:hidden}
  .step::before{content:"0" counter(step);counter-increment:step;font-family:var(--disp);font-weight:800;font-size:2.6rem;color:var(--kinari-deep);position:absolute;top:-6px;right:8px;line-height:1}
  .step h4{font-family:var(--disp);font-weight:700;font-size:1.06rem;letter-spacing:.08em;color:var(--sumi);margin:2px 0 12px;position:relative}
  .step h4 .bar{display:block;width:22px;height:2px;background:var(--ebicha);margin-bottom:12px}
  .step p{font-size:.9rem;line-height:1.85;color:var(--sumi-soft);position:relative}

  .cats{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
  .cats .chip{
    font-family:var(--util);font-size:.82rem;letter-spacing:.08em;color:var(--ebicha);
    background:var(--paper);border:1px solid rgba(109,42,42,.28);border-radius:999px;padding:7px 16px;
  }
  .note-line{margin-top:28px;font-size:.92rem;line-height:1.95;color:var(--sumi-soft);max-width:44em;padding-left:16px;border-left:2px solid var(--brass)}

  /* ---------- 商品紹介 ---------- */
  .products{display:grid;grid-template-columns:1fr 1fr;gap:clamp(22px,3vw,36px);margin-top:clamp(38px,5vw,56px)}
  @media (max-width:760px){.products{grid-template-columns:1fr}}
  .pcard{background:var(--paper);border:1px solid var(--line);border-radius:2px;overflow:hidden;transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s ease,border-color .4s ease;display:flex;flex-direction:column}
  .pcard:hover{transform:translateY(-4px);box-shadow:0 26px 44px -30px rgba(74,28,28,.5);border-color:rgba(109,42,42,.3)}
  /* 商品画像プレースホルダ：<img> に差し替え可 */
  .pcard .ph{
    aspect-ratio:4/3;background:var(--kinari-deep);position:relative;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;
    border-bottom:1px solid var(--line);
  }
  .pcard .ph .seal{width:52px;height:52px;color:var(--ebicha-soft);opacity:.5}
  .pcard .ph span{font-family:var(--util);font-size:.66rem;letter-spacing:.32em;color:var(--ebicha-soft);text-transform:uppercase}
  .pcard .body{padding:26px clamp(22px,2.4vw,30px) 30px;display:flex;flex-direction:column;gap:14px;flex:1}
  .ptags{display:flex;flex-wrap:wrap;gap:8px}
  .ptags b{font-family:var(--util);font-weight:500;font-size:.7rem;letter-spacing:.1em;color:var(--sumi-soft);background:var(--kinari-deep);border-radius:3px;padding:4px 10px}
  .ptags b.fnc{color:var(--ebicha);background:transparent;border:1px solid rgba(109,42,42,.3)}
  .pcard h3{font-family:var(--disp);font-weight:700;font-size:1.32rem;letter-spacing:.04em;color:var(--sumi);line-height:1.5}
  .pcard .desc{font-size:.94rem;line-height:1.9;color:var(--sumi-soft)}
  /* 価格を出す場合：下の行のコメントを外して差し替え
     <p class="price">通常価格 0,000円（税込）</p> */
  .price{font-family:var(--disp);font-size:1rem;color:var(--ebicha);letter-spacing:.04em;margin-top:2px}

  /* ---------- 会社概要 ---------- */
  .company{max-width:880px}
  .table{border-top:1px solid var(--line)}
  .row{display:grid;grid-template-columns:200px 1fr;gap:24px;padding:22px 4px;border-bottom:1px solid var(--line);align-items:baseline}
  @media (max-width:640px){.row{grid-template-columns:1fr;gap:6px;padding:18px 2px}}
  .row dt{font-family:var(--util);font-size:.86rem;letter-spacing:.16em;color:var(--ebicha)}
  .row dd{font-size:1rem;line-height:1.85;color:var(--sumi)}
  .row dd .zip{display:block;font-size:.82rem;color:var(--sumi-soft);letter-spacing:.08em;margin-bottom:3px}

  /* ---------- お問い合わせ（仮・電話・差し替え可） ---------- */
  .contact-card{
    max-width:640px;margin-inline:auto;text-align:center;
    background:var(--paper);border:1px solid var(--line);border-radius:2px;
    padding:clamp(38px,5vw,56px) clamp(24px,4vw,48px);position:relative;
  }
  .contact-card .seal{width:46px;height:46px;margin:0 auto 22px;color:var(--ebicha)}
  .contact-card p.msg{font-size:1rem;line-height:2;color:var(--sumi);margin-bottom:26px}
  .tel-label{font-family:var(--util);font-size:.74rem;letter-spacing:.24em;color:var(--sumi-soft);text-transform:uppercase;margin-bottom:8px}
  .tel-num{font-family:var(--disp);font-weight:700;font-size:clamp(1.7rem,4vw,2.3rem);letter-spacing:.06em;color:var(--ebicha);line-height:1.2}
  .tel-note{font-size:.82rem;color:var(--sumi-soft);margin-top:10px;letter-spacing:.06em}

  /* ---------- 印章の区切り飾り ---------- */
  .divider{display:flex;align-items:center;justify-content:center;gap:20px;padding:8px 0}
  .divider i{height:1px;width:min(120px,22vw);background:var(--line)}
  .divider .seal{width:26px;height:26px;color:var(--ebicha);opacity:.7}

  /* ---------- フッター ---------- */
  footer{background:var(--footer);color:var(--footer-tx);padding:clamp(52px,6vw,72px) 0 30px;margin-top:var(--sec-y)}
  .f-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:36px}
  .f-brand{max-width:360px}
  .f-brand .row1{display:flex;align-items:center;gap:12px;margin-bottom:16px}
  .f-brand .seal{width:40px;height:40px;color:var(--footer-tx);flex:none}
  .f-brand .nm{font-family:var(--disp);font-weight:700;font-size:1.14rem;letter-spacing:.12em}
  .f-brand address{font-style:normal;font-size:.86rem;line-height:1.9;color:rgba(234,223,206,.72);letter-spacing:.04em}
  .f-nav{display:flex;flex-direction:column;gap:14px}
  .f-nav a{font-family:var(--util);font-size:.86rem;letter-spacing:.12em;color:rgba(234,223,206,.82);transition:color .25s ease}
  .f-nav a:hover{color:#fff}
  .f-base{margin-top:clamp(40px,5vw,60px);padding-top:22px;border-top:1px solid rgba(234,223,206,.16);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center}
  .copy{font-family:var(--util);font-size:.72rem;letter-spacing:.14em;color:rgba(234,223,206,.6)}
  .f-base .tiny{font-family:var(--util);font-size:.68rem;letter-spacing:.2em;color:rgba(234,223,206,.45);text-transform:uppercase}

  /* ---------- 出現アニメーション ---------- */
  .reveal{transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
  html.js .reveal:not(.in){opacity:0;transform:translateY(20px)}
  @media (prefers-reduced-motion:reduce){
    html.js .reveal:not(.in){opacity:1;transform:none}
    .reveal,.scroll-cue i,.menu-btn span,.drawer,header,.pcard{transition:none}
    .scroll-cue i{animation:none}
  }

  :focus-visible{outline:2px solid var(--ebicha);outline-offset:3px;border-radius:2px}

  /* 大画面のみ縦書き装飾を表示 */
  @media (min-width:1180px){.hero-vertical{display:block}}

  @media (max-width:900px){
    nav.main{display:none}
    .menu-btn{display:block}
  }

  /* ==================== 追加意匠：和柄 / 箔押し / イラスト / 動き ==================== */
  :root{
    --asa:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2730.0%27%20height%3D%2752.0%27%20viewBox%3D%270%200%2030.0%2052.0%27%3E%3Cpath%20d%3D%27M30.0%20-26.0L30.0%200.0M0.0%200.0L15.0%2026.0M82.5%2013.0L105.0%2026.0M-22.5%2013.0L0.0%200.0M15.0%2026.0L37.5%2013.0M-60.0%200.0L-45.0%2026.0M105.0%2026.0L127.5%2013.0M-45.0%200.0L-45.0%2026.0M-45.0%2026.0L-22.5%2013.0M90.0%20-26.0L90.0%200.0M15.0%2026.0L30.0%2052.0M-82.5%20-39.0L-60.0%20-52.0M-45.0%2026.0L-30.0%200.0M-45.0%20-26.0L-15.0%20-26.0M45.0%2026.0L75.0%2026.0M-30.0%200.0L-15.0%2026.0M60.0%200.0L60.0%2026.0M7.5%2065.0L30.0%2052.0M60.0%2077.9L60.0%20103.9M105.0%20-26.0L120.0%200.0M150.0%20103.9L172.5%2090.9M22.5%20-39.0L45.0%20-26.0M120.0%2052.0L142.5%2065.0M15.0%2026.0L30.0%200.0M-52.5%20-39.0L-30.0%20-52.0M30.0%200.0L45.0%2026.0M-15.0%2026.0L7.5%2013.0M45.0%2026.0L67.5%2013.0M90.0%2052.0L105.0%2077.9M150.0%20103.9L180.0%20103.9M22.5%2039.0L45.0%2026.0M90.0%20103.9L112.5%2090.9M75.0%20-26.0L75.0%200.0M-75.0%20-26.0L-52.5%20-13.0M75.0%20-26.0L90.0%200.0M-37.5%2013.0L-15.0%2026.0M97.5%2013.0L120.0%200.0M52.5%2090.9L75.0%2077.9M-22.5%2065.0L0.0%2052.0M30.0%2052.0L45.0%2077.9M120.0%200.0L135.0%2026.0M0.0%200.0L0.0%2026.0M-15.0%20-26.0L15.0%20-26.0M0.0%2077.9L0.0%20103.9M75.0%2026.0L105.0%2026.0M15.0%2077.9L15.0%20103.9M112.5%2039.0L135.0%2026.0M90.0%200.0L105.0%20-26.0M90.0%2026.0L90.0%2052.0M30.0%2026.0L30.0%2052.0M7.5%2039.0L30.0%2052.0M60.0%2052.0L75.0%2077.9M120.0%2052.0L120.0%2077.9M15.0%20-26.0L45.0%20-26.0M120.0%20103.9L150.0%20103.9M-30.0%2052.0L-7.5%2039.0M120.0%2052.0L135.0%2077.9M45.0%2026.0L60.0%200.0M0.0%20103.9L15.0%2077.9M0.0%20-52.0L22.5%20-39.0M135.0%2077.9L150.0%20103.9M-60.0%200.0L-37.5%2013.0M7.5%20-39.0L30.0%20-52.0M150.0%2052.0L165.0%2077.9M-52.5%2013.0L-30.0%200.0M37.5%20-39.0L60.0%20-52.0M45.0%2077.9L67.5%2090.9M82.5%2090.9L105.0%2077.9M-22.5%20-13.0L0.0%200.0M120.0%2052.0L142.5%2039.0M67.5%20-39.0L90.0%20-52.0M30.0%200.0L60.0%200.0M-75.0%20-52.0L-75.0%20-26.0M-30.0%20-52.0L-30.0%20-26.0M-15.0%20-52.0L-15.0%20-26.0M-30.0%2026.0L-30.0%2052.0M-15.0%2026.0L-15.0%2052.0M75.0%2077.9L97.5%2090.9M112.5%2013.0L135.0%2026.0M105.0%2077.9L127.5%2090.9M105.0%200.0L105.0%2026.0M15.0%20-26.0L15.0%200.0M-75.0%20-26.0L-52.5%20-39.0M-75.0%20-26.0L-60.0%200.0M30.0%20-52.0L52.5%20-39.0M-45.0%20-26.0L-45.0%200.0M-15.0%20-26.0L0.0%20-52.0M90.0%20-52.0L90.0%20-26.0M142.5%2090.9L165.0%2077.9M52.5%2065.0L75.0%2077.9M165.0%2077.9L165.0%20103.9M37.5%2065.0L60.0%2052.0M-60.0%200.0L-45.0%20-26.0M-30.0%2052.0L-15.0%2077.9M52.5%20-13.0L75.0%20-26.0M120.0%2077.9L120.0%20103.9M67.5%2090.9L90.0%20103.9M-15.0%2077.9L0.0%2052.0M30.0%20-52.0L30.0%20-26.0M0.0%20103.9L22.5%2090.9M75.0%2077.9L90.0%2052.0M-30.0%200.0L-15.0%20-26.0M105.0%2077.9L120.0%2052.0M15.0%2077.9L37.5%2090.9M-30.0%20-52.0L-7.5%20-39.0M-7.5%20-39.0L15.0%20-26.0M0.0%2052.0L0.0%2077.9M0.0%2052.0L15.0%2077.9M-7.5%2039.0L15.0%2026.0M-90.0%20-52.0L-60.0%20-52.0M-15.0%2077.9L7.5%2090.9M97.5%2090.9L120.0%20103.9M60.0%20-26.0L60.0%200.0M37.5%2039.0L60.0%2052.0M30.0%20103.9L52.5%2090.9M-60.0%20-52.0L-30.0%20-52.0M82.5%20-13.0L105.0%20-26.0M60.0%20103.9L82.5%2090.9M60.0%2052.0L60.0%2077.9M75.0%20-26.0L90.0%20-52.0M-75.0%20-26.0L-45.0%20-26.0M-30.0%20-52.0L0.0%20-52.0M75.0%2077.9L105.0%2077.9M127.5%2090.9L150.0%20103.9M60.0%2052.0L90.0%2052.0M0.0%200.0L15.0%20-26.0M0.0%20-52.0L30.0%20-52.0M0.0%200.0L22.5%2013.0M0.0%20103.9L30.0%20103.9M90.0%20103.9L120.0%20103.9M0.0%20-26.0L0.0%200.0M45.0%2077.9L75.0%2077.9M-60.0%200.0L-37.5%20-13.0M15.0%20-26.0L37.5%20-13.0M67.5%2013.0L90.0%200.0M15.0%2026.0L15.0%2052.0M-7.5%2013.0L15.0%2026.0M105.0%2052.0L105.0%2077.9M-15.0%200.0L-15.0%2026.0M60.0%200.0L82.5%2013.0M105.0%20-26.0L105.0%200.0M30.0%200.0L45.0%20-26.0M30.0%200.0L52.5%2013.0M45.0%200.0L45.0%2026.0M0.0%2052.0L15.0%2026.0M30.0%2052.0L60.0%2052.0M45.0%2052.0L45.0%2077.9M90.0%2077.9L90.0%20103.9M90.0%200.0L112.5%2013.0M15.0%2077.9L30.0%20103.9M45.0%2077.9L60.0%20103.9M-15.0%20-26.0L7.5%20-39.0M-15.0%2026.0L0.0%2052.0M67.5%20-13.0L90.0%200.0M0.0%200.0L22.5%20-13.0M22.5%2013.0L45.0%2026.0M15.0%20-26.0L37.5%20-39.0M-30.0%2052.0L-15.0%2026.0M45.0%2077.9L67.5%2065.0M90.0%200.0L90.0%2026.0M75.0%2026.0L90.0%2052.0M135.0%2077.9L157.5%2090.9M-22.5%20-39.0L0.0%20-52.0M-60.0%200.0L-30.0%200.0M75.0%2077.9L97.5%2065.0M-37.5%20-13.0L-15.0%20-26.0M105.0%2077.9L127.5%2065.0M105.0%2077.9L105.0%20103.9M15.0%2026.0L45.0%2026.0M60.0%200.0L82.5%20-13.0M150.0%2052.0L150.0%2077.9M97.5%20-13.0L120.0%200.0M60.0%20-52.0L75.0%20-26.0M105.0%2026.0L120.0%2052.0M30.0%200.0L52.5%20-13.0M-30.0%200.0L0.0%200.0M30.0%2052.0L45.0%2026.0M135.0%2026.0L135.0%2052.0M150.0%2077.9L150.0%20103.9M37.5%2090.9L60.0%20103.9M22.5%2065.0L45.0%2077.9M0.0%200.0L30.0%200.0M45.0%2077.9L45.0%20103.9M-75.0%20-26.0L-60.0%20-52.0M-45.0%2026.0L-15.0%2026.0M90.0%200.0L112.5%20-13.0M105.0%2026.0L120.0%200.0M-22.5%2039.0L0.0%2052.0M60.0%2052.0L75.0%2026.0M60.0%2052.0L82.5%2065.0M97.5%2065.0L120.0%2052.0M120.0%2052.0L135.0%2026.0M75.0%20-26.0L105.0%20-26.0M15.0%20-52.0L15.0%20-26.0M-15.0%2026.0L15.0%2026.0M-45.0%20-26.0L-30.0%200.0M15.0%200.0L15.0%2026.0M112.5%2065.0L135.0%2077.9M90.0%20-52.0L105.0%20-26.0M135.0%2026.0L150.0%2052.0M-15.0%20-26.0L-15.0%200.0M75.0%2026.0L75.0%2052.0M165.0%2077.9L180.0%20103.9M15.0%2077.9L37.5%2065.0M90.0%2052.0L105.0%2026.0M-15.0%2052.0L-15.0%2077.9M90.0%2052.0L112.5%2065.0M-60.0%20-26.0L-60.0%200.0M-7.5%2090.9L15.0%2077.9M75.0%20-52.0L75.0%20-26.0M7.5%2013.0L30.0%200.0M-15.0%2077.9L7.5%2065.0M90.0%200.0L120.0%200.0M15.0%20-26.0L30.0%200.0M37.5%2013.0L60.0%200.0M127.5%2065.0L150.0%2052.0M-15.0%20-26.0L7.5%20-13.0M30.0%20-52.0L45.0%20-26.0M30.0%20103.9L60.0%20103.9M52.5%20-39.0L75.0%20-26.0M60.0%20-52.0L90.0%20-52.0M105.0%2026.0L135.0%2026.0M97.5%2039.0L120.0%2052.0M60.0%20103.9L90.0%20103.9M45.0%20-26.0L45.0%200.0M-52.5%20-13.0L-30.0%200.0M30.0%20-52.0L60.0%20-52.0M45.0%20-26.0L60.0%200.0M45.0%2077.9L60.0%2052.0M30.0%200.0L30.0%2026.0M90.0%2052.0L90.0%2077.9M-7.5%2065.0L15.0%2077.9M135.0%2077.9L150.0%2052.0M135.0%2077.9L165.0%2077.9M22.5%2090.9L45.0%2077.9M45.0%20-26.0L67.5%20-13.0M90.0%2052.0L120.0%2052.0M-30.0%200.0L-30.0%2026.0M30.0%2052.0L30.0%2077.9M37.5%20-13.0L60.0%200.0M127.5%2039.0L150.0%2052.0M60.0%200.0L75.0%2026.0M90.0%2052.0L112.5%2039.0M75.0%20-26.0L97.5%20-13.0M-60.0%20-52.0L-37.5%20-39.0M30.0%2052.0L52.5%2039.0M-45.0%20-52.0L-45.0%20-26.0M67.5%2065.0L90.0%2052.0M52.5%2039.0L75.0%2026.0M-45.0%20-26.0L-22.5%20-13.0M0.0%2026.0L0.0%2052.0M-45.0%2026.0L-30.0%2052.0M82.5%20-39.0L105.0%20-26.0M-67.5%20-13.0L-45.0%20-26.0M60.0%2052.0L82.5%2039.0M45.0%20-26.0L75.0%20-26.0M75.0%200.0L75.0%2026.0M-15.0%2026.0L0.0%200.0M-30.0%200.0L-7.5%2013.0M135.0%2077.9L157.5%2065.0M135.0%2052.0L135.0%2077.9M-60.0%20-52.0L-45.0%20-26.0M45.0%20-26.0L67.5%20-39.0M-15.0%2077.9L0.0%20103.9M-45.0%20-26.0L-30.0%20-52.0M120.0%2052.0L150.0%2052.0M60.0%20-52.0L60.0%20-26.0M-30.0%20-52.0L-15.0%20-26.0M75.0%2077.9L75.0%20103.9M7.5%20-13.0L30.0%200.0M60.0%2026.0L60.0%2052.0M45.0%2026.0L67.5%2039.0M112.5%2090.9L135.0%2077.9M75.0%2077.9L90.0%20103.9M90.0%20103.9L105.0%2077.9M105.0%2077.9L120.0%20103.9M0.0%2052.0L22.5%2065.0M30.0%2077.9L30.0%20103.9M75.0%2026.0L90.0%200.0M7.5%2090.9L30.0%20103.9M75.0%2026.0L97.5%2039.0M67.5%2039.0L90.0%2052.0M30.0%2052.0L52.5%2065.0M60.0%200.0L90.0%200.0M-90.0%20-52.0L-75.0%20-26.0M90.0%200.0L105.0%2026.0M30.0%20103.9L45.0%2077.9M15.0%2077.9L30.0%2052.0M75.0%20-26.0L97.5%20-39.0M-67.5%20-39.0L-45.0%20-26.0M135.0%2077.9L135.0%20103.9M15.0%20-26.0L30.0%20-52.0M15.0%2026.0L37.5%2039.0M60.0%20103.9L75.0%2077.9M60.0%20-52.0L82.5%20-39.0M120.0%200.0L120.0%2026.0M105.0%2026.0L127.5%2039.0M75.0%2052.0L75.0%2077.9M-45.0%2026.0L-22.5%2039.0M105.0%2026.0L105.0%2052.0M120.0%2026.0L120.0%2052.0M-7.5%20-13.0L15.0%20-26.0M0.0%20-52.0L0.0%20-26.0M45.0%2026.0L45.0%2052.0M0.0%20-52.0L15.0%20-26.0M45.0%2026.0L60.0%2052.0M120.0%20103.9L142.5%2090.9M-30.0%2052.0L-7.5%2065.0M-37.5%20-39.0L-15.0%20-26.0M-45.0%20-26.0L-22.5%20-39.0M45.0%20-26.0L60.0%20-52.0M82.5%2039.0L105.0%2026.0M-30.0%20-26.0L-30.0%200.0M150.0%20103.9L165.0%2077.9M-60.0%20-52.0L-60.0%20-26.0M82.5%2065.0L105.0%2077.9M-30.0%200.0L-7.5%20-13.0M52.5%2013.0L75.0%2026.0M15.0%2077.9L45.0%2077.9M-37.5%2039.0L-15.0%2026.0M0.0%2052.0L30.0%2052.0M-15.0%2026.0L7.5%2039.0M-30.0%2052.0L0.0%2052.0M-90.0%20-52.0L-67.5%20-39.0M-15.0%2077.9L15.0%2077.9M157.5%2090.9L180.0%20103.9M0.0%2052.0L22.5%2039.0M105.0%2077.9L135.0%2077.9M45.0%20-52.0L45.0%20-26.0M75.0%2026.0L97.5%2013.0M22.5%20-13.0L45.0%20-26.0M-15.0%20-26.0L0.0%200.0M60.0%200.0L75.0%20-26.0M142.5%2065.0L165.0%2077.9M15.0%2052.0L15.0%2077.9M120.0%20103.9L135.0%2077.9%27%20fill%3D%27none%27%20stroke%3D%27%236d2a2a%27%20stroke-width%3D%271.0%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3C%2Fsvg%3E");
    --sei:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2752.0%27%20height%3D%2752.0%27%20viewBox%3D%270%200%2052.0%2052.0%27%3E%3Cpath%20d%3D%27M-52.0%20-26.0A26.0%2026.0%200%200%201%200.0%20-26.0M-43.7%20-26.0A17.7%2017.7%200%200%201%20-8.3%20-26.0M-35.4%20-26.0A9.4%209.4%200%200%201%20-16.6%20-26.0M0.0%20-26.0A26.0%2026.0%200%200%201%2052.0%20-26.0M8.3%20-26.0A17.7%2017.7%200%200%201%2043.7%20-26.0M16.6%20-26.0A9.4%209.4%200%200%201%2035.4%20-26.0M52.0%20-26.0A26.0%2026.0%200%200%201%20104.0%20-26.0M60.3%20-26.0A17.7%2017.7%200%200%201%2095.7%20-26.0M68.6%20-26.0A9.4%209.4%200%200%201%2087.4%20-26.0M104.0%20-26.0A26.0%2026.0%200%200%201%20156.0%20-26.0M112.3%20-26.0A17.7%2017.7%200%200%201%20147.7%20-26.0M120.6%20-26.0A9.4%209.4%200%200%201%20139.4%20-26.0M156.0%20-26.0A26.0%2026.0%200%200%201%20208.0%20-26.0M164.3%20-26.0A17.7%2017.7%200%200%201%20199.7%20-26.0M172.6%20-26.0A9.4%209.4%200%200%201%20191.4%20-26.0M-78.0%200.0A26.0%2026.0%200%200%201%20-26.0%200.0M-69.7%200.0A17.7%2017.7%200%200%201%20-34.3%200.0M-61.4%200.0A9.4%209.4%200%200%201%20-42.6%200.0M-26.0%200.0A26.0%2026.0%200%200%201%2026.0%200.0M-17.7%200.0A17.7%2017.7%200%200%201%2017.7%200.0M-9.4%200.0A9.4%209.4%200%200%201%209.4%200.0M26.0%200.0A26.0%2026.0%200%200%201%2078.0%200.0M34.3%200.0A17.7%2017.7%200%200%201%2069.7%200.0M42.6%200.0A9.4%209.4%200%200%201%2061.4%200.0M78.0%200.0A26.0%2026.0%200%200%201%20130.0%200.0M86.3%200.0A17.7%2017.7%200%200%201%20121.7%200.0M94.6%200.0A9.4%209.4%200%200%201%20113.4%200.0M130.0%200.0A26.0%2026.0%200%200%201%20182.0%200.0M138.3%200.0A17.7%2017.7%200%200%201%20173.7%200.0M146.6%200.0A9.4%209.4%200%200%201%20165.4%200.0M-52.0%2026.0A26.0%2026.0%200%200%201%200.0%2026.0M-43.7%2026.0A17.7%2017.7%200%200%201%20-8.3%2026.0M-35.4%2026.0A9.4%209.4%200%200%201%20-16.6%2026.0M0.0%2026.0A26.0%2026.0%200%200%201%2052.0%2026.0M8.3%2026.0A17.7%2017.7%200%200%201%2043.7%2026.0M16.6%2026.0A9.4%209.4%200%200%201%2035.4%2026.0M52.0%2026.0A26.0%2026.0%200%200%201%20104.0%2026.0M60.3%2026.0A17.7%2017.7%200%200%201%2095.7%2026.0M68.6%2026.0A9.4%209.4%200%200%201%2087.4%2026.0M104.0%2026.0A26.0%2026.0%200%200%201%20156.0%2026.0M112.3%2026.0A17.7%2017.7%200%200%201%20147.7%2026.0M120.6%2026.0A9.4%209.4%200%200%201%20139.4%2026.0M156.0%2026.0A26.0%2026.0%200%200%201%20208.0%2026.0M164.3%2026.0A17.7%2017.7%200%200%201%20199.7%2026.0M172.6%2026.0A9.4%209.4%200%200%201%20191.4%2026.0M-78.0%2052.0A26.0%2026.0%200%200%201%20-26.0%2052.0M-69.7%2052.0A17.7%2017.7%200%200%201%20-34.3%2052.0M-61.4%2052.0A9.4%209.4%200%200%201%20-42.6%2052.0M-26.0%2052.0A26.0%2026.0%200%200%201%2026.0%2052.0M-17.7%2052.0A17.7%2017.7%200%200%201%2017.7%2052.0M-9.4%2052.0A9.4%209.4%200%200%201%209.4%2052.0M26.0%2052.0A26.0%2026.0%200%200%201%2078.0%2052.0M34.3%2052.0A17.7%2017.7%200%200%201%2069.7%2052.0M42.6%2052.0A9.4%209.4%200%200%201%2061.4%2052.0M78.0%2052.0A26.0%2026.0%200%200%201%20130.0%2052.0M86.3%2052.0A17.7%2017.7%200%200%201%20121.7%2052.0M94.6%2052.0A9.4%209.4%200%200%201%20113.4%2052.0M130.0%2052.0A26.0%2026.0%200%200%201%20182.0%2052.0M138.3%2052.0A17.7%2017.7%200%200%201%20173.7%2052.0M146.6%2052.0A9.4%209.4%200%200%201%20165.4%2052.0M-52.0%2078.0A26.0%2026.0%200%200%201%200.0%2078.0M-43.7%2078.0A17.7%2017.7%200%200%201%20-8.3%2078.0M-35.4%2078.0A9.4%209.4%200%200%201%20-16.6%2078.0M0.0%2078.0A26.0%2026.0%200%200%201%2052.0%2078.0M8.3%2078.0A17.7%2017.7%200%200%201%2043.7%2078.0M16.6%2078.0A9.4%209.4%200%200%201%2035.4%2078.0M52.0%2078.0A26.0%2026.0%200%200%201%20104.0%2078.0M60.3%2078.0A17.7%2017.7%200%200%201%2095.7%2078.0M68.6%2078.0A9.4%209.4%200%200%201%2087.4%2078.0M104.0%2078.0A26.0%2026.0%200%200%201%20156.0%2078.0M112.3%2078.0A17.7%2017.7%200%200%201%20147.7%2078.0M120.6%2078.0A9.4%209.4%200%200%201%20139.4%2078.0M156.0%2078.0A26.0%2026.0%200%200%201%20208.0%2078.0M164.3%2078.0A17.7%2017.7%200%200%201%20199.7%2078.0M172.6%2078.0A9.4%209.4%200%200%201%20191.4%2078.0%27%20fill%3D%27none%27%20stroke%3D%27%236d2a2a%27%20stroke-width%3D%271.0%27%20stroke-linecap%3D%27round%27%2F%3E%3C%2Fsvg%3E");
    --gold-a:#8a6a2a; --gold-b:#c9a85a; --gold-c:#f2ddA6; --gold-d:#b8923f;
    --gold-solid:#c2a24d;
    --gold-grad:linear-gradient(115deg,var(--gold-a) 0%,var(--gold-b) 24%,var(--gold-c) 42%,var(--gold-b) 58%,var(--gold-d) 74%,var(--gold-c) 100%);
  }
  section{position:relative}
  .wrap{position:relative;z-index:1}

  /* 箔押し風ゴールド文字（未対応環境はソリッド金でフォールバック） */
  .foil{color:var(--gold-d)}
  @supports ((-webkit-background-clip:text) or (background-clip:text)){
    .foil{
      background:var(--gold-grad);background-size:220% 100%;
      -webkit-background-clip:text;background-clip:text;
      color:transparent;-webkit-text-fill-color:transparent;
    }
    html.js .foil{animation:sheen 7.5s ease-in-out infinite}
  }
  @keyframes sheen{0%,100%{background-position:0% 0}50%{background-position:100% 0}}

  /* 印章のゴールド化（currentColor 継承で確実に反映） */
  .hero .seal.mark,.divider .seal,.contact-card > .seal{color:var(--gold-solid)}

  /* 金の細線をメタリックに統一 */
  .hero-rule{background:var(--gold-grad)}
  .hero-rule::before,.hero-rule::after{border-color:var(--gold-d)}
  .eyebrow .tick{background:var(--gold-grad)}
  .step h4 .bar{background:var(--gold-grad)}
  .note-line{border-left-color:var(--gold-d)}
  .scroll-cue i{background:linear-gradient(var(--gold-d),transparent)}

  /* イラスト共通 */
  .ill{display:inline-block;color:var(--ebicha);line-height:0}
  .ill svg{width:100%;height:100%;display:block;overflow:visible}

  /* 和柄の面レイヤー（低不透明でそっと敷く・パララックス対応） */
  .fieldpat{position:absolute;left:0;right:0;top:-9%;height:118%;z-index:0;pointer-events:none;
    background-image:var(--asa);background-size:62px auto;opacity:.05;will-change:transform}
  .tint .fieldpat{opacity:.06}

  /* 青海波の帯 */
  .wave-band{height:36px;background-image:var(--sei);background-size:auto 36px;background-repeat:repeat-x;
    background-position:center;opacity:.2;pointer-events:none}

  /* 私たちについて：柱アイコン */
  .pillar .ico{width:44px;height:44px;color:var(--ebicha-soft);margin-bottom:16px;display:block;
    transition:transform .5s cubic-bezier(.2,.7,.2,1)}
  .pillar:hover .ico{transform:translateY(-3px) rotate(-3deg)}
  .pillar .num{margin-bottom:10px}

  /* 事業内容：ステップアイコン */
  .step .ico{width:32px;height:32px;color:var(--ebicha-soft);margin-bottom:14px;display:block;position:relative}

  /* 商品：背景モチーフ */
  .pcard .ph{overflow:hidden}
  .pcard .ph::after{content:"";position:absolute;inset:0;background-image:var(--asa);
    background-size:52px auto;opacity:.04;z-index:0;pointer-events:none}
  .pcard .ph .motif{position:absolute;width:150px;height:150px;color:var(--ebicha);opacity:.08;
    right:-26px;bottom:-24px;transform:rotate(-6deg);z-index:0;pointer-events:none;
    transition:transform .6s cubic-bezier(.2,.7,.2,1),opacity .6s ease}
  .pcard:hover .ph .motif{transform:rotate(-2deg) scale(1.06);opacity:.11}
  .pcard .ph .seal,.pcard .ph > span{position:relative;z-index:1}

  /* ヒーロー：スタンプ登場 + 和柄 */
  .hero-asa{position:absolute;inset:-9% 0;z-index:0;pointer-events:none;
    background-image:var(--asa);background-size:66px auto;opacity:.045;will-change:transform}
  html.js .hero .seal.mark{animation:stamp 1.15s cubic-bezier(.19,1,.22,1) both}
  @keyframes stamp{
    0%{opacity:0;transform:scale(1.5) rotate(-12deg)}
    55%{opacity:1}
    72%{transform:scale(.94) rotate(1.6deg)}
    100%{opacity:1;transform:scale(1) rotate(0)}
  }

  /* 見出しの罫（tick）を引く */
  html.js .reveal .eyebrow .tick{transform:scaleX(0);transform-origin:left;
    transition:transform .7s cubic-bezier(.2,.7,.2,1) .12s}
  html.js .reveal.in .eyebrow .tick{transform:scaleX(1)}

  @media (prefers-reduced-motion:reduce){
    html.js .foil{animation:none}
    html.js .hero .seal.mark{animation:none}
    html.js .reveal .eyebrow .tick{transition:none;transform:none}
    html.js .her-item{opacity:1;transform:none;transition:none}
    .pillar .ico,.her-item .ic,.pcard .ph .motif{transition:none}
    .fieldpat,.hero-asa{transform:none !important}
  }


/* ===== v1.1 修正：ヘッダー・ブランドマーク・スマホメニュー ===== */
.bar{height:64px;align-items:center}
.brand{gap:10px;min-width:0}
.brand .seal{width:42px;height:42px;color:var(--gold-solid)}
.brand-tx{gap:0;min-width:0}
.brand-name{font-size:clamp(.98rem,2.8vw,1.12rem);letter-spacing:.10em;white-space:nowrap}
.brand-name .corp{letter-spacing:.12em;margin-left:.25em}
.brand-sub{display:none!important}
.menu-btn{position:relative;z-index:101;min-width:44px;min-height:44px;align-items:center;justify-content:center;border-radius:999px}
.menu-btn:hover{background:rgba(109,42,42,.06)}
.drawer{top:64px;z-index:100;visibility:hidden;transform:translateY(-16px);max-height:calc(100vh - 64px);overflow:auto}
.drawer.open{visibility:visible;transform:translateY(0);opacity:1;pointer-events:auto}
body.menu-open{overflow:hidden}
.tel-num.small{font-size:clamp(1.35rem,3vw,1.8rem);letter-spacing:.12em;color:var(--sumi)}
.f-base{justify-content:center;text-align:center}

@media (max-width:900px){
  header{z-index:120}
  .bar{height:60px;gap:8px}
  .brand .seal{width:36px;height:36px}
  .brand-name{font-size:.96rem;letter-spacing:.06em}
  .brand-name .corp{font-size:.56em;letter-spacing:.08em;margin-left:.18em}
  .menu-btn{display:inline-flex;flex:none}
  .drawer{top:60px;z-index:119}
  .drawer a{padding:18px var(--pad);background:var(--paper)}
  .hero{padding-top:104px}
}

@media (max-width:420px){
  :root{--pad:18px}
  .brand-name{font-size:.88rem;letter-spacing:.04em}
  .brand .seal{width:34px;height:34px}
}


/* ===== v1.2 修正：スマホ三本線メニューボタンの崩れ対策 ===== */
.menu-btn{
  width:44px;
  height:44px;
  min-width:44px;
  min-height:44px;
  padding:0;
  display:none;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:6px;
  appearance:none;
  -webkit-appearance:none;
  line-height:1;
}
.menu-btn span{
  display:block;
  width:24px;
  height:2px;
  margin:0!important;
  border-radius:999px;
  background:currentColor;
  flex:0 0 auto;
  transform-origin:center;
}
.menu-btn span+span{margin-top:0!important}
.menu-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(.2)}
.menu-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
@media (max-width:900px){
  .menu-btn{display:inline-flex!important}
}
@media (min-width:901px){
  .menu-btn{display:none!important}
}


/* ===== v1.4 ロゴ差し替え・装飾整理 ===== */
.seal svg{display:none}
.seal img{width:100%;height:100%;display:block;object-fit:contain}
.hero-seal-bg{opacity:.06}
.hero-seal-bg img{filter:none}
.hero .seal.mark{width:90px;height:90px}
.brand .seal{width:44px;height:44px}
.f-brand .seal{width:44px;height:44px}
.contact-card .seal{width:54px;height:54px}
.divider .seal{width:30px;height:30px;opacity:.48}
.pcard .ph .seal{width:50px;height:50px;opacity:.62}
.pcard .ph .seal img{opacity:.9}
.pillar .num{display:none !important}
.step .ico{display:none !important}
.step h4 .bar{display:none !important}
.step{padding-top:24px}
.step h4{margin-top:0}

@media (max-width:900px){
  .brand .seal{width:38px;height:38px}
  .hero .seal.mark{width:76px;height:76px}
}

@media (max-width:420px){
  .brand .seal{width:34px;height:34px}
}
