@charset "UTF-8";

:root{
  --rk-red:#006e52;
  --rk-red-dark:#005a43;
  --rk-red-soft:#eefaf6;
  --rk-black:#202020;
  --rk-text:#333;
  --rk-gray:#f6f6f6;
  --rk-line:#e6e6e6;
  --rk-gold:#b48b35;
}

.shopify-page{
  color:var(--rk-text);
  background:#fff;
  font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;
  letter-spacing:.03em;
}
.shopify-page img{max-width:100%;height:auto;}
.shopify-contents{background:#fff;overflow:hidden;}
.shopify-inner{width:min(1120px,calc(100% - 40px));margin:0 auto;}
.shopify-wide{width:min(1240px,calc(100% - 40px));margin:0 auto;}
.shopify-breadcrumb{width:min(1240px,calc(100% - 40px));margin:0 auto;padding:24px 0 6px;font-size:13px;}
.shopify-breadcrumb ol{display:flex;gap:10px;align-items:center;list-style:none;margin:0;padding:0;}
.shopify-breadcrumb li{color:#777;}
.shopify-breadcrumb li+li:before{content:">";margin-right:10px;color:#aaa;}
.shopify-breadcrumb a{color:#444;text-decoration:none;}
.shopify-breadcrumb a:hover{color:var(--rk-red);}

.shopify-sec-en{font-size:15px;font-weight:800;color:var(--rk-red);letter-spacing:.18em;margin:0 0 8px;text-align:left;}
.shopify-sec-title{font-size:34px;line-height:1.45;margin:0 0 24px;color:var(--rk-black);font-weight:900;letter-spacing:.05em;}
.shopify-sec-title:after{content:"";display:block;width:70px;height:4px;background:var(--rk-red);border-radius:999px;margin:16px 0 0;}
.shopify-sec-title.center,.shopify-sec-en.center{text-align:center;}
.shopify-sec-title.center:after{margin:16px auto 0;}
.shopify-center-text{text-align:center;margin:0 0 30px;line-height:2;}

.shopify-hero{position:relative;background:linear-gradient(120deg,#fff 0%,#fff 50%,#f6f6f6 50%,#fff 100%);padding:48px 0 62px;border-bottom:1px solid var(--rk-line);}
.shopify-hero:before{content:"";position:absolute;left:0;top:0;width:100%;height:100%;background:radial-gradient(circle at 12% 20%,rgba(196,0,18,.08),transparent 28%),radial-gradient(circle at 88% 68%,rgba(196,0,18,.07),transparent 30%);pointer-events:none;}
.shopify-hero__inner{position:relative;z-index:1;width:min(1240px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:center;}
.shopify-label{display:inline-flex;align-items:center;gap:8px;background:var(--rk-red-soft);color:var(--rk-red);font-weight:800;border:1px solid rgba(196,0,18,.18);border-radius:999px;padding:8px 18px;margin:0 0 16px;font-size:15px;}
.shopify-hero h2{font-size:64px;line-height:1.12;margin:0 0 18px;color:#111;font-weight:900;letter-spacing:.05em;}
.shopify-hero h2 span{display:inline-block;color:var(--rk-red);font-size:78px;letter-spacing:.02em;text-shadow:4px 4px 0 rgba(196,0,18,.08);}
.shopify-hero__lead{font-size:18px;line-height:2;max-width:680px;margin:0 0 18px;font-weight:600;}
.shopify-hero__tags{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px;padding:0;list-style:none;}
.shopify-hero__tags li{background:#fff;border:1px solid var(--rk-line);border-left:4px solid var(--rk-red);border-radius:8px;padding:8px 14px;font-weight:700;font-size:14px;box-shadow:0 8px 24px rgba(0,0,0,.04);}
.shopify-price{display:flex;align-items:flex-end;gap:10px;color:var(--rk-red);margin:0 0 24px;}
.shopify-price span{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;background:var(--rk-red);color:#fff;border-radius:50%;font-weight:900;font-size:17px;line-height:1.25;}
.shopify-price strong{font-size:86px;line-height:.84;font-weight:900;letter-spacing:.01em;}
.shopify-price em{font-style:normal;font-size:32px;font-weight:900;padding-bottom:5px;}
.shopify-cta{display:flex;flex-wrap:wrap;gap:16px;}
.shopify-btn{display:inline-flex;align-items:center;justify-content:center;min-width:240px;min-height:62px;border-radius:8px;padding:12px 24px;font-weight:900;text-align:center;text-decoration:none;transition:.25s ease;letter-spacing:.05em;box-shadow:0 10px 25px rgba(0,0,0,.1);}
.shopify-btn:hover{transform:translateY(-2px);filter:brightness(1.03);text-decoration:none;}
.shopify-btn--red{background:linear-gradient(135deg,var(--rk-red),#e00018);color:#fff!important;}
.shopify-btn--white{background:#fff;color:var(--rk-red)!important;border:2px solid var(--rk-red);}
.shopify-btn--dark{background:#222;color:#fff!important;border:2px solid #222;}
.shopify-btn span{font-size:20px;margin-left:8px;}
.shopify-hero__visual{min-height:420px;position:relative;}
.shopify-monitor{position:absolute;right:40px;top:38px;width:520px;max-width:90%;background:#222;border-radius:18px 18px 10px 10px;padding:18px 18px 24px;box-shadow:0 25px 55px rgba(0,0,0,.22);}
.shopify-monitor:after{content:"";position:absolute;left:50%;bottom:-54px;transform:translateX(-50%);width:250px;height:22px;background:linear-gradient(90deg,#d5d5d5,#f8f8f8,#ccc);border-radius:0 0 20px 20px;}
.shopify-monitor__bar{height:24px;background:#efefef;border-radius:8px 8px 0 0;position:relative;}
.shopify-monitor__bar:before{content:"";position:absolute;left:12px;top:8px;width:8px;height:8px;border-radius:50%;background:#e44;box-shadow:16px 0 #f4c542,32px 0 #39a96b;}
.shopify-monitor__screen{height:285px;background:#fff;border-radius:0 0 8px 8px;padding:22px;display:grid;grid-template-columns:1.2fr .8fr;gap:18px;}
.shopify-screen__main{background:linear-gradient(145deg,#fafafa,#eee);border:1px solid #ddd;border-radius:12px;position:relative;}
.shopify-screen__main:before{content:"";position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:130px;height:90px;border-radius:14px;background:linear-gradient(135deg,#111,#555);box-shadow:0 24px 0 -12px rgba(196,0,18,.18);}
.shopify-screen__main:after{content:"";position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:46px;height:46px;border-radius:50%;background:#222;border:8px solid #777;}
.shopify-screen__list{display:grid;gap:12px;}
.shopify-screen__list span{display:block;background:linear-gradient(90deg,#006e52 0 30%,#f3f3f3 30%);border-radius:8px;}
.shopify-phone{position:absolute;right:10px;bottom:15px;width:150px;height:250px;background:#222;border-radius:24px;padding:18px 12px;box-shadow:0 20px 35px rgba(0,0,0,.22);}
.shopify-phone:before{content:"";display:block;height:62px;border-radius:12px;background:linear-gradient(135deg,#111,#555);margin-bottom:16px;border:8px solid #fff;}
.shopify-phone span{display:block;height:24px;border-radius:6px;background:#fff;margin:9px 0;}

.shopify-feature{background:#fff;padding:34px 0;}
.shopify-feature__grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--rk-line);border-radius:14px;overflow:hidden;box-shadow:0 14px 35px rgba(0,0,0,.05);}
.shopify-feature__item{padding:28px 26px;background:#fff;border-right:1px solid var(--rk-line);}
.shopify-feature__item:last-child{border-right:none;}
.shopify-feature__item span{display:block;color:var(--rk-red);font-weight:900;font-size:28px;margin-bottom:8px;}
.shopify-feature__item h3{font-size:20px;margin:0 0 10px;color:#222;font-weight:900;}
.shopify-feature__item p{font-size:14px;line-height:1.8;margin:0;}

.shopify-service,.shopify-prepare,.shopify-option,.shopify-trouble,.shopify-faq{padding:80px 0;}
.shopify-service{background:#fafafa;border-top:1px solid var(--rk-line);border-bottom:1px solid var(--rk-line);}
.shopify-two{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center;}
.shopify-service p{font-size:16px;line-height:2.1;margin:0 0 14px;}
.shopify-service__box{background:#fff;border:1px solid var(--rk-line);border-radius:18px;padding:34px;box-shadow:0 20px 45px rgba(0,0,0,.06);position:relative;overflow:hidden;}
.shopify-service__box:before{content:"";position:absolute;right:-40px;top:-40px;width:130px;height:130px;border-radius:50%;background:rgba(196,0,18,.08);}
.shopify-service__box h3{font-size:24px;margin:0 0 20px;color:var(--rk-red);font-weight:900;}
.shopify-service__box ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.shopify-service__box li{background:var(--rk-red-soft);border-left:4px solid var(--rk-red);border-radius:8px;padding:11px 12px;font-weight:800;font-size:14px;}

.shopify-prepare__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px;}
.shopify-prepare__card{background:#fff;border:1px solid var(--rk-line);border-radius:18px;padding:36px 32px;box-shadow:0 18px 44px rgba(0,0,0,.06);position:relative;}
.shopify-card-no{position:absolute;right:24px;top:22px;width:46px;height:46px;border-radius:50%;background:var(--rk-red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;}
.shopify-prepare__card h3{font-size:25px;margin:0 0 14px;font-weight:900;}
.shopify-prepare__card p{line-height:2;margin:0;}
.shopify-note{margin:24px 0 0;padding:18px 24px;background:#fff8e8;border:1px solid #f0dbab;border-radius:12px;text-align:center;font-weight:700;line-height:1.9;}

.shopify-types{padding:80px 0;background:#f7f7f7;border-top:1px solid var(--rk-line);border-bottom:1px solid var(--rk-line);}
.shopify-type__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px;}
.shopify-type__grid article{background:#fff;border:1px solid var(--rk-line);border-radius:16px;padding:32px 24px 28px;box-shadow:0 14px 34px rgba(0,0,0,.05);position:relative;overflow:hidden;}
.shopify-type__grid article:before{content:"";position:absolute;left:0;top:0;border-style:solid;border-width:62px 62px 0 0;border-color:var(--rk-red) transparent transparent transparent;}
.shopify-type__grid span{position:absolute;left:10px;top:8px;color:#fff;font-size:18px;font-weight:900;z-index:1;}
.shopify-type__grid h3{font-size:19px;line-height:1.55;margin:16px 0 12px;font-weight:900;color:#222;}
.shopify-type__grid p{font-size:14px;line-height:1.9;margin:0;}

.shopify-option__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:30px;}
.shopify-option__grid div{background:#fff;border:1px solid var(--rk-line);border-radius:14px;padding:24px 18px;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,.05);}
.shopify-option__grid div:before{content:"";display:block;width:42px;height:42px;border:3px solid var(--rk-red);border-radius:12px;margin:0 auto 14px;background:linear-gradient(135deg,#fff,#ffe8ea);}
.shopify-option__grid b{display:block;font-size:17px;line-height:1.5;margin-bottom:8px;color:#222;}
.shopify-option__grid p{font-size:13px;line-height:1.8;margin:0;}

.shopify-items{padding:82px 0;background:#fff url('../img/bg_body.jpg') repeat;border-top:1px solid var(--rk-line);border-bottom:1px solid var(--rk-line);}
.shopify-items__grid{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border:1px solid var(--rk-line);border-radius:18px;overflow:hidden;box-shadow:0 20px 44px rgba(0,0,0,.07);}
.shopify-items__grid div{padding:24px 26px;border-right:1px solid var(--rk-line);border-bottom:1px solid var(--rk-line);min-height:112px;}
.shopify-items__grid div:nth-child(3n){border-right:none;}
.shopify-items__grid div:nth-last-child(-n+3){border-bottom:none;}
.shopify-items__grid span{display:block;font-size:19px;font-weight:900;color:var(--rk-red);margin-bottom:8px;}
.shopify-items__grid p{margin:0;line-height:1.8;font-size:14px;}

.shopify-trouble{background:#fafafa;}
.shopify-trouble__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px;}
.shopify-trouble__grid div{background:#fff;border:1px solid var(--rk-line);border-radius:16px;padding:30px 24px;box-shadow:0 12px 34px rgba(0,0,0,.05);}
.shopify-trouble__grid div:before{content:"!";display:flex;align-items:center;justify-content:center;width:46px;height:46px;background:var(--rk-red);color:#fff;border-radius:50%;font-size:26px;font-weight:900;margin-bottom:16px;}
.shopify-trouble__grid h3{font-size:20px;margin:0 0 10px;font-weight:900;}
.shopify-trouble__grid p{font-size:14px;line-height:1.9;margin:0;}

.shopify-flow{padding:82px 0;background:#fff;}
.shopify-flow__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:32px;}
.shopify-flow__grid div{background:#fff;border:1px solid #efc6cb;border-radius:14px;padding:26px 18px;position:relative;text-align:center;box-shadow:0 10px 28px rgba(196,0,18,.07);}
.shopify-flow__grid div:not(:last-child):after{content:"";position:absolute;right:-12px;top:50%;width:20px;height:2px;background:var(--rk-red);z-index:2;}
.shopify-flow__grid span{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--rk-red);color:#fff;font-weight:900;margin:0 auto 14px;}
.shopify-flow__grid h3{font-size:18px;margin:0 0 8px;font-weight:900;}
.shopify-flow__grid p{font-size:13px;line-height:1.8;margin:0;}

.shopify-faq{background:#f7f7f7;border-top:1px solid var(--rk-line);}
.shopify-faq__list{margin-top:30px;display:grid;gap:14px;}
.shopify-faq details{background:#fff;border:1px solid var(--rk-line);border-radius:12px;box-shadow:0 10px 26px rgba(0,0,0,.04);overflow:hidden;}
.shopify-faq summary{cursor:pointer;padding:20px 24px;font-size:17px;font-weight:900;list-style:none;position:relative;}
.shopify-faq summary::-webkit-details-marker{display:none;}
.shopify-faq summary:before{content:"Q";display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--rk-red);color:#fff;margin-right:10px;font-size:15px;}
.shopify-faq p{padding:0 24px 22px 64px;margin:0;line-height:2;}

.shopify-bottom-cta{background:linear-gradient(135deg,#b50012,#e00018);padding:56px 0;color:#fff;}
.shopify-bottom-cta__inner{width:min(1160px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center;}
.shopify-bottom-cta h2{font-size:32px;line-height:1.5;margin:0 0 10px;font-weight:900;}
.shopify-bottom-cta p{font-size:16px;line-height:1.9;margin:0;}
.shopify-bottom-cta__buttons{display:flex;gap:14px;justify-content:flex-end;flex-wrap:wrap;}

.shopify-page #footer{margin-top:0;}
.shopify-page #scroll-up{z-index:30;}
.shopify-page .fadein{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease;}
.shopify-page .fadein.active{opacity:1;transform:translateY(0);}

@media screen and (max-width: 1100px){
  .shopify-hero h2{font-size:54px;}
  .shopify-hero h2 span{font-size:64px;}
  .shopify-hero__inner{grid-template-columns:1fr;}
  .shopify-hero__visual{min-height:340px;}
  .shopify-monitor{left:50%;right:auto;transform:translateX(-50%);}
  .shopify-feature__grid,.shopify-type__grid,.shopify-trouble__grid{grid-template-columns:repeat(2,1fr);}
  .shopify-option__grid{grid-template-columns:repeat(3,1fr);}
  .shopify-flow__grid{grid-template-columns:repeat(3,1fr);}
  .shopify-flow__grid div:not(:last-child):after{display:none;}
  .shopify-bottom-cta__inner{grid-template-columns:1fr;}
  .shopify-bottom-cta__buttons{justify-content:flex-start;}
}

@media screen and (max-width: 767px){
  .shopify-inner,.shopify-wide,.shopify-hero__inner,.shopify-breadcrumb,.shopify-bottom-cta__inner{width:min(100% - 24px,640px);}
  .shopify-breadcrumb{padding-top:14px;font-size:12px;}
  .shopify-sec-title{font-size:25px;margin-bottom:20px;}
  .shopify-sec-title:after{height:3px;width:56px;}
  .shopify-hero{padding:28px 0 42px;}
  .shopify-label{font-size:12px;padding:7px 12px;}
  .shopify-hero h2{font-size:38px;}
  .shopify-hero h2 span{font-size:48px;}
  .shopify-hero__lead{font-size:15px;line-height:1.9;}
  .shopify-hero__tags{gap:8px;}
  .shopify-hero__tags li{font-size:12px;padding:7px 10px;}
  .shopify-price span{width:56px;height:56px;font-size:14px;}
  .shopify-price strong{font-size:62px;}
  .shopify-price em{font-size:24px;}
  .shopify-btn{width:100%;min-width:0;min-height:56px;}
  .shopify-hero__visual{min-height:240px;}
  .shopify-monitor{width:92%;top:14px;padding:12px;}
  .shopify-monitor__screen{height:180px;padding:12px;}
  .shopify-monitor:after{display:none;}
  .shopify-phone{width:82px;height:142px;right:4px;bottom:16px;padding:10px 7px;border-radius:16px;}
  .shopify-phone:before{height:34px;border-width:5px;margin-bottom:8px;}
  .shopify-phone span{height:14px;margin:6px 0;}
  .shopify-feature{padding:22px 0;}
  .shopify-feature__grid,.shopify-two,.shopify-prepare__grid,.shopify-type__grid,.shopify-option__grid,.shopify-items__grid,.shopify-trouble__grid,.shopify-flow__grid{grid-template-columns:1fr;}
  .shopify-feature__item{border-right:none;border-bottom:1px solid var(--rk-line);padding:22px 20px;}
  .shopify-feature__item:last-child{border-bottom:none;}
  .shopify-service,.shopify-prepare,.shopify-option,.shopify-trouble,.shopify-faq,.shopify-types,.shopify-items,.shopify-flow{padding:52px 0;}
  .shopify-service__box{padding:26px 20px;}
  .shopify-service__box ul{grid-template-columns:1fr;}
  .shopify-prepare__card{padding:30px 20px;}
  .shopify-type__grid article{padding:30px 20px 24px;}
  .shopify-option__grid div{text-align:left;}
  .shopify-option__grid div:before{margin:0 0 14px;}
  .shopify-items__grid div{border-right:none!important;border-bottom:1px solid var(--rk-line)!important;min-height:auto;}
  .shopify-items__grid div:last-child{border-bottom:none!important;}
  .shopify-faq summary{font-size:15px;padding:18px 16px;line-height:1.7;}
  .shopify-faq p{padding:0 16px 18px 16px;}
  .shopify-bottom-cta{padding:42px 0;}
  .shopify-bottom-cta h2{font-size:24px;}
}


/* 2026-06-08 LP共通修正：トップ共通ビジュアルは赤丸指定部分だけ非表示 */
.lp-common-plan { margin-top: 0; }
.lp-common-mainvisual .lp-common-mainvisual__blank { min-height: 230px; }
.lp-common-mainvisual .lp-common-mainvisual__blank > * { display: none !important; }
.lp-common-mainvisual .kaihou,
.lp-common-mainvisual .mainphoto_txt01,
.lp-common-mainvisual .section_inner h3 { display: none !important; }
#footer { width: 100%; background: #004b93; }
.footer_inner { box-sizing: border-box; }
@media (max-width: 768px) { .lp-common-mainvisual .lp-common-mainvisual__blank { min-height: 120px; } }


/* 2026-06-08 スマホ表示：ヘッダーと共通ビジュアルの重なり防止 */
@media (max-width: 768px) {
  .lp-common-plan {
    margin-top: 12px !important;
    margin-bottom: 0 !important;
  }

  .lp-common-mainvisual {
    padding-top: 18px !important;
    overflow: hidden !important;
    clear: both !important;
  }

  .lp-common-mainvisual .lp-common-mainvisual__blank {
    min-height: 180px !important;
    display: block !important;
  }

  .lp-common-mainvisual .no1_area {
    position: relative !important;
    z-index: 1 !important;
    margin-top: 0 !important;
  }

  .lp-common-mainvisual .no1_area h4 {
    margin-top: 0 !important;
  }
}

@media (max-width: 480px) {
  .lp-common-mainvisual {
    padding-top: 24px !important;
  }

  .lp-common-mainvisual .lp-common-mainvisual__blank {
    min-height: 220px !important;
  }

  .lp-common-mainvisual .no1_area h4 {
    font-size: 18px !important;
    line-height: 1.55 !important;
    padding: 0 18px !important;
  }

  .lp-common-mainvisual .no1_area p {
    font-size: 15px !important;
    line-height: 1.8 !important;
    padding: 0 18px !important;
  }
}


/* 2026-06-08 再修正：共通ビジュアルの大きすぎる空白を解消 */
.lp-common-plan {
  margin-top: 14px !important;
  margin-bottom: 18px !important;
}

.lp-common-mainvisual {
  padding-top: 0 !important;
  margin-top: 0 !important;
  overflow: hidden !important;
  clear: both !important;
}

.lp-common-mainvisual .lp-common-mainvisual__blank {
  min-height: 0 !important;
  height: 0 !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
}

.lp-common-mainvisual .no1_area {
  position: relative !important;
  z-index: 1 !important;
  margin-top: 0 !important;
  padding-top: 14px !important;
}

.lp-common-mainvisual .kaihou,
.lp-common-mainvisual .mainphoto_txt01,
.lp-common-mainvisual .section_inner h3 {
  display: none !important;
}

@media (max-width: 768px) {
  .lp-common-plan {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }

  .lp-common-mainvisual {
    padding-top: 18px !important;
  }

  .lp-common-mainvisual .no1_area {
    padding-top: 18px !important;
  }

  .lp-common-mainvisual .no1_area h4 {
    margin-top: 0 !important;
    line-height: 1.55 !important;
  }
}

@media (max-width: 480px) {
  .lp-common-mainvisual {
    padding-top: 24px !important;
  }

  .lp-common-mainvisual .no1_area {
    padding-top: 20px !important;
  }

  .lp-common-mainvisual .no1_area h4 {
    font-size: 18px !important;
    line-height: 1.55 !important;
    padding: 0 18px !important;
  }

  .lp-common-mainvisual .no1_area p {
    font-size: 15px !important;
    line-height: 1.8 !important;
    padding: 0 18px !important;
  }
}


/* 2026-06-09 final：赤丸指定部分をHTMLから削除した共通ビジュアルの調整 */
.lp-common-mainvisual,
.lp-common-mainvisual__blank,
.lp-clean-common-visual {
  display: none !important;
}

.lp-common-mainvisual-clean {
  margin-top: 0 !important;
  padding-top: 0 !important;
  overflow: hidden !important;
  clear: both !important;
}

.lp-common-mainvisual-clean .kaihou,
.lp-common-mainvisual-clean .mainphoto_txt01,
.lp-common-mainvisual-clean .section_inner,
.lp-common-mainvisual-clean > h2,
.lp-common-mainvisual-clean > h3 {
  display: none !important;
}

.lp-common-mainvisual-clean .no1_area {
  margin-top: 0 !important;
  padding-top: 18px !important;
  position: relative !important;
  z-index: 1 !important;
}

@media (max-width: 768px) {
  .lp-common-mainvisual-clean {
    padding-top: 24px !important;
  }
  .lp-common-mainvisual-clean .no1_area {
    padding-top: 28px !important;
  }
  .lp-common-mainvisual-clean .no1_area h4 {
    margin-top: 0 !important;
    line-height: 1.55 !important;
  }
}

@media (max-width: 480px) {
  .lp-common-mainvisual-clean {
    padding-top: 32px !important;
  }
  .lp-common-mainvisual-clean .no1_area {
    padding-top: 34px !important;
  }
  .lp-common-mainvisual-clean .no1_area h4 {
    font-size: 18px !important;
    line-height: 1.55 !important;
    padding: 0 18px !important;
  }
  .lp-common-mainvisual-clean .no1_area p {
    font-size: 15px !important;
    line-height: 1.8 !important;
    padding: 0 18px !important;
  }
}


/* 2026-06-09 final patch：LP共通ビジュアル赤丸部分を削除し、No.1を切れずに表示 */
.lp-common-mainvisual,
.lp-common-mainvisual__blank,
.lp-clean-common-visual {
  display: none !important;
}

.lp-common-mainvisual-clean {
  position: relative !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  overflow: visible !important;
  clear: both !important;
  background: #fff !important;
}

.lp-common-mainvisual-clean .section_inner,
.lp-common-mainvisual-clean .kaihou,
.lp-common-mainvisual-clean .mainphoto_txt01,
.lp-common-mainvisual-clean .section_inner h2,
.lp-common-mainvisual-clean .section_inner h3 {
  display: none !important;
}

.lp-common-mainvisual-clean .no1_area {
  position: relative !important;
  z-index: 1 !important;
  margin-top: 0 !important;
  padding-top: 28px !important;
  overflow: visible !important;
}

.lp-common-mainvisual-clean .no1_area h4,
.lp-common-mainvisual-clean .no1_area h5,
.lp-common-mainvisual-clean .no1_area p {
  position: relative !important;
  z-index: 3 !important;
}

.lp-common-mainvisual-clean .submission_data {
  position: relative !important;
  z-index: 4 !important;
  margin-top: 24px !important;
}

@media (max-width: 768px) {
  .lp-common-mainvisual-clean {
    padding-top: 28px !important;
    overflow: hidden !important;
  }
  .lp-common-mainvisual-clean .no1_area {
    padding-top: 34px !important;
  }
}

@media (max-width: 480px) {
  .lp-common-mainvisual-clean {
    padding-top: 34px !important;
  }
  .lp-common-mainvisual-clean .no1_area {
    padding-top: 42px !important;
  }
  .lp-common-mainvisual-clean .no1_area h4 {
    font-size: 18px !important;
    line-height: 1.55 !important;
    padding: 0 18px !important;
  }
  .lp-common-mainvisual-clean .no1_area p {
    font-size: 15px !important;
    line-height: 1.8 !important;
    padding: 0 18px !important;
  }
}

/* LP間の関連リンク */
.lp-related-links {
  padding: 68px 0;
  background: #fff;
  font-family: "Noto Sans JP", sans-serif;
}

.lp-related-links__inner {
  width: min(1120px, 92%);
  margin: 0 auto;
  text-align: center;
}

.lp-related-links__label {
  display: inline-block;
  margin: 0 0 10px;
  padding: 6px 14px;
  border-radius: 999px;
  background: #fff4e8;
  color: #d36800;
  font-weight: 900;
  font-size: 14px;
}

.lp-related-links h2 {
  margin: 0 0 28px;
  font-size: clamp(24px, 3vw, 36px);
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.lp-related-links__grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 14px;
}

.lp-related-links__grid a {
  display: block;
  padding: 18px 14px;
  border: 1px solid #eadbc2;
  border-radius: 16px;
  background: #fff;
  text-decoration: none;
  color: #111;
  box-shadow: 0 10px 28px rgba(0,0,0,.05);
  transition: .2s;
}

.lp-related-links__grid a:hover {
  transform: translateY(-2px);
}

.lp-related-links__grid small {
  display: block;
  color: #d36800;
  font-weight: 800;
  margin-bottom: 5px;
}

.lp-related-links__grid strong {
  display: block;
  font-size: 15px;
  line-height: 1.45;
}

@media (max-width: 900px) {
  .lp-related-links__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 520px) {
  .lp-related-links {
    padding: 46px 0;
  }
  .lp-related-links__grid {
    grid-template-columns: 1fr;
  }
}



/* 楽天LP：CSS未反映防止用の重要スタイル */
.shopify-page{font-family:"Noto Sans JP","Yu Gothic",YuGothic,Meiryo,sans-serif;color:#333;background:#fff;line-height:1.8;letter-spacing:.03em}
.shopify-page img{max-width:100%;height:auto}
.shopify-contents{background:#fff;overflow:hidden}
.shopify-inner{width:min(1120px,92%);margin:0 auto}
.shopify-wide{width:min(1220px,94%);margin:0 auto}
.shopify-breadcrumb{width:min(1120px,92%);margin:22px auto 0;font-size:13px;color:#777}
.shopify-breadcrumb ol{display:flex;gap:8px;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.shopify-breadcrumb a{color:#006e52;text-decoration:none;font-weight:700}
.shopify-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff 0%,#eefaf6 58%,#fff 100%);padding:74px 0 64px}
.shopify-hero:after{content:"SHOPIFY ENTRY";position:absolute;right:-80px;top:30px;font-size:90px;font-weight:900;color:#d8f3ea;opacity:.28;letter-spacing:.08em;white-space:nowrap}
.shopify-hero__inner{position:relative;z-index:2;width:min(1200px,94%);margin:0 auto;display:grid;grid-template-columns:1.02fr .98fr;gap:48px;align-items:center}
.shopify-label{display:inline-flex;background:#fff;border:1px solid #b9eadb;border-radius:999px;color:#006e52;font-weight:900;padding:8px 18px;margin:0 0 20px}
.shopify-hero h2{margin:0 0 24px;font-size:clamp(42px,5.2vw,78px);line-height:1.18;color:#111;font-weight:900;letter-spacing:-.04em}
.shopify-hero h2 span{display:block;color:#008060;font-size:1.06em}
.shopify-hero__lead{font-size:18px;font-weight:700;line-height:1.9;color:#222;max-width:680px}
.shopify-hero__tags{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 14px;list-style:none;margin:24px 0 0;padding:0}
.shopify-hero__tags li{background:#fff;border:1px solid #efd7d9;border-left:6px solid #008060;border-radius:8px;padding:11px 14px;font-weight:900;color:#222;box-shadow:0 8px 20px rgba(0,0,0,.04)}
.shopify-price{display:flex;align-items:flex-end;gap:20px;margin:30px 0 20px;color:#008060;font-weight:900}
.shopify-price span{display:inline-flex;width:76px;height:76px;border-radius:50%;background:#008060;color:#fff;align-items:center;justify-content:center;font-size:18px}
.shopify-price strong{font-size:clamp(70px,9vw,132px);line-height:.8;letter-spacing:.05em}
.shopify-price em{font-style:normal;font-size:36px}
.shopify-cta{display:flex;gap:18px;flex-wrap:wrap;margin-top:26px}
.shopify-btn{display:inline-flex;align-items:center;justify-content:center;min-height:58px;border-radius:12px;padding:14px 32px;font-weight:900;text-decoration:none}
.shopify-btn--red{background:#008060;color:#fff}
.shopify-btn--white{background:#fff;color:#008060;border:3px solid #008060}
.shopify-hero__visual{position:relative;min-height:420px}
.shopify-monitor{position:absolute;right:0;top:20px;width:min(520px,100%);height:360px;background:#202020;border-radius:24px;padding:18px;box-shadow:0 26px 60px rgba(0,0,0,.16)}
.shopify-monitor__screen{height:100%;background:#fff;border-radius:8px;display:grid;grid-template-columns:1.1fr .9fr;gap:22px;padding:36px 28px 70px}
.shopify-screen__main{background:#f7f7f7;border:1px solid #ddd;border-radius:16px;position:relative}
.shopify-screen__main:before{content:"";position:absolute;inset:70px 55px 110px;background:#222;border-radius:14px}
.shopify-screen__list{display:grid;gap:18px}
.shopify-screen__list span{display:block;background:linear-gradient(90deg,#008060 0 32%,#f2f2f2 32%);border-radius:10px}
.shopify-phone{position:absolute;right:360px;top:55px;background:#fff;border:2px solid #b9eadb;border-radius:18px;padding:22px 30px;color:#008060;font-weight:900;text-align:center;box-shadow:0 12px 30px rgba(0,0,0,.08)}
.shopify-phone:before{content:"CSV\A登録対応";white-space:pre;display:block;line-height:1.45}
.shopify-section,.shopify-service,.shopify-prepare,.shopify-types,.shopify-option,.shopify-items,.shopify-trouble,.shopify-flow,.shopify-faq{padding:76px 0}
.shopify-sec-en{text-align:center;color:#008060;font-weight:900;letter-spacing:.18em;margin:0 0 8px}
.shopify-sec-title{font-size:clamp(28px,3.6vw,44px);line-height:1.35;margin:0 0 24px;font-weight:900;color:#111}
.shopify-sec-title.center{text-align:center}
.shopify-two{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:start}
.shopify-feature__grid,.shopify-type__grid,.shopify-option__grid,.shopify-items__grid,.shopify-trouble__grid,.shopify-flow__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.shopify-feature__item,.shopify-prepare__card,.shopify-type__grid article,.shopify-option__grid>div,.shopify-items__grid>div,.shopify-trouble__grid>div,.shopify-flow__grid>div,.shopify-service__box,.shopify-detail-card{background:#fff;border:1px solid #d7eee7;border-radius:16px;padding:22px;box-shadow:0 10px 28px rgba(0,0,0,.05)}
.shopify-feature__item span,.shopify-type__grid article span,.shopify-flow__grid span,.shopify-card-no{display:inline-flex;width:42px;height:42px;border-radius:12px;background:#008060;color:#fff;align-items:center;justify-content:center;font-weight:900;margin-bottom:12px}
.shopify-feature__item h3,.shopify-type__grid h3,.shopify-trouble__grid h3,.shopify-detail-card h3{font-size:19px;line-height:1.45;margin:0 0 10px;color:#111;font-weight:900}
.shopify-feature__item p,.shopify-type__grid p,.shopify-trouble__grid p,.shopify-detail-card p{margin:0;color:#555;font-weight:600}
.shopify-service,.shopify-types,.shopify-trouble,.shopify-faq{background:#f3fbf8}
.shopify-service__box h3{margin-top:0;color:#008060;font-weight:900}
.shopify-service__box ul{margin:0;padding:0;list-style:none}
.shopify-service__box li{padding:10px 0 10px 26px;border-bottom:1px dashed #d7eee7;position:relative;font-weight:800}
.shopify-service__box li:before{content:"✓";position:absolute;left:0;color:#008060;font-weight:900}
.shopify-prepare__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.shopify-note,.shopify-center-text{text-align:center;font-weight:700;color:#555}
.shopify-items__grid{grid-template-columns:repeat(3,1fr)}
.shopify-items__grid span{display:block;color:#008060;font-weight:900;margin-bottom:6px}
.shopify-flow__grid{grid-template-columns:repeat(5,1fr)}
.shopify-faq__list{max-width:940px;margin:0 auto;display:grid;gap:14px}
.shopify-faq details{background:#fff;border:1px solid #d7eee7;border-radius:14px;overflow:hidden}
.shopify-faq summary{cursor:pointer;padding:18px 52px 18px 20px;font-weight:900;position:relative;list-style:none}
.shopify-faq summary:after{content:"+";position:absolute;right:20px;color:#008060;font-size:26px;top:50%;transform:translateY(-50%)}
.shopify-faq details[open] summary:after{content:"−"}
.shopify-faq details p{margin:0;padding:0 20px 20px;color:#555;font-weight:600}
.shopify-final-cta{background:linear-gradient(135deg,#008060,#3fb58f);color:#fff;text-align:center;padding:78px 0}
.shopify-final-cta h2{font-size:clamp(28px,4vw,44px);line-height:1.35;margin:0 0 14px;font-weight:900}
.shopify-final-cta p{max-width:860px;margin:0 auto 26px;font-weight:700}
@media(max-width:980px){.shopify-hero__inner,.shopify-two{grid-template-columns:1fr}.shopify-hero__visual{min-height:340px}.shopify-feature__grid,.shopify-type__grid,.shopify-option__grid,.shopify-items__grid,.shopify-trouble__grid{grid-template-columns:repeat(2,1fr)}.shopify-flow__grid,.shopify-prepare__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.shopify-hero{padding:44px 0}.shopify-hero h2{font-size:42px}.shopify-hero__tags,.shopify-feature__grid,.shopify-type__grid,.shopify-option__grid,.shopify-items__grid,.shopify-trouble__grid,.shopify-flow__grid,.shopify-prepare__grid{grid-template-columns:1fr}.shopify-monitor{position:relative;width:100%;height:280px}.shopify-phone{right:12px;top:20px}.shopify-section,.shopify-service,.shopify-prepare,.shopify-types,.shopify-option,.shopify-items,.shopify-trouble,.shopify-flow,.shopify-faq{padding:52px 0}}


/* 楽天LP追加ボリューム用 */
.shopify-rcabinet{background:#fff}
.shopify-seo-support{background:#f3fbf8}


/* 2026-06-09 楽天LPカード・オプション・フッターバナー修正 */

/* サービス種類 / 相談パターン：左上番号が文字にかぶらないようにカード内に収める */
.shopify-type__grid article,
.shopify-case .shopify-type__grid article {
  position: relative;
  padding-top: 54px !important;
  overflow: visible;
}

.shopify-type__grid article span,
.shopify-case .shopify-type__grid article span {
  position: absolute !important;
  top: 18px !important;
  left: 18px !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 14px !important;
  margin: 0 !important;
  box-shadow: 0 8px 20px rgba(0,128,96,.18);
  z-index: 2;
}

.shopify-type__grid article h3,
.shopify-case .shopify-type__grid article h3 {
  margin-top: 0 !important;
  padding-left: 0 !important;
  line-height: 1.45 !important;
}

/* オプションサービス：赤い四角だけに見えないよう、大きめアイコンカードへ */
.shopify-option__grid > div {
  text-align: center;
  position: relative;
  padding-top: 30px !important;
}

.shopify-option__grid > div:before {
  display: none !important;
  content: none !important;
}

.shopify-option-icon {
  width: 74px;
  height: 74px;
  margin: 0 auto 18px;
  border-radius: 22px;
  background: linear-gradient(135deg,#eefaf6,#fff);
  border: 3px solid #008060;
  color: #008060;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 34px;
  line-height: 1;
  font-weight: 900;
  box-shadow: 0 14px 30px rgba(0,128,96,.12);
}

.shopify-option__grid h3 {
  margin-top: 0 !important;
  text-align: center;
}

/* フッター右側バナーを右寄せ */
#footer .footer_inner_right {
  text-align: right;
}

#footer .footer_inner_right .foot_btn,
#footer .footer_inner_right .shopify-footer-banner {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center;
  width: 100%;
  margin-top: 22px;
}

#footer .footer_inner_right .foot_btn p {
  margin-left: auto !important;
  margin-right: 0 !important;
}

#footer .footer_inner_right .foot_btn img {
  display: block;
  margin-left: auto;
  margin-right: 0;
}

@media (max-width: 900px) {
  #footer .footer_inner_right {
    text-align: center;
  }

  #footer .footer_inner_right .foot_btn,
  #footer .footer_inner_right .shopify-footer-banner {
    justify-content: center !important;
  }

  #footer .footer_inner_right .foot_btn p,
  #footer .footer_inner_right .foot_btn img {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 640px) {
  .shopify-type__grid article,
  .shopify-case .shopify-type__grid article {
    padding-top: 58px !important;
  }

  .shopify-type__grid article span,
  .shopify-case .shopify-type__grid article span {
    top: 16px !important;
    left: 16px !important;
  }

  .shopify-option-icon {
    width: 66px;
    height: 66px;
    font-size: 30px;
  }
}


/* 2026-06-10 楽天LP 番号バッジを三角内に統一 */
.shopify-type__grid article,
.shopify-case .shopify-type__grid article {
  position: relative;
  padding-top: 96px !important;
  overflow: hidden;
}

.shopify-type__grid article span,
.shopify-case .shopify-type__grid article span {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 84px !important;
  height: 84px !important;
  margin: 0 !important;
  border-radius: 16px 0 0 0 !important;
  background: #008060 !important;
  color: #fff !important;
  clip-path: polygon(0 0, 100% 0, 0 100%) !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding: 14px 0 0 14px !important;
  font-size: 19px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: none !important;
  z-index: 3 !important;
}

.shopify-type__grid article h3,
.shopify-case .shopify-type__grid article h3 {
  margin-top: 0 !important;
}

@media (max-width: 640px) {
  .shopify-type__grid article,
  .shopify-case .shopify-type__grid article {
    padding-top: 90px !important;
  }
  .shopify-type__grid article span,
  .shopify-case .shopify-type__grid article span {
    width: 76px !important;
    height: 76px !important;
    padding: 12px 0 0 12px !important;
    font-size: 18px !important;
  }
}


/* 2026-06-10 shopify.html ヘッダー・フッターメニュー変更 */
.h_btn_wrap,
.h_btn_wrap .h-menu,
.h_btn_wrap .h-menu li {
  overflow: visible !important;
}

.h_btn_wrap .h-menu {
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}

.h_btn_wrap .h-menu > li {
  position: relative;
}

.h_btn_wrap .h-menu > li > a {
  display: block;
  padding: 14px 12px;
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  line-height: 1.45;
  white-space: nowrap;
  font-size: 14px;
}

.h_btn_wrap .h-menu > li > a:hover {
  opacity: .86;
}

.h_btn_wrap .h-menu-has-sub > a::after {
  content: "▼";
  display: inline-block;
  margin-left: 6px;
  font-size: 10px;
  vertical-align: middle;
}

.h_btn_wrap .h-sub-menu {
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translateX(-50%);
  display: none;
  width: 310px;
  list-style: none;
  margin: 0;
  padding: 8px 0;
  background: #fff;
  border: 1px solid rgba(0, 75, 147, .18);
  border-radius: 10px;
  box-shadow: 0 16px 36px rgba(0, 0, 0, .18);
  z-index: 9999;
}

.h_btn_wrap .h-menu-has-sub:hover .h-sub-menu,
.h_btn_wrap .h-menu-has-sub:focus-within .h-sub-menu {
  display: block;
}

.h_btn_wrap .h-sub-menu li {
  display: block;
  width: 100%;
}

.h_btn_wrap .h-sub-menu a {
  display: block;
  padding: 11px 16px;
  color: #004b93;
  background: #fff;
  text-decoration: none;
  font-weight: 700;
  line-height: 1.45;
  white-space: normal;
  border-bottom: 1px solid #eef3f8;
}

.h_btn_wrap .h-sub-menu li:last-child a {
  border-bottom: 0;
}

.h_btn_wrap .h-sub-menu a:hover {
  background: #f2f7fc;
}

.sp-menu-parent > span {
  display: block;
  padding: 10px 0;
  font-weight: 700;
}

.sp-sub-menu {
  padding-left: 14px !important;
  margin-top: 4px !important;
}

.sp-sub-menu li a {
  font-size: 14px;
}

.site-footer-menu-renew {
  background: #004b93;
  color: #fff;
  padding: 38px 0;
}

.footer-menu-renew-inner {
  width: min(1180px, 92%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 36px;
  align-items: center;
}

.footer-menu-renew-logo {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.footer-menu-renew-logo img {
  display: block;
  max-width: 260px;
  height: auto;
}

.footer-menu-renew-nav ul {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px 24px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-menu-renew-nav a {
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  line-height: 1.5;
  display: inline-block;
  position: relative;
  padding-left: 14px;
}

.footer-menu-renew-nav a::before {
  content: "›";
  position: absolute;
  left: 0;
  top: 0;
  font-weight: 900;
}

.footer-menu-renew-nav a:hover {
  text-decoration: underline;
}

@media (max-width: 1120px) {
  .h_btn_wrap .h-menu > li > a {
    padding-left: 8px;
    padding-right: 8px;
    font-size: 13px;
  }
}

@media (max-width: 980px) {
  .footer-menu-renew-inner {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .footer-menu-renew-logo {
    justify-content: center;
  }

  .footer-menu-renew-nav ul {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    text-align: left;
  }
}

@media (max-width: 560px) {
  .footer-menu-renew-nav ul {
    grid-template-columns: 1fr;
  }
}


/* 2026-06-10 shopify.html ヘッダー・フッター再修正 */
.h_btn_wrap,
.h_btn_wrap .h-menu,
.h_btn_wrap .h-menu li {
  overflow: visible !important;
}

.h_btn_wrap .h-menu {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 0 !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.h_btn_wrap .h-menu > li {
  position: relative !important;
}

.h_btn_wrap .h-menu > li > a {
  display: block !important;
  padding: 14px 12px !important;
  color: #fff !important;
  background: transparent !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  white-space: nowrap !important;
  font-size: 14px !important;
}

.h_btn_wrap .h-menu-has-sub > a::after {
  content: "▼";
  display: inline-block;
  margin-left: 6px;
  font-size: 10px;
  vertical-align: middle;
}

.h_btn_wrap .h-sub-menu {
  position: absolute !important;
  left: 50% !important;
  top: 100% !important;
  transform: translateX(-50%) !important;
  display: none !important;
  width: 330px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 8px 0 !important;
  background: #fff !important;
  border: 1px solid rgba(0, 75, 147, .18) !important;
  border-radius: 10px !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, .18) !important;
  z-index: 99999 !important;
}

.h_btn_wrap .h-menu-has-sub:hover > .h-sub-menu,
.h_btn_wrap .h-menu-has-sub:focus-within > .h-sub-menu {
  display: block !important;
}

.h_btn_wrap .h-sub-menu li {
  display: block !important;
  width: 100% !important;
  border: 0 !important;
}

.h_btn_wrap .h-sub-menu li a,
.h_btn_wrap .h-sub-menu a {
  display: block !important;
  padding: 12px 18px !important;
  color: #004b93 !important;
  background: #fff !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  white-space: normal !important;
  border-bottom: 1px solid #eef3f8 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.h_btn_wrap .h-sub-menu li:last-child a {
  border-bottom: 0 !important;
}

.h_btn_wrap .h-sub-menu a:hover {
  background: #f2f7fc !important;
  color: #004b93 !important;
}

.sp-menu-parent > span {
  display: block;
  padding: 10px 0;
  font-weight: 700;
}

.sp-sub-menu {
  padding-left: 14px !important;
  margin-top: 4px !important;
}

.sp-sub-menu li a {
  font-size: 14px;
}

/* フッター：会社系・商品登録系・プラン系の3列に整理 */
.site-footer-menu-renew {
  background: #004b93 !important;
  color: #fff !important;
  padding: 38px 0 !important;
}

.footer-menu-renew-inner {
  width: min(1180px, 92%) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 280px 1fr !important;
  gap: 42px !important;
  align-items: center !important;
}

.footer-menu-renew-logo {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  min-height: 150px !important;
}

.footer-menu-renew-logo img {
  display: block !important;
  max-width: 260px !important;
  height: auto !important;
}

.footer-menu-renew-nav {
  display: grid !important;
  grid-template-columns: 1fr 1.25fr 1fr !important;
  gap: 34px !important;
  align-items: start !important;
}

.footer-menu-group h6 {
  margin: 0 0 12px !important;
  padding: 0 0 8px !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.4 !important;
  border-bottom: 1px solid rgba(255,255,255,.35) !important;
}

.footer-menu-group ul {
  display: block !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer-menu-group li {
  margin: 0 0 8px !important;
  padding: 0 !important;
  list-style: none !important;
}

.footer-menu-group a {
  color: #fff !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  display: inline-block !important;
  position: relative !important;
  padding: 0 0 0 14px !important;
  white-space: nowrap !important;
}

.footer-menu-group a::before {
  content: "›";
  position: absolute;
  left: 0;
  top: 0;
  font-weight: 900;
}

.footer-menu-group a:hover {
  text-decoration: underline !important;
}

@media (max-width: 1120px) {
  .h_btn_wrap .h-menu > li > a {
    padding-left: 8px !important;
    padding-right: 8px !important;
    font-size: 13px !important;
  }

  .footer-menu-renew-nav {
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (max-width: 980px) {
  .footer-menu-renew-inner {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }

  .footer-menu-renew-logo {
    justify-content: center !important;
    min-height: auto !important;
  }

  .footer-menu-renew-nav {
    grid-template-columns: 1fr !important;
    text-align: left !important;
  }
}

@media (max-width: 560px) {
  .footer-menu-group a {
    white-space: normal !important;
  }
}


/* 2026-06-10 フッターロゴ下 電話・お問い合わせボタン */
.footer-menu-renew-logo {
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 16px !important;
}

.footer-contact-buttons {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  width: 100%;
  max-width: 260px;
}

.footer-contact-btn {
  display: flex !important;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  border-radius: 999px;
  color: #fff !important;
  text-decoration: none !important;
  font-weight: 900 !important;
  line-height: 1.2;
  letter-spacing: .03em;
  box-shadow: 0 10px 24px rgba(0,0,0,.14);
  transition: transform .18s ease, opacity .18s ease;
}

.footer-contact-btn:hover {
  transform: translateY(-1px);
  opacity: .9;
  text-decoration: none !important;
}

.footer-contact-btn--tel {
  background: #28a000;
}

.footer-contact-btn--tel::before {
  content: "☎";
  margin-right: 8px;
  font-size: 16px;
}

.footer-contact-btn--mail {
  background: #ff6428;
}

.footer-contact-btn--mail::before {
  content: "✉";
  margin-right: 8px;
  font-size: 16px;
}

@media (max-width: 980px) {
  .footer-menu-renew-logo {
    align-items: center !important;
  }

  .footer-contact-buttons {
    margin-left: auto;
    margin-right: auto;
  }
}


/* 2026-06-10 フッター「商品登録代行・プラン」統合 */
.footer-menu-renew-nav--merged {
  display: grid !important;
  grid-template-columns: minmax(210px, .75fr) minmax(520px, 1.55fr) !important;
  gap: 42px !important;
  align-items: start !important;
}

.footer-menu-renew-nav--merged .footer-menu-group--service-plan h6 {
  white-space: nowrap !important;
}

.footer-service-plan-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px 30px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer-service-plan-list li {
  margin: 0 !important;
}

.footer-service-plan-list a {
  white-space: nowrap !important;
}

@media (max-width: 1120px) {
  .footer-menu-renew-nav--merged {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  .footer-service-plan-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .footer-service-plan-list {
    grid-template-columns: 1fr !important;
  }

  .footer-service-plan-list a {
    white-space: normal !important;
  }
}


/* 2026-06-10 LP共通：ヘッダー・フッター・関連リンク統一 */
.lp-related-links {
  background: #f5f8fb !important;
  padding: 76px 0 !important;
  border-top: 1px solid #e1e8ef !important;
}

.lp-related-links__inner {
  width: min(1180px, 92%) !important;
  margin: 0 auto !important;
  text-align: center !important;
}

.lp-related-links__en {
  margin: 0 0 10px !important;
  color: #004b93 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
}

.lp-related-links h2 {
  margin: 0 0 16px !important;
  color: #111 !important;
  font-size: clamp(28px, 3vw, 42px) !important;
  line-height: 1.35 !important;
  font-weight: 900 !important;
}

.lp-related-links__lead {
  max-width: 820px !important;
  margin: 0 auto 28px !important;
  color: #333 !important;
  font-size: 16px !important;
  line-height: 1.9 !important;
  font-weight: 700 !important;
}

.lp-related-links__grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.lp-related-links__grid a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 58px !important;
  padding: 12px 14px !important;
  border-radius: 14px !important;
  background: #fff !important;
  border: 1px solid #d9e6f2 !important;
  color: #004b93 !important;
  text-decoration: none !important;
  font-weight: 900 !important;
  line-height: 1.45 !important;
  box-shadow: 0 12px 28px rgba(0,75,147,.08) !important;
}

.lp-related-links__grid a:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 18px 34px rgba(0,75,147,.14) !important;
}

.site-footer-menu-renew {
  background: #004b93 !important;
  color: #fff !important;
  padding: 38px 0 !important;
}

.footer-menu-renew-inner {
  width: min(1180px, 92%) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 280px 1fr !important;
  gap: 42px !important;
  align-items: center !important;
}

.footer-menu-renew-logo {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 16px !important;
  min-height: 150px !important;
}

.footer-menu-renew-logo img {
  display: block !important;
  max-width: 260px !important;
  height: auto !important;
}

.footer-contact-buttons {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 260px !important;
}

.footer-contact-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px !important;
  border-radius: 999px !important;
  color: #fff !important;
  text-decoration: none !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: .03em !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.14) !important;
}

.footer-contact-btn--tel {
  background: #28a000 !important;
}

.footer-contact-btn--tel::before {
  content: "☎";
  margin-right: 8px;
  font-size: 16px;
}

.footer-contact-btn--mail {
  background: #ff6428 !important;
}

.footer-contact-btn--mail::before {
  content: "✉";
  margin-right: 8px;
  font-size: 16px;
}

.footer-menu-renew-nav--merged {
  display: grid !important;
  grid-template-columns: minmax(210px, .72fr) minmax(650px, 1.7fr) !important;
  gap: 42px !important;
  align-items: start !important;
}

.footer-menu-group h6 {
  margin: 0 0 12px !important;
  padding: 0 0 8px !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.4 !important;
  border-bottom: 1px solid rgba(255,255,255,.35) !important;
}

.footer-menu-group ul,
.footer-service-list,
.footer-plan-list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer-service-plan-columns {
  display: grid !important;
  grid-template-columns: minmax(450px, 1.5fr) minmax(180px, .5fr) !important;
  gap: 28px !important;
  align-items: start !important;
}

.footer-service-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px 26px !important;
}

.footer-menu-group li,
.footer-service-list li,
.footer-plan-list li {
  margin: 0 0 8px !important;
  padding: 0 !important;
  list-style: none !important;
}

.footer-menu-group a,
.footer-service-list a,
.footer-plan-list a {
  color: #fff !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  display: inline-block !important;
  position: relative !important;
  padding: 0 0 0 14px !important;
  white-space: nowrap !important;
}

.footer-menu-group a::before,
.footer-service-list a::before,
.footer-plan-list a::before {
  content: "›";
  position: absolute;
  left: 0;
  top: 0;
  font-weight: 900;
}

.footer-menu-group a:hover,
.footer-service-list a:hover,
.footer-plan-list a:hover {
  text-decoration: underline !important;
}

@media (max-width: 1120px) {
  .footer-menu-renew-nav--merged,
  .footer-service-plan-columns {
    grid-template-columns: 1fr !important;
  }

  .footer-service-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .lp-related-links__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 980px) {
  .footer-menu-renew-inner {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }

  .footer-menu-renew-logo {
    align-items: center !important;
    min-height: auto !important;
  }

  .footer-contact-buttons {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .footer-menu-renew-nav--merged {
    text-align: left !important;
  }
}

@media (max-width: 640px) {
  .lp-related-links {
    padding: 56px 0 !important;
  }

  .lp-related-links__grid,
  .footer-service-list {
    grid-template-columns: 1fr !important;
  }

  .footer-menu-group a,
  .footer-service-list a,
  .footer-plan-list a {
    white-space: normal !important;
  }
}


/* 2026-06-10 LP共通：メニュー順序・関連リンクボタン強調 */
.lp-related-links__grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

.lp-related-links__grid a {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 64px !important;
  padding: 14px 42px 14px 18px !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg,#ffffff 0%,#f7fbff 100%) !important;
  border: 2px solid #b8d8f5 !important;
  color: #004b93 !important;
  text-decoration: none !important;
  font-weight: 900 !important;
  line-height: 1.45 !important;
  box-shadow: 0 14px 28px rgba(0,75,147,.12) !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
}

.lp-related-links__grid a::after {
  content: "›" !important;
  position: absolute !important;
  right: 18px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 24px !important;
  height: 24px !important;
  border-radius: 999px !important;
  background: #004b93 !important;
  color: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 20px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

.lp-related-links__grid a:hover {
  transform: translateY(-3px) !important;
  border-color: #004b93 !important;
  box-shadow: 0 20px 38px rgba(0,75,147,.18) !important;
}

.footer-service-plan-columns {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 28px !important;
  align-items: start !important;
}

.footer-service-list,
.footer-service-list--left,
.footer-service-list--right {
  display: block !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer-service-list li,
.footer-service-list--left li,
.footer-service-list--right li {
  margin: 0 0 8px !important;
  padding: 0 !important;
  list-style: none !important;
}

.footer-service-list a,
.footer-service-list--left a,
.footer-service-list--right a {
  color: #fff !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  display: inline-block !important;
  position: relative !important;
  padding: 0 0 0 14px !important;
  white-space: nowrap !important;
}

.footer-service-list a::before,
.footer-service-list--left a::before,
.footer-service-list--right a::before {
  content: "›" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  font-weight: 900 !important;
}

@media (max-width: 1120px) {
  .lp-related-links__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .lp-related-links__grid,
  .footer-service-plan-columns {
    grid-template-columns: 1fr !important;
  }

  .footer-service-list a,
  .footer-service-list--left a,
  .footer-service-list--right a {
    white-space: normal !important;
  }
}


/* 2026-06-10 LP共通：ヘッダードロップダウン出っぱなし修正 */
.h_btn_wrap .h-menu {
  overflow: visible !important;
}

.h_btn_wrap .h-menu > li {
  position: relative !important;
}

.h_btn_wrap .h-menu > li.h-menu-has-sub > a {
  cursor: pointer !important;
}

.h_btn_wrap .h-menu > li.h-menu-has-sub > .h-sub-menu {
  position: absolute !important;
  left: 50% !important;
  top: 100% !important;
  transform: translateX(-50%) translateY(10px) !important;
  z-index: 99999 !important;
  display: block !important;
  width: max-content !important;
  min-width: 260px !important;
  max-width: 360px !important;
  margin: 0 !important;
  padding: 10px 0 !important;
  list-style: none !important;
  background: #ffffff !important;
  border: 1px solid rgba(0,75,147,.18) !important;
  border-radius: 12px !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.18) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.h_btn_wrap .h-menu > li.h-menu-has-sub:hover > .h-sub-menu,
.h_btn_wrap .h-menu > li.h-menu-has-sub:focus-within > .h-sub-menu {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateX(-50%) translateY(0) !important;
}

.h_btn_wrap .h-menu > li.h-menu-has-sub > .h-sub-menu > li {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.h_btn_wrap .h-menu > li.h-menu-has-sub > .h-sub-menu > li > a {
  display: block !important;
  width: 100% !important;
  padding: 9px 16px !important;
  color: #004b93 !important;
  background: transparent !important;
  text-decoration: none !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
  text-align: left !important;
}

.h_btn_wrap .h-menu > li.h-menu-has-sub > .h-sub-menu > li > a:hover {
  background: #eef6ff !important;
  color: #003f7d !important;
}

@media (max-width: 980px) {
  .h_btn_wrap .h-menu > li.h-menu-has-sub > .h-sub-menu {
    left: auto !important;
    right: 0 !important;
    transform: translateY(10px) !important;
  }

  .h_btn_wrap .h-menu > li.h-menu-has-sub:hover > .h-sub-menu,
  .h_btn_wrap .h-menu > li.h-menu-has-sub:focus-within > .h-sub-menu {
    transform: translateY(0) !important;
  }
}


/* 2026-06-10 Shopify LP 楽天LP基準リビルド */
.shopify-page {
  --shopify-main: #008060;
  --shopify-main-dark: #005a43;
  --shopify-main-soft: #eefaf6;
  --shopify-line: #b9eadb;
}

.shopify-label,
.shopify-sec-en,
.shopify-detail-card h3,
.shopify-service__box h3 {
  color: #008060 !important;
}

.shopify-hero {
  background:
    radial-gradient(circle at 88% 12%, rgba(0,128,96,.12) 0 18%, transparent 38%),
    linear-gradient(135deg,#ffffff 0%,#eefaf6 55%,#ffffff 100%) !important;
}

.shopify-hero::after {
  content: "SHOPIFY ENTRY" !important;
  position: absolute !important;
  right: 3% !important;
  top: 8% !important;
  color: rgba(0,128,96,.07) !important;
  font-size: clamp(52px, 8vw, 126px) !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.shopify-hero__inner {
  position: relative !important;
  z-index: 1 !important;
  grid-template-columns: minmax(0, 1.02fr) minmax(440px, .98fr) !important;
  gap: 48px !important;
  align-items: center !important;
}

.shopify-hero h2,
.shopify-sec-title,
.shopify-bottom-cta h2 {
  color: #111111 !important;
}

.shopify-hero-title {
  margin: 24px 0 24px !important;
  color: #111111 !important;
  font-size: clamp(52px, 5.4vw, 78px) !important;
  line-height: 1.24 !important;
  letter-spacing: -0.055em !important;
  font-weight: 900 !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  max-width: 760px !important;
}

.shopify-hero-title .hero-title-main,
.shopify-hero-title .hero-title-sub {
  display: block !important;
  white-space: nowrap !important;
}

.shopify-hero-title .hero-title-sub,
.shopify-price,
.shopify-price strong,
.shopify-price em,
.shopify-breadcrumb a {
  color: #008060 !important;
}

.shopify-price span,
.shopify-feature__item span,
.shopify-type__grid article span::before,
.shopify-case .shopify-type__grid article span::before,
.shopify-card-no,
.shopify-flow__grid span {
  background: #008060 !important;
  color: #ffffff !important;
}

.shopify-btn--green,
.shopify-btn--primary,
.shopify-bottom-cta__buttons a:first-child {
  background: #008060 !important;
  border-color: #008060 !important;
  color: #ffffff !important;
}

.shopify-btn--white,
.shopify-bottom-cta__buttons a:last-child {
  background: #ffffff !important;
  color: #008060 !important;
  border-color: #008060 !important;
}

.shopify-service,
.shopify-types,
.shopify-trouble,
.shopify-faq {
  background: #eefaf6 !important;
}

.shopify-feature,
.shopify-case,
.shopify-flow {
  background: #f6fbf9 !important;
}

.shopify-option-icon {
  border-color: #008060 !important;
  color: #008060 !important;
  background: linear-gradient(135deg,#eefaf6,#fff) !important;
}

.shopify-visual-card {
  position: absolute !important;
  right: 0 !important;
  top: 62px !important;
  width: min(560px, 100%) !important;
  background: #ffffff !important;
  border-radius: 24px !important;
  padding: 18px !important;
  box-shadow: 0 28px 70px rgba(0,90,67,.14) !important;
  border: 1px solid #b9eadb !important;
}

.shopify-visual-card__top {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 0 0 16px !important;
}

.shopify-visual-card__top span {
  width: 12px !important;
  height: 12px !important;
  border-radius: 999px !important;
  background: #ff6b6b !important;
}

.shopify-visual-card__top span:nth-child(2) { background: #ffbd4a !important; }
.shopify-visual-card__top span:nth-child(3) { background: #37d67a !important; }

.shopify-visual-card__top strong {
  margin-left: auto !important;
  color: #008060 !important;
  font-size: 15px !important;
  font-weight: 900 !important;
}

.shopify-visual-card__content {
  background: #f6fbf9 !important;
  border-radius: 16px !important;
  padding: 26px !important;
  display: grid !important;
  grid-template-columns: 160px 1fr !important;
  gap: 24px !important;
  min-height: 300px !important;
}

.shopify-visual-card__side {
  background: #fff !important;
  border: 1px solid #b9eadb !important;
  border-radius: 16px !important;
  padding: 18px !important;
}

.shopify-visual-card__side b {
  display: block !important;
  color: #008060 !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  margin: 0 0 18px !important;
}

.shopify-visual-card__side p {
  margin: 0 0 12px !important;
  height: 26px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  background: #eefaf6 !important;
  color: #111 !important;
  display: flex !important;
  align-items: center !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

.shopify-visual-card__main {
  display: grid !important;
  gap: 14px !important;
  align-content: center !important;
}

.shopify-visual-card__main div {
  min-height: 54px !important;
  border-radius: 14px !important;
  background: #fff !important;
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 0 18px !important;
  border-left: 10px solid #008060 !important;
}

.shopify-visual-card__main em {
  color: #111 !important;
  font-style: normal !important;
  font-weight: 900 !important;
  font-size: 15px !important;
}

.shopify-visual-card__main strong {
  color: #008060 !important;
  font-weight: 900 !important;
  font-size: 14px !important;
  white-space: nowrap !important;
}

.shopify-visual-card__main div:nth-child(2) strong,
.shopify-visual-card__main div:nth-child(3) strong {
  color: #006e52 !important;
}

.shopify-mini-card {
  position: absolute !important;
  left: 0 !important;
  top: 112px !important;
  z-index: 3 !important;
  background: #ffffff !important;
  border: 3px solid #b9eadb !important;
  color: #008060 !important;
  border-radius: 18px !important;
  padding: 24px 28px !important;
  font-weight: 900 !important;
  text-align: center !important;
  box-shadow: 0 18px 36px rgba(0,90,67,.12) !important;
}

.shopify-bottom-cta {
  background: #008060 !important;
  color: #ffffff !important;
}

.shopify-bottom-cta h2,
.shopify-bottom-cta p {
  color: #ffffff !important;
}

.site-footer-menu-renew {
  background: #004b93 !important;
}

@media (max-width: 1120px) {
  .shopify-hero__inner {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .shopify-hero-title {
    max-width: 100% !important;
    font-size: clamp(44px, 7vw, 64px) !important;
  }

  .shopify-visual-card {
    position: relative !important;
    right: auto !important;
    top: auto !important;
    width: 100% !important;
    margin-top: 26px !important;
  }

  .shopify-mini-card {
    left: 18px !important;
    top: 72px !important;
  }
}

@media (max-width: 640px) {
  .shopify-label {
    white-space: normal !important;
    font-size: 14px !important;
  }

  .shopify-hero-title {
    font-size: clamp(38px, 11vw, 52px) !important;
    line-height: 1.32 !important;
    letter-spacing: -0.045em !important;
  }

  .shopify-hero-title .hero-title-main,
  .shopify-hero-title .hero-title-sub {
    white-space: normal !important;
  }

  .shopify-visual-card__content {
    grid-template-columns: 1fr !important;
    padding: 20px !important;
  }

  .shopify-mini-card {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    margin: -20px auto 0 !important;
    width: fit-content !important;
  }
}


/* 2026-06-11 LP共通：スマホヘッダーをindex同様ハンバーガー化 */
@media (max-width: 980px) {
  html,
  body {
    overflow-x: hidden !important;
  }

  #wrapper,
  #header,
  #contents {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  #header {
    position: relative !important;
    z-index: 10000 !important;
    background: #004b93 !important;
  }

  #header .header_inner,
  #header .sysContent,
  #header .header_wrap {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  #header .header_wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    min-height: 64px !important;
    padding: 8px 14px !important;
    background: #004b93 !important;
  }

  #header .logo_wrap {
    display: flex !important;
    align-items: center !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: calc(100% - 84px) !important;
    flex: 1 1 auto !important;
  }

  #header .logo_wrap h1 {
    display: none !important;
  }

  #header .logo_wrap a {
    display: inline-flex !important;
    align-items: center !important;
    max-width: 100% !important;
    text-decoration: none !important;
  }

  #header .logo_wrap img {
    display: block !important;
    width: auto !important;
    max-width: 190px !important;
    max-height: 42px !important;
    height: auto !important;
    object-fit: contain !important;
  }

  #header .h_btn_wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #header .h_btn_wrap .h-menu,
  #header .h_btn_wrap .h-tel {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  #header .menu_wrap {
    display: block !important;
    position: relative !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 10002 !important;
  }

  #header .menu_btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    width: 54px !important;
    height: 48px !important;
    border: 1px solid rgba(255,255,255,.55) !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.08) !important;
    color: #fff !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
  }

  #header .menu_btn .span_warp {
    display: grid !important;
    gap: 5px !important;
    width: 24px !important;
    margin: 0 auto 2px !important;
  }

  #header .menu_btn .span_warp span {
    display: block !important;
    width: 24px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: #fff !important;
  }

  #header .menu_btn .txt,
  #header .menu_btn .close {
    display: block !important;
    color: #fff !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: .04em !important;
  }

  #header .menu_btn .close {
    display: none !important;
  }

  body.lp-sp-menu-open #header .menu_btn .txt {
    display: none !important;
  }

  body.lp-sp-menu-open #header .menu_btn .close {
    display: block !important;
  }

  body.lp-sp-menu-open #header .menu_btn .span_warp span:nth-child(1) {
    transform: translateY(7px) rotate(45deg) !important;
  }

  body.lp-sp-menu-open #header .menu_btn .span_warp span:nth-child(2) {
    opacity: 0 !important;
  }

  body.lp-sp-menu-open #header .menu_btn .span_warp span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg) !important;
  }

  .giftHamburger {
    display: none !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 10001 !important;
    background: rgba(0,0,0,.45) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 84px 16px 28px !important;
    box-sizing: border-box !important;
  }

  body.lp-sp-menu-open { overflow-y: auto !important; overflow-x: hidden !important; position: static !important; }

  body.lp-sp-menu-open .giftHamburger {
    display: block !important;
  }

  .giftHamburger .sysContent,
  .giftHamburger .hamburger_wrap {
    width: min(440px, 100%) !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
  }

  .giftHamburger .hamburger_wrap {
    background: #fff !important;
    border-radius: 18px !important;
    padding: 18px !important;
    box-shadow: 0 22px 60px rgba(0,0,0,.22) !important;
  }

  .giftHamburger ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .giftHamburger .linkbtn_wrap {
    display: none !important;
  }

  .giftHamburger .nav_wrap {
    display: block !important;
  }

  .giftHamburger .ttl {
    margin: 0 0 12px !important;
    color: #004b93 !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1.4 !important;
    text-align: left !important;
  }

  .giftHamburger .list > ul > li {
    border-bottom: 1px solid #e3edf7 !important;
  }

  .giftHamburger .list a,
  .giftHamburger .sp-menu-parent > span {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 46px !important;
    padding: 12px 6px !important;
    color: #111 !important;
    text-decoration: none !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.45 !important;
    box-sizing: border-box !important;
  }

  .giftHamburger .sp-menu-parent > span::after {
    content: "＋" !important;
    color: #004b93 !important;
    font-weight: 900 !important;
  }

  .giftHamburger .sp-menu-parent.is-open > span::after {
    content: "－" !important;
  }

  .giftHamburger .sp-sub-menu {
    display: none !important;
    padding: 0 0 10px 12px !important;
  }

  .giftHamburger .sp-menu-parent.is-open .sp-sub-menu {
    display: block !important;
  }

  .giftHamburger .sp-sub-menu a {
    min-height: 38px !important;
    padding: 9px 6px 9px 14px !important;
    color: #004b93 !important;
    font-size: 14px !important;
    position: relative !important;
  }

  .giftHamburger .sp-sub-menu a::before {
    content: "›" !important;
    position: absolute !important;
    left: 0 !important;
    top: 9px !important;
    font-weight: 900 !important;
  }

  .giftHamburger .external_link_wrap {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    margin-top: 16px !important;
  }

  .giftHamburger .external_link_wrap img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    border-radius: 10px !important;
  }
}

@media (min-width: 981px) {
  .giftHamburger {
    display: none !important;
  }
}


/* 2026-06-11 LP共通：ハンバーガー内をindex.html仕様へ調整 */
@media (max-width: 980px) {
  .giftHamburger {
    background: #ffffff !important;
    padding: 0 0 34px !important;
  }

  .giftHamburger .sysContent,
  .giftHamburger .hamburger_wrap {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  .giftHamburger .hamburger_wrap {
    background: #ffffff !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
  }

  .giftHamburger .linkbtn_wrap {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 22px !important;
    width: min(640px, calc(100% - 56px)) !important;
    margin: 42px auto 38px !important;
    padding: 0 !important;
  }

  .giftHamburger .linkbtn_wrap li {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .giftHamburger .linkbtn_wrap a,
  .giftHamburger .external_link_wrap a {
    display: block !important;
    text-decoration: none !important;
  }

  .giftHamburger .linkbtn_wrap .img_wrap,
  .giftHamburger .external_link_wrap .img_wrap {
    display: block !important;
    width: 100% !important;
  }

  .giftHamburger .linkbtn_wrap img,
  .giftHamburger .external_link_wrap img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
  }

  .giftHamburger .linkbtn_wrap img.nohover {
    display: block !important;
  }

  .giftHamburger .linkbtn_wrap img.sp_only {
    display: none !important;
  }

  .giftHamburger .nav_wrap {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .giftHamburger .dl_wrap {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .giftHamburger .ttl {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 74px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #eeeeee !important;
    color: #111111 !important;
    font-size: 28px !important;
    line-height: 1.2 !important;
    font-weight: 500 !important;
    letter-spacing: .14em !important;
    text-align: center !important;
  }

  .giftHamburger .list {
    width: 100% !important;
    background: #ffffff !important;
  }

  .giftHamburger .list > ul {
    width: 100% !important;
    margin: 0 !important;
    padding: 22px 0 10px !important;
  }

  .giftHamburger .list > ul > li {
    width: 100% !important;
    border-bottom: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .giftHamburger .list a {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    min-height: 56px !important;
    width: 100% !important;
    padding: 10px 58px 10px 46px !important;
    color: #333333 !important;
    background: #ffffff !important;
    font-size: 26px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    letter-spacing: .02em !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
  }

  .giftHamburger .list a::after {
    content: "" !important;
    position: absolute !important;
    right: 38px !important;
    top: 50% !important;
    width: 14px !important;
    height: 14px !important;
    border-top: 3px solid #333333 !important;
    border-right: 3px solid #333333 !important;
    transform: translateY(-50%) rotate(45deg) !important;
  }

  .giftHamburger .external_link_wrap {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    width: min(640px, calc(100% - 56px)) !important;
    margin: 28px auto 0 !important;
    padding: 0 !important;
  }

  .giftHamburger .external_link_wrap li {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
  }

  .giftHamburger .external_link_wrap img {
    border-radius: 0 !important;
  }
}

@media (max-width: 640px) {
  .giftHamburger .linkbtn_wrap {
    width: calc(100% - 64px) !important;
    gap: 20px !important;
    margin-top: 40px !important;
    margin-bottom: 34px !important;
  }

  .giftHamburger .ttl {
    min-height: 74px !important;
    font-size: 26px !important;
  }

  .giftHamburger .list a {
    min-height: 56px !important;
    padding-left: 46px !important;
    padding-right: 58px !important;
    font-size: 25px !important;
  }

  .giftHamburger .external_link_wrap {
    width: calc(100% - 64px) !important;
  }
}

@media (max-width: 390px) {
  .giftHamburger .list a {
    font-size: 22px !important;
    padding-left: 32px !important;
  }

  .giftHamburger .list a::after {
    right: 28px !important;
  }
}


/* 2026-06-11 LP共通：ハンバーガー内に商品登録代行7ページ追加 */
@media (max-width: 980px) {
  .giftHamburger .product-menu-wrap {
    margin-top: 8px !important;
  }

  .giftHamburger .product-ttl {
    margin-top: 12px !important;
    background: #f3f6fa !important;
    color: #004b93 !important;
    font-size: 22px !important;
    letter-spacing: .06em !important;
    min-height: 64px !important;
  }

  .giftHamburger .product-list > ul {
    padding-top: 16px !important;
    padding-bottom: 14px !important;
    background: #ffffff !important;
  }

  .giftHamburger .product-list a {
    font-size: 21px !important;
    min-height: 50px !important;
    color: #004b93 !important;
    font-weight: 800 !important;
  }

  .giftHamburger .product-list a::after {
    border-color: #004b93 !important;
  }

  .giftHamburger .external_link_wrap {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 390px) {
  .giftHamburger .product-ttl {
    font-size: 19px !important;
  }

  .giftHamburger .product-list a {
    font-size: 18px !important;
  }
}


/* 2026-06-11 LP共通：index.htmlハンバーガー実コード基準修正 */
@media screen and (max-width: 980px) {
  html,
  body {
    overflow-x: hidden !important;
  }

  body.lp-sp-menu-open { overflow-y: auto !important; overflow-x: hidden !important; position: static !important; }

  #wrapper,
  #contents {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  #header {
    width: 100% !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 10000 !important;
  }

  #header .header_inner {
    width: 100% !important;
    background: #00479D !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 10002 !important;
    height: 70px !important;
    overflow: visible !important;
  }

  #header .header_inner.open {
    background: transparent !important;
    height: 70px !important;
  }

  #header .header_inner.open .header_wrap {
    background: #00479D !important;
  }

  #header .header_inner .header_wrap {
    width: 100% !important;
    height: 70px !important;
    border-bottom: 1px solid #fff !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: stretch !important;
    background: #00479D !important;
    transition-duration: .5s !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  #header .header_inner .header_wrap .logo_wrap {
    width: auto !important;
    height: 100% !important;
    margin: 0 0 0 20px !important;
    padding: 0 0 0 120px !important;
    background-image: url(../img/logo_mark.png) !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: left center !important;
    display: block !important;
    max-width: calc(100% - 95px) !important;
    box-sizing: border-box !important;
  }

  #header .header_inner .header_wrap .logo_wrap h1 {
    display: inline-block !important;
    color: #fff !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
    font-weight: 400 !important;
    margin: 8px 0 0 !important;
    padding: 0 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
  }

  #header .header_inner .header_wrap .logo_wrap a {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
  }

  #header .header_inner .header_wrap .logo_wrap a img {
    display: block !important;
    width: 200px !important;
    max-width: 300px !important;
    height: auto !important;
    margin: 0 !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: stretch !important;
    flex: 0 0 auto !important;
    height: 100% !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .h-menu,
  #header .header_inner .header_wrap .h_btn_wrap .h-tel {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap {
    width: 75px !important;
    height: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    border-left: 1px solid #fff !important;
    cursor: pointer !important;
    position: relative !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn {
    width: 100% !important;
    height: auto !important;
    margin: 15px 0 0 !important;
    position: relative !important;
    color: #fff !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    display: block !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .span_warp {
    display: block !important;
    width: 35px !important;
    height: 27px !important;
    margin: 4px auto 10px !important;
    position: relative !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .span_warp span {
    width: 100% !important;
    height: 1px !important;
    background: transparent !important;
    border-bottom: 1px solid #fff !important;
    position: absolute !important;
    left: 50% !important;
    transition-duration: .5s !important;
    display: block !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .span_warp span:nth-child(1) {
    top: 0 !important;
    transform: translateX(-50%) !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .span_warp span:nth-child(2) {
    top: 50% !important;
    transform: translateX(-50%) !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .span_warp span:nth-child(3) {
    bottom: 0 !important;
    transform: translateX(-50%) !important;
  }

  #header .header_inner.open .header_wrap .h_btn_wrap .menu_wrap .menu_btn .span_warp span:nth-child(1) {
    top: 50% !important;
    transform: translate(-50%, -50%) rotateZ(135deg) !important;
  }

  #header .header_inner.open .header_wrap .h_btn_wrap .menu_wrap .menu_btn .span_warp span:nth-child(2) {
    opacity: 0 !important;
  }

  #header .header_inner.open .header_wrap .h_btn_wrap .menu_wrap .menu_btn .span_warp span:nth-child(3) {
    bottom: auto !important;
    top: 50% !important;
    transform: translate(-50%, -50%) rotateZ(-135deg) !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .txt,
  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .close {
    display: block !important;
    text-align: center !important;
    font-size: 10px !important;
    line-height: 1 !important;
    letter-spacing: -0.1em !important;
    color: #fff !important;
    white-space: nowrap !important;
    font-weight: 400 !important;
    position: static !important;
    transform: none !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .close {
    display: none !important;
    letter-spacing: 0 !important;
  }

  #header .header_inner.open .header_wrap .h_btn_wrap .menu_wrap .menu_btn .txt {
    display: none !important;
  }

  #header .header_inner.open .header_wrap .h_btn_wrap .menu_wrap .menu_btn .close {
    display: block !important;
  }

  #header .giftHamburger {
    display: block !important;
    width: 100vw !important;
    height: auto !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    bottom: auto !important;
    inset: auto !important;
    z-index: 10001 !important;
    transform: translateY(50px) !important;
    opacity: 0 !important;
    visibility: visible !important;
    pointer-events: none !important;
    transition-duration: .5s !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  #header .giftHamburger.open {
    transform: translateY(0) !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  #header .giftHamburger .sysContent {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #header .giftHamburger .hamburger_wrap {
    width: 100% !important;
    height: auto !important;
    max-height: 100vh !important;
    overflow-y: scroll !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 156px 0 50px !important;
    background: #fff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  #header .giftHamburger .hamburger_wrap ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap {
    width: 964px !important;
    margin: 0 auto 30px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
    padding: 0 !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li {
    width: 305px !important;
    margin-bottom: 30px !important;
    padding: 0 !important;
    border: 0 !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li:nth-child(n+4) {
    width: 225px !important;
    margin-bottom: 30px !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li .img_wrap {
    position: relative !important;
    width: 100% !important;
    height: 87px !important;
    border-radius: 4px !important;
    transition-duration: .5s !important;
    overflow: hidden !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li:nth-child(n+4) .img_wrap {
    height: 65px !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li .img_wrap img {
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 1 !important;
    display: block !important;
    transition-duration: .5s !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li .img_wrap img.nohover {
    opacity: 1 !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li .img_wrap img.hover {
    opacity: 0 !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap {
    width: 964px !important;
    margin: 0 auto 60px !important;
    display: flex !important;
    justify-content: flex-start !important;
    gap: 36px !important;
    align-items: stretch !important;
    border: 0 !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap {
    width: 100% !important;
    max-width: 420px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .ttl {
    width: 100% !important;
    height: 40px !important;
    background: #EEEEEE !important;
    color: #111 !important;
    font-size: 17px !important;
    line-height: 40px !important;
    letter-spacing: .04em !important;
    text-align: center !important;
    margin: 0 0 15px !important;
    padding: 0 !important;
    font-weight: 400 !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li {
    width: 100% !important;
    padding: 0 10px !important;
    margin: 0 !important;
    border: 0 !important;
    box-sizing: border-box !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a {
    width: 100% !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    min-height: 0 !important;
    padding: 0 !important;
    font-size: 15px !important;
    line-height: 40px !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    position: relative !important;
    color: #333 !important;
    background: transparent !important;
    text-decoration: none !important;
    font-weight: 400 !important;
    box-sizing: border-box !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a::after {
    content: "" !important;
    display: block !important;
    width: 8px !important;
    height: 8px !important;
    border-top: 1px solid #282828 !important;
    border-right: 1px solid #282828 !important;
    transform: rotateZ(45deg) !important;
    background: transparent !important;
    position: static !important;
    border-radius: 0 !important;
  }

  #header .giftHamburger .hamburger_wrap .external_link_wrap {
    width: 550px !important;
    margin: 0 auto !important;
    display: flex !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 20px !important;
    padding: 0 !important;
  }

  #header .giftHamburger .hamburger_wrap .external_link_wrap li {
    width: 240px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #header .giftHamburger .hamburger_wrap .external_link_wrap li a .img_wrap {
    width: 100% !important;
    transition-duration: .5s !important;
  }

  #header .giftHamburger .hamburger_wrap .external_link_wrap img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: none !important;
    border-radius: 0 !important;
  }
}

@media screen and (min-width: 751px) and (max-width: 1240px) {
  #header .giftHamburger {
    transform: translateY(4.03226vw) !important;
  }

  #header .giftHamburger.open {
    transform: translateY(0) !important;
  }

  #header .giftHamburger .hamburger_wrap {
    padding: 12.58065vw 0 4.03226vw !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap {
    width: 77.74194vw !important;
    margin: 0 auto 2.41935vw !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li {
    width: 24.59677vw !important;
    margin-bottom: 2.41935vw !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li:nth-child(n+4) {
    width: 35vw !important;
    max-width: 280px !important;
    flex: 0 0 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li .img_wrap {
    height: 7.01613vw !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap {
    width: 77.74194vw !important;
    margin: 0 auto 4.83871vw !important;
  }

  #header .giftHamburger .hamburger_wrap .external_link_wrap {
    width: 50vw !important;
  }

  #header .giftHamburger .hamburger_wrap .external_link_wrap li {
    width: 35vw !important;
    margin: 0 10px !important;
  }
}

@media screen and (max-width: 768px) {
  #contents {
    padding-top: 13.33333vw !important;
  }

  #header .header_inner {
    height: 13.33333vw !important;
  }

  #header .header_inner.open {
    height: 13.33333vw !important;
  }

  #header .header_inner .header_wrap {
    height: 13.33333vw !important;
  }

  #header .header_inner .header_wrap .logo_wrap {
    width: 85vw !important;
    max-width: calc(100% - 13.33333vw) !important;
    padding: 0 0 0 100px !important;
    margin: 0 0 0 5px !important;
  }

  #header .header_inner .header_wrap .logo_wrap h1 {
    font-size: 2vw !important;
    margin: 5px 0 0 !important;
  }

  #header .header_inner .header_wrap .logo_wrap a img {
    width: 53vw !important;
    max-width: 80% !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap {
    width: 13.33333vw !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn {
    width: 5.6vw !important;
    position: relative !important;
    height: 8vw !important;
    margin: auto !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .span_warp {
    width: 100% !important;
    height: 4.26667vw !important;
    margin-top: 2.5vw !important;
    margin-bottom: .8vw !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .txt {
    font-size: 12px !important;
    position: absolute !important;
    bottom: -2px !important;
    left: 50% !important;
    z-index: 1 !important;
    transform: translateX(-50%) !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .close {
    font-size: 7px !important;
    position: absolute !important;
    bottom: -2px !important;
    left: 50% !important;
    z-index: 1 !important;
    transform: translateX(-50%) !important;
  }

  #header .giftHamburger .hamburger_wrap {
    padding: 13.33333vw 0 13.33333vw !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap {
    width: 100% !important;
    margin: 0 auto !important;
    justify-content: center !important;
    align-items: stretch !important;
    padding-top: 20px !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li {
    width: 50% !important;
    margin-bottom: 0 !important;
    border-bottom: 1px solid #D0D0D0 !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li:nth-child(1),
  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li:nth-child(2),
  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li:nth-child(3) {
    width: 76% !important;
    margin-bottom: 0 !important;
    border-bottom: none !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li:nth-child(2) {
    margin: 0 3% !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li:nth-child(1) .img_wrap,
  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li:nth-child(2) .img_wrap,
  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li:nth-child(3) .img_wrap {
    width: 100% !important;
    height: auto !important;
    border-radius: 4px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin-bottom: 20px !important;
    overflow: hidden !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li:nth-child(4) {
    width: 100% !important;
    padding: 4vw 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin-bottom: 0 !important;
    border-top: 1px solid #D0D0D0 !important;
    border-bottom: 1px solid #D0D0D0 !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li:nth-child(4) a .img_wrap {
    width: 300px !important;
    height: auto !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li a .img_wrap {
    position: relative !important;
    width: 100% !important;
    height: auto !important;
    border-radius: 0 !important;
    transition-duration: .5s !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li a .img_wrap img {
    width: 100% !important;
    position: static !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li a .img_wrap img.nohover {
    display: block !important;
  }

  #header .giftHamburger .hamburger_wrap .linkbtn_wrap li a .img_wrap img.sp_only {
    display: none !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap {
    width: 100% !important;
    margin: 0 auto !important;
    display: block !important;
    border-bottom: 1px solid #D0D0D0 !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap {
    width: 100% !important;
    max-width: none !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .ttl {
    height: 10.66667vw !important;
    font-size: 4.8vw !important;
    line-height: 10.66667vw !important;
    margin-bottom: 0 !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    padding: 2.66667vw 0 !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li {
    width: 100% !important;
    padding: 2vw 5.33333vw !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a {
    font-size: 4vw !important;
    line-height: 110% !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    position: relative !important;
    font-weight: 400 !important;
    color: #333 !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a::after {
    width: 2.13333vw !important;
    height: 2.13333vw !important;
    border-top: 1px solid #282828 !important;
    border-right: 1px solid #282828 !important;
  }

  #header .giftHamburger .hamburger_wrap .external_link_wrap {
    width: 100% !important;
    justify-content: center !important;
    align-items: center !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    padding-top: 30px !important;
    margin: 0 auto !important;
  }

  #header .giftHamburger .hamburger_wrap .external_link_wrap li {
    width: 300px !important;
    max-width: 76% !important;
    margin: 0 auto !important;
  }

  #header .giftHamburger .hamburger_wrap .external_link_wrap li a .img_wrap {
    width: 100% !important;
  }
}


/* 2026-06-11 SERVICEセクション レイアウト調整 */
.shopify-service .shopify-service-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.04fr) minmax(380px, .96fr) !important;
  gap: 34px 54px !important;
  align-items: start !important;
}

.shopify-service .shopify-service-head {
  grid-column: 1 / -1 !important;
  display: block !important;
  margin: 0 0 4px !important;
}

.shopify-service .shopify-service-head .shopify-sec-en {
  margin: 0 0 12px !important;
}

.shopify-service .shopify-service-head .shopify-sec-title {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-bottom: 22px !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  font-size: clamp(32px, 3.3vw, 48px) !important;
  line-height: 1.28 !important;
  letter-spacing: -0.035em !important;
}

.shopify-service .shopify-service-body {
  grid-column: 1 / 2 !important;
  min-width: 0 !important;
}

.shopify-service .shopify-service-body p {
  margin: 0 0 20px !important;
}

.shopify-service .shopify-service__box {
  grid-column: 2 / 3 !important;
  align-self: start !important;
  margin-top: 0 !important;
}

@media (max-width: 1180px) {
  .shopify-service .shopify-service-head .shopify-sec-title {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    font-size: clamp(30px, 4vw, 42px) !important;
  }
}

@media (max-width: 900px) {
  .shopify-service .shopify-service-layout {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  .shopify-service .shopify-service-head,
  .shopify-service .shopify-service-body,
  .shopify-service .shopify-service__box {
    grid-column: 1 / -1 !important;
  }

  .shopify-service .shopify-service-head .shopify-sec-title {
    white-space: normal !important;
    font-size: clamp(28px, 7vw, 38px) !important;
    line-height: 1.38 !important;
  }
}


/* 2026-06-11 見出し1行化・中央揃え・ハンバーガー軽量調整 */
.shopify-hero-title,
.shopify-hero h2 {
  display: block !important;
  width: 100% !important;
  max-width: 980px !important;
  margin: 24px 0 !important;
  color: #111111 !important;
  font-size: clamp(46px, 4.8vw, 72px) !important;
  line-height: 1.25 !important;
  letter-spacing: -0.055em !important;
  font-weight: 900 !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  white-space: nowrap !important;
}

.shopify-hero-title .hero-title-main,
.shopify-hero-title .hero-title-sub,
.shopify-hero h2 > span {
  display: inline !important;
  white-space: nowrap !important;
  color: inherit !important;
}

.shopify-hero-title .hero-title-accent {
  color: var(--shopify-main, currentColor) !important;
}

.shopify-service .shopify-service-head {
  text-align: center !important;
  margin: 0 auto 8px !important;
}

.shopify-service .shopify-service-head .shopify-sec-en {
  display: block !important;
  text-align: center !important;
  margin: 0 auto 12px !important;
}

.shopify-service .shopify-service-head .shopify-sec-title {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
  text-align: center !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  font-size: clamp(32px, 3.2vw, 46px) !important;
  line-height: 1.32 !important;
  letter-spacing: -0.045em !important;
}

.shopify-service .shopify-service-head .shopify-sec-title::after {
  left: 50% !important;
  transform: translateX(-50%) !important;
}

/* ハンバーガーの開閉を軽くする */
#header .header_inner,
#header .header_inner .header_wrap,
#header .giftHamburger,
#header .giftHamburger .hamburger_wrap,
#header .menu_btn .span_warp span {
  transition-duration: .18s !important;
}

@media screen and (max-width: 768px) {
  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    width: 8.2vw !important;
    height: 11.2vw !important;
    margin: auto !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .span_warp {
    width: 5.8vw !important;
    height: 4.2vw !important;
    margin: 0 auto 1.45vw !important;
    position: relative !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .txt,
  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .close {
    position: static !important;
    transform: none !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    color: #ffffff !important;
    white-space: nowrap !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .txt {
    font-size: 10px !important;
    letter-spacing: .02em !important;
  }

  #header .header_inner .header_wrap .h_btn_wrap .menu_wrap .menu_btn .close {
    font-size: 10px !important;
    letter-spacing: .02em !important;
  }

  #header .header_inner.open .header_wrap .h_btn_wrap .menu_wrap .menu_btn .txt {
    display: none !important;
  }

  #header .header_inner:not(.open) .header_wrap .h_btn_wrap .menu_wrap .menu_btn .close {
    display: none !important;
  }
}

@media (max-width: 1180px) {
  .shopify-hero-title,
  .shopify-hero h2,
  .shopify-service .shopify-service-head .shopify-sec-title {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
}

@media (max-width: 640px) {
  .shopify-hero-title,
  .shopify-hero h2 {
    font-size: clamp(34px, 9vw, 46px) !important;
    line-height: 1.35 !important;
  }
}


/* 2026-06-11 FV・SERVICE見出し プロ見せ調整 */
.shopify-hero-title,
.shopify-hero h2 {
  display: flex !important;
  align-items: baseline !important;
  flex-wrap: nowrap !important;
  gap: .14em !important;
  width: 100% !important;
  max-width: 1050px !important;
  margin: 24px 0 !important;
  font-size: clamp(46px, 4.8vw, 72px) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.06em !important;
  font-weight: 900 !important;
  word-break: keep-all !important;
  white-space: nowrap !important;
}

.shopify-hero-title .hero-title-brand {
  display: inline-block !important;
  color: #111111 !important;
  white-space: nowrap !important;
}

.shopify-hero-title .hero-title-accent {
  display: inline-block !important;
  color: #008060 !important;
  white-space: nowrap !important;
  text-shadow: 0 6px 0 rgba(0,0,0,.035) !important;
}

.shopify-hero-title .hero-title-accent::after {
  content: "" !important;
  display: block !important;
  width: 100% !important;
  height: 8px !important;
  margin-top: -4px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg,#008060,rgba(255,255,255,0)) !important;
  opacity: .22 !important;
}

.shopify-service .shopify-service-head {
  position: relative !important;
  text-align: center !important;
  margin: 0 auto 18px !important;
  padding: 0 0 20px !important;
}

.shopify-service .shopify-service-head::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  bottom: 0 !important;
  width: 120px !important;
  height: 5px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg,#008060,#005a43) !important;
  transform: translateX(-50%) !important;
  box-shadow: 0 8px 18px rgba(0,128,96,.18) !important;
}

.shopify-service .shopify-service-head .shopify-sec-en {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 26px !important;
  margin: 0 auto 16px !important;
  padding: 5px 16px !important;
  border-radius: 999px !important;
  background: #eefaf6 !important;
  color: #008060 !important;
  font-size: 13px !important;
  line-height: 1 !important;
  letter-spacing: .22em !important;
  font-weight: 900 !important;
  text-align: center !important;
}

.shopify-service .shopify-service-head .shopify-sec-title {
  display: flex !important;
  align-items: baseline !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;
  gap: .10em !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  color: #111111 !important;
  text-align: center !important;
  font-size: clamp(32px, 3.0vw, 44px) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.055em !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
}

.shopify-service .shopify-service-head .shopify-sec-title::after {
  display: none !important;
  content: none !important;
}

.shopify-service .service-title-brand {
  display: inline-block !important;
  color: #008060 !important;
  white-space: nowrap !important;
}

.shopify-service .service-title-main {
  display: inline-block !important;
  color: #111111 !important;
  white-space: nowrap !important;
}

.shopify-service .shopify-service-body {
  padding-top: 4px !important;
}

.shopify-service .shopify-service__box {
  margin-top: 4px !important;
}

@media (max-width: 1180px) {
  .shopify-hero-title,
  .shopify-hero h2,
  .shopify-service .shopify-service-head .shopify-sec-title {
    flex-wrap: wrap !important;
    white-space: normal !important;
    line-height: 1.28 !important;
  }

  .shopify-hero-title .hero-title-brand,
  .shopify-hero-title .hero-title-accent,
  .shopify-service .service-title-brand,
  .shopify-service .service-title-main {
    white-space: normal !important;
  }
}

@media (max-width: 640px) {
  .shopify-hero-title,
  .shopify-hero h2 {
    font-size: clamp(34px, 9vw, 48px) !important;
    gap: .08em !important;
  }

  .shopify-hero-title .hero-title-accent::after {
    height: 5px !important;
    margin-top: -2px !important;
  }

  .shopify-service .shopify-service-head .shopify-sec-title {
    font-size: clamp(28px, 7.4vw, 38px) !important;
    line-height: 1.36 !important;
  }

  .shopify-service .shopify-service-head::before {
    width: 92px !important;
    height: 4px !important;
  }
}


/* 2026-06-11 POINT・IMAGE系カードの読みやすさ改善 */
.shopify-detail__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  margin: 34px auto 0 !important;
}

.shopify-detail__grid > div {
  position: relative !important;
  display: block !important;
  min-height: 100% !important;
  padding: 26px 24px 24px !important;
  background: #ffffff !important;
  border: 1px solid #b9eadb !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 36px rgba(0,128,96,.09) !important;
  overflow: hidden !important;
}

.shopify-detail__grid > div::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 6px !important;
  height: 100% !important;
  background: #008060 !important;
  opacity: .95 !important;
}

.shopify-detail__grid > div::after {
  content: "" !important;
  position: absolute !important;
  right: -38px !important;
  top: -38px !important;
  width: 96px !important;
  height: 96px !important;
  border-radius: 999px !important;
  background: #eefaf6 !important;
  opacity: .9 !important;
  pointer-events: none !important;
}

.shopify-detail__grid h3 {
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  margin: 0 0 14px !important;
  padding: 0 0 13px !important;
  color: #008060 !important;
  font-size: 20px !important;
  line-height: 1.42 !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  border-bottom: 1px dashed #b9eadb !important;
}

.shopify-detail__grid p {
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  margin: 0 !important;
  color: #333333 !important;
  font-size: 15.5px !important;
  line-height: 1.95 !important;
  font-weight: 700 !important;
  letter-spacing: .01em !important;
}

.shopify-detail__grid + p,
.shopify-detail__grid p + p {
  margin-top: 12px !important;
}

.shopify-detail .shopify-sec-title,
.shopify-rcabinet .shopify-sec-title,
.shopify-seo-support .shopify-sec-title {
  margin-bottom: 18px !important;
}

.shopify-detail .shopify-center-text,
.shopify-rcabinet .shopify-center-text,
.shopify-seo-support .shopify-center-text {
  max-width: 900px !important;
  margin: 0 auto !important;
  line-height: 2 !important;
  color: #333333 !important;
}

@media (max-width: 1024px) {
  .shopify-detail__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .shopify-detail__grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    margin-top: 24px !important;
  }

  .shopify-detail__grid > div {
    padding: 23px 20px 22px !important;
    border-radius: 16px !important;
  }

  .shopify-detail__grid h3 {
    font-size: 19px !important;
    line-height: 1.45 !important;
  }

  .shopify-detail__grid p {
    font-size: 15px !important;
    line-height: 1.9 !important;
  }
}


/* 2026-06-11 ITEMS視認性・下部CTA・スマホ見出し最終調整 */
.shopify-items {
  position: relative !important;
  overflow: hidden !important;
}

.shopify-items::before,
.shopify-items::after {
  pointer-events: none !important;
}

.shopify-items > *,
.shopify-items .shopify-wide,
.shopify-items .shopify-sec-en,
.shopify-items .shopify-sec-title,
.shopify-items .shopify-items__grid {
  position: relative !important;
  z-index: 2 !important;
}

.shopify-items .shopify-center-text {
  position: relative !important;
  z-index: 3 !important;
  display: block !important;
  width: fit-content !important;
  max-width: min(920px, 92%) !important;
  margin: 22px auto 34px !important;
  padding: 14px 24px !important;
  background: rgba(255,255,255,.94) !important;
  border: 1px solid rgba(255,255,255,.98) !important;
  border-left: 6px solid #008060 !important;
  border-radius: 999px !important;
  color: #111111 !important;
  font-size: 16px !important;
  line-height: 1.8 !important;
  font-weight: 800 !important;
  text-align: center !important;
  box-shadow: 0 16px 34px rgba(0,0,0,.08) !important;
  backdrop-filter: blur(4px) !important;
}

.shopify-items .shopify-center-text * {
  color: #111111 !important;
}

.shopify-bottom-cta {
  position: relative !important;
  overflow: hidden !important;
}

.shopify-bottom-cta .shopify-inner {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 28px 42px !important;
  align-items: center !important;
}

.shopify-bottom-cta h2 {
  grid-column: 1 / 2 !important;
  margin: 0 0 12px !important;
}

.shopify-bottom-cta p {
  grid-column: 1 / 2 !important;
  margin: 0 !important;
}

.shopify-bottom-cta__buttons {
  grid-column: 2 / 3 !important;
  grid-row: 1 / span 2 !important;
  display: flex !important;
  align-items: stretch !important;
  justify-content: flex-end !important;
  gap: 14px !important;
  flex-wrap: nowrap !important;
  min-width: 430px !important;
}

.shopify-bottom-cta__buttons a,
.shopify-bottom-cta__buttons a:link,
.shopify-bottom-cta__buttons a:visited {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 210px !important;
  min-height: 66px !important;
  padding: 12px 18px !important;
  border-radius: 12px !important;
  text-align: center !important;
  text-decoration: none !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  box-sizing: border-box !important;
  opacity: 1 !important;
  visibility: visible !important;
  white-space: normal !important;
}

.shopify-bottom-cta__buttons a:first-child {
  background: #ffffff !important;
  color: #005a43 !important;
  border: 2px solid #ffffff !important;
  box-shadow: 0 14px 28px rgba(255,255,255,.12) !important;
}

.shopify-bottom-cta__buttons a:first-child strong {
  display: block !important;
  margin-top: 2px !important;
  color: #008060 !important;
  font-size: 17px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}

.shopify-bottom-cta__buttons a:last-child {
  background: #008060 !important;
  color: #ffffff !important;
  border: 2px solid #008060 !important;
  box-shadow: 0 14px 28px rgba(0,0,0,.16) !important;
}

.shopify-bottom-cta__buttons a:hover {
  transform: translateY(-2px) !important;
}

@media (max-width: 1024px) {
  .shopify-bottom-cta .shopify-inner {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }

  .shopify-bottom-cta h2,
  .shopify-bottom-cta p,
  .shopify-bottom-cta__buttons {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
  }

  .shopify-bottom-cta__buttons {
    justify-content: center !important;
    min-width: 0 !important;
  }
}

@media (max-width: 640px) {
  .shopify-hero-title,
  .shopify-hero h2 {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: baseline !important;
    gap: .08em !important;
    width: max-content !important;
    max-width: none !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    font-size: 30px !important;
    line-height: 1.22 !important;
    letter-spacing: -0.075em !important;
    transform: scaleX(.94) !important;
    transform-origin: left center !important;
  }

  .shopify-hero-title .hero-title-brand,
  .shopify-hero-title .hero-title-accent {
    display: inline-block !important;
    white-space: nowrap !important;
  }

  .shopify-items .shopify-center-text {
    width: auto !important;
    max-width: 100% !important;
    margin: 18px auto 24px !important;
    padding: 13px 16px !important;
    border-radius: 14px !important;
    font-size: 14.5px !important;
    line-height: 1.8 !important;
    text-align: left !important;
  }

  .shopify-bottom-cta__buttons {
    flex-direction: column !important;
    align-items: stretch !important;
    width: min(100%, 340px) !important;
    margin: 0 auto !important;
  }

  .shopify-bottom-cta__buttons a,
  .shopify-bottom-cta__buttons a:link,
  .shopify-bottom-cta__buttons a:visited {
    width: 100% !important;
    min-height: 58px !important;
  }
}


/* 2026-06-11 下部CTAボタン配色・視認性プロ調整 */
.shopify-bottom-cta .shopify-inner {
  align-items: center !important;
}

.shopify-bottom-cta__buttons {
  display: flex !important;
  align-items: stretch !important;
  justify-content: flex-end !important;
  gap: 18px !important;
  min-width: 560px !important;
}

.shopify-bottom-cta__buttons a,
.shopify-bottom-cta__buttons a:link,
.shopify-bottom-cta__buttons a:visited {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 76px !important;
  border-radius: 18px !important;
  text-align: center !important;
  text-decoration: none !important;
  font-weight: 900 !important;
  letter-spacing: .02em !important;
  box-sizing: border-box !important;
  transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease !important;
}

.shopify-bottom-cta__buttons a::before {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  margin-right: 10px !important;
  border-radius: 999px !important;
  font-size: 17px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  flex: 0 0 auto !important;
}

.shopify-bottom-cta__buttons a:first-child {
  width: 245px !important;
  padding: 14px 20px !important;
  flex-direction: row !important;
  gap: 4px !important;
  background: rgba(255,255,255,.13) !important;
  color: #ffffff !important;
  border: 2px solid rgba(255,255,255,.82) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22), 0 14px 32px rgba(0,0,0,.12) !important;
}

.shopify-bottom-cta__buttons a:first-child::before {
  content: "☎" !important;
  background: rgba(255,255,255,.20) !important;
  color: #ffffff !important;
}

.shopify-bottom-cta__buttons a:first-child strong {
  display: inline-block !important;
  margin: 0 0 0 6px !important;
  color: #ffffff !important;
  font-size: 17px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
}

.shopify-bottom-cta__buttons a:last-child {
  width: 285px !important;
  padding: 14px 24px !important;
  background: #ffffff !important;
  color: #005a43 !important;
  border: 3px solid #ffffff !important;
  box-shadow: 0 22px 44px rgba(0,0,0,.22), 0 0 0 8px rgba(255,255,255,.12) !important;
}

.shopify-bottom-cta__buttons a:last-child::before {
  content: "✉" !important;
  background: #008060 !important;
  color: #ffffff !important;
}

.shopify-bottom-cta__buttons a:last-child::after {
  content: "›" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  height: 24px !important;
  margin-left: 12px !important;
  border-radius: 999px !important;
  background: #008060 !important;
  color: #ffffff !important;
  font-size: 22px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  flex: 0 0 auto !important;
}

.shopify-bottom-cta__buttons a:hover {
  transform: translateY(-3px) !important;
}

.shopify-bottom-cta__buttons a:first-child:hover {
  background: rgba(255,255,255,.20) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.24), 0 18px 38px rgba(0,0,0,.18) !important;
}

.shopify-bottom-cta__buttons a:last-child:hover {
  box-shadow: 0 26px 54px rgba(0,0,0,.28), 0 0 0 8px rgba(255,255,255,.16) !important;
}

.shopify-bottom-cta__buttons a *,
.shopify-bottom-cta__buttons a span,
.shopify-bottom-cta__buttons a strong {
  text-decoration: none !important;
}

@media (max-width: 1100px) {
  .shopify-bottom-cta__buttons {
    min-width: 0 !important;
    width: 100% !important;
    justify-content: center !important;
  }
}

@media (max-width: 720px) {
  .shopify-bottom-cta__buttons {
    flex-direction: column !important;
    align-items: stretch !important;
    width: min(100%, 360px) !important;
    margin: 0 auto !important;
    gap: 14px !important;
  }

  .shopify-bottom-cta__buttons a,
  .shopify-bottom-cta__buttons a:first-child,
  .shopify-bottom-cta__buttons a:last-child {
    width: 100% !important;
    min-height: 64px !important;
    padding: 13px 18px !important;
  }

  .shopify-bottom-cta__buttons a:first-child {
    background: rgba(255,255,255,.16) !important;
  }

  .shopify-bottom-cta__buttons a:last-child {
    box-shadow: 0 18px 38px rgba(0,0,0,.24), 0 0 0 6px rgba(255,255,255,.12) !important;
  }

  .shopify-bottom-cta__buttons a::before {
    width: 30px !important;
    height: 30px !important;
    margin-right: 9px !important;
  }
}


/* 2026-06-11 CTAボタン再修正・スマホ見出し自然改行 */
.shopify-bottom-cta__buttons {
  display: flex !important;
  align-items: stretch !important;
  justify-content: flex-end !important;
  gap: 16px !important;
  min-width: 540px !important;
  width: auto !important;
}

.shopify-bottom-cta__buttons a,
.shopify-bottom-cta__buttons a:link,
.shopify-bottom-cta__buttons a:visited {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 250px !important;
  min-height: 78px !important;
  padding: 14px 18px !important;
  border-radius: 16px !important;
  text-align: center !important;
  text-decoration: none !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  white-space: normal !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  box-sizing: border-box !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.shopify-bottom-cta__buttons a::before,
.shopify-bottom-cta__buttons a::after {
  display: none !important;
  content: none !important;
}

.shopify-bottom-cta__buttons a:first-child {
  background: #ffffff !important;
  color: #005a43 !important;
  border: 2px solid #ffffff !important;
  box-shadow: 0 18px 38px rgba(0,0,0,.22) !important;
}

.shopify-bottom-cta__buttons a:first-child strong {
  display: block !important;
  margin: 4px 0 0 !important;
  color: #008060 !important;
  font-size: 22px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: .02em !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
}

.shopify-bottom-cta__buttons a:last-child {
  background: #ffffff !important;
  color: #005a43 !important;
  border: 2px solid #ffffff !important;
  box-shadow: 0 18px 38px rgba(0,0,0,.22) !important;
}

.shopify-bottom-cta__buttons a:last-child::before {
  content: "メール" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: 24px !important;
  margin: 0 0 6px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  background: #008060 !important;
  color: #ffffff !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
}

.shopify-bottom-cta__buttons a:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 24px 48px rgba(0,0,0,.28) !important;
}

@media (max-width: 1100px) {
  .shopify-bottom-cta__buttons {
    min-width: 0 !important;
    width: 100% !important;
    justify-content: center !important;
  }
}

@media (max-width: 720px) {
  .shopify-bottom-cta__buttons {
    flex-direction: column !important;
    align-items: stretch !important;
    width: min(100%, 360px) !important;
    margin: 0 auto !important;
    gap: 14px !important;
  }

  .shopify-bottom-cta__buttons a,
  .shopify-bottom-cta__buttons a:first-child,
  .shopify-bottom-cta__buttons a:last-child {
    width: 100% !important;
    min-height: 66px !important;
    padding: 14px 18px !important;
  }

  .shopify-bottom-cta__buttons a:first-child strong {
    font-size: 20px !important;
  }
}

/* スマホ見出し：無理に小さくせず、ブランド名＋商品登録代行で自然改行 */
@media (max-width: 640px) {
  .shopify-hero-title,
  .shopify-hero h2 {
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: wrap !important;
    gap: .02em .12em !important;
    width: 100% !important;
    max-width: 100% !important;
    white-space: normal !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    transform: none !important;
    font-size: clamp(36px, 10.2vw, 52px) !important;
    line-height: 1.22 !important;
    letter-spacing: -0.055em !important;
  }

  .shopify-hero-title .hero-title-brand,
  .shopify-hero-title .hero-title-accent {
    display: inline-block !important;
    white-space: nowrap !important;
  }
}

/* 長いモール名だけ、読みやすい大きさで自然改行 */
@media (max-width: 640px) {
  .yahoo-hero-title,
  .yahoo-hero h2,
  .colormeshop-hero-title,
  .colormeshop-hero h2 {
    font-size: clamp(32px, 8.6vw, 44px) !important;
    line-height: 1.28 !important;
    letter-spacing: -0.055em !important;
  }
}

@media (max-width: 390px) {
  .shopify-hero-title,
  .shopify-hero h2 {
    font-size: clamp(32px, 9.2vw, 44px) !important;
  }

  .yahoo-hero-title,
  .yahoo-hero h2,
  .colormeshop-hero-title,
  .colormeshop-hero h2 {
    font-size: clamp(29px, 8.2vw, 40px) !important;
  }
}


/* 2026-06-11 下部CTAを文字だけに整理・スマホはみ出し防止 */
html,
body {
  max-width: 100% !important;
  overflow-x: hidden !important;
}

#wrapper,
#contents,
.shopify-page,
.shopify-inner,
.shopify-wide {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.shopify-bottom-cta {
  overflow: hidden !important;
}

.shopify-bottom-cta .shopify-inner {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 28px 40px !important;
}

.shopify-bottom-cta h2 {
  grid-column: 1 / 2 !important;
  margin: 0 0 14px !important;
}

.shopify-bottom-cta p {
  grid-column: 1 / 2 !important;
  margin: 0 !important;
}

.shopify-bottom-cta__buttons {
  grid-column: 2 / 3 !important;
  grid-row: 1 / span 2 !important;
  display: flex !important;
  align-items: stretch !important;
  justify-content: flex-end !important;
  gap: 14px !important;
  min-width: 500px !important;
  width: auto !important;
}

.shopify-bottom-cta__buttons a,
.shopify-bottom-cta__buttons a:link,
.shopify-bottom-cta__buttons a:visited {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 240px !important;
  min-height: 70px !important;
  padding: 14px 18px !important;
  border-radius: 14px !important;
  text-align: center !important;
  text-decoration: none !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  white-space: normal !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  box-sizing: border-box !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.shopify-bottom-cta__buttons a::before,
.shopify-bottom-cta__buttons a::after {
  display: none !important;
  content: none !important;
}

.shopify-bottom-cta__buttons a:first-child {
  background: #ffffff !important;
  color: #005a43 !important;
  border: 2px solid #ffffff !important;
  box-shadow: 0 16px 34px rgba(0,0,0,.18) !important;
}

.shopify-bottom-cta__buttons a:first-child strong {
  display: block !important;
  margin: 4px 0 0 !important;
  color: #008060 !important;
  font-size: 22px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: .03em !important;
  white-space: nowrap !important;
}

.shopify-bottom-cta__buttons a:last-child {
  background: rgba(255,255,255,.14) !important;
  color: #ffffff !important;
  border: 2px solid rgba(255,255,255,.78) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 16px 34px rgba(0,0,0,.16) !important;
}

.shopify-bottom-cta__buttons a:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 22px 44px rgba(0,0,0,.24) !important;
}

/* スマホ・狭い画面のはみ出し防止 */
@media (max-width: 1024px) {
  .shopify-bottom-cta .shopify-inner {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    text-align: center !important;
  }

  .shopify-bottom-cta h2,
  .shopify-bottom-cta p,
  .shopify-bottom-cta__buttons {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
  }

  .shopify-bottom-cta__buttons {
    min-width: 0 !important;
    width: min(100%, 560px) !important;
    margin: 0 auto !important;
    justify-content: center !important;
  }
}

@media (max-width: 640px) {
  body {
    min-width: 0 !important;
  }

  img,
  video,
  canvas,
  svg {
    max-width: 100% !important;
    height: auto !important;
  }

  .shopify-hero,
  .shopify-feature,
  .shopify-service,
  .shopify-prepare,
  .shopify-types,
  .shopify-option,
  .shopify-items,
  .shopify-trouble,
  .shopify-flow,
  .shopify-detail,
  .shopify-case,
  .shopify-check,
  .shopify-rcabinet,
  .shopify-seo-support,
  .shopify-faq,
  .shopify-bottom-cta,
  .lp-related-links,
  .site-footer-menu-renew {
    max-width: 100% !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  .shopify-inner,
  .shopify-wide {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    box-sizing: border-box !important;
  }

  .shopify-hero__inner,
  .shopify-two,
  .shopify-service-layout,
  .shopify-feature__grid,
  .shopify-prepare__grid,
  .shopify-type__grid,
  .shopify-option__grid,
  .shopify-items__grid,
  .shopify-trouble__grid,
  .shopify-flow__grid,
  .shopify-detail__grid,
  .lp-related-grid {
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .shopify-hero__visual,
  .shopify-visual-card,
  .shopify-dashboard,
  .shopify-mini-card,
  .shopify-service__box,
  .shopify-prepare__card,
  .shopify-type__grid article,
  .shopify-items__grid > div,
  .shopify-detail__grid > div,
  .shopify-flow__grid > div,
  .shopify-trouble__grid > div,
  .lp-related-card {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .shopify-hero::after,
  .shopify-items::before,
  .shopify-items::after,
  .shopify-flow::before,
  .shopify-flow::after {
    max-width: 100% !important;
    opacity: .08 !important;
  }

  .shopify-bottom-cta__buttons {
    flex-direction: column !important;
    align-items: stretch !important;
    width: min(100%, 360px) !important;
    min-width: 0 !important;
    gap: 12px !important;
  }

  .shopify-bottom-cta__buttons a,
  .shopify-bottom-cta__buttons a:first-child,
  .shopify-bottom-cta__buttons a:last-child {
    width: 100% !important;
    min-height: 62px !important;
    padding: 13px 16px !important;
  }

  .shopify-bottom-cta__buttons a:first-child strong {
    font-size: 20px !important;
  }
}


/* 2026-06-11 CTA疑似要素完全削除・文字だけ固定 */
.shopify-bottom-cta__buttons a::before,
.shopify-bottom-cta__buttons a::after,
.shopify-bottom-cta__buttons a:first-child::before,
.shopify-bottom-cta__buttons a:first-child::after,
.shopify-bottom-cta__buttons a:last-child::before,
.shopify-bottom-cta__buttons a:last-child::after,
.shopify-bottom-cta__buttons a:hover::before,
.shopify-bottom-cta__buttons a:hover::after,
.shopify-bottom-cta__buttons a:first-child:hover::before,
.shopify-bottom-cta__buttons a:first-child:hover::after,
.shopify-bottom-cta__buttons a:last-child:hover::before,
.shopify-bottom-cta__buttons a:last-child:hover::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.shopify-bottom-cta__buttons {
  display: flex !important;
  align-items: stretch !important;
  justify-content: flex-end !important;
  gap: 14px !important;
  min-width: 500px !important;
  width: auto !important;
}

.shopify-bottom-cta__buttons a,
.shopify-bottom-cta__buttons a:link,
.shopify-bottom-cta__buttons a:visited,
.shopify-bottom-cta__buttons a:first-child,
.shopify-bottom-cta__buttons a:last-child {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 240px !important;
  min-height: 70px !important;
  padding: 14px 18px !important;
  border-radius: 14px !important;
  box-sizing: border-box !important;
  text-align: center !important;
  text-decoration: none !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  white-space: normal !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.shopify-bottom-cta__buttons a:first-child {
  background: #ffffff !important;
  color: #005a43 !important;
  border: 2px solid #ffffff !important;
  box-shadow: 0 16px 34px rgba(0,0,0,.18) !important;
}

.shopify-bottom-cta__buttons a:first-child strong {
  display: block !important;
  margin: 4px 0 0 !important;
  color: #008060 !important;
  font-size: 22px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

.shopify-bottom-cta__buttons a:last-child {
  background: rgba(255,255,255,.14) !important;
  color: #ffffff !important;
  border: 2px solid rgba(255,255,255,.78) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 16px 34px rgba(0,0,0,.16) !important;
}

.shopify-bottom-cta__buttons a:last-child * {
  color: inherit !important;
}

@media (max-width: 1024px) {
  .shopify-bottom-cta__buttons {
    justify-content: center !important;
    min-width: 0 !important;
    width: min(100%, 520px) !important;
    margin: 0 auto !important;
  }
}

@media (max-width: 640px) {
  .shopify-bottom-cta__buttons {
    flex-direction: column !important;
    align-items: stretch !important;
    width: min(100%, 360px) !important;
    min-width: 0 !important;
    gap: 12px !important;
  }

  .shopify-bottom-cta__buttons a,
  .shopify-bottom-cta__buttons a:first-child,
  .shopify-bottom-cta__buttons a:last-child {
    width: 100% !important;
    min-height: 62px !important;
    padding: 13px 16px !important;
  }

  .shopify-bottom-cta__buttons a:first-child strong {
    font-size: 20px !important;
  }
}


/* 2026-06-11 関連サービス見出し・本文の整列統一 */
.lp-related-links {
  text-align: center !important;
  background: #f3f8fc !important;
  border-top: 1px solid #e0edf7 !important;
  border-bottom: 4px solid #004b93 !important;
  padding: 72px 18px 76px !important;
  box-sizing: border-box !important;
}

.lp-related-links .lp-related-inner,
.lp-related-links .related-inner,
.lp-related-links .inner,
.lp-related-links .wide,
.lp-related-links .container {
  width: min(1120px, 100%) !important;
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

.lp-related-links .sec-en,
.lp-related-links .lp-sec-en,
.lp-related-links .related-en,
.lp-related-links [class*="sec-en"] {
  display: block !important;
  width: 100% !important;
  margin: 0 auto 16px !important;
  color: #004b93 !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .26em !important;
  text-align: center !important;
}

.lp-related-links h2,
.lp-related-links .lp-related-title,
.lp-related-links .related-title {
  display: block !important;
  width: 100% !important;
  margin: 0 auto 22px !important;
  padding: 0 !important;
  color: #111111 !important;
  font-size: clamp(32px, 3.2vw, 46px) !important;
  line-height: 1.32 !important;
  font-weight: 900 !important;
  letter-spacing: -0.045em !important;
  text-align: center !important;
  word-break: keep-all !important;
}

.lp-related-links h2::after,
.lp-related-links .lp-related-title::after,
.lp-related-links .related-title::after {
  content: "" !important;
  display: block !important;
  width: 92px !important;
  height: 4px !important;
  margin: 20px auto 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #004b93, #2f8fe8) !important;
}

.lp-related-links p,
.lp-related-links .lp-related-lead,
.lp-related-links .related-lead {
  display: block !important;
  width: min(760px, 100%) !important;
  max-width: 760px !important;
  margin: 0 auto 34px !important;
  color: #222222 !important;
  font-size: 16px !important;
  line-height: 2 !important;
  font-weight: 800 !important;
  letter-spacing: .01em !important;
  text-align: center !important;
}

.lp-related-links .lp-related-grid,
.lp-related-links .related-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  width: 100% !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
  text-align: left !important;
}

.lp-related-links a,
.lp-related-links .lp-related-card,
.lp-related-links .related-card {
  box-sizing: border-box !important;
}

@media (max-width: 980px) {
  .lp-related-links {
    padding: 56px 18px 60px !important;
  }

  .lp-related-links .lp-related-grid,
  .lp-related-links .related-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .lp-related-links {
    padding: 48px 18px 52px !important;
    text-align: center !important;
  }

  .lp-related-links h2,
  .lp-related-links .lp-related-title,
  .lp-related-links .related-title {
    font-size: clamp(28px, 8vw, 38px) !important;
    line-height: 1.42 !important;
  }

  .lp-related-links p,
  .lp-related-links .lp-related-lead,
  .lp-related-links .related-lead {
    width: 100% !important;
    margin-bottom: 28px !important;
    font-size: 15px !important;
    line-height: 1.9 !important;
    text-align: center !important;
  }

  .lp-related-links .lp-related-grid,
  .lp-related-links .related-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
}


/* 2026-06-11 スマホ全体レイアウト最終修正 */
@media (max-width: 640px) {
  html,
  body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body {
    min-width: 0 !important;
  }

  img,
  video,
  canvas,
  svg {
    max-width: 100% !important;
    height: auto !important;
  }

  #wrapper,
  #contents,
  .shopify-page,
  .shopify-hero,
  .shopify-feature,
  .shopify-service,
  .shopify-prepare,
  .shopify-types,
  .shopify-option,
  .shopify-items,
  .shopify-trouble,
  .shopify-flow,
  .shopify-detail,
  .shopify-case,
  .shopify-check,
  .shopify-rcabinet,
  .shopify-seo-support,
  .shopify-faq,
  .shopify-bottom-cta,
  .lp-related-links,
  .site-footer-menu-renew {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  #contents {
    padding-top: 13.33333vw !important;
  }

  .shopify-inner,
  .shopify-wide,
  .shopify-hero__inner {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  .shopify-hero {
    padding-top: 34px !important;
    padding-bottom: 48px !important;
  }

  .shopify-hero__inner,
  .shopify-two,
  .shopify-service-layout,
  .shopify-feature__grid,
  .shopify-prepare__grid,
  .shopify-type__grid,
  .shopify-option__grid,
  .shopify-items__grid,
  .shopify-trouble__grid,
  .shopify-flow__grid,
  .shopify-detail__grid,
  .lp-related-grid,
  .lp-related-links .lp-related-grid,
  .lp-related-links .related-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .shopify-hero__text,
  .shopify-hero__visual,
  .shopify-service__box,
  .shopify-visual-card,
  .shopify-dashboard,
  .shopify-prepare__card,
  .shopify-type__grid article,
  .shopify-option__grid > div,
  .shopify-items__grid > div,
  .shopify-trouble__grid > div,
  .shopify-flow__grid > div,
  .shopify-detail__grid > div,
  .lp-related-card,
  .lp-related-links a {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  /* ファーストビュー見出し */
  .shopify-hero-title,
  .shopify-hero h2 {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    gap: 0 .12em !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 18px 0 18px !important;
    color: #111111 !important;
    font-size: clamp(36px, 10vw, 50px) !important;
    line-height: 1.24 !important;
    letter-spacing: -0.055em !important;
    font-weight: 900 !important;
    white-space: normal !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    transform: none !important;
  }

  .shopify-hero-title .hero-title-brand,
  .shopify-hero-title .hero-title-accent {
    display: inline-block !important;
    white-space: nowrap !important;
  }

  .shopify-hero-title .hero-title-accent {
    color: #008060 !important;
  }

  .shopify-label {
    max-width: 100% !important;
    white-space: normal !important;
    line-height: 1.55 !important;
    font-size: 13px !important;
    padding: 9px 14px !important;
  }

  .shopify-hero__lead {
    width: 100% !important;
    max-width: 100% !important;
    font-size: 15.5px !important;
    line-height: 2 !important;
    letter-spacing: .01em !important;
    box-sizing: border-box !important;
  }

  .shopify-hero__tags {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 22px !important;
    box-sizing: border-box !important;
  }

  .shopify-hero__tags li {
    width: 100% !important;
    min-height: 54px !important;
    padding: 14px 18px !important;
    box-sizing: border-box !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
  }

  .shopify-price {
    width: 100% !important;
    max-width: 100% !important;
    margin: 28px 0 18px !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  .shopify-price strong {
    font-size: clamp(78px, 24vw, 118px) !important;
    line-height: .9 !important;
  }

  .shopify-cta {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .shopify-cta a,
  .shopify-btn {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 58px !important;
    box-sizing: border-box !important;
  }

  /* 登録チェックの右側ビジュアルをスマホ用に自然なカードへ */
  .shopify-hero__visual {
    margin-top: 24px !important;
  }

  .shopify-visual-card,
  .shopify-dashboard {
    margin: 0 auto !important;
    border-radius: 18px !important;
    padding: 16px !important;
    overflow: hidden !important;
  }

  .shopify-visual-card__content,
  .shopify-dashboard__body,
  .shopify-dashboard__screen {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: auto !important;
    padding: 16px !important;
    box-sizing: border-box !important;
  }

  .shopify-visual-card__side {
    order: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: auto !important;
    padding: 16px !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  .shopify-visual-card__main {
    order: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 12px !important;
  }

  .shopify-visual-card__main div {
    width: 100% !important;
    min-height: 52px !important;
    padding: 12px 16px !important;
    grid-template-columns: 1fr auto !important;
    gap: 10px !important;
    box-sizing: border-box !important;
  }

  .shopify-visual-card__main em,
  .shopify-visual-card__main strong {
    font-size: 14px !important;
    line-height: 1.4 !important;
  }

  .shopify-visual-card__side p {
    width: 100% !important;
    min-height: 36px !important;
    justify-content: center !important;
    margin-bottom: 8px !important;
  }

  .shopify-mini-card {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 14px auto 0 !important;
    padding: 18px !important;
    border-radius: 16px !important;
    text-align: center !important;
    box-sizing: border-box !important;
    font-size: 20px !important;
    line-height: 1.45 !important;
  }

  /* セクション見出し・装飾ラインのズレ修正 */
  .shopify-sec-en,
  .shopify-detail .shopify-sec-en,
  .shopify-check .shopify-sec-en,
  .shopify-seo-support .shopify-sec-en,
  .shopify-rcabinet .shopify-sec-en {
    display: block !important;
    width: 100% !important;
    margin: 0 auto 12px !important;
    text-align: center !important;
    letter-spacing: .22em !important;
  }

  .shopify-sec-title,
  .shopify-detail .shopify-sec-title,
  .shopify-check .shopify-sec-title,
  .shopify-seo-support .shopify-sec-title,
  .shopify-rcabinet .shopify-sec-title {
    display: block !important;
    width: 100% !important;
    margin: 0 auto 20px !important;
    padding: 0 0 18px !important;
    color: #111111 !important;
    font-size: clamp(30px, 8.8vw, 42px) !important;
    line-height: 1.4 !important;
    letter-spacing: -0.045em !important;
    text-align: center !important;
    word-break: keep-all !important;
    overflow-wrap: anywhere !important;
    position: relative !important;
  }

  .shopify-sec-title::after,
  .shopify-detail .shopify-sec-title::after,
  .shopify-check .shopify-sec-title::after,
  .shopify-seo-support .shopify-sec-title::after,
  .shopify-rcabinet .shopify-sec-title::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 50% !important;
    bottom: 0 !important;
    width: 84px !important;
    height: 4px !important;
    border-radius: 999px !important;
    background: #008060 !important;
    transform: translateX(-50%) !important;
    margin: 0 !important;
  }

  .shopify-center-text,
  .shopify-check p,
  .shopify-seo-support p,
  .shopify-rcabinet p {
    max-width: 100% !important;
    font-size: 15.5px !important;
    line-height: 2 !important;
    letter-spacing: .01em !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }

  .shopify-service__box,
  .shopify-check .shopify-service__box,
  .shopify-seo-support .shopify-service__box {
    margin-top: 20px !important;
    padding: 22px 18px !important;
    border-radius: 18px !important;
    overflow: hidden !important;
  }

  .shopify-service__box h3 {
    font-size: 22px !important;
    line-height: 1.45 !important;
    margin: 0 0 18px !important;
  }

  .shopify-service__box li {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
    padding: 12px 14px !important;
  }

  .shopify-detail__grid {
    margin-top: 24px !important;
  }

  .shopify-detail__grid > div,
  .shopify-items__grid > div,
  .shopify-flow__grid > div,
  .shopify-feature__item {
    padding: 22px 18px !important;
    border-radius: 16px !important;
  }

  .shopify-detail__grid h3,
  .shopify-items__grid span {
    font-size: 19px !important;
    line-height: 1.45 !important;
  }

  .shopify-detail__grid p,
  .shopify-items__grid p,
  .shopify-flow__grid p,
  .shopify-feature__item p {
    font-size: 15px !important;
    line-height: 1.9 !important;
  }

  /* 関連サービスもスマホで中央統一 */
  .lp-related-links {
    text-align: center !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .lp-related-links h2,
  .lp-related-links .lp-related-title,
  .lp-related-links p,
  .lp-related-links .lp-related-lead {
    text-align: center !important;
  }
}

@media (max-width: 390px) {
  .shopify-inner,
  .shopify-wide,
  .shopify-hero__inner {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .shopify-hero-title,
  .shopify-hero h2 {
    font-size: clamp(31px, 8.8vw, 40px) !important;
  }

  .shopify-sec-title,
  .shopify-detail .shopify-sec-title,
  .shopify-check .shopify-sec-title,
  .shopify-seo-support .shopify-sec-title,
  .shopify-rcabinet .shopify-sec-title {
    font-size: clamp(28px, 8vw, 36px) !important;
  }
}


/* 2026-06-11 スマホ金額表示の崩れ修正 */
@media (max-width: 640px) {
  .shopify-price {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 26px auto 18px !important;
    padding: 0 !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    box-sizing: border-box !important;
  }

  .shopify-price span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
    border-radius: 999px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #008060 !important;
    color: #ffffff !important;
    font-size: 18px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  .shopify-price strong {
    display: inline-block !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #008060 !important;
    font-size: clamp(84px, 23vw, 112px) !important;
    line-height: .78 !important;
    font-weight: 900 !important;
    letter-spacing: -0.055em !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    text-align: center !important;
  }

  .shopify-price em {
    display: inline-block !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    color: #008060 !important;
    font-size: clamp(34px, 9vw, 44px) !important;
    line-height: 1 !important;
    font-style: normal !important;
    font-weight: 900 !important;
    letter-spacing: -0.04em !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    text-align: left !important;
  }

  .shopify-price br {
    display: none !important;
  }
}

@media (max-width: 390px) {
  .shopify-price {
    gap: 8px !important;
  }

  .shopify-price span {
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    min-height: 62px !important;
    font-size: 16px !important;
  }

  .shopify-price strong {
    font-size: clamp(70px, 21vw, 92px) !important;
  }

  .shopify-price em {
    font-size: clamp(28px, 8vw, 36px) !important;
    margin-bottom: 8px !important;
  }
}


/* 2026-06-11 iPhone Safari ハンバーガーメニュー下部スクロール修正 */
@media (max-width: 980px) {
  body.lp-sp-menu-open {
    overflow: hidden !important;
    position: fixed !important;
    width: 100% !important;
    left: 0 !important;
    right: 0 !important;
  }

  #header .giftHamburger {
    position: fixed !important;
    left: 0 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100svh !important;
    height: 100dvh !important;
    height: calc(var(--lp-vh, 1vh) * 100) !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
    box-sizing: border-box !important;
  }

  #header .giftHamburger.open {
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  #header .giftHamburger .hamburger_wrap {
    min-height: 100vh !important;
    min-height: 100svh !important;
    min-height: 100dvh !important;
    min-height: calc(var(--lp-vh, 1vh) * 100) !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    box-sizing: border-box !important;
    padding-bottom: calc(140px + env(safe-area-inset-bottom)) !important;
  }

  #header .giftHamburger .external_link_wrap {
    margin-bottom: calc(72px + env(safe-area-inset-bottom)) !important;
  }
}

@media (max-width: 640px) {
  #header .giftHamburger {
    padding-bottom: 0 !important;
  }

  #header .giftHamburger .hamburger_wrap {
    padding-bottom: calc(150px + env(safe-area-inset-bottom)) !important;
  }

  #header .giftHamburger .external_link_wrap {
    padding-bottom: 0 !important;
    margin-bottom: calc(88px + env(safe-area-inset-bottom)) !important;
  }
}


/* 2026-06-11 スマホ上部を共通No.1ビジュアルへ差し替え */
@media (max-width: 640px) {
  /* スマホでは各モール別の大きなFVを出さず、共通No.1だけに統一 */
  .rakuten-hero,
  .amazon-hero,
  .yahoo-hero,
  .shopify-hero,
  .makeshop-hero,
  .colormeshop-hero,
  .base-hero {
    display: none !important;
  }

  .rakuten-breadcrumb,
  .amazon-breadcrumb,
  .yahoo-breadcrumb,
  .shopify-breadcrumb,
  .makeshop-breadcrumb,
  .colormeshop-breadcrumb,
  .base-breadcrumb {
    display: none !important;
  }

  /* 上部の3バナーもスマホでは重くなるため非表示 */
  .btn_topplan {
    display: none !important;
  }

  .lp-common-mainvisual,
  .lp-common-mainvisual__blank,
  .lp-clean-common-visual {
    display: none !important;
  }

  .lp-common-mainvisual-clean {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 13.33333vw 0 0 !important;
    padding: 26px 14px 28px !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    clear: both !important;
  }

  .lp-common-mainvisual-clean .submission_data {
    display: none !important;
  }

  .lp-common-mainvisual-clean .no1_area {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  .lp-common-mainvisual-clean .no1_area h4 {
    display: block !important;
    width: 100% !important;
    margin: 0 auto 6px !important;
    padding: 0 6px !important;
    color: #333333 !important;
    font-size: clamp(15px, 4.1vw, 18px) !important;
    line-height: 1.55 !important;
    font-weight: 600 !important;
    letter-spacing: .01em !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 {
    display: inline-flex !important;
    align-items: baseline !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 auto 10px !important;
    padding: 0 !important;
    color: #333333 !important;
    font-size: clamp(52px, 17vw, 82px) !important;
    line-height: .95 !important;
    font-weight: 900 !important;
    letter-spacing: -0.06em !important;
    text-align: center !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    text-shadow: 0 3px 0 rgba(0,0,0,.12) !important;
    box-sizing: border-box !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 span {
    display: inline-block !important;
    margin-right: .08em !important;
    color: #c89b00 !important;
    font-size: 1.36em !important;
    line-height: .82 !important;
    font-weight: 900 !important;
    letter-spacing: -0.075em !important;
    background: linear-gradient(180deg,#fff4a6 0%,#d9aa12 52%,#9b7600 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    filter: drop-shadow(0 4px 3px rgba(0,0,0,.24)) !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 img {
    position: absolute !important;
    left: 2px !important;
    top: 12px !important;
    width: clamp(76px, 23vw, 108px) !important;
    height: auto !important;
    transform: translate(-18%, -26%) rotate(-8deg) !important;
    z-index: 2 !important;
    pointer-events: none !important;
  }

  .lp-common-mainvisual-clean .no1_area p {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 10px auto 0 !important;
    padding: 0 4px !important;
    color: #333333 !important;
    font-size: clamp(16px, 4.6vw, 20px) !important;
    line-height: 1.75 !important;
    font-weight: 700 !important;
    letter-spacing: .01em !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  .lp-common-mainvisual-clean .no1_area p span,
  .lp-common-mainvisual-clean .no1_area .u-fade-type-marker {
    display: inline !important;
    background: linear-gradient(transparent 62%, rgba(255,195,170,.65) 0) !important;
    box-decoration-break: clone !important;
    -webkit-box-decoration-break: clone !important;
    padding: 0 .08em !important;
  }

  .lp-common-mainvisual-clean #star01,
  .lp-common-mainvisual-clean #star02 {
    display: block !important;
    position: absolute !important;
    width: clamp(18px, 5vw, 28px) !important;
    height: auto !important;
    z-index: 3 !important;
    pointer-events: none !important;
  }

  .lp-common-mainvisual-clean #star01 {
    right: 7% !important;
    top: 45% !important;
  }

  .lp-common-mainvisual-clean #star02 {
    right: 4% !important;
    bottom: 18% !important;
  }

  /* 共通No.1の下から通常コンテンツへ自然につなぐ */
  #contents {
    padding-top: 0 !important;
  }

  .rakuten-page,
  .amazon-page,
  .yahoo-page,
  .shopify-page,
  .makeshop-page,
  .colormeshop-page,
  .base-page {
    padding-top: 0 !important;
  }

  main.rakuten-page,
  main.amazon-page,
  main.yahoo-page,
  main.shopify-page,
  main.makeshop-page,
  main.colormeshop-page,
  main.base-page {
    margin-top: 0 !important;
  }
}

@media (max-width: 390px) {
  .lp-common-mainvisual-clean {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 {
    font-size: clamp(46px, 15.8vw, 68px) !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 img {
    width: clamp(66px, 20vw, 92px) !important;
    left: 0 !important;
  }

  .lp-common-mainvisual-clean .no1_area p {
    font-size: clamp(15px, 4.2vw, 18px) !important;
  }
}


/* 2026-06-11 スマホNo.1テキスト調整・下部FV復元 */
@media (max-width: 640px) {
  /* No.1共通ビジュアル：途中で変に改行しないよう調整 */
  .lp-common-mainvisual-clean {
    padding-top: 24px !important;
    padding-bottom: 26px !important;
  }

  .lp-common-mainvisual-clean .no1_area h4 {
    white-space: nowrap !important;
    font-size: clamp(12px, 3.45vw, 15px) !important;
    line-height: 1.45 !important;
    letter-spacing: -0.03em !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-bottom: 4px !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 {
    font-size: clamp(46px, 15.2vw, 72px) !important;
    line-height: .92 !important;
    margin-bottom: 8px !important;
    max-width: 100% !important;
    transform: scaleX(.96) !important;
    transform-origin: center center !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 span {
    font-size: 1.28em !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 img {
    width: clamp(68px, 20vw, 96px) !important;
    left: 2px !important;
    top: 12px !important;
    transform: translate(-14%, -24%) rotate(-8deg) !important;
  }

  .lp-common-mainvisual-clean .no1_area p {
    white-space: nowrap !important;
    font-size: clamp(12px, 3.6vw, 15px) !important;
    line-height: 1.75 !important;
    letter-spacing: -0.02em !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-top: 8px !important;
  }

  .lp-common-mainvisual-clean .no1_area p br {
    display: block !important;
  }

  .lp-common-mainvisual-clean #star01 {
    right: 5% !important;
    top: 54% !important;
  }

  .lp-common-mainvisual-clean #star02 {
    right: 2% !important;
    bottom: 15% !important;
  }

  /* 前回消してしまった各ページの上部FVを、No.1の下に復元 */
  .shopify-hero {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 34px 0 46px !important;
    background: #eefaf6 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .shopify-hero__inner {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  .shopify-hero__text,
  .shopify-hero__visual {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .shopify-label {
    display: inline-flex !important;
    max-width: 100% !important;
    white-space: normal !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    padding: 9px 14px !important;
    box-sizing: border-box !important;
  }

  .shopify-hero-title,
  .shopify-hero h2 {
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 18px 0 18px !important;
    color: #111111 !important;
    font-size: clamp(32px, 8.6vw, 44px) !important;
    line-height: 1.32 !important;
    letter-spacing: -0.055em !important;
    font-weight: 900 !important;
    white-space: normal !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  .shopify-hero-title .hero-title-brand,
  .shopify-hero-title .hero-title-accent {
    display: inline-block !important;
    white-space: nowrap !important;
  }

  .shopify-hero-title .hero-title-accent {
    color: #008060 !important;
  }

  .shopify-hero__lead {
    width: 100% !important;
    max-width: 100% !important;
    font-size: 15.5px !important;
    line-height: 2 !important;
    letter-spacing: .01em !important;
    box-sizing: border-box !important;
  }

  .shopify-hero__tags {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 20px !important;
    box-sizing: border-box !important;
  }

  .shopify-hero__tags li {
    width: 100% !important;
    min-height: 54px !important;
    padding: 14px 18px !important;
    box-sizing: border-box !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
  }

  .shopify-price {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 26px auto 18px !important;
    padding: 0 !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
  }

  .shopify-price span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
    border-radius: 999px !important;
    margin: 0 !important;
    background: #008060 !important;
    color: #ffffff !important;
    font-size: 18px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    text-align: center !important;
  }

  .shopify-price strong {
    display: inline-block !important;
    flex: 0 0 auto !important;
    color: #008060 !important;
    font-size: clamp(84px, 23vw, 112px) !important;
    line-height: .78 !important;
    font-weight: 900 !important;
    letter-spacing: -0.055em !important;
    white-space: nowrap !important;
  }

  .shopify-price em {
    display: inline-block !important;
    flex: 0 0 auto !important;
    margin: 0 0 10px 0 !important;
    color: #008060 !important;
    font-size: clamp(34px, 9vw, 44px) !important;
    line-height: 1 !important;
    font-style: normal !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
  }

  .shopify-cta {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .shopify-cta a,
  .shopify-btn {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 58px !important;
    box-sizing: border-box !important;
  }

  .shopify-hero__visual {
    margin-top: 10px !important;
  }

  .shopify-visual-card,
  .shopify-dashboard {
    display: block !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 16px !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .shopify-visual-card__content,
  .shopify-dashboard__body,
  .shopify-dashboard__screen {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: auto !important;
    padding: 16px !important;
    box-sizing: border-box !important;
  }

  .shopify-visual-card__main {
    order: 1 !important;
    width: 100% !important;
    gap: 12px !important;
  }

  .shopify-visual-card__side {
    order: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: auto !important;
    padding: 16px !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  .shopify-visual-card__main div {
    width: 100% !important;
    min-height: 52px !important;
    padding: 12px 16px !important;
    grid-template-columns: 1fr auto !important;
    gap: 10px !important;
    box-sizing: border-box !important;
  }

  .shopify-visual-card__main em,
  .shopify-visual-card__main strong {
    font-size: 14px !important;
    line-height: 1.4 !important;
  }

  .shopify-mini-card {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 14px auto 0 !important;
    padding: 18px !important;
    border-radius: 16px !important;
    text-align: center !important;
    box-sizing: border-box !important;
    font-size: 20px !important;
    line-height: 1.45 !important;
  }
}

@media (max-width: 390px) {
  .lp-common-mainvisual-clean .no1_area h4 {
    font-size: 11.5px !important;
    transform: scaleX(.94) !important;
    transform-origin: center center !important;
  }

  .lp-common-mainvisual-clean .no1_area p {
    font-size: 12px !important;
    transform: scaleX(.94) !important;
    transform-origin: center center !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 {
    font-size: clamp(42px, 14vw, 64px) !important;
  }

  .shopify-hero-title,
  .shopify-hero h2 {
    font-size: clamp(29px, 8vw, 38px) !important;
  }

  .shopify-hero__inner {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}


/* 2026-06-11 フッター端・コピーライト・スマホNo.1最終調整 */

/* PC/共通：関連サービスとフッターの端の段差をなくす */
.lp-related-links {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  box-sizing: border-box !important;
}

.site-footer-menu-renew {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  box-sizing: border-box !important;
  border-radius: 0 !important;
  overflow: hidden !important;
}

/* PC/スマホ共通：コピーライトの中途半端な背景を消す */
.copy_area,
.copy_area .copy,
p.copy {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  box-sizing: border-box !important;
}

.copy_area {
  padding: 18px 16px !important;
  text-align: center !important;
}

.copy_area .copy,
p.copy {
  display: block !important;
  padding: 0 !important;
  color: #333333 !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

/* スマホ：No.1宣言を画面幅いっぱいに大きく見せる */
@media (max-width: 640px) {
  .lp-common-mainvisual-clean {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 13.33333vw !important;
    padding: 22px 6px 26px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .lp-common-mainvisual-clean .no1_area {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 auto !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  .lp-common-mainvisual-clean .no1_area h4 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 2px !important;
    padding: 0 2px !important;
    white-space: nowrap !important;
    color: #333333 !important;
    font-size: clamp(12px, 3.35vw, 15px) !important;
    line-height: 1.45 !important;
    font-weight: 700 !important;
    letter-spacing: -0.035em !important;
    text-align: center !important;
    transform: scaleX(.96) !important;
    transform-origin: center center !important;
    box-sizing: border-box !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 {
    position: relative !important;
    display: flex !important;
    align-items: baseline !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 8px !important;
    padding: 0 !important;
    color: #333333 !important;
    font-size: clamp(66px, 20.5vw, 96px) !important;
    line-height: .9 !important;
    font-weight: 900 !important;
    letter-spacing: -0.075em !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    text-align: center !important;
    text-shadow: 0 3px 0 rgba(0,0,0,.12) !important;
    transform: scaleX(.98) !important;
    transform-origin: center center !important;
    box-sizing: border-box !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 span {
    display: inline-block !important;
    margin-right: .06em !important;
    color: #c89b00 !important;
    font-size: 1.32em !important;
    line-height: .78 !important;
    font-weight: 900 !important;
    letter-spacing: -0.085em !important;
    background: linear-gradient(180deg,#fff6b8 0%,#dcb116 52%,#8f6d00 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    filter: drop-shadow(0 4px 3px rgba(0,0,0,.24)) !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 img {
    position: absolute !important;
    left: 2px !important;
    top: 4px !important;
    width: clamp(72px, 20vw, 98px) !important;
    height: auto !important;
    transform: translate(-4%, -18%) rotate(-8deg) !important;
    z-index: 3 !important;
    pointer-events: none !important;
  }

  .lp-common-mainvisual-clean .no1_area p {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 6px auto 0 !important;
    padding: 0 2px !important;
    color: #333333 !important;
    font-size: clamp(12px, 3.45vw, 15px) !important;
    line-height: 1.72 !important;
    font-weight: 800 !important;
    letter-spacing: -0.025em !important;
    text-align: center !important;
    white-space: nowrap !important;
    transform: scaleX(.96) !important;
    transform-origin: center center !important;
    box-sizing: border-box !important;
  }

  .lp-common-mainvisual-clean .no1_area p br {
    display: block !important;
  }

  .lp-common-mainvisual-clean .no1_area p span,
  .lp-common-mainvisual-clean .no1_area .u-fade-type-marker {
    display: inline !important;
    background: linear-gradient(transparent 62%, rgba(255,195,170,.65) 0) !important;
    box-decoration-break: clone !important;
    -webkit-box-decoration-break: clone !important;
    padding: 0 .05em !important;
  }

  .lp-common-mainvisual-clean #star01 {
    right: 5% !important;
    top: 52% !important;
    width: clamp(18px, 5vw, 26px) !important;
  }

  .lp-common-mainvisual-clean #star02 {
    right: 2% !important;
    bottom: 16% !important;
    width: clamp(18px, 5vw, 26px) !important;
  }

  .site-footer-menu-renew {
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }

  .copy_area {
    background: transparent !important;
    padding: 16px 12px calc(20px + env(safe-area-inset-bottom)) !important;
  }
}

@media (max-width: 390px) {
  .lp-common-mainvisual-clean {
    padding-left: 4px !important;
    padding-right: 4px !important;
  }

  .lp-common-mainvisual-clean .no1_area h4 {
    font-size: 11px !important;
    transform: scaleX(.92) !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 {
    font-size: clamp(58px, 18.8vw, 82px) !important;
    transform: scaleX(.96) !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 img {
    width: clamp(62px, 18vw, 84px) !important;
    left: 0 !important;
  }

  .lp-common-mainvisual-clean .no1_area p {
    font-size: 11.5px !important;
    transform: scaleX(.92) !important;
  }
}


/* 2026-06-11 ハンバーガーメニュー押しやすさ改善 */
@media (max-width: 980px) {
  #header .giftHamburger .hamburger_wrap {
    background: #f5f8fb !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 auto 34px !important;
    box-sizing: border-box !important;
    border-bottom: 0 !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .ttl {
    background: #e9eef4 !important;
    color: #111111 !important;
    font-weight: 700 !important;
    letter-spacing: .16em !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list {
    width: 100% !important;
    max-width: 100% !important;
    padding: 18px !important;
    box-sizing: border-box !important;
    background: #f5f8fb !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    border: 0 !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a,
  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a:link,
  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a:visited {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 62px !important;
    padding: 16px 60px 16px 20px !important;
    background: #ffffff !important;
    border: 1px solid #d9e6f2 !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 22px rgba(0, 75, 147, .08) !important;
    color: #1f2a36 !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
    font-weight: 800 !important;
    letter-spacing: .01em !important;
    text-decoration: none !important;
    text-align: left !important;
    box-sizing: border-box !important;
    touch-action: manipulation !important;
    -webkit-tap-highlight-color: rgba(0, 75, 147, .16) !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a::after {
    content: "" !important;
    position: absolute !important;
    right: 18px !important;
    top: 50% !important;
    width: 34px !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #004b93 !important;
    transform: translateY(-50%) !important;
    box-shadow: 0 8px 18px rgba(0, 75, 147, .18) !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a::before {
    content: "›" !important;
    position: absolute !important;
    right: 29px !important;
    top: 50% !important;
    z-index: 2 !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #ffffff !important;
    background: transparent !important;
    border: 0 !important;
    font-size: 28px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    transform: translateY(-54%) !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a:active {
    transform: scale(.985) !important;
    background: #eef6ff !important;
  }

  #header .giftHamburger .hamburger_wrap .external_link_wrap {
    width: min(100% - 36px, 640px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    gap: 14px !important;
  }

  #header .giftHamburger .hamburger_wrap .external_link_wrap li,
  #header .giftHamburger .hamburger_wrap .external_link_wrap li a {
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 640px) {
  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list {
    padding: 16px 14px !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul {
    gap: 9px !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a,
  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a:link,
  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a:visited {
    min-height: 60px !important;
    padding: 15px 56px 15px 16px !important;
    border-radius: 13px !important;
    font-size: 17px !important;
    line-height: 1.42 !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a::after {
    right: 14px !important;
    width: 32px !important;
    height: 32px !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a::before {
    right: 24px !important;
    font-size: 26px !important;
  }

  #header .giftHamburger .hamburger_wrap .external_link_wrap {
    width: calc(100% - 28px) !important;
  }
}

@media (max-width: 390px) {
  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a,
  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a:link,
  #header .giftHamburger .hamburger_wrap .nav_wrap .dl_wrap .list ul li a:visited {
    min-height: 58px !important;
    font-size: 16px !important;
    padding-left: 14px !important;
    padding-right: 52px !important;
  }
}


/* 2026-06-11 スマホNo.1宣言 はみ出し・巨大化修正 */
@media (max-width: 640px) {
  .lp-common-mainvisual-clean {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 13.33333vw !important;
    padding: 22px 12px 26px !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .lp-common-mainvisual-clean .no1_area {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .lp-common-mainvisual-clean .no1_area h4 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 6px !important;
    padding: 0 !important;
    color: #333333 !important;
    font-size: clamp(13px, 3.5vw, 16px) !important;
    line-height: 1.55 !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em !important;
    text-align: center !important;
    white-space: normal !important;
    word-break: keep-all !important;
    overflow-wrap: anywhere !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 {
    position: relative !important;
    display: inline-flex !important;
    align-items: baseline !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 auto 10px !important;
    padding: 0 2px !important;
    color: #333333 !important;
    font-size: clamp(38px, 12.8vw, 54px) !important;
    line-height: .95 !important;
    font-weight: 900 !important;
    letter-spacing: -0.055em !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    text-align: center !important;
    text-shadow: 0 3px 0 rgba(0,0,0,.12) !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 span {
    display: inline-block !important;
    margin-right: .05em !important;
    color: #c89b00 !important;
    font-size: 1.18em !important;
    line-height: .9 !important;
    font-weight: 900 !important;
    letter-spacing: -0.065em !important;
    background: linear-gradient(180deg,#fff6b8 0%,#dcb116 52%,#8f6d00 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    filter: drop-shadow(0 4px 3px rgba(0,0,0,.22)) !important;
    white-space: nowrap !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 img {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: clamp(58px, 16vw, 78px) !important;
    height: auto !important;
    transform: translate(-4%, -18%) rotate(-8deg) !important;
    z-index: 3 !important;
    pointer-events: none !important;
  }

  .lp-common-mainvisual-clean .no1_area p {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 8px auto 0 !important;
    padding: 0 !important;
    color: #333333 !important;
    font-size: clamp(13px, 3.45vw, 15px) !important;
    line-height: 1.75 !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    text-align: center !important;
    white-space: normal !important;
    word-break: keep-all !important;
    overflow-wrap: anywhere !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  .lp-common-mainvisual-clean .no1_area p br {
    display: block !important;
  }

  .lp-common-mainvisual-clean .no1_area p span,
  .lp-common-mainvisual-clean .no1_area .u-fade-type-marker {
    display: inline !important;
    background: linear-gradient(transparent 62%, rgba(255,195,170,.65) 0) !important;
    box-decoration-break: clone !important;
    -webkit-box-decoration-break: clone !important;
    padding: 0 .04em !important;
  }

  .lp-common-mainvisual-clean #star01 {
    right: 4% !important;
    top: 50% !important;
    width: clamp(17px, 4.8vw, 24px) !important;
  }

  .lp-common-mainvisual-clean #star02 {
    right: 3% !important;
    bottom: 14% !important;
    width: clamp(17px, 4.8vw, 24px) !important;
  }
}

@media (max-width: 390px) {
  .lp-common-mainvisual-clean {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .lp-common-mainvisual-clean .no1_area h4 {
    font-size: 12px !important;
    line-height: 1.5 !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 {
    font-size: clamp(34px, 11.4vw, 46px) !important;
    letter-spacing: -0.06em !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 img {
    width: clamp(50px, 14.5vw, 66px) !important;
  }

  .lp-common-mainvisual-clean .no1_area p {
    font-size: 12px !important;
    line-height: 1.7 !important;
  }
}


/* 2026-06-11 スマホNo.1宣言のみ拡大 */
@media (max-width: 640px) {
  .lp-common-mainvisual-clean .no1_area h4 {
    /* 上の文章は現状維持 */
  }

  .lp-common-mainvisual-clean .no1_area h5 {
    display: inline-flex !important;
    align-items: baseline !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 10px !important;
    padding: 0 !important;
    font-size: clamp(52px, 16.2vw, 72px) !important;
    line-height: .92 !important;
    letter-spacing: -0.065em !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    text-align: center !important;
    transform: scaleX(.96) !important;
    transform-origin: center center !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 span {
    font-size: 1.26em !important;
    line-height: .82 !important;
    letter-spacing: -0.085em !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 img {
    width: clamp(66px, 18vw, 92px) !important;
    left: 2px !important;
    top: 2px !important;
    transform: translate(-4%, -18%) rotate(-8deg) !important;
  }

  .lp-common-mainvisual-clean .no1_area p {
    /* 下の文章は現状維持 */
  }
}

@media (max-width: 390px) {
  .lp-common-mainvisual-clean .no1_area h5 {
    font-size: clamp(46px, 14.6vw, 62px) !important;
    transform: scaleX(.94) !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 span {
    font-size: 1.24em !important;
  }

  .lp-common-mainvisual-clean .no1_area h5 img {
    width: clamp(58px, 16vw, 78px) !important;
  }
}


/* 2026-06-11 最小修正：スマホスクロール停止解除 */
@media (max-width: 980px) {
  html,
  body {
    overflow-y: auto !important;
    height: auto !important;
    min-height: 100% !important;
    -webkit-overflow-scrolling: touch !important;
  }

  body.lp-sp-menu-open {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    min-height: 100% !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }

  .lp-common-mainvisual-clean,
  .lp-common-mainvisual-clean .no1_area {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    height: auto !important;
    min-height: 0 !important;
  }
}
