@charset "UTF-8";

/* -----------------------------------------------------------
 * Privacy policy
----------------------------------------------------------- */

.privacy-policy h1 {
	margin: 32px 0 18px;
	font-size: 18px;
	line-height: 1.6;
}

.privacy-policy h2 {
	margin: 32px 0 18px;
	font-size: 16px;
	line-height: 1.6;
}

.privacy-policy h3 {
		margin: 1em 0 0.2em;
	font-size: 14px;
	line-height: 1.6;
}

@media print, screen and (min-width: 920px) {
	.privacy-policy h1 {
		margin: 60px 0 18px;
		font-size: 24px;
		line-height: 1.6;
	}

	.privacy-policy h2 {
		margin: 22px 0 15px;
		font-size: 17px;
		line-height: 1.5;
	}

	.privacy-policy h3 {
		margin: 1em 0 0.2em;
		font-size: 17px;
		line-height: 1.5;
	}
}

.privacy-policy ul li,
.privacy-policy ol li {
	text-indent: -1em;
	margin-left: 1em;
}

.privacy-policy ul li + li,
.privacy-policy ol li + li {
	margin-top: 0.5em;
}

.privacy-policy ul li:before {
	content: "・";
}

.privacy-policy ol {
	list-style-type: none;
}



.privacy-policy table th,
.privacy-policy table td {
	border: 1px solid #000;
	padding: 0.5em;
}

@media print, screen and (min-width: 920px) {
	.privacy-policy table th:nth-child(3){
		white-space: nowrap;
	}
}


.privacy-policy table td.side {
	width: 11em;
}

.privacy-policy table td p + p {
	margin-top: 1em;
}

.privacy-policy .date,
.privacy-policy .name {
	text-align: right;
	margin-top: 1em;
}


.privacy-policy .box {
	margin-top: 40px;
}

@media print, screen and (min-width: 920px) {
	.privacy-policy .box {
		display: flex;
		justify-content: center;
		margin-top: 50px;
	}
}


.privacy-policy .box__container {
	
	padding: 15px;
	margin: 0 0 45px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	border: 1px solid #ddd;
}

@media print, screen and (min-width: 920px) {
	.privacy-policy .box__container {
		min-width: 560px;
		padding: 30px;
		margin: 0 auto;
	}
}

.privacy-policy .box__container h2 {
	margin-top: 0;
}

.privacy-policy .box__container h3 {
	width: 100%;
	margin: 0 0 8px;
	text-align: center;
	font-size: 14px;
}

@media print, screen and (min-width: 920px) {
	.privacy-policy .box__container h3 {
		margin: 0 0 20px;
		font-size: 16px;
	}
}

.p-mark {
	margin-top: 20px;
	background-color: #f5f5f5;
	padding: 20px;
}

.p-mark figure {
	width: 150px;
	margin:20px auto 0;
	padding: 15px;
	background-color: #fff;
}

.p-mark figure img {
	width: 100%;
}

@media print, screen and (min-width: 648px) {

	.p-mark {
		margin-top: 50px;
		padding: 40px;
		display: flex;
	}
	
	.p-mark p {
		width: calc(100% - 170px);
		line-height: 1.8;
	}

	.p-mark figure {
		width: 140px;
		margin:0 0 0 30px;
		padding: 20px;
	}
	
}