@charset "utf-8";
/* CSS Document */

/*
Theme Name: ecolab41_2021_ver
Author: ecolab41
Author URI: https://ecolab41.jp/
Version: 1.0
*/

@import url(css/post.css);


html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	border:0;
	font-family:inherit;
	font-style:inherit;
	font-weight:inherit;
	margin:0;
	outline:0;
	padding:0;
	vertical-align:baseline;
}

body, html{
	width:100%;
}

body {
	color: #080404;
	line-height: 1.6;
	font-size:15px;
	letter-spacing:1px;
	font-family: 游ゴシック体, 游ゴシック, YuGothic, メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Osaka, sans-serif;
	overflow-y: scroll;
}

p{
	margin-bottom: 10px;
}

a{
	text-decoration: none;
	color: #108831;
}

ol, ul {
	list-style:none;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

caption, th, td {
	font-weight:normal;
	text-align:left;
}

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

blockquote, q {
    quotes:none;
}

a {
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

img{
	max-width: 100%;
	height: auto;
	width /***/:auto;
	vertical-align:bottom;
}

a img {
	border: 0;
}

a:hover img,
a:active img{
	-moz-opacity:0.8;
	opacity:0.8;
	filter:alpha(opacity=80);
}

hr{
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select{
    vertical-align:middle;
}

/* パンくずリスト */

.bread_crumbs{
	padding-top:10px;
}

/* 注意 */

.red{
	color:#FF0000;
}

/* text */

.txt_r{
	text-align:right;
}

.txt_c{
	text-align:center;
}

/* alignleft */

.alignleft{
	float:left;
}

/* alignright */

.alignright{
	float:right;
}

/* navigation */

.navigation{
	padding-top:8px;
	overflow:hidden;
	border-top:2px dotted #CCCCCC;
	font-size:11px;
	clear:both;
}

.navigation .nav-previous,
.navigation .nav-next{
	width:45%;
}

.navigation .nav-previous{
	float:left;
}

.navigation .nav-next{
	float:right;
	text-align:right;
}


/* ===== 全体 ===== */

.wrap{
	width:960px;
	margin:40px auto 0 auto;
	overflow:hidden;
	box-sizing:border-box;
}

h2.page_title{
	margin-bottom:20px;
	padding-bottom:5px;
	font-size: 19px;
	font-weight:600;
}

h2.sub_title,
.news_box h3{
	margin-bottom:20px;
	padding-bottom:5px;
	border-bottom:5px solid #EEEEEE;
	font-size: 19px;
	font-weight:600;
}

h2.sub_title span,
.news_box h3 span{
	margin-left:20px;
	color:#717171;
	font-size:12px;
	font-weight:normal;
}

/* 配下 */

.page h3,
.single h3{
	margin-bottom:20px;
/* 	border-bottom:1px solid #C4C4C4; */
}

/* .page h3:after,
.single h3:after{
	margin:0 0 3px;
	content:"";
	display:block;
	border-bottom:2px solid #C4C4C4;
} */

#contents .des{
	margin-bottom:60px;
	overflow:hidden;
}
#contents .wpcf7 .form-name{
	display: flex;
	justify-content: space-between;
}
#contents .wpcf7 .form-name p{
	width: 50%;
}
#contents .wpcf7 .form-name input{
	width: calc(100% - 28px);
}
#contents .wpcf7 .mandatory{
	margin: 0 10px;
	padding: 5px;
	border-radius: 3px;
	background: #f2859d;
}
#contents .wpcf7 p .any{
	margin: 0 10px;
	padding: 5px;
	border-radius: 3px;
	background: #7fbee7;
}
#contents .wpcf7 p{
	padding: 10px;
}
#contents .wpcf7 p input{
	width: calc(100% - 26px);
	margin: 10px 0 0 0;
	padding: 13px;
	border: solid 1px #333;
	background: rgb(240, 240, 240);
	font-size:100%;
}
#contents .wpcf7 p input:focus{
 	border: solid 1px #108831;
	background:#fff;
 }
#contents .wpcf7 p .your-selection select{
	height: 35px;
	margin: 10px 0 0 0;
}
#contents .wpcf7 p .your-checkbox .wpcf7-list-item{
	display: flex;
	align-items: center;
	height: 15px;
	margin: 0 0 10px 0;
}
#contents .wpcf7 p .your-checkbox .first{
	margin: 10px 0;
}
#contents .wpcf7 p .your-checkbox .wpcf7-checkbox input[type=checkbox]:checked + .wpcf7-list-item-label{
	color: #7fbee7;
}
#contents .wpcf7 p .your-checkbox .wpcf7-list-item input{
	width: 15px;
	height: 15px;
	margin: 0;
}
#contents .wpcf7 p .your-checkbox .wpcf7-list-item span{
	vertical-align: middle;
	margin: 0 0 0 5px;
}
#contents .wpcf7 .est-checkbox .your-checkbox .wpcf7-checkbox{
	display: flex;
}
#contents .wpcf7 .est-checkbox .your-checkbox .wpcf7-list-item{
	margin: 10px 10px 10px 0;
}
#contents .wpcf7 p .your-message textarea{
	width: calc(100% - 20px);
	height: 54px;
	margin: 10px 0 0 0;
	padding: 13px;
	font-size:100%;
}
#contents .wpcf7 p .text-count{
	color: #999;
}
#contents .wpcf7 .form-privacy{
	text-align: center;
}
#contents .wpcf7 .form-privacy a:hover{
	opacity: 0.6;
}
#contents .wpcf7 .form-check{
	display: flex;
	align-items: center;
	justify-content: center;
}
#contents .wpcf7 .form-check .wpcf7-list-item-label{
	line-height: 25px;
}
#contents .wpcf7 .form-check .mandatory{
	height: 15px;
	line-height: 15px;
}
#contents .wpcf7 .form-check .your-acceptance .wpcf7-list-item label{
	display: flex;
	align-items: center;
	margin: 0;
}
#contents .wpcf7 .form-check .your-acceptance .wpcf7-list-item input{
	vertical-align: top;
	width: 15px;
	height: 15px;
	margin: 0 10px 0 0;
}
#contents .wpcf7 .form-submit{
	width: 300px;
	margin: auto;
}
#contents .wpcf7 .form-submit input{
	width: 100%;
	height: 100%;
	margin: 0;
	background: #50c8a7;
}
#contents .wpcf7 .form-submit input:hover{
	opacity: 0.6;
}
#contents .wpcf7 .form-submit span{
	margin: 0;
}
#contents .wpcf7 .est-radio .your-construction .wpcf7-radio {
	display: flex;
}
#contents .wpcf7 .est-radio .your-construction .wpcf7-radio .wpcf7-list-item {
	display: flex;
	align-items: center;
	white-space: nowrap;
	height: 15px;
	margin: 10px 10px 10px 0;
}
#contents .wpcf7 .est-radio .your-construction .wpcf7-radio .wpcf7-list-item input{
	width: 13px;
	margin: 0;
}
#contents .wpcf7 .est-radio .your-construction .wpcf7-radio input[type=radio]:checked + .wpcf7-list-item-label{
	color: #7fbee7;
}
@media screen and (max-width: 480px) {
	#contents .wpcf7 p{
		font-size: 11.2px;
	}
	#contents .wpcf7 p .your-selection select{
		height: 28px;
	}
	#contents .wpcf7 .form-contact .mandatory{
		margin: 0 5px;
	}
	#contents .wpcf7 .est-checkbox .your-checkbox .wpcf7-checkbox{
		display: block;
	}
}

/* ===== header ===== */

/* header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: fixed;
  z-index: 9999;
  box-sizing:border-box;
  width: 100%;
  height: 60px;
  background: white;
} */


header{
	display:flex;
	align-items: center;
	position: fixed;
	top: 0;
	z-index: 9999;
	width: 100%;
	height: 60px;
	box-sizing: border-box;
	background: #fff;
}


header .hamburger {
  display: block;
  position: absolute;
  z-index: 3;
  top: 20px;
  right: 15px;
  width: 42px;
  height: 42px;
  text-align: center;
  cursor: pointer;
}

header .hamburger span {
  display: block;
  position: absolute;
  left: 6px;
  width: 30px;
  height: 2px;
  background: #555;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

header .hamburger span:nth-child(1) {
  top: 0px;
}

header .hamburger span:nth-child(2) {
  top: 10px;
}

header .hamburger span:nth-child(3) {
  top: 20px;
}

header .hamburger.active span:nth-child(1) {
  top: 10px;
  left: 6px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

header .hamburger.active span:nth-child(2),
header .hamburger.active span:nth-child(3) {
  top: 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: 100%;
  height: 60px;
  margin: 0 auto;
  background: #fff;
}

.menu > li.menu__mega {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 60px;
  line-height: 60px;
  background: #fff;
  color: #111;
  font-size: 1vw;
  text-align: center;
}

.menu > li.menu__mega:hover {
  background: #fdfdfd;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.menu > li.menu__mega > a {
  display: block;
  position: relative;
  color: #111;
  font-weight: bold;
  width: 100%;
  backface-visibility: hidden;
}

.menu > li.menu__mega > a:hover {
  color: green;
}

.menu li.menu__mega .fa-external-link-alt {
	margin:0 0 0 10px;
}

.menu > li.menu__mega > a:hover::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  border-bottom: green 3px solid;
}

.menu .contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: 140px;
  height: 60px;
  line-height: 60px;
  margin: 0 20px;
  text-align: center;
}

.menu .contact a.btn-gradient-radius {
  display: inline-block;
  width: 100%;
  height: 40px;
  line-height: 40px;
  padding: 2px 20px;
  border-radius: 25px;
  text-decoration: none;
  color: #fff;
  font-weight:bold;
  background-image: linear-gradient(45deg, #049c3e 0%, #02a81e 100%);
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.menu .contact a.btn-gradient-radius:hover {
  background-image: linear-gradient(45deg, #05cf27 0%, #00b853 100%);
  border: none;
}

.menu li.logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 60px;
  margin: 0 15vw 0 0;
}

.menu li.logo img {
  max-width: none;
  height: 40px;
  padding: 10px;
}

.menu .flowbtn {
  border-radius: 50%;
  position: relative;
  display: inline-block;
  width: 27.5px;
  height: 27.5px;
  font-size: 17.5px;
  padding: 0;
  text-decoration: none;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  background-color: #444;
  color: #fff;
}

.menu .flowbtn:hover {
  text-decoration: none;
}

.menu .flowbtn i {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.menu .flowbtn.fl_insta:hover {
  background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
}

.menu .flowbtn.fl_yu:hover {
  background: linear-gradient(135deg, #f5515f 0%, #c9293c 100%);
}

.menu .flowbtn.fl_tw:hover {
  background: linear-gradient(135deg, #13f1fc 0%, #0470dc 100%);
}

.menu .flowbtn.fl_fb:hover {
  background: -webkit-gradient(linear, left top, left bottom, from(#5c80c6), color-stop(74%, #34528c));
  background: linear-gradient(to bottom, #5c80c6 0%, #34528c 74%);
}

.menu .sns {
  height: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 15px 0 0;
}

.menu .sns .sns-icon {
  height: 50px;
  line-height: 50px;
  margin: 17px 5px 0 5px;
}

ul.menu__second-level {
  visibility: hidden;
  opacity: 0;
  z-index: 1;
}

.menu > li .menu__second-level li {
  width: 100%;
}

.menu > li .menu__second-level li a {
  width: 100%;
}

.menu > li .menu__second-level li a:hover {
  background: #92da99;
  color: white !important;
}

li.menu__mega ul.menu__second-level {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: absolute;
  top: 60px;
  left: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  background: #f3f3f3;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

li.menu__mega:hover ul.menu__second-level {
  top: 60px;
  visibility: visible;
  opacity: 1;
  box-sizing:border-box;
}

li.menu__mega ul.menu__second-level.reverse {
  justify-content: flex-end;
}

li.menu__mega:hover ul.menu__second-level.reverse {
  justify-content: flex-end;
}

li.menu__mega ul.menu__second-level > li {
  width: 20%;
  border: none;
}

li.menu__mega ul.menu__second-level > li a {
  display: block;
  color: #111;
  font-weight: bold;
  width: 100%;
}

/* li.menu__mega ul.menu__second-level > li:nth-child(3n + 2) {
  margin: 0 1%;
} */

nav.globalMenuSp {
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: calc(100% - 80px);
  background: #fff;
  color: #222;
  text-align: center;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
  /* ボタン全体 */
  /* ボタンマウスホバー時のテキスト指定 */
  /* アイコンをど真ん中に */
  /* Instagramマウスホバー時 */
  /* YouTubeマウスホバー時 */
  /* Twitterマウスホバー時 */
  /* Facebookマウスホバー時 */
}

@media screen and (max-width: 1200px) {
	header .logo img {
      margin:0 0 0 15px;
    }
}

@media screen and (max-width: 480px) {
	header .logo img {
      width:150px;
	  margin: 0 0 0 10px;
    }
}

nav.globalMenuSp .submenu {
  display: none;
}

nav.globalMenuSp .menu__item__link {
  width: 100%;
}

nav.globalMenuSp .mainmenu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  margin: auto;
  padding: 0;
}

nav.globalMenuSp .mainmenu li {
  width: 100%;
  padding: 0;
  border-bottom: 1px solid #dfdfdf;
  background: white;
  list-style-type: none;
}

nav.globalMenuSp .mainmenu li .fa-external-link-alt {
	margin: 0 0 0 10px;
}

nav.globalMenuSp .mainmenu .mainmenu__item:hover {
  cursor: pointer;
}

nav.globalMenuSp .menu__item__link:after {
  content: "\f078";
  position: absolute;
  top: 48px;
  margin: 0 0 0 15px;
  color:grey;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

@media screen and (max-width: 768px) {
  nav.globalMenuSp .menu__item__link:after {
    top: 40px;
  }
}

nav.globalMenuSp .menu__item__link.selected:after {
  -webkit-transform: translateY(-50%) rotateX(180deg);
          transform: translateY(-50%) rotateX(180deg);
}

nav.globalMenuSp .mainmenu__item:nth-child(n + 3) {
  width: calc(50% - 1px);
}

nav.globalMenuSp .mainmenu__item:nth-child(n + 3):nth-child(2n-1) {
  margin-right: 1px;
}

nav.globalMenuSp .mainmenu__item:nth-child(n + 7) {
  width: 100%;
}

nav.globalMenuSp .mainmenu__item:nth-child(4), nav.globalMenuSp .mainmenu__item:nth-child(6) {
  border-left: 1px solid #dfdfdf;
}

nav.globalMenuSp ul li:last-child {
  padding: 0;
  border-bottom: none;
}

nav.globalMenuSp ul .mainmenu__item:hover {
  background: whitesmoke;
}

nav.globalMenuSp ul .submenu__item:hover {
  background: whitesmoke;
}

nav.globalMenuSp ul li a {
  display: inline-block;
  padding: 1.5em 0;
  color: #222;
  font-size: 1.5em;
  text-decoration: none;
}

@media screen and (max-width: 768px) {
  nav.globalMenuSp ul li a {
    font-size: 1.1em;
  }
}

nav.globalMenuSp .contact {
  padding: 5px 0;
}

nav.globalMenuSp .contact .contact-btn {
  width: 50%;
  max-width: 350px;
  margin: 10px 0;
  padding: 12px 25px;
  border: solid 1px #959595;
  color: #222;
}

nav.globalMenuSp .contact:hover {
  background: whitesmoke;
}

nav.globalMenuSp .contact a {
  text-align: center;
}

nav.globalMenuSp .flowbtn {
  display: inline-block;
  position: relative;
  width: 40px;
  height: 40px;
  padding: 0;
  border-radius: 50%;
  background: #444;
  color: #fff;
  font-size: 25px;
  text-decoration: none;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

nav.globalMenuSp .flowbtn:hover {
  text-decoration: none;
}

nav.globalMenuSp .flowbtn i {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

nav.globalMenuSp .flowbtn.fl_insta:hover {
  background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
}

nav.globalMenuSp .flowbtn.fl_yu:hover {
  background: linear-gradient(135deg, #f5515f 0%, #c9293c 100%);
}

nav.globalMenuSp .flowbtn.fl_tw:hover {
  background: linear-gradient(135deg, #13f1fc 0%, #0470dc 100%);
}

nav.globalMenuSp .flowbtn.fl_fb:hover {
  background: -webkit-gradient(linear, left top, left bottom, from(#5c80c6), color-stop(74%, #34528c));
  background: linear-gradient(to bottom, #5c80c6 0%, #34528c 74%);
}

nav.globalMenuSp .sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 20px 0;
}

nav.globalMenuSp .sns .sns-icon {
  margin: 0 10px;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
  top: 60px;
  -webkit-transform: translateY(0%);
          transform: translateY(0%);
}

/* ===== main_image ===== */

/* ===== main ===== */

main{
	min-height: calc(100vh - 200px);
	padding-top:60px;
	overflow:hidden;
}

.swiper-button-white{
	top: calc(50% + 30px) !important;
}
@media screen and (max-width: 768px) {
	.swiper-button-white{
		display: none !important;
	}
}
/* service */

#service{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin-bottom:50px;
}

#service h2{
	width:100%;
}

#service .service_list{
	display:inline-block;
	width:calc(25% - 10px);
}


#service .service_list p{
	margin-bottom:5px;
}

#service .service_list a h3{
	color:#111;
	font-size:1.1em;
	text-align:center;
}


#service .service_list a p{
	color:#111;
	font-size:0.75em;
	text-align:center;
}

/* concept */

#concept{
	margin-bottom:50px;
}

#concept h2.page_title{
	border-bottom:5px solid #EEEEEE;
}

#concept h2.page_title span{
	margin-left:20px;
	color:#717171;
	font-size:12px;
	font-weight:normal;
}

/* ===== contents ===== */

#contents{
	width:700px;
	float:left;
}
/* goods_list */

#works,#interview,#column{
    overflow: hidden;
}

#works h2 a,
#interview h2 a,
#column h2 a
{
	float:right;
}

#works .goods_list,
#interview .goods_list,
#column .goods_list{
    width:300px;
    margin-right:30px;
		margin-bottom:32px;
    float:left;
}

#works .goods_list:nth-of-type(3n),
#interview .goods_list:nth-of-type(3n),
#column .goods_list:nth-of-type(3n){
    margin-right: 0;
}

#works .goods_list .goods_img,
#interview .goods_list .goods_img,
#column .goods_list .goods_img{
    height:200px;
    margin-bottom: 8px;
    position: relative;
}

#works .goods_list .goods_date,
#interview .goods_list .goods_date,
#column .goods_list .goods_date{
    padding:4px 16px;
    position: absolute;
    bottom:0;
    right:0;
    background:#333333;
    color:#FFFFFF;
}

#works .goods_list .goods_head,
#interview .goods_list .goods_head,
#column .goods_list .goods_head{
	display: block;
}

/* news */

.news_box h3 a{
	float: right;
}

.news_box dl{
    width:470px;
	margin-bottom:30px;
	overflow:hidden;
    border-bottom:1px solid #DDDDDD;
    float:left;
}

.news_box dl:nth-of-type(2n){
    float:right;
}

.news_box dl dt{
		width:140px;
    margin-bottom:16px;
	float:left;
}

.news_box dl dd{
	width:322px;
	float:right;
}

/* ===== sidebar ===== */

#sidebar{
	width:220px;
	float:right;
}

#sidebar h3{
	font-weight:600;
}

#sidebar .widget{
	margin-bottom:20px;
}

#sidebar .acc{
	padding:10px;
	border:1px solid #DDDDDD;
}

#sidebar .acc p strong{
	font-weight:600;
}

#sidebar .acc p small span.underline{
	text-decoration:underline;
}

#sidebar .side_menu{
	margin-bottom:40px;
}

#sidebar .side_menu li{
	border-bottom:1px solid #C4C4C4;
}

#sidebar .side_menu li a{
	padding:10px 0;
	color:#77AF8E;
	display:block;
	font-size:13px;
	font-weight:600;
}

.applegate #sidebar .side_menu li.menu1 a,
.eifsjapan #sidebar .side_menu li.menu2 a,
.n-aqua #sidebar .side_menu li.menu3 a,
.lixil-sw #sidebar .side_menu li.menu4 a,
.lixil-qc #sidebar .side_menu li.menu5 a,
.ventilation #sidebar .side_menu li.menu6 a,
.estucowall #sidebar .side_menu li.menu7 a{
	border-bottom:3px solid #77AF8E;
}

#sidebar .side_menu li a span{
	margin-left:-5px;
	color:#C4C4C4;
	display:block;
	font-size:12px;
	font-weight:normal;
}

/* btn */

#sidebar div.btn a{
	padding:3px;
	background:#333333;
	color:#FFFFFF;
	display:block;
	text-align:center;
	font-size:11px;
}

/* f_acc */
#f_acc{
	margin:50px auto;
}
#f_acc ul{
    width:100%;
    overflow: hidden;
}

#f_acc ul li{
    width: 25%;
    float:left;
}

#f_acc ul li:nth-child(1){
    width: 20%;
}

@media screen and (max-width: 1000px) {
	#f_acc ul li:nth-child(1){
		width: 100%;
	}
}

#f_acc ul li:nth-child(2){
    width: 30%;
}

@media screen and (max-width: 1000px) {
	#f_acc ul li:nth-child(2){
		width: 100%;
	}
}

#f_acc ul li:nth-child(3){
    width: 30%;
}

@media screen and (max-width: 1000px) {
	#f_acc ul li:nth-child(3){
		width: 100%;
	}
}

#f_acc ul li:nth-child(4){
    width: 20%;
}

@media screen and (max-width: 1000px) {
	#f_acc ul li:nth-child(4){
		width: 100%;
	}
}

#f_acc ul li strong{
    display: block;
}

#f_acc ul li.btn a{
  width:100%;
	padding:15px 0 14px 32px;
	background:#108831 url(image/recruit-icon.png) no-repeat 20px center;
	color:#FFFFFF;
	display:block;
	text-align:center;
	font-size:13px;
  box-sizing: border-box;
}

/* ===== footer ===== */

footer{
	padding:30px 0;
	background:#333333;
	color:#FFFFFF;
	text-align:center;
}

footer ul.wrap{
	display:flex;
	flex-direction: column;
	justify-content:space-evenly;
	align-items:center;
	margin:auto;
}

footer li{
	margin-right: 5px;
	font-size: smaller;
}

footer a{
	color:#FFFFFF;
}

/* ===== 特徴 ===== */

img.item{
	margin-top:60px;
}

/* チャートレーダー */

#radar{
	margin-top:20px;
	margin-left:30px;
	float:right;
}

ul.lank_box li{
	margin-bottom:10px;
	clear:both;
	overflow:hidden;
}

ul.lank_box li span.lank{
	width:180px;
	color:#8A9998;
	background:url(image/lank.png) no-repeat right -3px;
	display:block;
	float:left;
}

ul.lank_box li span.lank2{
	background-position:right -23px;
}

ul.lank_box li span.lank3{
	background-position:right -43px;
}

ul.lank_box li span.lank4{
	background-position:right -63px;
}

ul.lank_box li span.lank5{
	background-position:right -83px;
}

.page ul.lank_box span.description{
	width:500px;
	float:right;
	font-size:15px;
}

.page dl.characteristic{
	margin-bottom:60px;
}

.page dl.characteristic dt{
	margin-bottom:20px;
/* 	color:#77AF8E; */
	font-weight: bold;
	font-size:20px;
}

.page dl.characteristic dd{
	font-size:15px;
}

.page dl.characteristic dt:after{
	content:"";
	width:180px;
	border-bottom:1px solid #C4C4C4;
	display:block;
}

.page dl.characteristic{
	min-height:180px;
}

.page dl.left{
	padding-left:220px;
}

.page dl.right{
	padding-right:220px;
}

.page dl.c1{
	background:url("https://ecolab41.jp/wp-content/themes/ecolab41-new/image/dannetu.png") no-repeat right 0;
	background-size:180px;
}

.page dl.c1_2{
	background:url("https://ecolab41.jp/wp-content/themes/ecolab41-new/image/dannetu.png") no-repeat right 0;
	background-size:180px;
}

.page dl.c2{
	background:url("https://ecolab41.jp/wp-content/themes/ecolab41-new/image/bouka.png") no-repeat;
	background-size:180px;
}

.page dl.c2_2{
	background:url("https://ecolab41.jp/wp-content/themes/ecolab41-new/image/sterilization.png") no-repeat;
	background-size:180px;
}

.page dl.c3{
	background:url("https://ecolab41.jp/wp-content/themes/ecolab41-new/image/bouon.png") no-repeat right 0;
	background-size:180px;
}

.page dl.c3_2{
	background:url("https://ecolab41.jp/wp-content/themes/ecolab41-new/image/design.png") no-repeat right 0;
	background-size:180px;
}

.page dl.c4{
	background:url("https://ecolab41.jp/wp-content/themes/ecolab41-new/image/keturo.png") no-repeat;
	background-size:180px;
}

.page dl.c4_2{
	background:url("https://ecolab41.jp/wp-content/themes/ecolab41-new/image/repair.png") no-repeat;
	background-size:180px;
}

.page dl.c5{
	background:url("https://ecolab41.jp/wp-content/themes/ecolab41-new/image/kenkou.png") no-repeat right 0;
	background-size:180px;
}

.page dl.c6{
	background:url("https://ecolab41.jp/wp-content/themes/ecolab41-new/image/eco.png") no-repeat;
	background-size:180px;
}

.page dl.c7{
	background:url("https://ecolab41.jp/wp-content/themes/ecolab41-new/image/kouhou.png") no-repeat right 0;
	background-size:180px;
}

/* ===== 会社概要 ===== */

.corporation .des dl{
	overflow: hidden;
	border-bottom:1px solid #CCCCCC;
}

.corporation .des dl dt{
	width:15%;
	float:left;
	clear: both;
}

.corporation .des dl dd{
	width:80%;
	float:right;
}

.corporation .des dl dd p:nth-of-type(2){
	margin-bottom: 0;
}

/* ===== contact ===== */

.contact .msg{
	padding:10px;
	border:2px solid #D90000;
	text-align:center;
	color:#D90000;
}

/* contact */

#contact dl{
	margin-bottom:40px;
	overflow:hidden;
}

#contact dl dt{
	width:120px;
	margin-bottom:10px;
	float:left;
	clear:both;
}

#contact dl dd{
	width:550px;
	margin-bottom:10px;
	float:right;
}

#contact dl dd input,
#contact dl dd textarea{
	padding:5px;
	border-radius:3px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border:1px solid #AAAAAA;
}

#contact dl dd textarea{
	width:80%;
	height:100px;
}

#contact dl dd span.example{
	color:#999999;
	font-size:11px;
}

#contact .submit_btn{
	text-align:center;
	clear:both;
}

#contact .submit_btn p{
	margin-bottom:20px;
}

#contact .submit_btn input[type="submit"],
#contact .submit_btn input[type="reset"]{
	width:150px;
	margin:0 20px;
	padding:10px 30px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border:none;
	background:#4C8F34;
	color:#FFFFFF;
	cursor:pointer;
	border-radius:3px;
}

#contact .submit_btn input[type="submit"]:hover{
	background:rgba(76, 143, 52, 0.8);
}

#contact .submit_btn input[type="reset"]{
	background:#666666;
}

#contact .submit_btn input[type="reset"]:hover{
	background:rgba(100, 100, 100, 0.8);
}

/* ===== single ===== */

.single #contents .post .entry_data{
    text-align: right;
    color:#666666;
}

/* archive */

.archive ul.list li{
	margin:0;
	padding:16px 0;
	list-style: none;
	border-bottom:1px dotted #CCCCCC;
	overflow: hidden;
}

.archive ul.list li span.entry-data{
	margin-right:16px;
}

/* ipad 横 */

/* iPhone 横 */
@media screen and (max-width: 1024px) {
	body{
		font-size:100%;
	}

	.wrap{
		width: 94%;
		padding:0 3%;
	}

	 #contents, #sidebar{
		width:94%;
		padding:0 3%;
		float: none;
	}

	h2.sub_title span,
	.news_box h3 span{
		margin-left:0;
		display: block;
	}

	.home h2.sub_title span,
	.home .news_box h3 span{
		margin-left:16px;
		display:inline;;
	}


/* 	header h1{
		width:35%;
		margin-top:-16px;
	}

	header .head_con ul li{
		width:40px;
		margin-left:4px;
	} */

	/* panel-btn */

	/* サークル部分 */

	#panel-btn{
		width: 40px;
		height: 40px;
		margin: 0 0 5px 0;
	}

	/* global_menu */

	#global_menu .wrap dl{
		width:96%;
		padding:0 2%;
		top:10%;
	}

	#global_menu .wrap dl dt{
		font-size:120%;
	}

	#global_menu .wrap dl dd li{
		font-size:100%;
		border-bottom:1px dotted #FFFFFF;
	}

	#global_menu .wrap dl dd li a{
		padding:6px 0;
	}

	.overlay {
		background: rgba(0, 0, 0, .8);
	}

	/* ===== contents ===== */

	/* service */

	#service{
		with:100%;
	}

	#service .service_list{
		width:46%;
		margin:0 2% 10px;
	}

	#service .service_list p{
		margin-bottom:5px;
	}

	#service .service_list p img{
		padding:4px;
		box-sizing: border-box;
	}

	/* goods_list */

	#works,
	#interview,
	#column{
		width:100%;
	}

	#works .goods_list,
	#interview .goods_list,
	#column .goods_list{
		width:100%;
		margin:0 0 32px;
		float:none;
	}

#works .goods_list .goods_img,
#interview .goods_list .goods_img,
#column .goods_list .goods_img{
 		height:auto;
}

	#works .goods_list .goods_img img,
	#interview .goods_list .goods_img img,
	#column .goods_list .goods_img img{
		width:100%;
	}

	/* news */

	.news_box dl{
		width:100%;
		margin-bottom:30px;
		float:none;
	}

	.news_box dl:nth-of-type(2n){
		float:none;
	}

	.news_box dl dt{
		width:30%;
	}

	.news_box dl dd{
		width:67%;
	}

	.news_box dl dd p:nth-of-type(2){
		display: none;
	}

	/* sidebar */

	#sidebar .side_menu li a{
		font-size:100%;
	}

	/* ===== 会社概要 ===== */

	.corporation .des dl dt{
		width:100%;
		margin-bottom:8px;
		float:none;
		font-size:110%;
	}

	.corporation .des dl dd{
		width:100%;
		float:none;
	}

	/* contact */

	#contact dl{
		width:100%;
	}

	#contact dl dt{
		width:100%;
		margin-bottom:0;
		float:none;
	}

	#contact dl dd{
		width:100%;
		float:none;
	}

	#contact dl dd input,
	#contact dl dd textarea{
		width:100%;
		box-sizing: border-box;
		font-size:100%;
	}

	#contact .submit_btn{
		text-align:left;
	}

	#contact .submit_btn input[type="submit"],
	#contact .submit_btn input[type="reset"]{
		width:80%;
		margin:0 auto 8px;
		text-align: center;
		display: block;
		font-size: 100%;
	}

	/* f_acc */

	#f_acc ul li{
		width: 100%;
		margin-bottom:16px;
		float:none;
	}

	#f_acc ul li:last-child{
		margin-bottom:0;
	}

	#f_acc ul li.btn a{
		padding:15px 0 14px;
		background:#333333 url(image/mail-icon.png) no-repeat 54px center;
		font-size:100%;
	}

	/* 製品紹介 */

	#radar{
		margin:20px auto 0;
		float:none;
		display: block;
		text-align: center;
	}

	ul.lank_box li{
		margin-bottom:16px;
		padding-bottom:16px;
		border-bottom:1px dotted #CCCCCC;
	}

	ul.lank_box li span.lank{
		background-position:right 2px;
		float:none;
		font-size:100%;
	}

	ul.lank_box li span.lank2{
		background-position:right -18px;
	}

	ul.lank_box li span.lank3{
		background-position:right -38px;
	}

	ul.lank_box li span.lank4{
		background-position:right -58px;
	}

	ul.lank_box li span.lank5{
		background-position:right -78px;
	}

	.page ul.lank_box span.description{
		width:100%;
		float:none;
		font-size:100%;
	}

	/* characteristic */

	.page dl.characteristic{
		margin-bottom: 24px;
	}

	.page dl.characteristic dd{
		font-size:100%;
	}

	.page dl.characteristic dt{
		border-bottom:1px solid #C4C4C4;
	}

	.page dl.characteristic dt:after{
		content:none;
	}

	.page dl.characteristic{
		min-height:inherit;
	}

	.page dl.left, .page dl.right{
		padding:0;
	}

	.page dl.c1, .page dl.c1_2, .page dl.c2, .page dl.c2_2, .page dl.c3, .page dl.c3_2, .page dl.c4, .page dl.c4_2, .page dl.c5, .page dl.c6, .page dl.c7{
		/*
		background-position:right bottom;
		background-size:120px;
		*/
		background:none;
	}

	/* archive */

	.archive ul.list li span.entry-data,
	.archive ul.list li a{
		margin-right:0;
		display: block;
	}
}
/* はてなブックマークアイコン作成 */
.fa-hatena:before {
  content: "B!";
  font-family: Verdana;
  font-weight: bold
}

/* シェアボタンを表示する箇所位置調整 */
.button-area {
  text-align: center;
  margin-bottom:2em;
}

/* タイトル表示設定 */
.button-area-title {
  text-align: center;
  padding:1em;
}

/* SNSシェアボタンの共通設定 */
.button-area li a {
  font-size: 16px;
  padding: 8px;
  display: block;
  text-align: center;
  text-decoration: none;
  color: #fff;
  border-radius: 4px; /* 丸み調整 */
  box-shadow: 0px 2px 4px 0 rgba(0,0,0,.26); /* シャドー作成 */
}

/* SNSごとの背景色 */
.twitter a {
	background-color: #55acee;
}
.facebook a{
	background-color: #3b5998;
}
.hatena a{
	background-color: #008fde;
}
.line a{
	background-color: #00B900;
}
.pocket a{
	background-color: #ea5a6c;
}

/* リスト「・」の削除 */
.button-area ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* ボタンの幅と余白を設定 */
.button-area li {
  float: left;
  width: 19%;
  margin: 0 0.5%;
}

.button-area  ul:after {
  display: block;
  clear: both;
  content: '';
}

/* ボタンにカーソルを合わせた時の表示設定 */
.button-area li a:hover {
  -ms-transform: translateY(4px);
  -webkit-transform: translateY(4px);
  transform: translateY(4px);
  box-shadow: none;
}


/* iPhone 縦 */
@media screen and (max-width: 640px) {
}


/*ここから 冨吉追記部分*/

#new{
	margin-bottom: 50px;
}

#works{
	display:flex;
	flex-wrap:wrap;
}

#works h2.sub_title{
	width:100%;
}
.goods-name{
	position:relative;
}
.category-tag{
	display:block;
	margin:10px 0 0 0;
}
.category-tag a {
	display:inline-block;
	margin:0 5px 5px 0;
	padding:2px 5px;
	border:1px solid #bbb;
	color:#666;
	font-size:0.85em;
}

.category-tag a:hover {
	background:#aae4aa;
	color:white;
}

@media screen and (min-width: 1024px) {
	header > .logo{
		display: none;
	}
	header .hamburger{
		display: none;
	}
}

#sidebar {
	display:none;
}

#contents{
    width: 100%;
}

@media screen and (max-width: 1024px) {
	header > ul.menu{
		display:none;
	}
}

#new .news_box{
  display: flex;
  flex-wrap: wrap;
  justify-content:space-between;
}

#new .news_box h3{
  width: 100%;
}

#nav-below{
  width: 100%;
}

/* インスタ投稿自動取得 */
.sb_instagram_header,#sbi_load{
	display :none !important;
}

.insta-wrapper{
	margin:0 0 50px 0;
}

.mobile-image{
	display: none;
}

@media screen and (max-width: 768px) {
	.mobile-image{
		display: inline;
	}
}

@media screen and (max-width: 768px) {
	.pc-image{
		display: none;
	}
}

.insta_btn2{
	color: #FFF;
	border-radius: 7px;
	position: relative;
	display: inline-block;
	height: 37.5px;
	width: 160px;
	text-align: center;
	font-size: 20px;
	line-height: 37.5px;
	background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
	background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
	overflow: hidden
	text-decoration:none;
	margin:20px auto;
}

.insta_btn2:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius:7px;
	background: -webkit-linear-gradient(15deg, #ffdb2c, rgb(249, 118, 76) 25%, rgba(255, 77, 64, 0) 50%) no-repeat;
	background: linear-gradient(15deg, #ffdb2c, rgb(249, 118, 76) 25%, rgba(255, 77, 64, 0) 50%) no-repeat;
}

.insta_btn2 .fa-instagram{
	font-size: 30px;
	position: relative;
	top: 4px;
}

.insta_btn2 span {
	display:inline-block;
	position: relative;
	transition: .5s;
	font-size: 0.8em;
}

.insta_btn2:hover span{
	-webkit-transform: rotateX(360deg);
	-ms-transform: rotateX(360deg);
	transform: rotateX(360deg);
}

.insta-btn-wrapper{
	text-align:center;
}

.consultation {
  position: relative;
  background: url("https://ecolab41.jp/wp-content/themes/ecolab41-new/image/chalk-board.jpg");
  background-size: cover;
  margin:40px 0 0 0;
  padding: 30px 0;
  color: #fff;
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E",
 "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

@media screen and (min-width: 1000px) {
	.consultation{
		margin:40px 0 120px 0;
	}
}

.consultation .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  width: 900px;
  height: 300px;
  margin: auto;
  padding: 0 0 50px 0;
  text-align: center;
}

@media screen and (max-width: 1000px) {
  .consultation .container {
    width: 90%;
    height: auto;
    padding: 0;
  }
}

.consultation .container h2 {
  width: 100%;
  margin: 15px 0;
  font-size: 2.5em;
  letter-spacing: 0.25em;
}

@media screen and (max-width: 480px) {
  .consultation .container h2 {
    font-size: 7vw;
    letter-spacing: 0.15em;
  }
}

.consultation .container .dot-text {
  padding-top: 0.4em;
  background-position: top left -6px;
  background-repeat: repeat-x;
  background-size: 1.3em 0.3em;
  background-image: radial-gradient(0.12em 0.12em at center center, #fff06d, #fff56c 100%, transparent);
}

.consultation .container p.sub {
  width: 100%;
  margin: 15px 0;
  font-weight: bold;
  font-size: 1.3em;
}

@media screen and (max-width: 480px) {
  .consultation .container p.sub {
    font-size: 4.25vw;
  }
}

.consultation .container .tel,
.consultation .container .address {
  margin: 15px 0;
}

.consultation .container .tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 30px 0 0;
  font-size: 3em;
  font-weight: bold;
}

.consultation .container .tel a{
  color: #fff !important;
}

@media screen and (max-width: 480px) {
  .consultation .container .tel {
    font-size: 2em;
  }
}

.consultation .container .tel .material-icons-outlined {
  margin: 0 10px 0 0;
  font-size: 1.05em;
}

@media screen and (max-width: 480px) {
  .consultation .container .tel .material-icons-outlined {
    font-size: 0.95em;
  }
}

.consultation .container .address {
  text-align: left;
}

.consultation .container .address p {
  margin: 2px 0;
  font-size: 0.9em;
}

.consultation .container .line {
  font-size: 0.65em;
}

.consultation .banner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  width: 1200px;
  margin: auto;
  padding: 20px 0 0 0;
  border-top: 2px dashed #fff;
}

@media screen and (max-width: 1300px) {
  .consultation .banner {
    width: 85%;
  }
}

@media screen and (min-width: 1000px) {
  .consultation .banner {
    position: absolute;
    top: 330px;
    left: 50%;
    transform: translate(-50%);
    -webkit-transform: translate(-50%);
    -ms-transform: translate(-50%);
  }
}

@media screen and (max-width: 1000px) {
  .consultation .banner {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    position: static;
    margin: 20px auto 0 auto;
  }
}

.consultation .banner a {
  width: 40%;
}

@media screen and (max-width: 1000px) {
  .consultation .banner a {
    width: 100%;
  }
}

.consultation .banner img {
  display: inline-block;
  width: 100%;
}

.consultation .banner a:hover img, a:active img{
	-moz-opacity: 1;
	opacity: 1;
}

@media screen and (max-width: 1000px) {
  .consultation .banner img {
    width: 100%;
    margin: 0 0 10px 0;
  }
  .consultation .banner img:nth-of-type(1) {
    margin: 0 0 10px 0;
  }
}

/* スライダー */
.swiper-wrapper .swiper-slide img {
	width: 100%;
}


#contents .des .btn-square-shadow {
  display: inline-block;
  margin: 30px 0 10px 0;
  padding: 12px 70px;
  color: #fff;
  background: #049c3e;
	font-size: 19px;
	font-weight: 700;
  text-align: center;
  border-radius: 5px;
  box-shadow: 0 5px #016621;
  cursor: pointer;
}
#contents .des .btn-square-shadow:active {
  /*ボタンを押したとき*/
  position: relative;
  top: 5px;
	box-shadow: none;
}

#contents .fa-file-alt {
	margin:0 4px 0 0;
}

@media screen and (max-width: 768px) {
	#contents .des .btn-square-shadow {
		width: 100%;
		padding: 12px 0;
		text-align:center;
	}
}

@media screen and (min-width: 1025px) {
	#contents .des .item{
		width: 40%;
		margin: 60px 0 0 30px;
	}
	#radar{
		width: 300px!important;
		height: 300px!important;
		margin: 40px 30px 0 0;
	}
}

.page dl.c1 dt{
	color: #eea35b;
}
.page dl.c2 dt{
	color: #e45050;
}
.page dl.c3 dt{
	color: #4b53ff;
}
.page dl.c4 dt{
	color: #6bf6ff;
}
.page dl.c5 dt{
	color: #fe74a8;
}
.page dl.c6 dt{
	color: #0bc04f;
}
.page dl.c7 dt{
	color: #a4704e;
}
.page dl.c2_2 dt{
	color: #7c51cc;
}
.page dl.c3_2 dt{
	color: #ffee5c;
}
.page dl.c4_2 dt{
	color: #858585;
}

.des h3 {
	font-weight: bold;
}

.page .des dl dt {
	font-weight: bold;
}

.lank {
  font-weight: bold;
}

h2.page-title {
	font-size: 18px;
}

/* 2023/07/04 追記 */
#service .service_list {
    border: 2px solid #111;
    text-align: center;
	width: calc(33.33% - 18px);
	margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
	#service .service_list {
		width: 100%;
	}
}

#service .service_list p {
    background: #111;
    color: #fff;
    font-weight: bold;
    padding: 4px 0;
    text-align: center;
}

#service .service_list h3 {
    font-size: 1.25rem;
    font-weight: bold;
    margin: 24px 8px;
}


#service .service_list img {
    width: 90%;
}


#service .service_list a {
    display: inline-block;
    background: #108831;
    margin: 24px auto;
    padding: 8px 60px;
    color: white;
    border-radius: 8px;
}

/* ここからstaffページ */
.grid {
	width: 80%;
	margin: 100px auto;
	padding: 0;
  }
  
  .grid li {
	list-style: none;
	width: 30%;
	height: auto;
	margin: 0 0 5% 0;
  }

@media screen and (max-width: 768px) {
	.grid li {
		list-style: none;
		width: 100%;
	}
}
  
.grid li a:hover {
opacity: 0.7;
}

.grid li img {
width: 100%;
}

.grid li p {
margin: 10px 0 0 0;
text-align: center;
font-weight: bold;
}

.grid li p span {
font-size: 12px;
font-weight: normal;
}

.grid .gutter-sizer {
width: 5%;
}

.profile {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
	-ms-flex-pack: justify;
		justify-content: space-between;
width: 60%;
margin: 100px auto 50px auto;
padding: 50px;
border: solid 1px #aaa;
-webkit-box-shadow: 2px 2px 4px gray;
		box-shadow: 2px 2px 4px gray;
border-radius: 10px;
}

@media screen and (max-width: 768px) {
	.profile {
		flex-direction: column;
	}
	.profile .profile-left, .profile .profile-right {
		width: 100% !important;
		}
}

.profile .profile-left, .profile .profile-right {
width: 48%;
}

.profile .profile-left img {
width: 100%;
height: auto;
}

.profile .profile-right {
padding: 30px 0;
}

.profile .profile-right .profile_job {
margin: 0;
font-size: 14px;
}

.profile .profile-right .profile_name {
margin: 0 0 30px 0;
padding: 10px 0 30px 0;
font-size: 25px;
font-weight: bold;
border-bottom: solid 3px #108831;
}

.back_btn {
	margin: 0 auto 100px auto;
	text-align: center;
}

.back_btn a {
	display: inline-block;
	background: #108831;
	padding: 8px 60px;
	color: white;
	border-radius: 8px;
}

.back_btn a:hover {
	opacity: 0.7;
}

#movie .youtube-wrapper {
	display: flex;
	justify-content: center;
	width: 100%;
}

#movie {
	margin-bottom: 80px;
}

@media screen and (max-width: 768px) {
	#movie .youtube-wrapper {
		aspect-ratio: 16 / 9;
	}
}


@media screen and (max-width: 768px) {
	#movie .youtube-wrapper iframe {
		width: 100%;
		height: 100%;
	  }	
}

#contacts_2024 {
	width: 65%;
	margin: 0 auto;
	padding: 100px 0;
  }
  
  @media screen and (max-width: 1024px) {
	#contacts_2024 {
	  width: 95%;
	}
  }
  
  #contacts_2024 .top_wrapper {
	padding: 0 0 30px 0;
  }
  
  #contacts_2024 .top_wrapper img {
	width: 100%;
	height: auto;
  }
  
  #contacts_2024 .top_wrapper h3 {
	margin: 30px 0 10px 0;
  }
  
  #contacts_2024 .top_wrapper p {
	font-size: 13px;
  }
  
  #contacts_2024 .top_wrapper a {
	color: #0d71bd;
	text-decoration: underline;
	font-size: 13px;
  }
  
  #contacts_2024 .top_wrapper a:hover {
	color: orange !important;
  }
  
  #contacts_2024 .top_wrapper_2 {
	padding: 0 0 30px 0;
	text-align: center;
  }
  
  #contacts_2024 .top_wrapper_2 .small_title {
	margin: 20px 0 0 0;
	color: #438877;
	letter-spacing: 5px;
	font-weight: bold;
  }
  
  #contacts_2024 .top_wrapper_2 .big_title {
	margin: 5px 0 20px 0;
	font-size: 50px;
	font-family: "Open Sans", sans-serif;
	font-weight: bold;
	color: #ffd13c;
  }
  
  #contacts_2024 .top_wrapper_2 .form_wrapper {
	padding: 50px;
	border: solid 5px #438877;
	color: #438877;
	background: #f8fffa;
	border-radius: 10px;
  }
  
  @media screen and (max-width: 480px) {
	#contacts_2024 .top_wrapper_2 .form_wrapper {
	  padding: 20px;
	}
  }
  
  #contacts_2024 .top_wrapper_2 .form_wrapper p {
	line-height: 2;
  }
  
  #contacts_2024 .top_wrapper_2 .form_wrapper .tel_number {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
	-webkit-box-pack: center;
		-ms-flex-pack: center;
			justify-content: center;
	font-size: 30px;
	font-weight: bold;
  }
  
  #contacts_2024 .top_wrapper_2 .form_wrapper .tel_number i {
	padding: 0 10px 0 0;
  }
  
  #contacts_2024 .main_form h2 {
	margin: 30px 0 20px 0;
	padding: 5px 0 5px 15px;
	border-left: 8px solid #438877;
	font-size: 20px;
  }
  
  #contacts_2024 .main_form p {
	margin: 30px 0;
  }
  
  #contacts_2024 .main_form .required_txt {
	padding: 4px 8px 3px;
	background: #ea5308;
	color: #fff;
	font-size: 12px;
  }
  
  @media screen and (max-width: 480px) {
	#contacts_2024 .main_form .required_txt {
	  margin: 0 0 0 10px;
	}
  }
  
  #contacts_2024 .main_form table {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #d5d5d5;
  }
  
  #contacts_2024 .main_form table p {
	margin: 0;
  }
  
  #contacts_2024 .main_form table tr {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
  }
  
  @media screen and (max-width: 480px) {
	#contacts_2024 .main_form table tr {
	  -webkit-box-orient: vertical;
	  -webkit-box-direction: normal;
		  -ms-flex-direction: column;
			  flex-direction: column;
	}
  }
  
  #contacts_2024 .main_form table tr th {
	width: 30%;
	padding: 20px 10px;
	text-align: left;
	font-size: 14px;
	background: #f8fffa;
	border: none;
	border-right: 1px solid #d5d5d5;
	border-bottom: 1px solid #d5d5d5;
  }
  
  @media screen and (max-width: 480px) {
	#contacts_2024 .main_form table tr th {
	  width: 100%;
	}
  }
  
  #contacts_2024 .main_form table tr td {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 70%;
	padding: 15px;
	border: none;
	border-bottom: 1px solid #d5d5d5;
  }
  
  @media screen and (max-width: 480px) {
	#contacts_2024 .main_form table tr td {
	  width: 100%;
	}
  }
  
  #contacts_2024 .main_form table tr td input {
	border: 1px solid #c8c8c8;
	border-radius: 3px;
  }
  
  #contacts_2024 .main_form table tr td textarea {
	border: 1px solid #c8c8c8;
	border-radius: 3px;
	width: calc(100% - 30px) !important;
  }
  
  #contacts_2024 .main_form table tr td select {
	padding: 8px 12px;
  }
  
  #contacts_2024 .main_form table tr .no_flex {
	display: block;
  }
  
  #contacts_2024 .main_form table tr .txt_input {
	padding: 8px;
	font-size: 14px;
  }
  
  #contacts_2024 .main_form table tr .short_input {
	width: 50%;
	padding: 8px;
	font-size: 14px;
  }
  
  #contacts_2024 .main_form table tr .mail_txt {
	margin: 0;
	padding: 10px 0 0 0;
	color: #358d04;
	font-weight: bold;
  }
  
  #contacts_2024 .main_form table tr .flex_txt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
	-webkit-box-align: start;
		-ms-flex-align: start;
			align-items: flex-start;
  }
  
  @media screen and (max-width: 480px) {
	#contacts_2024 .main_form table tr .flex_txt {
	  -webkit-box-pack: start;
		  -ms-flex-pack: start;
			  justify-content: start;
	}
  }
  
  #contacts_2024 .main_form table tr .detail_txt {
	margin: 0;
	padding: 5px 0 0 0;
	font-size: 11px;
  }
  
  #contacts_2024 .main_form table tr .radio_btn {
	font-size: 14px;
  }
  
  #contacts_2024 .main_form table tr .postcode_td {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
  }
  
  #contacts_2024 .main_form table tr .postcode_td p {
	padding: 0 10px 0 0;
  }
  
  #contacts_2024 .main_form .form_4 a {
	text-decoration: underline;
  }
  
  #contacts_2024 .main_form .form_4 .check_btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	text-align: center;
	padding: 12px 20px;
	background: #e2fce9;
	margin: 30px 0 0 0;
  }
  
  @media screen and (max-width: 480px) {
	#contacts_2024 .main_form .form_4 .check_btn {
	  margin: 0 0 0 10px;
	}
  }
  
  #contacts_2024 .main_form .form_4 .check_btn p {
	margin: 0 20px 0 0;
  }
  
  #contacts_2024 .main_form .form_4 .check_btn .check_parent {
	-webkit-box-flex: 1;
		-ms-flex-positive: 1;
			flex-grow: 1;
  }
  
  @media screen and (max-width: 480px) {
	#contacts_2024 .main_form .form_4 .check_btn .check_parent {
	  -webkit-box-flex: initial;
		  -ms-flex-positive: initial;
			  flex-grow: initial;
	}
  }
  
  #contacts_2024 .main_form .enter_btn {
	margin: 50px 0;
	text-align: center;
  }
  
  #contacts_2024 .main_form .enter_btn p > input {
	display: inline-block;
	padding: 25px 70px;
	background: #438877;
	color: #fff;
	font-size: 20px;
	border-radius: 50px;
	border: 1px !important;
  }
  
  #contacts_2024 .main_form .enter_btn p > input:hover {
	opacity: 0.7;
  }
  
  .fixed_right {
	position: fixed;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
		-ms-flex-direction: column;
			flex-direction: column;
	top: 150px;
	right: 0;
	text-align: center;
	z-index: 9999;
  }
  
  @media screen and (max-width: 480px) {
	.fixed_right {
	  display: none;
	}
  }
  
  .fixed_right a:hover {
	opacity: 0.8;
  }
  
  .fixed_right .right_btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
		-ms-flex-pack: center;
			justify-content: center;
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
	padding: 50px 15px;
	-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
			writing-mode: vertical-rl;
	color: #fff;
  }
  
  .fixed_right .right_btn i {
	padding: 10px 0 0 0;
  }
  
  .fixed_right .right_topBtn {
	background: #a5918a;
  }
  
  .fixed_right .right_bottomBtn {
	background: #8DA0D3;
  }
  
  .fixed_bottom {
	position: fixed;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 30px;
	background: #e0ddd8;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
	z-index: 9999;
  }
  
  @media screen and (max-width: 768px) {
	.fixed_bottom {
	  padding: 0;
	}
  }
  
  .fixed_bottom a:hover {
	opacity: 0.8;
  }
  
  .fixed_bottom .banner_tel {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
	-webkit-box-pack: center;
		-ms-flex-pack: center;
			justify-content: center;
  }
  
  @media screen and (max-width: 768px) {
	.fixed_bottom .banner_tel {
	  display: none;
	}
  }
  
  .fixed_bottom .banner_tel a {
	background: unset;
	color: unset;
	display: flex;
	align-items: center;
  }
  
  .fixed_bottom .banner_tel i {
	padding: 0 5px 0 0;
	font-size: 25px;
  }
  
  @media screen and (max-width: 1200px) {
	.fixed_bottom .banner_tel i {
	  font-size: 20px;
	}
  }
  
  .fixed_bottom .banner_tel p, .fixed_bottom .banner_tel a {
	font-size: 30px;
	font-family: "Open Sans", sans-serif;
	margin: 0;
  }
  
  @media screen and (max-width: 1200px) {
	.fixed_bottom .banner_tel p, .fixed_bottom .banner_tel a {
	  font-size: 20px;
	}
  }
  
  .fixed_bottom .banner_right {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
  }

  .fixed_bottom .banner_right a {
	box-sizing: border-box;

  }
  
  @media screen and (max-width: 768px) {
	.fixed_bottom .banner_right {
	  width: 100%;
	}
  }
  
  .fixed_bottom .banner_right .banner_btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
	width: 250px;
	height: 100%;
	background: #9e9b95;
	color: #fff;
	text-align: center;
  }
  
  @media screen and (max-width: 1200px) {
	.fixed_bottom .banner_right .banner_btn {
	  width: 150px;
	}
  }
  
  @media screen and (max-width: 768px) {
	.fixed_bottom .banner_right .banner_btn {
	  -webkit-box-orient: vertical;
	  -webkit-box-direction: normal;
		  -ms-flex-direction: column;
			  flex-direction: column;
	  -webkit-box-pack: justify;
		  -ms-flex-pack: justify;
			  justify-content: space-between;
	  width: calc(100% / 3);
	  height: 100px;
	  padding: 20px 0;
	  font-size: 30px;
	}
  }
  
  .fixed_bottom .banner_right .banner_btn i {
	padding: 0 0 0 15px;
  }
  
  @media screen and (max-width: 768px) {
	.fixed_bottom .banner_right .banner_btn i {
	  padding: 0;
	}
  }
  
  .fixed_bottom .banner_right .banner_btn p {
	font-size: 14px;
	-webkit-box-flex: 1;
		-ms-flex-positive: 1;
			flex-grow: 1;
	margin: 0;
  }
  
  @media screen and (max-width: 768px) {
	.fixed_bottom .banner_right .banner_btn p {
	  -webkit-box-flex: initial;
		  -ms-flex-positive: initial;
			  flex-grow: initial;
	}
  }
  
  .fixed_bottom .banner_right .banner_margin {
	margin: 0 30px;
  }
  
  @media screen and (max-width: 1024px) {
	.fixed_bottom .banner_right .banner_margin {
	  margin: 0 20px;
	}
  }
  
  @media screen and (max-width: 768px) {
	.fixed_bottom .banner_right .banner_margin {
	  margin: 0;
	  background: #ffd13c;
	}
  }
  
  @media screen and (max-width: 768px) {
	.fixed_bottom .banner_right .banner_b {
	  background: #a0c5e0;
	}
  }
  /*# sourceMappingURL=style.css.map */