@charset "utf-8";


#main_contents {
	margin-inline: auto;
	width: 70%;
}



#main_contents p {
	font-size: 2rem;
	margin-bottom: 60px;
}

p.right_sentence {
	text-align: right;
}



.basic_policy dt {
	font-size: 3rem;
	margin-bottom: 10px;
}

.basic_policy dd {
	font-size: 2rem;
	margin-bottom: 50px;
	padding-left: 50px;
}


.contact {
	border: 5px solid var(--black);
	margin: 100px 0;
	padding: 55px 45px;
}

.contact h2 {
	margin-bottom: 15px;
}

.contact .information {
	margin-bottom: 60px;
}

#main_contents .contact .information p {
	margin-bottom: 10px;
}

.contact table .w30 {width: 30%;}
.contact table .w35 {width: 35%;}


.contact table {
	display: table;
	width: 100%;
}

.contact table th,
.contact table td {
	padding: 25px 0;
	text-align: center;
	vertical-align: middle;
}

.contact table th {
	background-color: #fff;
	border-bottom: 5px solid var(--pink);
	font-weight: bold;
}

.contact table th:nth-of-type(2) {
	border-left: 10px solid #fff;
	border-right: 10px solid #fff;
}

.contact table tr:nth-of-type(2n-1) td {
	background-color: #f7f7f7;
}

.contact table .manager ruby {
	letter-spacing: -0.2rem;
}

.contact table .manager ruby rt {
	font-size: 1.2rem;
}


/*==============================
	600px以上1024px以下の場合
==============================*/

@media screen and (min-width: 600px) and (max-width: 1024px) {
	
	
	/*--------------------tb版調整--------------------*/

	.pc_only {
		display: none!important;
	}
	.sp_only {
		display: none!important;
	}
	.tb_only {
		display: block!important;
	}
	
	
	
	#main_contents {
		width: 80%;
	}
	
	#main_contents p {
		font-size: 1.7rem;
		margin-bottom: 40px;
	}
	
	
	.basic_policy dt {
		font-size: 2.2rem;
	}

	.basic_policy dd {
		font-size: 1.7rem;
		margin-bottom: 30px;
		padding-left: 39px;
	}
	
	
	.contact {
		border-width: 4px;
		margin: 50px 0 60px;
		padding: 40px 25px;
	}

	.contact h2 {
		margin-bottom: 15px;
	}
	
	.contact .information {
		margin-bottom: 40px;
	}
	
	.contact .information p {
		margin-bottom: 10px;
	}
	
	.contact .information p span {
		display: block;
		font-weight: bold;
	}

	.contact table th {
		border-bottom-width: 3px;
		font-size: 1.8rem;
		padding: 15px 0;
	}
	
	.contact table td {
		font-size: 1.6rem;
		padding: 20px 0;
	}
	
	.contact table th:nth-of-type(2) {
		border-left-width: 5px;
		border-right-width: 5px;
	}
	
}



/*==============================
	599px以下の場合
==============================*/

@media screen and (max-width: 599px) {
	
	
	/*--------------------sp版調整--------------------*/
	
	.pc_only {
		display: none!important;
	}
	.tb_only {
		display: none!important;
	}
	.sp_only {
		display: block!important;
	}
	
	
	
	#main_contents {
		width: 90%;
	}
	
	#main_contents p {
		font-size: 1.5rem;
		margin-bottom: 30px;
	}
	
	
	.basic_policy dt {
		font-size: 1.7rem;
		margin-bottom: 5px;
		text-indent: -2.8rem;
		padding-left: 2.8rem;
	}

	.basic_policy dd {
		font-size: 1.5rem;
		margin-bottom: 20px;
		padding-left: 28px;
	}


	.contact {
		border-width: 3px;
		margin: 50px 0 60px;
		padding: 25px 5%;
	}
	
	.contact .information {
		margin-bottom: 30px;
		padding-left: 15px;
	}
	
	.contact .information p {
		margin-bottom: 10px;
	}
	
	.contact .information p span {
		display: block;
		font-weight: bold;
	}
	
	
	.contact table {
		display: block;
	}

	.contact table tr {
		border-top: 2px solid #ccc;
		display: block;
		padding: 12px 10px;
	}

	.contact table tr:nth-of-type(2n-1) td {
		background-color: #fff;
	}
	
	.contact table tr:first-child {
		display: none;
	}
	
	.contact table tr:last-child {
		border-bottom: 2px solid #ccc;
	}
	
	.contact table th,
	.contact table td {
		display: block;
		padding: 0 0;
		text-align: left;
	}
	
	.contact table td {
		font-size: 1.4rem;
	}
	
	.contact table td:first-child {
		font-size: 1.5rem;
		font-weight: bold;
		margin-bottom: 3px;
	}

	.contact table td.manager,
	.contact table td.tell {
		position: relative;
		padding-left: 7.5rem;
	}
	
	.contact table td.manager::before,
	.contact table td.tell::before {
		bottom: 10px;
		font-size: 1.4rem;
		height: 1.4rem;
		left: 0;
		position: absolute;
		width: 7.5rem;
	}
	.contact table td.manager::before {
		content: "担当者　　";
	}
	.contact table td.tell::before {
		content: "連絡先　　";
	}
	
	.contact table .manager ruby rt {
		font-size: 1rem;
	}


}