@charset "utf-8";
/* CSS Document */
/*★★★★★★★★テンプレート[始]★★★★★★★★*/

/*===============================================
	reset
===============================================*/
*{margin:0; padding:0; color:#000;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
} 
h1,h2,h3,h4,h5,h6,p,address,
ul,ol,li,dl,dt,dd,
table,caption,th,td,img,form{margin:0; padding:0; border:none; font-style:normal; font-weight:normal; font-size:100%; text-align:left;}
textarea{font-size:100%;}
img{vertical-align:bottom;}
li{list-style:none;}
/*===============================================
	a,text
===============================================*/
a:hover{text-decoration:underline;}
a{text-decoration:none; color:#1800ff;}
/*=============================================== 
	base
===============================================*/
html,body{height:100%;}
/*===============================================
	font
===============================================*/
body{font-family: 'Noto Sans JP', sans-serif;}
input,textarea,select{font-family: 'Noto Sans JP', sans-serif; font-size:12px;}
/* for IE6 */
* html body{font-family: 'Noto Sans JP', sans-serif;}
* html input, * html textarea{font-family: 'Noto Sans JP', sans-serif;}
h1,h2,h3,h4{font-family: 'Noto Sans JP', sans-serif; font-weight: bold; }
.mincho{font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;}
/*===============================================
	align
===============================================*/
.center{text-align:center !important; margin: 0 auto !important;}
.textleft{text-align:left !important;}
.textright{text-align:right !important;}

/*===============================================
	他span
===============================================*/
.underL{text-decoration:underline !important;}
.displayN{display:none !important;}
.bold{font-weight:bold !important;}

/*===============================================
	cFix
===============================================*/
/*Opera Fix*/
body:before{content:""; height:100%; float:left; width:0; margin-top:-32767px;}
/*cFix*/
.cFix:after {content:"."; display:block; height:0; clear:both; visibility:hidden;}
* html .cFix {height:1%;}
.cFix {display:block;}

/*===============================================
	共通部分
===============================================*/

/* img mouse hover */
a:hover img {opacity: 0.7;filter: alpha(opacity=70);-ms-filter: "alpha(opacity=70)";}
.sp{display:none;}
.pc{display: inline;}
p{line-height: 2rem;}
.mb20{margin-bottom: 20px !important;}
.mt80{margin-top: 80px !important;}
.under_red{text-decoration: underline; text-decoration-color: red; text-decoration-style: double; }



@media screen and (max-width:640px) {
	#wrap{width: 100%;}
	p{font-size: 0.9rem; line-height: 1.8rem;}
	.sp{display:inline;}
	.pc{display:none !important;}

}

	
/*===============================================
	個別
===============================================*/


/*2カラム*/
#wrap{
	width: 85%;
	min-width: 1200px;
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	margin: 0 auto;
}
#body{
	width: 70%;
}
#body2{
	width: 70%;
}
#fix_form_area{
	width: 30%;

}

@media screen and (max-width:640px) {
	#wrap{
		width: 100%;
		min-width: 100%;
	}
	#body{
		width: 100%;
	}
	#body2{
		width: 100%;
	}
	#fix_form_area{
		width: 100%;
		background: #D5E6EF;
	}
}


/*ヘッダー*/
header{
	width: 100%;
	padding: 10px;
	position: relative;
	height: 95px;
}
header .logo{
	position: absolute;
	left: 0%;
	top: 15px;
	width: 270px;
}
header .award{
	position: absolute;
	left: 300px;
	top: 5px;
	width: 550px;
/*	max-width: 600px;*/
/*	min-width: 550px;*/
}
header .tel{
	position: absolute;
	right: 3%;
	top: 10px;
	width: 300px;
}
header .logo img,header .tel img,header .award img{
	width: 100%;
}
@media screen and (max-width:640px) {
	header{
		width: 100%;
		padding: 0;
		position: relative;
		height: 16vw;
	}
	header .logo{
		left: 1.5%;
		top: 15px;
		width: 28%;
	}
	header .tel{
		right: 1.5%;
		top: 8px;
		width: 9%;
		position: fixed;
		opacity: 0.7;filter: alpha(opacity=70);-ms-filter: "alpha(opacity=70)";
	}
	header .award{
		left: 4%;
		top: 10px;
		width: 80%;
	}
}



/*FV*/
#main{
	width: 100%;
}
#main img{
	width: 100%;
}
@media screen and (max-width:640px) {
}



/*事業の未来を拓く、戦略的M&A*/
#cnt1{
	width: 100%;
	background: url(../img/cnt1BG.png) no-repeat;
	background-size: cover;
	padding: 60px 0 0;
}
#cnt1 h2{
	font-size: 2.5vw;
	text-align: center;
	letter-spacing: 3px;
	color: #fff;
	margin-bottom: 20px;
}
#cnt1 h2 span{
	color: #ff0;
}
#cnt1 .read{
	text-align: center;
	font-size: 1.5vw;
	font-weight: 600;
	color: #fff;
	letter-spacing: 3px;
	margin-bottom: 50px;
}
#cnt1 .img{
	width: 100%;
	margin-bottom: -50px;
	padding: 0 20px;
}
#cnt1 .img img{
	width: 100%;
}
@media screen and (max-width:640px) {
	#cnt1{
		width: 100%;
		background: url(../img/cnt1BGSP.png) no-repeat;
		background-size: cover;
		padding: 60px 10px 0;
	}
	#cnt1 h2{
		font-size: 2rem;
	}
	#cnt1 .read{
		font-size: 1rem;
		letter-spacing: 0;
		margin-bottom: 30px;
	}
}




/*3つの確かな未来*/
#cnt2{
	width: 100%;
	background: #E8F6FF;
	background-size: cover;
	padding: 60px 0;
}
#cnt2 h2{
	font-size: 2.5vw;
	text-align: center;
	letter-spacing: 3px;
	color: #014BFF;
	margin-bottom: 60px;
}
#cnt2 .read{
	text-align: center;
	font-size: 1.5vw;
	font-weight: 600;
	color: #000;
	letter-spacing: 3px;
	margin-bottom: 0;
	line-height: 2vw;
}
#cnt2 .img{
	width: 100%;
}
#cnt2 .img img{
	width: 100%;
}
@media screen and (max-width:640px) {
	#cnt2 .read{
		letter-spacing: 0;
	}
	#cnt2 h2{
		margin-bottom: 40px;
		font-size: 2rem;
	}
	#cnt2 .read{
		font-size: 1rem;
		line-height: 1.5rem;
	}

}

/*4つの戦略*/
#cnt3{
	width: 100%;
	background: url(../img/cnt3BG.png);
	background-size: cover;
	padding: 80px 20px 40px;
}
#cnt3 h2{
	font-size: 2.5vw;
	text-align: center;
	letter-spacing: 3px;
	color: #ff0;
	margin-bottom: 60px;
}
#cnt3 .read{
	text-align: center;
	font-size: 1.5vw;
	font-weight: 600;
	color: #fff;
	letter-spacing: 3px;
	margin-bottom: 0;
	line-height: 2vw;
}
#cnt3 .img{
	width: 100%;
}
#cnt3 .img img{
	width: 100%;
}
@media screen and (max-width:640px) {
	#cnt3{
		width: 100%;
		background: url(../img/cnt3BGSP.png);
		background-size: cover;
		padding: 80px 20px 20px;
	}
	#cnt3 h2{
		margin-bottom: 40px;
		font-size: 2rem;
	}
	#cnt3 .read{
		letter-spacing: 0;
		font-size: 1rem;
		line-height: 1.5rem;
	}

}



/*M&A成功事例紹介*/
#cnt4{
	width: 100%;
	background: url(../img/cnt4BG.png), #153A94;
	background-size: contain;
	padding: 80px 40px;
}
#cnt4 h2{
	font-size: 2.5vw;
	text-align: center;
	letter-spacing: 3px;
	color: #fff;
	border-top: 1px solid #fff ;
	border-bottom: 1px solid #fff ;
	width: 50%;
	margin: 0 auto 60px;
	padding: 20px 0;
}
#cnt4 .read{
	text-align: center;
	font-size: 1.5vw;
	font-weight: 600;
	color: #fff;
	letter-spacing: 3px;
	margin-bottom: 10px;
}
#cnt4 h3{
	width: 100%;
	background: #014BFF;
	padding: 20px;
	color: #fff;
	text-align: center;
	font-size: 1.6vw;
	font-weight: 600;
	border-radius: 50px;
	margin-bottom: 30px;
	letter-spacing: 2px;
}
#cnt4 h3:hover{
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
}
#cnt4 h3:first-child:hover{
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
}
#cnt4 .img{
	width: 100%;
	margin-bottom: 70px;
}
#cnt4 .img img{
	width: 100%;
}
#cnt4 .img:nth-of-type(3){
	margin-bottom: 0;
}
/*#cnt4 .case_ttl::hover{
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
}*/

#cnt4 .case_ttl {
	text-align: center;
	display: inline-block;
	width: 100%;
	margin: 20px auto;
	position: relative;
	margin-bottom: 20px;
	border-radius: 50px;
	border: 4px solid #fff;
	font-size: 1.5vw;
	padding: 20px;
	letter-spacing: 2px;
	font-weight: bold;
	color: #fff;
}
#cnt4 .case_ttl:hover{
	opacity: 0.7;
}
#cnt4 .case_ttl::before,#cnt4 .case_ttl::after  {
	content: '';
	display: inline-block;
	width: 20px;
	height: 3px;
	background-color: #fff;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
	transition: opacity .5s;
}
#cnt4 .case_ttl::after { transform: translateY(-50%) rotate(90deg); transition: transform .5s;}
#cnt4 .case_ttl.show::before {opacity: 0;}
#cnt4 .case_ttl.show::after { transform: translateY(-50%) rotate(180deg);}
#cnt4 .case_cnt{display: none;}

@media screen and (max-width:640px) {
	#cnt4{
		padding: 60px 0;
	}
	#cnt4 .img{
		width: 100%;
		margin-bottom: 50px;
		padding: 0 20px;
	}
	#cnt4 .img img{
		margin-bottom: 20px;
	}
	#cnt4 h2{
		font-size: 2rem;
		width: 100%;
		width: 80%;
	}
	#cnt4 .read{
		font-size: 1rem;
	}
	#cnt4 h3{
		padding: 10px;
		font-size: 1.1rem;
		border-radius: 50px;
		margin-bottom: 30px;
		letter-spacing: 0;
	}
	#cnt4 .case_ttl{
		border-radius: 50px;
		font-size: 1rem;
		padding: 10px;
		letter-spacing: 2px;
		margin: 0 auto 10px;
		border: 3px solid #fff;
	}
	#cnt4 .case_ttl::before,#cnt4 .case_ttl::after  {
		width: 13px;
		height: 2px;
		right: 4%;
		top: 50%;
	}

}




/*M&A支援の流れ・料金体系*/
#cnt5{
	width: 100%;
	background: url(../img/cnt5BG.png);
	background-size: cover;
	padding: 80px 40px;
}
#cnt5 h2{
	font-size: 2.5vw;
	text-align: center;
	letter-spacing: 3px;
	color: #014BFF;
	margin-bottom: 30px;
}
#cnt5 .img{
	width: 100%;
}
#cnt5 .img img{
	width: 100%;
}
@media screen and (max-width:640px) {
	#cnt5{
		padding: 60px 20px;
	}
	#cnt5 h2{
		font-size: 2rem;
	}
}

/*ポリシー*/
#cnt6{
	width: 100%;
	background: url(../img/cnt6BG.png) no-repeat top,#14398B;
	background-size: cover;
	padding: 80px 40px;
}
#cnt6 h2{
	font-size: 2.5vw;
	text-align: center;
	letter-spacing: 3px;
	color: #fff;
	margin-bottom: 30px;
}
#cnt6 .read{
	text-align: center;
	font-size: 1.25vw;
	font-weight: 600;
	color: #fff;
	letter-spacing: 2px;
	margin: 0 auto 50px;
	border-top: 1px solid #fff ;
	border-bottom: 1px solid #fff ;
	width: 90%;
	padding: 20px 0;
}
#cnt6 .img{
	width: 90%;
	margin: 0 auto 80px;
}
#cnt6 .img img{
	width: 100%;
}
#cnt6 .price{
	width: 90%;
	margin: 0 auto;
}
#cnt6 h3{
	text-align: center;
	font-size: 30px;
	font-weight: 600;
	color: #fff;
	margin-bottom: 30px;
}
#cnt6 .price table {
	width: 100%;
	border: 1px solid #fff;
	margin-bottom: 10px;
}
#cnt6 .price table th{
	color: #fff;
}
#cnt6 .price table td{
	background: #fff;
}
#cnt6 .price table th,#cnt6 .price table td{
	text-align: center;
	font-size: 18px;
	padding: 20px 0;
}
#cnt6 .price table span{
	color: #DE0909;
	font-weight: 600;
}
#cnt6 .price .tesuryo{
	color: #fff;
	font-size: 14px;
}
#cnt6 .price .fukidashi {
  position: relative;
  display: inline-block;
  width: 100%;
  margin-top: 20px;
  padding: 20px 30px;
  border-radius: 8px;
  background-color: #fff;
  text-align: left;
  font-size: 18px;
  font-weight: 400;
  line-height: 2;
  color: #000000;
  font-weight: 500;
}

#cnt6 .price .fukidashi::after {
  content: "";
  position: absolute;
  top: 0;
  left: 10%;
  border-style: solid;
  border-width: 0 10px 20px 10px;
  border-color: transparent transparent #fff;
  translate: -50% -100%;
}
#cnt6 .price span{
	font-weight: bold;
	color: #014BFF;
}
@media screen and (max-width:640px) {
	#cnt6{
		padding: 60px 20px;
	}
	#cnt6 h2{
		font-size: 2rem;
	}
	#cnt6 .read{
		font-size: 1rem;
		width: 100%;
		letter-spacing: 0;
		margin: 0 auto 30px;
	}
	#cnt6 .img{
		width: 100%;
		margin: 0 auto 50px;
	}
	#cnt6 .price{
		width: 100%;
		margin: 0 auto;
		overflow-y: scroll;
	}
	#cnt6 .price table{
		width: 135%;
	}
	#cnt6 .price table th,#cnt6 .price table td{
		padding: 10px;
		font-size: 1rem;
	}
	#cnt6 .price .fukidashi {
		font-size: 16px;
	}
}




/*精鋭M&Aチーム*/
#cnt7{
	width: 100%;
	background: url(../img/cnt7BG.png) no-repeat,#14398B;
	background-size: cover;
	padding: 80px 0;
}
#cnt7 h2{
	font-size: 2.5vw;
	text-align: center;
	letter-spacing: 3px;
	color: #fff;
	margin-bottom: 50px;
}
#cnt7 .read{
	text-align: center;
	font-size: 1.5vw;
	font-weight: 600;
	color: #fff;
	letter-spacing: 2px;
	margin: 0 auto 10px;
}
#cnt7 ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#cnt7 li{
	width: 100%;
	margin: 0 0 30px;
}
#cnt7 li img{
	width: 100%;
}
#cnt7 .area{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 50px;
}
#cnt7 .member{
	width: 450px;
	min-height: 480px;
	margin: 0 20px;
}
#cnt7 .member img{
	width: 100%;
}
#cnt7 .img{
	width: 100%;
	margin: 0 auto 40px;
	padding: 0 40px;
}
#cnt7 .img img{
	width: 100%;
}
#cnt7 .img2{
	width: 100%;
	margin: 0 auto;
	padding: 0 40px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#cnt7 .img2 img{
	width: 100%;
}
@media screen and (max-width:640px) {
	#cnt7{
		padding: 60px 0 0;
	}
	#cnt7 h2{
		font-size: 2rem;
	}
	#cnt7 .read{
		font-size: 1rem;
	}
	#cnt7 .member{
		width: 450px;
		min-height: 480px;
		margin: 0 20px;
	}
	#cnt7 ul{display: flex; flex-wrap: wrap; justify-content: center;}
	#cnt7 li{width: 100%; margin: 0 0 30px;}
	#cnt7 li img{width: 100%;}
	#cnt7 .area{width: 100%; display: flex; flex-wrap: wrap; margin-bottom: 50px;}
	#cnt7 .member{width: 300px; min-height: 300px; margin: 0 10px;}
	#cnt7 .member img{width: 100%;}
	#cnt7 .img{
		margin: 0 auto 40px;
		padding: 0 20px;
	}
	#cnt7 .img2{
		margin: 0 auto;
		padding: 0 20px;
	}
	#cnt7 .img2 img{
		width: 100%;
		margin-bottom: 40px;
	}
}


/*よくある質問*/
#faq{
	width: 100%;
	padding: 80px 0;
	background: #F0FDFF;
}
#faq .in{
	width: 80%;
	margin: 0 auto;
}
#faq h2{
	font-size: 2.5vw;
	text-align: center;
	letter-spacing: 3px;
	color: #000;
	margin-bottom: 50px;
}
#faq .faq__Q {
	cursor: pointer;
	font-size: 1.1rem;
	padding: 13px 30px 17px 15px;
	width: 100%;
	position: relative;
	margin-bottom: 30px;
	background: #fff;
	display: block;
	font-weight: bold;
	line-height: 2rem;
	border-radius: 5px;
}
#faq .faq__Q:hover {
	text-decoration: underline;
}
#faq .faq__Q:before{
	content: "Q.";
	position: absolute;
	top: 13px;
	font-size: 1.5rem;
	color: #014BFF;
}
#faq .faq__Q:after {
	width: 0;
	height: 0;
	position: absolute;
	top: 46%;
	right: 3%;
	border: 8px solid transparent;
	border-top-color: #014BFF;
	content: '';
}
#faq .faq__A {
	display: none;
	padding:0 0 10px 15px;
	width: 100%;
	font-size: 1.1rem;
	line-height: 2rem;
	margin: 0 auto 50px;
	color: #000;
	position: relative;
}
#faq .faq__Q p{
	color: #000;
	padding:3px 0 0 40px;
}
#faq .faq__A p{
	color: #000;
	padding:3px 0 0 40px;
}
#faq .faq__A:before{
	content: "A.";
	position: absolute;
	top: 2px;
	font-size: 1.5rem;
	font-weight: bold;
	color: #014BFF;
}
@media screen and (max-width:640px) {
	#faq{
		width: 100%;
		position: relative;
		padding: 60px 0;
	}
	#faq h2{
		display: block;
		text-align: center;
		margin: 0 auto 30px;
		width: 100%;
		font-size: 2rem;
	}
	#faq h2 img{
		width: 100%;
	}
	#faq .in{
		width: 100%;
		margin: 0 auto;
		padding: 0 5%;
	}
	#faq .faq__Q {
		cursor: pointer;
		color: #000;
		font-size: 1rem;
		padding: 13px 30px 17px 10px;
		width: 100%;
		position: relative;
		border-radius: 10px;
		display: block;
		font-weight: bold;
		line-height: 2rem;
		margin-bottom: 20px;
	}
	#faq .faq__Q:hover {
	 text-decoration: underline;
	}
	#faq .faq__Q:before{
		position: absolute;
		background-size: contain;
		position: absolute;
		top: 50%;
		font-size: 1.5rem;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
	}
	#faq .faq__Q:after {
		width: 0;
		height: 0;
		position: absolute;
		top: 46%;
		right: 3%;
		border: 8px solid transparent;
		border-top-color:#014BFF;
		content: '';
	}
	#faq .faq__Q p{
		padding:3px 0 0 30px;
		line-height: 1.2rem;
		font-weight: bold;
	}
	#faq .faq__A {
		display: none;
		padding:0 0 10px 11px;
		width: 100%;
		font-size: 0.9rem;
		line-height: 2rem;
		margin: 0 auto 30px;
		color: #fff;
	}
	#faq .faq__A p{
		padding:3px 0 0 30px;
		line-height: 1.5rem;
	}
	#faq .faq__A:before{
		position: absolute;
		background-size: contain;
		font-size: 1.3rem;
	}
	#faq .faq__A a{
		color: #F9F392;
	}
}



/*精鋭M&Aチーム*/
#cnt8{
	width: 100%;
	background: url(../img/cnt8BG.png) no-repeat,#14398B;
	background-size: cover;
	padding: 80px 0;
}
#cnt8 h2{
	font-size: 2.5vw;
	text-align: center;
	letter-spacing: 3px;
	color: #fff;
	margin-bottom: 20px;
}
#cnt8 .read{
	text-align: center;
	font-size: 1.5vw;
	font-weight: 600;
	color: #fff;
	letter-spacing: 2px;
	margin: 0 auto 10px;
	line-height: 2vw;
}
#cnt8 .read span{
	color: #ff0;
}
#cnt8 .read2{
	text-align: center;
	font-size: 1.2vw;
	font-weight: 600;
	color: #fff;
	letter-spacing: 2px;
	margin: 0 auto 50px;
	line-height: 2vw;
}
#cnt8 .img{
	width: 100%;
	margin: 0 auto 60px;
	padding: 0 40px;
}
#cnt8 .img img{
	width: 100%;
}
#cnt8 .img2{
	width: 100%;
	margin: 0 auto 40px;
	padding: 0 40px;
}
#cnt8 .img2 img{
	width: 100%;
}
#cnt8 .tel{
	width: 100%;
	margin: 0 auto 40px;
	padding: 0 40px;
}
#cnt8 .tel img{
	width: 100%;
}
@media screen and (max-width:640px) {
	#cnt8{
		padding: 60px 0 1px;
	}
	#cnt8 h2{
		font-size: 2rem;
	}
	#cnt8 .read{
		font-size: 1.4rem;
		letter-spacing: 0;
		line-height: 2.2rem;
	}
	#cnt8 .read2{
		font-size: 1rem;
		letter-spacing: 0;
		line-height: 1.5rem;
	}

	#cnt8 .img{
		margin: 0 auto 40px;
		padding: 0 20px;
	}
	#cnt8 .img2{
		width: 100%;
		margin: 0 auto 40px;
		padding: 0;
		overflow: scroll;
	}
	#cnt8 .img2 img{
		width: 800px;
		padding: 0 20px;
	}
}



#about{background: #fff; padding: 50px 0; }
#about .in{width: 950px; margin: 0 auto; }
#about h2{text-align: center; font-size: 2rem; letter-spacing: 3px; color: #000;}
#about .border{width: 100px; margin: 20px auto 10px; border-bottom:1px solid #000; }
#about .sub{text-align: center; font-size: 1.2rem; letter-spacing: 3px; color: #FFC685; margin-bottom: 20px;}
#about table{width: 700px; margin: 20px auto 0;}
#about table th{font-weight: bold; width: 25%;}
#about table th,#about table td{border-bottom: 1px solid #000; margin-bottom: 20px; padding: 15px 0;}
#about a{color: #139e66;}
#about p{text-align: center; padding: 10px 0;}
@media screen and (max-width:640px) {
	#about{background: #fff; padding: 30px 5%; }
	#about .in{width: 100%;}
	#about h2{text-align: center; font-size: 1.3rem; letter-spacing: 1px;}
	#about .border{width: 100px; margin: 20px auto 10px; border-bottom:1px solid #000; }
	#about .sub{text-align: center; font-size: 1.2rem; letter-spacing: 1px; color: #FFC685; margin-bottom: 0;}
	#about table{width: 100%; margin: 0 auto;}
	#about table th{font-weight: bold; width: 25%;}
	#about table th,#about table td{border-bottom: 1px solid #000; margin-bottom: 20px; padding: 15px 0; font-size: 0.9rem;}
}



/*===============================================
	サンクスページ
===============================================*/
#thanks {width: 100%;}

#thanks #complete {
	padding: 100px 0;
	width: 60%;
	margin: 0 auto ;
}
#thanks #complete h2{
	text-align: center;
	font-weight: bold;
	font-size: 2rem;
	margin-bottom: 50px;
	color: #0f1e3c; /* TOPとトンマナ統一：紺見出し */
}
#thanks #complete p{
	text-align: center;
	font-size: 1.2rem;
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid #ddd;
	color: #333;
}
#thanks #complete a{
	color: #c8a046; /* TOPのアクセント=ゴールド */
	font-weight: bold;
	word-break: break-all;
}
#thanks #complete a:hover{
	opacity: .8;
}
#thanks #about .in{
	width: 100%;
	margin: 0 auto;
}
@media screen and (max-width:640px) {
	#thanks #complete {
		padding: 30px 5% 20px;
		width: 100%;
	}
	#thanks #complete h2{
		font-size: 1.5rem;
		margin-bottom: 30px;
	}
	#thanks #complete p{
		font-size: 1rem;
		margin-bottom: 20px;
		padding-bottom: 20px;
	}

}




/*===============================================
	フォーム部分
===============================================*/

#fix_form_area .form_cnt{
	background: #fff;
	padding: 0 20px 20px;
}
#fix_form_area .form_cnt h2{
	font-size: 1.5vw;
	text-align: center;
	color: #0f1e3c;
	font-weight: bold;
	margin-bottom: 8px;
	border-bottom: 1px solid #0f1e3c;
	padding-bottom: 8px;
}
#fix_form_area .form_cnt p{
	font-size: 1.2vw;
	font-weight: bold;
	line-height: 1.8vw;
}
#fix_form_area .form_cnt_form{
    position:fixed;
    top:90px; /* 初期値＝header高さ（見出し廃止後）。スクロール時はJSが0pxへ吸着 */
    width:28%;
    height:100%;
    transition:top 0.1s ease;
    background:#f5f5f5;
}

#fix_form_area iframe{
    width:100%;
    height:100%;
    border:none;
}

@media screen and (max-width:640px) {
	#fix_form_area .form_cnt_form{
		position: static;
		top: auto;
		width: 100%;
		height: auto;
	}
	#fix_form_area iframe{
		min-height: 185vw;
		height: auto;
		width: 100%;
	}
	#fix_form_area .form_cnt{
	background: #fff;
	padding: 20px;
	}
	#fix_form_area .form_cnt h2{
		font-size:1.3rem;
		color: #1551CC;
		font-weight: bold;
		margin-bottom: 8px;
		border-bottom: 1px solid #1551CC;
		padding-bottom: 8px;
	}
	#fix_form_area .form_cnt p{
		font-size: 1.1rem;
		font-weight: bold;
		line-height: 1.8rem;
	}
}




/*コピーライト*/
#cnt_copy{width: 100%;}
#cnt_copy p{background: #0f1e3c; text-align: center; padding: 10px; color: #fff;}
@media screen and (max-width:640px) {
	/*コピーライト*/
	#cnt_copy p{font-size: 0.8rem; padding: 10px 0; background: #0f1e3c;}
}



#cta_sp{display: none;}
#cta_sp p{display: none;}
#cta_sp a{display: none;}
#cta_sp img{display: none;}
@media screen and (max-width:640px) {
	/*cta_sp*/
	#cta_sp{
		display: block;
		position: fixed;
		width: 100%;
		bottom: 0;
		z-index: 9999;
		padding: 15px 0;
/*		height: 37vw;*/
		background: #0C1E4F;
		text-align: center;
		background-color: rgba(12, 30, 79, 0.8);
	  opacity: 0;
	  pointer-events: none;
	  transition: opacity .3s ease;
	}
	#cta_sp.is-active {
	  opacity: 1;
	  pointer-events: auto;
	}
	#cta_sp p{
		display: inline-block;
	}
	#cta_sp .ttl{
		font-weight: bold;
		font-size: 1.1rem;
		color: #fff;
		letter-spacing: 0;
		margin-bottom: 8px;
	}
	#cta_sp .ttl span{
		font-weight: bold;
		font-size: 1.1rem;
		color: #FFFF00;
		letter-spacing: 0;
	}

	#cta_sp .mail{
		width: 90%;
		margin: 0 auto;
	}
	#cta_sp img{
		width: 100%;
		display: block;
	}
	#cta_sp a{
		position: relative;
		display: block;
		width: 100%;
		overflow: hidden;}
	#cta_sp a::after {
		content: '';
		position: absolute;
		top: -10%;
		left: -20%;
		width: 40px;
		height: 100%;
		transform: scale(2) rotate(20deg);
		background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);
		/* アニメーション */
		animation-name: shiny;
		animation-duration: 3s;
		animation-timing-function: ease-in-out;
		animation-iteration-count: infinite;}
	@keyframes shiny {
		0% { left: -20%; }
		10% { left: 120%; }
		100% { left: 120%; }
	}
	#cta_sp2 .cta_sp2_line{position: fixed; bottom: 23vw; right: 1vw; width: 34vw; z-index: 9999; display: block;}
	#cta_sp2 .cta_sp2_line img{width: 100%;}
}



@media screen and (max-width:640px) {

	/*===============================================
	ハンバーガーアイコンをCSSだけで表現
	===============================================*/
	#nav-drawer {position: relative;}
	/*アイコンのスペース*/
	#nav-open {
	  display: inline-block;
	  width: 30px;
	  height: 22px;
	  vertical-align: middle;
	  position: fixed;
	  top: 10px;
	  right: 10px;
	  z-index: 9999;
	}
	#nav-open span, #nav-open span:before, #nav-open span:after {
	  position: absolute;
	  height: 4px;/*線の太さ*/
	  width: 30px;/*長さ*/
	  border-radius: 3px;
	  background: #fff;
	  display: block;
	  content: '';
	  cursor: pointer;
	}
	#nav-open span:before {
	  bottom: -8px;
	}
	#nav-open span:after {
	  bottom: -16px;
	}
	/*閉じる用の薄黒カバー*/
	#nav-close {
	  display: none;/*はじめは隠しておく*/
	  position: fixed;
	  z-index: 99;
	  top: 0;/*全体に広がるように*/
	  left: 0;
	  width: 100%;
	  height: 100%;
	  background: black;
	  opacity: 0;
	  transition: .3s ease-in-out;
	}
	/*中身*/
	#nav-content {
	  overflow: auto;
	  position: fixed;
	  top: 0;
	  right: 0;
	  z-index: 9999;/*最前面に*/
	  width: 60%;/*右側に隙間を作る（閉じるカバーを表示）*/
	  max-width: 330px;/*最大幅（調整してください）*/
	  height: 100%;
	  background: #fff;/*背景色*/
	  transition: .3s ease-in-out;/*滑らかに表示*/
	  -webkit-transform: translateX(105%);
	  transform: translateX(105%);/*左に隠しておく*/
	}
	/*チェックが入ったらもろもろ表示*/
	#nav-input:checked ~ #nav-close {
	  display: block;/*カバーを表示*/
	  opacity: .5;
	}
	#nav-input:checked ~ #nav-content {
	  -webkit-transform: translateX(0%);
	  transform: translateX(0%);/*中身を表示（右へスライド）*/
	  box-shadow: 6px 0 25px rgba(0,0,0,.15);
	  background: #000;
	  background: rgba(0,0,0,0.3);
	  z-index: 99999;
	}
	/*チェックボックス等は非表示に*/
	.nav-unshown {
	  display:none;
	}
	.MainImage_navi li{background: #fff; width: 80%; margin:13px auto; text-align: center; font-size: 0.9rem;}
	.MainImage_navi li a{ color: #000; width: 100%; display: block; padding: 5px; font-size: 0.9rem;}
	.MainImage_navi .MainImage_navi_link{background: none;}
	.MainImage_navi .MainImage_navi_link a{width: 100%; padding: 0;}
	.MainImage_navi .MainImage_navi_link img{width: 100%;}
	/*===============================================
	ハンバーガーアイコン終わり
	===============================================*/

	/*20250123追加*/
	#chart{width: 100%; background: #fff; padding: 30px 5%;}
	#chart .in{width: 100%; margin: 0 auto;}
	#chart .in img{width: 100%;}
	#chart h2{font-size: 1.3rem; letter-spacing: 1px; position: relative; margin-bottom: 30px;}
	#chart h2::after{position: absolute; content: ""; left: 0; right: 0; margin: 0 auto; display: block; border-bottom: 1px solid #fff;
	 width: 100px; padding-bottom: 10px;}
}




/*===============================================
	DD LP（Frame4）追加分
===============================================*/

/* 画像セクション共通：隙間なくフラットに連結 */
#body .dd,
#body a.dd{
	display: block;
	width: 100%;
	font-size: 0;
	line-height: 0;
}
#body .dd img{
	width: 100%;
	display: block;
}
#body a.dd{
	transition: opacity .3s;
}
#body a.dd:hover img{
	opacity: .85;
}

/* 「実際の成果」白背景でカードを連結 */
/*===============================================
	業界を知る専門家が、直接担当します。（テキストコーディング＋横スライド）
===============================================*/
#dd_team{
	background: #0f1e3c;
	padding: 64px 40px 70px;
}
#dd_team .team_head{
	text-align: center;
	margin-bottom: 40px;
}
#dd_team .team_head h2{
	display: inline-block;
	text-align: center;
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 3px;
	padding-bottom: 16px;
	border-bottom: 1px solid rgba(255,255,255,.5);
}
#dd_team .team_head .lead{
	text-align: center;
	color: #cfd5e0;
	font-size: 15px;
	line-height: 1.9;
	margin-top: 22px;
}
#dd_team .team_carousel{
	position: relative;
	width: 93%;
	margin: 0 auto 50px;
}
#dd_team .tc_track{
	display: flex;
	gap: 24px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	padding: 4px 2px 10px;
	-ms-overflow-style: none;
	scrollbar-width: none;
}
#dd_team .tc_track::-webkit-scrollbar{
	display: none;
}
#dd_team .tcard{
	flex: 0 0 calc(50% - 12px);
	scroll-snap-align: start;
	box-sizing: border-box;
	background: #0f1e3c;
	border: 1px solid #c8a046;
	border-radius: 12px;
	padding: 24px;
}
#dd_team .tcard_top{
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin-bottom: 16px;
}
#dd_team .tcard_meta{
	flex: 1;
	min-width: 0;
}
#dd_team .tcard_meta h3{
	color: #fff;
	font-size: 26px;
	font-weight: bold;
	letter-spacing: 2px;
	line-height: 1.3;
}
#dd_team .tcard_meta .romaji{
	display: block;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	letter-spacing: 1px;
	margin: 3px 0 14px;
}
#dd_team .tcard_meta .role{
	display: block;
	color: #e8eaf0;
	font-size: 14px;
	line-height: 1.7;
}
#dd_team .tcard_photo{
	flex: 0 0 140px;
}
#dd_team .tcard_photo img{
	width: 140px;
	display: block;
}
#dd_team .tcard_bio{
	background: #1a2f50;
	border-radius: 8px;
	padding: 18px 20px;
	color: #fff;
	font-size: 13.5px;
	line-height: 1.85;
}
#dd_team .tc_arrow{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 3;
	width: 46px;
	height: 46px;
	border: none;
	border-radius: 50%;
	background: #c8a046;
	color: #0f1e3c;
	font-size: 26px;
	line-height: 1;
	font-weight: bold;
	cursor: pointer;
	box-shadow: 0 2px 8px rgba(0,0,0,.4);
	transition: opacity .3s;
}
#dd_team .tc_arrow:hover{
	opacity: .8;
}
#dd_team .tc_prev{
	left: -14px;
}
#dd_team .tc_next{
	right: -14px;
}
#dd_team .team_group{
	width: 100%;
	max-width: none;
	margin: 0 auto;
}
#dd_team .team_group img{
	width: 100%;
	display: block;
	border-radius: 10px;
}
@media screen and (max-width:640px){
	#dd_team{
		padding: 44px 16px 50px;
	}
	#dd_team .team_head h2{
		font-size: 1.5rem;
		letter-spacing: 1px;
	}
	#dd_team .team_head .lead{
		font-size: 0.85rem;
	}
	#dd_team .tcard{
		flex: 0 0 86%;
		padding: 18px;
	}
	#dd_team .tcard_meta h3{
		font-size: 1.3rem;
	}
	#dd_team .tcard_photo{
		flex: 0 0 84px;
	}
	#dd_team .tcard_photo img{
		width: 84px;
	}
	#dd_team .tcard_bio{
		font-size: 0.85rem;
	}
	#dd_team .tc_prev{
		left: -6px;
	}
	#dd_team .tc_next{
		right: -6px;
	}
	#dd_team .tc_arrow{
		width: 38px;
		height: 38px;
		font-size: 22px;
		opacity: .9;
	}
}

/*===============================================
	よくあるご質問。（テキストコーディング）
===============================================*/
#dd_faq{
	background: #f7f7f7;
	padding: 64px 0 70px;
}
#dd_faq .faq_head{
	text-align: center;
	width: 70%;
	margin: 0 auto 40px;
}
#dd_faq .faq_head h2{
	display: inline-block;
	text-align: center;
	color: #13294f;
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 3px;
	padding-bottom: 16px;
	border-bottom: 1px solid rgba(19,41,79,.5);
}
#dd_faq .faq_head .lead{
	text-align: center;
	color: #555;
	font-size: 16px;
	line-height: 1.9;
	margin-top: 24px;
}
#dd_faq .faq_list{
	width: 70%;
	margin: 0 auto;
}
#dd_faq .faq_item{
	margin-bottom: 16px;
}
#dd_faq .faq_q{
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 14px;
	background: #0f1e3c;
	border-radius: 8px;
	padding: 20px 58px 20px 26px;
	cursor: pointer;
	transition: opacity .3s;
}
#dd_faq .faq_q:hover{
	opacity: .9;
}
#dd_faq .faq_q .qmark{
	flex: 0 0 auto;
	color: #fff;
	font-size: 19px;
	font-weight: bold;
	line-height: 1.6;
}
#dd_faq .faq_q .qtext{
	flex: 1;
	color: #fff;
	font-size: 17px;
	font-weight: bold;
	line-height: 1.6;
}
#dd_faq .faq_q::after{
	content: '＋';
	position: absolute;
	right: 22px;
	top: 50%;
	transform: translateY(-50%);
	color: #fff;
	font-size: 20px;
	font-weight: normal;
}
#dd_faq .faq_item.is-open .faq_q::after{
	content: '－';
}
#dd_faq .faq_a{
	display: none;
}
#dd_faq .faq_a_in{
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 20px 26px 8px;
}
#dd_faq .faq_a_in .amark{
	flex: 0 0 auto;
	color: #13294f;
	font-size: 19px;
	font-weight: bold;
	line-height: 1.7;
}
#dd_faq .faq_a_in p{
	flex: 1;
	color: #333;
	font-size: 15px;
	line-height: 1.95;
}
@media screen and (max-width:640px){
	#dd_faq{
		padding: 44px 0 50px;
	}
	#dd_faq .faq_head,
	#dd_faq .faq_list{
		width: 88%;
	}
	#dd_faq .faq_head h2{
		font-size: 1.5rem;
		letter-spacing: 1px;
	}
	#dd_faq .faq_head .lead{
		font-size: 0.9rem;
	}
	#dd_faq .faq_q{
		padding: 16px 46px 16px 18px;
		gap: 10px;
	}
	#dd_faq .faq_q .qmark{
		font-size: 1.1rem;
	}
	#dd_faq .faq_q .qtext{
		font-size: 0.95rem;
	}
	#dd_faq .faq_a_in{
		padding: 16px 18px 6px;
		gap: 10px;
	}
	#dd_faq .faq_a_in .amark{
		font-size: 1.1rem;
	}
	#dd_faq .faq_a_in p{
		font-size: 0.9rem;
		line-height: 1.8;
	}
}

/*===============================================
	基本合意前から、動けます。（テキストコーディング）
===============================================*/
#dd_process{
	background: #fff;
	padding: 64px 0 70px;
}
#dd_process .process_head{
	text-align: center;
	width: 70%;
	margin: 0 auto 44px;
}
#dd_process .process_head h2{
	display: inline-block;
	text-align: center;
	color: #13294f;
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 3px;
	padding-bottom: 16px;
	border-bottom: 1px solid rgba(19,41,79,.5);
}
#dd_process .process_head .lead{
	text-align: center;
	color: #555;
	font-size: 16px;
	line-height: 1.9;
	margin-top: 24px;
}
#dd_process .process_steps{
	width: 70%;
	margin: 0 auto;
}
#dd_process .pstep{
	display: flex;
	gap: 24px;
	padding-bottom: 34px;
	position: relative;
}
#dd_process .pstep:last-child{
	padding-bottom: 0;
}
#dd_process .pstep:not(:last-child)::after{
	content: '';
	position: absolute;
	left: 47px;
	top: 30px;
	height: calc(100% - 30px);
	width: 2px;
	background: #c8a046;
	z-index: 0;
}
#dd_process .pstep_label{
	position: relative;
	z-index: 1;
	flex: 0 0 96px;
	align-self: flex-start;
	background: #c8a046;
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	letter-spacing: 1px;
	text-align: center;
	padding: 7px 0;
	border-radius: 20px;
}
#dd_process .pstep_body{
	flex: 1;
	padding-top: 1px;
}
#dd_process .pstep_body h3{
	color: #13294f;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 1px;
	margin-bottom: 12px;
	line-height: 1.4;
}
#dd_process .pstep_body h3 .note{
	color: #888;
	font-size: 13px;
	font-weight: normal;
	letter-spacing: 0;
	margin-left: 10px;
}
#dd_process .pstep_body p{
	color: #333;
	font-size: 15px;
	line-height: 1.95;
}
@media screen and (max-width:640px){
	#dd_process{
		padding: 44px 0 50px;
	}
	#dd_process .process_head,
	#dd_process .process_steps{
		width: 88%;
	}
	#dd_process .process_head h2{
		font-size: 1.5rem;
		letter-spacing: 1px;
	}
	#dd_process .process_head .lead{
		font-size: 0.9rem;
	}
	#dd_process .pstep{
		gap: 14px;
		padding-bottom: 26px;
	}
	#dd_process .pstep:not(:last-child)::after{
		left: 38px;
		top: 28px;
	}
	#dd_process .pstep_label{
		flex: 0 0 78px;
		font-size: 0.7rem;
		padding: 6px 0;
	}
	#dd_process .pstep_body h3{
		font-size: 1.05rem;
		letter-spacing: 0;
	}
	#dd_process .pstep_body h3 .note{
		display: block;
		margin-left: 0;
		margin-top: 2px;
	}
	#dd_process .pstep_body p{
		font-size: 0.9rem;
		line-height: 1.8;
	}
}

/*===============================================
	FV下CTA / 電話予約 / 下部CTAバー（テキストコーディング）
===============================================*/
/* FV下CTA（ボタンのみ） */
#dd_cta1{
	padding: 44px 40px 48px;
}
/* お電話でのご予約 */
#dd_contact{
	background: #0f1e3c;
	padding: 4px 40px 66px;
	text-align: center;
}
#dd_contact .contact_lead{
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 1px;
	text-align: center;
	margin-bottom: 24px;
}
#dd_contact .contact_tel{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	min-width: 520px;
	max-width: 100%;
	box-sizing: border-box;
	background: #c8a046;
	border-radius: 50px;
	padding: 18px 44px;
	text-decoration: none;
	transition: opacity .3s;
}
#dd_contact .contact_tel:hover{
	opacity: .85;
	text-decoration: none;
}
#dd_contact .contact_tel .tnum{
	color: #13294f;
	font-size: 32px;
	font-weight: bold;
	letter-spacing: 1px;
}
#dd_contact .contact_tel .tnum i{
	font-size: 25px;
	margin-right: 6px;
}
#dd_contact .contact_tel .thours{
	color: #13294f;
	font-size: 14px;
}
/* 下部CTAバー */
#dd_footcta{
	background: #f4f4f4;
	padding: 18px 16px;
	display: flex;
	gap: 16px;
	justify-content: center;
	align-items: stretch;
}
#dd_footcta a{
	text-decoration: none;
	transition: opacity .3s;
}
#dd_footcta a:hover{
	opacity: .85;
	text-decoration: none;
}
#dd_footcta .fc_mail{
	position: relative;
	display: flex;
	align-items: center;
	gap: 18px;
	background: #13294f;
	border-radius: 8px;
	padding: 16px 56px 16px 28px;
	flex: 0 1 560px;
}
#dd_footcta .fc_mail > i{
	color: #fff;
	font-size: 26px;
}
#dd_footcta .fc_mail .fc_txt{
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 1;
}
#dd_footcta .fc_mail .fc_main{
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 1px;
}
#dd_footcta .fc_mail .fc_sub{
	color: #cfd5e0;
	font-size: 13px;
	margin-top: 3px;
}
#dd_footcta .fc_mail .fc_arw{
	position: absolute;
	right: 24px;
	top: 50%;
	transform: translateY(-50%);
	color: #fff;
	font-size: 22px;
}
#dd_footcta .fc_tel{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 5px;
	background: #c8a046;
	border-radius: 8px;
	padding: 12px 30px;
	flex: 0 0 auto;
	min-width: 150px;
}
#dd_footcta .fc_tel i{
	color: #fff;
	font-size: 22px;
}
#dd_footcta .fc_tel span{
	color: #fff;
	font-size: 14px;
	font-weight: bold;
}
@media screen and (max-width:640px){
	#dd_cta1{
		padding: 34px 18px 38px;
	}
	#dd_contact{
		padding: 4px 18px 50px;
	}
	#dd_contact .contact_lead{
		font-size: 1.05rem;
	}
	#dd_contact .contact_tel{
		min-width: 0;
		width: 100%;
		flex-direction: column;
		gap: 6px;
		padding: 16px 20px;
	}
	#dd_contact .contact_tel .tnum{
		font-size: 1.7rem;
	}
	#dd_footcta{
		gap: 8px;
		padding: 12px;
	}
	#dd_footcta .fc_mail{
		flex: 1 1 auto;
		padding: 12px 30px 12px 14px;
		gap: 10px;
	}
	#dd_footcta .fc_mail > i{
		font-size: 20px;
	}
	#dd_footcta .fc_mail .fc_main{
		font-size: 0.82rem;
		letter-spacing: 0;
	}
	#dd_footcta .fc_mail .fc_sub{
		font-size: 0.62rem;
	}
	#dd_footcta .fc_mail .fc_arw{
		right: 14px;
		font-size: 18px;
	}
	#dd_footcta .fc_tel{
		flex: 0 0 auto;
		min-width: 0;
		gap: 3px;
		padding: 10px 14px;
	}
	#dd_footcta .fc_tel i{
		font-size: 18px;
	}
	#dd_footcta .fc_tel span{
		font-size: 0.72rem;
	}
}

/*===============================================
	CTA：投資の盲点を、今すぐ潰しませんか。（テキストコーディング）
===============================================*/
.dd_cta{
	background: #0f1e3c;
	padding: 62px 40px 58px;
	text-align: center;
}
.dd_cta h2{
	text-align: center;
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 2px;
	line-height: 1.5;
	margin-bottom: 26px;
}
.dd_cta h2 .hl{
	background: #c8a046;
	color: #0f1e3c;
	padding: 3px 5px;
	margin: 0 5px;
}
.dd_cta .lead{
	text-align: center;
	color: #dfe3ea;
	font-size: 20px;
	line-height: 1.9;
	letter-spacing: 1px;
	margin-bottom: 36px;
}
.dd_cta .cta_btn{
	display: inline-block;
	position: relative;
	min-width: 520px;
	max-width: 100%;
	box-sizing: border-box;
	padding: 22px 60px;
	border-radius: 8px;
	background: linear-gradient(180deg, #cfb367 0%, #c2a046 100%);
	border: 1px solid #e2d093;
	box-shadow: 0 3px 10px rgba(0,0,0,.35);
	color: #13294f;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 1px;
	text-decoration: none;
	transition: opacity .3s;
}
.dd_cta .cta_btn:hover{
	opacity: .85;
	text-decoration: none;
}
.dd_cta .cta_btn .arw{
	position: absolute;
	right: 28px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 24px;
	font-weight: normal;
}
.dd_cta .note{
	text-align: center;
	color: #cfd5e0;
	font-size: 14px;
	letter-spacing: 1px;
	margin-top: 0;
}
@media screen and (max-width:640px){
	.dd_cta{
		padding: 46px 18px 44px;
	}
	.dd_cta h2{
		font-size: 1.5rem;
		letter-spacing: 1px;
	}
	.dd_cta .lead{
		font-size: 0.95rem;
	}
	.dd_cta .cta_btn{
		min-width: 0;
		width: 100%;
		padding: 18px 40px 18px 20px;
		font-size: 1rem;
	}
	.dd_cta .cta_btn .arw{
		right: 18px;
	}
}

/*===============================================
	投資委員会に、そのまま出せる水準。（テキストコーディング）
===============================================*/
#dd_suijun{
	background: #0f1e3c;
	padding: 54px 0 70px;
}
#dd_suijun .vbar{
	display: block;
	width: 1px;
	height: 46px;
	background: rgba(255,255,255,.45);
	margin: 0 auto 38px;
}
#dd_suijun .suijun_head{
	text-align: center;
	width: 70%;
	margin: 0 auto 38px;
}
#dd_suijun .suijun_head h2{
	display: inline-block;
	text-align: center;
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 3px;
	padding-bottom: 16px;
	border-bottom: 1px solid rgba(255,255,255,.5);
}
#dd_suijun .suijun_head .lead{
	text-align: center;
	color: #cfd5e0;
	font-size: 15px;
	line-height: 1.9;
	margin-top: 22px;
}
#dd_suijun .sj_label{
	background: #c8a046;
	color: #0f1e3c;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 2px;
	text-align: center;
	padding: 13px;
	border-radius: 6px;
}
#dd_suijun .sj_chart img{
	width: 100%;
	display: block;
	border-radius: 4px;
}
#dd_suijun .suijun_feature{
	width: 70%;
	margin: 0 auto 42px;
}
#dd_suijun .suijun_feature .sj_label{
	margin-bottom: 14px;
}
#dd_suijun .suijun_feature .sj_desc{
	color: #dfe3ea;
	font-size: 15px;
	line-height: 1.95;
	margin-top: 18px;
}
#dd_suijun .suijun_grid{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 26px 26px;
	width: 70%;
	margin: 0 auto;
}
#dd_suijun .sj_item .sj_label{
	margin-bottom: 12px;
}
/* 4ブロック＝タブ（クリックで上の大枠を切替） */
#dd_suijun .suijun_grid .sj_item{
	cursor: pointer;
}
#dd_suijun .suijun_grid .sj_label{
	opacity: .5;
	transition: opacity .3s;
}
#dd_suijun .suijun_grid .sj_item:hover .sj_label{
	opacity: .8;
}
#dd_suijun .suijun_grid .sj_item.is-active .sj_label{
	opacity: 1;
}
#dd_suijun .suijun_grid .sj_chart{
	transition: box-shadow .3s, opacity .3s;
}
#dd_suijun .suijun_grid .sj_item:not(.is-active) .sj_chart{
	opacity: .55;
}
#dd_suijun .suijun_grid .sj_item:hover .sj_chart{
	opacity: .8;
}
#dd_suijun .suijun_grid .sj_item.is-active .sj_chart{
	opacity: 1;
	box-shadow: 0 0 0 3px #c8a046;
}
#dd_suijun .suijun_feature{
	will-change: opacity;
}
@media screen and (max-width:640px){
	#dd_suijun{
		padding: 0 0 50px;
	}
	#dd_suijun .suijun_head,
	#dd_suijun .suijun_feature,
	#dd_suijun .suijun_grid{
		width: 88%;
	}
	#dd_suijun .suijun_head h2{
		font-size: 1.5rem;
		letter-spacing: 1px;
	}
	#dd_suijun .suijun_head .lead{
		font-size: 0.85rem;
	}
	#dd_suijun .sj_label{
		font-size: 1rem;
		letter-spacing: 1px;
		padding: 11px;
	}
	#dd_suijun .suijun_feature .sj_desc{
		font-size: 0.9rem;
	}
	#dd_suijun .suijun_grid{
		grid-template-columns: repeat(2, 1fr);
		gap: 14px;
	}
	#dd_suijun .suijun_grid .sj_label{
		font-size: 0.8rem;
		letter-spacing: 0;
		padding: 9px;
	}
}

/*===============================================
	あなたの業界に、専門家がいます。（テキストコーディング）
===============================================*/
#dd_industry{
	background: #f7f7f7;
	padding: 64px 32px 70px;
}
#dd_industry .industry_head{
	text-align: center;
	margin-bottom: 42px;
}
#dd_industry .industry_head h2{
	display: inline-block;
	text-align: center;
	color: #13294f;
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 3px;
	padding-bottom: 16px;
	border-bottom: 1px solid rgba(19,41,79,.5);
}
#dd_industry .industry_head .lead{
	text-align: center;
	color: #555;
	font-size: 16px;
	line-height: 1.9;
	margin-top: 24px;
}
#dd_industry .industry_grid{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 22px 26px;
	align-items: start;
}
#dd_industry .ind_bar{
	position: relative;
	background: #0f1e3c;
	border-radius: 8px;
	padding: 22px 56px;
	text-align: center;
	cursor: pointer;
	transition: opacity .3s;
}
#dd_industry .ind_bar:hover{
	opacity: .85;
}
#dd_industry .ind_bar span{
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 2px;
}
#dd_industry .ind_item{
	transition: opacity .5s ease, transform .5s ease;
}
#dd_industry .ind_item.is-hidden{
	display: none;
}
#dd_industry .ind_item.is-revealing{
	opacity: 0;
	transform: translateY(20px);
}
#dd_industry .ind_panel{
	display: none;
	background: #fff;
	border: 1px solid #dde2ea;
	border-radius: 8px;
	margin-top: 8px;
	padding: 16px;
}
#dd_industry .ind_panel ul{
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
#dd_industry .ind_panel li{
	background: #eef1f6;
	color: #13294f;
	font-size: 13px;
	font-weight: bold;
	padding: 7px 14px;
	border-radius: 20px;
	line-height: 1.4;
}
#dd_industry .ind_bar::before,
#dd_industry .ind_bar::after{
	content: '';
	position: absolute;
	right: 28px;
	top: 50%;
	width: 16px;
	height: 2px;
	background: #fff;
	transition: opacity .3s, transform .3s;
}
#dd_industry .ind_bar::before{
	transform: translateY(-50%);
}
#dd_industry .ind_bar::after{
	transform: translateY(-50%) rotate(90deg);
}
#dd_industry .ind_bar.is-open::after{
	opacity: 0;
}
#dd_industry .industry_more{
	text-align: center;
	margin-top: 40px;
}
#dd_industry .more_btn{
	display: inline-block;
	min-width: 300px;
	box-sizing: border-box;
	padding: 16px 48px;
	border: 2px solid #c8a046;
	border-radius: 50px;
	color: #13294f;
	font-size: 1.05rem;
	font-weight: bold;
	letter-spacing: 1px;
	position: relative;
	cursor: pointer;
	transition: opacity .3s;
}
#dd_industry .more_btn:hover{
	opacity: .7;
}
#dd_industry .more_btn::after{
	content: '+';
	position: absolute;
	right: 28px;
	top: 50%;
	transform: translateY(-50%);
	color: #c8a046;
	font-size: 1.3rem;
	font-weight: bold;
	line-height: 1;
}
#dd_industry .industry_note{
	text-align: center;
	color: #555;
	font-size: 15px;
	line-height: 1.9;
	margin-top: 28px;
}
@media screen and (max-width:640px){
	#dd_industry{
		padding: 44px 16px 50px;
	}
	#dd_industry .industry_head h2{
		font-size: 1.5rem;
		letter-spacing: 1px;
	}
	#dd_industry .industry_head .lead{
		font-size: 0.9rem;
	}
	#dd_industry .industry_grid{
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
	}
	#dd_industry .ind_bar{
		padding: 13px 26px 13px 12px;
	}
	#dd_industry .ind_bar span{
		font-size: 0.78rem;
		letter-spacing: 0;
	}
	#dd_industry .ind_bar::before,
	#dd_industry .ind_bar::after{
		right: 12px;
		width: 12px;
	}
	#dd_industry .ind_panel{
		padding: 12px;
	}
	#dd_industry .ind_panel li{
		font-size: 11px;
		padding: 5px 10px;
	}
	#dd_industry .more_btn{
		min-width: 0;
		width: 92%;
		padding: 14px 24px;
		font-size: 0.95rem;
	}
	#dd_industry .industry_note{
		font-size: 0.85rem;
	}
}

/*===============================================
	実績一覧（テキストコーディング）
===============================================*/
#dd_jisseki{
	background: #0f1e3c;
	padding: 64px 32px 70px;
}
#dd_jisseki .jisseki_head{
	text-align: center;
	margin-bottom: 44px;
}
#dd_jisseki .jisseki_head h2{
	display: inline-block;
	text-align: center;
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 4px;
	padding-bottom: 16px;
	border-bottom: 1px solid rgba(255,255,255,.55);
}
#dd_jisseki .jisseki_grid{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}
#dd_jisseki .jcard{
	background: #1a2f50;
	border-radius: 12px;
	padding: 26px 24px 28px;
	transition: opacity .5s ease, transform .5s ease;
}
#dd_jisseki .jcard.is-hidden{
	display: none;
}
#dd_jisseki .jcard.is-revealing{
	opacity: 0;
	transform: translateY(20px);
}
#dd_jisseki .jcard h3{
	text-align: center;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 1px;
	padding-bottom: 14px;
	margin-bottom: 16px;
	border-bottom: 1px solid rgba(255,255,255,.22);
}
#dd_jisseki .jcard p{
	color: #b9c0cc;
	font-size: 14px;
	line-height: 1.85;
}
#dd_jisseki .jisseki_more{
	text-align: center;
	margin-top: 36px;
}
#dd_jisseki .more_btn{
	display: inline-block;
	min-width: 300px;
	box-sizing: border-box;
	padding: 16px 48px;
	border: 2px solid #c8a046;
	border-radius: 50px;
	color: #fff;
	font-size: 1.05rem;
	font-weight: bold;
	letter-spacing: 1px;
	position: relative;
	cursor: pointer;
	transition: opacity .3s;
}
#dd_jisseki .more_btn:hover{
	opacity: .7;
}
#dd_jisseki .more_btn::after{
	content: '+';
	position: absolute;
	right: 28px;
	top: 50%;
	transform: translateY(-50%);
	color: #c8a046;
	font-size: 1.3rem;
	font-weight: bold;
	line-height: 1;
}
@media screen and (max-width:640px){
	#dd_jisseki{
		padding: 44px 16px 50px;
	}
	#dd_jisseki .jisseki_head{
		margin-bottom: 32px;
	}
	#dd_jisseki .jisseki_head h2{
		font-size: 1.6rem;
		letter-spacing: 2px;
	}
	#dd_jisseki .jisseki_grid{
		grid-template-columns: repeat(2, 1fr);
		gap: 12px;
	}
	#dd_jisseki .jcard{
		padding: 18px 14px 20px;
	}
	#dd_jisseki .jcard h3{
		font-size: 1rem;
		letter-spacing: 0;
		padding-bottom: 10px;
		margin-bottom: 12px;
	}
	#dd_jisseki .jcard p{
		font-size: 0.8rem;
		line-height: 1.7;
	}
	#dd_jisseki .more_btn{
		min-width: 0;
		width: 92%;
		padding: 14px 24px;
		font-size: 0.95rem;
	}
}

/*===============================================
	得られる3つの成果（テキストコーディング）
===============================================*/
#dd_result{
	background: #F7F7F7;
	padding: 64px 0 64px;
}
#dd_result .result_head{
	text-align: center;
	width: 70%;
	margin: 0 auto 46px;
}
#dd_result .result_head h2{
	text-align: center;
}
#dd_result .result_head .sub{
	display: block;
	color: #13294f;
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 2px;
	margin-bottom: 12px;
}
#dd_result .result_head .main{
	display: inline-block;
	color: #13294f;
	font-size: 32px;
	font-weight: bold;
	letter-spacing: 2px;
}
#dd_result .result{
	width: 70%;
	margin: 0 auto 36px;
}
#dd_result .result:last-child{
	margin-bottom: 0;
}
#dd_result .result_topline{
	display: flex;
	align-items: center;
	gap: 16px;
	border-bottom: 1px solid #c8a046;
	padding-bottom: 12px;
	margin-bottom: 18px;
}
#dd_result .result_topline .rno{
	color: #c8a046;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 1px;
	white-space: nowrap;
}
#dd_result .result_topline h3{
	color: #13294f;
	font-size: 19px;
	font-weight: bold;
	letter-spacing: 1px;
	line-height: 1.4;
}
#dd_result .result_body{
	display: flex;
	align-items: flex-start;
	gap: 24px;
	padding-left: 8px;
}
#dd_result .result_icon{
	flex: 0 0 70px;
}
#dd_result .result_icon img{
	width: 70px;
	display: block;
}
#dd_result .result_body p{
	flex: 1;
	color: #333;
	font-size: 15px;
	line-height: 1.95;
}
#dd_result .result_body p b{
	color: #c8a046;
	font-weight: bold;
}
#dd_result .result_charts{
	margin-top: 24px;
	display: flex;
	gap: 12px;
	align-items: flex-start;
}
#dd_result .result_charts img{
	flex: 1 1 0;
	min-width: 0;
	width: 100%;
	height: auto;
	display: block;
}
@media screen and (max-width:640px){
	#dd_result{
		padding: 44px 0 46px;
	}
	#dd_result .result_head,
	#dd_result .result{
		width: 88%;
	}
	#dd_result .result_head{
		margin-bottom: 32px;
	}
	#dd_result .result_head .sub{
		font-size: 1rem;
		letter-spacing: 1px;
		margin-bottom: 8px;
	}
	#dd_result .result_head .main{
		font-size: 1.6rem;
		letter-spacing: 1px;
	}
	#dd_result .result_topline{
		gap: 10px;
	}
	#dd_result .result_topline .rno{
		font-size: 0.75rem;
	}
	#dd_result .result_topline h3{
		font-size: 1rem;
		letter-spacing: 0;
	}
	#dd_result .result_body{
		gap: 16px;
		padding-left: 0;
	}
	#dd_result .result_icon{
		flex: 0 0 52px;
	}
	#dd_result .result_icon img{
		width: 52px;
	}
	#dd_result .result_body p{
		font-size: 0.9rem;
		line-height: 1.85;
	}
}

/*===============================================
	3つの理由（テキストコーディング）
===============================================*/
#dd_reason{
	background: #0f1e3c;
	padding: 56px 0 70px;
}
#dd_reason .reason_intro{
	text-align: center;
	width: 70%;
	margin: 0 auto 54px;
}
#dd_reason .reason_intro .bar{
	display: block;
	width: 1px;
	height: 46px;
	background: rgba(255,255,255,.45);
	margin: 0 auto 30px;
}
#dd_reason .reason_intro .lead{
	color: #fff;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.9;
	letter-spacing: 2px;
	margin-bottom: 40px;
	text-align: center;
}
#dd_reason .reason_intro .hl{
	background: #c8a046;
	color: #0f1e3c;
	font-weight: bold;
	padding: 3px 0;
	margin: 0 5px;
}
#dd_reason .reason_intro h2{
	text-align: center;
}
#dd_reason .reason_intro .q{
	display: block;
	color: #fff;
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 2px;
	margin-bottom: 12px;
}
#dd_reason .reason_intro .main{
	display: inline-block;
	color: #fff;
	font-size: 32px;
	font-weight: bold;
	letter-spacing: 3px;
}
#dd_reason .reason{
	width: 70%;
	margin: 0 auto 38px;
}
#dd_reason .reason:last-child{
	margin-bottom: 0;
}
#dd_reason .reason_head{
	display: flex;
	align-items: center;
	gap: 16px;
	border-bottom: 1px solid rgba(255,255,255,.28);
	padding-bottom: 14px;
	margin-bottom: 20px;
}
#dd_reason .reason_head .rno{
	color: #c8a046;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 1px;
	white-space: nowrap;
}
#dd_reason .reason_head h3{
	color: #c8a046;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 1px;
	line-height: 1.4;
}
#dd_reason .reason_body{
	display: flex;
	align-items: flex-start;
	gap: 26px;
	padding-left: 8px;
}
#dd_reason .reason_icon{
	flex: 0 0 72px;
}
#dd_reason .reason_icon img{
	width: 72px;
	display: block;
}
#dd_reason .reason_body p{
	flex: 1;
	color: #e8eaf0;
	font-size: 15px;
	line-height: 1.95;
	letter-spacing: .5px;
}
#dd_reason .reason_body p b{
	color: #c8a046;
	font-weight: bold;
}
@media screen and (max-width:640px){
	#dd_reason{
		padding: 0 0 50px;
	}
	#dd_reason .reason_intro,
	#dd_reason .reason{
		width: 88%;
	}
	#dd_reason .reason_intro{
		margin-bottom: 38px;
	}
	#dd_reason .reason_intro .lead{
		font-size: 1rem;
		letter-spacing: 1px;
		margin-bottom: 28px;
	}
	#dd_reason .reason_intro .q{
		font-size: 1.05rem;
		letter-spacing: 1px;
	}
	#dd_reason .reason_intro .main{
		font-size: 1.7rem;
		letter-spacing: 2px;
	}
	#dd_reason .reason_head{
		gap: 10px;
	}
	#dd_reason .reason_head .rno{
		font-size: 0.75rem;
	}
	#dd_reason .reason_head h3{
		font-size: 1.05rem;
		letter-spacing: 0;
	}
	#dd_reason .reason_body{
		gap: 16px;
		padding-left: 0;
	}
	#dd_reason .reason_icon{
		flex: 0 0 52px;
	}
	#dd_reason .reason_icon img{
		width: 52px;
	}
	#dd_reason .reason_body p{
		font-size: 0.9rem;
		line-height: 1.85;
		letter-spacing: 0;
	}
}

/*===============================================
	実際の成果（テキストコーディング）
===============================================*/
#dd_seika{
	background: #fff;
	padding: 70px 40px 60px;
}

/* 見出し */
#dd_seika .seika_head{
	text-align: center;
	margin-bottom: 50px;
}
#dd_seika .seika_head h2{
	margin-bottom: 24px;
	text-align: center;
}
#dd_seika .seika_head .sub{
	display: block;
	font-size: 24px;
	font-weight: 600;
	color: #13294f;
	letter-spacing: 2px;
	margin-bottom: 14px;
}
#dd_seika .seika_head .main{
	display: inline-block;
	font-size: 34px;
	font-weight: bold;
	color: #13294f;
	letter-spacing: 2px;
	padding-bottom: 14px;
	border-bottom: 2px solid #13294f;
}
#dd_seika .seika_head .lead{
	font-size: 16px;
	line-height: 2;
	color: #555;
	letter-spacing: 1px;
	text-align: center;
}

/* 事例カード */
#dd_seika .dd_case{
	background: #fff;
	border: 1px solid #e4e4e4;
	border-radius: 16px;
	padding: 28px 30px 36px;
	margin: 0 auto 40px;
	box-shadow: 0 4px 16px rgba(19,41,79,.05);
}
#dd_seika .case_title{
	background: #13294f;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	letter-spacing: 3px;
	padding: 16px;
	border-radius: 10px;
	margin-bottom: 22px;
}
#dd_seika .case_photo{
	margin: 0 0 26px;
}
#dd_seika .case_photo img{
	width: 100%;
	display: block;
	border-radius: 8px;
}
#dd_seika .case_block{
	text-align: center;
	margin-bottom: 18px;
}
#dd_seika .case_label{
	display: inline-block;
	position: relative;
	z-index: 2;
	top: 12px;
	margin-bottom: -10px;
	background: #13294f;
	color: #fff;
	font-size: 15px;
	font-weight: bold;
	letter-spacing: 1px;
	padding: 9px 32px;
	border-radius: 30px;
}
#dd_seika .case_text{
	background: #ececec;
	border-radius: 12px;
	padding: 40px 26px 22px;
}
#dd_seika .case_text p{
	margin: 0;
	text-align: left;
	font-size: 15px;
	line-height: 1.95;
	color: #333;
}

/* アコーディオン（依頼前の状態まで表示／「どう解決したか見る」でアプローチ以下を開閉） */
#dd_seika .dd_case .case_cnt{
	display: none;
}
#dd_seika .dd_case .case_cnt{
	display: none;
}
#dd_seika .dd_case .case_ttl{
	display: block;
	width: 50%;
	max-width: 360px;
	margin: 24px auto 44px;
	box-sizing: border-box;
	text-align: center;
	padding: 18px 28px;
	background: #fff;
	border: 2px solid #bb962e;
	border-radius: 50px;
	color: #13294f;
	font-size: 1.05rem;
	font-weight: bold;
	letter-spacing: 1px;
	line-height: 1.4;
	cursor: pointer;
	position: relative;
	transition: opacity .3s;
}
#dd_seika .dd_case .case_ttl:hover{
	opacity: .7;
}
#dd_seika .dd_case .case_ttl::before,
#dd_seika .dd_case .case_ttl::after{
	content: '';
	position: absolute;
	right: 26px;
	top: 50%;
	width: 16px;
	height: 2px;
	background: #bb962e;
	transition: transform .3s;
}
#dd_seika .dd_case .case_ttl::before{
	transform: translateY(-50%);
}
#dd_seika .dd_case .case_ttl::after{
	transform: translateY(-50%) rotate(90deg);
}
#dd_seika .dd_case .case_ttl.show::after{
	transform: translateY(-50%) rotate(0deg);
}
@media screen and (max-width:640px){
	#dd_seika{
		padding: 50px 16px 40px;
	}
	#dd_seika .seika_head{
		margin-bottom: 36px;
	}
	#dd_seika .seika_head .sub{
		font-size: 1.05rem;
		letter-spacing: 1px;
		margin-bottom: 10px;
	}
	#dd_seika .seika_head .main{
		font-size: 1.7rem;
		letter-spacing: 1px;
	}
	#dd_seika .seika_head .lead{
		font-size: 0.9rem;
		letter-spacing: 0;
	}
	#dd_seika .dd_case{
		padding: 18px 16px 28px;
		margin: 0 auto 28px;
	}
	#dd_seika .case_title{
		font-size: 1.1rem;
		letter-spacing: 1px;
		padding: 13px;
	}
	#dd_seika .case_label{
		font-size: 0.85rem;
		padding: 8px 24px;
	}
	#dd_seika .case_text{
		padding: 30px 18px 18px;
	}
	#dd_seika .case_text p{
		font-size: 0.9rem;
		line-height: 1.85;
	}
	#dd_seika .dd_case .case_ttl{
		width: 86%;
		max-width: none;
		font-size: 1rem;
		padding: 14px 22px;
		margin: 16px auto 32px;
	}
	#dd_seika .dd_case .case_ttl::before,
	#dd_seika .dd_case .case_ttl::after{
		right: 18px;
	}
}

/* ヘッダー上書き */
#header{
	height: 90px;
	border-bottom: 1px solid #eee;
}
#header .logo{
	width: 41.6%;       /* Figma基準: 全ヘッダー幅の約41.6% */
	max-width: 540px;
	left: 1.5%;
	top: 50%;
	transform: translateY(-50%);
}
#header .award{
	display: none;
}
#header .tel{
	width: auto;
	right: 2.5%;
	top: 50%;
	transform: translateY(-50%);
	text-align: right;
}
#header .tel a{
	color: #0b59c9;
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 1px;
}
#header .tel .urgent{ display: none; }
#header .tel a img.btn_sp{ display: none; }
#header .tel a:hover{
	text-decoration: none;
	opacity: .7;
}
#header .tel .hours{
	display: block;
	color: #555;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 1px;
}

/* SP固定CTA（ゴールドボタン） */
#cta_sp .sp_cta_btn{
	display: none;
}

@media screen and (max-width:640px){
	#header{
		height: 16vw;
		border-bottom: 1px solid #eee;
	}
	#header .logo{
		width: 75%;
		max-width: 75%;
		left: 1%;
	}
	#header .tel{
		position: fixed;
		right: 1.5%;
		top: 1.2vw;
		transform: none;
		z-index: 9999;
	}
	#header .tel a{
		display: block;
		width: 15vw;
		max-width: 70px;
		height: auto;
		font-size: 0;
		line-height: 0;
	}
	#header .tel a img.btn_sp{
		display: block;
		width: 100%;
		height: auto;
	}
	#header .tel a .fas,
	#header .tel a .num,
	#header .tel a .urgent{
		display: none;
	}
	#header .tel .hours{
		display: none;
	}

	#cta_sp .sp_cta_btn{
		display: block;
		width: 92%;
		margin: 0 auto;
		padding: 14px 0;
		border-radius: 8px;
		background: #c9ad5f;
		color: #13294f;
		font-weight: bold;
		font-size: 1.05rem;
		text-align: center;
		text-decoration: none;
		box-shadow: 0 2px 6px rgba(0,0,0,.3);
	}
	#cta_sp .sp_cta_btn:hover{
		text-decoration: none;
		opacity: .85;
	}
}




/*===============================================
	コピーライト：#body幅(70%)に合わせて中央
===============================================*/
#cnt_copy{ width: 70%; }
#cnt_copy.full{ width: 100%; } /* thanks等の1カラムページは横いっぱい */
@media screen and (max-width:640px){
	#cnt_copy{ width: 100%; }
}


/*===============================================
	FV：PC/スマホ画像切替（スマホはFrame6準拠）
===============================================*/
#body .dd_fv .fv_sp{ display: none; }
@media screen and (max-width:640px){
	#body .dd_fv .fv_pc{ display: none; }
	#body .dd_fv .fv_sp{ display: block; }
}


/*===============================================
	FV下の白線（サブピクセル継ぎ目）対策：スマホ
	※既存CSS/画像は変更せず、追記のみ
===============================================*/
@media screen and (max-width:640px){
	#body .dd_fv{ margin-bottom: -1px; }
	#body .dd_fv .fv_sp{ vertical-align: bottom; }
}


/*===============================================
	CTAボタン：Figma書き出し画像に差し替え
	※既存の .cta_btn ルールは変更せず、.cta_img で上書き（追記のみ）
===============================================*/
.dd_cta .cta_btn.cta_img{
	display: inline-block;
	min-width: 0;
	width: 600px;
	max-width: 100%;
	padding: 0;
	border: none;
	border-radius: 0;
	background: none;
	box-shadow: none;
	font-size: 0;
	line-height: 0;
}
.dd_cta .cta_btn.cta_img img{
	display: block;
	width: 100%;
	height: auto;
}
@media screen and (max-width:640px){
	.dd_cta .cta_btn.cta_img{
		width: 100%;
	}
}


/*===============================================
	スマホ追従バー：Figma準拠（メール+電話の2ボタン）
	※既存ルールは変更せず、末尾で上書き（追記のみ）
===============================================*/
@media screen and (max-width:640px){
	#cta_sp{
		background: #f4f4f4;
		background-color: #f4f4f4;
		display: flex;
		gap: 8px;
		justify-content: center;
		align-items: stretch;
		padding: 8px 10px calc(8px + env(safe-area-inset-bottom));
		box-shadow: 0 -2px 8px rgba(0,0,0,.15);
	}
	/* レガシーの光沢アニメ・全幅指定を無効化 */
	#cta_sp .sp_mail::after,
	#cta_sp .sp_tel::after{ content: none; display: none; }

	#cta_sp .sp_mail{
		position: relative;
		display: flex;
		align-items: center;
		gap: 10px;
		width: auto;
		overflow: visible;
		flex: 1 1 auto;
		background: #13294f;
		border-radius: 8px;
		padding: 10px 30px 10px 14px;
		text-decoration: none;
	}
	#cta_sp .sp_mail > i{
		color: #fff;
		font-size: 20px;
	}
	#cta_sp .sp_mail .sp_txt{
		display: flex;
		flex-direction: column;
		align-items: center;
		flex: 1;
	}
	#cta_sp .sp_mail .sp_main{
		color: #fff;
		font-size: 0.82rem;
		font-weight: bold;
		letter-spacing: 0;
	}
	#cta_sp .sp_mail .sp_sub{
		color: #cfd5e0;
		font-size: 0.62rem;
		margin-top: 2px;
	}
	#cta_sp .sp_mail .sp_arw{
		position: absolute;
		right: 14px;
		top: 50%;
		transform: translateY(-50%);
		color: #fff;
		font-size: 18px;
	}
	#cta_sp .sp_tel{
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 3px;
		width: auto;
		overflow: visible;
		flex: 0 0 auto;
		background: #c8a046;
		border-radius: 8px;
		padding: 10px 16px;
		text-decoration: none;
	}
	#cta_sp .sp_tel i{
		color: #fff;
		font-size: 18px;
	}
	#cta_sp .sp_tel span{
		color: #fff;
		font-size: 0.72rem;
		font-weight: bold;
	}
}
