@charset "UTF-8";
/********************************************************************************

parts-config.css for サイト名

********************************************************************************/

/*============================================================
 CSS変数 for parts共通　※サイトデザインに従い適宜設定
*============================================================*/
:root {
}

/*============================================================
 ボタン
*============================================================*/
/* 標準ボタン設定　※設定必須
---------------------------------------- */
.parts-btn {
	--width: fit-content;
	--min-width: 220px;
	--max-width: unset;
	--margin: 0;
	--padding: 13px 40px;
	--font-size: var(--rem16px);
	--line-height: 26px;
	--border-radius: 8px;
	--border-width: 2px;

	--color: var(--common-color-text);
	--background: transparent;
	--border-color: var(--common-color-black);
	--hover-color: var(--common-color-white);
	--hover-background: var(--common-color-black);
	--hover-border-color: var(--common-color-black);

	--transition: 0.3s;
}
.parts-btn:not([data-icon="none"]) {
	background-image: url(../images/common/icon-btn-arrow.svg);
	background-repeat: no-repeat;
	background-position: center right 8px;
	background-size: 16px auto;
}
.parts-btn:not([data-icon="none"]):hover {
	background-image: url(../images/common/icon-btn-arrow-white.svg);
	background-repeat: no-repeat;
	background-position: center right 8px;
	background-size: 16px auto;
}

/* オプション設定
---------------------------------------- */
/* ヘッダーボタン */
.parts-btn[data-name^="header"] {
	--min-width: unset;
	--padding: 25px 8px;
	--border-radius: unset;
	--color: var(--common-color-white);
	--hover-color: var(--common-color-white);
}
.parts-btn[data-name="header-documents"] {
	--width: 140px;
	--font-weight: 500;
	--background: var(--common-color-black);
	--border-color: var(--common-color-black);
	--hover-background: #757575;
	--hover-border-color: #757575;
}
.parts-btn[data-name="header-analysis-request-dl"] {
	--width: 185px;
	--padding: 12px 8px;
	--font-weight: 500;
	--background: var(--common-color-black);
	--border-color: var(--common-color-black);
	--hover-background: var(--common-color-black);
	--hover-border-color: var(--common-color-black);
}
.parts-btn[data-name="header-analysis-request-dl"] .label {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
}
.parts-btn[data-name="header-analysis-request-dl"] .label::before {
	display: block;
	content: "";
	width: 24px;
	height: 24px;
	background-image: url(../images/common/icon-btn-download-white.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 24px auto;
}
.parts-btn[data-name="header-estimate-analysis"] {
	--width: 200px;
	--background: var(--common-color-accent);
	--border-color: var(--common-color-accent);
	--hover-background: #DEB964;
	--hover-border-color: #DEB964;
}
.parts-btn[data-name="header-estimate-investigation"] {
	--width: 200px;
	--background: #EB8014;
	--border-color: #EB8014;
	--hover-background: #EDA35A;
	--hover-border-color: #EDA35A;
}
.parts-btn[data-name="header-contact"] {
	--width: 160px;
	--background: var(--common-color-accent);
	--border-color: var(--common-color-accent);
	--hover-background: #DEB964;
	--hover-border-color: #DEB964;
}
/* 黒ボタン */
.parts-btn[data-name="black"] {
	--color: var(--common-color-white);
	--background: var(--common-color-black);
	--border-color: var(--common-color-black);
	--hover-color: var(--common-color-white);
	--hover-background: #757575;
	--hover-border-color: #757575;
}
.parts-btn[data-name="black"]:not([data-icon="none"]) {
	background-image: url(../images/common/icon-btn-arrow-white.svg);
}
.parts-btn[data-name="black"]:not([data-icon="none"]):hover {
	background-image: url(../images/common/icon-btn-arrow-white.svg);
}

/* 白ボタン */
.parts-btn[data-name="border-white"] {
	--color: var(--common-color-white);
	--background: var(--common-color-black);
	--border-color: var(--common-color-black);
	--hover-color: var(--common-color-white);
	--hover-background: var(--common-color-black);
	--hover-border-color: var(--common-color-black);
}
/* アクセント色ボタン */
.parts-btn[data-name="accent"] {
	--color: var(--common-color-white);
	--background: var(--common-color-accent);
	--border-color: var(--common-color-accent);
	--hover-color: var(--common-color-white);
    --hover-background: #DEB964;
    --hover-border-color: #DEB964;
}
.parts-btn[data-name="accent"]:not([data-icon="none"]) {
	background-image: url(../images/common/icon-btn-arrow-white.svg);
}
.parts-btn[data-name="accent"]:not([data-icon="none"]):hover {
	background-image: url(../images/common/icon-btn-arrow-white.svg);
}

/* ダウンロードボタン */
.parts-btn[data-name="download"] .label {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
}
.parts-btn[data-name="download"] .label::before {
	display: block;
	content: "";
	width: 24px;
	height: 24px;
	background-image: url(../images/common/icon-btn-download.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 24px auto;
}
.parts-btn[data-name="download"]:hover .label::before {
	background-image: url(../images/common/icon-btn-download-white.svg);
	background-position: center;
}

/* 送信ボタン */
input.parts-btn[type="submit"] {
	--width: 144px;
	--min-width: unset;
	--color: var(--common-color-white);
	--background: var(--common-color-black);
	--border-color: var(--common-color-black);
	--hover-color: var(--common-color-white);
	--hover-background: #757575;
	--hover-border-color: #757575;
}
input.parts-btn[type="submit"]:not([data-icon="none"]) {
	background-image: url(../images/common/icon-btn-arrow-white.svg);
}
input.parts-btn[type="submit"]:not([data-icon="none"]):hover {
	background-image: url(../images/common/icon-btn-arrow-white.svg);
}

/*============================================================
 リスト
*============================================================*/
/* 箇条書きリスト（ul）
---------------------------------------- */
/* 基本設定 */
.parts-list-dot {
	--gap: 8px;
	--marker-color: var(--common-color-text);
}
.parts-list-dot[data-marker="accesnt"] li::marker {
	color: var(--common-color-accent);
}

/* 連番リスト（ol）
---------------------------------------- */
/* 基本設定 */
.parts-list-num {
	--gap: 8px;
	--marker-color: var(--common-color-text);
}

/* 定義リスト（dl）
---------------------------------------- */
/* 基本設定 */
.parts-dl {
	--gap: 24px;

	--row-padding: 0 0 16px 0;
	--row-border-bottom: solid 1px #dcdcdc;
	--row-gap: 8px 16px;

	--label-width: 112px;
	--label-font-weight: bold;
	--label-font-size: 16px;
	--label-line-height: 160%;
	--label-color: var(--common-color-gray);

	/* ベーステキスト以外の場合指定 */
	/* --data-font-weight: 400;
	--data-font-size: 16px;
	--data-line-height: 160%;
	--data-color: var(--common-color-text); */
}

/*============================================================
 テキスト
*============================================================*/
/* 行数制限(省略文字「...」付)
---------------------------------------- */
.parts-text[data-type="clamp"] {
	--line: 2;
}

/*============================================================
 アコーディオン
*============================================================*/
#main-contents .parts-accordions {
	--accordions-icon-width: 26px;
}
#main-contents .parts-accordions .accordion {
	padding: 16px;
	gap: 0;
}
#main-contents .parts-accordions .accordion .accordion-summary {
	gap: 26px;
}
#main-contents .parts-accordions .accordion .accordion-summary .info {
	flex: 1;
}
#main-contents .parts-accordions .accordion .accordion-summary .info .category {
	width: fit-content;
	padding: 6px 16px;
	border-radius: 2px;
	background-color: var(--common-color-accent);
	font-weight: 500;
	font-size: 12px;
	line-height: 100%;
	color: var(--common-color-white);
	margin-bottom: 4px;
}
#main-contents .parts-accordions .accordion .accordion-summary .info .summary {
	font-weight: bold;
	font-size: 16px;
	line-height: 140%;
}
#main-contents .parts-accordions .accordion .accordion-content .content-inner {
	padding: 4px 0 0 0;
	gap: 26px;
}
#main-contents .parts-accordions .accordion .accordion-content .content-inner::before {
	background-image: none;
}
#main-contents .parts-accordions .accordion .accordion-content .content-inner .content {
	font-size: 14px;
	line-height: 200%;
}
#main-contents .parts-accordions .accordion .accordion-content .content-inner .content p a {
	text-decoration: underline;
    color: #0460AB;
}

/********************************************************************************

for tablet

********************************************************************************/
@media screen and (max-width: 1127px) {
	/*============================================================
	 テキスト
	*============================================================*/
	/* 行数制限(省略文字「...」付)
	---------------------------------------- */
	.parts-text[data-type="clamp"] {
		--line: 3;
	}
}



/********************************************************************************

for SP

********************************************************************************/
@media screen and (max-width: 767px) {
	/*============================================================
	 ボタン
	*============================================================*/
	/* 標準ボタン設定
	---------------------------------------- */
	.parts-btn {
		/* --width: 274px;
		--min-width: unset;
		--max-width: unset;
		--margin: 0 auto;
		--padding: 22px 0;
		--font-size: var(--rem16px);
		--line-height: 100%;
		--border-radius: 0; */
	}

	/* オプション設定
	---------------------------------------- */
	/* ダウンロードボタン */
	.parts-btn[data-name="download"] .label::before {
		width: 16px;
		height: 16px;
		background-size: 16px auto;
	}


	/*============================================================
	 リスト
	*============================================================*/
	/* 定義リスト（dl）
	---------------------------------------- */
	/* 基本設定 */

	
	/*============================================================
	 テキスト
	*============================================================*/
	/* 行数制限(省略文字「...」付)
	---------------------------------------- */
	.parts-text[data-type="clamp"] {
		--line: 2;
	}

	/*============================================================
	 アコーディオン
	*============================================================*/
	#main-contents .parts-accordions .accordion {
		padding: 16px 0;
	}
	#main-contents .parts-accordions .accordion .accordion-summary {
		gap: 16px;
	}
	#main-contents .parts-accordions .accordion .accordion-content .content-inner {
		gap: 16px;
	}

}
