@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&amp;display=swap');
section {
		font-weight: 500;
}
.page_hdr h2.jp_hd {
		font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
.policy_cont, .sdgs_sustainability_cont {
		padding-top: 55px;
}
.policy_lead, .sdgs_sustainability_lead {
		line-height: 2.0;
		margin: 0 0 60px;
}
.policy_gr h3, .policy_hd {
		color: #004ea2;
		font-size: 24px;
		margin: 0 0 15px;
		margin-left: 35px;
		position: relative;
		font-weight: 600;
}
.policy_gr h3 span, .policy_hd span {
		position: absolute;
		display: block;
		top: 5px;
		left: -35px;
		font-family: "Inter", sans-serif;
		font-weight: 520;
		line-height: 1;
		font-size: 110%;
}
.policy_gr h3 span:lang(en), .policy_hd span:lang(en) {
		font-size: 100%;
		top: 0.12em;
}
.policy_gr h3 span:lang(en), .policy_gr h3:lang(en),
.policy_hd span:lang(en), .policy_hd:lang(en) {
		font-weight: 500;
		font-family: 'Roboto', sans-serif;
}
.policy_gr p {
		line-height: 1.8;
		margin: 0 0 50px;
}
.sign_section p {
		line-height: 2.0;
}
.sign_section p:lang(en) {
		line-height: 1.8;
}

.sign {
		width: 250px;
		margin-top: 35px;
}
.sign img {
		width: 100%;
		height: auto;
}
.policy_cont p, .policy_cont li {
		line-height: 2.0;
		font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
		font-weight: 500;
}
.policy_cont p:lang(en), .policy_cont li:lang(en) {
		font-family: 'Roboto', sans-serif;
}
/* ================ */
.policy_cont p.mb30 {
		margin-bottom: 30px;
}
.policy_cont p.mb40 {
		margin-bottom: 40px;
}
.policy_cont p.mb50 {
		margin-bottom: 50px;
}
.policy_cont p.mgnb00 {
		margin-bottom: 0;
}
.alignright {
		text-align: right;
}
ul.privacypolicy_alpha {
		margin-left: 1.75em;
		margin-bottom: 40px;
}
.privacypolicy_alpha li {
		list-style: none;
		margin: 0 0 10px;
		position: relative;
}
.privacypolicy_alpha li span {
		position: absolute;
		top: 0;
		left: -1.75em;
		font-family: 'Inter', sans-serif;
}
ul.privacypolicy_alpha li:last-child {
		margin-bottom: 0;
}
ul.policy_number_ul {
		margin-left: 2.25em;
		margin-bottom: 50px;
}
.policy_number_ul li {
		position: relative;
		list-style: none;
		margin: 0 0 7px;
}
.policy_number_ul li.extra {
		margin-bottom: 40px;
}
.policy_number_ul li span {
		position: absolute;
		top: 0;
		left: -2.25em;
}
ul.policy_number_ul li:last-child {
		margin: 0;
}
.policy_contact {
		border: 1px solid #dadce0;
		display: flex;
		align-items: center;
		padding: 15px 0;
		font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
		font-weight: 500;
		max-width: 700px;
		margin-bottom: 15px;
}
.policy_contact:lang(en) {
		font-family: 'Roboto', sans-serif;
		max-width: 800px;
}
.policy_contact_hd {
		padding: 0 30px;
		color: #004ea2;
		font-weight: 500;
}
.policy_contact_hd:lang(en) h4 {
		font-weight: 500 !important;
}
.policy_contact_caption {
		flex: 1;
		line-height: 2.0;
		padding: 0 30px;
		border-left: 1px solid #dadce0;
}
.policy_notes {
		font-size: 85%;
}
.policy_cont a {
		color: #4c5768;
		text-decoration: underline;
}
@media (hover: hover) {
		.policy_cont a:hover {
				color: #004ea2;
				text-decoration: none;
		}
}
@media(max-width: 767px) {
		.policy_cont .sdgs_sustainability_cont {
				padding-top: 40px;
				padding-left: 15px;
				padding-right: 15px;
		}
		.policy_gr h3, .policy_hd {
				font-size: 18px;
				margin: 0 0 15px;
				margin-left: 25px;
		}
		.policy_gr h3 span, .policy_hd span {
				top: 5px;
				left: -25px;
		}
		.policy_gr p {
				margin: 0 0 40px;
		}
		.sign {
				width: 160px;
				margin-top: 15px;
		}
		.policy_lead, .sdgs_sustainability_lead {
				line-height: 1.8;
				margin: 0 0 60px;
		}
		.policy_cont p, .policy_cont li {
				line-height: 1.8;
		}
		.policy_contact {
				display: block;
				padding: 15px;
		}
		.policy_contact_hd {
				padding: 0 15px 15px;
				border-bottom: 1px solid #dadce0;
		}
		.policy_contact_caption {
				line-height: 1.8;
				padding: 15px 15px 0;
				border: none;
		}
		.extralink {
				font-size: 11px;
		}
}
/* ================= */
.sdgs_sustainability_lead {
		line-height: 1.8;
		font-weight: 500;
		margin: 0 0 60px;
}
.governance_hd {
		font-size: 24px;
		font-weight: 500;
		color: #004ea2;
		padding: 0 0 14px;
		border-bottom: 1px solid #dadce0;
		margin: 0 0 30px;
}
.governance_flex {
		display: flex;
		margin: 0 0 80px;
}
.governance_flex.last {
		margin-bottom: 0;
}
.governance_figure {
		margin-right: 40px;
		width: 480px;
}
.governance_figure img {
		width: 100%;
		height: auto;
}
.gv_figure2 {
		width: 395px;
		margin: 0 auto;
}
.governance_caption {
		flex: 1;
}
.governance_caption p {
		line-height: 1.8;
}
.governance_caption ul {
		margin-left: 1em;
		margin-top: 35px;
		list-style: none;
}
.governance_caption li {
		position: relative;
		line-height: 1.8;
		margin: 0 0 8px;
}
.governance_caption li::after {
		content: '・';
		display: block;
		position: absolute;
		top: 0;
		left: -1em;
}
@media(max-width: 1100px) {
		.governance_figure {
				margin-right: 30px;
				width: 50%;
		}
		.gv_figure2 {
				width: 82%;
		}
}
@media(max-width: 767px) {
		.sdgs_sustainability_lead {
				margin: 0 0 50px;
		}
		.governance_hd {
				font-size: 18px;
				padding: 0 0 14px;
				margin: 0 0 25px;
		}
		.governance_flex {
				display: block;
				margin: 0 0 80px;
		}
		.governance_figure {
				margin-right: 0;
				width: 100%;
				box-sizing: border-box;
				padding: 0 15px;
				margin: 0 auto 20px;
				max-width: 400px;
		}
		.gv_figure2 {
				width: 100%;
		}
}