/*****************************************
Table Of Contents:

01. General Styles
02. Preloader
03. Navigation
04. Header
05. Intro
06. Description
07. Services
08. Details 1
09. Details 2
10. Testimonials
11. Call Me
12. Projects
13. Project Lightboxes
14. Team
15. About
16. Contact
17. Footer
18. Copyright
19. Back To Top Button
20. Extra Pages
21. Media Queries
******************************************/

/*****************************************
Colors:

- Backgrounds - light gray #fbfbfb
- Background - dark blue #153e52
- Backgrounds navbar, footer - dark gray #113448
- Buttons, bullets, icons - green #14bf98
- Headings text - black #484a46
- Body text - gray #787976
- Body text - light gray #dfe5ec
******************************************/


/******************************/
/*     01. General Styles     */
/******************************/
body,
html {
	width: 100%;
	height: 100%;
}

.p-large {
	font: 400 1.125rem/1.625rem "Open Sans", sans-serif;
}

.p-small {
	font: 400 0.875rem/1.375rem "Open Sans", sans-serif;
}

.p-heading {
	margin-bottom: 3.5rem;
	text-align: center;
}

.li-space-lg li {
	margin-bottom: 0.375rem;
}

.indent {
	padding-left: 1.25rem;
}
/*
h1 {
	color: #484a46;
	font: 700 2.5rem/3rem "Montserrat", sans-serif;
}
*/
h2 {
	color: #484a46;
	font: 700 1.75rem/2.125rem "Montserrat", sans-serif;
}

h3 {
	color: #484a46;
	font: 700 1.375rem/1.75rem "Montserrat", sans-serif;
}

h4 {
	color: #484a46;
	font: 700 1.25rem/1.625rem "Montserrat", sans-serif;
}

h5 {
	color: #484a46;
	font: 700 1.125rem/1.5rem "Montserrat", sans-serif;
}

h6 {
	color: #484a46;
	font: 700 1rem/1.375rem "Montserrat", sans-serif;
}

a {
	color: #787976;
	text-decoration: underline;
}

a:hover {
	color: #787976;
	text-decoration: underline;
}

a.green {
	color: #dcdcdc
}

a.white,
.white {
	color: #dfe5ec;
}


a[target=_blank][rel=noopener] {
	padding-right: 25px;
	background: url('../images/link_icon.png?1') right center/22px auto no-repeat;
}

.testimonial-text {
	font-style: italic;
}

.testimonial-author {
	font: 700 1rem/1.375rem "Montserrat", sans-serif;
}

strong {
	color: #484a46;
}

.section-title {
	color: #dcdcdc;
	font: 500 0.8125rem/1.125rem "Montserrat", sans-serif;
}

.btn-solid-reg {
	display: inline-block;
	padding: 1.1875rem 1.875rem 1.1875rem 1.875rem;
	border: 0.125rem solid #5a7cc4;
	border-radius: 0.25rem;
	background-color: #5a7cc4;
	color: #fff;
	font: 700 0.75rem/0 "Montserrat", sans-serif;
	text-decoration: none;
	transition: all 0.2s;
}

.btn-solid-reg:hover {
	background-color: transparent;
	color: #dcdcdc;
	text-decoration: none;
}

.btn-solid-lg {
	display: inline-block;
	padding: 1.375rem 2.125rem 1.375rem 2.125rem;
	border: 0.125rem solid #dcdcdc;
	border-radius: 0.25rem;
	background-color: #dcdcdc;
	color: #fff;
	font: 700 0.75rem/0 "Montserrat", sans-serif;
	text-decoration: none;
	transition: all 0.2s;
}

.btn-solid-lg:hover {
	background-color: transparent;
	color: #dcdcdc;
	text-decoration: none;
}

.btn-outline-reg {
	display: inline-block;
	padding: 1.1875rem 1.875rem 1.1875rem 1.875rem;
	border: 0.125rem solid #787976;
	border-radius: 0.25rem;
	background-color: transparent;
	color: #787976;
	font: 700 0.75rem/0 "Montserrat", sans-serif;
	text-decoration: none;
	transition: all 0.2s;
}

.btn-outline-reg:hover {
	background-color: #787976;
	color: #fff;
	text-decoration: none;
}

.btn-outline-lg {
	display: inline-block;
	padding: 1.375rem 2.125rem 1.375rem 2.125rem;
	border: 0.125rem solid #787976;
	border-radius: 0.25rem;
	background-color: transparent;
	color: #787976;
	font: 700 0.75rem/0 "Montserrat", sans-serif;
	text-decoration: none;
	transition: all 0.2s;
}

.btn-outline-lg:hover {
	background-color: #787976;
	color: #fff;
	text-decoration: none;
}

.btn-outline-sm {
	display: inline-block;
	padding: 1rem 1.625rem 0.9375rem 1.625rem;
	border: 0.125rem solid #787976;
	border-radius: 0.25rem;
	background-color: transparent;
	color: #787976;
	font: 700 0.75rem/0 "Montserrat", sans-serif;
	text-decoration: none;
	transition: all 0.2s;
}

.btn-outline-sm:hover {
	background-color: #787976;
	color: #fff;
	text-decoration: none;
}

.form-group {
	position: relative;
	margin-bottom: 1.25rem;
}

.form-group.has-error.has-danger {
	margin-bottom: 0.625rem;
}

.form-group.has-error.has-danger .help-block.with-errors ul {
	margin-top: 0.375rem;
}

.label-control {
	position: absolute;
	top: 0.8125rem;
	left: 1.375rem;
	color: #787976;
	opacity: 1;
	font: 400 0.875rem/1.375rem "Open Sans", sans-serif;
	cursor: text;
	transition: all 0.2s ease;
}

/* IE10+ hack to solve lower label text position compared to the rest of the browsers */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
	.label-control {
		top: 0.9375rem;
	}
}

.form-control-input:focus + .label-control,
.form-control-input.notEmpty + .label-control,
.form-control-textarea:focus + .label-control,
.form-control-textarea.notEmpty + .label-control {
	top: 0.125rem;
	opacity: 1;
	font-size: 0.75rem;
	font-weight: 500;
}

.form-control-input,
.form-control-select {
	display: block; /* needed for proper display of the label in Firefox, IE, Edge */
	width: 100%;
	padding-top: 1.25rem;
	padding-bottom: 0.25rem;
	padding-left: 1.3125rem;
	border: 1px solid #dadada;
	border-radius: 0.25rem;
	background-color: #fff;
	color: #787976;
	font: 400 0.875rem/1.375rem "Open Sans", sans-serif;
	transition: all 0.2s;
	-webkit-appearance: none; /* removes inner shadow on form inputs on ios safari */
}

.form-control-select {
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	height: 3rem;
}

/* IE10+ hack to solve lower label text position compared to the rest of the browsers */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
	.form-control-input {
		padding-top: 1.25rem;
		padding-bottom: 0.75rem;
		line-height: 1.75rem;
	}

	.form-control-select {
		padding-top: 0.875rem;
		padding-bottom: 0.75rem;
		height: 3.125rem;
		line-height: 2.125rem;
	}
}

select {
	/* you should keep these first rules in place to maintain cross-browser behavior */
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	-o-appearance: none;
	appearance: none;
	background-image: url('../images/down-arrow.png');
	background-position: 96% 50%;
	background-repeat: no-repeat;
	outline: none;
}

select::-ms-expand {
	display: none; /* removes the ugly default down arrow on select form field in IE11 */
}

.form-control-textarea {
	display: block; /* used to eliminate a bottom gap difference between Chrome and IE/FF */
	width: 100%;
	height: 8rem; /* used instead of html rows to normalize height between Chrome and IE/FF */
	padding-top: 1.25rem;
	padding-left: 1.3125rem;
	border: 1px solid #dadada;
	border-radius: 0.25rem;
	background-color: #fff;
	color: #787976;
	font: 400 1rem/1.5625rem "Open Sans", sans-serif;
	transition: all 0.2s;
}

.form-control-input:focus,
.form-control-select:focus,
.form-control-textarea:focus {
	border: 1px solid #a1a1a1;
	outline: none; /* Removes blue border on focus */
}

.form-control-input:hover,
.form-control-select:hover,
.form-control-textarea:hover {
	border: 1px solid #a1a1a1;
}

.checkbox {
	font: 400 0.875rem/1.375rem "Open Sans", sans-serif;
}

input[type='checkbox'] {
	vertical-align: -15%;
	margin-right: 0.375rem;
}

/* IE10+ hack to raise checkbox field position compared to the rest of the browsers */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
	input[type='checkbox'] {
		vertical-align: -9%;
	}
}

.form-control-submit-button {
	display: inline-block;
	width: 100%;
	height: 3.125rem;
	border: 0.125rem solid #dcdcdc;
	border-radius: 0.25rem;
	background-color: #dcdcdc;
	color: #fff;
	font: 700 0.75rem/1.75rem "Montserrat", sans-serif;
	cursor: pointer;
	transition: all 0.2s;
}

.form-control-submit-button:hover {
	background-color: transparent;
	color: #dcdcdc
}

/* Form Success And Error Message Formatting */
#lmsgSubmit.h3.text-center.tada.animated,
#cmsgSubmit.h3.text-center.tada.animated,
#pmsgSubmit.h3.text-center.tada.animated,
#lmsgSubmit.h3.text-center,
#cmsgSubmit.h3.text-center,
#pmsgSubmit.h3.text-center {
	display: block;
	margin-bottom: 0;
	color: #b93636;
	font: 400 1.125rem/1rem "Open Sans", sans-serif;
}

.help-block.with-errors .list-unstyled {
	color: #787976;
	font-size: 0.75rem;
	line-height: 1.125rem;
	text-align: left;
}

.help-block.with-errors ul {
	margin-bottom: 0;
}
/* end of form success and error message formatting */

/* Form Success And Error Message Animation - Animate.css */
@-webkit-keyframes tada {
	from {
		-webkit-transform: scale3d(1, 1, 1);
		-ms-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
	10%, 20% {
		-webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
		-ms-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
	}
	30%, 50%, 70%, 90% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
		-ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
	}
	40%, 60%, 80% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
		-ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
	}
	to {
		-webkit-transform: scale3d(1, 1, 1);
		-ms-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
}

@keyframes tada {
	from {
		-webkit-transform: scale3d(1, 1, 1);
		-ms-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
	10%, 20% {
		-webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
		-ms-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
	}
	30%, 50%, 70%, 90% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
		-ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
	}
	40%, 60%, 80% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
		-ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
	}
	to {
		-webkit-transform: scale3d(1, 1, 1);
		-ms-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
}

.tada {
	-webkit-animation-name: tada;
	animation-name: tada;
}

.animated {
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}
/* end of form success and error message animation - Animate.css */

/* Fade-move Animation For Lightbox - Magnific Popup */
/* at start */
.my-mfp-slide-bottom .zoom-anim-dialog {
	opacity: 0;
	transition: all 0.2s ease-out;
	-webkit-transform: translateY(-1.25rem) perspective(37.5rem) rotateX(10deg);
	-ms-transform: translateY(-1.25rem) perspective(37.5rem) rotateX(10deg);
	transform: translateY(-1.25rem) perspective(37.5rem) rotateX(10deg);
}

/* animate in */
.my-mfp-slide-bottom.mfp-ready .zoom-anim-dialog {
	opacity: 1;
	-webkit-transform: translateY(0) perspective(37.5rem) rotateX(0);
	-ms-transform: translateY(0) perspective(37.5rem) rotateX(0);
	transform: translateY(0) perspective(37.5rem) rotateX(0);
}

/* animate out */
.my-mfp-slide-bottom.mfp-removing .zoom-anim-dialog {
	opacity: 0;
	-webkit-transform: translateY(-0.625rem) perspective(37.5rem) rotateX(10deg);
	-ms-transform: translateY(-0.625rem) perspective(37.5rem) rotateX(10deg);
	transform: translateY(-0.625rem) perspective(37.5rem) rotateX(10deg);
}

/* dark overlay, start state */
.my-mfp-slide-bottom.mfp-bg {
	opacity: 0;
	transition: opacity 0.2s ease-out;
}

/* animate in */
.my-mfp-slide-bottom.mfp-ready.mfp-bg {
	opacity: 0.8;
}
/* animate out */
.my-mfp-slide-bottom.mfp-removing.mfp-bg {
	opacity: 0;
}
/* end of fade-move animation for lightbox - magnific popup */

/* Fade Animation For Image Slider - Magnific Popup */
@-webkit-keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

.fadeIn {
	-webkit-animation: fadeIn 0.6s;
	animation: fadeIn 0.6s;
}

@-webkit-keyframes fadeOut {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}

@keyframes fadeOut {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}

.fadeOut {
	-webkit-animation: fadeOut 0.8s;
	animation: fadeOut 0.8s;
}
/* end of fade animation for image slider - magnific popup */


/*************************/
/*     02. Preloader     */
/*************************/
.spinner-wrapper {
	position: fixed;
	z-index: 999999;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: #f3f3f3;
}

.spinner {
	position: absolute;
	top: 50%; /* centers the loading animation vertically one the screen */
	left: 50%; /* centers the loading animation horizontally one the screen */
	width: 3.75rem;
	height: 1.25rem;
	margin: -0.625rem 0 0 -1.875rem; /* is width and height divided by two */
	text-align: center;
}

.spinner > div {
	display: inline-block;
	width: 1rem;
	height: 1rem;
	border-radius: 100%;
	background-color: #272727;
	-webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
	animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}

.spinner .bounce2 {
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
	0%, 80%, 100% { -webkit-transform: scale(0); }
	40% { -webkit-transform: scale(1.0); }
}

@keyframes sk-bouncedelay {
	0%, 80%, 100% {
		-webkit-transform: scale(0);
		-ms-transform: scale(0);
		transform: scale(0);
	} 40% {
		  -webkit-transform: scale(1.0);
		  -ms-transform: scale(1.0);
		  transform: scale(1.0);
	  }
}


/**************************/
/*     03. Navigation     */
/**************************/
.navbar-custom {
	padding-top: 0.375rem;
	padding-bottom: 0.375rem;
	background-color: #f3f3f3;
	box-shadow: 0 0.0625rem 0.375rem 0 rgba(0, 0, 0, 0.1);
	font: 600 0.875rem/0.875rem "Open Sans", sans-serif;
	transition: all 0.2s;
}

.navbar-custom .navbar-brand {
	font-size: 0;
}

.navbar-custom .navbar-brand.logo-image img {
	height: 21px;
	-webkit-backface-visibility: hidden;
}

.navbar-custom .navbar-brand.logo-text {
	margin-top: 0.25rem;
	margin-bottom: 0.25rem;
	font: 700 2.25rem/1.5rem "Montserrat", sans-serif;
	color: #fff;
	text-decoration: none;
}

.navbar-custom .navbar-nav {
	margin-top: 0.75rem;
	margin-bottom: 0.5rem;
}

.navbar-custom .nav-item .nav-link {
	padding: 0.625rem 0.75rem 0.625rem 0.75rem;
	color: #272727;
	text-decoration: none;
	transition: all 0.2s ease;
}

.navbar-custom .nav-item .nav-link:hover,
.navbar-custom .nav-item .nav-link.active {
	color: #dcdcdc
}

/* Dropdown Menu */
.navbar-custom .dropdown:hover > .dropdown-menu {
	display: block; /* this makes the dropdown menu stay open while hovering it */
	min-width: auto;
	animation: fadeDropdown 0.2s; /* required for the fade animation */
}

@keyframes fadeDropdown {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

.navbar-custom .dropdown-toggle:focus { /* removes dropdown outline on focus  */
	outline: 0;
}

.navbar-custom .dropdown-menu {
	margin-top: 0;
	border: none;
	border-radius: 0.25rem;
	background-color: #113448;
}

.navbar-custom .dropdown-item {
	color: #fff;
	text-decoration: none;
}

.navbar-custom .dropdown-item:hover {
	background-color: #113448;
}

.navbar-custom .dropdown-item .item-text {
	font: 600 0.875rem/0.875rem "Open Sans", sans-serif;
}

.navbar-custom .dropdown-item:hover .item-text {
	color: #dcdcdc
}

.navbar-custom .dropdown-items-divide-hr {
	width: 100%;
	height: 1px;
	margin: 0.75rem auto 0.75rem auto;
	border: none;
	background-color: #b5bcc4;
	opacity: 0.2;
}
/* end of dropdown menu */

.navbar-custom .social-icons {
	display: none;
}

.navbar-custom .navbar-toggler {
	border: none;
	color: #272727;
	font-size: 2rem;
}

.navbar-custom button[aria-expanded='false'] .navbar-toggler-awesome.fas.fa-times{
	display: none;
}

.navbar-custom button[aria-expanded='false'] .navbar-toggler-awesome.fas.fa-bars{
	display: inline-block;
}

.navbar-custom button[aria-expanded='true'] .navbar-toggler-awesome.fas.fa-bars{
	display: none;
}

.navbar-custom button[aria-expanded='true'] .navbar-toggler-awesome.fas.fa-times{
	display: inline-block;
	margin-right: 0.125rem;
}


/*********************/
/*    04. Header     */
/*********************/
/*.header {
	background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), url('../images/header-background.jpg') center center no-repeat;
	background-size: cover;
}*/

.header .header-content {
	padding-top: 4rem;
	padding-bottom: 2.125rem;
	text-align: center;
}

.header .text-container {
	margin-bottom: 3rem;
}

.header h1 {
	margin-bottom: 0.5rem;
	color: #d2d2d2;
}

.header .p-large {
	margin-bottom: 2rem;
	color: #dfe5ec;
}

.header .btn-solid-lg {
	margin-right: 0.5rem;
	margin-bottom: 1.25rem;
}

.zindex-front{
	z-index: 2;
	position: relative;
}
.zindex-back{
	z-index: 1;
}
/*********************/
/*     05. Intro     */
/*********************/
.basic-1 {
	padding-top: 6.5rem;
	padding-bottom: 3rem;
}

.basic-1 .text-container {
	margin-bottom: 3rem;
}

.basic-1 .section-title {
	margin-bottom: 0.5rem;
}

.basic-1 h2 {
	margin-bottom: 1.375rem;
}

.basic-1 .testimonial-author {
	color: #484a46;
}

/* Hover Animation */
.basic-1 .image-container {
	overflow: hidden;
	border-radius: 0.25rem;
}

.basic-1 .image-container img {
	margin: 0;
	border-radius: 0.25rem;
	transition: all 0.3s;
}

.basic-1 .image-container:hover img {
	-moz-transform: scale(1.15);
	-webkit-transform: scale(1.15);
	transform: scale(1.15);
}
/* end of hover animation */


/***************************/
/*     06. Description     */
/***************************/
.cards-1 {
	padding-top: 8rem;
	padding-bottom: 2rem;
}

.cards-1 .card {
	margin-bottom: 2.5rem;
	border: none;
	text-align: center;
}

.cards-1 .fa-stack {
	width: 6rem;
	height: 6rem;
	margin-right: auto;
	margin-bottom: 1rem;
	margin-left: auto;
	line-height: 6rem;
	text-align: left;
}

.cards-1 .fa-stack .hexagon {
	position: absolute;
	width: 6rem;
	height: 6rem;
	background: url('../images/hexagon-green.svg') center center no-repeat;
	background-size: 6rem 6rem;
}

.cards-1 .fa-stack-1x {
	color: #fff;
	font-size: 2rem;
}

.cards-1 .card-body {
	padding: 0;
}

.cards-1 .card-title {
	margin-bottom: 0.625rem;
}


/************************/
/*     07. Services     */
/************************/
.cards-2 {
	padding-top: 0rem;
	padding-bottom: 1rem;
	background-color: #fbfbfb;
}

.cards-2 .section-title {
	margin-bottom: 0.5rem;
	text-align: center;
}
/*
.cards-2 h2 {
	margin-bottom: 3.25rem;
	text-align: center;
}
*/
.cards-2 .card {
	margin-bottom: 2.5rem;
	/*margin-bottom: 5.625rem;*/
	border: none;
	background-color: transparent;
}

.cards-2 .card-image img {
	border-top-left-radius: 0.375rem;
	border-top-right-radius: 0.375rem;
}

.cards-2 .card-body {
	padding: 2.25rem 2rem 2.125rem 2rem;
	border: 1px solid #ebe8e8;
	border-bottom-left-radius: 0.375rem;
	border-bottom-right-radius: 0.375rem;
	background-color: #fff;
}

.cards-2 h3 {
	margin-bottom: 0.75rem;
	text-align: center;
}

.cards-2 .list-unstyled {
	margin-bottom: 1.5rem;
}

.cards-2 .list-unstyled .fas {
	color: #dcdcdc;
	font-size: 0.5rem;
	line-height: 1.375rem;
}

.cards-2 .list-unstyled .media-body {
	margin-left: 0.625rem;
}

.cards-2 .price {
	margin-bottom: 0.25rem;
	color: #484a46;
	font: 700 1rem/1.5rem "Montserrat", sans-serif;
	text-align: center;
}

.cards-2 .price span {
	color: #dcdcdc
}

.cards-2 .button-container {
	margin-top: -1.375rem;
	text-align: center;
}

.cards-2 .btn-solid-reg:hover {
	background-color: #fff;
}


/*************************/
/*     08. Details 1     */
/*************************/
.accordion .area-1 {
	height: 21rem;
	background: url('../images/project_recu-2.jpg?1') center center no-repeat;
	background-size: contain;
}

.accordion .accordion-container {
	max-width: 90%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 2.375rem;
	padding-bottom: 1.5rem;
}

.accordion h2 {
	margin-bottom: 1.625rem;
}

.accordion .item {
	margin-bottom: 2rem;
}

.accordion h4 {
	margin-bottom: 0;
}

.accordion span[aria-expanded="true"] .circle-numbering,
.accordion span[aria-expanded="false"] .circle-numbering {
	display: inline-block;
	width: 1.0rem;
	height: 1.0rem;
	margin-right: 0.875rem;
	border: 0.125rem solid #dcdcdc;
	border-radius: 50%;
	background-color: #484a46;
	color: #fff;
	font: 700 1rem/2.125rem "Montserrat", sans-serif;
	text-align: center;
	vertical-align: middle;
	transition: all 0.2s ease;
}

.accordion span[aria-expanded="false"] .circle-numbering {
	border: 0.125rem solid #484a46;
	background-color: transparent;
	color: #484a46;
}

.accordion .item:hover span[aria-expanded="false"] .circle-numbering {
	border: 0.125rem solid #dcdcdc;
	color: #dcdcdc
}

.accordion .accordion-title {
	display: inline-block;
	/*width: 70%;*/
	margin-top: 0.125rem;
	margin-bottom: 0.25rem;
	color: #484a46;
	font: 700 1.25rem/1.75rem 'Josefin Sans', "Montserrat", sans-serif;
	vertical-align: middle;
	/*cursor: pointer;*/
	transition: all 0.2s ease;
}

.accordion .item:hover .accordion-title {
	/*color: #dcdcdc*/
}

.accordion span[aria-expanded="true"] .accordion-title {
	color: #484a46
	/*color: #dcdcdc*/
}

.accordion .accordion-body {
	margin-left: 3.125rem;
}


/*************************/
/*     09. Details 2     */
/*************************/
.tabs .tabs-container {
	max-width: 90%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 2rem;
	padding-bottom: 0.5rem;
}

.tabs .nav-tabs {
	justify-content: center;
	margin-bottom: 1.125rem;
	border-bottom: none;
}

.tabs .nav-link {
	margin-right: 1.625rem;
	margin-bottom: 0.875rem;
	padding: 0;
	border: none;
	border-radius: 0.25rem;
	color: #4f4f4d;
	font: 700 1.375rem/1.375rem "Montserrat", sans-serif;
	text-decoration: none;
	transition: all 0.2s ease;
}

.tabs .nav-link:hover,
.tabs .nav-link.active {
	color: #dcdcdc
}

.tabs .nav-link .fas {
	margin-right: 0.125rem;
	font-size: 0.875rem;
	vertical-align: 20%;
}

.tabs #tab-1 .progress-container {
	margin-top: 1.5rem;
}

.tabs #tab-1 .progress-container .title {
	margin-bottom: 0.25rem;
	color: #484a46;
	font: 600 0.875rem/1.25rem "Open Sans", sans-serif;
}

.tabs #tab-1 .progress {
	height: 1.375rem;
	margin-bottom: 1.125rem;
	border-radius: 0.125rem;
	background-color: #f9fafc;
}

.tabs #tab-1 .progress-bar {
	display: block;
	padding-left: 1.5rem;
	border-radius: 0.125rem;
	background: linear-gradient(to bottom right, #14bf98, #1bd1a7);
}

.tabs #tab-1 .progress-bar.first {
	width: 100%;
}

.tabs #tab-1 .progress-bar.second {
	width: 75%;
}

.tabs #tab-1 .progress-bar.third {
	width: 90%;
}

.tabs #tab-2 .list-unstyled {
	margin-top: 1.75rem;
	margin-bottom: 0;
	vertical-align: top;
}

.tabs #tab-2 .list-unstyled .media {
	margin-bottom: 2rem;
}

.tabs #tab-2 .list-unstyled .media-bullet {
	color: #dcdcdc;
	font-weight: 600;
	font-size: 2rem;
	line-height: 2rem;
}

.tabs #tab-2 .list-unstyled .media-body {
	margin-left: 0.875rem;
}

.tabs #tab-3 .list-unstyled .fas {
	color: #dcdcdc;
	font-size: 0.5rem;
	line-height: 1.375rem;
}

.tabs #tab-3 .list-unstyled .media-body {
	margin-left: 0.625rem;
}

.tabs #tab-3 .list-unstyled {
	margin-bottom: 1.75rem;
}

.tabs .area-2 {
	height: 0rem;
	/*height: 27rem;*/
	background: url('/images/details-2-background.jpg') center center no-repeat;
	background-size: cover;
}


/****************************/
/*     10. Testimonials     */
/****************************/
.slider {
	padding-top: 6.375rem;
	padding-bottom: 6.5rem;
	background-color: #fbfbfb;
}

.slider h2 {
	margin-bottom: 0.75rem;
	text-align: center;
}

.slider .slider-container {
	position: relative;
}

.slider .swiper-container {
	position: static;
	width: 90%;
	text-align: center;
}

.slider .swiper-button-prev:focus,
.slider .swiper-button-next:focus {
	/* even if you can't see it chrome you can see it on mobile device */
	outline: none;
}

.slider .swiper-button-prev {
	left: -0.5rem;
	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%2028%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23787976'%2F%3E%3C%2Fsvg%3E");
	background-size: 1.125rem 1.75rem;
}

.slider .swiper-button-next {
	right: -0.5rem;
	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%2028%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23787976'%2F%3E%3C%2Fsvg%3E");
	background-size: 1.125rem 1.75rem;
}

.slider .card {
	position: relative;
	border: none;
	background-color: transparent;
}

.slider .card-image {
	width: 6rem;
	height: 6rem;
	margin-right: auto;
	margin-bottom: 0.25rem;
	margin-left: auto;
	border-radius: 50%;
}

.slider .card .card-body {
	padding-bottom: 0;
}

.slider .testimonial-text {
	margin-bottom: 0.625rem;
}

.slider .testimonial-author {
	color: #484a46;
}


/**********************/
/*     11. Call Me    */
/**********************/
.form-1 {
	padding-top: 6.625rem;
	padding-bottom: 5.625rem;
	background-color: #153e52;
}

.form-1 .text-container {
	margin-bottom: 4rem;
}

.form-1 .section-title {
	margin-bottom: 0.5rem;
}

.form-1 h2 {
	margin-bottom: 1.375rem;
	color: #fff;
}

.form-1 .list-unstyled .fas {
	color: #dcdcdc;
	font-size: 0.5rem;
	line-height: 1.375rem;
}

.form-1 .list-unstyled .media-body {
	margin-left: 0.625rem;
}

.form-1 .label-control {
	color: #fff;
}

.form-1 .form-control-input,
.form-1 .form-control-select {
	border: 1px solid #39728f;
	background-color: #2a5d77;
	color: #fff;
}

.form-1 .form-control-textarea {
	border: 1px solid #39728f;
	background-color: #2a5d77;
	color: #fff;
}

.form-1 .form-control-input:focus,
.form-1 .form-control-input:hover,
.form-1 .form-control-select:focus,
.form-1 .form-control-select:hover,
.form-1 .form-control-textarea:focus,
.form-1 .form-control-textarea:hover {
	border: 1px solid #fff;
}

#lmsgSubmit.h3.text-center.tada.animated,
#lmsgSubmit.h3.text-center {
	color: #fff;
}

.form-1 .help-block.with-errors .list-unstyled {
	color: #dfe5ec;
}


/************************/
/*     12. Projects     */
/************************/
.filter {
	padding-top: 6.5rem;
	padding-bottom: 7rem;
}

.filter .section-title {
	margin-bottom: 0.5rem;
}

.filter h2,
.filter .section-title {
	text-align: center;
}

.filter h2 {
	margin-bottom: 3.25rem;
}

.filter .button-group {
	text-align: center;
}

.filter .button-group a {
	display: inline-block;
	margin-right: 0.1875rem;
	margin-bottom: 0.5rem;
	margin-left: 0.1875rem;
	padding: 0.3125rem 1.375rem 0.25rem 1.375rem;
	border-radius: 0.25rem;
	background-color: #f1f4f7;
	color: #7b7e85;
	font: 700 0.75rem/1.25rem "Montserrat", sans-serif;
	cursor: pointer;
	transition: all 0.2s ease;
}

.filter .button-group a:hover {
	background-color: #dcdcdc;
	color: #fff;
}

.filter .button-group a.button.is-checked {
	background-color: #dcdcdc;
	color: #fff;
}

.filter .grid {
	margin-top: 1.25rem;
	border-radius: 0.375rem;
}

/* Hover Animation */
.filter .element-item {
	position: relative;
	float: left;
	overflow: hidden;
	width: 50%;
	background-color: #000; /* to hide 1px white margin in IE */
}

.filter .element-item img {
	max-width: 100%;
	margin: 0;
	transition: all 0.3s;
}

.filter .element-item:hover img {
	-moz-transform: scale(1.15);
	-webkit-transform: scale(1.15);
	transform: scale(1.15);
}
/* end of hover animation */

.filter .element-item .element-item-overlay {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.4);
	opacity: 1;
	text-align: center;
	transition: all 0.3s;
}

.filter .element-item .element-item-overlay span {
	position: absolute;
	z-index: 3;
	top: 42%;
	right: 0;
	left: 0;
	color: #fff;
	font: 700 1.125rem/1.625rem "Montserrat", sans-serif;
}


/**********************************/
/*     13. Project Lightboxes     */
/**********************************/
.lightbox-basic {
	position: relative;
	max-width: 62.5rem;
	margin: 2.5rem auto;
	padding: 1.5625rem;
	border-radius: 0.25rem;
	background: #fff;
	text-align: left;
}

.lightbox-basic img {
	margin-right: auto;
	margin-bottom: 2rem;
	margin-left: auto;
	border-radius: 0.25rem;
}

.lightbox-basic .line-heading {
	width: 3rem;
	height: 1px;
	margin-top: 0;
	margin-bottom: 0.625rem;
	margin-left: 0;
	border: none;
	background-color: #dcdcdc
}

.lightbox-basic h6 {
	margin-bottom: 2rem;
}

.lightbox-basic .testimonial-container {
	margin-top: 1.75rem;
	margin-bottom: 2.125rem;
	padding: 1.125rem 1.5rem 1.125rem 1.5rem;
	border-radius: 0.25rem;
	background-color: #fbfbfb;
}

.lightbox-basic .testimonial-text {
	margin-bottom: 0.5rem;
}

.lightbox-basic .testimonial-author {
	margin-bottom: 0;
}

.lightbox-basic .btn-solid-reg,
.lightbox-basic .btn-outline-reg {
	margin-right: 0.375rem;
	margin-bottom: 1rem;
}

.lightbox-basic a.mfp-close.as-button {
	position: relative;
	width: auto;
	height: auto;
	margin-right: 0.5rem;
	color: #484a46;
	opacity: 1;
}

.lightbox-basic a.mfp-close.as-button:hover {
	color: #f2f2f2;
}

.lightbox-basic button.mfp-close.x-button {
	position: absolute;
	top: -0.375rem;
	right: -0.375rem;
	width: 2.75rem;
	height: 2.75rem;
}


/********************/
/*     14. Team     */
/********************/
.basic-2 {
	padding-top: 6.375rem;
	padding-bottom: 3.375rem;
	background-color: #fbfbfb;
	text-align: center;
}

.basic-2 h2 {
	margin-bottom: 0.75rem;
}

.basic-2 .team-member {
	display: inline-block;
	max-width: 13rem;
	margin-right: 1.5rem;
	margin-bottom: 3.5rem;
	margin-left: 1.5rem;
}

/* Hover Animation */
.basic-2 .image-wrapper {
	overflow: hidden;
	margin-bottom: 1.5rem;
}

.basic-2 .image-wrapper img {
	margin: 0;
	transition: all 0.3s;
}

.basic-2 .image-wrapper:hover img {
	-moz-transform: scale(1.15);
	-webkit-transform: scale(1.15);
	transform: scale(1.15);
}
/* end of hover animation */

.basic-2 .team-member .p-large {
	margin-bottom: 0.25rem;
}

.basic-2 .team-member .job-title {
	margin-bottom: 0.75rem;
	color: #484a46;
	font: 700 1rem/1.375rem "Montserrat", sans-serif;
}

.basic-2 .fa-stack {
	width: 1.75rem;
	height: 1.75rem;
	margin-right: 0.125rem;
	margin-left: 0.125rem;
}

.basic-2 .fa-stack .hexagon {
	position: absolute;
	left: 0;
	width: 1.75rem;
	height: 1.75rem;
	background: url('../images/hexagon-green.svg') center center no-repeat;
	background-size: 1.75rem 1.75rem;
	transition: all 0.2s ease;
}

.basic-2 .fa-stack:hover .hexagon {
	background: url('../images/hexagon-white.svg') center center no-repeat;
	background-size: 1.75rem 1.75rem;
}

.basic-2 .fa-stack-1x {
	font-size: 0.6875rem;
	line-height: 1.75rem;
	color: #fff;
	transition: all 0.2s ease;
}

.basic-2 .fa-stack:hover .fa-stack-1x {
	color: #dcdcdc
}


/*********************/
/*     15. About     */
/*********************/
.counter {
	padding-top: 6.875rem;
	padding-bottom: 5.25rem;
}

.counter .image-container {
	margin-bottom: 3rem;
}

.counter .image-container img {
	border-radius: 0.25rem;
}

.counter .section-title {
	margin-bottom: 0.5rem;
}

.counter h2 {
	margin-bottom: 1.375rem;
}

.counter .list-unstyled {
	margin-bottom: 1.5rem;
}

.counter .list-unstyled .fas {
	color: #dcdcdc;
	font-size: 0.5rem;
	line-height: 1.375rem;
}

.counter .list-unstyled .media-body {
	margin-left: 0.625rem;
}

.counter #counter {
	text-align: center;
}

.counter #counter .cell {
	display: inline-block;
	width: 9.5rem;
	margin-bottom: 0.75rem;
}

.counter #counter .counter-value {
	display: inline-block;
	margin-bottom: 0.125rem;
	color: #dcdcdc;
	font: 700 2.875rem/3.25rem "Montserrat", sans-serif;
	vertical-align: middle;
}

.counter #counter .counter-info {
	display: inline-block;
	margin-left: 0.5rem;
	font-size: 0.875rem;
	line-height: 1.25rem;
	vertical-align: middle;
}


/***********************/
/*     16. Contact     */
/***********************/
.form-2 {
	padding-top: 6.625rem;
	padding-bottom: 5.625rem;
	background-color: #fbfbfb;
}

.form-2 .text-container {
	margin-bottom: 3rem;
}

.form-2 .section-title {
	margin-bottom: 0.5rem;
}

.form-2 h2 {
	margin-bottom: 1.375rem;
}

.form-2 .list-unstyled {
	margin-bottom: 2.25rem;
	font-size: 1rem;
	line-height: 1.625rem;
}

.form-2 .list-unstyled .fas,
.form-2 .list-unstyled .fab {
	margin-right: 0.5rem;
	font-size: 0.875rem;
	color: #dcdcdc;
}

.form-2 .list-unstyled .fa-phone {
	vertical-align: 3%;
}

.form-2 h3 {
	margin-bottom: 1rem;
}

.form-2 .fa-stack {
	margin-right: 0.25rem;
	margin-bottom: 0.75rem;
	margin-left: 0.125rem;
	width: 3.25rem;
	height: 3.25rem;
}

.form-2 .fa-stack .hexagon {
	position: absolute;
	width: 3.25rem;
	height: 3.25rem;
	background: url('../images/hexagon-green.svg') center center no-repeat;
	background-size: 3.25rem 3.25rem;
	transition: all 0.2s ease;
}

.form-2 .fa-stack:hover .hexagon {
	background: url('../images/hexagon-white.svg') center center no-repeat;
	background-size: 3.25rem 3.25rem;
}

.form-2 .fa-stack-1x {
	font-size: 1.5rem;
	line-height: 3.25rem;
	color: #fff;
	transition: all 0.2s ease;
}

.form-2 .fa-stack:hover .fa-stack-1x {
	color: #dcdcdc
}


/**********************/
/*     17. Footer     */
/**********************/
.footer {
	padding-top: 1rem;
	background-color: #222;
}

.footer .text-container {
	margin-bottom: 2.25rem;
}

.footer h4 {
	margin-bottom: 0.75rem;
	color: #fff;
}

.footer p,
.footer ul {
	font-size: 0.875rem;
	line-height: 1.375rem;
}


/*************************/
/*     18. Copyright     */
/*************************/
.copyright {
	padding-top: 1rem;
	padding-bottom: 0.5rem;
	background-color: #222;
	text-align: center;
}

.copyright p,
.copyright a {
	color: #dfe5ec;
	text-decoration: none;
}


/**********************************/
/*     19. Back To Top Button     */
/**********************************/
a.back-to-top {
	position: fixed;
	z-index: 999;
	right: 0.75rem;
	bottom: 0.75rem;
	display: none;
	width: 2.625rem;
	height: 2.625rem;
	border-radius: 1.875rem;
	background: #4f4f4d url("../images/up-arrow.png") no-repeat center 47%;
	background-size: 1.125rem 1.125rem;
	text-indent: -9999px;
}

a:hover.back-to-top {
	background-color: #e9e9e9;
}


/***************************/
/*     20. Extra Pages     */
/***************************/
.ex-header {
	padding-top: 8rem;
	padding-bottom: 5rem;
	background-color: #153e52;
	text-align: center;
}

.ex-header h1 {
	color: #fff;
}

.ex-basic-1 {
	padding-top: 2rem;
	padding-bottom: 0.875rem;
	background-color: #fbfbfb;
}

.ex-basic-1 .breadcrumbs {
	margin-bottom: 1rem;
}

.ex-basic-1 .breadcrumbs .fa {
	margin-right: 0.5rem;
	margin-left: 0.625rem;
}

.ex-basic-2 {
	padding-top: 4.75rem;
	padding-bottom: 4rem;
}

.ex-basic-2 h3 {
	margin-bottom: 1rem;
}

.ex-basic-2 .text-container {
	margin-bottom: 3.625rem;
}

.ex-basic-2 .text-container.last {
	margin-bottom: 0;
}

.ex-basic-2 .list-unstyled .fas {
	color: #dcdcdc;
	font-size: 0.5rem;
	line-height: 1.375rem;
}

.ex-basic-2 .list-unstyled .media-body {
	margin-left: 0.625rem;
}

.ex-basic-2 .form-container {
	margin-top: 2.5rem;
}

.ex-basic-2 .btn-outline-reg {
	margin-top: 1.75rem;
}


/*****************************/
/*     21. Media Queries     */
/*****************************/
/* Min-width width 768px */
@media (min-width: 768px) {

	/* General Styles */
	.p-heading {
		width: 85%;
		margin-right: auto;
		margin-left: auto;
	}
	/* end of general styles */


	/* Navigation */
	.navbar-custom {
		padding: 0.375rem 1.5rem 0.375rem 2rem;
		box-shadow: none;
	}

	.navbar-custom .navbar-brand.logo-text {
		color: #fff;
	}

	.navbar-custom .navbar-nav {
		margin-top: 0;
		margin-bottom: 0;
	}

	.navbar-custom .nav-item .nav-link {
		padding: 0.25rem 0.75rem 0.25rem 0.75rem;
	}

	.navbar-custom .nav-item .nav-link:hover,
	.navbar-custom .nav-item .nav-link.active {
		color: #dcdcdc;
	}

	.navbar-custom.top-nav-collapse {
		padding: 0.375rem 1.5rem 0.375rem 2rem;
		box-shadow: 0 0.0625rem 0.375rem 0 rgba(0, 0, 0, 0.1);
		/*background-color: #cfcfcf;*/
	}

	.navbar-custom.top-nav-collapse .navbar-brand.logo-text {
		color: #fff;
	}

	.navbar-custom.top-nav-collapse .nav-item .nav-link {
		color: #272727;
	}

	.navbar-custom.top-nav-collapse .nav-item .nav-link:hover,
	.navbar-custom.top-nav-collapse .nav-item .nav-link.active {
		color: #dcdcdc
	}

	.navbar-custom .dropdown-menu {
		padding-top: 1rem;
		padding-bottom: 1rem;
		border-top: 0.75rem solid rgba(0, 0, 0, 0);
		border-radius: 0.25rem;
		box-shadow: 0 0.25rem 0.375rem 0 rgba(0, 0, 0, 0.03);
	}

	.navbar-custom.top-nav-collapse .dropdown-menu {
		border-top: 0.125rem solid rgba(0, 0, 0, 0);
	}

	.navbar-custom .dropdown-item {
		padding-top: 0.25rem;
		padding-bottom: 0.25rem;
	}

	.navbar-custom .dropdown-items-divide-hr {
		width: 84%;
	}
	/* end of navigation */


	/* Header */
	.header .header-content {
		padding-top: 2rem;
		padding-bottom: 2.5rem;
	}

	.header h1 {
		font: 700 3.5rem/4rem "Montserrat", sans-serif;
	}
	/* end of header */


	/* Details 1 */
	.accordion .accordion-container {
		max-width: 70%;
	}
	/* end of details 1 */


	/* Details 2 */
	.tabs .tabs-container {
		max-width: 70%;
	}

	.tabs #tab-2 .list-unstyled {
		display: inline-block;
		width: 45%;
		margin-top: 0;
	}

	.tabs #tab-2 .list-unstyled.first {
		margin-right: 2rem;
	}
	/* end of details 2 */


	/* Testimonials */
	.slider .swiper-button-prev {
		left: 1rem;
		width: 1.375rem;
		background-size: 1.375rem 2.125rem;
	}

	.slider .swiper-button-next {
		right: 1rem;
		width: 1.375rem;
		background-size: 1.375rem 2.125rem;
	}
	/* end of testimonials */


	/* Projects */
	.filter .element-item {
		width: 25%;
	}

	.filter .element-item .element-item-overlay {
		opacity: 0;
		transition: opacity 0.3s ease;
	}

	.filter .element-item:hover .element-item-overlay {
		opacity: 1;
	}
	/* end of projects */


	/* About */
	.counter #counter {
		text-align: left;
	}

	.counter #counter .cell {
	}
	/* end of about */


	/* Contact */
	.form-2 .list-unstyled li {
		display: inline-block;
		margin-right: 1rem;
	}

	.form-2 .list-unstyled .address {
		display: block;
	}
	/* end of contact */


	/* Extra Pages */
	.ex-header {
		padding-top: 11rem;
		padding-bottom: 9rem;
	}

	.ex-basic-2 .form-container {
		margin-top: 0.5rem;
	}
	/* end of extra pages */
}
/* end of min-width width 768px */


/* Min-width width 992px */
@media (min-width: 992px) {

	/* General Styles */
	.p-heading {
		width: 65%;
	}
	/* end of general styles */


	/* Navigation */
	.navbar-custom .social-icons {
		display: block;
		margin-left: 0.5rem;
	}

	.navbar-custom .fa-stack {
		margin-left: 0.375rem;
		font-size: 0.8125rem;
	}

	.navbar-custom .fa-stack .hexagon {
		width: 1.625rem;
		height: 1.625rem;
		position: absolute;
		background: url('/images/hexagon-green.svg') center center no-repeat;
		background-size: 1.625rem 1.625rem;
		transition: all 0.2s ease;
	}

	.navbar-custom .fa-stack:hover .hexagon {
		background: url('/images/hexagon-white.svg') center center no-repeat;
		background-size: 1.625rem 1.625rem;
	}

	.navbar-custom .fa-stack-1x {
		font-size: 0.6875rem;
		line-height: 1.625rem;
		color: #fff;
		transition: all 0.2s ease;
	}

	.navbar-custom .fa-stack:hover .fa-stack-1x {
		color: #dcdcdc
	}
	/* end of navigation */


	/* Header */
	.header .header-content {
		padding-top: 2rem;
		padding-bottom: 2rem;
	}

	.header .text-container {
		margin-top: 2rem;
	}
	/* end of header */


	/* Intro */
	.basic-1 {
		padding-top: 6.875rem;
	}

	.basic-1 .text-container {
		margin-bottom: 0;
	}
	/* end of intro */


	/* Description */
	.cards-1 .card {
		display: inline-block;
		max-width: 17.5rem;
		text-align: left;
		vertical-align: top;
	}

	.cards-1 div.card:nth-child(3n+2) {
		margin-right: 2.5rem;
		margin-left: 2.5rem;
	}
	/* end of description */


	/* Services */
	.cards-2 .card {
		max-width: 18.25rem;
		display: inline-block;
		vertical-align: top;
	}

	.cards-2 .col-lg-12 div.card:nth-child(3n+2) {
		margin-right: 1.25rem;
		margin-left: 1.25rem;
	}
	/* end of services */


	/* Details 1 */
	.accordion {
		height: 34.625rem;
	}

	.accordion .area-1 {
		width: 50%;
		height: 100%;
		display: inline-block;
	}

	.accordion .area-2 {
		width: 50%;
		height: 100%;
		display: inline-block;
		vertical-align: top;
	}

	.accordion .accordion-container {
		max-width: 88%;
		margin-left: 2rem;
		padding-bottom: 0;
	}

	.accordion .accordion-title {
		/*width: 85%;*/
	}
	/* end of details 1 */


	/* Details 2 */
	.tabs {
		height: 40.125rem;
	}

	.tabs .area-1 {
		width: 50%;
		height: 100%;
		display: inline-block;
		vertical-align: top;
	}

	.tabs .area-2 {
		width: 49%;
		height: 100%;
		display: inline-block;
	}

	.tabs .tabs-container {
		max-width: 88%;
		margin-left: 2rem;
		padding-top: 2.75rem;
		padding-bottom: 0;
	}

	.tabs .nav-tabs {
		justify-content: flex-start;
	}
	/* end of details 2 */


	/* Call Me */
	.form-1 {
		padding-top: 7rem;
	}

	.form-1 .text-container {
		margin-bottom: 0;
	}
	/* end of call me */


	/* Project Lightboxes */
	.lightbox-basic img {
		margin-bottom: 0;
	}

	.lightbox-basic h3 {
		margin-top: 0.375rem;
	}

	.lightbox-basic .btn-solid-reg,
	.lightbox-basic .btn-outline-reg {
		margin-bottom: 0;
	}
	/* end of project lightboxes */


	/* Team */
	.basic-2 .team-member {
		width: 12.75rem;
		max-width: 100%;
		margin-right: 0.75rem;
		margin-left: 0.75rem;
	}
	/* end of team */


	/* About */
	.counter .image-container {
		margin-bottom: 0;
	}
	/* end of about */


	/* Contact */
	.form-2 {
		padding-top: 6.875rem;
	}

	.form-2 .text-container {
		margin-bottom: 0;
	}
	/* end of contact */


	/* Extra Pages */
	.ex-header h1 {
		width: 80%;
		margin-right: auto;
		margin-left: auto;
	}

	.ex-basic-2 {
		padding-bottom: 5rem;
	}
	/* end of extra pages */
}
/* end of min-width width 992px */


/* Min-width width 1200px */
@media (min-width: 1200px) {

	/* General Styles */
	.p-heading {
		width: 55%;
	}
	/* end of general styles */


	/* Navigation */
	.navbar-custom {
		padding-right: 5rem;
		padding-left: 5rem;
	}

	.navbar-custom.top-nav-collapse {
		padding-right: 5rem;
		padding-left: 5rem;
	}
	/* end of navigation */


	/* Header */
	.header .header-content {
		padding-top: 2rem;
		padding-bottom: 2.5rem;
	}
	/* end of header */


	/* Intro */
	.basic-1 .text-container {
		margin-top: 1.875rem;
		margin-right: 3rem;
	}
	/* end of intro */

	.cards-1 {
		padding-top: 8em;
		padding-bottom: 2rem;
	}

	/* Description */
	.cards-1 .card {
		max-width: 21rem;
	}

	.cards-1 div.card:nth-child(3n+2) {
		margin-right: 2.875rem;
		margin-left: 2.875rem;
	}
	/* end of description */


	/* Services */
	.cards-2 .card {
		max-width: 20.875rem;
	}

	.cards-2 .card-body {
		padding: 2.25rem 2.5rem 2.125rem 2.5rem;
	}

	.cards-2 .col-lg-12 div.card:nth-child(3n+2) {
		margin-right: 3rem;
		margin-left: 3rem;
	}
	/* end of services */


	/* Details 1 */
	.accordion .accordion-container {
		max-width: 28rem;
		margin-left: 5rem;
	}
	/* end of details 1 */


	/* Details 2 */
	.tabs .tabs-container {
		max-width: 28rem;
		margin-right: 5rem;
		margin-left: auto;
	}

	.tabs #tab-2 .media-wrapper.first {
		margin-right: 2rem;
	}
	/* end of details 2 */


	/* Call Me */
	.form-1 .text-container {
		margin-top: 1.375rem;
		margin-right: 1.75rem;
		margin-left: 3rem
	}

	.form-1 form {
		margin-left: 1.75rem;
		margin-right: 3rem
	}
	/* end of call me */


	/* Projects */
	.filter .element-item {
		width: 17.3125rem; /* to eliminate grid overflow problem on hard refresh */
		height: 16.875rem;
	}

	.filter .element-item .element-item-overlay span {
		top: 45%;
	}
	/* end of projects */


	/* Team */
	.basic-2 .team-member {
		width: 14.375rem;
		margin-right: 1.375rem;
		margin-left: 1.375rem;
	}
	/* end of team */


	/* About */
	.counter {
		padding-bottom: 6.125rem;
	}

	.counter .image-container {
		margin-right: 1.5rem;
	}

	.counter .text-container {
		margin-top: 0.375rem;
		margin-right: 2.5rem;
		margin-left: 2rem;
	}
	/* end of about */


	/* Contact */
	.form-2 .text-container {
		margin-top: 0.875rem;
		margin-right: 1.5rem;
	}

	.form-2 form {
		margin-left: 1.5rem;
	}
	/* end of contact */


	/* Footer */
	.footer .text-container.about {
		margin-right: 5rem;
	}
	/* end of footer */


	/* Extra Pages */
	.ex-header h1 {
		width: 60%;
		margin-right: auto;
		margin-left: auto;
	}

	.ex-basic-2 .form-container {
		margin-left: 1.75rem;
	}
	/* end of extra pages */
}
/* end of min-width width 1200px */


/* Min-width width 1600px */
@media (min-width: 1600px) {

	/* Navigation */
	.navbar-custom {
		padding-right: 12rem;
		padding-left: 12rem;
	}

	.navbar-custom.top-nav-collapse {
		padding-right: 12rem;
		padding-left: 12rem;
	}
	/* end of navigation */
}
/* end of min-width width 1200px */
/******/

/*
@charset "utf-8";
*/
input,img,iframe,textarea {
	vertical-align: top;
	border: 0;
	max-width: 100%;
}
body {
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif;
	font-size: 14px;
	letter-spacing: 0.01em;
	line-height: 160%;
	background-color: #fff;
	color: #040404;
	background: url(/images/header-background.jpg) no-repeat center top;
	background-size: cover;
	background-attachment: fixed;
	margin: 0;
	position: relative;
}


section {
	padding-top: 3%;
	background-color: rgba(255, 255, 255, 0.80);
}
.clearfix{zoom:1;}
.clearfix:after{
	display:block;
	content:'';
	clear:both;
}
.inner {
	margin: 0% 3% 0;
}
.wrapper {
	width: 1140px;
	margin: 0 auto;
	background-color:rgba(255,255,255,0.8);
	padding: 6% 0;
}
.container {
	margin: 0 auto;
}
.clearfix{zoom:1;}
.clearfix:after{
	display:block;
	content:'';
	clear:both;
}
.view_pc {
	display: block;
}
.view_sp {
	display: none;
}
br.sp {
	display: none;
}
a {
	text-decoration: none;
	color: #121212;
}
a:hover {
	color: #ddd;
}
a.btn:hover {
	opacity:0.8;
}
img {
	max-width: 100%;
	height: auto;
}
ul {
	list-style-type: none;
	text-align: center;
}
h2 {
	font-family: 'Josefin Sans', sans-serif;
	font-size: 38px;
	letter-spacing: 0.1em;
	font-weight: 300;
	text-align: center;
	padding: 2% 0 4%;
}
h2 span {
	font-family: 'Open Sans', "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Meiryo,sans-serif,"宋体",Gulim;
	margin: 2% 0;
	font-size: 18px;
	letter-spacing: 0.1em;
	display: block;
}
h3 {
	font-size: 26px;
	letter-spacing: 0.1em;
	font-weight: 300;
	margin: 3% 0;
}
p {
	margin: 10px 0;
	letter-spacing: 0.01em;
}
.Josefin {
	font-family: 'Josefin Sans', sans-serif;
}
header .wrapper {
	background: none;
	padding: 30px 0;
	position: relative;
}
header h1 {
	width: 340px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	height: max-content;
}
header nav {
	font-family: 'Josefin Sans', sans-serif;
	letter-spacing: 0.1em;
	overflow: hidden;
}
header nav ul {
	text-align: right;
}
header nav ul li {
	display: inline-block;
	margin: 0 1%;
	font-size: 15px;
}
header nav ul li a:hover {
	color: #ccc;
}
header nav ul li:last-child {
	margin-right: 0;
}
#mmenu_wrap {
	display: none;
}
.mm-panel.mm-hasnavbar .mm-navbar {
	display: none;
}
.mm-listview>li, .mm-listview>li .mm-next, .mm-listview>li .mm-next:before, .mm-listview>li:after {
	text-align: left;
}
.mv {
	padding-top: 0;
	height: 90vh;
	min-height: 500px;
	position: relative;
}
.mv .inner {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
	right: 0;
	height: max-content;
}
.mv .wrapper {
	background: transparent;
}
.mv h1 img {
	max-width: 850px;
	margin-bottom: 60px;
}
.news nav ul li {
	display: inline-block;
	margin: 0 3%;
}
.news .news_list ul {
	margin: 5% auto;
}
.news .news_list ul li {
	width: 29%;
	display: inline-block;
	margin: 2% 6% 2% 0;
	vertical-align: top;
}
.news .news_list ul li:nth-child(3n) {
	margin-right: 0;
}
.news .news_list ul li:last-child {
	margin-right: 0;
}
.news .news_list ul li article {
	text-align: left;
}
.news .news_list ul li article .detail p {
	display: inline-block;
	font-weight: bold;
	margin-top: 20px;
	margin: 20px 10px 0 0;
	font-family: 'Josefin Sans', sans-serif;
}
.news .news_list ul li article p.title {
	/*height: 66px;*/
	overflow: hidden;
}
.news a.btn_all {
	background: #121212;
	font-size: 15px;
	color: #fff;
	padding: 11px 0;
	font-weight: normal;
	margin: 0 auto;
	display: block;
	text-align: center;
	width: 200px;
}
.service p.lead {
	text-align: center;
	margin: 3% auto 5%;
}
.service a {
	color: #999;
}
.service a i {
	margin-right: 5px;
}
.service .box {
	position: relative;
	height: 400px;
}
.service .box.top {
	margin-bottom: 10%;
}
.service .box.bottom {
	margin-bottom: 2%;
}
.service .box h3 {
	margin-bottom: 20px;
}
.service .box img {
	width: 600px;
	position: absolute;
	top: 0;
	margin: auto;
	z-index: 1;
}
.service .box .txt {
	width: 35%;
	position: absolute;
	top: 23%;
}
.service .box.top img {
	left: 0;
}
.service .box.bottom img {
	right: 0;
}
.service .box.top .txt {
	right: 0;
}
.service .box.bottom .txt {
	left: 0;
}
i.fa-external-link {
	margin-right: 2%;
}
.company table {
	text-align: left;
	margin: 0 auto;
	font-size: 14px;
	letter-spacing: 0.1em;
}
.company table tr {
	display: block;
}
.company table th {
	padding: 10px 0;
	width: 200px;
	vertical-align: text-top;
}
.company table td {
	padding: 10px 0;
	width: auto;
}
.company table a {
	color: #999;
	display: block;
}
.contact {
	text-align: center;
	padding: 3% 0 2%;
}
.contact_form_text {
	margin: 10px 0 0;
}
.contact form {
	padding: 20px 0 0;
}
.contact .form {
	width: 80%;
	margin: 0 auto;
}
.contact .form .form_block01 {
	float: left;
	width: 48%;
	text-align: left;
}
.contact .form .form_block02 {
	float: left;
	width: 48%;
	text-align: left;
}
.contact .form label {
	display: block;
	margin-top: 25px;
}
.contact .form label span {
	color: red;
	padding-left: 5px;
}
.contact input {
	background-color: #f3f3f3;
	width: 350px;
	height: 35px;
	border: none;
	border: solid 1px #dcdcdc;
}
.contact input.wpcf7-form-control.wpcf7-submit {
	background-color: #121212;
	width: 90px;
	height: 35px;
	color: #fff;
	border: none;
	font-size: 14px;
	display: block;
	margin: 20px auto 0;
	border-radius: 0;
}
input[type="button"],
input[type="text"],
input[type="email"],
input[type="submit"],
textarea {
	-webkit-appearance: none;
	border-radius: 0;
}
.contact select {
	background-color: #f3f3f3;
	width: 350px;
	height: 35px;
	border: none;
	border: solid 1px #dcdcdc;
}
.contact #message {
	width: 600px;
	max-width: 80%;
	height: 200px;
}
.contact button {
	background-color: #121212;
	color: #101010;
	width: 90px;
	height: 35px;
	border: none;
	font-size: 14px;
}
textarea {
	width: 700px;
	min-height: 200px;
	background-color: #f3f3f3;
	border: none;
	border: solid 1px #dcdcdc;
}
.accept {
	font-size: 13px;
	margin: 20px 0;
}
.accept span.wpcf7-list-item {
	margin-left: 0;
}
.accept input[type="checkbox"] {
	width: 16px;
	height: 16px;
}
footer {
	background: #222;
	color: #fff;
	font-size: 12px;
	text-align: center;
	padding: 1% 0;
	margin-top: 40px;
	letter-spacing: 0.1em;
}
footer .wrapper {
	background: none;
	padding: 0;
}
footer a {
	color: #fff;
}
footer nav {
	margin: 0;
}
footer nav li {
	display: inline-block;
	margin: 2%;
}

@media screen and (max-width: 1024px) {
	.wrapper {
		width: 100%;
	}
	.container {
		width: 94%;
		margin: 0 auto;
	}
	header h1 {
		left: 6%;
	}
	header nav {
		margin-right: 6%;
	}
	.mv {
		min-height: auto;
	}
	.mv .inner {
		position: absolute;
		top: 20%;
		bottom: auto;
	}
	.news .news_list ul li {
		margin: 2% 5% 2% 0;
	}
	.service .box .txt {
		top: 18%;
	}
	h3 {
		font-size: 22px;
	}
	.service .box img {
		width: 60%;
	}
	.contact .form .form_block02 {
		float: right;
	}
	footer {
		padding: 1% 0 2%;
	}
}
@media screen and (max-width: 768px) {
	h2 {
		font-size: 30px;
	}
	h2 span {
		margin: 1% 0;
		font-size: 12px;
	}
	.mv h1 img {
		max-width: 100%;
	}
	.news .news_list ul li {
		width: 30%;
		margin: 2% 4% 2% 0;
	}
	.service .box img {
		position: relative;
		width: 100%;
	}
	.service .box {
		height: auto;
	}
	.service .box.top {
		margin-bottom: 15%;
	}
	.service .box .txt {
		position: relative;
		margin-top: 30px;
		width: 100%;
	}
}
@media screen and (max-width: 414px) {
	body {
		background: url(/images/details-2-background.jpg?1) repeat center top;
	}
	.view_sp {
		display: block;
	}
	.view_pc {
		display: none;
	}
	br.sp {
		display: block;
	}
	section {
		padding-top: 5%;
		background-color: rgba(255, 255, 255, 0.80);
	}
	.inner {
		margin: 0% 3% 0;
	}
	.wrapper {
		padding-top: 20px;
	}
	header h1 {
		left: 3%;
	}
	header nav {
		display: none;
	}
	#mmenu_wrap {
		display: block;
		position: fixed;
		top: 15px;
		right: 13px;
		width: max-content;
		z-index: 3;
	}
	#mmenu_wrap .fa:before {
		font-size: 30px;
	}
	h2 {
		font-size: 24px;
	}
	h2 span {
		margin: 4%;
		font-size: 10px;
	}
	h3 {
		font-size: 20px;
	}
	header h1 {
		width: 160px;
	}
	.mv .inner {
		top: 13%;
	}
	.mv h1 img {
		margin: 0 auto 10%;
		max-width: none;
		width: 100%;
	}
	.news .news_list ul li {
		width: 47%;
	}
	.news .news_list ul li:nth-child(3n) {
		margin: 2% 4% 2% 0;
	}
	.news .news_list ul li:nth-child(2n) {
		margin-right: 0;
	}
	.news .news_list ul li article .detail p {
		margin-top: 15px;
		font-size: 12px;
		line-height: 120%;
	}
	.news .news_list ul li article .detail p.category {
		margin-top: 2px;
		display: block;
	}
	.service p.lead {
		margin: 3% auto 7%;
		font-size: 13px;
	}
	.company table {
		letter-spacing: 0;
	}
	.company table th {
		width: 26%;
		padding: 10px 0 0;
		display: inline-table;
		margin-bottom: 15px;
		vertical-align: top;
		margin-right: 5px;
	}
	.company table td {
		width: 70%;
		padding: 0 0 10px;
		display: inline-table;
		vertical-align: top;
		margin-bottom: 15px;
	}
	.contact input,
	.contact select,
	.contact textarea {
		width: 97%;
	}
	.contact .contact_form_text p {
		text-align: left;
	}
	.contact .form .form_block01,
	.contact .form .form_block02 {
		float: none;
		width: 100%;
	}
	footer {
		padding: 1% 0;
	}
	footer nav {
		display: none;
	}
	footer .copyright {
		margin-top: 2%;
	}
}
@media screen and (max-width: 375px) {
	.service p.lead {
		font-size: 12px;
	}
}
@media screen and (max-width: 360px) {
	h3 {
		font-size: 18px;
	}
	.service p.lead {
		font-size: 11px;
	}
}
@media screen and (max-width: 320px) {
	h3 {
		font-size: 16px;
	}
	.service .box h3 {
		margin-bottom: 0;
	}
	.service p.lead {
		font-size: 10px;
	}
}

/* archive */
.archive_page .wrapper {
	min-height: 100vh;
}
.archive_page nav ul {
	margin-bottom: 3%;
	text-align: center;
	font-family: 'Josefin Sans', sans-serif;
}
.archive_page .tag_list li {
	display: inline-block;
	margin: 0 3%;
	letter-spacing: 0.1em;
	font-size: 14px;
	color: #a5a5a5;
}
.archive_page .tag_list li a {
	color: #a5a5a5;
}
.archive_page .tag_list li.all a {
	color: #161c14;
}
.tag-information .archive_page .tag_list li.information a,
.tag-media .archive_page .tag_list li.media a {
	color: #161c14;
}
.tag-media .archive_page .tag_list li.all a,
.tag-information .archive_page .tag_list li.all a {
	color: #a5a5a5;
}
.archive_page ul.archive_news_box {
	border-bottom: dashed 1px #dedede;
	text-align: center;
}
.archive_page .archive_news_box li{
	width: 28%;
	display: inline-block;
	margin: 0 2% 5% 2%;
	vertical-align: top;
	text-align: left;
}
.archive_page .article_data {
	margin: 7% 0 3%;
	font-size: 13px;
	font-family: 'Josefin Sans', sans-serif;
	letter-spacing: 0.1em;
}
.archive_page .article_data .category {
	margin-left: 6%;
}
.archive_page p.title {
	font-size: 15px;
}
@media screen and (max-width: 768px) {
	.archive_page nav li,
	.archive_page .article_data {
		font-size: 12px;
	}
	.archive_page p.title {
		font-size: 14px;
		line-height: 1.5em;
	}
}
@media screen and (max-width: 414px) {
	.archive_page {
		margin-top: -1%;
	}
	.archive_page nav ul {
		margin: 3% 0 5%;
	}
	.archive_page ul.archive_news_box {
		text-align: left;
	}
	.archive_page .archive_news_box li {
		width: 45%;
	}
	.archive_page .article_data {
		margin: 7% 0 5%;
		line-height: 150%;
	}
	.archive_page .article_data .date {
		display: block;
	}
	.archive_page .article_data .category {
		margin-left: 0;
	}
}
@media screen and (max-width: 412px) {
}
@media screen and (max-width: 375px) {
	.archive_page nav li,
	.archive_page .article_data {
		font-size: 10px;
	}
	.archive_page p.title {
		font-size: 12px;
	}
}
@media screen and (max-width: 360px) {
}
@media screen and (max-width: 320px) {
}

/* pager */
.pager {
	padding-top: 10px;
	text-align: center;
	margin: 20px 0;
}
.page-numbers.current {
	color: #fff;
	background-color: #121212;
	border: 1px solid #121212;
}
.page-numbers {
	background-color: #eeeeee;
	color: #121212;
	padding: 12px 14px;
	margin: 0 5px 0 0;
	border: 1px solid #121212;
}
.page-numbers:hover {
	opacity: 0.8;
}
.page-numbers.current:hover {
	opacity: 1;
}
.page-numbers.dots {
	padding: 0;
	background-color: #fff;
	color: #999;
	border: none;
}
.page-numbers.prev, .page-numbers.next {
	display: none;
}




/* single */
.singe_page .news_box {
	border-top: dashed 1px #231815;
	border-bottom: dashed 1px #231815;
	padding: 5% 0;
}
.singe_page article .date {
	width: 18%;
	display: inline-block;
	font-size: 24px;
	font-family: 'Josefin Sans', sans-serif;
	vertical-align: top;
	margin: 3% 0;
	letter-spacing: 0.1em;
	line-height: 150%;
}
.singe_page article .date span {
	font-size: 13px;
}
.singe_page article .date span.year {
	display: block;
}
.singe_page article .date span.week {
	margin-left: 10px;
}
.singe_page article h1 {
	width: 76%;
	display: inline-block;
	font-size: 24px;
	text-align: left;
	border-left: dashed 1px #231815;
	margin: 3% 0;
	padding-left: 5%;
	line-height: 150%;
}
.singe_page article .category {
	font-size: 13px;
	display: block;
}
.singe_page article img {
	margin: 30px auto;
	display: block;
	max-width: 100%;
	height: auto;
}
.singe_page article .article_text {
	width: 720px;
	margin: 0 auto;
}
.singe_page article .article_text p {
	margin: 15px 0;
	font-size: 15px;
	line-height: 180%;
}
.singe_page article .article_text a {
	text-decoration: underline;
	word-break: break-all;
}
.singe_page article .article_text h2 {
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif;
	text-align: left;
	font-size: 24px;
	margin: 8% 0 4%;
	padding: 0 0 5px;
	border-bottom: 1px solid;
	line-height: 140%;
	letter-spacing: 0;
}
.singe_page article .article_text table th {
	text-align: left;
	padding: 6px 20px 6px 0;
}
.singe_page article .article_text table td {
	padding: 6px 20px 6px 0;
}
.singe_page article .article_text .btn {
	display: inline-block;
	width: auto;
	min-width: 200px;
	margin: 2% 0 2%;
	padding: 1% 10px;
	font-size: 14px;
	text-align: center;
	background: #121212;
	color: #fff;
	text-decoration: none;
}
.singe_page .related_news h2 {
	font-size: 36px;
	letter-spacing: 0.1em;
	font-weight: 300;
	text-align: center;
	padding: 10% 0 2%;
}
.singe_page .related_news ul {
	text-align: center;
}
.singe_page .related_news li {
	width: 28%;
	display: inline-block;
	margin: 0 2% 5% 2%;
	vertical-align: top;
	text-align: left;
}
.singe_page .related_news .article_data {
	font-size: 13px;
	display: inline-block;
	margin: 7% 0 3%;
	font-family: 'Josefin Sans', sans-serif;
	letter-spacing: 0.1em;
}
.singe_page .related_news .article_data .category {
	padding-left: 10px;
}
.singe_page .related_news .title {
	font-size: 15px;
	display: block;
}
.singe_page .related_news .btn {
	display: block;
	width: 20%;
	margin: 4% auto 0;
	padding: 1% 0;
	font-size: 14px;
	text-align: center;
	background: #121212;
	color: #fff;
}

@media screen and (max-width: 768px) {
	.singe_page h1 {
		width: 75%;
	}
	.singe_page .related_news .title {
		width: 80%;
	}
	.singe_page .related_news .date {
		width: 19%;
	}
	.singe_page article .article_text {
		width: 100%;
	}
}
@media screen and (max-width: 414px) {
	.singe_page {
		margin-top: -1px;
	}
	.singe_page article .date {
		font-size: 12px;
		width: 100%;
		margin-bottom: 0;
	}
	.singe_page article .date span.year {
		display: inline-block;
		font-size: 12px;
		margin-right: 5px;
	}
	.singe_page article .date span {
		font-size: 12px;
	}
	.singe_page article h1 {
		font-size: 18px;
		border-left: none;
		padding-left: 0;
		width: 100%;
		margin: 0 0 20px;
	}
	.singe_page article .category {
		font-size: 12px;
		margin-bottom: 10px;
	}
	.singe_page article .article_text p {
		font-size: 14px;
	}
	.singe_page article .article_text h2 {
		font-size: 22px;
		margin: 10% 0 4%;
	}
	.singe_page .related_news li {
		width: 45%;
	}
	.singe_page .related_news h2 {
		font-size: 26px;
	}
	.singe_page .related_news h2 span {
		font-size: 14px;
	}
	.singe_page .relatednews_box {
		padding: 4% 0;
	}
	.singe_page .related_news .date {
		width: 100%;
		font-size: 12px;
		margin: 0;
		display: block;
		line-height: 100%;
	}
	.singe_page .related_news .article_data .category {
		padding-left: 0px;
		font-size: 10px;
	}
	.singe_page .related_news .title {
		width: 100%;
		font-size: 15px;
	}
	.singe_page .related_news .title span {
		font-size: 12px;
	}
	.singe_page .related_news .btn {
		margin: 5% auto;
		font-size: 12px;
		width: 40%;
		padding: 2% 0;
	}
}
@media screen and (max-width: 360px) {
	.singe_page h1 {
		font-size: 16px;
	}
	.singe_page article .date {
		font-size: 10px;
	}
	.singe_page .category {
		font-size: 10px;
	}
	.singe_page article .article_text p {
		font-size: 13px;
		line-height: 1.5em;
		margin-bottom: 4%;
	}
	.singe_page .related_news .title {
		font-size: 14px;
	}
	.singe_page .related_news .title span,
	.singe_page .related_news .date {
		font-size: 10px;
	}
}
/* 追加 */
.member ul li {
	display: inline-block;
	width: 24%;
	margin-right: 3%;
	margin-bottom: 5%;
	vertical-align: top;
}
.member ul li:nth-child(3n) {
	margin-right: 0;
}
.member ul li:last-child {
	margin-right: 0;
}
.member img.member {
	width: 285px;
}
.member p.name {
	font-size: 12px;
}
.member p.name span {
	display: block;
	font-size: 18px;
	font-weight: bold;
}
.member .img_box:hover {
	opacity: 0.8;
}
.member .popup {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
	transition: .6s;
}
.member .popup.is-show {
	opacity: 1;
	visibility: visible;
}
.member .popup-inner {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 80%;
	max-width: 600px;
	padding: 50px;
	background-color: #fff;
	z-index: 2;
}
.member .popup-inner img {
	width: 40%!important;
	display: inline-block;
}
.member .member_txt_head {
	position: relative;
	margin: 0 0 0 auto;
	text-align: left;
}
.member .popup-inner .member_txt {
	width: 56%;
	display: inline-block;
	margin-left: 3%;
}
.member .popup-inner .member_txt p.name {
	display: inline-block;
	margin: 0;
}
.member .popup table {
	font-size: 13px;
	line-height: 1.4;
	margin-top: 10px;
}
.member .popup table th {
	font-weight: normal;
	padding: 5px 10px 5px 0px;
	vertical-align: top;
}
.member .popup table td {
	text-align: left;
	vertical-align: top;
	padding: 5px 0px 5px 0px;
}
.member .close-btn {
	position: absolute;
	right: 0;
	top: 0;
	width: 50px;
	height: 50px;
	line-height: 50px;
	text-align: center;
	cursor: pointer;
}
.member .close-btn i {
	font-size: 20px;
	color: #333;
}
.member .black-background {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.8);
	z-index: 1;
	cursor: pointer;
}
.member .icon_twitter {
	display: inline-block;
	background: #000;
	border-radius: 50%;
	width: 30px;
	height: 30px;
	position: relative;
	vertical-align: bottom;
	margin-left: 10px;
}
.member ul li:nth-of-type(n+4) .icon_twitter {
	display: none;
}
.member .fab.fa-twitter {
	color: #fff;
	width: 14.14px;
	height: 14px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
@media screen and (max-width: 414px) {
	.member ul li {
		width: 47%;
		margin-bottom: 10%;
	}
	.member ul li:nth-child(2n) {
		margin-right: 0;
	}
	.member ul li:nth-child(3n) {
		margin-right: 3%;
	}
	.member .popup-inner .member_txt {
		width: 100%;
		display: block;
		margin-left: 0;
	}
	.member .popup-inner img {
		width: 80%!important;
		display: block;
		margin: 0 auto;
	}
	.member .popup-inner {
		width: 80%;
		padding: 20px;
	}
	.member .member_txt_head {
		margin: 20px 0 0 auto;
		text-align: center;
	}
	.member .icon_twitter {
		display: block;
		margin: 5px auto;
	}
}

/* RECRUIT */
.page h1 {
	font-family: 'Josefin Sans', sans-serif;
	font-size: 38px;
	letter-spacing: 0.1em;
	font-weight: 300;
	text-align: center;
	padding: 2% 0 4%;
}
.page h1 span {
	font-family: 'Open Sans', "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Meiryo,sans-serif,"宋体",Gulim;
	margin: 2% 0;
	font-size: 18px;
	letter-spacing: 0.1em;
	display: block;
}
.recruit_lead {
	text-align: center;
}
.recruit ul.recruit_list {
	padding: 20px 0 30px;
}
.recruit ul.recruit_list li {
	width:46%;
	margin: 25px auto;
	border: solid 1px #dcdcdc;
	background: #121212;
	font-size: 15px;
	color: #fff;
	text-align: center;
}
.recruit ul.recruit_list li a {
	color: #fff;
	padding: 11px 0;
	display: block;
}
.recruit ul.recruit_list li:hover {
	opacity: 0.8;
}
@media screen and (max-width: 768px) {
	.page article {
		min-height: 64vh;
	}
}
@media screen and (max-width: 414px) {
	.page h1 {
		font-size: 24px;
	}
	.page h1 span {
		margin: 0%;
		font-size: 10px;
	}
	.recruit ul.recruit_list li {
		width: 70%;
	}
}

/** NEWS  phone size **/
a {
	color: #000;
	text-decoration: none;
	outline: none;
}

a:active, a:hover {
	outline-width: 0
}

@media screen and (min-width: 650px) {

	body{
		font-size: .875rem;
	}
	.section {
		padding: 20px 0;
		overflow: hidden;
		position: relative;
		display: block;
		background-color: rgba(255, 255, 255, 0.80);
	}

	.section-inner {
		margin: auto;
		max-width: 1020px;
		padding: 0 20px;
	}

}

.section {
	overflow: hidden;
	padding: 40px 0;
	position: relative
}

.section-inner {
	margin: auto;
	max-width: 1020px;
	padding: 0 20px
}

.top-head {
	padding: 20px 0 20px;
	text-align: center
}

.top-pickup {
	border-top: 1px solid #d6d5d5
}

.top-pickup:last-child {
	border-bottom: 1px solid #d6d5d5
}

.top-pickup a {
	display: block;
	padding: 20px 0
}

.top-pickup a:hover {
	text-decoration: none
}

.top-pickup-thumb {
	display: inline-block
}

.top-pickup-block-title {
	font-size: 1.125rem;
	font-weight: bold;
	line-height: 1.4;
	margin-top: 0.4rem;
	text-align: center;
}

.top-pickup-block-detail {
	margin-top: 0.5rem;
	padding: 10px;
}

.n-img {
	vertical-align: middle;
	border-style: none;
	aspect-ratio: auto 200 / 100;
	width: 100%;
	height: 100%;
}

/* PC size */
@media only screen and (min-width: 767px) {
	.is-sp-header .top-pickup-block img {
		display: block;
		margin-left: 0;
		margin-top: 1em;
		text-align: center;
		height: auto;
		max-width: 640px;
		width: 100%;
	}

	.n-img {
		width: 200px;
		height: 100%;
	}

	.top-pickup {
		border-top: 1px solid #d6d5d5;
	}

	.top-pickup-block {
		display: inline-block;
		margin-left: 20px;
		margin-top: 20px;
		vertical-align: top;
		width: calc(100% - 280px)
	}

	.top-pickup-block-date {
		color: #5a5858;
		vertical-align: text-top;

		font-size: .875rem
	}

	.top-pickup-block-title {
		font-size: 1.125rem;
		font-weight: bold;
		line-height: 1.4;
		margin-top: 0.4rem;
		text-align: left;
	}

	.top-pickup-block-detail {
		margin-top: 0.5rem;
		font-size: .875rem
	}

	.top-pickup-block div::first-line {
		line-height: 1;
		vertical-align: top
	}
	.top .sec-stock .section-inner {
		max-width: 980px
	}

	.brand-philosophy li .section-inner {
		display: table;
		width: 100%
	}

	.section-inner {
		padding: 0
	}

	.section .normal-txt {
		padding: 0 0 12px;
		font-size: .875rem
	}

	.section.section-related dl dt {
		font-size: 1.125rem
	}

	.section.section-related dl dd {
		margin-right: 0;
		margin-top: 10px;
		width: 100%
	}

	.section.section-related dl dd .btn-rounded {
		width: 100%
	}

	.section.section-related dl dd {
		margin-top: 10px
	}

	.section.section-related dl dd {
		font-size: .875rem
	}

	.section.section-related dl dd .txt-icon {
		top: -1px
	}

	.is-sp-header .section-inner {
		display: block
	}

	.section-inner {
		max-width: 980px
	}

}
/** news size **/
