@media (min-width: 768px) {
	.is-sp {
		display: none;
	}
}

.c-band-txt {
	display: flex;
	position: relative;
	justify-content: center;
	background: #000;
	color: #fff;
	border-radius: 5px;
	font-size: 18px;
	margin: 3em auto 1em;
	span {
	  padding: .64em 2em;
	}
	img {
	  width: 64px;
	  height: auto;
	  position: absolute;
	  right: 5%;
	  bottom: 0;
	}
	&.-pink {
	  background: #bf4da5;
	}
	&.-green {
	  background: #00a58f;
	}
	&.-blue {
	  background: #0087d1;
	}
	@media (max-width: 767px) {
		font-size: .96em;
		margin: 2em auto 1em;
		span {
			padding-right: 92px;
			padding-left: 1em;
		}
	}
}
.c-grid-contents {
	display: grid;
	align-items: center;
	grid-template-columns: 56% auto;
	gap: 4em;
	margin: 3em auto 2.4em;
	.c-img {
		text-align: center;
		img {
			width: 100%;
			height: auto;
		}
	}
	@media (min-width: 768px) {
		&.-solar {
			grid-template-columns: 72% auto;
		}
		.c-gp__h3__tt {
			margin-top: 0;
		}	  
	}
	@media (max-width: 767px) {
		grid-template-columns: auto;
		gap: 2em;
		margin: 2em auto;
		.c-img {
			img {
				width: 80%;
				height: auto;
			}
		}
		&.-solar {
			.c-img {
				img {
					width: 50%;
				}
			}
		}
	}
}
   .hl-maincopy {
	text-align: center;
	font-size: 36px;
	margin-top: 2em;
	span {
	  display: inline-flex;
	  align-items: center;
	  gap:.64em;
	  &::before,
	  &::after {
		content: '';
		display: block;
		width: 1px;
		height: 1.05em;
		background: currentColor;
		position: relative;
		top:2px;
		@media (max-width: 767px) {
			font-size: 2em;
		}		
	  }
	  &::before {
		rotate: -32deg;
	  }
	  &::after {
		rotate: 32deg;
	  }                
	}
	@media (min-width: 768px) {
		br {
			display: none;
		}
	}
	@media (max-width: 767px) {
		font-size: 24px;
	}

	&.-small {
		font-size: 2em;
		@media (max-width: 767px) {
			font-size: 1.5em;
			span::before,
			span::after {
			  height: .7em;
			}
		}
	}

   }
   .txt-subcopy {
	text-align: center;
	font-size: 1.4em;
	margin-top: 1.6em;
	font-weight: bold;
	b:not(.-nostyle) {
	  display: inline-block;
	  padding-left: .1em;
	  font-size: 2.2em;
	  color: #0086d2;
	  background:linear-gradient(transparent 65%, #d1e0bd 65%, #d1e0bd 100%);
	  margin-right: .1em;
	  line-height: 1.1;
	}
	@media (max-width: 767px) {
		font-size: 1.1em;
	}
	&.-with_arrow {
		margin-bottom: 3em;
		&::before {
			content: '';
			display: block;
			width: 3em;
			height: 1.2em;
			clip-path: polygon(0 0, 100% 0, 50% 100%);
			background: linear-gradient(0, #0086d2, #00cae5);;
			margin: 1em auto 1em;
		}
		/* &::after {
			content: '';
			display: block;
			width: 3em;
			height: 1.2em;
			clip-path: polygon(0 0, 100% 0, 50% 100%);
			background: linear-gradient(0, #0086d2, #00cae5);;
			margin: 2em auto 0;
		}*/	
	}
   }
   .c-grid-buttons {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	margin-top: 20px;
	@media (max-width: 767px) {
		grid-template-columns: 1fr;
		gap: 1em;
	}
   }

   .gp-c {
	img { 
		height: auto;
	}
}

.-sorasapo {
	margin-top: 2em;
	text-align: right;
	img {
		position: relative;
		left: -17px;
		@media (max-width: 767px) {
			left: 0;
		}
	}	
}

.c-flex-lastmessage {
	display: flex; align-items: end; justify-content: center; gap: 2em; margin-top: 3em;
	@media (max-width: 767px) {
		flex-direction: column;
		align-items: center;
		gap: 0;
		.txt-subcopy {
			margin-top: .5em;
			font-size: 1em;
		}
	}
}


.c-btn[target="_blank"] span:after {
    content: '';
    display: block;
    width: 18px;
    height: 14px;
    right: -22px;
    top: calc(50% - 7px);
    position: absolute;
    background: url(/sw/hng/common/img/icon_blank_white.svg) center bottom / contain no-repeat;
    transform: translate(-20px, 0);
    transition-duration: 0.5s;
}

.c-gp__bb.-largeBtn {
	.c-gp__bb__t {
		&::after {
			right: .5em;
		}
	}
	@media (min-width: 768px) {
		.c-gp__bb__t {
			font-size: 1.5rem!important;
		}
	}
	@media (max-width: 767px) {
		height: 60px!important;	
	}
}

.c-grid-buttons {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 1em;
	margin-top: 2.4em;
	@media (max-width: 767px) {
		grid-template-columns: 1fr;
		gap: .5em;
	}
}