@charset "utf-8";
/* =========================================================
   teppay 必要書類ページ 専用スタイル
   （style.css を読み込んだ上で追加で読み込む）
   ========================================================= */

/* ---- ページ全体（淡いミント背景） ---- */
.doc-main{background:#e7f5f2;padding:0 20px 90px;}
.doc-hero{text-align:center;padding:58px 10px 40px;}
.doc-hero h1{font-size:40px;font-weight:600;color:#1ab4ae;letter-spacing:2px;line-height:1.4;}

/* ---- カード共通 ---- */
.doc-card{max-width:1180px;margin:0 auto;background:#fff;border-radius:24px;padding:56px 70px 60px;}
.doc-card + .doc-card{margin-top:40px;}
.doc-inner{max-width:880px;margin:0 auto;}

/* ---- 個人事業主／法人 ブロック ---- */
.doc-block + .doc-block{margin-top:50px;}
.doc-block-head{
	background:#eceef0;border-radius:6px;
	text-align:center;padding:15px 10px;
	font-size:22px;font-weight:600;color:#1ab4ae;letter-spacing:2px;
}
.doc-block-body{display:flex;gap:50px;padding:30px 8px 6px;}
.doc-col{flex:0 0 auto;}
.doc-col--first{min-width:230px;}

/* 項目リスト */
.doc-items{margin:0;padding:0;list-style:none;}
.doc-item{position:relative;padding-left:30px;font-size:19px;font-weight:600;color:#2f3b4a;line-height:1.5;}
.doc-item + .doc-item{margin-top:28px;}
.doc-item::before{content:"";position:absolute;left:0;top:.45em;width:15px;height:15px;border-radius:50%;background:#1ab4ae;}

/* サブ項目（– ダッシュ） */
.doc-subitems{margin:14px 0 0;padding:0;list-style:none;}
.doc-subitems > li{position:relative;padding-left:26px;font-size:18px;font-weight:normal;color:#2f3b4a;line-height:1.5;}
.doc-subitems > li + li{margin-top:14px;}
.doc-subitems > li::before{content:"";position:absolute;left:0;top:.62em;width:14px;height:3px;border-radius:2px;background:#1ab4ae;}

/* ※注釈 */
.doc-note{display:block;margin-top:4px;font-size:13px;font-weight:normal;color:#888;letter-spacing:0;}

/* ---- 業種カード ---- */
.doc-gyoshu .doc-gyoshu-ttl{text-align:center;font-size:30px;font-weight:600;color:#1ab4ae;letter-spacing:2px;line-height:1.35;margin-bottom:30px;}
/* PC: 明示的4カラム（3/2/2/2） */
.doc-gyoshu-cols{display:flex;justify-content:center;gap:50px;}
.doc-gyoshu-cols .g-col{margin:0;padding:0;list-style:none;}
.doc-gyoshu-cols .g-col > li{font-size:19px;color:#2f3b4a;line-height:1;margin-bottom:22px;white-space:nowrap;}
/* SP用フラットリストはPCでは非表示 */
.doc-gyoshu-flat{display:none;}
.doc-gyoshu-desc{margin-top:30px;text-align:center;font-size:16px;color:#555;line-height:1.8;}

/* ---- フッター直前の商標バンド（CTAバンド内・teal）：CP版と共通 ---- */
.cp-trademark{margin-top:48px;color:#fff;font-size:15px;line-height:1.95;text-align:left;}
.cp-trademark p{margin:0;padding-left:1em;text-indent:-1em;}

/* ---- フッター：リンク2カラム：CP版と共通 ---- */
.cp-footer .footercon>dl>dd{width:auto;}
.cp-footer .footercon>dl>dd>ul{display:block;column-count:2;column-gap:90px;width:auto;}
.cp-footer .footercon>dl>dd>ul>li{margin:0 0 16px;line-height:1.4;white-space:nowrap;break-inside:avoid;}

/* =========================================================
   レスポンシブ
   ========================================================= */
@media screen and (max-width:1080px){
	.doc-hero h1{font-size:40px;}
	.doc-card{padding:46px 44px 50px;}
	.doc-block-head{font-size:21px;}
}
@media screen and (max-width:780px){
	.doc-main{padding:0 14px 56px;}
	.doc-hero{padding:34px 6px 26px;}
	.doc-hero h1{font-size:7.4vw;letter-spacing:1px;}

	.doc-card{border-radius:16px;padding:30px 20px 36px;}
	.doc-card + .doc-card{margin-top:28px;}
	.doc-block + .doc-block{margin-top:38px;}
	.doc-block-head{font-size:5.2vw;padding:14px 8px;}

	/* 項目は1カラムに */
	.doc-block-body{display:block;padding:24px 2px 4px;}
	.doc-col + .doc-col{margin-top:28px;}
	.doc-col--first{min-width:0;}
	.doc-item{font-size:5.4vw;padding-left:8vw;}
	.doc-item + .doc-item{margin-top:6vw;}
	.doc-item::before{width:4vw;height:4vw;top:.4em;}
	.doc-subitems > li{font-size:4.6vw;padding-left:7vw;}
	.doc-subitems > li::before{width:3.6vw;height:.7vw;top:.7em;}
	.doc-note{font-size:3.4vw;}

	/* 業種は2カラムに */
	.doc-gyoshu .doc-gyoshu-ttl{font-size:7vw;margin-bottom:6vw;}
	/* 業種：PCカラムを隠しフラット2カラムを表示 */
	.doc-gyoshu-cols{display:none;}
	.doc-gyoshu-flat{display:block;column-count:2;column-gap:4vw;max-width:96%;margin:0 auto;padding:0;list-style:none;}
	.doc-gyoshu-flat > li{font-size:5vw;color:#2f3b4a;line-height:1;margin-bottom:5vw;break-inside:avoid;white-space:nowrap;}
	.doc-gyoshu-desc{font-size:3.8vw;text-align:left;margin-top:6vw;}

	.cp-trademark{font-size:3.4vw;}
	.cp-footer .footercon>dl>dd>ul{column-gap:30px;}
	.cp-footer .footercon>.p01{margin-top:34px;}
}


/* === CTAバンドをTOPデザインに統一（白×黄枠ボックス） === */
/*.indexfive{padding:80px 40px;}
.indexfivecon{padding-top:0;}
.indexfivecon .cp-ctabox{margin:0 auto;padding:14px 28px;font-size:26px;color:#2f3b4a;font-weight:bold;text-align:center;background:#fff;border:3px solid #fff000;border-radius:10px;display:inline-block;line-height:1.55;}
.indexfivecon .cp-ctabox>span{display:block;color:#00a99d;font-size:24px;font-weight:bold;white-space:nowrap;}
.indexfivecon .cp-ctabox>span>em{font-size:13px;font-weight:bold;font-style:normal;color:#00a99d;}
@media screen and (max-width:780px){
	.indexfive{padding:44px 20px 56px;}
	.indexfivecon .cp-ctabox{font-size:4.8vw;padding:12px 16px;white-space:nowrap;}
	.indexfivecon .cp-ctabox>span{font-size:4.2vw;}
	.indexfivecon .cp-ctabox>span>em{font-size:3.6vw;}
}*/


.indexfive{position:relative;padding:80px 40px;background:#1cb5ae url(../img/bg01.png)repeat-x top;}
.indexfive:after{position:absolute;bottom:0;left:0;content:"";width:100%;height:20px;background: url(../img/bg01.png)repeat-x bottom;}
.indexfivecon{padding-top:40px;text-align:center;line-height:1;/*background:url(../img/bg02.jpg)no-repeat center center;background-size:cover;*/}
.indexfivecon>h3{font-size:44px;color:#fff;letter-spacing:2px;}
.indexfivecon>h3>span{font-size:50px;}
.indexfivecon>h2{margin-top:20px;font-size:46px;color:#ffff00;line-height:1.2;font-family:"Outfit", sans-serif;}
.indexfivecon>h2>span{position:relative;z-index:1;}
.indexfivecon>h2>span:before{display:none;position:absolute;bottom:7px;left:0;z-index:1;content:"";width:100%;height:10px;background:#008384;}
.indexfivecon>h2>span>em{position:relative;z-index:2;}
.indexfivecon>div{margin-top:80px;text-align:left;color:#fff;}
.indexfivecon>div>p{display:flex;justify-content:space-between;font-size:16px;line-height:1.6;}
.indexfivecon>div>p>span{width:18px;}
.indexfivecon>div>p>em{width:calc(100% - 18px);}
@media screen and (max-width:1520px){
	.indexfive{padding:60px 20px;}
	.indexfive:after{height:18px;}
	.indexfivecon{padding-top:30px;}
	.indexfivecon>h3{font-size:30px;letter-spacing:3px;}
	.indexfivecon>h3>span{font-size:40px;}
	.indexfivecon>h2{margin-top:40px;font-size:34px;}
	.indexfivecon>h2>span>em{letter-spacing:1px;}
	.indexfivecon>div{margin-top:40px;}
	.indexfivecon>div>p{font-size:14px;}
	.indexfivecon>div>p>span{width:16px;}
	.indexfivecon>div>p>em{width:calc(100% - 16px);}
}
@media screen and (max-width:1080px){
	.indexfive{padding:50px 20px;}
	.indexfive:after{height:16px;}
	.indexfivecon{padding-top:25px;}
	.indexfivecon>h3{font-size:26px;letter-spacing:2px;}
	.indexfivecon>h3>span{font-size:34px;}
	.indexfivecon>h2{margin-top:30px;font-size:30px;}
	.indexfivecon>h2>span>em{letter-spacing:0px;}
	.indexfivecon>div{margin-top:30px;}
	.indexfivecon>div>p{font-size:14px;}
	.indexfivecon>div>p>span{width:14px;}
	.indexfivecon>div>p>em{width:calc(100% - 14px);}
}
@media screen and (max-width:780px){
	.indexfive{padding:40px 20px;background-size:auto 10px;}
	.indexfive:after{height:10px;background-size:auto 10px;}
	.indexfivecon{padding:40px 0px;/*background:url(../img/bg02.jpg)repeat center center;background-size:100% auto;*/}
	.indexfivecon>h3{font-size:20px;line-height:1.4;letter-spacing:1px;}
	.indexfivecon>h3>span{display:block;font-size:30px;}
	.indexfivecon>h2>br{display:block;}
	.indexfivecon>h2{margin-top:20px;font-size:24px;line-height:1.3;}
	.indexfivecon>h2>span:before{height:6px;bottom:4px;}
	.indexfivecon>div{font-size:12vw;line-height:1.2;}
	.indexfivecon>div>br{display:block;}
	.indexfivecon>p{font-size:5vw;letter-spacing:1px;}
	.indexfivecon>div>p{font-size:12px;}
	.indexfivecon>div>p>span{width:12px;}
	.indexfivecon>div>p>em{width:calc(100% - 12px);}
}