@charset "UTF-8";


body {
    background-color: #f7f6f5;
}
p{
	padding: 0;
}

.policy_box{
	margin: auto;
	max-width: 1100px;
	padding:70px 25px 120px;
	background-color: #f7f6f5;
}
.policy_box a{
	text-decoration: underline;
}
.policy_box p{
	font-size: 15px;
	line-height: 1.45em;
	padding-bottom: 25px;
}

.policy_box h1{
	text-align: center;
	font-size: 160%;
	font-family: "Noto Serif JP", serif;
	font-weight:600;
}
.policy_box h1 span{
	font-size: 90%;
}
.greeting{
	margin: auto;
	max-width: 800px;
	padding:60px 0 0;
}

.policy_box h2{
	text-align: center;
	font-size: 150%;
	padding-bottom: 15px;
	font-family: "Noto Serif JP", serif;
}

.policy_box h3{
	position: relative;
	padding-left: 70px;
	margin-bottom: 20px;
	font-size: 130%;
	font-weight:600;
}
.policy_box h3::before{
	content: "";
	display:block;
	position: absolute;
	top:50%;
	left:0;
	background-color: #333;
	width:60px;
	height:2px;
}

.policy_box h4{
	display: flex;
	flex-wrap: wrap;
	margin:10px 0 10px;
	padding-left: 20px;
	font-weight:600;
}
.policy_box h4::before{
	content: "";
	display:block;
	margin: auto 3px auto 0;
	width: 14px;
	height:14px;
	background-color:#333;
}

.company{
	margin: auto;
	max-width: 800px;
	padding:120px 0 0;
}

.company-item{
	display: flex;
	flex-wrap: wrap;
	padding: 12px 5px 8px;
	border-bottom: 1px solid #ccc;
	font-size: 15px;
}
.company-item div:nth-child(1){
	width:150px;
	margin: auto 0;
}
.company-item div:nth-child(2){
	width:calc(100% - 150px);
}

.company-bottom{
	text-align: center;
	padding: 20px;
	font-size: 15px;
}


.guideline{
	margin: auto;
	max-width: 800px;
	padding:120px 0 0;
}
.guideline_item{
	padding:50px 0 0;
}
.guideline_item p{
	padding-left: 20px;
}


@media screen and (max-width:520px) {
	.policy_box {
		padding:10vw 6vw;
	}
	.greeting {
		padding:10vw 0 0;
	}
	
	.policy_box h1 {
		margin: 0;
		line-height: 1.3em;
	}
	
	.company {
		padding:10vw 0 0;
	}
	.policy_box h2{
		margin: 0;
	}
	.policy_box h3 {
		padding-left: 50px;
		font-size: 120%;
	}
	.policy_box h3::before {
		width: 42px;
	}
	.policy_box p {
		letter-spacing: 0.03em;
		line-height: 1.5em;
	}
	.company-item {
		border-bottom: none;
	}
	.company-item div:nth-child(1) {
		width: 100%;
		text-align: center;
		background-color: #333;
		color:#fff;
	}
	.company-item div:nth-child(2) {
		width: 100%;
		padding: 8px 5px 0;
		text-align: center;
	}
	.company-item:nth-child(5) div:nth-child(2) {
		text-align: left;
	}
	
	
	.guideline {
		padding:14vw 0 0;
	}
	
	.guideline_item {
    	padding:5vw 0 0;
	}
}
