.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .woocommerce-loop-product__title{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price ins{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price ins .amount{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products{--products-title-color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.products-heading-show .related-products > h2, .elementor-widget-woocommerce-products.products-heading-show .upsells > h2, .elementor-widget-woocommerce-products.products-heading-show .cross-sells > h2{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price del{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price del .amount{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price del {font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product .woocommerce-loop-product__title{color:#515152;}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{color:#515152;}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-family:"Noto Sans JP", Sans-serif;font-weight:600;}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product .price{color:#5F5EF0;font-family:"Noto Sans JP", Sans-serif;font-weight:400;}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product .price ins{color:#5F5EF0;}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product .price ins .amount{color:#5F5EF0;}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product .price del{color:#9A09F0;}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product .price del .amount{color:#9A09F0;}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product .button{color:#FFFFFF;background-color:#F34900;font-family:"Noto Sans JP", Sans-serif;font-weight:600;border-radius:5px 5px 5px 5px;}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product{box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-widget-heading .elementor-heading-title{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-17475 .elementor-element.elementor-element-648ee1f .elementor-heading-title{color:#000000;font-family:"Noto Sans JP", Sans-serif;font-weight:700;}.elementor-17475 .elementor-element.elementor-element-e43c8f7:not(.elementor-motion-effects-element-type-background), .elementor-17475 .elementor-element.elementor-element-e43c8f7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8F8F8;}.elementor-17475 .elementor-element.elementor-element-e43c8f7{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-17475 .elementor-element.elementor-element-e43c8f7 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-17475 .elementor-element.elementor-element-031c946 .elementor-heading-title{color:#000000;font-family:"Noto Sans JP", Sans-serif;font-weight:700;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product .woocommerce-loop-product__title{color:#515152;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{color:#515152;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-family:"Noto Sans JP", Sans-serif;font-weight:600;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product .price{color:#5F5EF0;font-family:"Noto Sans JP", Sans-serif;font-weight:400;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product .price ins{color:#5F5EF0;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product .price ins .amount{color:#5F5EF0;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product .price del{color:#9A09F0;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product .price del .amount{color:#9A09F0;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product .button{color:#FFFFFF;background-color:#F34900;font-family:"Noto Sans JP", Sans-serif;font-weight:600;border-radius:5px 5px 5px 5px;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product{box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-17475 .elementor-element.elementor-element-637f092:not(.elementor-motion-effects-element-type-background), .elementor-17475 .elementor-element.elementor-element-637f092 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-17475 .elementor-element.elementor-element-637f092{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-17475 .elementor-element.elementor-element-637f092 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-17475 .elementor-element.elementor-element-786ceff .elementor-heading-title{color:#000000;font-family:"Noto Sans JP", Sans-serif;font-weight:700;}.elementor-widget-call-to-action .elementor-cta__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-call-to-action .elementor-cta__description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-call-to-action .elementor-cta__button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-call-to-action .elementor-ribbon-inner{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-17475 .elementor-element.elementor-element-17cd629 .elementor-cta__content-item{transition-duration:1000ms;}.elementor-17475 .elementor-element.elementor-element-17cd629.elementor-cta--sequenced-animation .elementor-cta__content-item:nth-child(2){transition-delay:calc( 1000ms / 3 );}.elementor-17475 .elementor-element.elementor-element-17cd629.elementor-cta--sequenced-animation .elementor-cta__content-item:nth-child(3){transition-delay:calc( ( 1000ms / 3 ) * 2 );}.elementor-17475 .elementor-element.elementor-element-17cd629.elementor-cta--sequenced-animation .elementor-cta__content-item:nth-child(4){transition-delay:calc( ( 1000ms / 3 ) * 3 );}.elementor-17475 .elementor-element.elementor-element-17cd629 .elementor-cta .elementor-cta__bg, .elementor-17475 .elementor-element.elementor-element-17cd629 .elementor-cta .elementor-cta__bg-overlay{transition-duration:1500ms;}.elementor-17475 .elementor-element.elementor-element-17cd629 .elementor-cta__content{text-align:center;}@media(max-width:1024px){.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}@media(max-width:767px){.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product{text-align:center;padding:0px 0px 10px 0px;}.elementor-17475 .elementor-element.elementor-element-ee21ece > .elementor-widget-container{margin:0px 5px 0px 5px;}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products  ul.products{grid-column-gap:10px;grid-row-gap:20px;}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products .attachment-woocommerce_thumbnail{margin-bottom:0px;}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{line-height:1em;}.elementor-17475 .elementor-element.elementor-element-ee21ece.elementor-wc-products ul.products li.product .button{line-height:1.5em;}.elementor-17475 .elementor-element.elementor-element-b139149{margin-top:70px;margin-bottom:0px;}.elementor-17475 .elementor-element.elementor-element-648ee1f > .elementor-widget-container{margin:40px 0px 0px 0px;}.elementor-17475 .elementor-element.elementor-element-648ee1f{text-align:center;}.elementor-17475 .elementor-element.elementor-element-648ee1f .elementor-heading-title{line-height:3em;}.elementor-17475 .elementor-element.elementor-element-e43c8f7{margin-top:40px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-17475 .elementor-element.elementor-element-031c946 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-17475 .elementor-element.elementor-element-031c946{text-align:center;}.elementor-17475 .elementor-element.elementor-element-031c946 .elementor-heading-title{line-height:3em;}.elementor-17475 .elementor-element.elementor-element-647f46f > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-17475 .elementor-element.elementor-element-cea90a4 > .elementor-widget-container{margin:0px 15px 0px 15px;}.elementor-17475 .elementor-element.elementor-element-44d31aa > .elementor-widget-container{margin:0px 15px 0px 15px;}.elementor-17475 .elementor-element.elementor-element-002cff5{margin-top:48px;margin-bottom:48px;}.elementor-17475 .elementor-element.elementor-element-52c6c4d{margin-top:0px;margin-bottom:40px;}.elementor-17475 .elementor-element.elementor-element-bfb15fc > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product{text-align:center;padding:0px 0px 10px 0px;}.elementor-17475 .elementor-element.elementor-element-1b1a949 > .elementor-widget-container{margin:0px 5px 0px 5px;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products  ul.products{grid-column-gap:10px;grid-row-gap:20px;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products .attachment-woocommerce_thumbnail{margin-bottom:0px;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{line-height:1em;}.elementor-17475 .elementor-element.elementor-element-1b1a949.elementor-wc-products ul.products li.product .button{line-height:1.5em;}.elementor-17475 .elementor-element.elementor-element-786ceff > .elementor-widget-container{margin:30px 0px 0px 0px;padding:15px 15px 15px 15px;}.elementor-17475 .elementor-element.elementor-element-786ceff{text-align:center;}.elementor-17475 .elementor-element.elementor-element-786ceff .elementor-heading-title{line-height:3em;}.elementor-17475 .elementor-element.elementor-element-85f7b86 > .elementor-widget-container{margin:0px 0px 40px 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for html, class: .elementor-element-d9a082c *//* ============================================================
   why2 HERO を lp-section-box デザインに寄せる（追記用）
   ※ 既存の lp-section-* はそのまま使う前提
============================================================ */



/* HERO全体を「白カード + 影 + 角丸」に */
.why2-hero{
  max-width: 760px;
  margin: 24px auto;
  
  padding: 20px 18px;
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
  position: relative;
  overflow: hidden;
}

/* うっすら青のアクセント帯（やりすぎない） */
.why2-hero::before{
  content:"";
  position:absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(2,147,198,.10), rgba(255,255,255,0) 58%);
  pointer-events:none;
}

/* バッジを lp-section-label--blue っぽく */
.why2-hero .why2-badge{
  position: relative;
  display: inline-block;
  padding: 4px 10px;
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: 700;
  color: #0293C6;
  background: #e5f6fc;
  border-radius: 999px;
 
}

/* タイトル：lp-section-title に寄せる */
.why2-hero h1{
  position: relative;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.5;
  margin: 0 0 10px;
  color: #222;
  text-align: center;
}

/* 説明文：読みやすい行間・色 */
.why2-hero p{
  position: relative;
  margin: 0;
  font-size: 15px;
  line-height: 1.8;
  color: #333;
  font-weight: 400; 
}

/* CTA行：スマホは縦 / PCは横 */
.why2-hero .why2-ctaRow{
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

/* ボタン：lp系のトーン（丸み/影/押しやすさ） */
.why2-hero .why2-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  font-weight: 700;
  font-size: 14px;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid #e5e7eb;
  background: #fff;
  color: #222;
  min-width: 220px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06);
  transition: transform .08s ease, box-shadow .12s ease, opacity .12s ease;
}

/* メインCTA：スカイブルー */
.why2-hero .why2-btnPrimary{
  background: #0293C6;
  border-color: #0293C6;
  color: #fff;
}

/* hover / active（やりすぎない） */
.why2-hero .why2-btn:hover{
  box-shadow: 0 6px 18px rgba(0,0,0,0.10);
  transform: translateY(-1px);
}
.why2-hero .why2-btn:active{
  transform: translateY(0px);
  opacity: .92;
}

/* レスポンシブ */
@media (min-width: 768px){
  .why2-hero{
    padding: 24px 28px;
    margin: 28px auto;
  }
  .why2-hero h1{
    font-size: 20px;
    margin-bottom: 12px;
  }
  .why2-hero p{
    font-size: 15px;
  }
}


/* セクション全体 */
.reasons-section {
    padding: 0px 0 10px;
}


/* タイトル */
.reasons-title {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 16px;
}

/* 各理由のカード全体 */
.reasons-container {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* 理由カード */
.reason-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;

    padding: 13px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.06);
}

/* 番号バッジ */
.reason-num {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #1e6ee6;
    color: #fff;
    font-size: 16px;
    font-weight: 700;

    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
}

/* テキスト部分 */
.reason-content h3 {
    font-size: 19px;
    font-weight: 700;
    margin: 0 0 4px;
    text-decoration: underline;
}

.reason-content p {
    font-size: 15px;
    margin-top: 10px;
    line-height: 1.5;
    color: #444;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b49a1ca *//* =========================
  Needs Awareness Section
  - Noto Sans JP
  - Simple / readable
========================= */

.awareness-section{
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  max-width: 760px;
  margin: 24px auto;
  padding: 0 14px;
}

.awareness-box{
  background:#fff;
  border:1px solid #e6eef5;
  border-radius:16px;
  padding: 18px 16px;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
}

.awareness-lead{
  margin:0 0 12px;
  font-size:18px;
  font-weight:800;
  color:#111827;
  letter-spacing:.2px;
}

.awareness-list{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}

.awareness-list li{
  background:#f7fbff;
  border:1px solid #d9ecff;
  border-radius:12px;
  padding:10px 12px;
  font-size:15px;
  line-height:1.65;
  color:#1f2937;
  font-weight: 400;
}

.awareness-note{
  margin:12px 0 0;
  font-size:15px;
  line-height:1.75;
  color:#374151;
}

.awareness-note b{
  font-weight:600;
}

@media (min-width: 768px){
  .awareness-box{
    padding: 22px 22px;
  }
  .awareness-lead{
    font-size:15px;
  }
  .awareness-list li{
    font-size:15px;
    padding:12px 14px;
  }
  .awareness-note{
    font-size:14px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-484ba44 *//* =========================================================
   mech-note：カード版（差し替え用）
========================================================= */

.mech-note{
  max-width: 760px;
  margin: 24px auto;
  padding: 18px;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
  font-family: "Noto Sans JP", system-ui, -apple-system, "Segoe UI", Roboto, "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  color: #111;
  position: relative;
  overflow: hidden;
}

.mech-note::before{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(2,147,198,.10), rgba(255,255,255,0) 55%);
  pointer-events:none;
}

.mech-note__head{
  position: relative;
  margin-bottom: 12px;
}

.mech-note__eyebrow{
  font-weight: 900;
  font-size: 22px;
  letter-spacing: .2px;
  color: #111;
  margin: 0 0 10px;
  text-align: center;
}

.mech-note__badge{
  display: inline-block;
  padding: 4px 10px;
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: 800;
  color: #0293C6;
  background: #e5f6fc;
  border-radius: 999px;
}

.mech-note__lead{
  margin: 0;
  font-size: 15px;
  line-height: 1.8;
  color: #333;
}

.mech-flow{
  position: relative;
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.mech-step{
  background: #fff;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 14px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06);
  padding: 14px;
}

.mech-step__dot{ display:none; }

.mech-step__kicker{
  margin: 0 0 8px;
  font-weight: 700;
  font-size: 18px;
  color: #111;
}

.mech-step__text{
  margin: 0;
  font-size: 15px;
  line-height: 1.85;
  color: #333;
}

.mech-list{
  margin: 10px 0 10px;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
}

.mech-list li{
  position: relative;
  padding-left: 24px;
  font-size: 14px;
  line-height: 1.7;
  color: #333;
}

.mech-list li::before{
  content: "✔";
  position: absolute;
  left: 0;
  top: 1px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #3EC28F;
  color: #fff;
  font-size: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 4px rgba(0,0,0,0.12);
}

.mech-step__hint{
  margin: 10px 0 0;
  padding: 10px 12px;
  border-radius: 12px;
  background: #f7fbff;
  border: 1px solid #d9effa;
  font-size: 13px;
  line-height: 1.75;
  color: #1f2a37;
}

/* =========================================================
   mech carousel（ナビは青丸版のみ）
========================================================= */

.mech-carousel{
  margin-top: 14px;
  position: relative;
}

.mech-carousel__viewport{
  overflow: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  border-radius: 14px;
  border: 1px solid #e5e7eb;
  background: #fff;
}

.mech-carousel__track{
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 78%;
  gap: 10px;
  padding: 10px;
}

.mech-carousel__item{
  margin: 0;
  scroll-snap-align: start;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid #eef2f7;
  background: #f8fafc;
}

.mech-carousel__img{
  width: 100%;
  height: 220px;
  object-fit: cover;
  display: block;
}

.mech-carousel__note{
  margin: 8px 0 0;
  font-size: 12px;
  color: #6b7280;
  line-height: 1.6;
}

/* ナビ（青丸・中央揃え） */
.mech-carousel__nav{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: #0293C6;
  border: none;

  display: flex;
  align-items: center;
  justify-content: center;

  color: #fff;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;

  cursor: pointer;
  box-shadow: 0 6px 18px rgba(0,0,0,.18);
  opacity: .9;
  transition: opacity .15s ease, transform .15s ease, box-shadow .15s ease;
  z-index: 2;
}

.mech-carousel__prev{ left: -10px; }
.mech-carousel__next{ right: -10px; }

.mech-carousel__nav:hover{
  opacity: 1;
  transform: translateY(-50%) scale(1.05);
  box-shadow: 0 10px 24px rgba(0,0,0,.22);
}

.mech-carousel__nav:active{
  transform: translateY(-50%) scale(.96);
}

/* =========================================================
   Responsive（統合）
========================================================= */
@media (min-width: 768px){
  .mech-note{
    padding: 22px 24px;
    margin: 28px auto;
  }

  .mech-note__eyebrow{
    font-size: 20px; /* ← 22→17 になってたのは不自然なので整えた */
  }

  .mech-step{
    padding: 16px;
  }

  .mech-step__text,
  .mech-list li{
    font-size: 15px;
  }

  .mech-carousel__track{
    grid-auto-columns: 32%;
    gap: 12px;
    padding: 12px;
  }

  .mech-carousel__img{ height: 180px; }

  .mech-carousel__prev{ left: -16px; }
  .mech-carousel__next{ right: -16px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-661f535 *//* iPhone で発生する Elementor の余白を強制的にゼロにする */
@media (max-width: 767px) {
    .elementor-14277 .elementor-element.elementor-element-8d484f5 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}

/* タイトル全体：上の余白を圧縮（最重要） */
.plan-header {
    text-align: center;
    margin-top: 0 !important;        /* ← 10px → 0 に圧縮 */
    margin-bottom: 10px !important;  /* ← 20px → 10px */
    padding: 0 10px;
}

/* 大タイトル */
.plan-title {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 4px; /* ← 8px → 4px に圧縮 */
    line-height: 1.3;
}

/* 絵文字サイズ */
.plan-title .emoji-icon {
    width: 26px;
    height: 26px;
    vertical-align: middle;
    margin-left: 4px;
}

/* サブ説明：スワイプ案内（下の余白を圧縮） */
.plan-subtext {
    font-size: 14px;
    color: #666;
    margin-bottom: 6px !important;  /* ←12px→6px */
}

/* リード文（特徴強調）：さらに圧縮 */
.plan-lead {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.45;
    margin: 0 auto 12px auto !important; /* ←20px→12px */
    color: #111;
}

.plan-lead .accent {
    color: #ff4d4f;
}

/* ▼▼ これが効く：タブ直上の余白を確実に消す ▼▼ */
.tab-container,
.tab-buttons,
.tab-swiper,
.tab-wrapper {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Elementorによる余白を殺す（テーマ依存） */
.elementor-widget-container {
    margin-top: 0 !important;
    padding-top: 0 !important;
}/* End custom CSS */
/* Start custom CSS for woocommerce-products, class: .elementor-element-ee21ece *//* メインLPでは割引率（-99%）を非表示 */
body[class*="page-id"] .my-sale-badge {
  display: none !important;
}

.product-review-stars .glsr-summary {
  gap: 6px;
}

.product-review-stars .glsr-summary-rating {
  font-weight: 900;
}

.product-review-stars .glsr-summary-text {
  font-size: 12px;
  color: #666;
}

/* 商品カード内のSite Reviewsを中央寄せ */
.product-review-stars,
.product-review-stars .glsr-summary,
.product-review-stars .glsr-summary-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-daa9bc0 *//* ============================
   0) 全体
============================ */
.order-flow-cards {
    text-align: center;
    padding: 8px 10px;
    margin-top: 0px;
}

.order-flow-title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 16px;
}

/* ============================
   1) 3カラムグリッド
============================ */
.order-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

/* SPは1列 */
@media (max-width: 768px) {
    .order-cards-grid {
        grid-template-columns: 1fr;
    }
}

/* ============================
   2) カードデザイン（コンパクト版）
============================ */
.order-card {
    background: #ffffff;
    padding: 14px 12px;
    border-radius: 12px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
    border: 1px solid #eee;

    /* ←★ ここから削除
    opacity: 0;
    transform: translateY(18px);
    ★ フェードインは .fade-in/.show 側で制御する */
    
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

/* 横並び（アイコン + タイトル） */
.order-title-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
}

/* ============================
   3) 絵文字アイコン
============================ */
.order-emoji {
    font-size: 26px;
    line-height: 1;
}

/* ============================
   4) タイトル & テキスト
============================ */
.order-step-title {
    font-size: 16px;
    font-weight: 700;
    margin: 0;
}

.order-step-text {
    font-size: 14px;
    line-height: 1.45;
    margin: 0;
    color: #444;
}

/* ============================
   5) 注意書き
============================ */
.order-note {
    font-size: 12px;
    margin-top: 10px;
    color: #555;
}

/* ============================
   6) スクロールアニメーション
   （JSが無くても見えるように）
============================ */
/* =============================
   スクロールふわっとアニメ（安全版）
============================= */

.fade-in {
    opacity: 0.85;
    transform: translateY(14px);
    transition: opacity 0.65s cubic-bezier(0.22, 0.61, 0.36, 1),
                transform 0.65s cubic-bezier(0.22, 0.61, 0.36, 1);
}

/* アニメ後：完全に見せる */
.fade-in.show {
    opacity: 1;
    transform: translateY(0);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-647f46f */.elementor-widget:not(:last-child) {
  margin-bottom: 0 !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bfb15fc *//* ランキング全体のボックス */
.ranking-box {
    background: #fff;
    padding: 16px 18px;
    border-radius: 12px;
    box-shadow: 0 4px 14px rgba(0,0,0,0.06);
    margin: 10px 0;
    font-family: "Noto Sans JP", sans-serif;
}

/* 各行のスタイル */
.rank-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 8px;
    border-bottom: 1px solid #eee;
}

.rank-item:last-child {
    border-bottom: none;
}

/* ランキング番号（メダル） */
.rank-num {
    font-size: 18px;
    font-weight: 700;
}

/* リンクテキスト */
.rank-link {
    font-size: 18px;
    font-weight: 600;
    color: #007aff;
    text-decoration: none;
}

.rank-link:hover {
    text-decoration: underline;
}

/* 視覚的強調（順位別カラー） */
.rank-1 .rank-num { color: #ff9500; }
.rank-2 .rank-num { color: #999; }
.rank-3 .rank-num { color: #c47f43; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7eb9d5f *//* ================================
   返金保証セクション（背景）
================================ */
.refund-section {
    background: #f2f7ff; /* 淡いブルーで安心感 */
    padding: 40px 18px;
    margin: 0;
}

/* ================================
   カードデザイン
================================ */
.refund-card {
    background: #fff;
    border-radius: 14px;
    padding: 28px 22px;
    box-shadow: 0 4px 14px rgba(0,0,0,0.07);
    max-width: 600px;
    margin: 0 auto;
}

/* タイトル */
.refund-title {
    font-size: 24px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 12px;
}

.refund-title .emoji {
    font-size: 24px;
    margin-right: 4px;
}

/* リード文 */
.refund-lead {
    font-size: 16px;
    text-align: center;
    line-height: 1.6;
    margin-bottom: 18px;
}

/* 箇条書き */
.refund-list {
    list-style: none;
    padding: 0;
    margin-bottom: 18px;
    font-size: 15px;
    line-height: 1.7;
}

.refund-list li::before {
    content: "✔ ";
    color: #4a8cf6;
    font-weight: 700;
}

/* 下の補足テキスト */
.refund-note {
    font-size: 15px;
    color: #555;
    text-align: center;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-498be0a *//* ============================================================
   ▼ セクション 共通レイアウト
============================================================ */
.lp-section-box {
    max-width: 760px;
    margin: 24px auto;
    padding: 20px 18px;
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

/* セクションラベル（基本はグリーン系に統一） */
.lp-section-label {
    display: inline-block;
    padding: 4px 10px;
    margin-bottom: 10px;
    font-size: 12px;
    font-weight: 700;
    color: #1A8F5E;
    background: #E9FFF4;
    border-radius: 999px;
}

/* 青バージョンも残す */
.lp-section-label--blue {
    color: #0293C6;
    background: #e5f6fc;
}

/* セクションタイトル */
.lp-section-title {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
    margin: 0 0 14px;
    color: #222;
}

/* 強調 */
.lp-bold {
    font-weight: 700;
}

.lp-highlight {
    background: linear-gradient(transparent 60%, #fff2a0 60%);
    font-weight: 700;
}

/* ============================================================
   ▼ チェックリスト
============================================================ */
.lp-check-list {
    list-style: none;
    padding: 0;
    margin: 8px 0 0;
}

.lp-check-list li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 8px 0;
    border-top: 1px dashed #eee;
}

.lp-check-list li:first-child {
    border-top: none;
}

/* チェックアイコン（緑系で統一） */
.lp-check-icon {
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #3EC28F; /* ミントグリーン */
    color: #fff;
    font-size: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 3px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.12);
}

/* チェック項目テキスト */
.lp-check-text {
    font-size: 14px;
    line-height: 1.6;
    color: #333;
}

/* ============================================================
   ▼ 安全性ブロックのグリッド
============================================================ */
.lp-safety-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin-top: 6px;
}

.lp-safety-item {
    padding: 10px 10px 8px;
    border-radius: 10px;
    background: #f7f9ff;
    border: 1px solid #e0e5ff;
}

.lp-safety-title {
    font-size: 14px;
    font-weight: 700;
    margin: 0 0 4px;
    color: #1b3c80;
}

.lp-safety-text {
    font-size: 13px;
    line-height: 1.6;
    margin: 0;
    color: #333;
}

/* スマホ専用改行 */
.sp-only {
    display: inline;
}

/* ============================================================
   ▼ レスポンシブ
============================================================ */
@media (min-width: 768px) {
    .lp-section-box {
        padding: 24px 28px;
        margin: 28px auto;
    }

    .lp-section-title {
        font-size: 20px;
    }

    .lp-check-text {
        font-size: 15px;
    }

    .lp-safety-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sp-only {
        display: none;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-93d21b4 *//* iPhone で発生する Elementor の余白を強制的にゼロにする */
@media (max-width: 767px) {
    .elementor-14277 .elementor-element.elementor-element-8d484f5 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}

/* タイトル全体：上の余白を圧縮（最重要） */
.plan-header {
    text-align: center;
    margin-top: 0 !important;        /* ← 10px → 0 に圧縮 */
    margin-bottom: 10px !important;  /* ← 20px → 10px */
    padding: 0 10px;
}

/* 大タイトル */
.plan-title {
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 4px; /* ← 8px → 4px に圧縮 */
    line-height: 1.3;
}

/* 絵文字サイズ */
.plan-title .emoji-icon {
    width: 26px;
    height: 26px;
    vertical-align: middle;
    margin-left: 4px;
}

/* サブ説明：スワイプ案内（下の余白を圧縮） */
.plan-subtext {
    font-size: 14px;
    color: #666;
    margin-bottom: 6px !important;  /* ←12px→6px */
}

/* リード文（特徴強調）：さらに圧縮 */
.plan-lead {
    font-size: 17px;
    font-weight: 600;
    line-height: 1.45;
    margin: 0 auto 12px auto !important; /* ←20px→12px */
    color: #111;
}

.plan-lead .accent {
    color: #ff4d4f;
}

/* ▼▼ これが効く：タブ直上の余白を確実に消す ▼▼ */
.tab-container,
.tab-buttons,
.tab-swiper,
.tab-wrapper {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Elementorによる余白を殺す（テーマ依存） */
.elementor-widget-container {
    margin-top: 0 !important;
    padding-top: 0 !important;
}/* End custom CSS */
/* Start custom CSS for sp_easy_accordion_pro_shortcode, class: .elementor-element-85f7b86 */.collapsed{
    font-size: 16px!important;
}

/* ================================
   FAQ 全体のシンプルデザイン
================================ */
#sp-ea-9669.sp-easy-accordion > .sp-ea-single {
    border: none !important;
    background: #fff !important;
    margin-bottom: 8px !important;
    border-radius: 12px !important;
    box-shadow: 0 3px 10px rgba(0,0,0,0.06);
    padding: 0 4px;
    transition: 0.25s ease;
}

/* ホバーでうっすら浮く */
#sp-ea-9669 .sp-ea-single:hover {
    transform: translateY(-1px);
    box-shadow: 0 5px 14px rgba(0,0,0,0.10);
}

/* ================================
   質問タイトル部分
================================ */
#sp-ea-9669 .ea-header a {
    display: flex;
    align-items: center;
    font-size: 15px !important;
    font-weight: 600 !important;
    padding: 16px 14px !important;
    color: #222 !important;
    border-radius: 12px;
}

/* プラスアイコン（左） */
#sp-ea-9669 .ea-expand-icon {
    font-size: 18px !important;
    margin-right: 10px;
    color: #444 !important;
    transition: transform 0.25s ease;
}

/* 開いたときマイナスに回転 */
#sp-ea-9669 .ea-header a[aria-expanded="true"] .ea-expand-icon {
    transform: rotate(45deg);
}

/* ================================
   回答部分（コンパクト & 読みやすい）
================================ */
#sp-ea-9669 .ea-body {
    padding: 12px 16px 18px 40px !important;
    font-size: 14px !important;
    background: #fafafa !important;
    line-height: 1.6;
    border-radius: 0 0 12px 12px;
}

/* テキスト色 */
#sp-ea-9669 .ea-body p {
    color: #444 !important;
    margin: 4px 0 !important;
}

/* ================================
   よくある質問タイトル（中央寄せ & シンプル）
================================ */
.faq-heading {
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    margin: 0 0 18px 0;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-009725a *//* ▼ カード全体 */
.line-help-card {
    background: #ffffff;
    border-radius: 16px;
    padding: 28px 20px;
    margin: 20px 0;
    text-align: center;
    box-shadow: 0 6px 18px rgba(0,0,0,0.08);
}

/* ▼ タイトル */
.line-help-title {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 12px;
}

/* ▼ サブテキスト */
.line-help-sub {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 4px;
}

.line-help-note {
    font-size: 14px;
    margin-bottom: 20px;
}

/* ▼ LINEボタン（CVボタン） */
.line-help-button {
    display: inline-block;
    background: #06C755;
    color: #fff;
    padding: 16px 26px;
    border-radius: 50px;
    font-size: 18px;
    font-weight: 700;
    text-decoration: none;

    box-shadow: 0 4px 12px rgba(6,199,85,0.4);
    transition: 0.25s ease;
}

/* ホバー効果 */
.line-help-button:hover {
    transform: scale(1.04);
    box-shadow: 0 6px 16px rgba(6,199,85,0.55);
}

/* ▼ 注意書き */
.line-help-small {
    font-size: 12px;
    color: #666;
    margin-top: 14px;
}/* End custom CSS */