@charset "UTF-8";
html{color:#000;background:#FFF}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td,figure,figcaption{margin:0;padding:0}
table{border-collapse:collapse;border-spacing:0}
fieldset,img{border:0}
caption,th{text-align:left}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}
article,aside,details,figcaption,figure,footer,header,hgroup,nav,section { display: block }
caption { text-align: left; }
img { vertical-align: top; }
html {font-size: 100%;-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;}
main {display: block;/* for IE */}
abbr,acronym{border:0;font-variant:normal}
input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}
input,textarea,select{font-size:100%}
input,button,textarea,select {font-size: 100%;font-family: inherit;color: inherit;}
input[type="checkbox"],input[type="radio"] {box-sizing: border-box;padding: 0;}
input[type="button"],input[type="submit"] {border-radius: 0;-webkit-appearance: none;}
textarea {overflow: auto;vertical-align: top;}
li {list-style: none;}
i {font-style: normal;}
em { font-style: normal; font-weight: 700; }
input,textarea,button {
	border: none;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-webkit-appearance: none;
	max-width: 100%;
	border-radius: 0;
}
select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0;
	margin: 0;
	background: transparent;
	border-radius: 0;
}

/*==================================================
Body_Bace
==================================================*/
html {
	font-size: 62.5%;
}
body {
	min-width: 100%;
	width: 100%;
	font-size:1.4rem;/* 14px*/
	line-height: 1em;
	letter-spacing: 0.1em;
	color: #111;
	background: #fff;
	font-family: "ヒラギノ角ゴ Pro W3", "ヒラギノ角ゴ W3" ,  Hiragino Kaku Gothic Pro, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Osaka, "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
	word-wrap: break-word;
	-webkit-text-size-adjust: 100%;
}
img { max-width: 100%; width : auto; height: auto; }
#wrapper {
	overflow: hidden;
	position: relative; 
}
#wrapper .en {
	font-family: century-gothic, sans-serif;
	font-weight: 400;
	font-style: normal;
}
#wrapper .jp {
	font-family: a-otf-ryumin-pr6n, serif;
	font-weight: 300;
	font-style: normal;
}
#kv .txt-wrap > *,
.section-mission .inner > *,
.section-outline h2,
.section-outline li,
.section-profile > *,
.section-profile > .txt-wrap > *,
.section-carrer .txt-column li,
.section-member h2,
.section-member .txt-wrap .name,
.section-member .txt-wrap .txt,
.section-member .txt-wrap dl,
.section-company h2,
.section-company dl,
.section-contact > *,
#footer {
	opacity: 0;
	-webkit-transform: translateY(30px);
	-ms-transform: translateY(30px);
	transform: translateY(30px) scale(1.1);
}
body.init #kv .txt-wrap > *,
.section-mission.init .inner > *:not(.btn-modal),
.section-outline.init h2,
.section-outline li.init,
.section-profile.init > *,
.section-profile.init > .txt-wrap > *,
.section-carrer .txt-column li.init,
.section-member.init h2,
.section-member.init .txt-wrap .name,
.section-member.init .txt-wrap .txt,
.section-member.init .txt-wrap dl,
.section-company.init h2,
.section-company.init dl,
.section-contact.init > *,
#footer.init {
	opacity: 1;
	-webkit-transform: translateY(0) scale(1);
	-ms-transform: translateY(0) scale(1);
	transform: translateY(0) scale(1);
}
.bg-particles {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
}

/*------ media ------*/
@media screen and (max-width: 768px) {
	body { font-size: 1.4rem; }
}
@media screen and (max-width: 480px) {
	body { font-size: 1.3rem; }
}

/*------ link ------*/
a,a:hover { color: #111; }
a { text-decoration: none; transition: all .3s; }


/*=================================================
#loader
==================================================*/
@-webkit-keyframes zoom {
	0% {
		transform: scale(0.3);
		opacity: 0;
	}
	100% {
		transform: scale(1);
		opacity: 1;
	}
}
@keyframes zoom {
	0% {
		transform: scale(0.3);
		opacity: 0;
	}
	100% {
		transform: scale(1);
		opacity: 1;
	}
}
@-webkit-keyframes loader {
	0% {opacity: 0;}
	50% {opacity: 0;}
	100% {opacity: 1;}
}
@keyframes loader {
	0% {opacity: 0;}
	50% {opacity: 0;}
	100% {opacity: 1;}
}
@-webkit-keyframes spin {
	0% {transform: rotate(0deg);}
	100% {transform: rotate(360deg);}
}
@keyframes spin {
	0% {transform: rotate(0deg);}
	100% {transform: rotate(360deg);}
}
#loader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
}
#loader::before {
	position: absolute;
	content: "";
	width: 100%;
	height: 50%;
	transition: 1s;
	background: #111;
}
#loader::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 50%;
	top: 50%;
	transition: 1s;
	background: #111;
}
#loader.init:before {
  	height: 0;
}
#loader.init:after {
  	top: 100%;
}
#loader .inner {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 1;
}
#loader .logo {
	width: 300px;
	margin: 0 auto;
	animation: zoom .5s linear;
	position: relative;
	z-index: 99;
}
#loader.init .logo {
	transform: scale(3);
	transition: transform 1s ease 0s;
}
#loader .icn-loader {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 160px;
	height: 160px;
	margin: 0 auto;
	background: url(../img/icn_circle_base.png) no-repeat 0 0 /contain;
	animation: loader 1s ease;
}
#loader .icn-loader .line {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	-webkit-transform: translate(-50%, -50%);
   transform: translate(-50%, -50%);
}
#loader .icn-loader .line:before {
	display:  block;
	width: 100%;
	height: 100%;
	content: "";
	background: url(../img/icn_circle_line.png) no-repeat 0 0 /contain;
	animation: spin 1.5s linear infinite;
}
	@media screen and (max-width: 750px) {
		#loader .inner {
			width: 100%;
		}
		#loader .logo {
			width: 50%;
		}
		#loader .icn-loader {
			width: 20%;
			height: auto;
			padding: 20% 0 0;
		}
	}

/*=================================================
#Header
==================================================*/ 
#header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 50;
}
#header h1 {
	width: 275px;
	padding: 35px 0 0 50px;
}
#header h1 img {
	width: 100%;
}
#header h1 a {
	display: block;
}
	@media screen and (max-width: 768px) {
		#header h1 {
			width: 35.8%;
			padding: 5% 0 0 5%;
		}
	}

/*=================================================
#main
==================================================*/
.main h1,
.main h2, 
.main h3,
.main h4 { 
	line-height: 1.2em;
 }
.main p,
.main li,
.main dt,
.main dd {
	line-height: 2em;
}
	@media screen and (max-width: 768px) {
		.main p,
		.main li,
		.main dt,
		.main dd {
			line-height: 1.75em;
		}
	}

/*=================================================
 Parts
==================================================*/
.main h2 {
	text-align: center;
	font-family: century-gothic, sans-serif;
	font-size: 3rem;
	letter-spacing: 0;
}
.section-contact h2,
.section-company h2 {
	margin: 0 0 70px;
}
.main .name {
	margin: 0 0 40px;
	font-family: a-otf-ryumin-pr6n, serif;
	font-weight: 400;
	font-style: normal;
}
.main .name span {
	margin: 0 2rem 0 0;
	font-size: 2rem;
	font-weight: 700;
}
	@media screen and (max-width: 768px) {
		.main h2 {
			font-size: 2.6rem;
		}
		.section-contact h2,
		.section-company h2,
		.section-member h2 {
			margin: 0 0 60px;
		}
	}
	@media screen and (max-width: 480px) {
		.main .name span {
			display: block;
		}
	}


/*=================================================
 Kv
==================================================*/
#kv {
	position: relative;
	width: 100%;
	height: 100vh;
}
#kv .txt-wrap {
	position: absolute;
	top: 50%;
	left: 9.375%;
	width: 100%;
	color: #fff;
	-webkit-transform: translate(0, -50%);
   transform: translate(0, -50%);
   z-index: 30;
}
#kv .txt-wrap .ttl-wrap {
	overflow: hidden;
	display: inline-block;
	margin: 0 0 30px;
	font-weight: 600;
	-webkit-transform: translateY(0px) scale(2);
	-ms-transform: translateY(0px) scale(2);
	transform: translateY(0px) scale(2);
	transition: opacity 1.4s linear 0s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
}
#kv .txt-wrap .subttl {
	position: relative;
	display: inline-block;
	font-size: 2rem;
	line-height: 100%;
	margin: 0 0 7px;
}
#kv .txt-wrap .subttl::after {
	position: absolute;
	content: "";
	background: #fff;
	width: 1000%;
	height: 1px;
	top: 50%;
	left: 100%;
	margin-left: 0.5em;
}
#kv .txt-wrap h2 {
	font-size: 5.6rem;
	line-height: 1.1em;
}
#kv .txt-wrap .logo {
	padding: 0 0 10px;
	transition: opacity 1.4s linear 0.4s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s;
}
#kv .txt-wrap .logo img {
	width: 220px;
	height: 24px;
}
#kv .txt-wrap .txt {
	font-size: 1.6rem;
	line-height: 2em;
	transition: opacity 1.4s linear 0.8s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.8s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.8s;
}
#kv .txt-wrap .txt .viewSp {
	display: none;
}
	@media screen and (max-width: 850px) {
		#kv .txt-wrap {
			left: 5%;
		}
		#kv .txt-wrap .ttl-wrap {
			margin: 0 0 13%;
		}
		#kv .txt-wrap h2 {
			font-size: 6.58vw;
		}
		#kv .txt-wrap .logo {
			max-width: 180px;
			width: 60%;
		}
		#kv .txt-wrap .logo img {
			width: 100%;
			height: auto;
		}
		#kv .txt-wrap .txt {
			font-size: 3.11vw;
		}
		#kv .txt-wrap .txt .viewSp {
			display: block;
		}
	}

/*movie*/
#kv .movie {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#video-background,
#video-overlay {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
}
#video-overlay {
	background: url(../img/layer_movie.png) repeat;
}

/*btn-scroll*/
#kv .btn-scroll {
	position: absolute;
	bottom: 0;
	left: 50%;
	height: 100px;
	text-decoration: none;
	-webkit-transform: translate(-50%, 0);
   transform: translate(-50%, 0);
	z-index: 100;
}
#kv .btn-scroll .txt {
	color: #fff;
	font-family: century-gothic, sans-serif;
	font-size: 1.4rem;
	letter-spacing: 0;
}
#kv .btn-scroll .bar {
	overflow: hidden;
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 12px;
	height: 70px;
	content: "";
	-webkit-transform: translate(-50%, 0);
   transform: translate(-50%, 0);
}
#kv .btn-scroll span span {
	position: absolute;
	bottom: 0;
	left: 50%;
	display: block;
	width: 1px;
	height: 100px;
	border-left: 1xp solid #fff;
	margin-left: -1px;
	border-left: 1px solid #fff;
	border-bottom: 1px solid #fff;
	-webkit-animation: sdb 1.5s infinite;
	animation: sdb 1.5s infinite;
	box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    -webkit-transform: translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: translate(0, 0);
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
		transform: translate(0, -200px);
		transform-origin: bottom;
		opacity: 1;
  }
  50% {
	  transform: scale(1, 1);
	  transform-origin: top;
		opacity: 1;
  }
  75% {
    opacity: 1;
  }
  100% {
    transform: translate(0, 100px);
    opacity: 0;
  }
}
	@media screen and (max-width: 850px) {
		#kv .btn-scroll {
			height: 60px;
		}
		#kv .btn-scroll .bar {
			height: 30px;
		}
		#kv .btn-scroll .txt {
			font-size: 1.2rem;
		}
	}

/*=================================================
section-mission
==================================================*/
.section-mission {
	position: relative;
	padding: 155px 0;
}
.section-mission .inner {
	position: relative;
	max-width: 960px;
	width: 90%;
	margin: 0 auto;
	z-index: 10;
}
.section-mission h2 {
	margin: 0 0 45px;
	transition: opacity 1.4s linear 0s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
}
.section-mission h3 {
	margin: 0 0 65px;
	text-align: center;
	font-size: 2.8rem;
	line-height: 1.75em;
	transition: opacity 1.4s linear 0.4s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s;
}
.section-mission h3 .viewSp {
	display: none;
}
.section-mission .txt {
	margin: 0 0 45px;
	text-align: center;
	transition: opacity 1.4s linear 0.8s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.8s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.8s;
}
.section-mission .txt .viewSp {
	display: none;
}
.section-mission .txt p {
	line-height: 2.6em;
}
.section-mission .txt p + p {
	margin-top: 30px;
}
.section-mission .bgtxt {
	position: absolute;
	top: 33.6%;
	left: 50%;
	width: 1500px;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}
	@media screen and (max-width: 768px) {
		.section-mission {
			position: relative;
			padding: 20% 0;
		}
		.section-mission h2 {
			margin: 0 0 35px;
		}
		.section-mission h3 .viewSp {
			display: block;
		}
		.section-mission h3 {
			margin: 0 0 35px;
			font-size: 2.4rem;
		}
		.section-mission .txt {
			margin: 0 0 30px;
		}
		.section-mission .txt .viewSp {
			display: block;
		}
		.section-mission .txt p {
			line-height: 2em;
		}
		.section-mission .txt p + p {
			margin-top: 20px;
		}
		.section-mission .bgtxt {
			position: absolute;
			top: 33.6%;
			left: -10%;
			width: 120%;
			-webkit-transform: translate(0, 0);
			transform: translate(0, 0);
		}
	}
	@media screen and (max-width: 480px) {
		.section-mission h3 {
			font-size: 4.8vw;
		}
	}

/* btn-modal */
.section-mission .btn-modal {
	overflow: hidden;
	position: relative;
	display: block;
	max-width: 400px;
	width: 100%;
	height: 48px;
	line-height: 48px;
	padding: 0 30px;
	margin: 0 auto;
	color: #111;
	text-align: center;
	font-family: century-gothic, sans-serif;
	font-size: 1.5rem;
	font-weight: 700;
	border: 1px solid #111;
	background: #fff;
	border-radius: 30px; 
	box-sizing: border-box;
	transition: all .3s;
	cursor: pointer;
}
.section-mission .btn-modal.init {
	opacity: 1;
	transform: translateY(0) scale(1);
	transition: opacity 1.4s linear 0s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
}
.section-mission .btn-modal::before {
	position: absolute;
	content: "";
	background: #111;
	width: 0;
	height: 100%;
	top: 0;
	left: 0;
	border-radius: 30px; 
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	transition:all .5s ease;
}
.section-mission .btn-modal span {
	position: relative;
	z-index: 10;
}
.section-mission .btn-modal:hover {
	color: #fff;
}
.section-mission .btn-modal:hover::before {
	width: 100%;
}
.device-sp .section-mission .btn-modal:hover {
	color: #000;
}
.device-sp .section-mission .btn-modal:hover::before {
	width: 0;
}

/* bg */
.section-mission .bgtxt img {
	width: 100%;
}
.section-mission .bg-line div {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 100%;
	content: "";
	background: #eee;
}
.section-mission .bg-line div:nth-child(1) { left: 12.5%; }
.section-mission .bg-line div:nth-child(2) { left: 32.15%; }
.section-mission .bg-line div:nth-child(3) { left: 50%; }
.section-mission .bg-line div:nth-child(4) { left: 68.75%; }
.section-mission .bg-line div:nth-child(5) { left: 87.5%; }


/*==================================================
 outline
==================================================*/
.section-outline {
	position: relative;
	overflow: hidden;
	padding: 135px 0 150px;
	color: #fff;
	background: #000;
}
.section-outline h2 {
	margin: 0 0 120px;
	transition: opacity 1.4s linear 0s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
	position: relative;
	z-index: 1;
}
.section-outline h2 span {
	display: block;
	padding: 5px 0 0;
	font-size: 1.6rem;
}
.section-outline ol {
	max-width: 1600px;
	width: 100%;
	margin: 0 auto;
}
.section-outline ol:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.section-outline li {
	width: 20%;
	float: left;
	padding: 40px 30px;
	border-right: 1px solid #444;
	box-sizing: border-box;
	transition: opacity 1.4s linear 0s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
}
.section-outline li:last-child {
	border-right: none;
}
.section-outline h3 {
	margin: 0 0 45px;
	text-align: center; 
	font-size: 1.6rem;
}
.section-outline h3 span {
	display: block;
	margin: 0 0 40px;
	font-family: century-gothic, sans-serif;
	font-size: 4rem;
	line-height: 1em;
}
	@media screen and (max-width: 768px) {
		.section-outline {
			padding: 22% 0 18%;
		}
		.section-outline h2 {
			margin: 0 0 60px;
		}
		.section-outline h2 span {
			font-size: 1.4rem;
		}
		.section-outline h3 {
			margin: 0 0 35px;
		}
		.section-outline h3 span {
			margin: 0 0 30px;
			font-size: 3.6rem;
		}
		.section-outline li {
			padding: 10px 5%;
		}
	}

/* slider */
.section-outline .swiper-pagination {
	bottom: 0;
	left: 0;
	width: 100%;
	text-align: center;
	z-index: 100;
}
.section-outline .swiper-pagination-bullet {
	background: #fff;
}
.section-outline .swiper-button-prev,
.section-outline .swiper-button-next {
	width: 30px;
	height: 30px;
	margin-top: -15px;
	background: #fff;
	outline: none;
}
.section-outline .swiper-button-prev {
	left: 0;
}
.section-outline .swiper-button-next {
	right: 0;
}
.section-outline .swiper-button-prev:after,
.section-outline .swiper-button-next:after {
	content:"";
	display: block;
	position: absolute;
	top: 50%;
	left: 10px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-top: 2px solid #111;
	border-right: 2px solid #111;
}
.section-outline .swiper-button-prev:after {
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}
.section-outline .swiper-button-next:after {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
	@media screen and (min-width: 1001px) {
		.section-outline .swiper-button-prev,
		.section-outline .swiper-button-next,
		.section-outline .swiper-pagination {
			display: none !important;
		}
	}
	@media screen and (max-width: 1100px) {
		.section-outline #slider {
			padding: 0 0 30px;
		}
	}

/*==================================================
 Profile
==================================================*/
.section-profile {
	position: relative;
	padding: 155px 0 140px;
}
.section-profile h2 {
	position: relative;
	margin: 0 0 180px;
	z-index: 10;
	transition: opacity 1.4s linear 0s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
}
.section-profile .img {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	background: url(../img/img_profile3.png) no-repeat 50% bottom / cover;
	transition: opacity 1.4s linear 0.4s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s;
}
.section-profile .txt-wrap {
	position: relative;
	width: 37.5%;
	padding: 0 0 0 17.2%;
	z-index: 10;
}
.section-profile .txt-wrap .name {
	transition: opacity 1.4s linear 0.8s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.8s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.8s;
}
.section-profile .txt-wrap .txt {
	margin: 0 0 60px;
	transition: opacity 1.4s linear 1.2s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 1.2s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 1.2s;
}
.section-profile .txt-wrap  dl {
	transition: opacity 1.4s linear 1.6s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 1.6s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 1.6s;
}
.section-profile .txt-wrap dt {
	width: 100px;
	float: left;
	padding: 5px 0;
}
.section-profile .txt-wrap dd {
	padding: 5px 0 5px 100px;
}
	@media screen and (max-width: 1400px) {
		.section-profile h2 {
			margin: 0 0 80px;
		}
		.section-profile .txt-wrap {
			max-width: 960px;
			width: 90%;
			margin: auto;
			padding: 0;
		}
		.section-profile .txt-wrap p,
		.section-profile .txt-wrap dl {
			max-width: 500px;
			width: 100%;
		}
		.section-profile .img {
			left: auto;
			right: -10%;
			background: url(../img/img_profile3.png) no-repeat right 50% / auto 100%;
		}
	}
	@media screen and (max-width: 1000px) {
		.section-profile {
			overflow: hidden;
			padding: 20% 0 13%;
		}
		.section-profile h2 {
			margin: 0;
		}
		.section-profile .img {
			position: relative;
			top: auto;
			left: auto;
			height: auto;
			padding: 65% 0 0;
			margin-top: -30%;
			background-size: cover;
		}
		.section-profile .txt-wrap {
			padding: 40px 0 0;
			margin-top: -20%;
		}
		.section-profile .txt-wrap .txt {
			margin: 0 0 40px;
			padding-right: 40%;
			box-sizing: border-box;
		}
		.section-profile .txt-wrap p,
		.section-profile .txt-wrap dl {
			max-width: 100%;
		}
	}
	@media screen and (max-width: 640px) {
		.section-profile .txt-wrap {
			margin-top: -20%;
		}
		.section-profile .txt-wrap .name {
			margin: 0 0 15%;
		}
		.section-profile .txt-wrap .txt {
			padding-right: 0;
		}
	}
	@media screen and (max-width: 480px) {
		.section-profile .txt-wrap {
			padding: 9% 0 0;
			margin-top: -27%;
		}
		.section-profile .txt-wrap dt {
			width: 100%;
			float: none;
			padding: 10px 0 0;
		}
		.section-profile .txt-wrap dd {
			padding: 0 0 10px;
			border-bottom: 1px dotted #ccc;
		}
		.section-profile .txt-wrap dd:last-child {
			border-bottom: none;
		}
	}

/*==================================================
  Career
==================================================*/
.section-carrer {
	overflow: hidden;
	position: relative;
	background: #f6f6f6;
}
.section-carrer h2 {
	opacity: 0;
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
}
.section-carrer h2 span {
	display: none;
}
.section-carrer h2.init {
	opacity: 1;
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
	transition: opacity 1.4s linear 0s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
}
.section-carrer .txt-column li {
	transition: opacity 1.4s linear 0.4s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s;
}
.section-carrer .txt-column li .txt-wrap {
	max-width: 550px;
	width: 85%;
	margin: 0 auto;
}
.section-carrer .txt-column h3 {
	margin: 0 0 20px;
	font-size: 1.6rem;
	letter-spacing: 0;
	text-align: center;
}
.section-carrer .txt-column p {
	margin: 0 0 55px;
}
.section-carrer .txt-column p:last-child {
	margin: 0;
}
	@media (min-width:769px) and (max-width:9999px) {
		.section-carrer h2 {
			position: absolute;
			top: 50%;
			left: 50%;
			width: 442px;
			-webkit-transform: translate(-50%, -50%) scale(0);
			-ms-transform: translate(-50%, -50%) scale(0);
			transform: translate(-50%, -50%) scale(0);
			z-index: 1;
		}
		.section-carrer h2.init {
			-webkit-transform: translate(-50%, -50%) scale(1);
			-ms-transform: translate(-50%, -50%) scale(1);
			transform: translate(-50%, -50%) scale(1);
		}
		.section-carrer h2 img {
			width: 100%;
		}
		.section-carrer .txt-column {
			display:-webkit-box;
			  display:-ms-flexbox;
			display: flex;
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
			-webkit-box-pack: center;
			-ms-flex-pack: center;
			justify-content: center;
			-webkit-box-align: center;
			-ms-flex-align: center;
			align-items: center;
		}
		.section-carrer .txt-column li {
			width: 50%;
			padding: 120px 0;
		}
		.section-carrer .txt-column li:nth-child(4n+1),
		.section-carrer .txt-column li:nth-child(4n) {
			background: #f9f9f9;
		}
	}
	@media screen and (max-width: 768px) {
		.section-carrer h2 {
			width: 100%;
			margin: 15% auto 35px;
		}
		.section-carrer h2 span {
			display: block;
		}
		.section-carrer h2 img {
			display: none;
		}
		.section-carrer .txt-column li {
			padding: 30px 0;
		}
		.section-carrer .txt-column li:nth-child(2n) {
			background: #f9f9f9;
		}
	}
	@media screen and (max-width: 480px) {
		.section-carrer .txt-column h3 {
			font-size: 1.4rem;
		}
	}

/*==================================================
section-member
==================================================*/
.section-member {
	padding: 70px 0;
}
.section-member .inner {
	max-width: 1310px;
	width: 90%;
	margin: 0 auto;
}
.section-member h2 {
	transition: opacity 1.4s linear 0s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
}
	@media (min-width: 1001px) {
		.section-member .inner {
			display: flex;
		}
		.section-member h2 {
			width: 180px;
			padding: 50px 0;
			border-right: 1px solid #d3d3d3;
			box-sizing: border-box;
		}
		.section-member .txt-wrap {
			flex: 1;
		}
	}
.section-member .txt-wrap {
	padding: 50px 70px;
	box-sizing: border-box;
}
.section-member .txt-wrap:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.section-member .txt-wrap .name {
	transition: opacity 1.4s linear 0.4s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s;
}
.section-member .txt-wrap .name i {
	margin-bottom: 10px;
	display: inline-block;
	font-size: 1.2rem;
}
.section-member .txt-wrap .txt,
.section-member .txt-wrap dl {
	float: left;
}
.section-member .txt-wrap .txt {
	width: 43.8%;
	padding: 0 6.2% 0 0;
	transition: opacity 1.4s linear 0.4s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s;
}
.section-member .txt-wrap dl {
	width: 50%;
	transition: opacity 1.4s linear 0.8s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.8s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.8s;
}
.section-member .txt-wrap dt {
	width: 100px;
	float: left;
	padding: 5px 0;
}
.section-member .txt-wrap dd {
	padding: 5px 0 5px 100px;
}

	@media screen and (max-width: 1000px) {
		.section-member {
			padding: 155px 0 135px;
		}
		.section-member .txt-wrap {
			padding: 0;
		}
		.section-member .txt-wrap .txt,
		.section-member .txt-wrap dl {
			float: none;
		}
		.section-member .txt-wrap .txt {
			width: 100%;
			padding: 0 0 30px 0;
		}
		.section-member .txt-wrap dl {
			width: 100%;
		}
	}
	@media screen and (max-width: 768px) {
		.section-member {
			padding: 20% 0;
		}
	}
	@media screen and (max-width: 480px) {
		.section-member .txt-wrap dt {
			width: 100%;
			float: none;
			padding: 10px 0 0;
		}
		.section-member .txt-wrap dd {
			padding: 0 0 10px;
			border-bottom: 1px dotted #ccc;
		}
		.section-member .txt-wrap dd:last-child {
			border-bottom: none;
		}
	}

/*==================================================
 Company
==================================================*/
.section-company {
	position: relative;
	overflow: hidden;
	padding: 135px 0 150px;
	color: #fff;
	background: #000;
}
.section-company h2 {
	transition: opacity 1.4s linear 0s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
	position: relative;
	z-index: 1;
}
.section-company dl {
	max-width: 650px;
	width: 90%;
	margin: 0 auto;
	transition: opacity 1.4s linear 0.4s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s;
	position: relative;
	z-index: 1;
}
.section-company dt {
	width: 150px;
	float: left;
	padding: 0 0 40px;
}
.section-company dd {
	padding: 0 0 40px 150px;
}
.section-company dd a {
	color: #fff;
}
.section-company dd br.viewSp {
	display: none;
}
	@media  (min-width: 769px) {
		.section-company dd a {
			pointer-events: none;
		}
	}
	@media screen and (max-width: 768px) {
		.section-company {
			padding: 20% 0;
		}
		.section-company dt {
			width: 120px;
		}
		.section-company dd {
			padding: 0 0 40px 120px;
		}
		.section-company dd span {
			display: none;
		}
		.section-company dd br.viewSp {
			display: block;
		}
	}
	@media screen and (max-width: 480px) {
		.section-company dt {
			width: 100%;
			float: none;
			padding: 15px 0 2px;
		}
		.section-company dd {
			padding: 0 0 15px 0;
			border-bottom: 1px dotted #333;
		}
		.section-company dd:last-child {
			border-bottom: none;
		}
	}

/*==================================================
 Contact
==================================================*/
.section-contact {
	padding: 150px 0 70px;
	background: #f9f9f9;
}
.section-contact h2 {
	transition: opacity 1.4s linear 0s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
}
.section-contact #form {
	max-width: 910px;
	width: 90%;
	margin: 0 auto;
	transition: opacity 1.4s linear 0.4s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s;
}
body.init .contact-cfm h2,
body.init .contact-cfm #form {
	opacity: 1;
	-webkit-transform: none;
	transform: none;
}
	@media screen and (max-width: 768px) {
		.section-contact {
			padding: 20% 0 15%;
		}
	}

/*form
------------------------------------------------------------------*/
.form dl {
	display: table;
	width: 100%;
	padding: 20px 0;
}
.form dt {
	position: relative;
	display: table-cell;
	width: 230px;
	padding: 0 0 0 10px;
	vertical-align: middle;
	border-bottom: 1px solid #ccc;
	box-sizing: border-box;
}
.form dt span {
	color: #c00;
	font-size: .8em;
	margin-left: 10px;
}
.form dd {
	padding: 0 0 0 45px;
}
.form dd:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.form dd p {
	margin: 0 auto;
	font-size: 93.3%;
}
.form .error {
	color: #f00;
	line-height: 2em;
	margin: 40px 0 50px;
}
.form .errortext {
	clear: both;
	color: #f00;
	line-height: 170%;
	font-size: 90%;
}

/* input / textarea */
::-webkit-input-placeholder {color: #999;}
::-moz-placeholder{color: #999;}
:-moz-placeholder{color: #999;}
:-ms-input-placeholder{color: #999;}

.form .bar {
	padding: 0 10px;
}
.form input[type="text"],
.form input[type="email"],
.form input[type="tel"],
.form textarea {
	padding: 20px;
	font-size: 14px;
	letter-spacing: 0.1em;
	border: 1px solid #fff;
	background: #eee;
	box-sizing: border-box;
}
.contact-cfm .form dt {
	width: 275px;
	border: none;
}
.contact-cfm .form dd,
.contact-cfm .form textarea {
	padding: 20px;
	font-size: 14px;
	letter-spacing: 0.1em;
	background: #eee;
	box-sizing: border-box;
	border: none;
}
.contact-cfm .form .form-info dd {
	padding: 0;
}
.form input[type="text"]:focus,
.form input[type="email"]:focus,
.form input[type="tel"]:focus {
	outline: 0;
	border-color: #ccc;
}
.form input[type="text"],
.form input[type="email"],
.form input[type="tel"] {
	display:block;
	width: 100%;
}
.form input#name02 {
	margin-left: 4%;
}
.form input#name,
.form input#name02,
.contact-cfm .form .form-name dd {
	width: 48%;
	float: left;
}
.contact-cfm .form .form-name {
	overflow: hidden;
}
.contact-cfm .form .form-name dd + dd {
	margin-left: 4%;
}
.form textarea {
	width: 100%;
	height: 180px;
	resize: vertical;
	outline: none;
}
.form .tel-input {
	display: flex;
	align-items: center;
}
.form .tel-input li:nth-child(1),
.form .tel-input li:nth-child(3),
.form .tel-input li:nth-child(5) {
	flex: 0 1 28.57%;
}
.form .tel-input li:nth-child(2),
.form .tel-input li:nth-child(4) {
	flex: 0 1 7.145%;
	text-align: center;
}

	@media(min-width:1px) and (max-width: 1100px) {
		.form dt {
			width: 250px;
		}
	}
	@media(min-width:1px) and (max-width: 768px) {
		.form dl {
			display: block;
		}
		.form dt {
			display: block;
			width: 100%;
			padding: 0 0 2px;
			border-bottom: none;
		}
		.form dd {
			padding: 0;
		}
	}
	@media(min-width:1px) and (max-width: 768px) {
		#form {
			overflow-x: hidden;
		} 
		.form dl {
			padding: 10px 0 20px;
		}
		.form input[type="text"],
		.form input[type="email"],
		.form textarea {
			font-size: 16px;
			transform: scale(0.8);
		}
		.contact-cfm .form dd,
		.contact-cfm .form .form-info textarea {
			width: 100%;
			margin: 0;
			padding: 16px;
			font-size: 14px;
			transform: none;
		}
		.form-company dd ,
		.form-mail dd,
		.form-info dd {
			width: 122%;
			margin: -1% 0 0 -12%;
		}
		.form-name dd {
			width: 122%;
			margin: -1% 0 0 -5%;
		}
		.form-name dd #name02 {
			margin-left: -6%;
		}
		.form-tel dd {
			width: 122%;
			margin: -1% 0 0 -2%;
		}
		.form .tel-input input {
			padding: 20px 10px;
		}
		.form .tel-input li {
			margin-top: 0.5%;
		}
		.form .tel-input li:nth-child(1) {
			margin-left: 2%;
		}
		.form .tel-input li:nth-child(1),
		.form .tel-input li:nth-child(3),
		.form .tel-input li:nth-child(5) {
			flex: 0 1 80px;
		}
		.form .tel-input li:nth-child(2),
		.form .tel-input li:nth-child(4) {
			flex: 0 1 10px;
		}
		.form .form-company .errortext,
		.form .form-mail .errortext,
		.form .form-info .errortext {
			width: 79%;
		}
		.form .form-name .errortext {
			width: 90%;
		}
		.form .form-tel .errortext {
			width: 95.5%;
		}
	}

/* btn 
------------------------------------------------------------------*/
#form .btn {
	margin: 30px 0 0;
	text-align: center;
}
#form .btn p {
	position: relative;
	max-width: 380px;
	width: 100%;
	margin: 0 auto;
}
#form .btn p + p {
	margin-top: 15px;
}
#form .btn input,
#form .btn a {
	display: block;
	width: 100%;
	height: 85px;
	line-height: 85px;
	color: #fff;
	font-size: 1.6rem;
	text-align: center;
	border: 1px solid #000;
	background: #000;
	transition: all .3s;
	cursor: pointer;
}
#form .btn input:hover,
#form .btn a:hover {
	color: #111;
	background: #fff;
}
#form .btn p + p a {
	background: none!important;
	border: none;
	color: #000;
}
#form .btn p + p a span {
	transition: all .3s;
}
#form .btn p + p a:hover span {
	opacity: 0.5;
}
	@media(min-width:1px) and (max-width: 768px) {
		#form .btn input,
		#form .btn a {
			height: 60px;
			line-height: 60px;
			font-size: 1.4rem;
		}
	}

/*==================================================
Footer 
==================================================*/
#footer {
	padding: 165px 0 95px;
	transition: opacity 1.4s linear 0s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
}
.page-cfm #footer {
	opacity: 1;
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
}
.footer .logo {
	max-width: 275px;
	width: 70%;
	margin: 0 auto 40px;
}
.footer .logo img {
	width: 100%;
}
.footer .sns {
	margin: 0 0 50px;
	text-align: center;
}
.footer .sns p {
	margin: 0 0 25px;
	font-size: 15px;
	letter-spacing: 0;
	font-family: century-gothic, sans-serif;
}
.footer .sns li {
	display: inline-block;
	width: 32px;
	margin: 0 10px;
}
.footer .sns li img {
	width: 100%;
}
#copy {
	text-align: center;
	font-size: 1.2rem;
	font-family: century-gothic, sans-serif;
	letter-spacing: 0;
}
	@media screen and (max-width:768px) {
		#footer {
			padding: 20% 0 10%;
		}
	}

/*==================================================
 Modal
==================================================*/
#modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	background: rgba(255,255,255,0.96);
	z-index: 9998;
}

/* menu-btn */
.menu-btn {
	display: block;
	position: fixed;
	right: 0;
	top: 0;
	width: 90px;
	height: 90px;
	background: #333;
	z-index: 9999;
}
.menu-line {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 36px;
	height: 20px;
	-webkit-transform: translate(-50%, -50%);
   transform: translate(-50%, -50%);
}
.menu-line span {
	background: #fff;
	display: block;
	height: 1px;
	position: absolute;
	transition:transform .3s;
	width: 100%;
}
.menu-line-top {
	top: 8px;
	transform: rotate(45deg);
}
.menu-line-bottom {
	bottom: 10px;
	transform: rotate(135deg);
}
.menu-btn.bottom {
	position: relative;
	right: auto;
	top: auto;
	margin: 100px auto 145px;
}
	@media screen and (max-width: 768px) {
		.menu-btn {
			width: 60px;
			height: 60px;
		}
		.menu-btn.bottom {
			margin-bottom: 80px;
		}
	}

/*modal-cont*/
.modal-cont {
	max-width: 960px;
	width: 84.375%;
	margin: 0 auto;
	padding: 280px 0 0;
}
.modal-cont h2 {
	margin: 0 0 45px;
	font-size: 3rem;
	text-align: center;
}
.modal-cont h3 {
	margin: 0 0 100px;
	font-size: 2.8rem;
	line-height: 1.75em;
	text-align: center;
}
.modal-cont h3 .viewSp {
	display: none;
}
.modal-cont h4 {
	margin: 0 0 30px;
	letter-spacing: 0.15em;
	font-family: a-otf-ryumin-pr6n, serif;
}
.modal-cont h4 span {
	padding: 0 0.5em 0 0;
	font-size: 2.8rem;
}
.modal-cont p {
	margin: 0 0 0 25px;
	line-height: 2.6em;
}
.modal-cont p +p {
	margin-top: 50px;
}
.modal-cont p + h4 {
	margin-top: 100px;
}

	@media screen and (max-width: 768px) {
		.modal-cont {
			padding: 180px 0 0;
		}
		.modal-cont h2 {
			margin: 0 0 35px;
			font-size: 2.6rem;
		}
		.modal-cont h3 {
			margin: 0 0 80px;
			font-size: 2.4rem;
		}
		.modal-cont h3 .viewSp {
			display: block;
		}
		.modal-cont h4 span {
			font-size: 2.4rem;
		}
		.modal-cont p + h4 {
			margin-top: 70px;
		}
		.modal-cont p {
			margin: 0 0 0 3%;
			line-height: 175%;
		}
	}
	@media screen and (max-width: 480px) {
		.modal-cont h3 {
			font-size: 4.8vw;
		}
	}


/*==================================================
Swiper
==================================================*/
/* Swiper 4.4.5*/
 .swiper-container {
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	list-style: none;
	padding: 0;
	/* Fix of Webkit flickering */
	z-index: 1;
  }
  .swiper-container-no-flexbox .swiper-slide {
	float: left;
  }
  .swiper-container-vertical > .swiper-wrapper {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
  }
  .swiper-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 1;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	-o-transition-property: transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
  }
  .swiper-container-android .swiper-slide,
  .swiper-wrapper {
	-webkit-transform: translate3d(0px, 0, 0);
	transform: translate3d(0px, 0, 0);
  }
  .swiper-container-multirow > .swiper-wrapper {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
  }
  .swiper-container-free-mode > .swiper-wrapper {
	-webkit-transition-timing-function: ease-out;
	-o-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
	margin: 0 auto;
  }
  .swiper-slide {
	-webkit-flex-shrink: 0;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	width: 100%;
	height: 100%;
	position: relative;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	-o-transition-property: transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
  }
  .swiper-slide-invisible-blank {
	visibility: hidden;
  }
  /* Auto Height */
  .swiper-container-autoheight,
  .swiper-container-autoheight .swiper-slide {
	height: auto;
  }
  .swiper-container-autoheight .swiper-wrapper {
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-transition-property: height, -webkit-transform;
	transition-property: height, -webkit-transform;
	-o-transition-property: transform, height;
	transition-property: transform, height;
	transition-property: transform, height, -webkit-transform;
  }
  /* 3D Effects */
  .swiper-container-3d {
	-webkit-perspective: 1200px;
	perspective: 1200px;
  }
  .swiper-container-3d .swiper-wrapper,
  .swiper-container-3d .swiper-slide,
  .swiper-container-3d .swiper-slide-shadow-left,
  .swiper-container-3d .swiper-slide-shadow-right,
  .swiper-container-3d .swiper-slide-shadow-top,
  .swiper-container-3d .swiper-slide-shadow-bottom,
  .swiper-container-3d .swiper-cube-shadow {
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
  }
  .swiper-container-3d .swiper-slide-shadow-left,
  .swiper-container-3d .swiper-slide-shadow-right,
  .swiper-container-3d .swiper-slide-shadow-top,
  .swiper-container-3d .swiper-slide-shadow-bottom {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 10;
  }
  .swiper-container-3d .swiper-slide-shadow-left {
	background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
	background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-container-3d .swiper-slide-shadow-right {
	background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
	background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-container-3d .swiper-slide-shadow-top {
	background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
	background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-container-3d .swiper-slide-shadow-bottom {
	background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
	background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  /* IE10 Windows Phone 8 Fixes */
  .swiper-container-wp8-horizontal,
  .swiper-container-wp8-horizontal > .swiper-wrapper {
	-ms-touch-action: pan-y;
	touch-action: pan-y;
  }
  .swiper-container-wp8-vertical,
  .swiper-container-wp8-vertical > .swiper-wrapper {
	-ms-touch-action: pan-x;
	touch-action: pan-x;
  }
  .swiper-button-prev,
  .swiper-button-next {
	position: absolute;
	top: 50%;
	width: 27px;
	height: 44px;
	margin-top: -22px;
	z-index: 10;
	cursor: pointer;
	background-size: 27px 44px;
	background-position: center;
	background-repeat: no-repeat;
  }
  .swiper-button-prev.swiper-button-disabled,
  .swiper-button-next.swiper-button-disabled {
	opacity: 0.35;
	cursor: auto;
	pointer-events: none;
  }
  .swiper-button-prev,
  .swiper-container-rtl .swiper-button-next {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
	left: 10px;
	right: auto;
  }
  .swiper-button-next,
  .swiper-container-rtl .swiper-button-prev {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
	right: 10px;
	left: auto;
  }
  .swiper-button-prev.swiper-button-white,
  .swiper-container-rtl .swiper-button-next.swiper-button-white {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
  }
  .swiper-button-next.swiper-button-white,
  .swiper-container-rtl .swiper-button-prev.swiper-button-white {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
  }
  .swiper-button-prev.swiper-button-black,
  .swiper-container-rtl .swiper-button-next.swiper-button-black {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
  }
  .swiper-button-next.swiper-button-black,
  .swiper-container-rtl .swiper-button-prev.swiper-button-black {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
  }
  .swiper-button-lock {
	display: none;
  }
  .swiper-pagination {
	position: absolute;
	text-align: center;
	-webkit-transition: 300ms opacity;
	-o-transition: 300ms opacity;
	transition: 300ms opacity;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	z-index: 10;
  }
  .swiper-pagination.swiper-pagination-hidden {
	opacity: 0;
  }
  /* Common Styles */
  .swiper-pagination-fraction,
  .swiper-pagination-custom,
  .swiper-container-horizontal > .swiper-pagination-bullets {
	bottom: 10px;
	left: 0;
	width: 100%;
  }
  /* Bullets */
  .swiper-pagination-bullets-dynamic {
	overflow: hidden;
	font-size: 0;
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	-webkit-transform: scale(0.33);
	-ms-transform: scale(0.33);
	transform: scale(0.33);
	position: relative;
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
	-webkit-transform: scale(0.66);
	-ms-transform: scale(0.66);
	transform: scale(0.66);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
	-webkit-transform: scale(0.33);
	-ms-transform: scale(0.33);
	transform: scale(0.33);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
	-webkit-transform: scale(0.66);
	-ms-transform: scale(0.66);
	transform: scale(0.66);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
	-webkit-transform: scale(0.33);
	-ms-transform: scale(0.33);
	transform: scale(0.33);
  }
  .swiper-pagination-bullet {
	width: 8px;
	height: 8px;
	display: inline-block;
	border-radius: 100%;
	background: #000;
	opacity: 0.2;
  }
  button.swiper-pagination-bullet {
	border: none;
	margin: 0;
	padding: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
  }
  .swiper-pagination-clickable .swiper-pagination-bullet {
	cursor: pointer;
  }
  .swiper-pagination-bullet-active {
	opacity: 1;
	background: #007aff;
  }
  .swiper-container-vertical > .swiper-pagination-bullets {
	right: 10px;
	top: 50%;
	-webkit-transform: translate3d(0px, -50%, 0);
	transform: translate3d(0px, -50%, 0);
  }
  .swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 6px 0;
	display: block;
  }
  .swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 8px;
  }
  .swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	display: inline-block;
	-webkit-transition: 200ms top, 200ms -webkit-transform;
	transition: 200ms top, 200ms -webkit-transform;
	-o-transition: 200ms transform, 200ms top;
	transition: 200ms transform, 200ms top;
	transition: 200ms transform, 200ms top, 200ms -webkit-transform;
  }
  .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 4px;
  }
  .swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	white-space: nowrap;
  }
  .swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	-webkit-transition: 200ms left, 200ms -webkit-transform;
	transition: 200ms left, 200ms -webkit-transform;
	-o-transition: 200ms transform, 200ms left;
	transition: 200ms transform, 200ms left;
	transition: 200ms transform, 200ms left, 200ms -webkit-transform;
  }
  .swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	-webkit-transition: 200ms right, 200ms -webkit-transform;
	transition: 200ms right, 200ms -webkit-transform;
	-o-transition: 200ms transform, 200ms right;
	transition: 200ms transform, 200ms right;
	transition: 200ms transform, 200ms right, 200ms -webkit-transform;
  }
  /* Progress */
  .swiper-pagination-progressbar {
	background: rgba(0, 0, 0, 0.25);
	position: absolute;
  }
  .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
	background: #007aff;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
	-webkit-transform-origin: left top;
	-ms-transform-origin: left top;
	transform-origin: left top;
  }
  .swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
	-webkit-transform-origin: right top;
	-ms-transform-origin: right top;
	transform-origin: right top;
  }
  .swiper-container-horizontal > .swiper-pagination-progressbar,
  .swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
	width: 100%;
	height: 4px;
	left: 0;
	top: 0;
  }
  .swiper-container-vertical > .swiper-pagination-progressbar,
  .swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
	width: 4px;
	height: 100%;
	left: 0;
	top: 0;
  }
  .swiper-pagination-white .swiper-pagination-bullet-active {
	background: #ffffff;
  }
  .swiper-pagination-progressbar.swiper-pagination-white {
	background: rgba(255, 255, 255, 0.25);
  }
  .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
	background: #ffffff;
  }
  .swiper-pagination-black .swiper-pagination-bullet-active {
	background: #000000;
  }
  .swiper-pagination-progressbar.swiper-pagination-black {
	background: rgba(0, 0, 0, 0.25);
  }
  .swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
	background: #000000;
  }
  .swiper-pagination-lock {
	display: none;
  }
  /* Scrollbar */
  .swiper-scrollbar {
	border-radius: 10px;
	position: relative;
	-ms-touch-action: none;
	background: rgba(0, 0, 0, 0.1);
  }
  .swiper-container-horizontal > .swiper-scrollbar {
	position: absolute;
	left: 1%;
	bottom: 3px;
	z-index: 50;
	height: 5px;
	width: 98%;
  }
  .swiper-container-vertical > .swiper-scrollbar {
	position: absolute;
	right: 3px;
	top: 1%;
	z-index: 50;
	width: 5px;
	height: 98%;
  }
  .swiper-scrollbar-drag {
	height: 100%;
	width: 100%;
	position: relative;
	background: rgba(0, 0, 0, 0.5);
	border-radius: 10px;
	left: 0;
	top: 0;
  }
  .swiper-scrollbar-cursor-drag {
	cursor: move;
  }
  .swiper-scrollbar-lock {
	display: none;
  }
  .swiper-zoom-container {
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	text-align: center;
  }
  .swiper-zoom-container > img,
  .swiper-zoom-container > svg,
  .swiper-zoom-container > canvas {
	max-width: 100%;
	max-height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
  }
  .swiper-slide-zoomed {
	cursor: move;
  }
  /* Preloader */
  .swiper-lazy-preloader {
	width: 42px;
	height: 42px;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: -21px;
	margin-top: -21px;
	z-index: 10;
	-webkit-transform-origin: 50%;
	-ms-transform-origin: 50%;
	transform-origin: 50%;
	-webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
	animation: swiper-preloader-spin 1s steps(12, end) infinite;
  }
  .swiper-lazy-preloader:after {
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
	background-position: 50%;
	background-size: 100%;
	background-repeat: no-repeat;
  }
  .swiper-lazy-preloader-white:after {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  }
  @-webkit-keyframes swiper-preloader-spin {
	100% {
	  -webkit-transform: rotate(360deg);
	  transform: rotate(360deg);
	}
  }
  @keyframes swiper-preloader-spin {
	100% {
	  -webkit-transform: rotate(360deg);
	  transform: rotate(360deg);
	}
  }
  /* a11y */
  .swiper-container .swiper-notification {
	position: absolute;
	left: 0;
	top: 0;
	pointer-events: none;
	opacity: 0;
	z-index: -1000;
  }
  .swiper-container-fade.swiper-container-free-mode .swiper-slide {
	-webkit-transition-timing-function: ease-out;
	-o-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
  }
  .swiper-container-fade .swiper-slide {
	pointer-events: none;
	-webkit-transition-property: opacity;
	-o-transition-property: opacity;
	transition-property: opacity;
  }
  .swiper-container-fade .swiper-slide .swiper-slide {
	pointer-events: none;
  }
  .swiper-container-fade .swiper-slide-active,
  .swiper-container-fade .swiper-slide-active .swiper-slide-active {
	pointer-events: auto;
  }
  .swiper-container-cube {
	overflow: visible;
  }
  .swiper-container-cube .swiper-slide {
	pointer-events: none;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	z-index: 1;
	visibility: hidden;
	-webkit-transform-origin: 0 0;
	-ms-transform-origin: 0 0;
	transform-origin: 0 0;
	width: 100%;
	height: 100%;
  }
  .swiper-container-cube .swiper-slide .swiper-slide {
	pointer-events: none;
  }
  .swiper-container-cube.swiper-container-rtl .swiper-slide {
	-webkit-transform-origin: 100% 0;
	-ms-transform-origin: 100% 0;
	transform-origin: 100% 0;
  }
  .swiper-container-cube .swiper-slide-active,
  .swiper-container-cube .swiper-slide-active .swiper-slide-active {
	pointer-events: auto;
  }
  .swiper-container-cube .swiper-slide-active,
  .swiper-container-cube .swiper-slide-next,
  .swiper-container-cube .swiper-slide-prev,
  .swiper-container-cube .swiper-slide-next + .swiper-slide {
	pointer-events: auto;
	visibility: visible;
  }
  .swiper-container-cube .swiper-slide-shadow-top,
  .swiper-container-cube .swiper-slide-shadow-bottom,
  .swiper-container-cube .swiper-slide-shadow-left,
  .swiper-container-cube .swiper-slide-shadow-right {
	z-index: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
  }
  .swiper-container-cube .swiper-cube-shadow {
	position: absolute;
	left: 0;
	bottom: 0px;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: 0.6;
	-webkit-filter: blur(50px);
	filter: blur(50px);
	z-index: 0;
  }
  .swiper-container-flip {
	overflow: visible;
  }
  .swiper-container-flip .swiper-slide {
	pointer-events: none;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	z-index: 1;
  }
  .swiper-container-flip .swiper-slide .swiper-slide {
	pointer-events: none;
  }
  .swiper-container-flip .swiper-slide-active,
  .swiper-container-flip .swiper-slide-active .swiper-slide-active {
	pointer-events: auto;
  }
  .swiper-container-flip .swiper-slide-shadow-top,
  .swiper-container-flip .swiper-slide-shadow-bottom,
  .swiper-container-flip .swiper-slide-shadow-left,
  .swiper-container-flip .swiper-slide-shadow-right {
	z-index: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
  }
  .swiper-container-coverflow .swiper-wrapper {
	/* Windows 8 IE 10 fix */
	-ms-perspective: 1200px;
  }

/*==================================================
fat-nav
==================================================*/
.fat-nav,.hamburger__icon,.hamburger__icon:after,.hamburger__icon:before{-moz-transition-duration:.4s;-o-transition-duration:.4s;-webkit-transition-duration:.4s}.hamburger{display:block;width:50px;height:50px;position:fixed;top:0;left:0;z-index:10000;padding:12px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-ms-touch-action:manipulation;touch-action:manipulation}.hamburger__icon{position:relative;margin-top:7px;margin-bottom:7px}.hamburger__icon,.hamburger__icon:after,.hamburger__icon:before{display:block;width:25px;height:2px;background-color:#222;-moz-transition-property:background-color,-moz-transform;-o-transition-property:background-color,-o-transform;-webkit-transition-property:background-color,-webkit-transform;transition-property:background-color,transform;transition-duration:.4s}.hamburger__icon:after,.hamburger__icon:before{position:absolute;content:""}.hamburger__icon:before{top:-7px}.hamburger__icon:after{top:7px}.hamburger.active .hamburger__icon{background-color:transparent}.hamburger.active .hamburger__icon:after,.hamburger.active .hamburger__icon:before{background-color:#fff}.hamburger.active .hamburger__icon:before{-moz-transform:translateY(7px)rotate(45deg);-ms-transform:translateY(7px)rotate(45deg);-webkit-transform:translateY(7px)rotate(45deg);transform:translateY(7px)rotate(45deg)}.hamburger.active .hamburger__icon:after{-moz-transform:translateY(-7px)rotate(-45deg);-ms-transform:translateY(-7px)rotate(-45deg);-webkit-transform:translateY(-7px)rotate(-45deg);transform:translateY(-7px)rotate(-45deg)}.fat-nav{top:0;left:0;z-index:9999;position:fixed;display:none;width:100%;height:100%;background:rgba(0,0,0,.8);-moz-transform:scale(1.4);-ms-transform:scale(1.4);-webkit-transform:scale(1.4);transform:scale(1.4);-moz-transition-property:-moz-transform;-o-transition-property:-o-transform;-webkit-transition-property:-webkit-transform;transition-property:transform;transition-duration:.4s;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.fat-nav__wrapper{width:100%;height:100%;display:table;table-layout:fixed}.fat-nav.active{-moz-transform:scale(1);-ms-transform:scale(1);-webkit-transform:scale(1);transform:scale(1)}.fat-nav ul{display:table-cell;vertical-align:middle;margin:0;padding:0}.fat-nav li{list-style-type:none;text-align:center;padding:10px;font-size:2em}.fat-nav li,.fat-nav li a{color:#fff}.fat-nav li a{text-decoration:none}

/* custom */
.no-scroll {
	height: 100%;
	overflow: hidden;
}
.fat-nav {
	display: none;
}
.fat-nav {
	z-index:9991;
	background: rgba(255,255,255,0.96);
}
.fat-nav li {
	font-size: 2rem;
	line-height: 1em;
	margin: 15px 0;
}
.fat-nav li a {
	color: #111;
}
.fat-nav li a:hover::after {
	width: 0;
}
.hamburger__icon,
.hamburger__icon:after,
.hamburger__icon:before {
	background: #fff;
}
.hamburger {
	display: none;
	position: fixed;
	left: auto;
	right: 0;
	top: 0;
	padding: 16px 12px 12px;
	line-height: 100%;
	z-index: 9990;
	background: #303244;
}
.hamburger.active {
	position: fixed;
	background: #303244;
	z-index: 9999;
}
.hamburger__icon,
.hamburger__icon:after,
.hamburger__icon:before {
	width: 26px;
	background: #fff;
}

.fat-nav ul.sns {
	display: block;
	text-align: center;
}
.fat-nav ul.sns li {
	display: inline-block;
}

	@media(min-width:1px) and (max-width: 768px) {
		.hamburger {
			display: block;
		}
	}

/*==================================================
clearfix
==================================================*/
.clearfix:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.viewmore_btn{
	width:50%;
}
.viewmore_btn_parent{
	text-align:center;
}
.viewmore_btn2{
	width:20%;
}







/* btn-modal */
.section-outline .btn-modal {
	overflow: hidden;
	position: relative;
	display: block;
	max-width: 400px;
	width: 100%;
	height: 48px;
	line-height: 48px;
	padding: 0 30px;
	margin: 0 auto;
	color: #111;
	text-align: center;
	font-family: century-gothic, sans-serif;
	font-size: 1.5rem;
	font-weight: 700;
	border: 1px solid #111;
	background: #fff;
	border-radius: 30px; 
	box-sizing: border-box;
	transition: all .3s;
	cursor: pointer;
}
.section-outline .btn-modal.init {
	opacity: 1;
	transform: translateY(0) scale(1);
	transition: opacity 1.4s linear 0s, transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s, -webkit-transform 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
}
.section-outline .btn-modal::before {
	position: absolute;
	content: "";
	background: #111;
	width: 0;
	height: 100%;
	top: 0;
	left: 0;
	border-radius: 30px; 
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	transition:all .5s ease;
}
.section-outline .btn-modal span {
	position: relative;
	z-index: 10;
}
.section-outline .btn-modal:hover {
	color: #fff;
}
.section-outline .btn-modal:hover::before {
	width: 100%;
}

.device-sp .section-outline .btn-modal:hover::before {
	width: 0;
}