/* Styles of this page: rules scoped by the page/component root (also apply to markup rendered by its scripts) */
  #plants--estimate .final.cx-wrap {
    --cxc: #DDEBD0;
  }
  
  #plants--estimate .final.cx-wrap .eyebrow {
    color: var(--green) !important;
  }
  
  #plants--estimate .final.cx-wrap .reassure svg {
    color: var(--green);
  }
  
  @media (max-width:900px) {
    #plants--flow .sec-head p {
      display: none;
    }
  }
  
  #plants--pains .pb-no {
    color: #C9DDBD;
  }
  
  @media (max-width:760px) {
    #p-plants .lp-hero {
      padding-top: 62px !important;
    }
    #p-plants .lp-hero .in {
      padding: 22px 20px 10px !important;
      gap: 16px !important;
    }
    #p-plants .lp-hero .ph {
      height: 150px !important;
      min-height: 0 !important;
      aspect-ratio: auto !important;
    }
    #p-plants .lp-hero .copy {
      gap: 12px !important;
      padding: 0 !important;
    }
    #p-plants .lp-hero h1 {
      font-size: clamp(23px,6.6vw,28px) !important;
      line-height: 1.4 !important;
    }
    #p-plants .lp-hero .copy>p {
      font-size: 13.5px !important;
      line-height: 1.75 !important;
    }
    #p-plants .lp-hero .cut-slide.in-hero {
      margin: 0 -20px 0;
      padding: 0 !important;
    }
    #p-plants .cut-row {
      padding: 10px 0 22px !important;
    }
  }
  
  #p-plants .lp-hero {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 56px !important;
  }
  
  #p-plants .lp-hero .in {
    border-radius: 0 !important;
  }
  
  @media (min-width:761px) {
    #p-plants .lp-hero {
      padding-top: 88px !important;
    }
  }
  
  @media (max-width:760px) {
    #p-plants .lp-hero .in {
      padding-left: 20px !important;
      padding-right: 20px !important;
    }
  }
  
  #p-plants .lp-hero .in {
    position: relative;
    overflow: hidden;
    isolation: isolate;
  }
  
  #p-plants .lp-hero .in>.ph {
    position: absolute !important;
    inset: 0 !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;
    border-radius: 0 !important;
    z-index: -2;
    margin: 0 !important;
    transform: none !important;
    translate: none !important;
  }
  
  #p-plants .lp-hero .in>.ph span {
    display: none;
  }
  
  #p-plants .lp-hero .in::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(100deg,rgba(46,139,87,.92) 0%,rgba(46,139,87,.78) 48%,rgba(46,139,87,.35) 100%);
  }
  
  @media (min-width:761px) {
    #p-plants .lp-hero .in {
      grid-template-columns: minmax(0,1fr) !important;
      min-height: min(78vh,640px);
      align-content: center;
    }
    #p-plants .lp-hero .copy {
      max-width: 620px;
    }
  }
  
  @media (max-width:760px) {
    #p-plants .lp-hero .in::before {
      background: linear-gradient(180deg,rgba(46,139,87,.25) 0%,rgba(46,139,87,.72) 38%,rgba(46,139,87,.92) 70%,rgba(46,139,87,.95) 100%);
    }
    #p-plants .lp-hero .in {
      padding-top: 170px !important;
    }
    #p-plants .lp-hero .in>.ph {
      background-position: center 30% !important;
    }
  }
  
  #p-plants .lp-hero .in::before {
    background: linear-gradient(180deg,rgba(20,10,5,.18) 0%,rgba(20,10,5,.42) 100%) !important;
  }
  
  @media (min-width:761px) {
    #p-plants .lp-hero .in::before {
      background: linear-gradient(90deg,rgba(20,10,5,.5) 0%,rgba(20,10,5,.25) 55%,rgba(20,10,5,.08) 100%) !important;
    }
  }
  
  #p-plants .lp-hero .copy {
    text-shadow: 0 2px 14px rgba(0,0,0,.35);
  }
  
  #p-plants .lp-hero .cut-row img {
    height: clamp(56px,6vw,84px) !important;
  }
  
  @media (max-width:1024px) {
    #p-plants .lp-hero {
      padding-top: 0 !important;
    }
  }
  
  @media (min-width:761px) and (max-width:1024px) {
    #p-plants .lp-hero .in {
      padding-top: 130px !important;
    }
  }
  
  @media (min-width:761px) {
    #plants--season .ss-in {
      grid-template-columns: minmax(0,1fr) !important;
      max-width: 820px !important;
      margin: 0 auto !important;
      gap: 28px !important;
    }
  }
  
  #p-plants .lp-hero .in {
    min-height: 100svh !important;
    align-content: end !important;
    padding-bottom: 18px !important;
  }
  
  #p-plants .lp-hero .in::before {
    background: linear-gradient(180deg,rgba(20,10,5,0) 0%,rgba(20,10,5,0) 40%,rgba(20,10,5,.55) 78%,rgba(20,10,5,.7) 100%) !important;
  }
  
  /* スマホ：FVの画像を画面の高さより大きく表示 */
  @media (max-width:760px) {
    #p-plants .lp-hero .in {
      padding-top: 56px !important;
      min-height: max(115svh,700px) !important;
      align-content: start !important;
    }
    /* コピーは最初の画面の中央（上下のヘッダー分56pxずつを除いた高さで中央揃え） */
    #p-plants .lp-hero .copy {
      min-height: calc(100svh - 112px);
      flex-direction: column;
      justify-content: center;
    }
  }
  
  @media (min-width:761px) {
    #p-plants .lp-hero .in {
      min-height: min(100vh,980px) !important;
    }
  }
  
  @media (min-width:1025px) {
    #p-plants .lp-hero {
      padding-top: 0 !important;
    }
    #p-plants .lp-hero .in {
      padding-top: 140px !important;
    }
  }
  
  /* PC：説明文がある分FVが画面より高くなり、スライドショーが個人輸入代行より下にずれる（画面の高さによっては見切れる）。
     画面が低いときは余白と文字を詰めて、個人輸入代行と同じく最初の画面の下端に表示 */
  @media (min-width:761px) and (max-height:940px) {
    html body #p-plants.page .lp-hero .in {
      padding-top: clamp(88px,calc(100svh - 760px),140px) !important;
    }
    #p-plants .lp-hero .copy {
      gap: 14px !important;
    }
    #p-plants .lp-hero h1 {
      font-size: clamp(30px,5vh,45px) !important;
      line-height: 1.4 !important;
    }
    #p-plants .lp-hero .copy>p {
      font-size: 15px !important;
      line-height: 1.8 !important;
    }
    #p-plants .lp-hero .hero-btn {
      margin-top: 18px;
    }
  }

  /* タブレット縦：個人輸入代行と同じく、スライドショーを最初の画面の下端に固定 */
  @media (min-width:761px) and (max-width:860px) {
    html body #p-plants .lp-hero .in {
      align-content: center !important;
      padding-top: 90px !important;
      padding-bottom: 150px !important;
    }
    #p-plants .lp-hero .cut-slide.in-hero {
      position: absolute !important;
      left: 0;
      right: 0;
      bottom: clamp(16px,4vh,40px);
    }
  }

  #plants--season {
    padding-top: 80px !important;
    padding-bottom: 88px !important;
  }
  
  #plants--season .sec-head {
    margin-bottom: 18px !important;
  }
  
  #plants--season .ss-stick {
    padding-top: 0 !important;
  }
  
  #plants--season .ss-vis {
    padding-top: 0 !important;
    gap: 34px !important;
  }
  
  #plants--season .ss-in {
    gap: 36px !important;
  }
  
  #plants--season .ss-txts {
    padding: 26px 22px 20px !important;
  }
  
  @media (max-width:760px) {
    #plants--season .sec-head p {
      font-size: 13px !important;
      line-height: 1.8 !important;
      margin-top: 10px !important;
    }
    #plants--season .ss-in {
      padding-left: 20px !important;
      padding-right: 20px !important;
    }
    #plants--season .ss-cal {
      gap: 8px !important;
    }
  }
  
  #plants--season.ss {
    padding-top: var(--sp-sec) !important;
    padding-bottom: var(--sp-sec) !important;
  }
  
  #plants--season .sec-head {
    margin-bottom: var(--sp-head) !important;
  }
  
  #plants--season .sec-head p {
    font-size: 15.5px !important;
    line-height: 1.75 !important;
    margin-top: 14px !important;
  }
  
  #p-plants .lp-hero .hero-btn {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    gap: 12px;
    margin-top: 24px;
    background: #fff;
    color: #1F1F1F;
    font-weight: 700;
    font-size: 15px;
    letter-spacing: .06em;
    padding: 14px 28px;
    border-radius: 999px;
    text-decoration: none;
    text-shadow: none;
    transition: background .2s,color .2s;
  }
  
  #p-plants .lp-hero .hero-btn:hover {
    background: #1F4D33;
    color: #fff;
  }
  
  @media (max-width:760px) {
    #p-plants .lp-hero .hero-btn {
      font-size: 14px;
      padding: 12px 24px;
      margin-top: 18px;
    }
  }
  
  #plants--pains .pbs-il .pb {
    padding: 26px 24px 22px 22px;
    gap: 18px;
    min-height: 128px;
  }
  
  #plants--pains .pbs-il .pb-no {
    left: 20px;
    top: 14px;
    translate: none;
    font: 700 13px/1 var(--f-en);
    color: #3E8E5A;
    letter-spacing: .04em;
  }
  
  #plants--pains .pbs-il .pb-il {
    flex: none;
    width: 84px;
    height: 84px;
    border-radius: 50%;
    background: #EAF3E3;
    display: grid;
    place-items: center;
    margin-top: 6px;
  }
  
  #plants--pains .pbs-il .pb-il svg {
    width: 66px;
    height: 66px;
  }
  
  #plants--pains .pbs-il .pb p {
    font-size: clamp(15px,1.35vw,18px);
    line-height: 1.6;
  }
  
  @media (max-width:760px) {
    #plants--pains .pbs-il .pb {
      padding: 22px 18px 18px 16px;
      gap: 14px;
      min-height: 0;
    }
    #plants--pains .pbs-il .pb-il {
      width: 64px;
      height: 64px;
    }
    #plants--pains .pbs-il .pb-il svg {
      width: 52px;
      height: 52px;
    }
    #plants--pains .pbs-il .pb p {
      font-size: 15px;
    }
  }
  
  @media (min-width:761px) {
    #plants--whatwedo .wwd-big {
      white-space: normal !important;
    }
  }
  
  #p-plants .cut-slide.even .cut-row {
    animation-duration: 96s !important;
  }
  
  #plants--pains .pbs-il .pb-il svg {
    width: 42px !important;
    height: 42px !important;
  }
  
  @media (max-width:760px) {
    #plants--pains .pbs-il .pb-il svg {
      width: 32px !important;
      height: 32px !important;
    }
  }
  
  #plants--flow .flow-frame {
    background: #CFE5C3 !important;
  }
  
  #plants--flow .fstep {
    border-color: #D6E8CC !important;
  }
  
  #plants--flow .fstep+.fstep {
    border-top-color: #D6E8CC !important;
  }
  
  #plants--season .ss-cal {
    display: flex !important;
    gap: 8px !important;
    max-width: 620px !important;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    padding: 28px 6px 10px !important;
    scrollbar-width: none;
    margin: 0 auto !important;
  }
  
  #plants--season .ss-cal::-webkit-scrollbar {
    display: none;
  }
  
  #plants--season .ss-cal .m {
    display: flex !important;
    flex: 0 0 64px;
    scroll-snap-align: center;
  }
  
  @media (max-width:760px) {
    #plants--season .ss-cal .m {
      flex-basis: 56px;
    }
  }
  
  #plants--flow .fstep .eta {
    display: inline-block;
    margin: 0 0 4px;
    font-size: 12px;
    font-weight: 700;
    color: #2E8B57 !important;
    background: none !important;
    padding: 0 !important;
  }
  
  #plants--flow .fstep .acts {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 16px;
    margin-top: 12px;
  }
  
  #plants--flow .btn.line .pill {
    background: #06C755;
  }
  
  @media (min-width:761px) {
    #plants--mypage .pmp-ph {
      margin-bottom: 0 !important;
      align-self: center !important;
    }
  }
  
  #p-plants .lp-hero .in>.ph.img-plantshero {
    background-image: url(/img/fv_plants3.webp?v=e58a252993),url(data:image/webp;base64,UklGRngBAABXRUJQVlA4IGwBAACwBwCdASooAB4APr1OnUqnJKKhsBqtUOAXiWcnABTAj3bpbsBlccC+K7vZ8AE0ceq6aFtrzbDWFSVPpgQZDGrUp461iVwAAO0UJbRoHkjiXP0qLaJBQ4J7/0cyOMKNn/67yvfczS/OBANkE/MZsxUQtZOzWoY5W/avEu2A9J8AbFHa5R/E7dpTzawGoAik6Y0fTgUHOIPsoAHz+qCaIlVHxnp4n5HmcSYQsAJrQn6qV8c6IhiMQNWk+4Kbo7s0x/x0DSNi43IHK7AcG3lIxy/FMKpwJqXXbhYxKWocT4W6kJaL8ur8pzizKdm1mIbVMQxDgTN3MYdbw1mChcLxjWImu4IELKgkxAlypROTqsEW4WK+N5muCfizVu7YzJ6bUWm+yuifQ8f3FMVXS07c2jpbfg/Kve5mYJuLMbm3JXUmy2lXAy6gGHH7BraH9KI82mIAp4x9iCEVsHEMletH3IOk4+vRkZjFvLYQTYAA) !important;
  }
  
  #p-plants .lp-hero .in>.ph.img-plantshero {
    filter: brightness(.62) saturate(.95);
  }
  
  @media (max-aspect-ratio:9/10) {
    #p-plants .lp-hero .in>.ph.img-plantshero {
      background-image: url(/img/fv_plants3_m.webp?v=3147e0ad3b),url(data:image/webp;base64,UklGRngBAABXRUJQVlA4IGwBAACwBwCdASooAB4APr1OnUqnJKKhsBqtUOAXiWcnABTAj3bpbsBlccC+K7vZ8AE0ceq6aFtrzbDWFSVPpgQZDGrUp461iVwAAO0UJbRoHkjiXP0qLaJBQ4J7/0cyOMKNn/67yvfczS/OBANkE/MZsxUQtZOzWoY5W/avEu2A9J8AbFHa5R/E7dpTzawGoAik6Y0fTgUHOIPsoAHz+qCaIlVHxnp4n5HmcSYQsAJrQn6qV8c6IhiMQNWk+4Kbo7s0x/x0DSNi43IHK7AcG3lIxy/FMKpwJqXXbhYxKWocT4W6kJaL8ur8pzizKdm1mIbVMQxDgTN3MYdbw1mChcLxjWImu4IELKgkxAlypROTqsEW4WK+N5muCfizVu7YzJ6bUWm+yuifQ8f3FMVXS07c2jpbfg/Kve5mYJuLMbm3JXUmy2lXAy6gGHH7BraH9KI82mIAp4x9iCEVsHEMletH3IOk4+vRkZjFvLYQTYAA) !important;
    }
  }
  
  /* 流れの見出しの下：輸入の時期（季節のセクション）へのリンク */
  #plants--flow .sec-head .fl-season {
    margin-top: 10px;
    font-weight: 700;
  }
  
  #plants--season .ss-cal .m em {
    top: -30px !important;
    overflow: visible;
  }
  
  #plants--season .ss-cal .m em::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -4px;
    width: 8px;
    height: 8px;
    background: inherit;
    transform: translateX(-50%) rotate(45deg);
    border-radius: 1px;
  }
  
  #plants--season .ss-cal {
    padding-top: 36px !important;
  }
  
  /* スマホ：FVのスライドショーはボタンの下（間にスペース）。コピーとスライドショーをまとめて最初の画面の中央より少し下（約40px）に表示
     （下の余白を80px減らすと、中央揃えのまとまりが40px下がる） */
  @media (max-width:760px) {
    html body #p-plants.page .lp-hero .in {
      display: flex !important;
      flex-direction: column;
      justify-content: center;
      gap: 0 !important;
      padding-top: 56px !important;
      padding-bottom: calc(15svh - 24px) !important;
    }
    html body #p-plants.page .lp-hero .copy {
      min-height: 0;
    }
    html body #p-plants.page .lp-hero .cut-slide.in-hero {
      position: static !important;
      margin: 40px -20px 0 !important;
      /* 縦並びのflexで中央揃えにすると中身の幅まで広がりスクロールできず自動で動かないため、画面幅に収める */
      align-self: stretch;
      width: auto !important;
      min-width: 0;
    }
  }