/*
Generic Styles
 */
body:lang(ja) {
	letter-spacing: -0.021em;
	line-break: strict;
}

.more:after, .icon-chevronright:after, .more:after, .icon-external:after {
	top: -0.075em;
}
.icon-playcircle::after {
	top: -0.02em;
}

@media only screen and (max-width: 374px) {
	.xsmall-hide {
		display: none;
	}
	.xsmall-show {
		display: block;
	}
	.xsmall-show-inline {
		display: inline;
	}
}

@media only screen and (max-width: 320px) {
	.xxsmall-hide {
		display: none;
	}
	.xxsmall-show {
		display: block;
	}
	.xxsmall-show-inline {
		display: inline;
	}
}

.main [data-module-template="promos"] .cta-links a sup {
	display: inline-block;
}

.ie [data-module-template] [data-unit-id] .unit-wrapper a:not(.unit-link) {
	position: relative;
}
.ie [data-module-template] [data-unit-id] .unit-wrapper button {
	position: relative;
	z-index: 4;
}

.small-caps {
	font-variant-caps: all-small-caps;
}

.violator {
	padding-top: 5px;
	padding-bottom: 3px;
}
@media only screen and (max-width: 735px) {
	.violator {
		padding-top: 3px;
		padding-bottom: 1px;
	}
}

br.large {
	display: inline;
}

@media only screen and (max-width: 1068px) {
	br.large {
		display: none;
	}
}

@media only screen and (max-width: 735px) {
	br.large {
		display: none;
	}
}

br.medium {
	display: none;
}

@media only screen and (max-width: 1068px) {
	br.medium {
		display: inline;
	}
}

@media only screen and (max-width: 735px) {
	br.medium {
		display: none;
	}
}

br.small {
	display: none;
}

@media only screen and (max-width: 1068px) {
	br.small {
		display: none;
	}
}

@media only screen and (max-width: 735px) {
	br.small {
		display: inline;
	}
}

@media only screen and (max-width: 320px) {
	.main [data-module-template="tv-plus-gallery"] .dotnav li {
		margin: 0 6px;
	}
}

.main [data-module-template="tv-plus-gallery"] .gallery .info-bottom p {
	word-break: break-word;
}

@media only screen and (min-width: 1441px) {
	.main [data-module-template="tv-plus-gallery"] .gallery .play-pause.playing::after {
		padding-top: 10px;
	}
}

@media only screen and (min-width: 1441px) {
	.main [data-module-template="tv-plus-gallery"] .gallery .play-pause.paused::after {
		padding-top: 10px;
	}
}

/* JP Button Styles */
.main [data-module-template="heroes"] .button-default:lang(ja) {
	padding-bottom: 7px;
	padding-right: 14px;
}
@media only screen and (max-width: 734px) {
	.main [data-module-template="heroes"] [data-unit-id] .unit-copy-wrapper > *.cta-links .button {
		padding-bottom: 6px;
	}
}
@media only screen and (max-width: 734px) {
	.main [data-module-template="heroes"] [data-unit-id] .split-copy-wrapper .unit-copy-wrapper .button {
		padding-bottom: 6px;
	}
}

.no-windows .main [data-module-template="heroes"] .button-elevated:lang(ja) {
	padding-bottom: 10px;
	padding-right: 20px;
}
.windows .main [data-module-template="heroes"] .button-elevated:lang(ja) {
	padding-top: 10px;
}
@media only screen and (max-width: 734px) {
	.windows .main [data-module-template="heroes"] .button-elevated:lang(ja) {
		padding-top: 7px;
	}
	.windows .main [data-module-template="heroes"] [data-unit-id] .unit-copy-wrapper > .cta-links .button {
		padding-top: 7px;
		padding-bottom: 7px;
	}
}
.main [data-module-template="heroes"] .button-super:lang(ja) {
	padding-bottom: 16px;
	padding-right: 29px;
}

.main [data-module-template="heroes"] .button-reduced:lang(ja) {
	padding-bottom: 2px;
	padding-right: 9px;
}

.main [data-module-template="promos"] .button-primary:lang(ja) {
	padding-bottom: 6px;
	padding-right: 14px;
}

.main [data-module-template="promos"] .button-tertiary:lang(ja) {
	padding-bottom: 6px;
	padding-right: 14px;
}

/* JP SUP Styles */
.main [data-module-template] [data-unit-id] .unit-wrapper a.footnote {
	text-decoration: none;
	color: var(--text-color);
}

.main [data-module-template] [data-unit-id] .unit-wrapper .footnote a:hover,
.main [data-module-template] [data-unit-id] .unit-wrapper a.footnote:hover {
	text-decoration: none;
	color: #06c;
}

#ac-globalfooter .ac-gf-sosumi a {
	line-break: normal;
}


html.windows .main [data-module-template="promos"] .button-primary:lang(ja) {
	padding-top: 6px;
	padding-bottom: 7px;
}
