/*----------------------------
import fonts
-----------------------------*/

/* Noto Serif JP*/

@import url('https://fonts.googleapis.com/css?family=Julius+Sans+One&display=swap');
@import url(https://fonts.googleapis.com/css?family=Noto+Serif+JP:300,400,500,600,700);
@import url(https://fonts.googleapis.com/css?family=Noto+Sans+JP:300,400,500,600,700);
@import url(https://fonts.googleapis.com/css?family=M+PLUS+Rounded+1c);
@import url('https://fonts.googleapis.com/css?family=Oswald:400,500,600,700&display=swap');
@import url('https://fonts.googleapis.com/css?family=Lato:300,400,700,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,600;0,700;1,700&display=swap');
body {
	font-family: "ÃƒÆ’Ã‚Â£Ãƒâ€ Ã¢â‚¬â„¢ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã‚Â£Ãƒâ€ Ã¢â‚¬â„¢Ãƒâ€šÃ‚Â©ÃƒÆ’Ã‚Â£ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â®ÃƒÆ’Ã‚Â£Ãƒâ€ Ã¢â‚¬â„¢Ãƒâ€¦Ã‚Â½ÃƒÆ’Ã‚Â¨Ãƒâ€šÃ‚Â§ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã‚Â£ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â´ Pro W3", "Hiragino Kaku Gothic Pro", "ÃƒÆ’Ã‚Â£Ãƒâ€ Ã¢â‚¬â„¢Ãƒâ€šÃ‚Â¡ÃƒÆ’Ã‚Â£ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¤ÃƒÆ’Ã‚Â£Ãƒâ€ Ã¢â‚¬â„¢Ãƒâ€šÃ‚ÂªÃƒÆ’Ã‚Â£ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Âª", Meiryo, Osaka, "ÃƒÆ’Ã‚Â¯Ãƒâ€šÃ‚Â¼Ãƒâ€šÃ‚Â­ÃƒÆ’Ã‚Â¯Ãƒâ€šÃ‚Â¼Ãƒâ€šÃ‚Â³ ÃƒÆ’Ã‚Â¯Ãƒâ€šÃ‚Â¼Ãƒâ€šÃ‚Â°ÃƒÆ’Ã‚Â£ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â´ÃƒÆ’Ã‚Â£ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â·ÃƒÆ’Ã‚Â£Ãƒâ€ Ã¢â‚¬â„¢Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â£ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¯", "MS PGothic", "sans-serif";
}
/* Base */
html {
	overflow-x: hidden;
}






/*-----------------------------------------
    Page Loader
------------------------------------------*/
.page-loader {
	display: block;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	background: #474747;
	z-index: 100000;
}
.loader {
	width: 50px;
	height: 50px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -25px 0 0 -25px;
	font-size: 10px;
	text-indent: -12345px;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	border-right: 1px solid rgba(255, 255, 255, 0.08);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	border-left: 1px solid rgba(255, 255, 255, 0.5);
	border-radius: 50%;
	-webkit-animation: spinner 700ms infinite linear;
	animation: spinner 700ms infinite linear;
	z-index: 100001;
}
 @-webkit-keyframes spinner {
 0% {
 -webkit-transform: rotate(0deg);
 -ms-transform: rotate(0deg);
 transform: rotate(0deg);
}
 100% {
 -webkit-transform: rotate(360deg);
 -ms-transform: rotate(360deg);
 transform: rotate(360deg);
}
}
@keyframes spinner {
 0% {
 -webkit-transform: rotate(0deg);
 -ms-transform: rotate(0deg);
 transform: rotate(0deg);
}
 100% {
 -webkit-transform: rotate(360deg);
 -ms-transform: rotate(360deg);
 transform: rotate(360deg);
}
}


.font-size-10 {
	font-size: 10px;
}
.font-size-11 {
	font-size: 11px;
}
.font-size-12 {
	font-size: 12px;
}
.font-size-13 {
	font-size: 13px;
}
.font-size-14 {
	font-size: 14px;
}
.font-size-15 {
	font-size: 15px;
}
.font-size-16 {
	font-size: 16px;
}
.font-size-17 {
	font-size: 17px;
}
.font-size-18 {
	font-size: 18px;
}
.font-size-19 {
	font-size: 19px;
}
.font-size-20 {
	font-size: 20px;
}
.font-size-21 {
	font-size: 21px;
}
.font-size-22 {
	font-size: 22px;
}
.font-size-23 {
	font-size: 23px;
}
.font-size-24 {
	font-size: 24px;
}
.font-size-25 {
	font-size: 25px;
}
.font-size-26 {
	font-size: 26px;
}
.font-size-27 {
	font-size: 27px;
}
.font-size-28 {
	font-size: 28px;
}
.font-size-29 {
	font-size: 29px;
}
.font-size-30 {
	font-size: 30px;
}
.font-gray-1 {
	color: #f7f7f7;
}
.font-gray-2 {
	color: #e9e9e9;
}
.font-gray-3 {
	color: #d9d9d9;
}
.font-gray-4 {
	color: #c9c9c9;
}
.font-gray-5, .block-heading-1 span {
	color: #b8b8b8;
}
.font-gray-6 {
	color: #a8a8a8;
}
.font-gray-7 {
	color: #939393;
}
.font-gray-8 {
	color: #7b7b7b;
}
.font-gray-9 {
	color: #636363 #4d4d4d;
}
.font-gray-10 {
	color: #353535;
}
.border-gray-1 {
	border-color: #f7f7f7;
}
.border-gray-2 {
	border-color: #e9e9e9;
}
.border-gray-3 {
	border-color: #d9d9d9;
}
.border-gray-4 {
	border-color: #c9c9c9;
}
.border-gray-5 {
	border-color: #b8b8b8;
}
.border-gray-6 {
	border-color: #a8a8a8;
}
.border-gray-7 {
	border-color: #939393;
}
.border-gray-8 {
	border-color: #7b7b7b;
}
.border-gray-9 {
	border-color: #636363 #4d4d4d;
}
.border-gray-10 {
	border-color: #353535;
}
.bg-gray-1 {
	border-color: #f7f7f7;
}
.bg-gray-2 {
	border-color: #e9e9e9;
}
.bg-gray-3 {
	border-color: #d9d9d9;
}
.bg-gray-4 {
	border-color: #c9c9c9;
}
.bg-gray-5 {
	border-color: #b8b8b8;
}
.bg-gray-6 {
	border-color: #a8a8a8;
}
.bg-gray-7 {
	border-color: #939393;
}
.bg-gray-8 {
	border-color: #7b7b7b;
}
.bg-gray-9 {
	border-color: #636363 #4d4d4d;
}
.bg-gray-10 {
	border-color: #353535;
}
.letter-spacing-1 {
	letter-spacing: 0.1em;
}
.letter-spacing-2 {
	letter-spacing: 0.2em;
}
.border-w-1 {
	border-width: 1px;
}
.border-w-2 {
	border-width: 2px;
}
.border-w-3 {
	border-width: 3px;
}
.border-w-4 {
	border-width: 4px;
}
.border-w-5 {
	border-width: 5px;
}
.primary-black--hover {
	background: #91b029;
	color: #fff;
}
.primary-black--hover:hover {
	background: #000;
	color: #fff;
}
.primary-dark--hover {
	background: #91b029;
	color: #fff;
}
.primary-dark--hover:hover {
	background: gray;
	color: #fff;
}
.primary-primary-outline--hover {
	background: #91b029;
	color: #fff;
}
.primary-primary-outline--hover:hover {
	border-color: #91b029;
	background: transparent;
}
.primary-outline-primary--hover {
	background: transparent;
	border-color: #91b029;
}
.primary-outline-primary--hover:hover {
	color: #fff;
	background: #91b029;
}
body {
	line-height: 1.7;
	color: #4B5245 !important;
	font-weight: 300;
	font-size: 1rem;
}


body .site-wrap {
	padding: 0;
	position: relative;
	box-sizing: border-box;
	width: 100%;
}

@media (min-width: 1200px) {
	body .site-wrap {
	padding: 20px;
}

}

@media (max-width: 991.98px) {
body .site-wrap {
	padding: 0;
}
}

body .site-wrap.site-content {
	margin-top: -1.7em;
}


::-moz-selection {
 background: #000;
 color: #fff;
}
::selection {
	background: #000;
	color: #fff;
}
a {
	-webkit-transition: .3s all ease;
	-o-transition: .3s all ease;
	transition: .3s all ease;
	text-decoration: none;
}
a:hover {
	text-decoration: none;
}
h1, h2, h3, h4, .h1, .h2, .h3, .h4 {
	color: #111;
	font-family: 'Noto Serif JP', serif;
	font-weight: bolder;
	font-style:italic;
}

h5, .h5 {
	color: #111;
	font-size:18px;
	font-weight: bold;
}

.border-2 {
	border-width: 2px;
}
.text-black {
	color: #000 !important;
}
.bg-black {
	background: #000 !important;
}
.color-black-opacity-5 {
	color: rgba(0, 0, 0, 0.5);
}
.color-white-opacity-5 {
	color: rgba(255, 255, 255, 0.5);
}
.color-red {
	color: rgba(153,0,0,1.00);
}
.btn {
	padding: 10px 20px;
	text-decoration: none;
}
.btn:active, .btn:focus {
	outline: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}
.btn.btn-outline-white {
	border-color: #fff;
	background: transparent;
	color: #fff;
}
.btn.btn-outline-white:hover {
	background: #fff;
	border-color: #fff;
	color: #000;
}
.btn.btn-black {
	background-color: #000;
	color: #fff;
}
.line-height-1 {
	line-height: 1 !important;
}
.bg-black {
	background: #000;
}
.form-control {
	height: 55px;
	background: #fff !important;
	font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
.form-control:active, .form-control:focus {
	border-color: #91b029;
}
.form-control:hover, .form-control:active, .form-control:focus {
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
}
.site-section {
	padding: 2.5em 0;
}

@media (min-width: 768px) {
.site-section {
	padding: 5em 0;
}
}
.site-section.site-section-sm {
	padding: 4em 0;
}
.site-footer {
	padding: 2em 0;
	background: #6A96C9;
}

@media (min-width: 768px) {
.site-footer {
	padding: 3em 0;
}
}
.site-footer .border-top {
	border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
}
.site-footer p {
	color: rgba(255, 255, 255, 0.7);
}
.site-footer h2, .site-footer h3, .site-footer h4, .site-footer h5 {
	color: #fff;
}
.site-footer a {
	color: white;
	display:inline;
	padding:0px;
}
.site-footer a:hover {
	color: #d23535;
}
.site-footer ul li {
	margin-bottom: 10px;
}
.site-footer ul.menu-arrow li {
	position: relative;
	padding-left: 20px;
}
.site-footer ul.menu-arrow li:before {
	font-family: "icomoon";
	content: "\f0c8";
	position: absolute;
	top: 3px;
	left: 2px;
	color: #EEE;
	font-size:12px;
}
.site-footer .footer-heading {
	font-size: 16px;
	color: #fff;
}
.bg-text-line {
	display: inline;
	background: #000;
	-webkit-box-shadow: 20px 0 0 #000, -20px 0 0 #000;
	box-shadow: 20px 0 0 #000, -20px 0 0 #000;
}
.text-white-opacity-05 {
	color: rgba(255, 255, 255, 0.5);
}
.text-black-opacity-05 {
	color: rgba(0, 0, 0, 0.5);
}
.hover-bg-enlarge {
	overflow: hidden;
	position: relative;
}

@media (max-width: 599px) {
	.site-footer ul.menu-arrow li:before {

	top: 1px;
	left: 3px;
	font-size:10px;
}
}

@media (max-width: 991.98px) {
.hover-bg-enlarge {
	height: auto !important;
}
}
.hover-bg-enlarge > div {
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
	-webkit-transition: .8s all ease-in-out;
	-o-transition: .8s all ease-in-out;
	transition: .8s all ease-in-out;
}
.hover-bg-enlarge:hover > div, .hover-bg-enlarge:focus > div, .hover-bg-enlarge:active > div {
	-webkit-transform: scale(1.2);
	-ms-transform: scale(1.2);
	transform: scale(1.2);
}

@media (max-width: 991.98px) {
.hover-bg-enlarge .bg-image-md-height {
	height: 300px !important;
}
}
.bg-image {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
}
.bg-image.overlay {
	position: relative;
}
.bg-image.overlay:after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 0;
	width: 100%;
	background: rgba(0, 0, 0, 0.7);
}
.bg-image > .container {
	position: relative;
	z-index: 1;
}

@media (max-width: 991.98px) {
.img-md-fluid {
	max-width: 100%;
}
}

@media (max-width: 991.98px) {
.display-1, .display-3 {
	font-size: 3rem;
}
}
.play-single-big {
	width: 90px;
	height: 90px;
	display: inline-block;
	border: 2px solid #fff;
	color: #fff !important;
	border-radius: 50%;
	position: relative;
	-webkit-transition: .3s all ease-in-out;
	-o-transition: .3s all ease-in-out;
	transition: .3s all ease-in-out;
}
.play-single-big > span {
	font-size: 50px;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-40%, -50%);
	-ms-transform: translate(-40%, -50%);
	transform: translate(-40%, -50%);
}
.play-single-big:hover {
	width: 120px;
	height: 120px;
}
.overlap-to-top {
	margin-top: -150px;
}
.ul-check {
	margin-bottom: 50px;
}
.ul-check li {
	position: relative;
	padding-left: 35px;
	margin-bottom: 15px;
	line-height: 1.5;
}
.ul-check li:before {
	left: 0;
	font-size: 20px;
	top: -.3rem;
	font-family: "icomoon";
	content: "\e5ca";
	position: absolute;
}
.ul-check.white li:before {
	color: #fff;
}
.ul-check.success li:before {
	color: #91b029;
}
.ul-check.primary li:before {
	color: #91b029;
}
.select-wrap, .wrap-icon {
	position: relative;
}
.select-wrap .icon, .wrap-icon .icon {
	position: absolute;
	right: 10px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	font-size: 22px;
}
.select-wrap select, .wrap-icon select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
}
.top-bar {
	border-bottom: 1px solid #e9ecef !important;
}
/* Navbar */
.site-navbar {
	margin-bottom: 0px;
	z-index: 1999;
	position: absolute;
	top: 0;
	width: 100%;
	/*padding: 1rem; */
	padding: 50px 40px 30px 30px;
}

@media (max-width: 991.98px) {
.site-navbar {
	padding: 1rem;
	padding-top: 3rem;
	padding-bottom: 3rem;
}
}
.site-navbar .toggle-button {
	position: absolute;
	right: 0px;
}
.site-navbar .site-logo {
	margin: 0;
	padding: 0;
	width: 164px;
			opacity:1;
	animation: fadeIn forwards;
    animation-duration: 1000ms;
	animation-delay: 1s;
	animation-timing-function: ease-in-out;
}
.site-navbar .site-logo a {
	text-transform: uppercase;
	color: #fff;
}

@media (max-width: 991.98px) {
.site-navbar .site-logo {
	float: left;
	width: 100px;
	position: relative;
	top: -20px;
}
}
.site-navbar .site-navigation.border-bottom {
	border-bottom: 1px solid white !important;
}
.site-navbar .site-navigation {
	position: relative;
}
.site-navbar .site-navigation .site-menu {
	margin: 0;
	padding: 0;
	margin-bottom: 0;
}
.site-navbar .site-navigation .site-menu.nav1 {
	position: relative;
	top: 50px;
	border-top: 1px solid #FFF;
	width: fit-content;
	padding-right: 40px;
	padding-left: 28px;
}
.site-navbar .site-navigation .site-menu.nav2 {
	position: relative;
	top: -85px;
	padding-right: 40px
}
.site-navbar .site-navigation .site-menu .active {
	color: #d32d20 !important;
}
.site-navbar .site-navigation .site-menu a {
	text-decoration: none !important;
	display: inline-block;
}
.site-navbar .site-navigation .site-menu > li {
	display: inline-block;
}
.site-navbar .site-navigation .site-menu > li > a {
	margin-left: 15px;
	margin-right: 15px;
	padding: 5px 10px;
	margin: 14px 0;
	color: #fff !important;
	display: inline-block;
	text-decoration: none !important;
}

.site-navbar .site-navigation .site-menu.nav2 > li > a {
	font-size:14px;
}
.site-navbar .site-navigation .site-menu > li > a:hover {
	color: #d32d20;
	background-color: rgba(255,255,255,.4);
	border-radius: 2px;
}
.site-navbar .site-navigation .site-menu > li.active > a {
	color: #d32d20 !important;
}

.site-navbar .site-navigation .site-menu.nav2 .tel-no {
	font-family: 'Open Sans', sans-serif;
	font-style:italic;
	font-size:26px;
	position:relative;
	padding-left:40px;
}

.site-navbar .site-navigation .site-menu.nav2 .tel-no::before {
		position: absolute;
	content: "\f098";
	top: 17px;
	left: 15px;
	font-family: "FontAwesome";
	line-height: 1;
	font-size: 22px;
	margin-top: 0px;
	color:#fff;
}

.site-navbar .site-navigation .site-menu .has-children {
	position: relative;
}
.site-navbar .site-navigation .site-menu .has-children > a {
	position: relative;
	padding-right: 20px;
}
.site-navbar .site-navigation .site-menu .has-children > a:before {
	position: absolute;
	content: "\e313";
	font-size: 16px;
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	font-family: 'icomoon';
}
.site-navbar .site-navigation .site-menu .has-children .dropdown {
	visibility: hidden;
	opacity: 0;
	top: 100%;
	position: absolute;
	text-align: left;
	border-top: 2px solid #d32d20;
	-webkit-box-shadow: 0 2px 10px -2px rgba(0, 0, 0, 0.1);
	box-shadow: 0 2px 10px -2px rgba(0, 0, 0, 0.1);
	padding: 0px 0;
	margin-top: 20px;
	margin-left: 0px;
	background: #fff;
	-webkit-transition: 0.2s 0s;
	-o-transition: 0.2s 0s;
	transition: 0.2s 0s;
}
.site-navbar .site-navigation .site-menu .has-children .dropdown.arrow-top {
	position: absolute;
}
.site-navbar .site-navigation .site-menu .has-children .dropdown.arrow-top:before {
	display: none;
	bottom: 100%;
	left: 20%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
.site-navbar .site-navigation .site-menu .has-children .dropdown.arrow-top:before {
	border-color: rgba(136, 183, 213, 0);
	border-bottom-color: #fff;
	border-width: 10px;
	margin-left: -10px;
}
.site-navbar .site-navigation .site-menu .has-children .dropdown a {
	text-transform: none;
	letter-spacing: normal;
	-webkit-transition: 0s all;
	-o-transition: 0s all;
	transition: 0s all;
	color: #000 !important;
}
.site-navbar .site-navigation .site-menu .has-children .dropdown a.active {
	color: #d32d20 !important;
	background: #f8f9fa;
}
.site-navbar .site-navigation .site-menu .has-children .dropdown > li {
	list-style: none;
	padding: 0;
	margin: 0;
	min-width: 200px;
}
.site-navbar .site-navigation .site-menu .has-children .dropdown > li > a {
	padding: 9px 20px;
	display: block;
}
.site-navbar .site-navigation .site-menu .has-children .dropdown > li > a:hover {
	background: #f8f9fa;
	color: #ced4da;
}
.site-navbar .site-navigation .site-menu .has-children .dropdown > li.has-children > a:before {
	content: "\e315";
	right: 20px;
}
.site-navbar .site-navigation .site-menu .has-children .dropdown > li.has-children > .dropdown, .site-navbar .site-navigation .site-menu .has-children .dropdown > li.has-children > ul {
	left: 100%;
	top: 0;
}
.site-navbar .site-navigation .site-menu .has-children .dropdown > li.has-children:hover > a, .site-navbar .site-navigation .site-menu .has-children .dropdown > li.has-children:active > a, .site-navbar .site-navigation .site-menu .has-children .dropdown > li.has-children:focus > a {
	background: #f8f9fa;
	color: #ced4da;
}
.site-navbar .site-navigation .site-menu .has-children:hover > a, .site-navbar .site-navigation .site-menu .has-children:focus > a, .site-navbar .site-navigation .site-menu .has-children:active > a {
	color: #d32d20;
}
.site-navbar .site-navigation .site-menu .has-children:hover, .site-navbar .site-navigation .site-menu .has-children:focus, .site-navbar .site-navigation .site-menu .has-children:active {
	cursor: pointer;
}
.site-navbar .site-navigation .site-menu .has-children:hover > .dropdown, .site-navbar .site-navigation .site-menu .has-children:focus > .dropdown, .site-navbar .site-navigation .site-menu .has-children:active > .dropdown {
	-webkit-transition-delay: 0s;
	-o-transition-delay: 0s;
	transition-delay: 0s;
	margin-top: 0px;
	visibility: visible;
	opacity: 1;
}

.site-mobile-menu {
	width: 300px;
	position: fixed;
	right: 0;
	z-index: 2000;
	padding-top: 20px;
	background: #fff;
	height: calc(100vh);
	-webkit-transform: translateX(110%);
	-ms-transform: translateX(110%);
	transform: translateX(110%);
	-webkit-box-shadow: -10px 0 20px -10px rgba(0, 0, 0, 0.1);
	box-shadow: -10px 0 20px -10px rgba(0, 0, 0, 0.1);
	-webkit-transition: .3s all ease-in-out;
	-o-transition: .3s all ease-in-out;
	transition: .3s all ease-in-out;
}
.offcanvas-menu .site-mobile-menu {
	-webkit-transform: translateX(0%);
	-ms-transform: translateX(0%);
	transform: translateX(0%);
}
.site-mobile-menu .site-mobile-menu-header {
	width: 100%;
	float: left;
	padding-left: 20px;
	padding-right: 20px;
}
.site-mobile-menu .site-mobile-menu-header .site-mobile-menu-close {
	float: right;
	margin-top: 8px;
}
.site-mobile-menu .site-mobile-menu-header .site-mobile-menu-close span {
	font-size: 30px;
	display: inline-block;
	padding-left: 10px;
	padding-right: 0px;
	line-height: 1;
	cursor: pointer;
	-webkit-transition: .3s all ease;
	-o-transition: .3s all ease;
	transition: .3s all ease;
}
.site-mobile-menu .site-mobile-menu-header .site-mobile-menu-close span:hover {
	color: #ced4da;
}
.site-mobile-menu .site-mobile-menu-header .site-mobile-menu-logo {
	float: left;
	margin-top: 10px;
	margin-left: 0px;
}
.site-mobile-menu .site-mobile-menu-header .site-mobile-menu-logo a {
	display: inline-block;
	text-transform: uppercase;
}
.site-mobile-menu .site-mobile-menu-header .site-mobile-menu-logo a img {
	max-width: 70px;
}
.site-mobile-menu .site-mobile-menu-header .site-mobile-menu-logo a:hover {
	text-decoration: none;
}
.site-mobile-menu .site-mobile-menu-body {
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	position: relative;
	padding: 0 20px 20px 20px;
	height: calc(100vh - 52px);
	padding-bottom: 150px;
}
.site-mobile-menu .site-nav-wrap {
	padding: 0;
	margin: 0;
	list-style: none;
	position: relative;
}
.site-mobile-menu .site-nav-wrap a {
	padding: 10px 20px;
	display: block;
	position: relative;
	color: #212529;
}
.site-mobile-menu .site-nav-wrap a:hover {
	color: #91b029;
}
.site-mobile-menu .site-nav-wrap li {
	position: relative;
	display: block;
}
.site-mobile-menu .site-nav-wrap li .nav-link.active {
	color: #91b029;
}
.site-mobile-menu .site-nav-wrap li.active > a {
	color: #91b029;
}
.site-mobile-menu .site-nav-wrap .arrow-collapse {
	position: absolute;
	right: 0px;
	top: 10px;
	z-index: 20;
	width: 36px;
	height: 36px;
	text-align: center;
	cursor: pointer;
	border-radius: 50%;
}
.site-mobile-menu .site-nav-wrap .arrow-collapse:hover {
	background: #f8f9fa;
}
.site-mobile-menu .site-nav-wrap .arrow-collapse:before {
	font-size: 12px;
	z-index: 20;
	font-family: "icomoon";
	content: "\f078";
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%) rotate(-180deg);
	-ms-transform: translate(-50%, -50%) rotate(-180deg);
	transform: translate(-50%, -50%) rotate(-180deg);
	-webkit-transition: .3s all ease;
	-o-transition: .3s all ease;
	transition: .3s all ease;
}
.site-mobile-menu .site-nav-wrap .arrow-collapse.collapsed:before {
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.site-mobile-menu .site-nav-wrap > li {
	display: block;
	position: relative;
	float: left;
	width: 100%;
}
.site-mobile-menu .site-nav-wrap > li > a {
	padding-left: 20px;
	font-size: 20px;
}
.site-mobile-menu .site-nav-wrap > li > ul {
	padding: 0;
	margin: 0;
	list-style: none;
}
.site-mobile-menu .site-nav-wrap > li > ul > li {
	display: block;
}
.site-mobile-menu .site-nav-wrap > li > ul > li > a {
	padding-left: 40px;
	font-size: 16px;
}
.site-mobile-menu .site-nav-wrap > li > ul > li > ul {
	padding: 0;
	margin: 0;
}
.site-mobile-menu .site-nav-wrap > li > ul > li > ul > li {
	display: block;
}
.site-mobile-menu .site-nav-wrap > li > ul > li > ul > li > a {
	font-size: 16px;
	padding-left: 60px;
}
.site-mobile-menu .site-nav-wrap[data-class="social"] {
	float: left;
	width: 100%;
	margin-top: 30px;
	padding-bottom: 5em;
}
.site-mobile-menu .site-nav-wrap[data-class="social"] > li {
	width: auto;
}
.site-mobile-menu .site-nav-wrap[data-class="social"] > li:first-child a {
	padding-left: 15px !important;
}
.sticky-wrapper {
	position: relative;
	z-index: 100;
	width: 100%;
	position: absolute;
	top: 0;
}
.sticky-wrapper .site-navbar {
	-webkit-transition: .3s all ease;
	-o-transition: .3s all ease;
	transition: .3s all ease;
}
.sticky-wrapper .site-navbar {
	background: #fff;
}
.sticky-wrapper .site-navbar ul li a {
	color: rgba(255, 255, 255, 0.7) !important;
}
.sticky-wrapper .site-navbar ul li a.active {
	color: #fff !important;
}
.sticky-wrapper.is-sticky .site-navbar {
	background: #fff;
	-webkit-box-shadow: 4px 0 20px -5px rgba(0, 0, 0, 0.2);
	box-shadow: 4px 0 20px -5px rgba(0, 0, 0, 0.2);
}
.sticky-wrapper.is-sticky .site-navbar .site-logo a {
	color: #91b029;
}
.sticky-wrapper.is-sticky .site-navbar ul li a {
	color: #000 !important;
}
.sticky-wrapper.is-sticky .site-navbar ul li a.active {
	color: #91b029 !important;
}
.sticky-wrapper .shrink {
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}

@media (max-width: 991.98px) {
.sticky-wrapper .shrink {
	padding-top: 30px !important;
	padding-bottom: 30px !important;
}
}
/* Blocks */

.container {
	position: relative;
}

@media (min-width: 576px) {
.container {
	max-width: 540px;
}
}

@media (min-width: 768px) {
.container {
	max-width: 720px;
}
}

@media (min-width: 992px) {
.container {
	max-width: 960px;
}
}

@media (min-width: 1280px) {
.container {
	max-width: 1200px;
}
}
.top-container, .secondary-container {
	max-width: 100%;
}
.site-section-cover {
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}
.site-section-cover, .site-section-cover .container, .site-section-cover, .site-section-cover .top-container, .secondary-container {
	position: relative;
	z-index: 2;
}



.site-section-cover .container > .row {
height: calc(100vh - 222px);
    min-height: 482px;
    margin-right: 0;
    margin-left: 0;
}


.site-section-cover .top-container > .row {
    height: calc(100vh - 196px);
    min-height: 780px;
    margin-right: 0;
    margin-left: 0;
}

@media (max-width: 991.98px) {
.site-section-cover, .site-section-cover .container > .row, .site-section-cover, .site-section-cover .top-container > .row {
	height: calc(70vh - 196px);
	min-height: 600px;
}
}
.site-section-cover.overlay {
	position: relative;
}
.site-section-cover.overlay:before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.0);
	z-index: 1;
}
.site-section-cover.inner-page, .site-section-cover.inner-page .container > .row, .site-section-cover.inner-page, .site-section-cover.inner-page .top-container, .site-section-cover.inner-page .secondary-container > .row {
	height: auto;
	min-height: auto;
	padding: 2em 0;
}
.site-section-cover.img-bg-section {
	background-size: cover;
	background-repeat: no-repeat;
}

.site-section-cover .top-container h1 {
    position: relative;
    left: 10%;
}

@media (min-width: 1500px) {

.site-section-cover .top-container h1 {
    position: relative;
    left: 53%;
}
}


@media (max-width: 800px) {

.site-section-cover .top-container h1 {
    position: relative;
    width:60%;
}
}

@media (max-width: 598px) {
	

	
.site-section-cover {
	background-position: 28% center;
}

.site-section-cover.site-section-ductcleaning {
    background-position: 54% center;
}
.site-section-cover .top-container h1 {
    position: relative;
    width:100%;
	left:0px;
	padding:0 10px;
}
}

h1.page-title {
	position:relative;
	color:white;
	position:relative;
    font-size: 3.2rem;
}


h1.page-title::after {
	left: 50%;
	bottom: -20px;
	margin-left:-50px;
	content: "";
	width: 100px;
	height: 3px;
	background: #1f65b7;
	position: absolute;
}

@media (max-width: 991.98px) {
}
@media (max-width: 599px) {
.site-section-cover h1 {
	left:0;
}

h1.page-title {
    font-size: 2rem;
}

}
@media (max-width: 400px) {

h1.page-title {
    font-size: 1.6rem;
}

}

.site-section-cover p {
	font-size: 18px;
	color: #fff;
}
.site-section {
	padding: 4rem 0;
}

@media (max-width: 991.98px) {
.site-section {
	padding: 2rem 0;
}
}
.block-heading-1 span {
	text-transform: uppercase;
	font-size: 12px;
	letter-spacing: .1em;
	font-weight: bold;
}
.block-heading-1 h2 {
	font-size: 3rem;
	color: #91b029;
}

@media (max-width: 991.98px) {
.block-heading-1 h2 {
	font-size: 2rem;
}
}
.block-feature-1-wrap {
	margin-bottom: 7rem;
}
.block-feature-1-wrap > .container > .row {
	margin-left: -18px;
	margin-right: -18px;
}
.block-feature-1-wrap > .container > .row > .col, .block-feature-1-wrap > .container > .row > [class*="col-"] {
	padding-right: 36px;
	padding-left: 36px;
}
.block-feature-1 {
	background: #f2f2f2;
	padding: 30px 30px 30px 50px;
	position: relative;
}
.block-feature-1 h2 {
	font-size: 18px;
}
.block-feature-1 .icon {
	width: 80px;
	height: 80px;
	display: inline-block;
	border-radius: 50%;
	position: absolute;
	left: -40px;
	top: 50%;
	border: 4px solid #fff;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	text-align: center;
}
.block-feature-1 .icon > span {
	font-size: 40px;
	color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.block-img-video-1-wrap .block-img-video-1 {
	position: relative;
	margin-top: -10rem;
}

@media (max-width: 991.98px) {
.block-img-video-1-wrap .block-img-video-1 {
	margin-top: -6rem;
}
}
.block-img-video-1 > a {
	display: block;
	position: relative;
	cursor: pointer;
}
.block-img-video-1 > a .icon {
	position: absolute;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	display: inline-block;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background: #fff;
	-webkit-transition: .3s all ease-in-out;
	-o-transition: .3s all ease-in-out;
	transition: .3s all ease-in-out;
}
.block-img-video-1 > a .icon > span {
	position: absolute;
	top: 50%;
	font-size: .8rem;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	color: #000;
}
.block-img-video-1 > a:hover .icon {
	background: #fff;
	width: 90px;
	height: 90px;
}
.block-counter-1 {
	text-align: center;
}
.block-counter-1 .number, .block-counter-1 .caption {
	display: block;
	line-height: 1;
}
.block-counter-1 .number {
	color: #91b029;
	font-size: 4rem;
	position: relative;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

@media (max-width: 991.98px) {
.block-counter-1 .number {
	font-size: 2rem;
}
}
.block-counter-1 .number:after {
	position: absolute;
	content: "";
	width: 50px;
	height: 3px;
	left: 50%;
	bottom: 0;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	background: rgba(52, 58, 64, 0.3);
}
.block-counter-1 .caption {
	font-size: 14px;
	letter-spacing: .05em;
}
.block-team-member-1 {
	padding: 30px;
	border: 1px solid #e9ecef;
	background: #fff;
	position: relative;
	top: 0;
	-webkit-transition: .15s all ease-in-out;
	-o-transition: .15s all ease-in-out;
	transition: .15s all ease-in-out;
}
.block-team-member-1 figure img {
	max-width: 130px !important;
	margin-left: auto;
	margin-right: auto;
}
.block-social-1 > a {
	display: inline-block;
	width: 30px;
	height: 30px;
	position: relative;
}
.block-social-1 > a span {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.block-testimony-1 {
	padding: 20px;
	position: relative;
}
.block-testimony-1 blockquote {
	background: #fff;
	padding: 30px;
	font-style: italic;
	font-size: 18px;
	color: #000;
	font-family: 'Georgia', Times, serif;
	position: relative;
}
.block-testimony-1 figure {
	position: relative;
	padding-top: 20px;
}
.block-testimony-1 figure:before {
	position: absolute;
	content: "";
	width: 50px;
	left: 50%;
	display: none;
	top: 0;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	background: #91b029;
	height: 2px;
}
.block-testimony-1 figure img {
	max-width: 60px;
}
.block-testimony-1 h3 {
	font-size: 18px;
}
.block-13 .owl-nav, .block-14 .owl-nav {
	display: none;
}
.block-13 .owl-dots, .block-14 .owl-dots {
	text-align: center;
	position: relative;
	bottom: -30px;
}
.block-13 .owl-dots .owl-dot, .block-14 .owl-dots .owl-dot {
	display: inline-block;
}
.block-13 .owl-dots .owl-dot span, .block-14 .owl-dots .owl-dot span {
	display: inline-block;
	width: 7px;
	height: 7px;
	border-radius: 4px;
	background: rgba(255, 255, 255, 0.4);
	-webkit-transition: 0.3s all cubic-bezier(0.32, 0.71, 0.53, 0.53);
	-o-transition: 0.3s all cubic-bezier(0.32, 0.71, 0.53, 0.53);
	transition: 0.3s all cubic-bezier(0.32, 0.71, 0.53, 0.53);
	margin: 3px;
}
.block-13 .owl-dots .owl-dot.active span, .block-14 .owl-dots .owl-dot.active span {
	background: #fff;
}
.post-entry {
	background: #fff;
	padding: 30px;
	border: 1px solid #e6e6e6;
	border-radius: 4px;
	-webkit-transition: .3s all ease;
	-o-transition: .3s all ease;
	transition: .3s all ease;
}
.post-entry:hover {
	-webkit-box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.1);
	box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.1);
}
.post-entry h2 {
	font-size: 20px;
}
.post-entry *:last-child {
	margin-bottom: 0;
}
.by {
	color: #000;
	border-bottom: 1px dotted #ccc;
}
.by:hover {
	border-bottom: 1px dotted #91b029;
}
.form-control {
	border: none;
	border: 1px solid #e6e6e6;
}
.form-control:hover, .form-control:active, .form-control:focus {
	border: 1px solid #666666;
}
.sidebar-box {
	margin-bottom: 10px;
	padding: 25px;
	font-size: 15px;
	width: 100%;
	float: left;
	background: #fff;
}
.sidebar-box *:last-child {
	margin-bottom: 0;
}
.sidebar-box h3 {
	font-size: 18px;
	margin-bottom: 15px;
}
.categories li, .sidelink li {
	position: relative;
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px dotted #dee2e6;
	list-style: none;
}
.categories li:last-child, .sidelink li:last-child {
	margin-bottom: 0;
	border-bottom: none;
	padding-bottom: 0;
}
.categories li a, .sidelink li a {
	display: block;
}
.categories li a span, .sidelink li a span {
	position: absolute;
	right: 0;
	top: 0;
	color: #ccc;
}
.categories li.active a, .sidelink li.active a {
	color: #000;
	font-style: italic;
}
.comment-form-wrap {
	clear: both;
}
.comment-list {
	padding: 0;
	margin: 0;
}
.comment-list .children {
	padding: 50px 0 0 40px;
	margin: 0;
	float: left;
	width: 100%;
}
.comment-list li {
	padding: 0;
	margin: 0 0 30px 0;
	float: left;
	width: 100%;
	clear: both;
	list-style: none;
}
.comment-list li .vcard {
	width: 80px;
	float: left;
}
.comment-list li .vcard img {
	width: 50px;
	border-radius: 50%;
}
.comment-list li .comment-body {
	float: right;
	width: calc(100% - 80px);
}
.comment-list li .comment-body h3 {
	font-size: 20px;
	color: #000;
}
.comment-list li .comment-body .meta {
	text-transform: uppercase;
	font-size: 13px;
	letter-spacing: .1em;
	color: #ccc;
}
.comment-list li .comment-body .reply {
	padding: 5px 10px;
	background: #e6e6e6;
	color: #000;
	text-transform: uppercase;
	font-size: 14px;
}
.comment-list li .comment-body .reply:hover {
	color: #000;
	background: #e3e3e3;
}
.search-form {
	background: #f7f7f7;
	padding: 10px;
}
.search-form .form-group {
	position: relative;
}
.search-form .form-group input {
	padding-right: 50px;
}
.search-form .icon {
	position: absolute;
	top: 50%;
	right: 20px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.post-meta {
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .2em;
}
.post-meta a {
	color: #fff;
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}
.slide {
	height: 100vh;
	min-height: 900px;
	background-size: cover;
}
.border-w-2 {
	border-width: 2px !important;
}
.block__73694 .block__73422 {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

@media (max-width: 991.98px) {
.block__73694 .block__73422 {
	height: 400px;
}
}

@media (max-width: 991.98px) {
.slide-one-item .owl-nav {
	display: none;
}
}
.slide-one-item .owl-nav .owl-prev, .slide-one-item .owl-nav .owl-next {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	font-size: 2rem;
	color: rgba(255, 255, 255, 0.4);
}
.slide-one-item .owl-nav .owl-prev:hover, .slide-one-item .owl-nav .owl-next:hover {
	color: #fff;
}
.slide-one-item .owl-nav .owl-prev {
	left: 20px;
}
.slide-one-item .owl-nav .owl-next {
	right: 20px;
}
.slide-one-item .owl-dots {
	position: absolute;
	bottom: 20px;
	width: 100%;
	text-align: center;
	z-index: 2;
}
.slide-one-item .owl-dots .owl-dot {
	display: inline-block;
}
.slide-one-item .owl-dots .owl-dot > span {
	-webkit-transition: 0.3s all cubic-bezier(0.32, 0.71, 0.53, 0.53);
	-o-transition: 0.3s all cubic-bezier(0.32, 0.71, 0.53, 0.53);
	transition: 0.3s all cubic-bezier(0.32, 0.71, 0.53, 0.53);
	display: inline-block;
	width: 7px;
	height: 7px;
	border-radius: 4px;
	background: rgba(255, 255, 255, 0.4);
	margin: 3px;
}
.slide-one-item .owl-dots .owl-dot.active > span {
	width: 20px;
	background: #fff;
}
.footer-suscribe-form .form-control {
	color: #000;
}
.footer-suscribe-form .form-control:hover, .footer-suscribe-form .form-control:active, .footer-suscribe-form .form-control:focus {
	color: #000 !important;
}
.footer-suscribe-form .btn {
	color: #fff;
}

.ftco-blocks-cover-1 {
	margin-bottom:20px;
}

.ftco-blocks-cover-1 .ftco-service-image-1 {
	margin-top: -70px;
	position: static;
}
.ftco-cover-1 {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}
.ftco-cover-1, .ftco-cover-1 .container > .row {
	height: 100vh;
	min-height: 900px;
}
.ftco-cover-1.innerpage, .ftco-cover-1.innerpage .container > .row {
	height: 90vh;
	min-height: 700px;
}
.ftco-cover-1 > .container {
	position: relative;
}
.ftco-cover-1.overlay {
	position: relative;
}
.ftco-cover-1.overlay:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: .5;
	background: #000;
}
.ftco-cover-1.overlay h1 {
	color: #fff;
	font-size: 3rem;
}
.ftco-cover-1.overlay p {
	color: #fff;
}
.ftco-cover-1.overlay p a {
	color: #fff;
	font-weight: 700;
}
.ftco-cover-1.overlay p a:hover {
	text-decoration: none;
}
.ftco-cover-1.overlay form .form-control, .ftco-cover-1.overlay form .btn {
	height: 55px;
	border-radius: 4px;
}
.ftco-cover-1.overlay form .form-control {
	padding-left: 20px;
	padding-right: 20px;
	border-color: transparent;
	margin-right: 10px;
}
.ftco-cover-1.overlay form .btn {
	border-color: transparent;
}
.owl-all .owl-dots {
	text-align: center;
	margin-top: 30px;
}
.owl-all .owl-dots .owl-dot {
	display: inline-block;
}
.owl-all .owl-dots .owl-dot > span {
	display: inline-block;
	width: 7px;
	height: 7px;
	background: #ccc;
	margin: 5px;
	border-radius: 50%;
}
.owl-all .owl-dots .owl-dot.active > span {
	background: #91b029;
}

@media (min-width: 992px) {
.owl-all .owl-nav, .owl-all .owl-dots {
	display: none;
}
.owl-all .owl-stage {
	-webkit-transform: none !important;
	-ms-transform: none !important;
	transform: none !important;
	width: 120% !important;
	padding-top: 10px;
}
.owl-all .owl-carousel .owl-stage-outer {
	width: 100%;
	overflow: visible;
}
.owl-all .owl-stage-outer > .owl-stage > .owl-item {
	display: -ms-inline-grid;
	display: inline-grid;
	float: none;
	margin-bottom: 30px;
}
}
.blog-entry .blog-thumbnail {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 150px;
	flex: 0 0 150px;
	margin-right: 20px;
}
.blog-entry .blog-thumbnail img {
	border-radius: 4px;
}
.blog-entry .blog-excerpt a {
	color: #000;
}
.blog-entry .blog-excerpt a:hover {
	color: #91b029;
}
.bg-light {
	background-color: #f6f5f5 !important;
}

.aircon-menu {

}

.aircon-menu-text {
		background: #f6f5f5;
	padding: 20px;
	min-height:210px;
}

.aircon-menu-text h2 {
	font-size: 18px;
	margin-bottom: 20px;
	font-weight:500;
}

.aircon-menu-text h2 a {
	color:#000;
}

.aircon-menu-text h2 span {
	color:#d02b1f;
	display:block;
}

.aircon-menu-text p {
	font-size:14px;
}


.post-entry-1 .meta {
	color: #ccc;
}
.post-entry-1 .post-entry-1-contents {
	background: #fff;
	padding: 20px;
}
.post-entry-1 .post-entry-1-contents h2 {
	font-size: 22px;
	margin-bottom: 20px;
}
.post-entry-1 .post-entry-1-contents h2 a {
	color: #000;
}
.post-entry-1 .post-entry-1-contents h2 a:hover {
	color: #91b029;
}
.post-entry-1.person-1 {
	text-align: center;
}
.post-entry-1.person-1 img {
	width: 90px;
	border-radius: 50%;
	margin: 0 auto -45px auto;
}
.post-entry-1.person-1 .post-entry-1-contents {
	padding-top: 4rem;
}
/* carrent */
.feature-car-rent-box-1 {
	position: relative;
	padding: 30px;
	background: #fff;
}
.feature-car-rent-box-1:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 10px;
	width: 100%;
	background: #91b029;
}
.feature-car-rent-box-1 ul {
	padding: 0;
	margin: 0;
}
.feature-car-rent-box-1 ul li {
	display: block;
	padding: 20px 0;
	list-style: none;
	border-bottom: 1px solid #efefef;
	margin: 0;
	position: relative;
}
.feature-car-rent-box-1 ul li .spec {
	position: absolute;
	right: 0;
}
.feature-car-rent-box-1 ul li:last-child {
	border-bottom: none;
}
.trip-form {
	padding: 40px 30px;
	background: #fff;
	position: relative;
	margin-top: -90px;
	-webkit-box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.1);
	box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.1);
}
.trip-form h3 {
	font-size: 20px;
	margin-bottom: 30px;
	color: #000;
}
.item-1 {
	border-radius: 4px;
	position: relative;
	overflow: hidden;
	background: #fff;
}
.item-1 .item-1-contents {
	padding: 30px;
	border: 1px solid #ccc;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	border-top: none;
	position: relative;
}
.item-1 .item-1-contents ul {
	list-style: none;
	display: block;
	margin: 0;
	padding: 0;
}
.item-1 .item-1-contents ul li {
	list-style: none;
	margin: 0 0 10px 0;
	padding: 0;
	position: relative;
}
.item-1 .item-1-contents ul li .price {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 90px;
	flex: 0 0 90px;
	text-align: right;
}
.item-1 .item-1-contents h3 {
	position: relative;
	color: #91b029;
	padding-bottom: 30px;
	margin-bottom: 30px;
}
.item-1 .item-1-contents h3:after {
	left: 0;
	bottom: 0;
	content: "";
	width: 40px;
	height: 2px;
	background: #91b029;
	position: absolute;
}
.how-it-works .step {
	width: 20%;
	display: inline-block;
	text-align: center;
	position: relative;
}
.how-it-works .step:after {
	width: 100%;
	height: 4px;
	content: "";
	position: absolute;
	z-index: -1;
	top: 25px;
	background: #91b029;
}
.how-it-works .step:last-child:after {
	display: none;
}
.how-it-works .step .number {
	z-index: 1;
	width: 50px;
	height: 50px;
	border: 4px solid #91b029;
	background: #fff;
	border-radius: 50%;
	color: #91b029;
	display: block;
	position: relative;
	margin: 0 auto 10px auto;
}
.how-it-works .step .number > span {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	font-size: 1.3rem;
	color: #91b029;
}
.how-it-works .step .caption {
	display: block;
}
.service-1 {
	text-align: center;
}
.service-1 .service-1-icon {
	background: #91b029;
	width: 90px;
	height: 90px;
	margin-bottom: 20px;
	position: relative;
	display: inline-block;
	border: 4px solid #91b029;
	border-radius: 50%;
	color: #fff;
}
.service-1 .service-1-icon > span {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	font-size: 3rem;
}
.service-1 .service-1-contents h3, .service-1 .service-1-contents p {
	color: #fff;
}
.service-1 .service-1-contents h3 {
	margin-bottom: 10px;
	font-size: 20px;
}
.service-1.dark .service-1-contents h3, .service-1.dark .service-1-contents p {
	color: #000;
}
.service-1.dark .service-1-contents h3 {
	margin-bottom: 10px;
	font-size: 20px;
}
.service-1.dark .service-1-contents h3, .service-1.dark .service-1-contents p {
	color: #000;
}

.service-flow {
	padding:70px 0;
	position:relative;
}

.service-flow .flow {
	padding:30px;
	border:3px solid #EEE;
	margin-bottom:50px;
	position:relative;
	background: #FFF;
}

.service-flow .flow::after {
		position: absolute;
	content: "\f0dd";
	bottom: -40px;
	left:50%;
	font-family: "FontAwesome";
	line-height: 1;
	font-size: 40px;
	color:#d02b1f;
	margin-left:-20px;
}

.service-flow .flow.last::after {
	content: "";
}

.service-flow .flow h4 {
	font-size:24px;
	font-weight:700;
	border-bottom:2px dotted #CCC;
	padding-bottom:20px;
	margin-bottom:10px;
	color:#4B5245;
	background:none;
}

.service-flow .flow h4 span {
	color:#d02b1f;
	padding-right:0.5em;
}


@media (max-width: 559px) {
.service-index .img-fluid {
	width:76%;
}

.service-index .mb-5,
.sdgs .mb-5 {
	margin-bottom:2rem!important;
}
}


.flow-title {
	font-family: 'Noto Serif JP', serif;
	font-weight:500;
	font-style:italic;
	font-size:26px;
	color:#7b7b7b;
}

.flow-title span {
	font-size:18px;
	display:block;
}

.section-3 {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
}
.section-3 > .container {
	z-index: 2;
}
.section-3:before {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	content: "";
	background-color: rgba(0, 0, 0, 0.5);
}
.testimonial-2 {
	background: #fff;
	padding: 30px;
}
.testimonial-2 blockquote {
	font-size: 1.3rem;
}
.testimonial-2 .v-card img {
	width: 50px;
	-webkit-box-flex: 0;
	-ms-flex: 0 0 50px;
	flex: 0 0 50px;
	border-radius: 50%;
}
.nonloop-block-13 .owl-nav {
	display: none;
}
.nonloop-block-13 .owl-stage {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.nonloop-block-13 .owl-stage .owl-item {
	height: 100% !important;
}
.hair-style .place {
	display: block;
	-webkit-transition: .3s all ease;
	-o-transition: .3s all ease;
	transition: .3s all ease;
}
.hair-style .place:hover, .hair-style .place:focus {
	opacity: .7;
}
.hair-style .place img {
	max-width: 100%;
	margin-bottom: 20px;
}
.hair-style .place h2 {
	font-size: 18px;
	line-height: 1.5;
}
.hair-style .place p {
	font-size: 13px;
	color: #ccc;
}
.img-years {
	margin:auto;
	position: relative;
	display: block;
}
.img-years .year {
	width: 150px;
	height: 150px;
	border-radius: 50%;
	background: #91b029;
	position: absolute;
	right: 0;
	bottom: 0;
	-webkit-transform: translate(50%, 50%);
	-ms-transform: translate(50%, 50%);
	transform: translate(50%, 50%);
}

@media (max-width: 991.98px) {
.img-years .year {
	position: relative;
	-webkit-transform: translate(0%, 0%);
	-ms-transform: translate(0%, 0%);
	transform: translate(0%, 0%);
	margin: -30px auto 0 auto;
}
}
.img-years .year > span {
	width: 100%;
	color: #fff;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	font-size: 3rem;
	display: block;
	line-height: 1;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.img-years .year > span > span {
	line-height: 1.2;
	display: block;
	font-size: .8rem;
}



/* Buying */
.buying-filter {
	background: #e5e5e5;
}
.buying-filter .buying-filter-wrap {
	-webkit-transform: translateY(-100%);
	-ms-transform: translateY(-100%);
	transform: translateY(-100%);
	z-index: 6;
	position: relative;
}
.buying-filter a {
	padding: 26px 40px 26px 70px;
	display: inline-block;
	background: #c7c7c7;
	color: #222;
	margin-right:1px;
	position:relative;
}
.buying-filter a.active {
	background: #e5e5e5;
	color: #2d6db8;
}


.buying-filter a::before {
	  content: '';/*何も入れない*/
  display: block;/*忘れずに！*/
    position:absolute;
      background-size:contain;
}

.buying-filter a#buying-tab::before {
  width: 43px;/*画像の幅*/
  height: 43px;/*画像の高さ*/
  background-image: url(../images/home/icn_aircon.svg);
  left:14px;
  top:20px;
}

.buying-filter a#setup-tab::before {
  width: 45px;/*画像の幅*/
  height: 53px;/*画像の高さ*/
  background-image: url(../images/home/icn_human.svg);
  left:14px;
  top:15px;
}

.buying-filter a#repair-tab::before {
  width: 47px;/*画像の幅*/
  height: 46px;/*画像の高さ*/
  background-image: url(../images/home/icn_tools.svg);
  left:14px;
  top:20px;
}



.buying-tabpane {
	background-color: #e5e5e5;
}


.tab-content {
	padding-bottom:60px;
}
@media (max-width: 990px) {

	.buying-filter a {
    padding: 40px 40px 13px 50px;
    font-size:12px;
}


.buying-filter a#buying-tab::before,
.buying-filter a#setup-tab::before,
.buying-filter a#repair-tab::before {
    width: 30px;
    height: 30px;
    left:50%;
    top:7px;
    margin-left:-10px;
}

	.tab-content {
    padding-bottom: 0;
}

}

@media (max-width: 767px) {

	.buying-filter a {
    padding: 40px 8px 8px;
    font-size:12px;
}


.buying-filter a#buying-tab::before,
.buying-filter a#setup-tab::before,
.buying-filter a#repair-tab::before {
    width: 30px;
    height: 30px;
    left:50%;
    top:7px;
    margin-left:-10px;
}

	.tab-content {
    padding-bottom: 0;
}

}


/* table-filter */
.table-filter {
	background: #e5e5e5;
    left: 15px;
    position: relative;
    top: 80px;
}
.table-filter .table-filter-wrap {
	-webkit-transform: translateY(-100%);
	-ms-transform: translateY(-100%);
	transform: translateY(-100%);
	z-index: 6;
	position: relative;
}
.table-filter a {
	padding: 26px 40px 26px 70px;
	display: inline-block;
	background: #c7c7c7;
	color: #222;
	margin-right:1px;
	position:relative;
}
.table-filter a.active {
	background: #e5e5e5;
	color: #c80202;
}


.table-filter a::before {
	  content: '';/*何も入れない*/
  display: block;/*忘れずに！*/
    position:absolute;
      background-size:contain;
}

.table-filter a#building-tab::before {
  width: 43px;/*画像の幅*/
  height: 43px;/*画像の高さ*/
  background-image: url(../images/service/icn_building.svg);
  left:14px;
  top:15px;
}

.table-filter a#shop-tab::before {
  width: 43px;/*画像の幅*/
  height: 43px;/*画像の高さ*/
  background-image: url(../images/service/icn_shop.svg);
  left:14px;
  top:20px;
}

.table-filter a#haircut-tab::before {
  width: 43px;/*画像の幅*/
  height: 43px;/*画像の高さ*/
  background-image: url(../images/service/icn_haircut.svg);
  left:14px;
  top:20px;
}

.table-filter a#restaurant-tab::before {
  width: 43px;/*画像の幅*/
  height: 43px;/*画像の高さ*/
  background-image: url(../images/service/icn_restaurant.svg);
  left:14px;
  top:20px;
}



.table-tabpane {
	background-color: #e5e5e5;
}

.tab-content.aircon-various {
	padding:40px 30px;
}


@media (max-width: 767px) {

	.table-filter a {
    padding: 40px 10px 10px;
    font-size:12px;
}


.table-filter a#buying-tab::before,
.table-filter a#setup-tab::before,
.table-filter a#repair-tab::before {
    width: 30px;
    height: 30px;
    left:50%;
    top:7px;
    margin-left:-10px;
}


}




/* Realtors */
.realestate-filter {
	background: #91b029;
}
.realestate-filter .realestate-filter-wrap {
	-webkit-transform: translateY(-100%);
	-ms-transform: translateY(-100%);
	transform: translateY(-100%);
	z-index: 6;
	position: relative;
}
.realestate-filter a {
	padding: 10px 20px;
	display: inline-block;
	color: #fff;
	background: #fff;
	color: #91b029;
}
.realestate-filter a.active {
	background: #91b029;
	color: #fff;
}
.realestate-tabpane {
	background-color: #91b029;
}
.service-38201 span {
	font-size: 3rem;
	color: #fff;
	color: #91b029;
}
.service-38201 h3 {
	color: #fff;
	text-transform: uppercase;
	font-size: 15px;
}
.service-38201 p {
	color: #fff;
	font-size: 14px;
}
.heading-29201 {
	position: relative;
	margin-bottom: 38px;
	color: #000;
	font-size: 24px;
	font-weight:600;
	text-transform: uppercase;
}

.heading-29201 span {
	font-size:2.8em;
	color:#b00000;
	font-weight:900;
}

.heading-29201:before {
	content: "";
	position: absolute;
	bottom: -20px;
	left: 0;
	width: 100%;
	height: 1px;
	background: #111;
}
.heading-29201.text-center:before {
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}


.heading-29202 {
	position: relative;
	margin-bottom: 70px;
	color: #000;
	font-size: 30px;
	font-weight:600;
	text-transform: uppercase;
}



.heading-29202:before {
	content: "";
	position: absolute;
	bottom: -20px;
	left: 0;
	width: 100%;
	height: 1px;
	background: #111;
}


.bg-chara h3 {
	text-align:right;
	color:#333;
	font-weight:700;
	margin-bottom:40px;
	font-size:34px;
}

.service-39290 {
	display:flex;
}

.service-39290 .text h3 {
	font-size: 20px;
	font-weight: 700;
}


@media (min-width: 992px) {
.heading-29201 {
	font-size: 30px;
}
}


@media (max-width: 559px) {

	.heading-29201 {
	font-size: 24px;
}
	.heading-29201 span {
	font-size:2em;
}

.bg-chara h3 {
	font-size:23px;
}

.service-39290 {
	display:block;
}

.service-39290 .mr-4 {
	margin-right:0!important;
}

.service-39290 .media-icon {
	margin-bottom:20px;
	text-align:center;
}

.service-39290 .media-icon img {
		width:40%;
}

.service-39290 .text h3 {
	font-size:19px;
}

.service-39290 p {
	margin-bottom:30px;
}
}

.media-38289 {
	color: #fff;
}
.media-38289 .sq, .media-38289 .bed, .media-38289 .bath {
	font-size: 13px;
	color: #fff;
}
.media-38289 .sq .wrap-icon, .media-38289 .bed .wrap-icon, .media-38289 .bath .wrap-icon {
	margin-right: 5px;
	color: #91b029;
}
.media-38289 .address {
	color: rgba(255, 255, 255, 0.7);
}
.media-38289 .text {
	padding: 30px;
	background: #222;
}
.service-29381 {
	position: relative;
}
.service-29381 img {
	z-index: 2;
	position: relative;
}
.service-29381 .media-39912 {
	position: relative;
	margin-bottom: 20px;
	margin-top: 70px;
	text-align: center;
}
.service-29381 .media-39912:before {
	content: "";
	z-index: 0;
	position: absolute;
	top: -30px;
	left: -10px;
	height: 100%;
	width: 80%;
	/* border: 2px solid #91b029; */
	background: #1f65b7;
}
.service-29381 h3 {
	font-size: 18px;
	margin: 0;
	text-align:center;
}
.service-29381 h3 a {
	color: #000;
}
.service-29381 .meta {
	font-size: 14px;
	color: #999;
}

.service-29382 {
	position: relative;
}
.service-29382 img {
	z-index: 2;
	position: relative;
}

.service-29382 .media-39912 {
	position: relative;
	margin-bottom: 20px;
	margin-top: 70px;
	text-align: center;
}

.service-29382 .media-39912:before {
	content: "";
	z-index: 0;
	position: absolute;
	top: -30px;
	right: -20px;
	height: 90%;
	width: 80%;
	/* border: 2px solid #91b029; */
	background: #d02b1f;
}


.service-29383 {
	position: relative;
}
.service-29383 img {
	z-index: 2;
	position: relative;
}
.service-29383 .media-39912 {
	position: relative;
	margin-bottom: 20px;
	margin-top: 70px;
	text-align: center;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	transition: all 0.5s;
}
.service-29383 .media-39912:hover {
	filter:alpha(opacity=60);
    -moz-opacity:0.6;
    opacity:0.6;
}

.service-29383 .media-39912:before {
	content: "";
	z-index: 0;
	position: absolute;
	top: -30px;
	left: -30px;
	height: 100%;
	width: 80%;
	border: 2px solid #d02b1f;
}
.service-29383 h3 {
	font-size: 22px;
	margin: 0;
	text-align:center;
	font-weight:700;
	margin-bottom:1em;
	color: #000;
}
.service-29383 h3 a {
	color: #000;
	text-decoration:underline;
}

.service-29383 h3 a:hover {
	color: #d02b1f;
}

.service-29383 .meta {
	font-size: 18px;
	color: #999;
	text-align: center;
}

.service-29383 .meta a {
	color: #d02b1f;
	text-decoration:underline;
}


.service-29383 .meta a:hover {
	color: #171717;
}


.social-32913 a {
	display: inline-block;
	position: relative;
	width: 40px;
	height: 40px;
	background: #efefef;
	border-radius: 50%;
}
.social-32913 a > span {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.testimonial-38920 h3 {
	font-size: 20px;
	color: #fff;
}
.testimonial-38920 .meta {
	color: rgba(255, 255, 255, 0.3);
}
.testimonial-38920 p {
	color: rgba(255, 255, 255, 0.9);
}
.testimonial-38920 .pic {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 90px;
	flex: 0 0 90px;
}
.pagination-39291 > span, .pagination-39291 > a {
	display: inline-block;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	line-height: 30px;
	text-align: center;
}
.pagination-39291 .active {
	background: #fff;
	color: #91b029;
}
.pagination-39291 > a {
	background: #91b029;
	color: #fff;
}

@media (max-width: 559px) {
.service-29383 .media-39912:before {
    top: -20px;
    left: 20px;
}

}


/* Home */




.sec-about {
	z-index: 2;
	position: relative;
	margin-bottom:120px;
}
.sec-about .heading {
	z-index: 1;
	position: relative;
	width:60%;
}
.sec-about h2 {
	z-index: 0;
	position: relative;
	margin-bottom:36px;
}



.sec-about h3 {
	font-size:1.2rem;
	padding-left:28px;
}
.sec-about .fig1 {
	position: absolute;
	right: 40px;
	top: 0;
	z-index: 0;
}
.sec-about .summary {
	padding: 10px;
	display: block;
}

.sec-about .btn-wrap {
		display: flex;
	justify-content: space-between;
	    padding: 0 2rem 2rem 2rem;
}

.sec-about .btn-area {
	margin: 0;
	min-width: 180px;
}

.sec-about .btn {
	padding: 10px 70px;
	position:relative;
}

.sec-about .btn::after {
		position: absolute;
	content: "\f105";
	top: 12px;
	right: 15px;
	font-family: "FontAwesome";
	line-height: 1;
	font-size: 20px;
}


@media (max-width: 991.98px) {
	.sec-about .heading {
	width:100%;
}

.sec-about .fig1 {
    position: relative;
    text-align:right;
    padding-right:50px;
    margin-bottom:70px;
}

.sec-about .fig1 img {
	width:60%;
}
}

@media (max-width: 599px) {


	.sec-about h3 {
	padding-left:0;
}

	.sec-about h2 img {
		width:100%;
		max-width:300px;
}

.sec-about .summary {
	padding:0;
}

	.sec-about .btn-wrap {
	    padding: 0 0 2rem;
}

.sec-about .btn-area {
	padding: 10px 0 10px 0;
}

.sec-about .fig1 img {
	width:100%;
}

.sec-about .fig1 {
    padding-right:0;
    right:0;
    padding:20px;
    margin-bottom:40px;
}

}

.sec-buying {
	background: #e5e5e5;
	margin-top: -70px;
	position: relative;
	/*z-index: -1;*/
	clear: both;
	z-index: 1;
}

.sec-buying .container {
	max-width:100%;
}

.sec-buying h2 {
	font-size: 3.7rem;
	color: #393939;
	font-family: 'Noto Serif JP', serif;
	font-weight: bolder;
	line-height: 1.2em;
	padding: 40px 40px 40px 118px;
	border: 1px solid #FFF;
	/*filter: drop-shadow(0px 0px 20px rgba(0,0,0,0.1));*/
	top: 40px;
	right: 0px;
	z-index: 0;
	position: absolute;
	text-align: center;
}

.sec-buying .summary {
	display: block;
	position: relative;
	left: 43%;
	top: 253px;
	width: 57%;
}


.tab-pane .item {
	position:relative;
}

.tab-pane {
}

.tab-pane .heading {
	position: absolute;
	right:0;
	width:60%;
	padding:50px 0 0 80px;
	z-index:+1;
}


.tab-pane .heading h2 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	font-size:3.6rem;
	font-style:italic;
	position:relative;
}

.tab-pane .heading h2 span {
	color:#3b79c2;
	display:block;
	font-size:0.3em;
	line-height:1.8em;
	letter-spacing:0.1rem;
}

.tab-pane .heading h2::before {
	  content: '';/*何も入れない*/
  display: block;/*忘れずに！*/
    position:absolute;
      background-size:contain;
  width: 50px;/*画像の幅*/
  height: 49px;/*画像の高さ*/
  background-image: url(../images/home/icn_h2_about.svg);
  left:-56px;
  top:14px;
}




.tab-pane .btn-area {
	padding:50px 30px 30px 0;
	margin:0;
	display:flex;
}


.tab-pane .btn-area .btn {
	margin-right:4px;
}






.btn.for-biz,
.btn.for-family {
	padding: 14px 50px;
	position:relative;
}

.tab-pane .btn::after {
		position: absolute;
	content: "\f105";
	top: 12px;
	right: 15px;
	font-family: "FontAwesome";
	line-height: 1;
	font-size: 20px;
	color:#FFF;
}




.tab-pane .fig2 {
	position:relative;
}




@media (max-width: 991.98px) {
	.tab-pane .heading {
	position: relative;
	width:100%;
	padding:50px 0 0 80px;
	z-index:+1;
}

.tab-pane .fig2 {
	text-align:right;
	padding:50px 50px 0 0;
}

.tab-pane .fig2 img {
	width:60%;
}



.btn.for-biz,
.btn.for-family {
	padding: 14px 40px!important;
	position:relative;
}

}


@media (max-width: 991.98px) {


	.tab-pane .heading {
	padding:0 0 0 30px;
	margin-top:-40px;
}
}

@media (max-width: 559px) {


.tab-pane .heading h2 {
    font-size: 2rem;
}

.tab-pane .heading h2::before {
    width: 30px;
    height: 29px;
    left: -30px;
    top: 7px;
}

.tab-pane .fig2 {
	text-align:right;
	padding:30px;
}

.tab-pane .fig2 img {
	width:100%;
}

.tab-pane .btn-area {
	display:block;
}


}

.sec1 {
	z-index: 2;
	position: relative;
}
.sec1 .heading {
	z-index: 1;
	position: relative;
}
.sec1 h2 {
	font-size: 4.6rem;
	color: #ae9d51;
	font-family: 'Julius Sans One', sans-serif;
	font-weight: bolder;
	line-height: 1;
	padding: 40px 350px 40px 40px;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
	/*filter: drop-shadow(0px 0px 20px rgba(0,0,0,0.1));*/
	position: relative;
	background-color: #FFF;
	top: 40px;
	z-index: 0;
	position: relative;
}
.sec1 h2 .sec-color {
	color: #bfc0b7;
}
.sec1 h2 .kana {
	color: #4B5245;
	font-size: 1.2rem;
	text-indent: 8px;
	display: block;
	line-height: 1.8em;
	letter-spacing: 0.1em;
}
.sec1 .fig1 {
	position: absolute;
	right: 40px;
	top: 0;
	z-index: 0;
}
.sec1 .summary {
	padding: 100px 0 20px 20px;
	display: block;
}
.arrow {
	position: relative;
	display: inline-block;
	padding: 0 0 0 16px;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px;
}
.arrow::before, .arrow::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.sec1 .arrow::before {
	width: 130px;
	height: 10px;
	background: rgba(163,150,91,1);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	right: -687px;
	bottom: -237px;
}
.sec1 .arrow::after {
	right: -680px;
	bottom: -230px;
	width: 120px;
	height: 120px;
	border-right: 10px solid rgba(163,150,91,1);
	border-bottom: 10px solid rgba(163,150,91,1);
}
.btn-area {
	margin: 2rem;
}

.btn-secondary {
	color: #FFF;
	background-color: #CCC;
	border-color: #CCC;
	padding-left: 60px;
	padding-right: 60px;
	border-radius: 3px;
}

.btn-secondary a {
	color:#FFF;
}

.btn-secondary.for-family {
	background-color:#747474;
}

.btn-secondary.for-biz {
	background-color:#6A96C9;
}



.btn-portfolio {
	color: #212529;
	background-color: #918b64;
	border-color: #918b64;
	padding-left: 60px;
	padding-right: 60px;
	border-radius: 2px;
}
.btn-news {
	color: #212529;
	background-color: #889248;
	border-color: #889248;
	padding-left: 60px;
	padding-right: 60px;
	border-radius: 2px;
}

@media (max-width: 1279px) {
.sec1 h2 {
	padding: 40px 40px 40px 40px;
}
.sec1 .arrow::before {
	right: -487px;
	bottom: -237px;
}
.sec1 .arrow::after {
	right: -480px;
	bottom: -230px;
}
.sec1 .summary {
	width: 46%;
}
}

@media (max-width: 991px) {
.sec1 .heading {
	position: relative;
	width: 100%;
	height: 190px;
}
.sec1 h2 {
	font-size: 4.6rem;
	color: #ae9d51;
	padding: 30px;
	/*box-shadow: 0px 0px 20px rgba(0,0,0,0.1);*/
	box-shadow: 0px 0px 0px;
	position: absolute;
	width: auto;
	margin: auto;
	left: 0;
	right: 0;
	top: 20px;
	text-align: center;
	line-height: 1.1em;
}
.sec1 .arrow::before {
	width: 0;
	height: 0;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
.sec1 .arrow::after {
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 0;
	height: 0;
	border-right: 0px;
	border-bottom: 0px;
}
.sec1 .summary {
	position: relative;
	width: auto;
	padding: 100px 0 20px 20px;
}
.sec1 .fig1 {
	position: relative;
	right: 0;
	top: 0;
	text-align: center;
}
.btn-area {
	margin-bottom: 40px;
}
.btn-area .btn {
	margin: auto;
	display: block;
	max-width: 40%;
	padding: 10px;
}
}

@media (max-width: 599px) {
.site-section-cover h1 {
	padding: 0 20px;
}
.site-section-cover h1 span {
	display: inline;
}
.sec1 .heading {
	height: 100px;
}
.sec1 h2 {
	font-size: 3rem;
	padding: 15px;
	top: 0;
}
.sec1 .fig1 img {
	width: 90%;
	z-index: 2;
}
}

@media (max-width: 419px) {
.sec1 h2 {
	font-size: 2.4rem;
	font-weight: 700;
}
.sec1 .heading {
	height: 60px;
}
.sec1 h2 .kana {
	font-size: 0.5rem;
}
.btn-area .btn {
	max-width: 100%;
}
}
.sec2 {
	background: #e4e6dc;
	margin-top: -70px;
	position: relative;
	/*z-index: -1;*/
	clear: both;
	z-index: 1;
}
.sec2 h2 {
	font-size: 3.7rem;
	color: #393939;
	font-family: 'Noto Serif JP', serif;
	font-weight: bolder;
	line-height: 1.2em;
	padding: 40px 40px 40px 118px;
	border: 1px solid #FFF;
	/*filter: drop-shadow(0px 0px 20px rgba(0,0,0,0.1));*/
	top: 40px;
	right: 0px;
	z-index: 0;
	position: absolute;
	text-align: center;
}
.sec2 h2 .kana {
	color: #969696;
	font-size: 0.8rem;
	text-indent: 8px;
	display: block;
	line-height: 1.8em;
	letter-spacing: 0.1em;
}
.sec2 .arrow::before {
	width: 110px;
	height: 10px;
	background: rgba(173,188,148,1);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	left: -62px;
	bottom: -147px;
}
.sec2 .arrow::after {
	left: -52px;
	bottom: -130px;
	width: 100px;
	height: 100px;
	border-left: 10px solid rgba(173,188,148,1);
	border-bottom: 10px solid rgba(173,188,148,1);
}
.sec2 .summary {
	display: block;
	position: relative;
	left: 43%;
	top: 253px;
	width: 57%;
}
.sec2 .btn-area {
	left: 42%;
	top: 280px;
	position: relative;
}
.sec2 .fig2 {
	position: relative;
	left: 0;
	margin-top: -180px;
	z-index: -1;
}

@media (max-width: 1279px) {
.sec2 h2 {
	width: 55%;
	font-size: 2.8rem;
	padding: 30px;
}
.sec2 .fig2 {
	margin-top: -210px;
}
.sec2 .summary {
	left: 45%;
	width: 55%;
}
.sec2 .btn-area {
	left: 44%;
	top: 261px;
	position: relative;
	z-index: +2;
}
}

@media (max-width: 991px) {
.sec2 h2 {
	padding: 30px;
	right: 0;
	left: 0;
	position: relative;
	width: 100%;
	text-align: center;
}
.sec2 .arrow::before {
	width: 0px;
	height: 0px;
	left: 0;
	bottom: 0;
}
.sec2 .arrow::after {
	left: 0;
	bottom: 0;
	width: 0px;
	height: 0px;
	border-left: 0px;
	border-bottom: 10px;
}
.sec2 .summary {
	display: block;
	position: relative;
	left: 0;
	width: 100%;
	top: 0;
	margin-top: 80px;
}
.sec2 .btn-area {
	margin-bottom: 40px;
}
.sec2 .btn-area {
	left: auto;
	top: 0;
}
.sec2 .fig2 {
	position: relative;
	left: 0;
	margin-top: 0;
	text-align: center;
}
}

@media (max-width: 599px) {
.sec2 .fig2 img {
	width: 90%;
	z-index: 2;
}
}
.sec3 {
	z-index: 2;
	position: relative;
}
.sec3 .heading {
	z-index: 1;
	position: relative;
}
.sec3 h2 {
	font-size: 4rem;
	color: #9da483;
	font-family: 'Lato', sans-serif;
	font-weight: 500;
	line-height: 1;
	padding: 30px 370px 30px 30px;
	border: 1px solid #9da483;
	position: relative;
	top: 40px;
	z-index: 0;
	position: relative;
}
.sec3 h2 .kana {
	color: #4B5245;
	font-size: 1.3rem;
	display: block;
	line-height: 1.8em;
	letter-spacing: 0.1em;
	font-family: 'Noto Serif JP', serif;
}
.sec3 .fig1 {
	position: absolute;
	right: 40px;
	top: 0;
	z-index: 0;
}
.sec3 .summary {
	padding: 100px 0 20px 20px;
	display: block;
}
.arrow {
	position: relative;
	display: inline-block;
	padding: 0 0 0 16px;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px;
}
.arrow::before, .arrow::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.sec3 .arrow::before {
	width: 110px;
	height: 10px;
	background: rgba(157,164,131,1);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	right: -567px;
	bottom: -227px;
}
.sec3 .arrow::after {
	right: -560px;
	bottom: -220px;
	width: 100px;
	height: 100px;
	border-right: 10px solid rgba(157,164,131,1);
	border-bottom: 10px solid rgba(157,164,131,1);
}
.btn-area {
	margin: 2rem;
}
.btn-primary {
    color: #222;
    background-color: #FFF;
    border-color: #1f65b7;
    padding-left: 70px;
    padding-right: 70px;
    border-radius: 2px;
}
.btn-primary:hover {
    color: #fff;
    background-color: #1f65b7 !important;
    border-color: #1f65b7 !important;
}

.btn-primary.submit {
    background-color: #2d6db8;
    border:none;
}

@media (max-width: 1279px) {
.sec3 h2 {
	padding: 40px 40px 40px 40px;
}
.sec3 .arrow::before {
	right: -487px;
	bottom: -237px;
}
.sec3 .arrow::after {
	right: -480px;
	bottom: -230px;
}
.sec3 .summary {
	width: 46%;
}
}

@media (max-width: 991px) {
.sec3 .heading {
	position: relative;
	width: 100%;
	height: 190px;
}
.sec3 h2 {
	font-size: 4.6rem;
	color: #ae9d51;
	padding: 30px;
	position: absolute;
	width: auto;
	margin: auto;
	left: 0;
	right: 0;
	top: 20px;
	text-align: center;
}
.sec3 .arrow::before {
	width: 0;
	height: 0;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
.sec3 .arrow::after {
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 0;
	height: 0;
	border-right: 0px;
	border-bottom: 0px;
}
.sec3 .summary {
	position: relative;
	width: auto;
	padding: 100px 0 20px 20px;
}
.sec3 .fig1 {
	position: relative;
	right: 0;
	top: 0;
	text-align: center;
}
.btn-area {
	margin-bottom: 40px;
}
.btn-area .btn {
	margin: 0;
	display: block;
	max-width: 100%;
	padding: 10px;
	margin-bottom: 2px;
}
}

@media (max-width: 599px) {
.site-section-cover h1 {
	padding: 0 20px;
}
.site-section-cover h1 span {
	display: inline;
}
.sec3 .heading {
	height: 100px;
}
.sec3 h2 {
	font-size: 3rem;
	padding: 15px;
	top: 0;
}
.sec3 .fig1 img {
	width: 90%;
	z-index: 2;
}
}

@media (max-width: 419px) {
.sec3 h2 {
	font-size: 2.4rem;
	font-weight: 700;
}
.sec3 .heading {
	height: 60px;
}
.sec3 h2 .kana {
	font-size: 0.9rem;
}
.btn-area .btn {
	max-width: 100%;
}
}
.portfolio {
	padding: 2.4rem 0!important;
}
.portfolio .section-content {
	color: #fdfdfd;
}
.portfolio .section-content .portfolio-images {
	height: 400px;
	overflow-x: hidden;
	overflow-y: auto;
	margin-bottom: 26px;
	position: relative;
}
.portfolio .section-content .isotop-filter {
	text-align: center;
	margin-bottom: 35px;
}
.portfolio .section-content .element-item {
	margin-bottom: 15px;
	cursor: pointer;
}
.portfolio .portfolio-grid {
	padding: 5px;
}
.portfolio .btn-area {
	margin: 2rem 0 0;
	text-align: center;
}
.da-thumbs {
	list-style: none;
	position: relative;
	padding: 0;
	margin: 0;
}
.da-thumbs li {
	float: left;
	/*background: #fff;*/
	padding: 0px;
	position: relative;
	width: 25%;
	padding: 5px;
}

@media only screen and (max-width: 992px) {
.da-thumbs li {
	width: 33%;
}
}

@media only screen and (max-width: 767px) {
.da-thumbs li {
	width: 50%;
}
}
.facilities .da-thumbs li {
	width: 16.666%;
}

@media only screen and (max-width: 992px) {
.facilities .da-thumbs li {
	width: 25%;
}
}

@media only screen and (max-width: 767px) {
.facilities .da-thumbs li {
	width: 50%;
}
}
.portfolio-grid.three-col li {
	width: 25%;
}

@media only screen and (max-width: 992px) {
.portfolio-grid.three-col li {
	width: 33%;
}
}

@media only screen and (max-width: 767px) {
.portfolio-grid.three-col li {
	width: 50%;
}
}
.portfolio-grid.two-col li {
	width: 50%;
}
.da-thumbs li.x2 {
	width: 50%;
}
.da-thumbs li a, .da-thumbs li a img {
	display: block;
	position: relative;
	width: 100%;
}
.da-thumbs li a {
	overflow: hidden;
}
.da-thumbs li a .portfolio-detail-overlay {
	position: absolute;
	background: #fff;
	background: rgba(68,73,59,0.80);
	padding: 20px;
	text-align: center;
	width: 100%;
	height: 100%;
}
.da-thumbs li a div span {
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.85);
	padding: 2px;
	font-size: 12px;
	display: block;
	letter-spacing: 1px;
}
.portfolio-detail-overlay h4 {
	color: #FFF;
	margin-top: 0px;
	font-size: 14px;
	margin-bottom: 15px;
	letter-spacing: 2px;
	font-family: 'Rototo' sans-serif;
}
.portfolio-detail-overlay .middle-align-wrap {
	display: table;
	height: 100%;
	width: 100%;
}
.portfolio-detail-overlay .middle-align-wrap .middle-align-cell {
	display: table-cell;
	vertical-align: middle;
}
.btn-isotop {
	background: none;
	border: 0;
	padding: 6px 20px 15px;
	color: #666;
	font-size: 14px;
	vertical-align: middle;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	box-shadow: 0 0 1px transparent;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	position: relative;
	overflow: hidden;
}
.btn-isotop:before {
	content: "";
	position: absolute;
	z-index: -1;
	left: 50%;
	right: 50%;
	top: 30px;
	background: #c80202;
	height: 1px;
	-webkit-transition-property: left, right;
	transition-property: left, right;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}
.btn-isotop:active, .btn-isotop:focus, .btn-isotop:hover {
	color: #000;
	box-shadow: none;
	outline: none !important;
}
.btn-isotop:active:before, .btn-isotop:focus:before, .btn-isotop:hover:before {
	left: 0;
	right: 0;
}
.portfolio-details-single {
	margin-top: 60px;
}
.portfolio-details-single h3 {
	margin-bottom: 40px;
	position: relative;
}
.portfolio-details-single h3:before {
	position: absolute;
	content: '';
	width: 60px;
	background-color: black;
	height: 1px;
	bottom: -15px;
}
.portfolio-details-single ul {
	list-style: none;
	line-height: 2.5em;
	padding-left: 0;
}
.bg-gray {
	background: #ececec;
}
.bg-chara {
	background: #ececec;
		background-image: url(../images/chara/bg_chara.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}
.sec4 h2,
.sec6 h2 {
	font-size:3rem;
	color: #393939;
	font-family: 'Noto Serif JP', serif;
	font-style:italic;
	line-height: 1.2em;
	font-weight: 500;
	text-align: center;
}
.sec4 h2 .kana,
.sec6 h2 .kana {
	color: #3b79c2;
	font-size: 0.4em;
	text-indent: 8px;
	display: block;
	line-height: 1.8em;
	letter-spacing: 0;
	font-weight: 500;
}


.sec6 .news ul {
	margin: 30px 0 0;
	padding-left: 0;
}
.sec6 .news ul li {
	border-bottom: 1px #FFF solid;
	margin-bottom: 30px;
	padding-bottom: 10px;
	list-style: none;
	padding-left: 10px;
	font-size: 14px;
}
.sec6 .news ul li .cate {
	padding: 2px;
	border-radius: 3px;
	color: #FFF;
	margin-right: 15px;
	text-align: center;
	width: 86px;
	display: inline-block;
}
.sec6 .news ul li .cate1 {
	background-color: #42ae96;
}
.sec6 .news ul li .cate2 {
	background-color: #37bd63;
}
.sec6 .news ul li .cate3 {
	background-color: #7db8d6;
}
.sec6 .news ul li .cate4 {
	background-color: #e9bd70;
}
.sec6 .news ul li .date {
	font-weight: bold;
	display: inline-block;
	margin-right: 15px;
}
.sec6 .news ul li .desc {
	display: block;
	margin-top: 0.5em;
}
.sec6 .btn-area {
	margin: 2rem 0;
	text-align: center;
}

@media (max-width: 599px) {

.sec4 h2, .sec6 h2 {
    font-size: 2rem;
}

	.sec6 .news ul li .date {
    display: inherit;
    width: 100px;
    margin:0;
    margin-bottom: 10px;
    text-align: center;
}
}


.site-footer .f-navi {
	display: flex;
}
.site-footer .f-navi ul {
	margin-right: 20px;
}

.site-footer .copyright {
	font-size: .9rem;
}
.site-footer .sns {
	display: flex;
	justify-content: flex-start;
}

.site-footer .sns .bg-sns {
	width:36px;
	height:36px;
	border-radius:18px;
	display:block;
	background-color:#888888;
	margin-right:10px;
	display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
    	-webkit-transition: all 0.7s;
	-moz-transition: all 0.7s;
	transition: all 0.7s;
}

.site-footer .sns .bg-sns:hover {
	background-color:#d23535;
}

.site-footer .sns span {
	font-size:26px;
}


.sec-about .sns {
	display: flex;
	justify-content: flex-end;
}

.sec-about .sns .bg-sns {
	width:42px;
	height:42px;
	border-radius:24px;
	display:block;
	background-color:#d23535;
	margin-right:10px;
	display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
    	-webkit-transition: all 0.7s;
	-moz-transition: all 0.7s;
	transition: all 0.7s;
}

.sec-about .sns a {
	color: #F9EEEE;
}

.sec-about .sns .bg-sns:hover {
	background-color:#FF7B7B;
}

.sec-about .sns span {
	font-size:30px;
}

@media only screen and (min-width: 768px) {
.site-footer .sns {
	justify-content: flex-start;
}
	
	
.sec-about .sns {
	justify-content: flex-start;
}
}



@media (max-width: 599px) {

	.site-footer {
		font-size:0.82rem;
	}
}
.lead {
	font-size: 1.1rem;
	font-weight: 300;
}
.img-big {
	position: relative;
	display: block;
	text-align: center;
}
.text-vcenter {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
}
.box-a {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
	-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
	justify-content: center; /* 横方向中央揃え */
}
.future1, .future2, .future3, .future4, .future5, .future6, .future7 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-right: 0;
	margin-left: 0;
}
.future1 .col-lg-6, .future2 .col-lg-6, .future3 .col-lg-6, .future4 .col-lg-6, .future5 .col-lg-6, .future6 .col-lg-6, .future7 .col-lg-6 {
	padding-left: 0;
	padding-right: 0;
}
.future2, .future4, .future6 {
	flex-direction: row-reverse;
}
.future1 .img-big, .future3 .img-big, .future5 .img-big, .future7 .img-big {
	padding: 30px;
	position: relative;
	z-index: 1;
}
.future2 .img-big, .future4 .img-big, .future6 .img-big {
	padding: 30px;
	position: relative;
	z-index: 1;
}

@media (min-width: 768px) {
.future1 .img-big, .future3 .img-big, .future5 .img-big, .future7 .img-big {
	padding: 60px 60px 0 60px;
}
.future2 .img-big, .future4 .img-big, .future6 .img-big {
	padding: 60px 60px 0 60px;
}
}

@media (min-width: 992px) {
.future1 .img-big, .future3 .img-big, .future5 .img-big, .future7 .img-big {
	padding: 7vw 0 50px 100px;
}
.future2 .img-big, .future4 .img-big, .future6 .img-big {
	padding: 7vw 100px 50px 0;
}
}
.future1 .img-big:before, .future3 .img-big:before, .future5 .img-big:before, .future7 .img-big:before {
	content: "";
	z-index: -1;
	position: absolute;
	top: 4vw;
	right: -3vw;
    height: 60%;
    width: 80%;
    background: #FFF;
}
.future2 .img-big:before, .future4 .img-big:before, .future6 .img-big:before {
content: "";
    z-index: -1;
    position: absolute;
    top: 4vw;
    left: -2vw;
    height: 60%;
    width: 80%;
    background: #FFF;
}

@media screen and (max-width: 575px) {
.future1 .img-big:before, .future3 .img-big:before, .future5 .img-big:before, .future7 .img-big:before {
	right: -1vw;
}
.future2 .img-big:before, .future4 .img-big:before, .future6 .img-big:before {
	left: -1vw;
}

.bg-chara .mb-5 {
	margin-bottom:0!important;
}

}
ul.chara-list {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}
ul.chara-list li {
	position: relative;
	vertical-align: middle;
	/*border-radius: 50%;
    border: 2px solid #E9C47A;*/
	box-sizing: border-box;
	width: 280px;
	height: 280px;
	line-height: 1.5em;
	margin: 0;
	padding: 0;
	text-align: center;
	margin: 20px;
	padding: 40px;
	font-size: 17px;
	padding-top: 130px;
	background: url(../images/future/bg_circle.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}
.chara-list  table {
	background-color: #f3f3f3;
	empty-cells: show;
	width: 100%;
	line-height: 1.3em;
	border-spacing: 0px;
	margin-bottom: 1.5em;
	padding: 20px 0;
	list-style-type: none;
	box-sizing: border-box;
	border-top: 0;
	text-align: center;
}
.chara-list  table td {
	display: block;
	border-right: 1px solid #FFF;
	float: left;
	width: 33.333%;
	box-sizing: border-box;
	padding: 12px 5px 12px 0;
	border-bottom: 1px solid #FFF;
}

@media only screen and (  max-width: 459px) {
.chara-list table td {
	width: 50%;
	padding: 12px 5px 12px 5px;
}
}
.gallery .og-grid  li > a {
	border: none;
	outline: none;
	display: block;
	position: relative;
}
.gallery .og-close::before, .gallery .og-close::after {
	content: '';
	position: absolute;
	width: 100%;
	top: 50%;
	height: 1px;
	background: #888;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.gallery .og-fullimg, .gallery .og-details {
	width: 50%;
	float: left;
	height: 100%;
	overflow: hidden;
	position: relative;
}
.gallery .og-grid {
	list-style: none;
	padding: 20px 0;
	margin: 0 auto;
	text-align: center;
	width: 100%;
}
.gallery .og-grid  li {
	display: inline-block;
	vertical-align: top;
	height: 250px;
	margin: 10px -2px;
	width: 33.33%;
	padding: 10px;
}

@media only screen and (  max-width: 991px) {
.gallery .og-grid li {
	width: 50%;
}
}

@media only screen and (  max-width: 767px) {
.gallery .og-grid li {
	width: 100%;
}
}
.gallery .og-grid  li > a {
	height: 250px;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	transition: all 0.5s;
}
.gallery .og-grid  li > a:hover {
	background-color: rgba(255,255,255,0.5);
	background-blend-mode: overlay;
}
.gallery .og-grid  li.og-expanded {
	margin-bottom: 35px;
	height: 900px!important;
}
.gallery .og-grid  li.og-expanded > a::after {
	top: auto;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	bottom: -15px;
	position: absolute;
	pointer-events: none;
	border-bottom-color: #ADDBF8;
	border-width: 15px;
	left: 50%;
	margin: -20px 0 0 -15px;
}
.gallery .og-grid.og-grid-4col  li {
	width: 25%;
}

@media only screen and (  max-width: 767px) {
.gallery .og-grid.og-grid-4col li {
	width: 100%;
}
}
.gallery .og-grid.og-grid-5col  li {
	width: 20%;
}

@media only screen and (  max-width: 767px) {
.gallery .og-grid.og-grid-5col li {
	width: 100%;
}
}
.gallery .og-expander {
	position: absolute;
	background: #ADDBF8;
	top: auto;
	left: 0;
	width: 100%;
	margin-top: 15px;
	text-align: left;
	height: 500px!important;
	overflow: hidden;
}
.gallery .og-expander-inner {
	padding: 50px 30px;
	height: 100%;
}
.gallery .og-close {
	position: absolute;
	width: 40px;
	height: 40px;
	top: 20px;
	right: 20px;
	cursor: pointer;
}
.gallery .og-close:hover::before {
	background: #333;
}
.gallery .og-close:hover::after {
	background: #333;
}
.gallery .og-close::after {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.gallery .og-fullimg {
	text-align: center;
}
.gallery .og-fullimg  img {
	display: inline-block;
	max-height: 100%;
	max-width: 100%;
}
.gallery .og-details {
	padding: 0 40px 0 20px;
}
.gallery .og-details  h3 {
	font-weight: 300;
	font-size: 30px;
	padding: 40px 0 10px;
	margin-bottom: 10px;
}
.gallery .og-details  p {
	color: #666;
}
.gallery .og-details  a {
	margin: 30px 0 0;
	outline: none;
	display: none;
}
.gallery .og-loading {
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #ddd;
	box-shadow: 0 0 1px #ccc, 15px 30px 1px #ccc, -15px 30px 1px #ccc;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -25px 0 0 -25px;
	-webkit-animation: loader 0.5s infinite ease-in-out both;
	animation: loader 0.5s infinite ease-in-out both;
}
@-webkit-keyframes loader {
 0% {
 background: #ddd;
}
 33% {
 background: #ccc;
 box-shadow: 0 0 1px #ccc, 15px 30px 1px #ccc, -15px 30px 1px #ddd;
}
 66% {
 background: #ccc;
 box-shadow: 0 0 1px #ccc, 15px 30px 1px #ddd, -15px 30px 1px #ccc;
}
}
@keyframes loader {
 0% {
 background: #ddd;
}
 33% {
 background: #ccc;
 box-shadow: 0 0 1px #ccc, 15px 30px 1px #ccc, -15px 30px 1px #ddd;
}
 66% {
 background: #ccc;
 box-shadow: 0 0 1px #ccc, 15px 30px 1px #ddd, -15px 30px 1px #ccc;
}
}

@media screen and (  max-width: 830px) {
.gallery .og-expander h3 {
	font-size: 32px;
}
.gallery .og-expander p {
	font-size: 13px;
}
.gallery .og-expander a {
	font-size: 12px;
}
}

@media screen and (  max-width: 650px) {
.gallery .og-fullimg {
	display: none;
}
.gallery .og-details {
	float: none;
	width: 100%;
}
}
h2.generative {
	font-size: 4.2rem;
	color: #ae9d51;
	font-family: 'Julius Sans One', sans-serif;
	font-weight: bolder;
	line-height: 1.5em;
	/*filter: drop-shadow(0px 0px 20px rgba(0,0,0,0.1));*/
	position: relative;
	margin: 30px 0 40px;
	text-align: center;
	font-weight: bold;
}
h2.generative .sec-color {
	color: #bfc0b7;
}
h2.generative .kana {
	color: #999;
	font-size: 1.1rem;
	text-indent: 8px;
	display: block;
	line-height: 1.8em;
	letter-spacing: 0.1em;
	display: block;
}
.cap-text {
	margin: 20px;
	line-height: 1.5em;
}
.cap-title {
	margin: 20px 20px 0 20px;
}

@media only screen and (  max-width: 767px) {
h2.generative {
	font-size: 2.6rem;
}
h2.generative .kana {
	font-size: 0.9rem;
}
}
.date {
	padding: 4px 8px;
	background-color: #4B5245;
	color: #FFF;
	font-size: 11px;
	display: inline-block;
	text-align: center;
}
.news-article {
}
.news-article img {
	width: 100%;
}
.news-article article {
	margin-bottom: 68px;
}
.youtube {
	position: relative;
	width: 1%;
	height: 0px;
	padding-top: 0%;
}
.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}
.chara-catch {
	display: flex;
	justify-content: center;
}
.chara {
	font-size: 3.2rem;
	line-height: 1.8em;
	padding: 50px 100px;
	font-weight: 400;
	font-family: 'Noto Serif JP', serif;
	text-align: center;
	color: #000;
	letter-spacing: 0.3rem;
	border: 2px solid #EEE;
	display: inline-block;
	margin: auto;
	margin-bottom: 60px;
}
.chara .chara-eye1 {
	font-size: 1.5em;
	display: block;
	font-weight: 400;
	letter-spacing: 0.1rem;
}
.chara .chara-eye2 {
	font-size: 0.6em;
	display: block;
	font-weight: 500;
	color: #A1B42C;
	letter-spacing: 0.1rem;
}
.chara::before {
	content: "";
	z-index: -1;
	position: absolute;
	top: -1vw;
	left: 8vw;
	height: 6vw;
	width: 6vw;
	border: 2px solid #EEE;
}

@media screen and (max-width: 1278px) {
.chara::before {
	top: -1vw;
	left: 0vw;
}
}

@media screen and (max-width: 999px) {
.chara {
	font-size: 2rem;
}
}

@media screen and (max-width: 767px) {
.chara {
	font-size: 1.5rem;
	padding: 40px;
}
}

@media screen and (max-width: 459px) {
.chara {
	font-size: 1.1rem;
	padding: 20px;
	margin-bottom: 60px;
}
}

@media screen and (max-width: 768px) {
.chara-fig img {
	width: 100%;
}
.chara::before {
	content: "";
	height: 0;
	width: 0;
	border: none;
}
}
.therefore {
}
.therefore .arrow {
	position: relative;
	display: flex;
	justify-content: center;
	text-align: center;
	padding: 20px 0;
	font-size: 16px;
	color: #666;
	font-size: 28px;
	font-weight: 500;
	font-family: 'Noto Serif JP', serif;
	margin-bottom: 140px;
}
.therefore .arrow::before {
	width: 110px;
	height: 10px;
	background: #A1B42C;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	right: 0px;
	bottom: -160px;
	position: absolute;
	z-index: -1;
}
.therefore .arrow::after {
	right: 0px;
	left: 0px;
	bottom: -150px;
	width: 100px;
	height: 100px;
	border-right: 10px solid #A1B42C;
	border-bottom: 10px solid #A1B42C;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	z-index: -1;
}
h2.one {
	text-align: center;
	font-size: 2.8rem;
	font-weight: 400;
	font-family: 'Noto Serif JP', serif;
}

@media only screen and (max-width: 992px) {
.our-process .section-content {
	margin: 0;
}
}


.our-process .our-process-image {
	position: relative;
	height: 10em;
	width: 10em;
	background: #858585;
	border-radius: 50%;
	text-align: center;
	display: table;
	margin-bottom: 10px;
	float: right;
	margin-left: 40px;
	padding:1em;
}

.our-process .our-process-image.red {
	background: #e23f3f;
}

.our-process .our-process-image.last {
	background: #111;
}


.our-process .tel-number {
	font-size:40px;
	color:#111;
	position:relative;
	font-weight:700;
	font-family: 'Noto Serif JP', serif;
	font-style:italic;
	padding-left:0.8em;
}

.our-process .tel-number:before {
			position: absolute;
	content: "\f098";
	top: 20px;
	left: 0;
	font-family: "FontAwesome";
	line-height: 1;
	font-size: 30px;
	margin-top: 0px;
	color:#b00000;
	font-style:italic;
}

.our-process .btn {
	padding: 10px 70px;
	position:relative;
	border-radius:4px;
}

.our-process .btn::after {
		position: absolute;
	content: "\f105";
	top: 12px;
	right: 15px;
	font-family: "FontAwesome";
	line-height: 1;
	font-size: 20px;
}

.our-process .check {
	font-size:22px;
	font-family: 'Noto Serif JP', serif;
	font-weight:700;
	color:#111;
	font-style:italic;
	position: relative;
}


.our-process .note {
	display: block;
	font-size:14px;
	color:#111;
	font-style: normal;
}

.zoom-info .note {
	font-family: "ÃƒÆ’Ã‚Â£Ãƒâ€ Ã¢â‚¬â„¢ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã‚Â£Ãƒâ€ Ã¢â‚¬â„¢Ãƒâ€šÃ‚Â©ÃƒÆ’Ã‚Â£ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â®ÃƒÆ’Ã‚Â£Ãƒâ€ Ã¢â‚¬â„¢Ãƒâ€¦Ã‚Â½ÃƒÆ’Ã‚Â¨Ãƒâ€šÃ‚Â§ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã‚Â£ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â´ Pro W3", "Hiragino Kaku Gothic Pro", "ÃƒÆ’Ã‚Â£Ãƒâ€ Ã¢â‚¬â„¢Ãƒâ€šÃ‚Â¡ÃƒÆ’Ã‚Â£ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¤ÃƒÆ’Ã‚Â£Ãƒâ€ Ã¢â‚¬â„¢Ãƒâ€šÃ‚ÂªÃƒÆ’Ã‚Â£ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Âª", Meiryo, Osaka, "ÃƒÆ’Ã‚Â¯Ãƒâ€šÃ‚Â¼Ãƒâ€šÃ‚Â­ÃƒÆ’Ã‚Â¯Ãƒâ€šÃ‚Â¼Ãƒâ€šÃ‚Â³ ÃƒÆ’Ã‚Â¯Ãƒâ€šÃ‚Â¼Ãƒâ€šÃ‚Â°ÃƒÆ’Ã‚Â£ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â´ÃƒÆ’Ã‚Â£ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â·ÃƒÆ’Ã‚Â£Ãƒâ€ Ã¢â‚¬â„¢Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â£ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¯", "MS PGothic", "sans-serif";
		    position: absolute;
    right: 133px;
    top: 54px;
    font-weight: normal;
}

.for-business h4,
.for-family h4 {
	font-weight:500;
	color:#FFF;
	padding-bottom:16px;
	margin-bottom: 30px;
	padding:10px 16px;
	background-color:#a2a2a2;
	border-radius:2px;
}

.lightbox-gallery h4 {
	background:none;
}

.our-process .check img {
	margin-left:20px;
}

.for-business .check {
	margin-bottom:30px;
}

.for-business .check img {
	width:120px;
	padding:0 10px;
}

.for-family .check li,
.for-business .check li,
.price li,
.price li  {
	list-style:none;
	line-height:2.6em;
	border-bottom:1px dotted #999;
	position:relative;

}

.for-family .check li,
.for-business .check li {
		padding-left:1.5em;
}

.check li:before {
	font-family: "FontAwesome";
	content: "\f14a";
	position: absolute;
	color: #154e90;
	left: 0;
	bottom: 0;
	font-size: 1.1em;
	font-style:italic;
}

.for-family ul {
	padding-inline-start:0;
	margin-bottom:40px;
}


.for-family .sales,
.for-business .sales {
	font-family: 'Noto Serif JP', serif;
	font-size:24px;
	color:#b81a1a;
	font-style:italic;
	font-weight:500;
}

@media only screen and (max-width: 767px) {
.our-process .our-process-image {
	margin: 0;
	height: 5em;
	width: 5em;
}

}
.our-process .our-process-image span {
	font-size: 4em;
	color: #000;
	display: table-cell;
	vertical-align: middle;
}

@media only screen and (max-width: 767px) {
.our-process .our-process-image span {
	font-size: 3em;
}
}
.our-process .our-process-image img {
	width: 100%;
	padding: 14px;/*position: absolute;
	left: -10px;
	bottom: -6px;*/
}
.our-process .our-process-image.left img {
/*left:auto;
	right: -10px;
	bottom: -6px;*/
}
.our-process .our-process-image.left {
	float: left;
	margin-right: 40px;
	margin-left: 0px;
}
.our-process .process {
	margin: 40px 0 110px;
}


.our-process .process .our-process-text.right {
	text-align: right;
}
.our-process .divider {
	margin-top: 40px;
	height: 1px;
	width: -webkit-calc(100% - 112px);
	width: calc(100% - 112px);
	position: relative;
	border-bottom: 2px dotted #dadada;
	margin: 0 auto;
}
.our-process .divider img {
	position: absolute;
	left: -webkit-calc(50% - 68px);
	left: calc(50% - 68px);
	top: -47px;
}
.our-process .divider-right::after {
	content: "";
	position: absolute;
	top: 2px;
	height: 25px;
	left: 0;
	border-left: 2px dotted #dadada;
}
.our-process .divider-right::before {
	content: "";
	position: absolute;
	top: -26px;
	height: 25px;
	right: 0;
	border-left: 2px dotted #dadada;
}
.our-process .divider-left::after {
	content: "";
	position: absolute;
	top: -26px;
	height: 25px;
	left: 0;
	border-left: 2px dotted #dadada;
}
.our-process .divider-left::before {
	content: "";
	position: absolute;
	top: 2px;
	height: 25px;
	right: 0;
	border-left: 2px dotted #dadada;
}
.our-process h4 {
	color: #111;
	font-weight: 600;
	font-size: 36px;
}


.our-process h4 span {
	font-size:58px;
	color:#b00000;
	margin:0 10px;
}


@media (max-width: 559px) {
	
	.process.line {
		position: relative;
		    margin-bottom: -20px!important;
	}
	
	.process.line img {
	max-width: 80px;
		margin-top:10px;
		margin-left: 0;
}

.our-process h4 {
	font-size: 18px!important;
}


.our-process h4 span {
	font-size:43px;
}


.our-process-text p {
font-size:0.9rem;
}

.our-process .process {
	margin: 20px 0 30px;
}
	
	.our-process .check {
	font-size:18px;
}
	
	.our-process .note {
		text-align: left;
	}

.our-process .our-process-image.left {
    margin-right: 20px;
}

.our-process .our-process-image img {
    padding: 0px;
}

}
/**
* Style for components
**/
a:focus {
	outline: none;
}
.navbar-toggle {
	border: 0;
}
.navbar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand {
	margin-left: 0;
}
.navbar > .container .brand-logo, .navbar > .container-fluid .brand-logo {
	margin-left: 0;
}
.carousel-control.left, .carousel-control.right {
	background: none;
}
.alert {
	padding: 5px 12px;
	border-radius: 2px;
}
.nav-tabs > li > a {
	border-radius: 2px 2px 0 0;
	color: #898989;
}
.panel-heading {
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
	padding: 0;
}
.nav-tabs {
	margin-bottom: 30px;
}
/* Accordion */
.panel-title {
	font-size: 14px;
	position:relative;
	padding-left:25px;
}


.panel-title:before {
	color: #505050;
	    position: absolute;
    content: "Q";
    top: 2px;
    left: 5px;
   font-family: 'Noto Serif JP', serif;
    line-height: 1;
    font-size: 1.6em;
    font-style:italic;
}

.panel-collapse {
	padding-left:23px;
}

.panel-collapse .panel-body {
	position:relative;
}

.panel-collapse .panel-body:before {

	color: #b81919;
	    position: absolute;
    content: "A";
    top: 18px;
    left: -12px;
   font-family: 'Noto Serif JP', serif;
    line-height: 1;
    font-size: 1.6em;
    font-style:italic;
    }


.panel-heading a {
	position: relative;
	display: block;
	letter-spacing: 1px;
	word-spacing: initial;
	padding: 10px 15px;
}
.panel-heading a:hover, .panel-heading a:focus, .panel-heading a:active {
	text-decoration: none;
}



.cta-1 {
	background-color: #000;
}
.cta-1 .call-to-action {
	text-align: center;
	color: #fdfdfd;
	background-size: contain;
	padding: 50px 0;
}
.cta-1 .call-to-action .cta-text {
	color: #fff;
	margin-bottom: 30px;
	margin-top: 0;
	text-transform: capitalize;
	font-size: 22px;
}
.cta-2 {
	background-color: #000;
	padding: 30px 0;
}
.cta-2 .cta-text {
	color: #fff;
	margin: 0;
	line-height: 30px;
	margin-right: 30px;
	text-transform: capitalize;
	font-size: 16px;
	letter-spacing: 1px;
}



@media only screen and (max-width: 767px) {
.cta-2 .cta-text {
	font-size: 13px;
	line-height: 20px;
	display: block;
	margin-right: 0;
}

.panel-heading a {
    padding: 10px 30px 10px 10px;
}
}

@media only screen and (max-width: 992px) {
.cta-2 .btn {
	margin-top: 15px;
}
}
.qanda .wrap-list {
	border: 2px solid #EEE;
	padding: 26px;
	margin-bottom: 30px;
	box-sizing: border-box;
	min-height: 180px;
}
.qanda h5 {
/*text-align: center;*/
}
.section.qanda {
	padding: 60px 0 30px;
}
.qanda .cost {
}
.qanda .cost p {
/*text-align: center;*/
}
.qanda .nav-tabs {
	border-bottom: 2px solid #369669;
}
.qanda .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
	color: #FFF;
	cursor: default;
	background-color: #369669;
	border: 2px solid #369669;
	border-bottom-color: transparent;
}
.qanda .nav-tabs > li > a {
	border-radius: 4px 4px 0 0;
}
.qanda .nav > li > a {
	position: relative;
	display: block;
	padding: 10px 30px;
	font-size: 1.1em
}
.qanda .panel-default > .panel-heading, .faq .panel-default > .panel-heading {
	color: #333;
	background-color: #e6e6e6;
	border-color: #e6e6e6;
	padding: 8px 5px 1px;
}
.qanda .panel-default, .faq .panel-default {
	border-color: #EEE;
}
.qanda .panel-title, .faq .panel-title {
	font-size: 15px;
	font-weight: normal;
	font-family: "ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro W3", "Hiragino Kaku Gothic Pro", "ãƒ¡ã‚¤ãƒªã‚ª", Meiryo, Osaka, "ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", "MS PGothic", "sans-serif"!important;
	font-style:normal;
}
.qanda .panel, .faq .panel {
	margin-bottom: 22px;
	background-color: #fff;
	border: 1px solid #EEE;
	border-radius: 2px;
	-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0);
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0);
}
.qanda strong, .faq strong {
	color: #369669;
}


@media (max-width: 559px) {
.section.qanda {
	padding: 20px 0;
}
}


.bg-panel1 {
	background-color: rgba(255,255,255,0.85);
}
.bg-panel2 {
	background-color: rgba(232,248,249,0.85);
}
.panel-heading a {
	color: #4B5245;
}
.panel-heading a:after {
	position: absolute;
	content: "\f107";
	top: 50%;
	right: 15px;
	font-family: "FontAwesome";
	line-height: 1;
	font-size: 14px;
	margin-top: -7px;
}
.panel-body {
	padding: 20px;
}
.c-data, .privacy {
	font-size: 0.9rem;
}
.privacy {
	max-height: 660px;
	overflow-y: auto;
}
.c-data h3 {
	font-size: 1.5rem;
}
.privacy h3 {
	font-size: 1.3rem;
}
.privacy h4 {
	font-size: 1.1rem;
	margin-top: 0.5em;
}
.c-data .fax, .c-data .tel {
	position: relative;
	font-size: 1.5rem;
	padding-left: 1.2em;
}
.c-data .tel:before {
	font-family: "FontAwesome";
	content: "\f098";
	position: absolute;
	color: #2d6db8;
	left: 0;
	bottom: -8px;
	font-size: 1.1em;
}
.c-data .fax:before {
	font-family: "FontAwesome";
	content: "\f1ac";
	position: absolute;
	color: #2d6db8;
	left: -1px;
	bottom: -5px;
}
.greeting {
	line-height: 2em;
	font-family: 'Noto Serif JP', serif;
}

.greeting h2 {
	font-size:px;
	margin-bottom:1em;
	font-weight:300;
	color:#111;
}

.greeting .sign {
	font-size:1.3em;
	font-weight:500;
	font-style:italic;
	text-align:right;
	padding-right:3em;
}

.philosophy p {
	font-size:20px;
	font-style:italic;
	font-weight:500;
	font-family: 'Noto Serif JP', serif;
}


.employee h2 {
	font-size:50px;
	margin-bottom:1em;
	font-weight:500;
	color:#111;
}


.employee h3 {
	font-size:30px;
	color:#111;
}

.employee ul {
    display: block;
    list-style-type: disc;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 10px;
}

.employee ul li {
	list-style:none;
	font-size:22px;
	font-family: 'Noto Serif JP', serif;
	font-style:italic;
	font-weight:500;
	color:#b81a1a;
	position:relative;
	line-height:2.2em;
}

.employee ul li:before {
    position: relative;
    content: "\f046";
    bottom: 1px;
    left: -5px;
    font-family: "FontAwesome";
    line-height: 1;
    font-size: 20px;
    color:#111;
}

.ask {
	text-align: center;
}

.ask2 {
}

.ask2 .tel,
.ask .tel {
	font-family: 'Open Sans', sans-serif;
	font-style:italic;
	font-size:38px;
	position:relative;
	padding-left:20px;
	color:#111;
	position:relative;
}

.ask2 .tel::before,
.ask .tel::before {
		position: relative;
	content: "\f098";
	top: -5px;
	left: -14px;
	font-family: "FontAwesome";
	line-height: 1;
	font-size: 22px;
	margin-top: 0px;
	color:#b00000;
}

.bring {
	max-width:400px;
	margin:auto;
}


.bring ul {
    display: block;
    list-style-type: disc;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 10px;
}

.bring ul li {
	list-style:none;
	border-bottom:1px solid #d83232;
	line-height:3em;
	font-size:1.1rem;
}


@media only screen and (max-width: 768px) {
.greeting {
	font-size: 1rem;
}

.greeting h2 {
	font-size:30px;
}

}

@media only screen and (max-width: 767px) {
.service-29381 .media-39912:before {
	top: -37px;
	left: 11%;
	width: 44%;
}
}

@media only screen and (max-width: 460px) {
.service-29381 .media-39912 img {
	width: 80% !important;
}
.service-29381 .media-39912:before {
	top: -26px;
	left: 3%;
	width: 70%;
}
}
.company-content .table > tbody > tr > th {
	width: 18em;
	letter-spacing: 0.5em;
	vertical-align: middle;
	border-bottom: 1px solid #E5E5E5;
	font-weight: normal;
}
.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td {
	padding: 11px;
	line-height: 1.8em;
	vertical-align: top;
	border-top: 1px solid #E5E5E5;
}
.company-content .table td {
	border-bottom: 1px solid #E5E5E5;
	letter-spacing: 0.08em;
}
th {
	text-align: left;
}

@media only screen and (max-width: 768px) {
	
	
.company-content .table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td {
		border: 0;
	}
	
.company-content .table > tbody > tr > th,.table > tbody > tr > th {
	width: 100%;
	border: none;
	display: block;
	font-weight: bold;
	border-top: 1px solid #E5E5E5;
}
	
	.company-content .table td,.table td {
		display: block;
		width: 100%;
		border: none;
}
}



.fig-one img {
	width: 100%;
	max-width: 1000px;
}

#banner-contact {
}

#banner-contact a {
	position: fixed;
	z-index: 10000;
	right:20px;
	top:176px;
		-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
		opacity: 0.9;
}

#banner-contact a:hover {
	opacity: 0.6;
}



#banner-contact-under {
	display:none;
}

@media only screen and (max-width: 991px) {
	
#banner-contact a {
	right:0;
	top:auto;
	bottom: 40px;
}
	
	#banner-contact a img {
		width: 40px;
}

}


@media only screen and (max-width: 767px) {

.site-footer {
	padding: 2em 0 4em;
}



	#banner-contact {
    position: relative;
}
#banner-contact a {
    display: none;
}


#banner-contact-under {
	display:block;
}

#banner-contact-under a {
    font-family: 'Noto Serif JP', serif;
    color: #FFFFFF;
    display: block;
    text-align: center;
    position: fixed;
    z-index: 10000;
    width: 100%;
    padding: 10px;
    left: 0px;
    bottom: 0px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 1;
    background-color: #1f65b7;
    text-indent: 5px;
}

#banner-contact-under a::before {
    position: relative;
    content: "\f0e0";
    bottom: 1px;
    left: -5px;
    font-family: "FontAwesome";
    line-height: 1;
    font-size: 14px;
}
}



.item .fade-right {
  -webkit-transition: all 0.7s;
	-moz-transition: all 0.7s;
	transition: all 0.7s;
  -webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
 transform: translate(0, 0);
  opacity: 1;
}
.item .fade-right.move {
  -webkit-transform: translate(-20px, 0);
		-ms-transform: translate(-20px, 0);
 transform: translate(-20px, 0);
  opacity: 0;
}


.item .fade-left {
  -webkit-transition: all 0.7s 0.5s;
	-moz-transition: all 0.7s 0.5s;
	transition: all 0.7s 0.5s;
  -webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
 transform: translate(0, 0);
  opacity: 1;
  
}
.item .fade-left.move {
  -webkit-transform: translate(20px, 0);
	-ms-transform: translate(20px, 0);
 transform: translate(20px, 0);
  opacity: 0;
}


@media only screen and (max-width: 1279px) {

.sec-about .fig1 img {
	width: 300px;
	text-align:right;
}
}



@media only screen and (max-width: 991px) {
	
	.item .fade-right.move {
  -webkit-transform: translate(0, 0);
		-ms-transform: translate(0, 0);
 transform: translate(0, 0);
		opacity: 1;
}

.item .fade-left.move {
  -webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
 transform: translate(0, 0);
	opacity: 1;
}


}

   #map {
      height: 206px; }
  .google-map {
      margin-bottom: 30px; }
   .google-map iframe {
      width: 100%; }																																							

.map {
}

.map .place {
	padding:8px 12px;
	background-color:#000;
	color:#FFF;
	border-radius:2px;
}



.title-ability {
	padding:2em;
}

.title-ability h3 {
	text-align:center;
	margin-bottom:1em;
	color:#b81a1a;
}


table.ability_table {
    border-collapse: separate;
    border-spacing: 1px;
    width: 100%;
}

table.ability_table th {
    background: #d83a3a;
    font-weight: 700;
    color:#FFF;
}

table.ability_table th, table.ability_table td {
    width: 25%;
    text-align: center;
    vertical-align: middle;
    padding: .7em 0.9em;
    font-size:0.9rem;
}

table.ability_table td {
	    background: #f5f5f5;
}



.comments-wrapper {
	display: none;
}

h2.archive-title {
	margin-bottom: 1.7em;
}

.entry.hentry {
	padding-bottom: 10px;
	margin-bottom: 20px;
	border-bottom: 1px dotted #CCC;
}


.blog-content img {
	max-width: 100%;
}


.sdgs .btn {
	position: relative;
}

.sdgs .btn::before {
    position: absolute;
    content: "\f08e";
    top: 12px;
    left: 15px;
    font-family: "FontAwesome";
    line-height: 1;
    font-size: 20px;
}


/* zoom */



.site-section.zoom {
	padding:10px;
	background:#ececec;
}


.site-section.zoom .zoom-container {
	width:100%;

}

.site-section.zoom h3 {
	font-size:1.3rem;
	text-align:center;
	font-family: "Noto Sans", sans-serif;
	font-style:normal;
	font-weight:700;
	line-height:1.4em;
}


.site-section.zoom h3 span {
	font-size:1rem;
	display:block;
	font-weight:500;
}


.zoom-note {
	padding:15px;
	background:#e0e0e0;
	border:1px solid #FFF;
	margin-bottom:26px;
}

.zoom-flow {
}

.zoom-flow ul {
	list-style-type:none!important;
	width:90%;
	padding-inline-start: 0;
	margin:auto;
}

.zoom-flow ul li {
	list-style-type:none!important;
	padding:25px 15px;
	margin-bottom:20px;
	background:#FFF;
	border:1px solid #d6d6d6;
	position:relative;
}

.zoom-flow ul li::before {
    content: '';
    background: url(../images/flow/bg_arrow.png) no-repeat;
    background-size: contain;
    width: 40px;
    height: 15px;
    position: absolute;
    bottom: -22px;
    left: 50%;
    margin-left: -20px;
    transform: translateY(-50%);
}

.zoom-flow ul li.last::before {
	background: none;
}

.site-section.zoom .zoom-container .zoom-header {
	width:100%;
}

.site-section.zoom .zoom-container .zoom-header img {
	width:100%;
}


.site-footer.zoom-footer {
	padding:20px;
}



/* iframe コンテンツ */
.fancybox-slide--iframe .fancybox-content {
	width  : 100%;
	height : 90%;
	max-width: 680px;
	max-height: 600px;
}



.btn-iframe {
color: #FFF;
    position: absolute;
    right: 264px;
    top: 82px;
    max-width: 200px;
}


#for-facility .btn-iframe {
    position: relative;
    right: 0px;
    top: 10px
}




.btn-iframe a {
	display: block;
	padding: 6px 15px;
	text-align: center;
	background: #156CDB;
	color: #FFF;
	border-radius: 2px;
	font-family: 'Noto Sans Japanese', sans-serif;
	font-size: 1rem;
	font-weight: normal;
	cursor: pointer;
cursor: hand;
}

#for-facility .btn-iframe a {
	max-width:200px;
}

@media screen and (max-width: 559px) {
	
	.btn-iframe {
    position: relative;
    right: 0;
    top: 0;
}
	
		.btn-iframe a {
		margin: 20px 0;
}
}

/*


.slider-classic {
    display: block;
    height: auto;
    overflow-y: hidden;
}

.flexslider {
    margin: 0;
    border: 0;
    display: block !important;
}

.slides, .slides > li, .flex-control-nav, .flex-direction-nav {
    margin: 0;
    padding: 0;
    list-style: none;
}

	
	.slider-classic .flexslider .slides > li {
    height: auto !important;
    padding: 200px 0 90px 0;
    min-height: auto !important;
}

.flexslider .slides > li {
    background-position-x: center;
    background-position-y: center;
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
}

.flexslider .slides > li .intro-wrapper {
    display: table;
    width: 100%;
    height: 100vh;
}


.color-overlay {
    background: #000000;
    opacity: 0.3;
}

.overlay, .color-overlay, .gradient-overlay {
    min-width: 100vw;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    bottom: 0;
    right: 0;
}

.flexslider .slides > li .intro-wrapper > .intro {
    display: table-cell;
    vertical-align: middle;
    position: relative;
    z-index: 1;
}

*/
/* txt */
.txt2 {
   font-size:1.2rem;
   font-weight:800;
}
.txtbold {
   font-weight:bold;
}
.tx-center {
   text-align:center
}
.tx-left {
   text-align:left;
}
.tx-right {
   text-align:right;
}
.tx_marker {
   background:linear-gradient(transparent 75%, #fff799 75%);
   font-weight:bold;
   display:inline;
}
/* color */

.red {
	color: #bc2d2d;
}
.green {
	color: #3b7a28;
}
.brown {
	color: #a67435;
}
.blue {
	color: #325f99;
}
.catchcopy {
    font-size: 2rem;
    font-family: 'Noto Sans Japanese';
    font-weight: 400;
    line-height: 1.3em;
    color: #E0625E;
}
.catchcopy2 {
    font-size: 2.2rem;
    font-family: 'Noto Sans Japanese';
    font-weight: 600;
    line-height: 1.3em;
    color: #E0625E;
}
.col_red {
	color:#F33;
}
.col_green {
	color: #1a9651 !important;
}
.col_blue {
	color: #06C;
}
.col_orange {
	color: #F06000;
}
.tx-70p  {
	font-size:70% !important;
	letter-spacing:normal;
}	
.tx-80p  {
	font-size:80% !important;
	letter-spacing:normal;
}
.tx-90p  {
	font-size:90% !important;
	letter-spacing:normal;
}
.tx100p    {
	font-size:100% !important;
	letter-spacing:normal;
}
.tx-110p {
    font-size: 110% !important;
	letter-spacing:normal;
}
.tx-120p    {
	font-size:120% !important;
	letter-spacing:normal;
}
.tx-130p    {
	font-size:130% !important;
	letter-spacing:normal;
}
.tx-140p    {
	font-size:140% !important;
	letter-spacing:normal;
	line-height:1.4em;
}
.tx-150p    {
	font-size:150% !important;
	letter-spacing:normal;
}
.tx-160p    {
	font-size:160% !important;
	letter-spacing:normal;
}
.tx-170p    {
	font-size:170% !important;
	letter-spacing:normal;
}
.tx-180p    {
	font-size:180% !important;
	letter-spacing:normal;
}
.tx-230p    {
	font-size:230% !important;
	letter-spacing:normal;
}
.tx-300p    {
	font-size:300% !important;
	letter-spacing:normal;
}
.mar0 {
    margin:0 auto;
}
.txsize1 {
   font-size:1.2rem;
   font-weight:800;
   color:#F33;
   text-align:center;
}
.txtstyle1 {
	font-size: 1.16em;
	font-weight: bold;
}
.txtstyle2 {
	font-size: 1.24em;
	font-weight: bold;
}
.ex {
    padding-left:1em;
    text-indent:-1em;
}

@media only screen and (max-width: 768px) {
.tx-230p {
    font-size: 120% !important;
    letter-spacing: nomal;
}
.tx-180p {
    font-size: 110% !important;
    letter-spacing: nomal;
}	


}


@media only screen and (max-width: 600px) {
.line-h2 {
    line-height: 1.5;
}
.tx-230p {
    font-size: 130% !important;
    letter-spacing: nomal;
}
.tx-180p,.tx-170p {
    font-size: 120% !important;
    letter-spacing: nomal;
}
.tx-160p,.tx-150p {
    font-size: 110% !important;
    letter-spacing: nomal;
}
.tx-140p,.tx-130p,.tx-120p,.tx-110p {
    font-size: 100% !important;
    letter-spacing: nomal;
}
}
/*===========================
spacer
===========================*/


.mt10 {
	margin-top:10px !important;
}
.mt20 {
	margin-top:20px !important;
}
.mt30 {
	margin-top:30px !important;
}
.mt40 {
	margin-top:40px !important;
}
.mt50 {
	margin-top:50px !important;
}
.mt60 {
	margin-top:60px !important;
}
.mt70 {
	margin-top:70px !important;
}
.mt80 {
	margin-top:80px !important;
}
.mt0{
	margin-top:0px !important;}
	
.mb10 {
	margin-bottom:10px !important;
}
.mb20 {
	margin-bottom:20px !important;
}
.mb30 {
	margin-bottom:30px !important;
}
.mb40 {
	margin-bottom:40px !important;
}
.mb50 {
	margin-bottom:50px !important;
}
.mb60 {
	margin-bottom:60px !important;
}
.mb70 {
	margin-bottom:70px !important;
}
.mb80 {
	margin-bottom:80px !important;
}
.mb0{
	margin-bottom:0px !important;}

@media screen and (max-width: 768px) {
.mt10,.mt20,.mt30 {
     margin-top:4% !important;
}
.mb10,.mb20,.mb30 {
     margin-bottom:4% !important;
}
.mt40,.mt50,.mt60 {
     margin-top:5% !important;
}
.mb40,.mb50,.mb60 {
     margin-bottom:5% !important;
}
.mt70,.mt80 {
     margin-top:8% !important;
}
.mb70,.mb80 {
     margin-bottom:8% !important;
}
}
ul,ul li,li,ul li::marker {
	list-style-type:none !important;		/*リストマーカー無しにする*/
}
ul li {
    position:relative;	
}
.check li, .for-business .check li {
    padding-left: 1.5em;
}
.box-sd {
    padding: 1.2rem;
    background-color: #fff;
    border: 1px solid #999;
    box-sizing: border-box;
}

@media only screen and (max-width: 768px) {
.box-sd {
    padding: 1.2rem;
    box-sizing: border-box;
}

}
ul.circle {
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;	
}
ul.circle li {
    padding: 0 0 0.5em 1.2em;
    margin-bottom: 0.7em;
    border-bottom: 1px dashed #CCC;
    width:90%;
    margin-right:2%;
    position: relative;
}
ul.circle li:before {
    position: absolute;
    content: "";
    width: 6px;
    height: 6px;
    background-color: #222;
    border-radius: 50%;
    left: 0.5em;
    margin-top: 0.6em;
}



ul.circle-2col {
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;	
}
ul.circle-2col li {
    padding: 0 0 0.5em 1.2em;
    margin-bottom: 0.7em;
    border-bottom: 1px dashed #CCC;
    width:45%;
    margin-right:2%;
    position: relative;
}
ul.circle-2col li:before {
    position: absolute;
    content: "";
    width: 6px;
    height: 6px;
    background-color: #222;
    border-radius: 50%;
    left: 0.5em;
    margin-top: 0.6em;
}

ul.circle-3col {
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;	
}
ul.circle-3col li {
    padding: 0 0 0.5em 1.2em;
    margin-bottom: 0.7em;
    border-bottom: 1px dashed #CCC;
    width:45%;
    margin-right:2%;
    position: relative;
}
ul.circle-3col li:before {
    position: absolute;
    content: "";
    width: 6px;
    height: 6px;
    background-color: #222;
    border-radius: 50%;
    left: 0.5em;
    margin-top: 0.6em;
}


@media only screen and (max-width: 768px) {
  ul.circle-2col li,ul.circle-3col li {
    width:90%;
}
}

.wd40{
   width:40% !important;
   margin:auto;
}
.wd50 {
  width:50% !important;
  margin:0 auto;
}
.wd60 {
  width:60% !important;
  margin:0 auto;
}
.wd70 {
  width:70% !important;
  margin:0 auto;
}
.wd80 {
  width:80% !important;
  margin:0 auto;
}
.wd85 {
  width:85% !important;
  margin:0 auto;
}
.wd90 {
  width:90% !important;
  margin:0 auto;
}
.wd95 {
  width:95% !important;
  margin:0 auto;
}

@media only screen and (max-width: 768px) {
.wd40,.wd50,.wd60,.wd70,.wd80,.wd85,.wd90,.wd95{
   width:100% !important;
   margin:auto;
}
}
.fa,.fa-users,.fa-hard-hat {
   position:relative;
}
.fa::before {
	position:absolute;
	top:-20px;
	left:-34px;
}
.fa-users::before {
	position:absolute;
	top:-20px;
	left:-46px;
}
.fa-hard-hat::before {
	position:absolute;
	top:-20px;
	left:-40px;
}
@media only screen and (max-width: 768px) {
.fa::before {
	position:absolute;
	top:-40px;
	left:10px;
}
.fa-users::before {
	position:absolute;
	top:-40px;
	left:20px;
}
.fa-hard-hat::before {
	position:absolute;
	top:-40px;
	left:10px;
}	

}
.pl0 {
   padding-left:0px !important;
}
.pr0 {
   padding-right:0px !important;
}
.pc-disp {
    display:block;
}
.sp-disp {
    display:none; 
}
@media only screen and (max-width: 990px) {
.pc-disp {
    display:none;
}
.sp-disp {
    display:block; 
}
}
ul {
    padding-left:0px;
}
.h3-ttl {
    text-align:left;
	font-weight:800;
	  border-left: solid 2px #7db4e6;/*左線*/
  border-bottom: solid 1px #d7d7d7;/*下線*/
  padding: 0.4em 0.5em;
}
@media only screen and (max-width: 990px) {
.site-logo img {
    max-width:230px;
}
.img-fluid {
    width: 100% !important;
    height: auto;
	margin-top:20px;
}
.h3-ttl {
    text-align: left;
	    font-size: 1.4rem;
}
.top-container .col-9 {
    margin-top:-10px;
}
.check li:before {
    font-family: "FontAwesome";
    content: "\f14a";
    position: absolute;
    color: #f13333;
    left: 0;
    top: 0;
    font-size: 1.1em;
    font-style: italic;
}
}
.tx-flex {
    text-align:center;
}
@media only screen and (max-width: 990px) {
.tx-flex {
    text-align:left;
}
}
@media (min-width: 769px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}
.company_data .data a {
    color: #333 !important;
    text-decoration: none;
}
.company_data .data a:hover {
    cursor: pointer;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
    -moz-opacity: 0.7;
    -khtml-opacity: 0.7;
    opacity: 0.7;
    zoom: 1;
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
}
.tel-a a {
    color:#fff !important;
	text-decoration:none;
}
.tel-a a:hover {
    cursor: pointer;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
    -moz-opacity: 0.7;
    -khtml-opacity: 0.7;
    opacity: 0.7;
    zoom: 1;
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
}

.footer-tel {
    color: rgba(255, 255, 255, 0.7) !important;
}
.footer-tel:hover{
    color: rgba(255, 255, 255, 0.2) !important;
}
.cnt-tel {
    color:#4B5245 !important;
}
.cnt-tel:hover{
    opacity:0.7  !important;
}
.ml-at {
    margin-left:auto;
}
.h4-ttl {
	font-size:1.3rem !important;
}