@charset "UTF-8";

@import url("common.css");

/* Policy text styles use child selectors so they do not leak into the
   OneTrust cookie list injected into #ot-sdk-cookie-policy. */

@media screen and (min-width : 768px){

	main > h2{
		text-align: center;
		padding: calc(64px * var(--index-scale)) 0 calc(100px * var(--index-scale)) 0;
	}

	main > h2 span{
		font-size: calc(32px * var(--index-scale));
		font-weight: 700;
		letter-spacing: 0.15em;
	}

	#policy{
		margin: 0 0 calc(100px * var(--index-scale)) 0;
	}
	#policy .inner{
		max-width: 900px;
	}

	#policy .inner > h3{
		font-size: calc(22px * var(--article-scale));
		font-weight: 700;
		letter-spacing: 0.04em;
		line-height: 1.5;
		margin: calc(56px * var(--article-scale)) 0 calc(20px * var(--article-scale)) 0;
	}
	#policy .inner > h4{
		font-size: calc(18px * var(--article-scale));
		font-weight: 700;
		letter-spacing: 0.04em;
		line-height: 1.6;
		margin: calc(32px * var(--article-scale)) 0 calc(12px * var(--article-scale)) 0;
	}
	#policy .inner > h3:first-child{
		margin-top: 0;
	}
	#policy .inner > h3 + h4{
		margin-top: 0;
	}

	#policy .inner > p,
	#policy .policy-list > li,
	#policy .policy-table th,
	#policy .policy-table td{
		font-size: calc(16px * var(--article-scale));
		letter-spacing: 0.04em;
		line-height: 2;
	}
	#policy .inner > p + p{
		margin-top: calc(12px * var(--article-scale));
	}

	#policy .inner > .policy-note{
		font-size: calc(14px * var(--article-scale));
		line-height: 1.8;
	}
	#policy .inner > .policy-note + .policy-note{
		margin-top: calc(4px * var(--article-scale));
	}
	#policy .inner > .policy-indent{
		padding: 0 0 0 1em;
		text-indent: 1em;
	}
	#policy .inner > .policy-bullet{
		padding: 0 0 0 5em;
		text-indent: -1em;
	}
	#policy .inner > .policy-bullet + .policy-bullet{
		margin-top: 0;
	}

	#policy .policy-list{
		margin: calc(12px * var(--article-scale)) 0;
		padding: 0 0 0 1.5em;
	}
	#policy .policy-list > li{
		list-style: disc;
	}

	#policy .policy-btn{
		margin: calc(32px * var(--article-scale)) 0;
	}
	/* Cookie settings button: same look as the site's .btn a.
	   OneTrust injects its own #ot-sdk-btn.ot-sdk-show-settings styles (and may
	   replace the label), so this selector is more specific and the label may wrap. */
	#policy .policy-btn #ot-sdk-btn.ot-sdk-show-settings{
		background-color: var(--color-green);
		border: 1px solid var(--color-green);
		border-radius: calc(37px * var(--common-scale));
		box-sizing: border-box;
		color: #ffffff;
		cursor: pointer;
		display: flex;
		align-items: center;
		justify-content: center;
		width: calc(270px * var(--common-scale));
		max-width: 100%;
		height: auto;
		min-height: calc(54px * var(--common-scale));
		margin: 0 auto;
		padding: calc(8px * var(--common-scale)) calc(56px * var(--common-scale));
		position: relative;
		font-family: inherit;
		font-size: calc(14px * var(--common-scale));
		font-weight: 400;
		letter-spacing: inherit;
		font-feature-settings: inherit;
		line-height: 1.4;
		white-space: normal;
		transition: background-color 0.3s;
	}
	#policy .policy-btn #ot-sdk-btn.ot-sdk-show-settings::after{
		content: '';
		display: inline-block;
		width: calc(18px * var(--common-scale));
		height: calc(16px * var(--common-scale));
		background-image: url("/common/images/icon_arrow_white.svg");
		background-size: 100% auto;
		background-position: top center;
		background-repeat: no-repeat;
		position: absolute;
		top: 0; right: calc(30px * var(--common-scale)); bottom: 0;
		margin: auto;
		transition: all 0.3s;
	}
	#policy .policy-btn #ot-sdk-btn.ot-sdk-show-settings:hover{
		background-color: #ffffff;
		color: var(--color-green);
	}
	#policy .policy-btn #ot-sdk-btn.ot-sdk-show-settings:hover::after{
		right: calc(25px * var(--common-scale));
		background-image: url("/common/images/icon_arrow_green.svg");
	}

	#policy .policy-table{
		margin: calc(24px * var(--article-scale)) 0;
	}
	#policy .policy-table table{
		width: 100%;
	}
	#policy .policy-table th,
	#policy .policy-table td{
		border: 1px solid #E3E3E3;
		padding: calc(12px * var(--article-scale)) calc(16px * var(--article-scale));
		text-align: left;
		vertical-align: top;
	}
	#policy .policy-table th{
		background-color: var(--bg-gray);
		font-weight: 700;
	}
	#policy .policy-table--wide th:first-child{
		width: 18%;
	}
	#policy .policy-table--wide th:last-child{
		width: 20%;
	}
	#policy .policy-table td p,
	#policy .policy-table td ul,
	#policy .policy-table td li{
		line-height: inherit;
	}
	#policy .policy-table td p + p,
	#policy .policy-table td li + li{
		margin-top: calc(8px * var(--article-scale));
	}
	#policy .policy-table td ul{
		padding: 0 0 0 1.2em;
	}
	#policy .policy-table td li{
		list-style: disc;
	}

	#policy .inner > p a,
	#policy .policy-list a,
	#policy .policy-table a{
		color: var(--color-green);
		text-decoration: underline;
	}
	/* Stacked links in table cells: keep each tap target at least one line high (WCAG 2.5.8). */
	#policy .policy-table td a{
		display: inline-block;
		vertical-align: top;
	}



}@media screen and (max-width : 767px){

	main > h2{
		text-align: center;
		padding: 9.5vw 0 14.2vw 0;
	}

	main > h2 span{
		font-size: 5.87vw;
		font-weight: 700;
		letter-spacing: 0.15em;
	}

	#policy{
		margin: 0 0 13.3vw 0;
	}

	#policy .inner > h3{
		font-size: 4.53vw;
		font-weight: 700;
		letter-spacing: 0.04em;
		line-height: 1.6;
		margin: 10.67vw 0 4.27vw 0;
	}
	#policy .inner > h4{
		font-size: 4vw;
		font-weight: 700;
		letter-spacing: 0.04em;
		line-height: 1.6;
		margin: 6.4vw 0 2.67vw 0;
	}
	#policy .inner > h3:first-child{
		margin-top: 0;
	}
	#policy .inner > h3 + h4{
		margin-top: 0;
	}

	#policy .inner > p,
	#policy .policy-list > li,
	#policy .policy-table th,
	#policy .policy-table td{
		font-size: 3.73vw;
		letter-spacing: 0.04em;
		line-height: 2.07;
	}
	#policy .inner > p + p{
		margin-top: 2.67vw;
	}

	#policy .inner > .policy-note{
		font-size: 3.2vw;
		line-height: 1.8;
	}
	#policy .inner > .policy-note + .policy-note{
		margin-top: 1.07vw;
	}
	#policy .inner > .policy-indent{
		padding: 0 0 0 1em;
		text-indent: 1em;
	}
	#policy .inner > .policy-bullet{
		padding: 0 0 0 5em;
		text-indent: -1em;
	}
	#policy .inner > .policy-bullet + .policy-bullet{
		margin-top: 0;
	}

	#policy .policy-list{
		margin: 2.67vw 0;
		padding: 0 0 0 1.5em;
	}
	#policy .policy-list > li{
		list-style: disc;
	}

	#policy .policy-btn{
		margin: 6.4vw 0;
	}
	#policy .policy-btn #ot-sdk-btn.ot-sdk-show-settings{
		background-color: var(--color-green);
		border: 1px solid var(--color-green);
		border-radius: 100vw;
		box-sizing: border-box;
		color: #ffffff;
		cursor: pointer;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 73.3vw;
		height: auto;
		min-height: 14.5vw;
		margin: 0 auto;
		padding: 2.13vw 12vw;
		position: relative;
		font-family: inherit;
		font-size: 4vw;
		font-weight: 400;
		letter-spacing: inherit;
		font-feature-settings: inherit;
		line-height: 1.4;
		white-space: normal;
	}
	#policy .policy-btn #ot-sdk-btn.ot-sdk-show-settings::after{
		content: '';
		display: inline-block;
		width: 5.6vw;
		height: 5.1vw;
		background-image: url("/common/images/icon_arrow_white.svg");
		background-size: 100% auto;
		background-position: top center;
		background-repeat: no-repeat;
		position: absolute;
		top: 0; right: 5vw; bottom: 0;
		margin: auto;
		transition: all 0.3s;
	}
	#policy .policy-btn #ot-sdk-btn.ot-sdk-show-settings:hover{
		background-color: #ffffff;
		color: var(--color-green);
	}
	#policy .policy-btn #ot-sdk-btn.ot-sdk-show-settings:hover::after{
		right: 4vw;
		background-image: url("/common/images/icon_arrow_green.svg");
	}

	#policy .policy-table{
		margin: 5.33vw 0;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
	#policy .policy-table table{
		width: 100%;
	}
	#policy .policy-table--wide table{
		min-width: 600px;
	}
	#policy .policy-table th,
	#policy .policy-table td{
		border: 1px solid #E3E3E3;
		padding: 2.13vw 2.67vw;
		font-size: 3.2vw;
		text-align: left;
		vertical-align: top;
	}
	#policy .policy-table th{
		background-color: var(--bg-gray);
		font-weight: 700;
	}
	#policy .policy-table td p,
	#policy .policy-table td ul,
	#policy .policy-table td li{
		line-height: inherit;
	}
	#policy .policy-table td p + p,
	#policy .policy-table td li + li{
		margin-top: 2.67vw;
	}
	#policy .policy-table td ul{
		padding: 0 0 0 1.2em;
	}
	#policy .policy-table td li{
		list-style: disc;
	}

	#policy .inner > p a,
	#policy .policy-list a,
	#policy .policy-table a{
		color: var(--color-green);
		text-decoration: underline;
		overflow-wrap: anywhere;
	}
	#policy .policy-table td a{
		display: inline-block;
		vertical-align: top;
	}



}
