.top-kv__bg-common,
.top-kv__bg1,
.top-kv__bg2,
.top-kv__bg3,
.top-kv__bg4 {
	position: absolute; 
	min-width: 1024px;
	width: 100%;
	height: 100vh;
	background-attachment: fixed;
	background-position: center;
	background-size: cover;
	opacity: 0;
}
.top-kv__bg-common::before,
.top-kv__bg1::before,
.top-kv__bg2::before,
.top-kv__bg3::before,
.top-kv__bg4::before {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0, 52, 118, .5); 
	content: '';
}
@media (max-width: 833px) {
	.top-kv__bg-common,
	.top-kv__bg1,
	.top-kv__bg2,
	.top-kv__bg3,
	.top-kv__bg4 {
		position: fixed;
		top: 0; 
		min-width: 100%;
		width: 100%;
		height: 576px;
		background-attachment: scroll;
		background-position: top center;
	}
}

.top-kv {
	position: relative;
	overflow: hidden;
	min-width: 1024px; 
	width: 100%;
	height: 100vh;
}
@media (max-width: 833px) {
	.top-kv {
		min-width: 100%;
		height: 576px;
	}
}
.top-kv__bg1 {
	z-index: -4;
	background-image: url('/content/dam/nttcom/hq/jp/business/lp/topgun/img/top/img_kv_01_pc.jpg');
	-webkit-animation-name: kvBg1;
	        animation-name: kvBg1;
	-webkit-animation-duration: 12s;
	        animation-duration: 12s;
	-webkit-animation-iteration-count: 1;
	        animation-iteration-count: 1;
}
@media (max-width: 833px) {
	.top-kv__bg1 {
		background-image: url('/content/dam/nttcom/hq/jp/business/lp/topgun/img/top/img_kv_01_sp.jpg');
	}
}
.top-kv__bg2 {
	z-index: -2;
	background-image: url('/content/dam/nttcom/hq/jp/business/lp/topgun/img/top/img_kv_02_pc.jpg');
	-webkit-animation-name: kvBg1;
	        animation-name: kvBg1;
	-webkit-animation-duration: 12s;
	        animation-duration: 12s;
	-webkit-animation-delay: 3s;
	        animation-delay: 3s;
	-webkit-animation-iteration-count: 1;
	        animation-iteration-count: 1;
}
@media (max-width: 833px) {
	.top-kv__bg2 {
		background-image: url('/content/dam/nttcom/hq/jp/business/lp/topgun/img/top/img_kv_02_sp.jpg');
	}
}
.top-kv__bg3 {
	z-index: -1;
	background-image: url('/content/dam/nttcom/hq/jp/business/lp/topgun/img/top/img_kv_01_pc.jpg');
	-webkit-animation-name: kvBg2;
	        animation-name: kvBg2;
	-webkit-animation-duration: 16s;
	        animation-duration: 16s;
	-webkit-animation-delay: 12s;
	        animation-delay: 12s;
	-webkit-animation-iteration-count: infinite;
	        animation-iteration-count: infinite;
}
@media (max-width: 833px) {
	.top-kv__bg3 {
		background-image: url('/content/dam/nttcom/hq/jp/business/lp/topgun/img/top/img_kv_01_sp.jpg');
	}
}
.top-kv__bg4 {
	z-index: -1;
	background-image: url('/content/dam/nttcom/hq/jp/business/lp/topgun/img/top/img_kv_02_pc.jpg');
	-webkit-animation-name: kvBg2;
	        animation-name: kvBg2;
	-webkit-animation-duration: 16s;
	        animation-duration: 16s;
	-webkit-animation-delay: 20s;
	        animation-delay: 20s;
	-webkit-animation-iteration-count: infinite;
	        animation-iteration-count: infinite;
}
@media (max-width: 833px) {
	.top-kv__bg4 {
		background-image: url('/content/dam/nttcom/hq/jp/business/lp/topgun/img/top/img_kv_02_sp.jpg');
	}
}
.top-kv__scroll {
	position: absolute;
	left: calc(50% - 18px);
	bottom: 64px;
	width: 36px;
	height: auto;
	opacity: 0;
	-webkit-animation-name: kvCont2;
	        animation-name: kvCont2;
	-webkit-animation-duration: 1s;
	        animation-duration: 1s;
	-webkit-animation-delay: 4.5s;
	        animation-delay: 4.5s;
	-webkit-animation-iteration-count: 1;
	        animation-iteration-count: 1; 

	-webkit-animation-fill-mode: forwards;
	        animation-fill-mode: forwards;
}
.top-kv__phase1 {
	position: absolute;
	top: calc(50vh - 160px);
	left: 50%;
	z-index: -3;
	width: 960px;
	color: #ffffff;
	font-style: italic;
	font-size: 11.2rem;
	font-weight: 700;
	font-family: 'Roboto', sans-serif;
	letter-spacing: .05em;
	opacity: 0;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
	-webkit-animation-name: kvCont1-PC;
	        animation-name: kvCont1-PC;
	-webkit-animation-duration: 1s;
	        animation-duration: 1s;
	-webkit-animation-timing-function: ease-out;
	        animation-timing-function: ease-out;
	-webkit-animation-delay: 1s;
	        animation-delay: 1s;
	-webkit-animation-iteration-count: 1;
	        animation-iteration-count: 1; 

	-webkit-animation-fill-mode: forwards;
	        animation-fill-mode: forwards;
}
@media (max-width: 833px) {
	.top-kv__phase1 {
		top: calc(50% - 70px);
		left: 0;
		right: 0;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		padding: 0 4.8%;
		min-width: 100%;
		width: 100%;
		font-size: 5.4rem;
		-webkit-transform: none;
		        transform: none;
		-webkit-animation-name: kvCont1-SP;
		        animation-name: kvCont1-SP;
	}
}
@media (max-width: 320px) {
	.top-kv__phase1 {
		font-size: 4.8rem;
	}
}
.top-kv__phase1-txt1 {
	text-shadow: 0 4px 8px rgba(51, 51, 51, .8);
}
.top-kv__phase1-txt1 span {
	font-weight: 300;
}
.top-kv__phase2 {
	position: absolute;
	top: calc(50vh - 160px);
	left: 50%;
	z-index: 10;
	width: 960px;
	opacity: 0;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
	-webkit-animation-name: kvCont2;
	        animation-name: kvCont2;
	-webkit-animation-duration: 1s;
	        animation-duration: 1s;
	-webkit-animation-delay: 4.5s;
	        animation-delay: 4.5s;
	-webkit-animation-iteration-count: 1;
	        animation-iteration-count: 1; 

	-webkit-animation-fill-mode: forwards;
	        animation-fill-mode: forwards;
}
@media (max-width: 833px) {
	.top-kv__phase2 {
		top: calc(96 / 375 * 100vw);
		left: 0;
		right: 0;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		padding: 0 4.8%;
		min-width: 100%;
		width: 100%;
		-webkit-transform: none;
		        transform: none;
	}
}
@media (max-width: 320px) {
	.top-kv__phase2 {
		top: calc(80 / 375 * 100vw);
	}
}
.top-kv__phase2-txt1 {
	margin-bottom: 40px;
	text-shadow: 0 4px 8px rgba(51, 51, 51, .8); 
	color: #ffffff;
	font-size: 40px;
	font-size: 4rem;
	font-weight: 600;
}
@media (max-width: 833px) {
	.top-kv__phase2-txt1 {
		margin-bottom: 8px; 
		font-size: 32px;
		font-size: 3.2rem;
	}
}
@media (max-width: 320px) {
	.top-kv__phase2-txt1 {
		font-size: 28px;
		font-size: 2.8rem;
	}
}
.top-kv__phase2-txt2 {
	margin-bottom: 48px;
	text-shadow: 0 4px 8px rgba(51, 51, 51, .8); 
	color: #ffffff;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 2;
}
@media (max-width: 833px) {
	.top-kv__phase2-txt2 {
		margin-bottom: 32px; 
		font-size: 16px;
		font-size: 1.6rem;
	}
}
@media (max-width: 320px) {
	.top-kv__phase2-txt2 {
		font-size: 14px;
		font-size: 1.4rem;
	}
}
.top-kv__phase2-button {
	position: relative;
	display: inline-block;
	overflow: hidden;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	padding: 26px 46px 26px 26px;
	border: 1px solid #ffffff;
	background: rgba(255, 255, 255, .16); 
	color: #ffffff;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 600;
	letter-spacing: 1.6px;
	-webkit-transition: all .3s ease-in-out;
	        transition: all .3s ease-in-out;
}
@media (max-width: 833px) {
	.top-kv__phase2-button {
		padding: 24px 46px 24px 24px; 
		font-size: 14px;
		font-size: 1.4rem;
	}
}
@media (max-width: 320px) {
	.top-kv__phase2-button {
		font-size: 12px;
		font-size: 1.2rem;
	}
}
.top-kv__phase2-button::before {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 120%;
	height: 100%;
	background: #ffffff;
	content: '';
	-webkit-transition: -webkit-transform .3s;
	        transition: -webkit-transform .3s;
	        transition:         transform .3s;
	        transition:         transform .3s, -webkit-transform .3s; 
	-webkit-transform: skewX(-30deg) scale(0, 1);
	        transform: skewX(-30deg) scale(0, 1);
	-webkit-transform-origin: right top;
	        transform-origin: right top;
}
.top-kv__phase2-button::after {
	position: absolute;
	top: calc(50% - 6px);
	margin-left: 10px;
	width: 8px;
	height: 11px;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2012%2016%22%20aria-labelledby%3D%22title%22%20role%3D%22img%22%3E%3Ctitle%20id%3D%22title%22%3E%E3%83%9A%E3%83%BC%E3%82%B8%E3%81%B8%E7%A7%BB%E5%8B%95%E3%81%99%E3%82%8B%3C%2Ftitle%3E%3Cpolygon%20fill%3D%22%23fff%22%20points%3D%2212%208%200%200%200%2016%2012%208%22%2F%3E%3C%2Fsvg%3E');
	background-size: cover;
	content: '';
	-webkit-transition: .3s ease-in-out;
	        transition: .3s ease-in-out;
}
@media (max-width: 833px) {
	.top-kv__phase2-button::after {
		width: 7px;
		height: 9px; 
		-webkit-transition: none;
		        transition: none;
	}
}
.top-kv__phase2-button:hover {
	background: #ffffff;
	color: #003476;
	opacity: 1;
}
.top-kv__phase2-button:hover::before {
	-webkit-transform: skewX(-30deg) scale(1, 1);
	        transform: skewX(-30deg) scale(1, 1); 
	-webkit-transform-origin: left top;
	        transform-origin: left top;
}
.top-kv__phase2-button:hover::after {
	margin-left: 15px; 
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2012%2016%22%20aria-labelledby%3D%22title%22%20role%3D%22img%22%3E%3Ctitle%20id%3D%22title%22%3E%E3%83%9A%E3%83%BC%E3%82%B8%E3%81%B8%E7%A7%BB%E5%8B%95%E3%81%99%E3%82%8B%3C%2Ftitle%3E%3Cpolygon%20fill%3D%22%23003476%22%20points%3D%2212%208%200%200%200%2016%2012%208%22%2F%3E%3C%2Fsvg%3E');
}
@media (max-width: 833px) {
	.top-kv__phase2-button:hover::after {
		margin-left: 10px;
	}
}
@media (max-width: 833px) {
	.top-kv + .layout-mtb--l {
		padding-top: 40px;
	}
}

@-webkit-keyframes kvBg1 {
	0% {
		opacity: 0;
	}
	5% {
		opacity: 1;
	}
	95% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

@keyframes kvBg1 {
	0% {
		opacity: 0;
	}
	5% {
		opacity: 1;
	}
	95% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

@-webkit-keyframes kvBg2 {
	0% {
		opacity: 0;
	}
	5% {
		opacity: 1;
	}
	55% {
		opacity: 1;
	}
	60% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

@keyframes kvBg2 {
	0% {
		opacity: 0;
	}
	5% {
		opacity: 1;
	}
	55% {
		opacity: 1;
	}
	60% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

@-webkit-keyframes kvCont1-PC {
	0% {
		opacity: 0;
		-webkit-transform: translateX(-52%);
		        transform: translateX(-52%);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
	}
}

@keyframes kvCont1-PC {
	0% {
		opacity: 0;
		-webkit-transform: translateX(-52%);
		        transform: translateX(-52%);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
	}
}

@-webkit-keyframes kvCont1-SP {
	0% {
		opacity: 0;
		-webkit-transform: translateX(-30px);
		        transform: translateX(-30px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
}

@keyframes kvCont1-SP {
	0% {
		opacity: 0;
		-webkit-transform: translateX(-30px);
		        transform: translateX(-30px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
}

@-webkit-keyframes kvCont2 {
	0% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@keyframes kvCont2 {
	0% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

.top-title__case {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display:         flex;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-ms-flex-pack: center;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	margin: 0 auto 48px;
	padding: 0 32px;
	max-width: 100%; 
	width: 1024px;
	height: 310px;
	background-image: url('/content/dam/nttcom/hq/jp/business/lp/topgun/img/common/img_case_top.jpg');
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;

	-webkit-box-direction: normal;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	        justify-content: center;
}
@media (max-width: 833px) {
	.top-title__case {
		margin: 0 auto 24px;
		padding: 0 4.8%;
		width: 100%;
		height: 200px;
		background-position: right 30% center;
	}
}

.top-title__product {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display:         flex;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-ms-flex-pack: center;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	margin: 0 auto 48px;
	padding: 0 32px;
	max-width: 100%; 
	width: 1024px;
	height: 310px;
	background-image: url('/content/dam/nttcom/hq/jp/business/lp/topgun/img/common/img_product_top.jpg');
	background-position: center bottom -30px;
	background-size: cover;
	background-repeat: no-repeat;

	-webkit-box-direction: normal;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	        justify-content: center;
}
@media (max-width: 833px) {
	.top-title__product {
		margin: 0 auto 24px;
		padding: 0 4.8%;
		width: 100%;
		height: 200px;
		background-position: left center;
	}
}

.top-columns {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display:         flex;
	-ms-flex-pack: justify;
	margin-bottom: 48px; 

	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
}
@media (max-width: 833px) {
	.top-columns {
		display: block;
	}
}

.top-column.top-txt,
.top-column.title-head--l {
	width: 567px;
}
@media (max-width: 833px) {
	.top-column.top-txt,
	.top-column.title-head--l {
		width: 100%;
	}
}

.top-txt {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
}
@media (max-width: 833px) {
	.top-txt {
		font-size: 14px;
		font-size: 1.4rem;
	}
}

.release-link:nth-of-type(n + 4) {
	display: none;
}