@charset "utf-8";

/* =====================================================================
	privacy-policy.css
===================================================================== */

/* ----------------------------------------------------------------------
 * 全デバイス共通
 * ---------------------------------------------------------------------- */

h2 {
	font-size: 2rem;
	font-weight: 900;
	text-align: center;
	background-color: #eaddca;
}
h3 {
	font-size: 1.6rem;
	font-weight: 900;
	line-height: 1.375;
	text-align: center;
}
p {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.375;
	margin: 1em 0 0 0;
}

#pageHeadingSet {
	width: 100%;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
}
#pageHeadingSet #pageHeadingSetImg img {
	width: 100%;
}
#pageHeadingSet #pageHeadingSetTxt h1 {
	font-size: 2rem;
	font-weight: 900;
	line-height: 1;
}
#pageHeadingSet p {
	line-height: 1.375;
}

#marginImg img {
	width: 100%;
}

#expenses {
	display: flex;
	flex-wrap: wrap;
}
#expenses dt,
#expenses dt img {
	width: 100%;
}
#expenses dd {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.375;
	margin: 20px 0 0 0;
}

.centerArrowLink {
	display: flex;
	justify-content: center;
	font-size: 1.6rem;
	font-weight: 900;
}


/* --------------------------------------------------
 * 画面の横幅が960px以上（PC）
 * -------------------------------------------------- */
@media screen and (min-width: 960px){
	h2 {
		line-height: 1;
		margin: 40px 0;
		padding: 1em;
	}
	h3 {
		margin: 40px 0 20px 0;
	}

	#pageHeadingSet {
		padding: 0 2%;
	}
	#pageHeadingSet #pageHeadingSetImg {
		width: 50%;
	}
	#pageHeadingSet #pageHeadingSetTxt {
		width: calc(50% - 40px);
		margin: 0 0 0 40px;
	}
	#pageHeadingSet #pageHeadingSetTxt h1 {
		margin: 60px 0;
	}
	#pageHeadingSet p {
		margin: 60px 0 0 0;
	}

	.contentBody {
		width: 920px;
		margin: 40px auto;
	}

	#marginImg {
		width: 675px;
		margin: 40px auto 0 auto;
	}

	#expenses {
		width: 800px;
		margin: 40px auto 0 auto;
		gap: 40px;
	}
	#expenses dl {
		width: calc((100% - 40px * 2) / 3);
	}
	#expenses dt {
		width: 100%;
	}

	.centerArrowLink {
		margin: 40px 0 0 0;
	}
	.centerArrowLink a {
		padding: 0 0 0 calc(25px + 20px);
		position: relative;
	}
	.centerArrowLink a::before {
		content: '';
		position: absolute;
		display: block;
		background: #000;
		height: 25px;
		width: 25px;
		clip-path: polygon(0 0, 100% 50%, 0 100%);
		top: -4.5px;
		left: 0;
	}
}


/* --------------------------------------------------
 * 画面の横幅が959pxまで（タブレット端末横）
 * -------------------------------------------------- */
@media screen and (max-width: 959px){
	h2 {
		line-height: 1.3;
		margin: 20px 0;
		padding: 17px;
	}
	h3 {
		margin: 20px 0;
	}

	#pageHeadingSet {
		padding: 0;
	}
	#pageHeadingSet #pageHeadingSetImg {
		width: 100%;
	}
	#pageHeadingSet #pageHeadingSetTxt {
		width: 88%;
		margin: 0 auto;
	}
	#pageHeadingSet #pageHeadingSetTxt h1 {
		margin: 20px 0;
		text-align: center;
	}
	#pageHeadingSet p {
		margin: 20px 0 0 0;
	}

	.contentBody {
		width: 88%;
		margin: 20px auto;
	}

	#marginImg {
		width: 280px;
		margin: 20px auto 0 auto;
	}

	#expenses {
		width: 100%;
		margin: 20px auto 0 auto;
		flex-direction: column;
		justify-content: center;
		gap: 20px;
	}
	#expenses dl {
		width: 100%;
		display: flex;
		justify-content: center;
		flex-direction: column;
	}
	#expenses dt {
		width: 240px;
		margin: 0 auto;
	}

	.centerArrowLink {
		margin: 20px 0 0 0;
	}
}