@charset "utf-8";

/*--------------------------------------------------------
　FAQ（editorial/）／数字で見るかえでプロダクション（numbers/）
　このファイルは上記2ページのみで読み込む追加スタイル。
　既存クラスとの衝突を避けるため接頭辞 fq- / nm- を使用する。
---------------------------------------------------------*/


/*--------------------------------------------------------
　FAQ
---------------------------------------------------------*/

.fq-list{
	width:100%;
}

.fq-cat{
	width:100%;
	font-size:2.0rem;
	font-weight: 800;
	letter-spacing:1px;
	line-height:160%;
	color:#BF7D24;
	padding:0 0 12px;
	margin:55px 0 20px;
	border-bottom:solid 1px #E1E1E1;
}

.fq-list .fq-cat:first-child{
	margin-top:0;
}

.fq-item{
	width:100%;
	background:#FFF;
	border:solid 1px #E1E1E1;
	margin-bottom:10px;
}

.fq-q{
	display:block;
	position:relative;
	cursor:pointer;
	padding:20px 60px 20px 25px;
	list-style:none;
}

.fq-q::-webkit-details-marker{
	display:none;
}

.fq-qt{
	display:inline;
	font-size:1.6rem;
	font-weight: 800;
	line-height:170%;
}

.fq-q::after{
	content:"";
	position:absolute;
	right:26px;
	top:50%;
	width:11px;
	height:11px;
	margin-top:-8px;
	border-right:solid 2px #BF7D24;
	border-bottom:solid 2px #BF7D24;
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}

.fq-item[open] .fq-q::after{
	margin-top:-2px;
	-webkit-transform:rotate(-135deg);
	transform:rotate(-135deg);
}

.fq-a{
	border-top:solid 1px #E1E1E1;
	padding:0 25px 25px;
}

/* 回答本文。既存の .ar_txt は common.js の ScrollReveal 対象
   （origin:'right' / delay:400）で開閉のたびにスライドインするため、
   FAQ回答には流用せず専用クラスを使う。 */
.fq-atxt{
	width:100%;
	font-size:1.5rem;
	line-height:190%;
	padding:20px 0 0;
}


/*--------------------------------------------------------
　数字ページ　ブロックA（数値）
---------------------------------------------------------*/

.nm-block{
	width:100%;
	padding-bottom:80px;
}

.nm-group{
	width:100%;
	font-size:2.0rem;
	font-weight: 800;
	letter-spacing:2px;
	text-align:center;
	color:#BF7D24;
	margin:60px 0 25px;
}

.nm-block .nm-group:first-child{
	margin-top:0;
}

.nm-grid{
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	grid-gap:20px;
	gap:20px;
	width:100%;
	margin:0;
}

.nm-cell{
	background:#FFF;
	text-align:center;
	padding:30px 12px;
}

.nm-label{
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:44px;
	font-size:1.4rem;
	line-height:155%;
	letter-spacing:1px;
	margin-bottom:12px;
}

.nm-value{
	color:#BF7D24;
	line-height:100%;
	white-space:nowrap;
}

.nm-num{
	font-size:6.0rem;
	font-weight: 800;
	letter-spacing:0;
}

.nm-pre,
.nm-unit{
	font-size:1.8rem;
	font-weight: 800;
	letter-spacing:1px;
}

.nm-pre{
	margin-right:5px;
}

.nm-unit{
	margin-left:5px;
}


/*--------------------------------------------------------
　数字ページ　ブロックB（取引先の内訳）
---------------------------------------------------------*/

.nm-clients{
	width:100%;
}

.nm-clients li{
	font-size:1.5rem;
	line-height:190%;
	padding:18px 0;
	border-bottom:dotted 1px #D8D2CB;
}

.nm-clients li:first-child{
	padding-top:0;
}

.nm-clients li:last-child{
	border-bottom:none;
	padding-bottom:0;
}

.nm-client-cat{
	font-weight: 800;
	color:#BF7D24;
}


/*--------------------------------------------------------
　数字ページ　ブロックC（制作実績・事例）
---------------------------------------------------------*/

.nm-perf{
	padding:32px 35px;
	margin-bottom:20px;
}

.nm-perf .ar_tit{
	color:#BF7D24;
	padding:0 0 14px;
}

.nm-perf .ar_txt{
	padding:0 0 14px;
}

.nm-list{
	width:100%;
}

.nm-list li{
	position:relative;
	font-size:1.5rem;
	line-height:180%;
	padding:0 0 8px 18px;
}

.nm-list li::before{
	content:"";
	position:absolute;
	left:0;
	top:11px;
	width:6px;
	height:6px;
	border-radius:50%;
	background:#BF7D24;
}


/*--------------------------------------------------------
　タブレット
---------------------------------------------------------*/

@media screen and (min-width: 768px) and (max-width: 1024px){

.nm-grid{
	grid-template-columns:repeat(3, 1fr);
}

.nm-num{
	font-size:5.0rem;
}

}


/*--------------------------------------------------------
　SP
---------------------------------------------------------*/

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

.fq-cat{
	font-size:1.7rem;
	margin:35px 0 15px;
}

.fq-q{
	padding:16px 42px 16px 15px;
}

.fq-qt{
	font-size:1.5rem;
}

.fq-q::after{
	right:16px;
	width:9px;
	height:9px;
	margin-top:-7px;
}

.fq-item[open] .fq-q::after{
	margin-top:-2px;
}

.fq-a{
	padding:0 15px 20px;
}

.fq-atxt{
	font-size:1.4rem;
	padding:15px 0 0;
}

.nm-block{
	padding-bottom:50px;
}

.nm-group{
	font-size:1.7rem;
	margin:40px 0 18px;
}

.nm-grid{
	grid-template-columns:repeat(2, 1fr);
	grid-gap:12px;
	gap:12px;
}

.nm-cell{
	padding:20px 8px;
}

.nm-label{
	min-height:38px;
	font-size:1.2rem;
	line-height:150%;
	margin-bottom:8px;
}

.nm-num{
	font-size:4.0rem;
}

.nm-pre,
.nm-unit{
	font-size:1.4rem;
}

.nm-clients li{
	font-size:1.4rem;
	line-height:185%;
	padding:14px 0;
}

.nm-perf{
	padding:22px 18px;
	margin-bottom:15px;
}

.nm-list li{
	font-size:1.4rem;
}

.nm-list li::before{
	top:10px;
}

}
