/* =========================================
  Bee Truck LP Stylesheet (星画像 + Font Awesome)
  Last updated: 2025-10-08 (JST)
========================================= */
:root {
    --c-head: #2C3E50;
    --c-accent: #FF6B35;
    --c-text: #333333;
    --c-muted: #6B7280;
    --c-ok: #27AE60;
    --ring: 3px solid var(--c-accent);
    --fz-base: 16px;
    --fz-h2: 32px;
    --fz-h3: 24px;
    --fz-cta: 32px;
    --fz-cta-float: 28px;
    --radius: 12px;
    --shadow: 0 6px 20px rgba(0, 0, 0, .08);
}

html,body{
  font-family:'Noto Sans JP','Hiragino Sans','Yu Gothic',Meiryo,sans-serif;
  color:var(--c-text);
  font-size:var(--fz-base);
  line-height:1.85;
  background:#fff;
  -webkit-text-size-adjust:100%;
}

img,picture,video,canvas,svg{max-width:100%;height:auto;display:block}
a{color:var(--c-accent);text-decoration:none}
a:hover{text-decoration:underline}
*:focus-visible{outline:2px dashed var(--c-accent);outline-offset:3px}

.cntWrap{max-width:1100px;margin:0 auto;padding:24px 16px}
section{scroll-margin-top:80px}



/*lp要素
============================*/
body{color:#272727}#headerWrap{width:100%;text-align:start;background:none;padding:0}#header{background:none;padding:0}.header_mgn01{display:none}#headerCategoryList{display:none}#headerStoreWrap{padding:0;display:flex;justify-content:space-between;padding:10px}#headerBtm{width:100%;background:none;padding:0}#gNaviWrap{margin:0;height:auto!important}#gNaviIn{width:100%;padding:0}#gNavi ul{border-bottom:none;height:auto;position:static}#gNavi li{width:auto;position:static;padding-bottom:0;height:auto}#gNavi li a{background:none;padding:0;width:auto;height:auto;color:unset}#contents{width:100%}.sectionWrap{background:none;padding:0;z-index:auto}.section{background:none;padding:0}.sectionBtm{background:none;padding:0;margin:0}.h2WrapBtm{background:none;margin:0;padding:0}.h2WrapTop{padding:0;background:none}.h2WrapMid{padding:0;background:none}#wrapper{padding:0;background:none}#footerBtm{background:none;padding-bottom:60px}#g01 #gNavi li#gNav01 a,#g02 #gNavi li#gNav02 a,#g03 #gNavi li#gNav03 a,#g04 #gNavi li#gNav04 a,#g05 #gNavi li#gNav05 a,#g06 #gNavi li#gNav06 a,#g07 #gNavi li#gNav07 a{color:unset}#headerStore{width:fit-content;float:none}#headerStore .name{font-size:100%}#headerIconList{display:none}#headerStoreContact{width:fit-content;float:none}#headerStoreContact>p>img{display:none}#headerStoreDialWrap{background:none;width:100%}#headerStoreDial{background:none;padding:0}#headerStoreDial .number{background:none;padding:0;font-size:100%}#g01 .h2WrapMid h2{text-align:center;margin:0 0 10px 0}.indexBasicInfoWrap01{width:1000px;margin:auto}.clearfix:after, #contents:after, .section:after, .sectionIn:after {display:none}
/*メインビジュアル
============================*/
/*背景*/
#mainimg {
  width: auto;
  margin: 0;
}
/*メイン画像*/
#mainimgIn {
	background-image: url(https://cms.locoplace.biz/storeimg/71/718836/20251005_2324371.png) !important;
  width: 1000px;
  height: 600px;
}
/*============================*/

#gNaviIn ul {
  background-color: #ff9a00;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 60px;
}
#gNavi li {
  width: 200px;
  height: 100%;
  line-height: 60px;
  border-right: solid 1px #fff;
}
#gNavi li:first-child {
  border-left: solid 1px #fff;
}
#gNavi li a {
  color: #fff;
}
#g01 #gNavi li#gNav01 a, #g02 #gNavi li#gNav02 a, #g03 #gNavi li#gNav03 a, #g04 #gNavi li#gNav04 a, #g05 #gNavi li#gNav05 a, #g06 #gNavi li#gNav06 a, #g07 #gNavi li#gNav07 a {
  color: #fff;
}
#contents {
  margin-top: 80px;
}
.indexCopy01 {
  font-size: 16px;
  margin: 0 auto 40px;
  width: 1000px;
}
.cntWrap {
  margin: auto;
  width: 1000px;
}
.cntTtl, .reasonTtl, .otherTtl, .faqTtl, .companyTtl {
    font-size: var(--fz-h2);
    font-weight: 700;
    color: var(--c-head);
    line-height: 1.4;
    margin: 40px 0 40px;
    text-align: center;
    background-color: #fbd329;
    font-weight: bold;
    position: relative;
    padding: 10px 0;
}

.cntTtl::after, .reasonTtl::after, .otherTtl::after, .companyTtl::after {
    content: '';
    position: absolute;
    background-color: #fbd329;
    width: 14px;
    height: 8px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
}
    
h3,.reasonListTtl{font-size:var(--fz-h3);font-weight:700;color:var(--c-head);margin:0 0 8px}

/* ヘッダー電話ボタン */
.lp-header .telLink{
  display:inline-flex;align-items:center;gap:.5rem;
  font-family:'Roboto','Lato',sans-serif;
  font-size:var(--fz-cta);font-weight:700;color:var(--c-accent);
  background:#fff;border:var(--ring);border-radius:var(--radius);
  padding:.6rem 1rem;box-shadow:var(--shadow)
}
.lp-header .fa-phone{color:var(--c-accent);margin-right:.5rem}

/* CTA 共通 */
.cta .contactFlexitem picture,
.cta .contactFlexitem img{width:100%}
.ctaMsg{font-size:18px;font-weight:700;color:#fff}

/* フローティングCTA */
.floating-cta{
  position:fixed;left:0;right:0;bottom:0;z-index:999;
  background:var(--c-accent);color:#fff;
  display:flex;align-items:center;justify-content:center;gap:1rem;
  padding:.75rem;box-shadow:0 -8px 24px rgba(0,0,0,.15)
}
.floating-cta .badge{
  display:inline-flex;align-items:center;gap:.4rem;
  font-size:15px;font-weight:700;background:#fff;color:var(--c-accent);
  border-radius:999px;padding:.2rem .6rem
}
.floating-cta .tel{
  font-family:'Roboto','Lato',sans-serif;font-size:var(--fz-cta-float);font-weight:700;color:#fff;
  border:2px solid #fff;border-radius:var(--radius);
  padding:.4rem .8rem;display:inline-flex;align-items:center
}
.floating-cta .sub{display:flex;gap:1rem;font-size:14px;align-items:center}
.floating-cta .fa-phone,.floating-cta .fa-truck,.floating-cta .fa-money-bill-wave{color:#fff}

/* 選ばれる理由（番号バッジ） */
.reasonList{list-style:none;margin:0;padding:0;display:grid;gap:20px}
.reasonListItem{background:#fff;border:1px solid #eee;border-radius:16px;padding:16px}
.reasonNo{
  display:inline-flex;align-items:center;justify-content:center;
  background:#fff;color:var(--c-accent);
  font-size:16px;font-weight:700;border:2px solid var(--c-accent);
  border-radius:999px;width:7rem;height:2rem;margin-right:.5rem;flex:0 0 auto
}

/* 買取実績 */
.flowList{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.flowListStep strong{font-weight:700}
.flowListTtl .txt-a{font-weight:700;margin-right:12px}
.flowListTtl [data-amount]{font-variant-numeric:tabular-nums}

/* お客様の声（星=画像、タグ=FA） */
.resultsList{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.resultName{font-weight:700;margin:0 0 6px}
.stars{display:inline-flex;gap:4px;align-items:center;margin:4px 0}
.stars img{width:18px;height:18px}
.tag{
  display:inline-flex;align-items:center;gap:.35rem;font-size:12px;font-weight:700;color:var(--c-ok);
  border:1px solid var(--c-ok);border-radius:999px;
  padding:.15rem .55rem;margin:.2rem .35rem .2rem 0;background:#fff
}
.tag .fa-check{color:var(--c-ok);margin-right:0}

/* ご依頼の流れ */
.stepList{counter-reset:step;list-style:none;margin:0;padding:0;display:grid;gap:16px}
.stepItem{border:1px solid #eee;border-radius:12px;padding:16px;background:#fff}
.stepItem h3{display:flex;align-items:center;margin:0 0 6px}

/* FAQ */
.faqItem{border:1px solid #e5e7eb;border-radius:12px;padding:12px;margin:10px 0;background:#fff}
.faqItem summary{cursor:pointer;font-weight:700;color:var(--c-head)}
.faqItem[open]{box-shadow:var(--shadow)}

/* 会社情報 */
.company table{width:100%;border-collapse:collapse;background:#fff}
.company th,.company td{border:1px solid #e5e7eb;padding:10px 12px;vertical-align:top}
.company th{width:28%;background:#f8fafc;text-align:left}

/* フッターCTA（ページ下部・任意で使う場合の見た目合わせ） */
.ftrBnrTel a,.ftrBnrTelSP a{
  display:inline-flex;align-items:center;justify-content:center;
  font-family:'Roboto','Lato',sans-serif;
  font-size:var(--fz-cta);font-weight:700;color:var(--c-accent);
  background:#fff;border:var(--ring);border-radius:var(--radius);
  padding:.5rem 1rem;box-shadow:var(--shadow)
}
.ftrBnrTelSP a{font-size:18px}

/* ユーティリティ */
.no-kw-bold{} /* 自動太字除外フック */
.hidden{display:none!important}
.muted{color:var(--c-muted)}
.center{text-align:center}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}

/* レスポンシブ */
@media (min-width:768px){
  .cntTtl,.reasonTtl,.otherTtl,.faqTtl,.companyTtl,.h2#worries-title{font-size:28px}
  .grid-2{grid-template-columns:repeat(2,1fr)}
  .grid-3{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:767px){
  .lp-header .telLink{font-size:24px}
  .ftrBnrTel a{font-size:26px}
  .floating-cta{flex-wrap:wrap;gap:.6rem;text-align:center}
}

/* 動作配慮 */
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* 印刷 */
@media print{
  .floating-cta{display:none!important}
  a{text-decoration:underline}
}
/* ===================================
   画像アイコン用スタイル (2025-10-08)
=================================== */
.icon-check,
.icon-phone,
.icon-money,
.icon-truck {
  width: 18px;
  height: 18px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
}
.floating-cta .badge .icon-phone {
  width: 14px;
  height: 14px;
  margin-right: 4px;
}
.floating-cta .sub img {
  width: 20px;
  height: 20px;
  margin-right: 6px;
}
#dlpoC_C > div > div.sectionIn {
    width: 1000px;
    margin: 0 auto;
}
h2#worries-title {
    text-align: center;
    background-color: #fbd329;
    font-size: 32px;
    font-weight: bold;
    position: relative;
    margin: 40px 0 40px 0;
    padding: 10px 0;
    line-height: 1.4;
}
h2#worries-title::after {
    content: '';
    position: absolute;
    background-color: #fbd329;
    width: 14px;
    height: 8px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
}
h3, .reasonListTtl {
    font-size: var(--fz-h3);
    color: var(--c-head);
    background-color: #c1dcff;
    padding: 10px 20px;
    font-weight: bold;
    margin: 0 0 20px 0;
    display: flex;
    align-items: center;
}
article.worry {
    margin-bottom: 20px;
}
.cta .contactFlexitem picture, .cta .contactFlexitem img {
    width: 800px;
    display: block;
    margin: 0 auto;
}
.reasonListItem {
    margin: 20px 0 0;
}
h2#record-title {
    text-align: center;
    font-size: 32px;
    font-weight: bold;
    margin: 40px 0 40px 0;
}
section.results {
    background-color: #f7f7f7;
    margin: 80px 0;
}
p.flowListStep {
    background-color: #2b69bc;
    padding: 10px 0;
    display: flex;
    gap: 20px;
    justify-content: center;
    align-items: center;
    position: relative;
    margin: 0 0 20px 0;
    color: #fff;
}
p.flowListStep::after {
    content: '';
    width: 9px;
    height: 10px;
    background-color: #2b69bc;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    position: absolute;
    bottom: -9px;
    left: 50%;
    transform: translateX(-50%);
}
p.flowListTtl {
    border: 1px solid #eee;
    border-radius: 12px;
    padding: 12px;
    background: #fff;
    margin: 0 auto 20px;
    filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, 0.2));
    background-color: #fff;
    text-align: center;
}
.flowListTtl .txt-a {
    font-size: 22px;
    font-weight: bold;
}
.flowListTtl span {
    display: block;
}
a.moreBtn {
    text-align: center;
    display: block;
    margin: 20px auto 0;
    width: fit-content;
    background-color: var(--c-accent);
    color: #fff;
    text-decoration: none;
    padding: 10px;
}
.resultName {
    font-size: 20px;
}
.resultsList>li {
    border: 1px solid #eee;
    border-radius: 12px;
    padding: 14px;
    background: #fff;
    filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, 0.2));
    background-color: #fff;
    margin: 20px 0 0;
}
.contactWrap img {
    display: block;
    margin: 0 auto;
}
li.stepItem span {
    display: inline-flex
;
    align-items: center;
    justify-content: center;
    background: #fff;
    color: var(--c-accent);
    font-size: 16px;
    font-weight: 700;
    border: 2px solid var(--c-accent);
    border-radius: 999px;
    width: 7rem;
    height: 2rem;
    margin-right: .5rem;
    flex: 0 0 auto;
}
.stepItem {
    border-radius: 12px;
    background: #fff;
    border: solid 1px #d1d1d1;
    padding: 24px;
    text-align: center;
    position: relative;
    margin-top: 30px;
}
h2#faq-title {
    text-align: center;
    font-size: 32px;
    font-weight: bold;
    background: #f6f6ee;
    margin: 0 0 20px;
}
section.faq .cntWrap {
    margin-top: 40px;
    background-color: #f6f6ee;
    padding: 20px 60px 80px;
    box-sizing: border-box;
}
.faqListItem:not(:last-child) {
    margin: 0 0 20px 0;
}
.faqListItem {
    background-color: #fff;
    border-radius: 10px;
    padding: 30px;
}
.question {
    margin: 0 0 20px 0;
}
.question, .answer {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 20px;
}
.question span {
    width: 50px;
    height: 50px;
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    line-height: 50px;
    background-color: #fad329;
    border-radius: 25px;
}
.question p, .answer p {
    width: calc(100% - 70px);
}
.question p {
    font-size: 20px;
    font-weight: bold;
}
.answer span {
    width: 50px;
    height: 50px;
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    line-height: 50px;
    background-color: #2b69bc;
    border-radius: 25px;
    color: #fff;
}
section.other img {
    display: block;
    margin: 0 auto;
    width: 100%;
}
p.otherTxt {
    margin: 40px 0 20px;
}
.otherItem h3 {
    background-color: #ffffff;
    padding: 12px 0;
    font-weight: bold;
    display: flex;
    align-items: center;
    margin: 0 0 10px 0;
    border-bottom: solid 2px #4d4d4d;
}
section.other p {
    margin-bottom: 20px;
}
.otherItem h4 {
    background-color: #ffffff;
    padding: 12px 0;
    font-weight: bold;
    display: flex;
    align-items: center;
    margin: 0 0 10px 0;
    border-bottom: solid 2px #4d4d4d;
}
.company th {
    text-align: center;
}
p.companyTxt {
    margin: 0 0 40px;
}
.floating-cta .tel {
    text-decoration: none;
}
.floating-cta strong {
    font-weight: 700;
}
li.stepItem h3 strong {
    font-weight: bold;
}
.stepItem:not(:last-child)::after {
    content: '';
    width: 24px;
    height: 14px;
    background-color: #fad329;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    position: absolute;
    bottom: -28px;
    left: 50%;
    transform: translateX(-50%);
}
#g02 .section, #g03 .section, #g04 .section, #g05 .section, #g06 .section {
    margin: auto;
    width: 1000px;
}
#g05 .section h3 {
    background-color: #fff;
}

/* =============================
   固定CTA：横並び最終デザイン
   （添付画像再現）
============================= */
.floating-cta_dual {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--c-accent);
    box-shadow: 0 -6px 20px rgba(0, 0, 0, .15);
    color: #fff;
    align-items: center;
    padding: 0.8rem 1.5rem;
    z-index: 1000;
    flex-24px: unset;
    display: flex;
    justify-content: center;
    gap: .8rem;
    flex-wrap: wrap;
}

/* 左側（タイトル＋チップ） */
.cta-left {
  display: flex;
  flex-direction: column;
}
.lead-strong {
    font-weight: 800;
    font-size: 24px;
    letter-spacing: .03em;
    color: #fff;
    white-space: nowrap;
}
.cta-chips {
  display: flex;
  align-items: center;
  gap: .6rem;
  flex-wrap: wrap;
}
.cta-chips span {
    font-size: 15px;
}
.chip {
  display: inline-flex;
  align-items: center;
  font-size: 12px;
  font-weight: 700;
  color: #fff;
  background: none; /* 枠なしでシンプル */
}
.chip img {
  width: 16px;
  height: 16px;
  vertical-align: middle;
}

/* 右側（2ボタン） */
.cta-right {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  font-family: 'Roboto','Lato',sans-serif;
  font-size: 15px;
  font-weight: 700;
  border-radius: 8px;
  text-decoration: none;
  padding: .55rem 1.3rem;
  box-shadow: 0 2px 6px rgba(0,0,0,.15);
  transition: all .25s ease;
}
.cta-btn img {
  width: 18px;
  height: 18px;
  vertical-align: middle;
}

/* 電話ボタン：オレンジボックス */
.cta-btn_call {
    background: linear-gradient(180deg, #ffdc49 0%, #fbd329 100%);
    border: 1px solid #fbd329;
    color: #2C3E50;
}
.cta-btn_call:hover {
  background: linear-gradient(180deg, #ffdc49 0%, #fbd329 100%);
  transform: translateY(-2px);
}

/* フォームボタン：緑ボックス */
.cta-btn_form {
  background: linear-gradient(180deg, #2ECC71 0%, #27AE60 100%);
  border: 1px solid #27AE60;
  color: #fff;
}
.cta-btn_form:hover {
  opacity: .9;
  transform: translateY(-2px);
}

/* スマホ対応：縦並び */
@media (max-width: 768px) {
  .floating-cta_dual {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: .8rem;
  }
  .cta-left {
    align-items: center;
  }
  .cta-chips {
    justify-content: center;
  }
  .cta-right {
    flex-direction: column;
    width: 100%;
  }
  .cta-btn {
    width: 100%;
    justify-content: center;
  }
}

/* 印刷時非表示 */
@media print {
  .floating-cta.dual { display: none !important; }
}
/* =============================
   固定CTA：アニメーション設定
============================= */

/* フェードイン初期状態 */
.floating-cta.dual.reveal {
  opacity: 0;
  transform: translateY(20px);
}

/* 表示時（IntersectionObserverで制御） */
.floating-cta.dual.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

/* ボタンの鼓動アニメーション */
@keyframes cta-pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.04); }
}
.cta-btn.pulse {
  animation: cta-pulse 2s ease-in-out infinite;
  transform-origin: center;
}

/* ホバー中は静止（操作優先） */
.cta-btn:hover { animation: none; }

/* 動きを減らす設定に対応 */
@media (prefers-reduced-motion: reduce) {
  .floating-cta.dual.reveal,
  .floating-cta.dual.reveal.is-visible {
    transition: none;
    opacity: 1;
    transform: none;
  }
  .cta-btn.pulse { animation: none; }
}
.floating-cta_dual strong {
    font-weight: bold;
}
.cta-right a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: 'Roboto', 'Lato', sans-serif;
    font-size: 15px;
    font-weight: 700;
    border-radius: 8px;
    text-decoration: none;
    padding: .55rem 1.3rem;
    width: 300px;
}
a.cta-btn_call_sp {
    display: none;
}