@charset "utf-8";
/* ============================================
   よくあるご質問（faq.html）
============================================ */

/* ---------- ヒーロー（検索・カテゴリ） ---------- */
.faqp-hero{background:#eef9f9;padding:56px 40px 64px;}
.faqp-heroin{margin:0 auto;max-width:1080px;}
.faqp-ttl{text-align:center;font-size:40px;font-weight:600;color:#1ab4ae;letter-spacing:2px;line-height:1.4;margin-bottom:34px;}
.faqp-ttl .spbr{display:none;}

/* 検索ボックス */
.faqp-search{display:flex;align-items:center;gap:12px;max-width:860px;margin:0 auto;padding:0 26px;background:#fff;border-radius:40px;box-shadow:0 2px 10px rgba(0,0,0,.06);}
.faqp-search button{flex:none;display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:none;border:none;cursor:pointer;color:#1ab4ae;}
.faqp-search button svg{width:22px;height:22px;}
.faqp-search input{flex:1;border:none;outline:none;padding:18px 0;font-size:17px;color:#222b38;background:none;font-family:inherit;}
.faqp-search input::placeholder{color:#aaa;}

/* カテゴリカード */
.faqp-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px;list-style:none;padding:0;}
.faqp-cats li a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:14px;padding:34px 18px 44px;background:#fff;border-radius:16px;box-shadow:0 2px 10px rgba(0,0,0,.06);text-decoration:none;transition:opacity .3s, transform .3s;}
.faqp-cats li a:hover{opacity:.85;transform:translateY(-2px);}
.faqp-cats li a figure{display:flex;align-items:flex-end;justify-content:center;height:74px;margin:0;}
.faqp-cats li a figure img{max-height:74px;width:auto;}
.faqp-cats li a span{font-size:18px;font-weight:bold;color:#1ab4ae;text-align:center;line-height:1.5;}
.faqp-cats li a:after{position:absolute;bottom:20px;left:50%;content:"";width:11px;height:11px;margin-left:-6px;border-right:3px solid #1ab4ae;border-bottom:3px solid #1ab4ae;transform:rotate(45deg);}

/* カテゴリ表示・検索結果表示のときはタイトル・カードを隠す */
.faqp.is-catview .faqp-ttl,
.faqp.is-catview .faqp-cats,
.faqp.is-search .faqp-ttl,
.faqp.is-search .faqp-cats{display:none;}
.faqp.is-catview .faqp-hero,
.faqp.is-search .faqp-hero{padding:40px 40px 44px;}

/* ---------- よくあるご質問（ピックアップ）・検索結果 ---------- */
.faqp-pickup,.faqp-result{padding:64px 40px 80px;}
.faqp-secttl{text-align:center;font-size:38px;font-weight:900;color:#1ab4ae;margin-bottom:36px;}
.faqp-result{display:none;}
.faqp-result-info{max-width:1080px;margin:-16px auto 26px;font-size:17px;text-align:center;}
.faqp-result-none{max-width:1080px;margin:0 auto;text-align:center;font-size:17px;}
.faqp-back{margin-top:40px;text-align:center;}
.faqp-back a{display:inline-flex;align-items:center;color:#1ab4ae;font-weight:bold;font-size:16px;text-decoration:none;}
.faqp-back a:before{content:"";margin-right:10px;width:9px;height:9px;border-left:3px solid #1ab4ae;border-bottom:3px solid #1ab4ae;transform:rotate(45deg);}
.faqp-back a:hover{text-decoration:underline;}

/* 表示切替 */
.faqp.is-catview .faqp-pickup,
.faqp.is-search .faqp-pickup{display:none;}
.faqp.is-search .faqp-result{display:block;}

/* アコーディオン（style.cssの.faq-itemを下線区切りスタイルに上書き） */
.faqp .faq-list{max-width:1080px;margin:0 auto;}
.faqp .faq-item{background:#fff;border-radius:0;margin-bottom:0;border-bottom:1px solid #dcdcdc;overflow:hidden;}
.faqp .faq-item:first-child{border-top:1px solid #dcdcdc;}
.faqp .faq-q{padding:26px 14px;}
.faqp .faq-a{padding:0 14px 30px;border-top:none;margin-top:0;}
.faqp .faq-item.open .faq-a{padding-top:2px;}

/* ---------- カテゴリビュー（サイドバー＋一覧） ---------- */
.faqp-body{display:none;padding:56px 40px 80px;}
.faqp.is-catview .faqp-body{display:flex;gap:44px;align-items:flex-start;max-width:1080px;margin:0 auto;position:relative;}
.faqp-side{flex:none;width:300px;background:#fff;border:1px solid #e3e3e3;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.04);}
.faqp-side ul{list-style:none;margin:0;padding:0;}
.faqp-side li + li{border-top:1px solid #e9e9e9;}
.faqp-side a{position:relative;display:block;padding:18px 38px 18px 20px;font-size:15px;font-weight:bold;color:#222b38;line-height:1.5;text-decoration:none;transition:background .2s,color .2s;}
.faqp-side a:after{position:absolute;top:50%;right:18px;content:"";width:8px;height:8px;margin-top:-5px;border-top:2.5px solid #1ab4ae;border-right:2.5px solid #1ab4ae;transform:rotate(45deg);}
.faqp-side a:hover{background:#eef9f9;}
.faqp-side li.is-active a{background:#1ab4ae;color:#fff;}
.faqp-side li.is-active a:after{border-color:#fff;}
.faqp-cmain{flex:1;min-width:0;}
.faqp-cat{display:none;}
.faqp-cat.is-active{display:block;}
.faqp-catttl{position:relative;padding:16px 24px;background:#1ab4ae;border-radius:10px;color:#fff;font-size:22px;font-weight:bold;line-height:1.4;margin-bottom:14px;}
.faqp-catttl:after{display:none;position:absolute;top:50%;right:20px;content:"";width:10px;height:10px;margin-top:-8px;border-right:3px solid #fff;border-bottom:3px solid #fff;transform:rotate(45deg);}
.faqp-cmain .faq-item:first-child{border-top:none;}

/* ---------- 下部CTA（teppay加盟店デスク） ---------- */
.faqp-cta{position:relative;padding:80px 40px 60px;background:#1cb5ae url(../img/bg01.png)repeat-x top;}
.faqp-cta:after{position:absolute;bottom:0;left:0;content:"";width:100%;height:20px;background:url(../img/bg01.png)repeat-x bottom;}
.faqp-ctain{margin:0 auto;max-width:1080px;}
.faqp-cta-lead{text-align:center;color:#fff;font-size:24px;font-weight:bold;line-height:1.7;}
.faqp-cta-box{display:flex;margin:36px auto 0;max-width:900px;background:#fff;border-radius:18px;padding:36px 20px;}
.faqp-cta-desk{flex:1.2;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 24px;border-right:1px solid #ddd;text-align:center;}
.faqp-cta-desk h3{font-size:22px;font-weight:bold;color:#1ab4ae;margin-bottom:10px;}
.faqp-cta-tel{display:flex;align-items:center;justify-content:center;gap:12px;}
.faqp-cta-tel i{flex:none;display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:#1ab4ae;border-radius:9px;color:#fff;}
.faqp-cta-tel i svg{width:22px;height:22px;}
.faqp-cta-tel a{font-size:38px;font-weight:bold;color:#222b38;font-family:"Outfit",sans-serif;letter-spacing:1px;text-decoration:none;pointer-events:none;line-height:1.2;}
.faqp-cta-desk p{margin-top:8px;font-size:15px;line-height:1.7;color:#222b38;}
.faqp-cta-apply{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:0 24px;}
.faqp-cta-apply p{font-size:22px;font-weight:bold;color:#222b38;}
.faqp-cta-apply a{display:inline-flex;align-items:center;justify-content:center;padding:16px 44px;background:#fff000;color:#222b38;font-size:20px;font-weight:bold;border-radius:40px;text-decoration:none;transition:opacity .3s;}
.faqp-cta-apply a:after{content:"";margin-left:14px;width:10px;height:10px;border-top:3px solid #222b38;border-right:3px solid #222b38;transform:rotate(45deg);}
.faqp-cta-apply a:hover{opacity:.85;}
.faqp-cta-notes{margin:56px auto 0;max-width:760px;color:#fff;}
.faqp-cta-notes p{display:flex;font-size:16px;line-height:1.8;}
.faqp-cta-notes p span{flex:none;width:18px;}

/* ============================================
   タブレット（〜1080px）
============================================ */
@media screen and (max-width:1080px){
	.faqp-hero{padding:44px 20px 50px;}
	.faqp-ttl{font-size:34px;}
	.faqp-cats{gap:16px;margin-top:36px;}
	.faqp-cats li a{padding:26px 12px 38px;}
	.faqp-cats li a span{font-size:16px;}
	.faqp-pickup,.faqp-result{padding:50px 20px 60px;}
	.faqp-secttl{font-size:30px;}
	.faqp.is-catview .faqp-body{gap:26px;padding:44px 20px 60px;}
	.faqp-side{width:250px;}
	.faqp-side a{font-size:14px;padding:15px 34px 15px 16px;}
	.faqp-catttl{font-size:19px;}
	.faqp-cta{padding:60px 20px 50px;}
	.faqp-cta-lead{font-size:20px;}
	.faqp-cta-tel a{font-size:32px;}
	.faqp-cta-apply p{font-size:19px;}
	.faqp-cta-apply a{font-size:18px;padding:14px 34px;}
}

/* ============================================
   SP（〜780px）
============================================ */
@media screen and (max-width:780px){
	.faqp-hero{padding:36px 16px 40px;}
	.faqp.is-catview .faqp-hero,
	.faqp.is-search .faqp-hero{padding:28px 16px 32px;}
	.faqp-ttl{font-size:7vw;letter-spacing:1px;margin-bottom:24px;}
	.faqp-ttl .spbr{display:block;}
	.faqp-search{padding:0 18px;border-radius:30px;}
	.faqp-search input{padding:14px 0;font-size:16px;}

	/* カテゴリカード → 全幅ボタン */
	.faqp-cats{grid-template-columns:1fr;gap:12px;margin-top:28px;}
	.faqp-cats li a{flex-direction:row;align-items:center;gap:16px;padding:14px 44px 14px 16px;border-radius:12px;}
	.faqp-cats li a figure{height:auto;width:52px;flex:none;justify-content:center;align-items:center;}
	.faqp-cats li a figure img{max-height:44px;max-width:52px;}
	.faqp-cats li a span{font-size:4.2vw;text-align:left;flex:1;}
	.faqp-cats li a:after{bottom:auto;top:50%;left:auto;right:20px;margin:-8px 0 0 0;width:9px;height:9px;}

	.faqp-pickup,.faqp-result{padding:40px 16px 50px;}
	.faqp-secttl{font-size:6vw;margin-bottom:24px;}
	.faqp .faq-q{padding:18px 6px;}
	.faqp .faq-a{padding:0 6px 22px;}

	/* カテゴリビュー：サイドバー → ドロップダウン */
	.faqp.is-catview .faqp-body{display:block;padding:32px 16px 50px;}
	.faqp-side{display:none;position:absolute;top:93px;left:16px;right:16px;width:auto;z-index:10;box-shadow:0 6px 18px rgba(0,0,0,.15);}
	.faqp-body.is-navopen .faqp-side{display:block;}
	.faqp-catttl{font-size:4.6vw;padding:15px 44px 15px 18px;cursor:pointer;}
	.faqp-catttl:after{display:block;}
	.faqp-body.is-navopen .faqp-catttl:after{margin-top:-2px;transform:rotate(-135deg);}

	/* CTA */
	.faqp-cta{padding:44px 16px 40px;background-size:auto 10px;}
	.faqp-cta:after{height:10px;background-size:auto 10px;}
	.faqp-cta-lead{font-size:4.6vw;text-align:left;}
	.faqp-cta-box{flex-direction:column;padding:28px 20px;gap:26px;margin-top:26px;}
	.faqp-cta-desk{border-right:none;border-bottom:1px solid #ddd;padding:0 0 26px;}
	.faqp-cta-desk h3{font-size:5vw;}
	.faqp-cta-tel i{width:32px;height:32px;}
	.faqp-cta-tel i svg{width:18px;height:18px;}
	.faqp-cta-tel a{font-size:8vw;pointer-events:auto;}
	.faqp-cta-desk p{font-size:3.6vw;}
	.faqp-cta-apply{padding:0;gap:14px;}
	.faqp-cta-apply p{font-size:5vw;}
	.faqp-cta-apply a{font-size:4.4vw;padding:3.6vw 10vw;}
	.faqp-cta-notes{margin-top:36px;}
	.faqp-cta-notes p{font-size:3.4vw;}
	.faqp-cta-notes p span{width:14px;}
}

/* 2026/08/14 カテゴリから探す見出し */
.faqp-cats-ttl{margin-top:52px;font-size:24px;font-weight:bold;color:#222b38;text-align:center;}
.faqp.is-catview .faqp-cats-ttl,.faqp.is-search .faqp-cats-ttl{display:none;}
@media screen and (max-width:780px){
	.faqp-cats-ttl{margin-top:40px;font-size:20px;}
}

/* 2026/08/14 メインビューで全カテゴリのQAを一覧表示（アイコン押下時は従来のカテゴリ別ビュー） */
.faqp:not(.is-catview):not(.is-search) .faqp-body{display:block;}
.faqp:not(.is-catview) .faqp-side{display:none;}
.faqp:not(.is-catview):not(.is-search) .faqp-cmain{max-width:1080px;margin:0 auto;}
.faqp:not(.is-catview):not(.is-search) .faqp-cat{display:block;}
.faqp:not(.is-catview):not(.is-search) .faqp-cat + .faqp-cat{margin-top:64px;}
.faqp.is-search .faqp-body{display:none;}
@media screen and (max-width:780px){
	.faqp:not(.is-catview):not(.is-search) .faqp-body{padding:32px 16px 50px;}
	.faqp:not(.is-catview):not(.is-search) .faqp-cat + .faqp-cat{margin-top:44px;}
}

/* 2026/08/14 カテゴリビュー用の戻るボタン */
.faqp-back--cat{display:none;}
.faqp.is-catview .faqp-back--cat{display:block;margin-top:48px;}

/* 2026/08/14 CTAボックス削除に伴う余白調整（商標注記のみのため） */
.faqp-cta-notes{margin-top:0;}

/* 2026/08/14 CTA削除分の高さ圧縮（商標注記のみのバンドとして再調整） */
.faqp-cta{padding:48px 40px 44px;}
@media screen and (max-width:1080px){
	.faqp-cta{padding:40px 20px 38px;}
}
@media screen and (max-width:780px){
	.faqp-cta{padding:28px 16px 26px;}
}
