@charset "utf-8";

.policy .lead {
	text-align: left;
	font-size: 100%;
}

.policy .circle {
	padding-left: 30px;
}

.policy .circle li {
	list-style: none;
	padding-left: 1.3em;
	text-indent: -1.3em;
}

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

@media print, screen and (max-width: 740px) {

	div#main.sitepolicy h2{
		margin:20px 0 30px 0;
	}

	div#main.sitepolicy p.website{
		text-align:center;
	}
	div#main.sitepolicy h3{
		color:#e67578;
		border-bottom:1px solid #e67578;
	}
/* --- サイトマップ -------------------- */
	div.sitemap ul{
		list-style-type: none;
		padding: 0;
	}
	div.sitemap ul{
		list-style-type: none;
	}
	div.sitepolicy.sitemap h3 a{
		color: #e67578;
	}
	div.sitepolicy.sitemap h3 a:hover{
		color: #f9b9b9;
	}

	.policy .policy-body .title {
		font-size: 16px;
		font-weight: bold;
		text-indent: 0;
	}

	.policy .policy-body ol {
		list-style: none;
		counter-reset: number;
		margin: 15px auto;
		padding: 0;
		font-size: 15px;
	}

	.policy .policy-body ol b {
		margin: 1em auto;
		display: block;
	}

	.policy .policy-body ol li {
		position: relative;
		padding-left: 22px;
	}

	.privacy .policy .policy-body ol li {
		font-weight: normal;
	}

	.policy .policy-body ol li::before {
		counter-increment: number;
		content: counter(number, decimal) ')';
		position: absolute;
		top: 0;
		left: 0;
	}

	.policy .policy-body ol li ol {
		margin: 5px auto 12px;
	}

	.policy .policy-body ol li ol li {
		padding-left: 30px;
		font-weight: normal;
	}

	.policy .policy-body ol li ol li::before {
		counter-increment: number;
		content: '('counter(number, decimal) ')';
		position: absolute;
		top: 0;
		left: 0;
	}

	.policy .policy-body ol ul {
		list-style: disc;
		padding-left: 30px;
		font-size: 14px;
	}

	.policy .policy-body ol ul li {
		font-weight: normal;
		padding: 0;
	}

	.policy .policy-body ol ul li::before {
		content: none;
	}

	.policy .contact-box {
		background-color: #f8f8f8;
		display: inline-block;
		padding: 4%;
		margin: 2% 0;
	}

	.policy .contact-box h4 {
		margin: 0;
	}

	.policy .contact-box p {
		margin: 0.75em 0 0 0;
		line-height: 1.5em;
	}

	.policy .contact-box p a {
		color: var(--accent-col01);
		text-decoration: underline;
		margin-top: 1em;
	}

	.policy .enact {
		text-align: right;
		border-top: 1px solid #e5e5e5;
		padding-top: 1em;
	}
}

/* --- PC ---------- */

@media print, screen and (min-width: 741px) {

	div#main.sitepolicy h2{
		margin:20px 0 30px 0;
	}

	div#main.sitepolicy p.website{
		text-align:center;
	}
	div#main.sitepolicy h3.privacy-title{
		color:#e67578;
		border-bottom:1px solid #e67578;
		padding:20px 0 0 0;
	}

	div#main.sitepolicy h3{
		color:#e67578;
		border-bottom:1px solid #e67578;
	}

/* --- サイトマップ -------------------- */
	div.sitemap ul{
		list-style-type: none;
		padding: 0;
	}
	div.sitemap ul{
		list-style-type: none;
	}
	div.sitepolicy.sitemap a:hover{
		color: #f9b9b9;
		text-decoration: none;
	}
	div.sitepolicy.sitemap h3 a{
		color: #e67578;
	}

	.policy .policy-body .title {
		font-size: 18px;
		font-weight: bold;
		text-indent: 0;
	}

	.policy .policy-body ol {
		list-style: none;
		padding: 0;
		counter-reset: number;
		margin: 20px auto 40px;
		font-size: 16px;
	}

	.policy .policy-body ol b {
		margin: 1em auto;
		display: block;
	}

	.policy .policy-body ol li {
		position: relative;
		padding-left: 25px;
	}

	.policy .policy-body ol li::before {
		counter-increment: number;
		content: counter(number, decimal) ')';
		position: absolute;
		top: 0;
		left: 0;
	}

	.policy .policy-body ol li ol {
		margin: 10px auto 20px;
	}

	.policy .policy-body ol li ol li {
		padding-left: 35px;
		font-weight: normal;
	}

	.policy .policy-body ol li ol li::before {
		counter-increment: number;
		content: '('counter(number, decimal) ')';
		position: absolute;
		top: 0;
		left: 0;
	}

	.policy .policy-body ol ul {
		list-style: disc;
		font-size: 14px;
	}

	.policy .policy-body ol ul li {
		font-weight: normal;
		padding: 0;
	}

	.policy .policy-body ol ul li::before {
		content: none;
	}

	.policy .contact-box {
		background-color: #f8f8f8;
		display: inline-block;
		padding: 2%;
		margin: 2% 0;
	}

	.policy .contact-box h4 {
		margin-top: 0;
	}

	.policy .contact-box p {
		margin-bottom: 0;
	}

	.policy .contact-box p a {
		color: var(--accent-col01);
		text-decoration: underline;
	}

	.policy .enact {
		text-align: right;
		border-top: 1px solid #e5e5e5;
		padding-top: 1em;
	}
}
