@charset "UTF-8";

.main_container {
	position: relative;
}
.main_container::before {
	position: absolute;
	left: 50%;
	z-index: -1;
	transform: translateX(-50%);
	width: 1000%;
	height: 1000000px;
	background-repeat: repeat;
	background-position: center top;
	content: "";
}

.title_container {
	text-align: center;
}

.policy_container {
	max-width: 815px;
	margin: auto;
}

.policy_container dt {
	margin-bottom: 15px;
	font-weight: bold;
	font-size: 17px;
	text-align: center;
}

@media screen and (min-width: 501px) {
	.policy_container dt br {
		display: none;
	}
}

.policy_container dd {
	font-size: 14px;
	line-height: 27px;
	text-align: justify;
}

.policy_container dd:not(:last-of-type) {
	text-indent: 1em;
}

.side_address-container {
	margin-top: 30px;
}

.side_address-container h3 {
	font-weight: normal;
	font-size: 14px;
}

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

.policy-page-link_wrap {
	text-align: right;
}
.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_coolie-link li a {
	border-bottom: 1px solid #1d00ff;
	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;
}

.no-indent {
	text-indent: 0 !important;
}

/*.analytics_link {
	border-bottom: 1px solid #1d00ff;
	color: #1d00ff;
}*/

.top-margin {
	margin-top: 30px;
}
.policy-page-link_wrap a {
	display: inline-flex;
	font-size: 16px;
	column-gap: 20px;
	align-items: center;
}
.policy-page-link_wrap a i {
	font-size: 20px;
}
@media screen and (min-width: 768px) {
	.main_container {
		padding-top: calc(80px + 50px);
		padding-bottom: 100px;
	}
	.main_container::before {
		top: 80px;
		background-image: url(../images/policy_bg-pc.png);
		background-size: 1920px 1902px;
		opacity: 0.4;
	}

	.policy_container {
		width: 95%;
		margin-top: 70px;
	}

	.policy_container dt {
		margin-bottom: 15px;
	}
	.policy_container dt:not(:first-of-type) {
		margin-top: 60px;
	}
	.policy-page-link_wrap {
		margin-top: 45px;
	}
}


@media screen and (max-width: 767px) {
	.main_container {
		padding-top: calc(60px + 15px);
		padding-bottom: 110px;
	}
	.main_container::before {
		top: 60px;
		background-image: url(../images/policy_bg-mb.png);
		background-size: 375px 2705px;
		opacity: 0.5;
	}
	.policy_container {
		width: 100%;
		margin-top: 35px;
		padding: 0 30px;
	}
	.policy_container dt {
		margin-bottom: 15px;
	}
	.policy_container dt:not(:first-of-type) {
		margin-top: 50px;
	}
	.policy-page-link_wrap {
		margin-top: 60px;
	}
}
