@charset "UTF-8";


body.privacy .common_page-title strong {
	column-gap: clamp(0.313rem, -3.056rem + 7.02vw, 1.563rem);
}
.main_container {
	margin: 0 auto;
}

/* ポリシー共通 */
.policy_wrapper {
	display: block;
	overflow: hidden;
	max-width: 1000px;
	margin: 0 auto;
}


.policy_contents {
	display: block;
	max-width: 815px;
	width: 100%;
	margin: 0 auto 45px;
}

.policy_contents dt {
	color: #2b2b2b;
	font-weight: bold;
	font-size: clamp(1.063rem, 0.894rem + 0.35vw, 1.125rem);
	text-align: center;
}

.policy_contents dd {
	font-weight: 500;
	font-size: 14px;
	line-height: clamp(1.5rem, 0.489rem + 2.11vw, 1.875rem);
	text-align: justify;
	text-indent: 1em;
}

.policy_contents dd * {
	text-indent: 0;
}

/* プライバシー */
.side_address-container {
	margin-top: 30px;
}

.side_address-container h2 {
	font-weight: bold;
	font-size: 14px;
}

.side_address-container address {
	font-style: normal;
}

.privacy .policy_contents a {
	color: #1d00ff;
}

/* クッキー */
.browser_cookie-link {
	display: flex;
	line-height: normal;
	flex-direction: column;

	row-gap: 7px;
}

.browser_cookie-link li {
	display: flex;
	position: relative;
	align-items: center;
}

.browser_cookie-link li::before {
	display: inline-block;
	width: 4px;
	height: 4px;
	margin-right: 0.5em;
	border-radius: 100%;
	background-color: #434343;
	content: "";
}

.browser_cookie-link a , .analytics_link {
	position: relative;
	padding-right: 0.5em;
	color: #1d00ff;
}

.browser_cookie-link a::after , .analytics_link::after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #1d00ff;
	content: "";
}

.browser_cookie-link a i , .analytics_link i {
	margin-left: 0.5em;
}

.analytics_link {
	display: inline-block;
	margin-top: 3px;
	font-weight: 500;
	word-break: break-all;
}

/* ポリシーナビゲーション */

.policy_link {
	display: flex;
	max-width: 1000px;
	margin: 0 auto;
}

.policy_link a {
	display: inline-flex;
	max-width: fit-content;
	margin-left: auto;
	color: #000000;
	font-weight: 500;
	font-size: 17px;
	column-gap: 20px;
	align-items: center;
	transition: all 0.5s;
}

.policy_link a:hover {
	opacity: 0.6;
}

.policy_link a i {
	font-size: 21px;
}


@media screen and (min-width: 768px) {
	.main_container {
		position: relative;
		padding-bottom: 170px;
	}
	.main_container::before {
		position: absolute;
		top: 400px;
		left: 50%;
		z-index: -1;
		transform: translateX(-50%);
		max-width: 2100px;
		width: 109.375%;
		background-image: url(../images1/policy_bg.png);
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 100%;
		opacity: 0.1;
		content: "";

		aspect-ratio: 105/46;
	}

	.common_page-title {
		margin-bottom: 50px;
	}

	.policy_wrapper {
		width: 95%;
	}

	.policy_contents::before {
		display: block;
		position: relative;
		left: 50%;
		transform: translateX(-50%);
		width: 1000px;
		height: 1px;
		margin-bottom: 30px;
		background-color: #dcdcdc;
		content: "";
	}

	/* ポリシー共通 */


	.policy_contents {
		margin-bottom: 45px;
	}
	.policy_contents dt {
		margin-bottom: 15px;
	}

	.dt-br {
		display: none;
	}

	.policy_contents dd , .side_address-container h2 {
		font-weight: 500;
	}
	.policy_contents dd:not(:nth-last-of-type(1)) {
		margin-bottom: 50px;
	}

	/* ポリシーナビゲーション */
	.policy_link {
		width: 95%;
	}
}

@media screen and (max-width: 767px) {
	.main_container {
		width: calc(100% - 40px);
		padding-bottom: 115px;
	}
	.common_page-title {
		width: calc(100% - 20px);
		margin-bottom: 25px;
	}


	.policy_wrapper {
		width: 100%;
		padding: 0 10px;
	}

	/* ポリシー共通 */
	.policy_contents {
		margin-bottom: 40px;
	}
	.policy_contents dt {
		margin-bottom: 10px;
	}

	.policy_contents dd , .side_address-container h2 {
		font-weight: 300;
	}
	.policy_contents dd:not(:nth-last-of-type(1)) {
		margin-bottom: 30px;
	}

	/* ポリシーナビゲーション */
	.policy_link {
		width: 100%;
	}
}
