@charset "utf-8";
body {
		background: #F3F4F5;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
		.second_hdr hgroup p {
				font-size: 28px;
		}
}
@media(max-width: 400px) {
		.second_hdr hgroup p {
				font-size: 27px;
		}
		.second_hdr hgroup h2 {
				font-size: 15px;
		}
}
section {
		padding: 80px 0;
}
@media(max-width: 767px) {
		section {
				padding: 40px 0 80px;
		}
}
.policy_lead {
		margin-bottom: 40px;
}
@media(max-width: 767px) {
		.policy_lead {
				margin-bottom: 20px;
		}
}
.policy_lead p {
		line-height: 2.0;
}
.policy_wrap {
		background-color: #ffffff;
		border-radius: 8px;
		box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.05);
		margin: 0 0 30px;
}
.policy_hd {
		padding: 40px 50px;
		position: relative;
		cursor: pointer;
		padding-right: 190px;
}
.policy_hd h3 {
		font-size: 24px;
		font-weight: 600;
		line-height: 1.6;
}
.policy_hd p {
		font-family: "Poppins";
		font-size: 13px;
		font-weight: 500;
		line-height: 1.3;
		letter-spacing: 0;
		color: #224BA1;
		padding-top: 5px;
		margin: 0
}
@media(max-width: 767px) {
		.policy_hd p {
				font-size: 12px;
		}
}
.policy_hd .policy_hd_trigger {
		position: absolute;
		right: 60px;
		top: calc(50% - 10px);
		width: 125px;
		font-weight: 600;
		color: #3356A1;
		padding-right: 36px;
		box-sizing: border-box;
		text-align: right;
}
.policy_hd_trigger::before, .policy_hd_trigger::after {
		content: '';
		display: block;
		position: absolute;
		top: calc(50% - 14px);
		right: 0;
		width: 28px;
		height: 28px;
		border-radius: 8px;
}
.policy_hd_trigger::before {
		background: #3356A1;
}
.policy_hd_trigger::after {
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 28px;
		background-image: url("../images/job_arw_down.png")
}
.isOpen .policy_hd_trigger::after {
		background-image: url("../images/job_arw_up.png")
}
.policy_cont {
		padding: 50px 100px;
		/* overflow: hidden;
		height: 0;
		transition: height 0.2s cubic-bezier(0.33, 1, 0.68, 1); */
		position: relative;
		display: none
}
.policy_cont::before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 40px;
		width: calc(100% - 80px);
		height: 1px;
		transform-origin: left center;
		background: #C2D3D8;
		transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
		transition-delay: 0.15s;
		transform: scaleX(0)
}
.policy_cont.isOpen {
		/* height: auto;
		overflow: visible; 
		padding-bottom: 50px;
		transition: height 0.5s cubic-bezier(0.33, 1, 0.68, 1);*/
}
.policy_cont.isOpen::before {
		transform: scaleX(1)
}
@media(max-width: 960px) {
		.policy_hd {
				padding: 25px;
				padding-right: 140px;
		}
		.policy_hd h3 {
				font-size: 20px;
		}
		.policy_hd .policy_hd_trigger {
				right: 30px;
				top: calc(50% - 10px);
				width: 115px;
				padding-right: 30px;
				font-size: 15px;
		}
		.policy_hd_trigger::before, .policy_hd_trigger::after {
				top: calc(50% - 10px);
				width: 22px;
				height: 22px;
				border-radius: 6px;
		}
		.policy_hd_trigger::after {
				background-size: 22px;
		}
		.policy_cont {
				padding: 30px;
		}
		.policy_cont::before {
				left: 30px;
				width: calc(100% - 60px);
		}
}
@media(max-width: 767px) {
		.policy_wrap {
				border-radius: 6px;
				margin: 0 0 15px;
		}
		.policy_hd {
				padding: 20px 15px;
				padding-right: 50px;
		}
		.policy_hd h3 {
				font-size: 16px;
		}
		.policy_hd_trigger span {
				display: none
		}
		.policy_hd .policy_hd_trigger {
				right: 15px;
				top: calc(50% - 12px);
				width: 115px;
				padding-right: 30px;
				width: 24px;
				height: 24px;
		}
		.policy_hd_trigger::before, .policy_hd_trigger::after {
				top: calc(50% - 12px);
				width: 24px;
				height: 24px;
				border-radius: 6px;
		}
		.policy_hd_trigger::after {
				background-size: 24px;
		}
		.policy_cont {
				padding: 15px;
		}
		.policy_cont::before {
				left: 15px;
				width: calc(100% - 30px);
		}
}
.policy_cont h4 {
		margin: 1.5em 0 0.3em;
		font-size: 16px;
		font-weight: 600;
		line-height: 1.6;
}
.policy_cont h5 {
		margin: 1em 0 0;
		font-size: 16px;
		font-weight: 500;
		line-height: 1.6;
}
.policy_cont h6 {
		margin: 1.5em 0 0;
		font-size: 16px;
		font-weight: 500;
		line-height: 2.0;
}
.policy_cont .extra_block h5 {
		font-weight: 500;
}
.policy_cont .extra_block h6 {
		margin-top: 0;
		font-weight: 500;
}
.policy_cont h6 + p {
		margin-left: 1em;
}
.policy_cont p {
		line-height: 1.7;
		margin: 0 0 1.5em
}
.policy_cont ul {
		list-style: none;
		margin-left: 1em;
		margin-bottom: 1.5em;
}
.policy_cont ul li {
		line-height: 2.0;
		margin: 0 0 3px;
		position: relative;
}
.policy_cont ul li::before {
		content: '・';
		display: block;
		position: absolute;
		top: 0;
		left: -1em;
}
.policy_cont ol {
		list-style: none;
		margin-left: 1.5em;
		margin-bottom: 1.5em;
}
.policy_cont h5 + ol {
		margin-left: 3em;
}
.policy_cont ol li {
		line-height: 2.0;
		margin: 0 0 3px;
		position: relative;
}
.policy_cont ol li::before {
		display: block;
		position: absolute;
		top: 0;
		left: -1.2em;
}
.policy_cont ol li:nth-child(1)::before {
		content: '①';
}
.policy_cont ol li:nth-child(2)::before {
		content: '②';
}
.policy_cont ol li:nth-child(3)::before {
		content: '③';
}
.policy_cont ol li:nth-child(4)::before {
		content: '④';
}
.policy_cont ol li:nth-child(5)::before {
		content: '⑤';
}
.policy_cont ol li:nth-child(6)::before {
		content: '⑥';
}
.policy_cont ol li:nth-child(7)::before {
		content: '⑦';
}
.policy_cont ol li:nth-child(8)::before {
		content: '⑧';
}
.policy_cont ol li:nth-child(9)::before {
		content: '⑨';
}
.policy_cont ol li:nth-child(10)::before {
		content: '⑩';
}
.policy_cont .number_list ol {
		list-style: decimal;
		margin-left: 0;
		padding-left: 1.5em;
		margin-bottom: 1.5em;
}
.policy_cont .number_list ol li {
		line-height: 2.0;
		margin: 0 0 1.5em;
		position: relative;
}
.policy_cont .number_list ol li::before {
		display: none
}
.policy_cont p a {
		color: #224BA1;
		text-decoration: underline;
		text-underline-offset: 4px;
}
@media (hover: hover) {
		.policy_cont p a:hover {
				color: #224BA1;
				text-decoration: none;
		}
}
.policy_cont .wp-block-image {
		max-width: 390px;
}
.policy_cont .wp-block-image img {
		width: 100%;
		height: auto
}
@media(max-width: 767px) {
		.policy_cont .wp-block-image {
				max-width: 200px;
		}
}
@media(max-width: 767px) {
		.policy_hd h3 {
				font-size: 15px;
		}
}
main .hrCenter {
		margin-top: 60px;
}
@media(max-width: 767px) {
		main .hrCenter {
				margin-top: 40px;
		}
}