@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.1
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* 固定ページ h2 マージンリセット（Extension の data-hdg-id 付きは除外） */
.page .post_content h2:not([data-hdg-id]),
.page .post_content h3:not([data-hdg-id]) {
	margin: 0;
}

/* SWELL の section_ttl ::after/::before リセットを解除（カスタムCSS側で装飾を定義） */
.post_content .is-style-section_ttl::after {
	content: "";
	border: none;
}
.post_content .is-style-section_ttl::before {
	content: none;
}

[data-block-link] {
	cursor: pointer;
}

/* SWELL 標準の .has-border/.has-background box_padding を UB でリセット
   Extension が spacingPadding で個別管理するため */
.wp-block-flavor-universal-block.has-border,
.wp-block-flavor-universal-block.has-background {
	padding: 0;
}

/* =========================================================
   買いとるぞう ヘッダー（live版 conode-create.com/kaitoruzou 準拠）
   色: cream #F6FAF7 / teal-green #208070 / ink #24302A / line #D3E1D9
   ========================================================= */
#header.l-header { background: #fff; border-bottom: 1px solid #D3E1D9; }
/* SWELLのヘッダーレイアウト機構（-series等）は上書きしない。高さと余白のみ調整 */
#header .l-header__inner { min-height: 88px; }
/* ロゴが flex で潰れないよう保護（ヘッダーウィジェット追加で圧縮されるのを防ぐ） */
#header .l-header__inner { align-items: center; min-height: 72px; }
#header .l-header__logo { flex-shrink: 0; display: flex; align-items: center; }
#header .l-header__logo .c-headLogo { max-width: none; flex-shrink: 0; display: flex; align-items: center; height: auto; }
#header .l-header__logo .c-headLogo__img {
	height: 40px; width: auto; max-height: 40px; flex-shrink: 0; display: block;
}
/* 追従ヘッダー(.l-fixHeader)のロゴも同様に（上下余白を持たせて中央）。既定32px→拡大 */
.l-fixHeader .c-headLogo { height: auto !important; display: flex; align-items: center; }
.l-fixHeader .c-headLogo__img { height: 40px !important; max-height: 40px !important; width: auto; display: block; }

/* グローバルナビ */
#header .l-header__gnav .c-gnav > li > a {
	font-size: 14px; font-weight: 500; color: #24302A; letter-spacing: .02em;
	/* live版準拠：横パディングを持たせず gap で間隔を作る（横幅の圧迫を防ぐ）
	   下線を追従ヘッダーと揃えるため、リンクをヘッダー高さいっぱいにして ::after を最下部へ */
	display: flex; align-items: center; min-height: 72px; padding: 0;
}
#header .l-header__gnav .c-gnav > li > a:hover { color: #208070; }
#header .l-header__gnav .c-gnav { gap: 28px; }
#header .l-header__gnav .c-gnav > li { margin: 0; }

/* ヘッダー右：電話ブロック＋CTAボタン（head_boxウィジェット） */
#header .w-header__inner { padding: 0; }
.kt-headcta { display: flex; align-items: center; gap: 14px; flex-shrink: 0; }
.kt-tel { text-align: right; line-height: 1.2; }
.kt-tel__hint {
	font-size: 11px; color: #8A968E; letter-spacing: .08em; white-space: nowrap;
}
.kt-tel__num {
	font-size: 22px; font-weight: 700; color: #24302A; letter-spacing: .02em;
	display: flex; align-items: center; gap: 6px; white-space: nowrap; text-decoration: none;
}
.kt-tel__num::before {
	content: ""; width: 14px; height: 14px; background: #208070; flex-shrink: 0;
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'><path d='M6.6 10.8c1.4 2.8 3.8 5.2 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.4.6 3.6.6.6 0 1 .5 1 1V20c0 .6-.4 1-1 1A17 17 0 013 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1l-2.3 2.2z'/></svg>") center/contain no-repeat;
	mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'><path d='M6.6 10.8c1.4 2.8 3.8 5.2 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.4.6 3.6.6.6 0 1 .5 1 1V20c0 .6-.4 1-1 1A17 17 0 013 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1l-2.3 2.2z'/></svg>") center/contain no-repeat;
}
.kt-headbtn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	height: 48px; padding: 0 22px; border-radius: 4px; border: 0;
	font-size: 14px; font-weight: 700; letter-spacing: .04em;
	background: #208070; color: #fff; text-decoration: none; white-space: nowrap;
	box-shadow: 0 2px 0 #1A6A5A;
	transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.kt-headbtn:hover { background: #1A6A5A; transform: translateY(-1px); color: #fff; }
.kt-headbtn__ar {
	width: 14px; height: 14px; background: currentColor; flex-shrink: 0;
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M9 6l6 6-6 6' stroke='black' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat;
	mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M9 6l6 6-6 6' stroke='black' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat;
}

/* タブレット以下：電話ブロックは隠す（live版準拠） */
@media (max-width: 960px) {
	#header .l-header__inner { min-height: 74px; gap: 16px; }
	#header .l-header__logo .c-headLogo__img { height: 46px; max-height: 46px; }
	.l-fixHeader .c-headLogo__img { height: 46px !important; max-height: 46px !important; }
	.kt-tel { display: none; }
}
/* スマホ：ヘッダーCTAボタンも隠す（SP固定バーに導線があるため） */
@media (max-width: 599px) {
	#header .l-header__inner { min-height: 64px; gap: 8px; }
	#header .l-header__logo .c-headLogo__img { height: 40px; max-height: 40px; }
	.l-fixHeader .c-headLogo__img { height: 40px !important; max-height: 40px !important; }
	.kt-headbtn { display: none; }
}

/* =========================================================
   買いとるぞう フッター（live版準拠）
   ========================================================= */
#footer.l-footer { background: #1A1612; color: #C9BFA8; }
#footer .l-footer__inner { background: transparent; }
/* ウィジェット領域を4カラムグリッドの器にする（上余白は .kt-footer の64pxに一本化＝参考と同値。SWELLの枠パディングを打ち消す） */
#footer .l-footer__widgetArea,
#footer .l-footer__widget,
#footer .w-footer,
#footer .w-footer__box { padding: 0; background: transparent; }
#footer .l-footer__widget .l-container,
#footer .w-footer .l-container { max-width: 1200px; }

.kt-footer {
	display: grid; grid-template-columns: 1fr 1fr; gap: 48px;
	max-width: 1200px; margin: 0 auto; padding: 64px 24px 0;
}
/* ナビのリンクを右カラムに1列でまとめる＝フッター全体は brand｜リンク の2カラム */
.kt-footer__nav { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.kt-footer__logo {
	height: 48px; width: auto; border-radius: 2px; margin-bottom: 16px;
	background: #fff; padding: 6px; display: block;
}
.kt-footer__brand p { color: #8E8676; margin: 0 0 14px; font-size: 12px; line-height: 1.9; }
.kt-footer__brand p.kt-footer__addr { color: #C9BFA8; line-height: 1.7; }
.kt-footer__col h4 {
	font-family: "Noto Serif JP", serif; color: #fff; font-size: 14px; font-weight: 600;
	margin: 0 0 14px; letter-spacing: .08em;
	border-bottom: 1px solid #2F2A22; padding-bottom: 10px;
}
.kt-footer__col ul {
	list-style: none; margin: 0; padding: 0;
	display: flex; flex-direction: column; gap: 10px;
}
.kt-footer__col li { padding: 0; font-size: 12.5px; }
.kt-footer__col li::after { content: none; }
.kt-footer__col a { color: #C9BFA8; text-decoration: none; }
.kt-footer__col a:hover { color: #fff; }

/* 下部バー（コピーライト＋古物商許可番号） */
#footer .l-footer__foot { background: transparent; padding: 0 0 28px; }
#footer .l-footer__foot .l-container {
	max-width: 1200px; margin-top: 48px;
	border-top: 1px solid #2F2A22; padding-top: 24px;
}
#footer .l-footer__nav { display: none; }
#footer .copyright {
	font-size: 11px; color: #6E6759; letter-spacing: .08em; margin: 0;
}

@media (max-width: 960px) {
	.kt-footer { grid-template-columns: 1fr; gap: 32px; }
}
@media (max-width: 599px) {
	/* SP固定フッターバー分の余白を確保 */
	#footer.l-footer { padding-bottom: 96px; }
	.kt-footer { grid-template-columns: 1fr; gap: 24px; padding: 48px 18px 0; }
	.kt-footer__logo { height: 40px; }
	.kt-footer__col h4 { font-size: 13px; }
	#footer .copyright { font-size: 10px; letter-spacing: .02em; }
}

/* =========================================================
   お問い合わせ・無料査定ページ（/contact/）＋ Snow Monkey Forms
   ========================================================= */
.kt-page__lead{
	text-align:center; color:#5C6A63; font-size:15px; line-height:1.95;
	margin:0 auto 32px;
}
/* 編集画面ツールバーの「テキスト寄せ」を効かせる：
   コアの has-text-align-* を .kt-page__lead の既定 text-align より優先させる。
   （フロント・エディタ両対応。!important で body:has(.kt-pcta) の左揃えより強い）
   寄せ未指定なら上の既定（中央）が適用される。 */
.kt-page__lead.has-text-align-left{ text-align:left !important; }
.kt-page__lead.has-text-align-center{ text-align:center !important; }
.kt-page__lead.has-text-align-right{ text-align:right !important; }
/* フォームカード */
.kt-formcard{
	background:#fff; border:1px solid #D3E1D9; border-radius:8px; padding:36px 40px;
	margin:0 auto; max-width:680px; width:100%; text-align:left;
	box-shadow:0 10px 30px rgba(60,80,70,.08);
}
/* SMFフィールド：ラベル上・入力下に積む */
.kt-formcard .smf-item{ display:block; margin:0 0 20px; border:0; }
.kt-formcard .smf-item__col{ display:block; width:auto; padding:0; }
.kt-formcard .smf-item__col--label{ margin:0 0 6px; }
.kt-formcard .smf-item__label__text{ font-size:14px; font-weight:700; color:#24302A; }
/* 必須バッジ（validations required の項目に自動付与） */
.kt-formcard .smf-item:has([data-validations~="required"]) .smf-item__label__text::after{
	content:"必須"; display:inline-block; margin-left:8px; padding:2px 8px; border-radius:3px;
	background:#208070; color:#fff; font-size:10px; font-weight:700; letter-spacing:.04em; vertical-align:middle;
}
.kt-formcard input[type=text],
.kt-formcard input[type=email],
.kt-formcard input[type=tel],
.kt-formcard textarea{
	width:100%; border:1px solid #D3E1D9; border-radius:4px; padding:12px 14px; font-size:15px;
	background:#fff; color:#24302A; font-family:inherit; box-sizing:border-box;
}
.kt-formcard textarea{ min-height:130px; resize:vertical; }
.kt-formcard input:focus,
.kt-formcard textarea:focus{ outline:none; border-color:#208070; background:#fff; box-shadow:0 0 0 3px rgba(32,128,112,.12); }
.kt-formcard input[type=file]{ font-size:13px; color:#5C6A63; }
.kt-formcard .smf-item__description{ font-size:12.5px; color:#5C6A63; line-height:1.8; margin-top:8px; }
.kt-formcard .smf-item__description a{ color:#208070; text-decoration:underline; }
.kt-formcard .smf-checkboxes-control__label{ display:inline-flex; align-items:center; gap:8px; font-size:14px; color:#24302A; cursor:pointer; }
/* プライバシーポリシー同意欄：リンクの体裁＋送信ボタンとの間に余白 */
.kt-formcard [data-name="agree"] a{ color:#208070 !important; text-decoration:underline !important; }
.kt-formcard .smf-item:has([data-name="agree"]){ margin-bottom:36px !important; }
/* フォームの下に余白（SWELLの :last-child マージン潰しを詳細度+!importantで上書き） */
.post_content .kt-formcard.wp-block-group{ margin-bottom:56px !important; }
/* 電話番号リンク（お問い合わせ本文・フッター）：装飾なし、ホバーでポインタ（指マーク）のみ */
.kt-page__lead a[href^="tel:"],
.kt-footer__addr a[href^="tel:"]{ text-decoration:none; cursor:pointer; }
/* 送信/確認ボタン（SMFがJSで描画） */
.kt-formcard .smf-action{ text-align:center; margin-top:8px; }
.kt-formcard .smf-action button,
.kt-formcard .smf-button-control__control{
	background:#208070; color:#fff; border:0; border-radius:999px; padding:15px 44px;
	font-size:16px; font-weight:700; cursor:pointer; letter-spacing:.04em;
	box-shadow:0 3px 0 #1A6A5A; transition:background .15s; font-family:inherit;
}
.kt-formcard .smf-action button:hover{ background:#1A6A5A; }
.kt-formcard .smf-item__controls__messages,
.kt-formcard .smf-error-messages{ color:#c0392b; font-size:12px; margin-top:4px; }
@media (max-width:599px){
	.kt-formcard{ padding:26px 20px; }
}

/* =========================================================
   下層ページ共通コンポーネント（会社概要ほか固定ページ）
   ※ core/table・core/group・core/buttons を SWELL ブロックエディタで
     編集しつつ、サイト本体（.kt-*）と同じ見栄えに揃えるための共通CSS
   ========================================================= */
/* 情報テーブル（会社概要など）：表の下に余白を確保 */
.kt-infotable{ margin:0 auto; }
/* .post_content .kt-infotable{ margin-bottom:64px !important; } */
.kt-infotable table{ width:100%; border-collapse:collapse; border:0; }
.kt-infotable th,
.kt-infotable td{ border:1px solid #D3E1D9; padding:15px 20px; text-align:left; vertical-align:top; font-size:15px; line-height:1.85; }
.kt-infotable th{ background:#F6FAF7; color:#24302A; font-weight:700; width:170px; white-space:nowrap; }
.kt-infotable td{ background:#fff; color:#3A463F; }
.kt-infotable a{ color:#208070; }
@media (max-width:599px){
	.kt-infotable th,
	.kt-infotable td{ display:block; width:auto; }
	.kt-infotable th{ border-bottom:0; white-space:normal; }
	.post_content .kt-infotable{ margin-bottom:44px !important; }
}

/* --- 下層ページ：セクション見出し（サイトのセクションタイトルに準拠） --- */
.kt-page-h2{
	font-family:"Noto Serif JP",serif; font-weight:600; font-size:26px; line-height:1.5;
	letter-spacing:.04em; text-align:center; color:#24302A; margin:56px auto 28px;
}
.post_content h2.kt-page-h2{ background:transparent; border:0; border-radius:0; box-shadow:none; padding:0; }
.post_content h2.kt-page-h2::before{ content:none; display:none; }

/* --- 下層ページ：チェックリスト（こんな方に・特徴 など） --- */
.kt-checklist{ list-style:none; margin:0 auto; padding:0; }
.kt-checklist li{ position:relative; padding:11px 0 11px 34px; border-bottom:1px solid #EAF1EC; font-size:15px; line-height:1.85; color:#3A463F; }
.kt-checklist li:last-child{ border-bottom:0; }
.kt-checklist li::before{
	content:""; position:absolute; left:0; top:13px; width:20px; height:20px; border-radius:50%;
	background:#208070 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") no-repeat center / 12px;
}

/* --- 下層ページ：番号付きステップ（買取の流れ など） --- */
.kt-steplist{ list-style:none; counter-reset:kstep; margin:0 auto; padding:0; }
/* 標準リスト(ul/ol.wp-block-list)はSWELL既定インデント(1.5em)を活かし、本文テキストに整列させる
   （以前の .post_content ol,ul{padding-left:0} は撤去。弾点が本文より左へ飛び出す問題を解消）。
   ※今後追加する通常のUL/OLにも自動で適用される。
   カスタムリスト(kt-checklist/kt-steplist)だけは list-style:none の独自装飾のため padding-left:0 を維持。 */
.post_content ul.kt-checklist,
.post_content ul.kt-steplist,
.post_content ol.kt-steplist{ padding-left:0; }
.kt-steplist li{ position:relative; padding:4px 0 26px 60px; font-size:14px; line-height:1.9; color:#5C6A63; }
.kt-steplist li:last-child{ padding-bottom:0; }
.kt-steplist li::before{
	counter-increment:kstep; content:counter(kstep,decimal-leading-zero); position:absolute; left:0; top:0;
	width:40px; height:40px; border-radius:50%; background:#208070; color:#fff; font-weight:700;
	font-family:"Noto Sans JP",sans-serif; font-size:15px; display:grid; place-items:center;
}
.kt-steplist li:not(:last-child)::after{ content:""; position:absolute; left:19px; top:46px; bottom:6px; width:2px; background:#D3E1D9; }
.kt-steplist li strong{ display:block; font-family:"Noto Serif JP",serif; font-weight:600; font-size:17px; color:#24302A; margin-bottom:4px; }

/* --- 下層ページ：注記ボックス --- */
.kt-note{
	max-width:720px; margin:0 auto; background:#F6FAF7; border:1px solid #D3E1D9; border-left:4px solid #208070;
	border-radius:4px; padding:18px 22px; font-size:14px; line-height:1.9; color:#3A463F;
}
.kt-note strong{ color:#24302A; }

@media (max-width:599px){
	.kt-page-h2{ font-size:22px; margin:44px auto 24px; }
	.kt-checklist li{ font-size:14px; padding-left:30px; }
	.kt-steplist li{ padding-left:52px; }
	.kt-steplist li strong{ font-size:16px; }
}

/* ページ下部CTA（サイト本体のCTAと同じ濃緑フルワイド） */
.kt-pcta{
	width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); max-width:100vw;
	padding:72px 0; color:#fff; text-align:center; margin-bottom:0 !important;
	background-image:linear-gradient(rgba(23,66,57,.85),rgba(23,66,57,.92)),url("/wp-content/uploads/2026/07/cta-bg.png");
	background-size:cover; background-position:center;
}
.kt-pcta > .wp-block-group__inner-container{ max-width:1200px; margin:0 auto; padding:0 24px; }
.kt-pcta__ttl{ font-family:"Noto Serif JP",serif; font-size:30px; font-weight:600; letter-spacing:.08em; color:#fff; margin:0 0 12px; }
.post_content h2.kt-pcta__ttl{ background:transparent !important; border:0 !important; border-radius:0 !important; padding:0 !important; }
.post_content h2.kt-pcta__ttl::before{ content:none !important; display:none !important; }
.kt-pcta__lead{ color:rgba(255,255,255,.82); font-size:15px; line-height:2; margin:0 0 30px; }
.kt-pcta .kt-cta-btns.wp-block-buttons{ display:flex; justify-content:center; gap:14px; flex-wrap:wrap; margin:0 0 28px; }
.kt-pcta .kt-btn .wp-block-button__link{
	border-radius:999px; padding:18px 30px; font-weight:700; font-size:16px; letter-spacing:.04em;
	color:#fff; min-width:260px; text-align:center; border:0; text-decoration:none; display:block;
}
.kt-pcta .kt-btn--line .wp-block-button__link{ background:url("/wp-content/uploads/2026/07/line_icon_clean.png?v=3") no-repeat left 18px center / 30px, #06C755; box-shadow:0 5px 14px rgba(0,0,0,.14); }
.kt-pcta .kt-btn--line .wp-block-button__link:hover{ filter:brightness(.93); }
.kt-pcta .kt-btn--form .wp-block-button__link{ background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16v16H4z'/%3E%3Cpath d='M4 4l8 8 8-8'/%3E%3C/svg%3E") no-repeat left 24px center / 22px, #c19a34; box-shadow:0 5px 14px rgba(0,0,0,.14); }
.kt-pcta .kt-btn--form .wp-block-button__link:hover{ filter:brightness(.96); }
.kt-pcta__tel-label{ display:block; font-size:11px; letter-spacing:.22em; color:rgba(255,255,255,.6); margin-bottom:4px; }
.kt-pcta__tel{ display:block; font-size:30px; font-weight:700; letter-spacing:.06em; margin:0; }
.kt-pcta__tel a{ color:#fff; text-decoration:none; }
.kt-pcta__hours{ display:block; color:rgba(255,255,255,.6); font-size:12px; letter-spacing:.08em; margin-top:8px; }
@media (max-width:599px){
	.kt-pcta{ padding:52px 0; }
	.kt-pcta__ttl{ font-size:22px; }
	.kt-pcta .kt-cta-btns.wp-block-buttons{ flex-direction:column; align-items:center; }
	.kt-pcta .kt-cta-btns .wp-block-button{ width:100%; max-width:320px; }
	.kt-pcta .kt-btn .wp-block-button__link{ min-width:0; width:100%; }
	.kt-pcta__tel{ font-size:26px; }
}

/* --- 下層ページ（CTA=.kt-pctaを持つ＝会社概要・買取方法各種・買取品目）：背景白＋テキスト左揃え --- */
body:has(.kt-pcta){ background:#fff; }
body:has(.kt-pcta) .kt-page__lead{ text-align:left; margin-left:0; margin-right:auto; }
body:has(.kt-pcta) .kt-page-h2{ text-align:left; margin-left:0; margin-right:auto; }
body:has(.kt-pcta) .kt-checklist,
body:has(.kt-pcta) .kt-steplist,
body:has(.kt-pcta) .kt-note,
body:has(.kt-pcta) .kt-infotable{ margin-left:0; margin-right:auto; }
/* CTA直前の要素に下余白（トップ=.kt-cta / 下層=.kt-pcta 両対応） */
.post_content :has(+ .kt-pcta){ padding-bottom:5rem; margin-bottom:0 !important; }
.post_content :has(+ .kt-cta){ padding-bottom:5rem; }

/* コンテンツ下の余白（SWELL既定 .l-content margin 6em）を除去してフッターと密着 */
.l-content { margin-bottom: 0 !important; }
/* SWELL既定の .post_content 上下マージン(4em)を除去 */
.l-mainContent__inner > .post_content { margin: 0; }

/* 買取方法カードのメタ（チップ）の余白 */
.kt-method__meta{ padding: 20px !important; }

/* border-radius を持つカード系ボックスを全て16pxに統一 */
.kt-strength, .kt-method, .kt-item, .kt-flow__step,
.kt-voice__card, .kt-faq__item, .kt-blog__card, .kt-formcard{ border-radius: 16px !important; }

/* セクション見出しの安全な改行（レスポンシブで切れ・不自然な折返しを防ぐ） */
.kt-sec__ttl, .kt-cta__ttl, .kt-page-h2{ word-break: keep-all; overflow-wrap: anywhere; }

/* ページ内リンク（#アンカー）を全てスムーズスクロール。
   追従ヘッダー(.l-fixHeader 高さ72px)にアンカー先が隠れないよう scroll-padding-top を確保 */
html { scroll-behavior: smooth; scroll-padding-top: 80px; }
@media (max-width: 599px) { html { scroll-padding-top: 64px; } }

/* フッターロゴ：TOPページへのリンク（白ボックスの装飾は img 側 .kt-footer__logo が保持） */
.kt-footer__logoLink { display: inline-block; line-height: 0; }

/* 買取方法カードの「◯◯について見る →」は各買取方法ページへリンク */

/* SWELLの「トップへ戻る」ボタンを非表示 */
#pagetop { display: none !important; }

/* ============================================================
   追従LINE導線（PC/タブレット=右下の丸ボタン / SP=下部固定バー）
   出力は functions.php の wp_footer。立体感は付けずフラット寄り。
   ============================================================ */
.kt-float-line{
	position: fixed; right: 20px; bottom: 20px; z-index: 50;
	width: 60px; height: 60px; border-radius: 50%; overflow: hidden;
	display: block; box-shadow: 0 6px 18px rgba(0,0,0,.18); transition: filter .2s;
}
.kt-float-line:hover{ filter: brightness(0.93); }
.kt-float-line img{ width: 100%; height: 100%; display: block; border-radius: 50%; }

.kt-spbar{
	display: none; position: fixed; left: 0; right: 0; bottom: 0; z-index: 55;
	background: #fff; border-top: 1px solid #D3E1D9; gap: 10px;
	padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
	box-shadow: 0 -4px 14px rgba(20,15,8,.08);
}
.kt-spbar a{
	flex: 1; height: 48px; display: inline-flex; align-items: center; justify-content: center;
	gap: 8px; font-size: 15px; font-weight: 700; color: #fff; text-decoration: none;
	border-radius: 6px; letter-spacing: .02em;
}
.kt-spbar a svg{ width: 20px; height: 20px; }
.kt-spbar a img{ width: 26px; height: 26px; display: block; }
.kt-spbar__line{ background: #06C755; }
.kt-spbar__line:hover{ filter: brightness(0.93); color: #fff; }
.kt-spbar__form{ background: #c19a34; }
.kt-spbar__form:hover{ filter: brightness(0.95); color: #fff; }

@media (max-width: 599px){
	.kt-float-line{ display: none; }
	.kt-spbar{ display: flex; }
	/* 下部固定バーで最下部が隠れないよう余白を確保 */
	body{ padding-bottom: 72px; }
}

/* ============================================================
   スマホ開閉メニュー（SWELL .p-spMenu）の調整
   ・上部にロゴ、下部に連絡導線（電話/LINE/フォーム）をJSで挿入（functions.php）
   ・MENUヘッダーを全幅に／開いている間は下部固定バーを隠す
   ============================================================ */
.kt-spmenu-logo{ display: block; padding: 2px 0 16px 4px; line-height: 0; }
.kt-spmenu-logo img{ height: 38px; width: auto; }
.p-spMenu__body .c-widget__title.-spmenu{
	margin: 0 -15px 10px; padding: 13px 20px;
	background: #208070; color: #fff; font-size: 15px; font-weight: 700; letter-spacing: .08em;
}
.kt-spmenu-cta{ margin-top: 22px; display: flex; flex-direction: column; gap: 10px; }
.kt-spmenu-tel{ text-align: center; color: #24302A; text-decoration: none; padding: 4px 0 10px; }
.kt-spmenu-tel__num{ display: block; font-size: 23px; font-weight: 700; letter-spacing: .04em; color: #208070; }
.kt-spmenu-tel__sub{ display: block; font-size: 11px; color: #6f7d76; letter-spacing: .1em; margin-top: 2px; }
.kt-spmenu-cta a.kt-spmenu-line,
.kt-spmenu-cta a.kt-spmenu-form{
	display: flex; align-items: center; justify-content: center; gap: 8px; height: 52px;
	border-radius: 8px; font-weight: 700; font-size: 15px; color: #fff; text-decoration: none;
}
.kt-spmenu-line{ background: #06C755; }
.kt-spmenu-line img{ width: 26px; height: 26px; }
.kt-spmenu-form{ background: #c19a34; }
/* メニューを開いている間は下部固定バーを隠す（重なり解消） */
html[data-spmenu="opened"] .kt-spbar{ display: none; }

/* ============ SP(≤599px) 指摘対応：フッターまわり ============ */
@media (max-width: 599px){
  /* 上余白は .kt-footer の48pxに一本化＝参考と同値 */
  .l-footer{ padding-top: 0; }
  /* コピーライト＋古物商を2行に（「古物商許可」が途中で割れないように） */
  .l-footer .copyright{ word-break: keep-all; overflow-wrap: anywhere; line-height: 1.9; }
  /* 下部帯：上の余白は .l-container の margin-top に任せ、下は SP固定バー分(96px)で確保 */
  #footer .l-footer__foot{ padding: 0; }
  #footer .l-footer__foot .l-container{ margin-top: 32px; }
}

/* コピーライト＋古物商許可を中央揃え（全サイズ） */
.l-footer .copyright{ text-align: center; }
/* コピーライト：スマホでは「｜」の位置で2行に分割（PCは1行のまま） */
@media (max-width: 599px){
	.l-footer .copyright .cr-sep{ display: none; }
	.l-footer .copyright .cr-line2{ display: block; }
}
