:root {
	 --color-first: #65587f;
	 --color-second: #f18867;
	 --color-third: #e85f99;
	 --color-forth: #50bda1;
	 --block-width: 100%;
	 --block-height: 170px;
	 --border-width: 0.625rem;
	 --border-radius-outer: 8px;
	 --border-radius-inner: calc(var(--border-radius-outer) / 2);
	 --font-plain: 'Roboto Condensed', sans-serif;
	 --font-special: 'Roboto Condensed', sans-serif;
	 box-sizing: border-box;
	 line-height: 1.4;
}
 .rainbow {
	 width: 100%;
	 height: 400%;
	 animation: o-rotate-360 linear 8s infinite;
}
 .rainbow span {
	 display: block;
	 width: 100%;
	 height: 100%;
	 position: relative;
	 transform: translate(-50%, -50%);
}
 .rainbow span:after {
	 display: block;
	 content: "";
	 width: 100%;
	 height: 100%;
	 position: absolute;
	 left: 100%;
}
 .rainbow span:first-child {
	 background: var(--color-first);
}
 .rainbow span:first-child:after {
	 background: var(--color-second);
}
 .rainbow span:last-child {
	 background: var(--color-third);
}
 .rainbow span:last-child:after {
	 background: var(--color-forth);
}
 .c-subscribe-box {
	 width: var(--block-width);
	 height: var(--block-height);
	 overflow: hidden;
	 position: relative;
	 box-shadow: 0 10px 40px -10px rgba(0, 64, 128, .2);
	 border-radius: var(--border-radius-outer);
	 margin: 30px 0; 
}
 .c-subscribe-box__wrapper {
	 width: calc(100% - var(--border-width));
	 height: calc(100% - var(--border-width));
	 position: absolute;
	 top: 50%;
	 left: 50%;
	 transform: translate(-50%, -50%);
	 background: #fff;
	 padding: 1.2rem 1rem 1.8rem;
	 display: flex;
	 flex-direction: column;
	 border-radius: var(--border-radius-inner);
}
 .c-subscribe-box__title {
	 font-weight: 700;
	 margin: 0;
}
 .c-subscribe-box__desc {
	 font-size: 0.935rem;
	 margin: 0.7rem auto 1.8rem;
	 max-width: 240px;
}
 .c-subscribe-box__form {
	 margin-top: auto;
}
 @keyframes o-rotate-360 {
	 0% {
		 transform: rotate(0);
	}
	 100% {
		 transform: rotate(360deg);
	}
}

 .u-align-center {
	 text-align: center;
}
@media screen and (max-width: 459px) {
	.c-subscribe-box__title { font-size: 18px; }
}
@media screen and (max-width: 329px) {
	.c-subscribe-box__title { font-size: 17px; }
}	