@charset "utf-8";

/*--------------------------------------------------------------
	基本STYLE
--------------------------------------------------------------*/

/* フォントスタイル
========================= */
@font-face {
  font-family: "Yu Gothic";
  font-weight: normal;
  src: local("Yu Gothic-Medium");
  local('Yu Gothic Medium'), 
  local('YuGothic-Regular'); 
}
@font-face {
  font-family: "Yu Gothic";
  font-weight: bold;
  src: local("Yu Gothic-Bold");
  local('Yu Gothic'); 
}

@font-face {
  font-family: 'icomoon';
  src:  url('fonts/icomoon.eot?ewc630');
  src:  url('fonts/icomoon.eot?ewc630#iefix') format('embedded-opentype'),
    url('fonts/icomoon.ttf?ewc630') format('truetype'),
    url('fonts/icomoon.woff?ewc630') format('woff'),
    url('fonts/icomoon.svg?ewc630#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}



/* RESET CSS
========================= */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-style:normal;
	font-weight: normal;
	font-size: 100%;
	vertical-align: baseline;
	box-sizing: border-box;
}
section {
	width: 100%;
}
html, body {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
}
a, article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

html{
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

input, textarea,{
	margin: 0;
	padding: 0;
}

ol, ul{
    list-style:none;
}

table{
    border-collapse: collapse; 
    border-spacing:0;
	width: 100%;
}

table ,th,td{
	border-collapse:collapse;
}

caption, th{
    text-align: left;
}

img {
	width: 100%;
	height:auto;
	line-height:0;
	vertical-align:top;
}

a,dl {
	outline: none;
	-webkit-transition: 0.28s;  
	-moz-transition: 0.28s;  
	-o-transition: 0.28s;  
	transition: 0.28s; 
}
a,form,input,iframe,textarea,button,.slick-slide,.slick-active,.slick-slide img,.slick-active img {
	 outline:0px none black !important;
}
a img{
	-webkit-transition: 0.28s;  
	-moz-transition: 0.28s;  
	-o-transition: 0.28s;  
	transition: 0.28s; 
}
a:hover img {
	opacity: 0.85;
}



/* COMMON (サイト共通)
========================= */
/* 基本スタイル
---------------------------------------------------------------------------- */
html {
	overflow-x: hidden;
	font-size:62.5%;
}

body {
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2f3cbd', endColorstr='#8238c9',GradientType=1 );
	margin: 0;
	padding: 0;
	line-height: 1;
	letter-spacing: 0.5;
	color: #333;
	font-family:"Microsoft YaHei", "微软雅黑",'SimSun', sans-serif;
	font-size: 1em;
	-webkit-text-size-adjust:100%;
	-moz-text-size-adjust:100%;
	-ms-text-size-adjust:100%;
	-o-text-size-adjust:100%;
	text-size-adjust:100%;
	background-color: #fff;
}

/* For modern browsers */
.cf:before,
.cf:after {
	content:"";
	display:table;
}

.cf:after {
	clear:both;
}

/* For IE 6/7 (trigger hasLayout) */
.cf {
	zoom:1;
}

/* link color */
/* a:visited, */
a {
	color: #444;
	text-decoration: none;
}

a:hover {
	color: #444;
}

.imgBg {
	width: 100%;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.imgBg2 {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.img-center {
	display: block;
	margin: 0 auto;
}
.block {
	display: block;
}
.pc-only {
	display: block;
}
.pc-only-m {
	display: block;
}
.sp-only {
	display: none !important;
}
.sp-only-m {
	display: none !important;
}
@media (max-width: 768px){
	.pc-only {
		display: none !important;
	}
	.sp-only {
		display: block !important;
	}
}
@media (max-width: 480px){
	.pc-only-m {
		display: none !important;
	}
	.sp-only-m {
		display: block !important;
	}
}

.no-border {
	border: none !important;
}

/* Vertical margin, padding */
.p-0 {
  padding: 0 !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pt-10 {
  padding-top: 10px !important;
}

.pt-20 {
  padding-top: 20px !important;
}

.pt-30 {
  padding-top: 30px !important;
}

.pt-40 {
  padding-top: 40px !important;
}

.pt-50 {
  padding-top: 50px !important;
}

.pt-60 {
  padding-top: 60px;
}

.pt-70 {
  padding-top: 70px;
}

.pt-80 {
  padding-top: 80px;
}

.pt-140 {
  padding-top: 140px;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pb-5 {
  padding-bottom: 5px !important;
}

.pb-10 {
  padding-bottom: 10px !important;
}

.pb-15 {
  padding-bottom: 15px !important;
}

.pb-20 {
  padding-bottom: 20px !important;
}

.pb-30 {
  padding-bottom: 30px !important;
}

.pb-40 {
  padding-bottom: 40px !important;
}

.pb-50 {
  padding-bottom: 50px !important;
}

.pb-60 {
  padding-bottom: 60px;
}

.pb-70 {
  padding-bottom: 70px;
}

.pb-80 {
  padding-bottom: 80px;
}

.pb-140 {
  padding-bottom: 140px !important;
}

.m-0 {
  margin: 0 !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mt-10 {
  margin-top: 10px !important;
}

.mt-20 {
  margin-top: 20px !important;
}

.mt-30 {
  margin-top: 30px !important;
}

.mt-40 {
  margin-top: 40px !important;
}

.mt-50 {
  margin-top: 50px !important;
}

.mt-60 {
  margin-top: 60px !important;
}

.mt-70 {
  margin-top: 70px !important;
}

.mt-80 {
  margin-top: 80px !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.mb-15 {
  margin-bottom: 15px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.mb-30 {
  margin-bottom: 30px !important;
}

.mb-40 {
  margin-bottom: 40px !important;
}

.mb-50 {
  margin-bottom: 50px !important;
}

.mb-60 {
  margin-bottom: 60px !important;
}

.mb-70 {
  margin-bottom: 70px !important;
}

.mb-80 {
  margin-bottom: 80px !important;
}

.ml-30 {
  margin-left: 30px !important;
}

.mr-20 {
  margin-right: 20px !important;
}

.mr-30 {
  margin-right: 30px !important;
}

.ml-30 {
  margin-left: 30px !important;
}

.ml-40 {
  margin-left: 40px !important;
}

.ml-55 {
  margin-left: 55px !important;
}


@media (max-width: 991px) {
  .mt-sm-0 {
    margin-top: 0 !important;
  }
  .mt-sm-10 {
    margin-top: 10px !important;
  }
  .mt-sm-20 {
    margin-top: 20px !important;
  }
  .mt-sm-30 {
    margin-top: 30px !important;
  }
  .mt-sm-40 {
    margin-top: 40px !important;
  }
  .mt-sm-50 {
    margin-top: 50px !important;
  }
  .mt-sm-60 {
    margin-top: 60px !important;
  }
  .mt-sm-70 {
    margin-top: 70px !important;
  }
  .mt-sm-80 {
    margin-top: 80px !important;
  }
  .mb-sm-0 {
    margin-bottom: 0 !important;
  }
  .mb-sm-10 {
    margin-bottom: 10px !important;
  }
  .mb-sm-20 {
    margin-bottom: 20px !important;
  }
  .mb-sm-30 {
    margin-bottom: 30px !important;
  }
  .mb-sm-40 {
    margin-bottom: 40px !important;
  }
  .mb-sm-50 {
    margin-bottom: 50px !important;
  }
  .mb-sm-60 {
    margin-bottom: 60px !important;
  }
  .mb-sm-70 {
    margin-bottom: 70px !important;
  }
  .mb-sm-80 {
    margin-bottom: 80px !important;
  }
}

@media (max-width: 767px) {
  .mt-xs-0 {
    margin-top: 0 !important;
  }
  .mt-xs-10 {
    margin-top: 10px !important;
  }
  .mt-xs-20 {
    margin-top: 20px !important;
  }
  .mt-xs-30 {
    margin-top: 30px !important;
  }
  .mt-xs-40 {
    margin-top: 40px !important;
  }
  .mt-xs-50 {
    margin-top: 50px !important;
  }
  .mt-xs-60 {
    margin-top: 60px !important;
  }
  .mt-xs-70 {
    margin-top: 70px !important;
  }
  .mt-xs-80 {
    margin-top: 80px !important;
  }
  .mb-xs-0 {
    margin-bottom: 0 !important;
  }
  .mb-xs-10 {
    margin-bottom: 10px !important;
  }
  .mb-xs-20 {
    margin-bottom: 20px !important;
  }
  .mb-xs-30 {
    margin-bottom: 30px !important;
  }
  .mb-xs-40 {
    margin-bottom: 40px !important;
  }
  .mb-xs-50 {
    margin-bottom: 50px !important;
  }
  .mb-xs-60 {
    margin-bottom: 60px !important;
  }
  .mb-xs-70 {
    margin-bottom: 70px !important;
  }
  .mb-xs-80 {
    margin-bottom: 80px !important;
  }
  .pt-xs-80 {
    padding-top: 50px !important;
  }
  .pt-xs-30 {
    padding-top: 30px !important;
  }
  
	.pb-50 {
	  padding-bottom: 30px !important;
	}
  .pt-40 {
	  padding-top: 0px !important;
	}
  .pb-60 {
	  padding-bottom: 45px;
	}
  .pt-60 {
	  padding-top: 45px;
	}
	.pt-70 {
		padding-top: 50px;
	}
	.pt-80 {
		padding-top: 50px;
	}
	.pb-70 {
		padding-bottom: 50px;
	}
	.pb-80 {
		padding-bottom: 50px;
	}
}


/* font */
.f-ar {
	font-family: arial, sans-serif;
}
.f-en {
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 400;
}

.f-en2 {
	font-family: 'Roboto', sans-serif;
}

.f-noto {
	font-family:"Microsoft YaHei", "微软雅黑",'SimSun', sans-serif;
}

.f-rat {
	font-family: 'Rationale', sans-serif;
}

.f-osw {
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	letter-spacing: 0 !important;
}

.f-fjalla {
	font-family: 'Fjalla One', sans-serif;
	font-weight: 400;
}

.f-jayu {
	font-family:"Microsoft YaHei", "微软雅黑",'SimSun', sans-serif;
	font-style: normal;
	font-weight: 500;
}

.f-gothic {
	font-family:"Microsoft YaHei", "微软雅黑",'SimSun', sans-serif;
	font-style: normal;
	font-weight: 500;
}

.f-hiramin {
	font-family:"Microsoft YaHei", "微软雅黑",'SimSun', sans-serif;
	transform: rotate(.03deg);
}

.f-opens {
	font-family: 'Open Sans', sans-serif;
}

.f-lob {
	font-family: 'Lobster', cursive;
	letter-spacing: 0 !important;
}

.f-bar {
	font-family: 'Barlow', sans-serif;
}

/* font weight */
.f-bold {
	font-weight: bold;
}

.f-normal {
	font-weight: normal;
}

.f-w100 {
	font-weight: 100;
}

.f-w200 {
	font-weight: 200;
}

.f-w300 {
	font-weight: 300;
}

.f-w400 {
	font-weight: 400;
}

.f-w500 {
	font-weight: 500;
}

.f-w600 {
	font-weight: 600;
}

.f-w700 {
	font-weight: 700;
}

/* font color */
.fc-OR {
	color: #ff6633;
}


/* font size */
.f-sz12 {
	font-size: 1.2rem;
}

.f-sz13 {
	font-size: 1.3rem;
	line-height: 1.3;
}

.f-sz14 {
	font-size: 1.4rem;
	line-height: 1.6;
}

.f-sz15 {
	font-size: 1.5rem;
	line-height: 1.3;
}

.f-sz16 {
	font-size: 1.6rem;
	line-height: 1.3;
}

.f-sz17 {
	font-size: 1.7rem;
	line-height: 1.3;
}

.f-sz18 {
	font-size: 1.8rem;/* 18px */
	line-height: 1.3;
}

.f-sz19 {
	font-size: 	1.9rem;/* 19px */
	line-height: 1.3;
}

.f-sz20 {
	font-size: 	2rem;/* 20px */
	line-height: 1.3;
}

.f-sz22 {
	font-size: 	2.2rem;/* 22px */
	line-height: 1.3;
}

.f-sz23 {
	font-size: 	2.3rem;/* 23px */
	line-height: 1.3;
}

.f-sz24 {
	font-size: 	2.4rem;/* 24px */
	line-height: 1.3;
}

.f-sz25 {
	font-size: 	1.667em;/* 25px */
	line-height: 1.3;
}

.f-sz26 {
	font-size: 2.6rem;/* 26px */
	line-height: 1.3;
}

.f-sz28 {
	font-size: 2.8rem;/* 28px */
	line-height: 1.3;
}

.f-sz30 {
	font-size: 3rem;/* 30px */
	line-height: 1.3;
}

.f-sz33 {
	font-size: 2.200em;/* 33px */
	line-height: 1.3;
    -webkit-transition: all 0.28s ease;
    -moz-transition: all 0.28s ease;
    transition: all 0.28s ease;
}

.f-sz35 {
	font-size: 3.5rem;
	line-height: 1.2;
}

.f-sz36 {
	font-size: 3.6rem;/* 36px */
	line-height: 1.4;
}

.f-sz38 {
	font-size: 2.533em;/* 38px */
	line-height: 1.4;
    -webkit-transition: all 0.28s ease;
    -moz-transition: all 0.28s ease;
    transition: all 0.28s ease;
}

.f-sz40 {
	font-size: 4em;/* 40px */
	line-height: 1.4;
}

.f-sz43 {
	font-size: 4.3em;/* 43px */
	line-height: 1.4;
}

.f-sz48 {
	font-size: 4.8em;/* 48px */
	line-height: 1.4;
}

.f-sz55 {
	font-size: 3.667em;/* 55px */
	line-height: 1.0;
    -webkit-transition: all 0.28s ease;
    -moz-transition: all 0.28s ease;
    transition: all 0.28s ease;
}
.f-sz68 {
	font-size: 4.533em;/* 68px */
	line-height: 1.0;
    -webkit-transition: all 0.28s ease;
    -moz-transition: all 0.28s ease;
    transition: all 0.28s ease;
}
.f-sz75 {
	font-size: 7.5rem;
	line-height: 1.4;
}


@media (max-width: 991px) {
	.f-sz55 {
		font-size: 2.533em;/* 55px */
	}
	
	.f-sz36 {
		font-size: 3.1rem;/* 31px */
	}
	
	.f-sz40 {
		font-size: 3.5rem;/* 35px */
		line-height: 1.4;
	}
	
	.f-sz43 {
		font-size: 3.5rem;/* 35px */
		line-height: 1.4;
	}
	
	.f-sz48 {
		font-size: 3.8rem;/* 38px */
		line-height: 1.4;
	}
}

@media (max-width: 768px) {
	.f-sz68 {
		font-size: 2.667em;/* 40px */
	}
	
	.f-sz55 {
		font-size: 2.533em;/* 55px */
	}
	
	.f-sz48 {
		font-size: 3rem;/* 30px */
		line-height: 1.4;
	}
	
	.f-sz43 {
		font-size: 3.2em;/* 32px */
		line-height: 1.4;
	}
	
	.f-sz40 {
		font-size: 3.2em;/* 32px */
		line-height: 1.4;
	}
	
	.f-sz36 {
		font-size: 3rem;/* 30px */
	}
	
	.f-sz33 {
		font-size: 1.933em;/* 29px */
	}
	
	.f-sz28 {
		font-size: 2.5rem;/* 25px */
		line-height: 1.3;
	}

}

@media (max-width: 480px){
	
	.f-sz68 {
		font-size: 2.133em;/* 34px */
		line-height: 1.2;
	}
	.f-sz55 {
		font-size: 2.133em;/* 34px */
		line-height: 1.2;
	}
	
	.f-sz48 {
		font-size: 2.4rem;/* 24px */
		line-height: 1.4;
	}

	.f-sz43 {
		font-size: 2.7em;/* 27px */
		line-height: 1.4;
	}

	.f-sz40 {
		font-size: 2.7em;/* 27px */
		line-height: 1.4;
	}

	.f-sz38 {
		font-size: 1.800em;/* 27px */
		line-height: 1.4;
	}

	.f-sz36 {
		font-size: 	2.4rem;/* 24px */
		line-height: 1.4;
	}

	.f-sz35 {
		font-size: 2.8rem;/* 28px */
	}
	
	.f-sz33 {
		font-size: 	1.600em;/* 24px */
	}
	
	.f-sz30 {
		font-size: 2.4rem;/* 24px */
	}
	
	.f-sz28 {
		font-size: 2.3rem;/* 24px */
	}

	.f-sz26 {
		font-size: 1.467em;/* 22px */
	}

	.f-sz25 {
		font-size: 	1.333em;/* 20px */
	}

	.f-sz24 {
		font-size: 	2rem;/* 20px */
	}

	.f-sz23 {
		font-size: 	2rem;/* 20px */
	}

	.f-sz22 {
		font-size: 1.6rem;
	}
	
	.f-sz16 {
		font-size: 1.6rem;
		line-height: 1.6;
	}
	
	.f-sz15 {
		font-size: 1.6rem;
		line-height: 1.6;
	}
	
	.f-sz14 {
		font-size: 1.6rem;
		line-height: 1.6;
	}
	
	.f-sz13 {
		font-size: 1.5rem;
		line-height: 1.6;
	}
	
	.f-sz12 {
		font-size: 1.4rem;
		line-height: 1.6;
	}
	
}


/*　ボタンスタイル　*/
.btn-tp01 {
	position: relative;
	display: block;
	width: 100%;
	padding: 1rem 0;
	text-align: center;
	border: 1px solid rgba(255,255,255,0.3);
}
.btn-tp01:before,
.btn-tp01:after {
  position: absolute;
  z-index: 2;
  content: '';
  width: 0;
  height: 0;
  border: 1px solid transparent;
}
.btn-tp01:before {
  top: -1px;
  left: -1px;
}
.btn-tp01:after {
  bottom: -1px;
  right: -1px;
}
.btn-tp01:hover::before,
.btn-tp01:hover::after {
  width: 100%;
  height: 100%;
}
.btn-tp01:hover::before {
  border-bottom-color: rgba(255,255,255,1);
  border-left-color: rgba(255,255,255,1);
  transition: height .3s, width .3s .3s;
}
.btn-tp01:hover::after {
  border-top-color: rgba(255,255,255,1);
  border-right-color: rgba(255,255,255,1);
  transition: height .3s, width .3s .3s;
}
.btn-tp01 span {
	display: block;
	color: #fff;
	position: relative;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn-tp01 span:after {
	font-family: FontAwesome;
	content: "\f101";
	position: absolute;
	right: 1.2rem;
	color: #fff;
	font-size: 1.3rem;
	top: 50%;
	margin-top: -0.8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn-tp01:hover span:after,
.btn-tp01:hover span {
  color: #fff;
}
.btn-tp01:hover span:after {
	right: 0.8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}

.btn-tp02 {
	display: table;
	position: relative;
	margin: 0 auto;
	padding: 1rem 0;
	text-align: center;
	background-color: #000;
	border: 1px solid #fff;
}
.btn-tp02:before,
.btn-tp02:after {
  position: absolute;
  z-index: 2;
  content: '';
  width: 0;
  height: 0;
  border: 1px solid transparent;
}
.btn-tp02:before {
  top: -1px;
  left: -1px;
}
.btn-tp02:after {
  bottom: -1px;
  right: -1px;
}
.btn-tp02:hover {
	background-color: #fff;
	border: 1px solid #000;
}
.btn-tp02:hover::before,
.btn-tp02:hover::after {
  width: 100%;
  height: 100%;
}
.btn-tp02:hover::before {
  border-bottom-color: #000;
  border-left-color: #000;
  transition: height .3s, width .3s .3s;
}
.btn-tp02:hover::after {
  border-top-color: #000;
  border-right-color: #000;
  transition: height .3s, width .3s .3s;
}
.btn-tp02 span {
	display: block;
	color: #fff;
	position: relative;
	padding: 0 8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn-tp02 span:after {
	font-family: FontAwesome;
	content: "\f101";
	position: absolute;
	right: 1.2rem;
	color: #fff;
	font-size: 1.3rem;
	top: 50%;
	margin-top: -0.8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn-tp02:hover span:after,
.btn-tp02:hover span {
  color: #000;
}
.btn-tp02:hover span:after {
	right: 0.8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}

.btn-tp03 {
	display: table;
	position: relative;
	margin: 0 auto;
	padding: 1.3rem 0;
	text-align: center;
	border: 1px solid rgba(255,255,255,0.3);
}
.btn-tp03:before,
.btn-tp03:after {
  position: absolute;
  z-index: 2;
  content: '';
  width: 0;
  height: 0;
  border: 1px solid transparent;
}
.btn-tp03:before {
  top: -1px;
  left: -1px;
}
.btn-tp03:after {
  bottom: -1px;
  right: -1px;
}
.btn-tp03:hover::before,
.btn-tp03:hover::after {
  width: 100%;
  height: 100%;
}
.btn-tp03:hover::before {
  border-bottom-color: #00ccff;
  border-left-color: #00ccff;
  transition: height .3s, width .3s .3s;
}
.btn-tp03:hover::after {
  border-top-color: #00ccff;
  border-right-color: #00ccff;
  transition: height .3s, width .3s .3s;
}
.btn-tp03 span {
	display: block;
	color: #fff;
	position: relative;
	padding: 0 10rem;
	letter-spacing: 0.1em;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn-tp03 span:after {
	font-family: FontAwesome;
	content: "\f101";
	position: absolute;
	right: 1.2rem;
	color: #fff;
	font-size: 1.3rem;
	top: 50%;
	margin-top: -0.8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn-tp03:hover span:after,
.btn-tp03:hover span {
  color: #00ccff;
}
.btn-tp03:hover span:after {
	right: 0.8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
@media only screen and (max-width: 480px) {
	.btn-tp03 span {
		padding: 0 6rem;
	}
}



.btn-tp04 {
	display: table;
	position: relative;
	margin: 0 auto;
	padding: 1.3rem 0;
	text-align: center;
	border: 1px solid rgba(255,255,255,0.3);
}
.btn-tp04:before,
.btn-tp04:after {
  position: absolute;
  z-index: 2;
  content: '';
  width: 0;
  height: 0;
  border: 1px solid transparent;
}
.btn-tp04:before {
  top: -1px;
  left: -1px;
}
.btn-tp04:after {
  bottom: -1px;
  right: -1px;
}
.btn-tp04:hover::before,
.btn-tp04:hover::after {
  width: 100%;
  height: 100%;
}
.btn-tp04:hover::before {
  border-bottom-color: #ff9900;
  border-left-color: #ff9900;
  transition: height .3s, width .3s .3s;
}
.btn-tp04:hover::after {
  border-top-color: #ff9900;
  border-right-color: #ff9900;
  transition: height .3s, width .3s .3s;
}
.btn-tp04 span {
	display: block;
	color: #fff;
	position: relative;
	padding: 0 10rem;
	letter-spacing: 0.1em;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn-tp04 span:after {
	font-family: FontAwesome;
	content: "\f101";
	position: absolute;
	right: 1.2rem;
	color: #fff;
	font-size: 1.3rem;
	top: 50%;
	margin-top: -0.8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn-tp04:hover span:after,
.btn-tp04:hover span {
  color: #ff9900;
}
.btn-tp04:hover span:after {
	right: 0.8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
@media only screen and (max-width: 480px) {
	.btn-tp04 span {
		padding: 0 6rem;
	}
}


.btn-tp05 {
	display: table;
	position: relative;
	margin: 0 auto;
	padding: 1.3rem 0;
	text-align: center;
	border: 1px solid rgba(255,255,255,0.3);
}
.btn-tp05:before,
.btn-tp05:after {
  position: absolute;
  z-index: 2;
  content: '';
  width: 0;
  height: 0;
  border: 1px solid transparent;
}
.btn-tp05:before {
  top: -1px;
  left: -1px;
}
.btn-tp05:after {
  bottom: -1px;
  right: -1px;
}
.btn-tp05:hover::before,
.btn-tp05:hover::after {
  width: 100%;
  height: 100%;
}
.btn-tp05:hover::before {
  border-bottom-color: #99cc00;
  border-left-color: #99cc00;
  transition: height .3s, width .3s .3s;
}
.btn-tp05:hover::after {
  border-top-color: #99cc00;
  border-right-color: #99cc00;
  transition: height .3s, width .3s .3s;
}
.btn-tp05 span {
	display: block;
	color: #fff;
	position: relative;
	padding: 0 10rem;
	letter-spacing: 0.1em;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn-tp05 span:after {
	font-family: FontAwesome;
	content: "\f101";
	position: absolute;
	right: 1.2rem;
	color: #fff;
	font-size: 1.3rem;
	top: 50%;
	margin-top: -0.8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn-tp05:hover span:after,
.btn-tp05:hover span {
  color: #99cc00;
}
.btn-tp05:hover span:after {
	right: 0.8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
@media only screen and (max-width: 480px) {
	.btn-tp05 span {
		padding: 0 6rem;
	}
}


.btn-tp06 {
	display: table;
	position: relative;
	margin: 0 auto;
	padding: 1.3rem 0;
	text-align: center;
	border: 1px solid rgba(255,255,255,0.3);
}
.btn-tp06:before,
.btn-tp06:after {
  position: absolute;
  z-index: 2;
  content: '';
  width: 0;
  height: 0;
  border: 1px solid transparent;
}
.btn-tp06:before {
  top: -1px;
  left: -1px;
}
.btn-tp06:after {
  bottom: -1px;
  right: -1px;
}
.btn-tp06:hover::before,
.btn-tp06:hover::after {
  width: 100%;
  height: 100%;
}
/*
.btn-tp06:hover::before {
  border-bottom-color: #9999ff;
  border-left-color: #9999ff;
  transition: height .3s, width .3s .3s;
}
.btn-tp06:hover::after {
  border-top-color: #9999ff;
  border-right-color: #9999ff;
  transition: height .3s, width .3s .3s;
}
*/
.btn-tp06:hover::before {
  border-bottom-color: #fff;
  border-left-color: #fff;
  transition: height .3s, width .3s .3s;
}
.btn-tp06:hover::after {
  border-top-color: #fff;
  border-right-color: #fff;
  transition: height .3s, width .3s .3s;
}
.btn-tp06 span {
	display: block;
	color: #fff;
	position: relative;
	padding: 0 10rem;
	letter-spacing: 0.1em;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn-tp06 span:after {
	font-family: FontAwesome;
	content: "\f101";
	position: absolute;
	right: 1.2rem;
	color: #fff;
	font-size: 1.3rem;
	top: 50%;
	margin-top: -0.8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
/*
.btn-tp06:hover span:after,
.btn-tp06:hover span {
  color: #9999ff;
}
*/
.btn-tp06:hover span:after,
.btn-tp06:hover span {
  color: #fff;
}
.btn-tp06:hover span:after {
	right: 0.8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
@media only screen and (max-width: 480px) {
	.btn-tp06 span {
		padding: 0 6rem;
	}
}


.btn-tp07 {
	display: table;
	position: relative;
	margin: 0 auto;
	padding: 1.3rem 0;
	text-align: center;
	border: 1px solid rgba(255,255,255,0.3);
}
.btn-tp07:before,
.btn-tp07:after {
  position: absolute;
  z-index: 2;
  content: '';
  width: 0;
  height: 0;
  border: 1px solid transparent;
}
.btn-tp07:before {
  top: -1px;
  left: -1px;
}
.btn-tp07:after {
  bottom: -1px;
  right: -1px;
}
.btn-tp07:hover::before,
.btn-tp07:hover::after {
  width: 100%;
  height: 100%;
}
.btn-tp07:hover::before {
  border-bottom-color: rgba(255,255,255,1);
  border-left-color: rgba(255,255,255,1);
  transition: height .3s, width .3s .3s;
}
.btn-tp07:hover::after {
  border-top-color: rgba(255,255,255,1);
  border-right-color: rgba(255,255,255,1);
  transition: height .3s, width .3s .3s;
}
.btn-tp07 span {
	display: block;
	color: #fff;
	position: relative;
	padding: 0 7rem;
	letter-spacing: 0.1em;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn-tp07 span:after {
	font-family: FontAwesome;
	content: "\f101";
	position: absolute;
	right: 1.2rem;
	color: #fff;
	font-size: 1.3rem;
	top: 50%;
	margin-top: -0.8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn-tp07:hover span:after,
.btn-tp07:hover span {
  color: #9999ff;
}
.btn-tp07:hover span:after {
	right: 0.8rem;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
@media only screen and (max-width: 480px) {
	.btn-tp07 span {
		padding: 0 6rem;
	}
}



