/*
Theme Name: moforest

/*
緑			     #007e34

黄緑				#aacf45
薄緑				#EDF3EF

*/
/*******************************************
    ヘッダー
********************************************/
.head_menu {
  float: right;
}
.logo-wrap {
  padding-top: 15px;
  padding-right: 15px;
  padding-bottom: 15px;
  padding-left: 15px;
}
.h_logo {
  float: left;
}
.h_logo IMG {
  position: absolute;
  z-index: 100;
  max-width: 90px;
  width: 100%;
  top: 10px;
  left: 50px;
}
.h_logo A:hover IMG {
  opacity: 0.8;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
@media only screen and (max-width: 1200px) {
  .h_logo IMG {
    position: absolute;
    z-index: 100;
    max-width: 60px;
    width: 100%;
    top: 5px;
    left: 5px;
  }
}
/*-------------  検索フォーム  ---------------*/
input::placeholder {
  color: #aaaaaa;
}
.searchfield {
  font-size: 14px;
  font-size: 1.4rem;
  width: 75%;
  border: 1px solid #ccc;
  margin-top: 20px;
  margin-right: 0px;
  margin-left: 5px;
  padding-left: 10px;
  height: 32px;
}
.searchsubmit {
  font-family: FontAwesome;
  font-size: 15px;
  font-size: 1.5rem;
  padding-right: 15px;
  padding-left: 15px;
  /*
	padding-bottom: 5px;
	padding-top: 5px;
    */
  cursor: pointer;
  color: #ffffff;
  background-color: #007e34;
  border-width: 0px;
}
.searchsubmit:hover {
  opacity: .6;
}
/*-------------  電話番号リンク制御  ---------------*/
@media (min-width: 751px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
@media (max-width: 750px) {
  a[href*="tel:"] {
    text-decoration: underline;
  }
}
/*-----------------------  エフェクト delighter ----------------------------*/
.d_fadein.delighter {
  opacity: 0;
  transition: all 1s ease-in;
  transform: translate(0%, 0%)
}
.d_fadein.delighter.started {
  transition: all 1s ease-in .1s;
  opacity: 1;
  transform: translate(0%, 0%);
}
.d_fadeup.delighter {
  opacity: 0;
  transition: all 1.5s ease-out;
  transform: translate(0%, 20%)
}
.d_fadeup.delighter.started {
  transition: all 1.5s ease-out .1s;
  opacity: 1;
  transform: translate(0%, 0%);
}
.d_fadedown.delighter {
  opacity: 0;
  transition: all 1.2s ease-out;
  transform: translate(0%, -10%)
}
.d_fadedown.delighter.started {
  transition: all 1.2s ease-out .1s;
  opacity: 1;
  transform: translate(0%, 0%);
}
.d_fadein_text.delighter {
  opacity: 0;
  transition: all .7s ease;
  transform: translate(0%, 50%)
}
.d_fadein_text.delighter.started {
  transition: all .7s ease .1s;
  opacity: 1;
  transform: translate(0%, 0%);
}
.d_fadeleft.delighter {
  opacity: 0;
  transition: all 1.5s ease;
  transform: translate(-30%, 0%)
}
.d_fadeleft.delighter.started {
  transition: all 1.5s ease .1s;
  opacity: 1;
  transform: translate(0%, 0%);
}
.d_faderight.delighter {
  opacity: 0;
  transition: all 1.5s ease;
  transform: translate(30%, 0%)
}
.d_faderight.delighter.started {
  transition: all 1.5s ease .1s;
  opacity: 1;
  transform: translate(0%, 0%);
}
.opacity_0 {
  opacity: 0
}



/*******************************************
   サブページ共通ヘッダー
********************************************/
.main-visual {
	width: 100%;
	height: 400px;
	background-image: url(/wp-content/themes/mrforest/images/head_service.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	text-align: center;
}
.main-visual-service {
	width: 100%;
	height: 400px;
	background-image: url(/wp-content/themes/mrforest/images/head_service.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	text-align: center;
	background-position: center center;
}
.main-visual-company {
  width: 100%;
  height: 400px;
  background-image: url(/wp-content/themes/mrforest/images/head_company.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  text-align: center;
  background-position: center center;
}
.main-visual-recruit {
  width: 100%;
  height: 400px;
  background-image: url(/wp-content/themes/mrforest/images/head_recruit.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  text-align: center;
  background-position: center center;
}

.main-visual-contact {
  width: 100%;
  height: 400px;
  background-image: url(/wp-content/themes/mrforest/images/head_contact.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  text-align: center;
  background-position: center center;
}
.main-visual-blog {
	width: 100%;
	height: 250px;
	background-image: url(/wp-content/themes/mrforest/images/head_blog.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	text-align: center;
	background-position: right center;
}

@media (max-width: 1199px) {
  .main-visual-service,
.main-visual-company,
.main-visual-recruit,
.main-visual-contact, 	
.main-visual-blog
	{
    margin-top: 60px;
  }
}
.main-visual-block {
  padding-top: 0px;
}
.main-visual-linexxxx {
  background-color: rgba(0, 126, 52, 0.8);
  display: block;
  height: 200px;
}
/*
.main-visual-line H1 {
	background-color: rgba(0, 126, 52, 0.9);
	font-size: 38px;
	font-size: 3.8rem;
	color: #FFFFFF;
	width: 400px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
	letter-spacing: 0.4em;
	line-height: 2em;
	margin-right: auto;
	margin-left: auto;
	padding-top: 10px;
	padding-bottom: 8px;
	text-align: center;
	margin-top: 0px;
	margin-bottom: 0px;
}
*/
.main-visual-service H1,
.main-visual-company H1,
.main-visual-contact H1,
.main-visual-recruit H1
{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);	
	width: 400px;
	font-size: 48px;
	font-size: 4.8rem;
	letter-spacing: 0.3em;
	word-spacing: 0.05em;
	margin-top: 0px;
	display: block;
	text-align: center;
	margin-bottom: 0px;
	font-weight: bold!important;
	/*
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック Medium", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	*/
	background-color: rgba(0,0,0,0.20);
	padding-top: 11px;
	padding-right: 10px;
	padding-bottom: 9px;
	padding-left: 20px;
	border: 2px solid #ffffff;
	color: #ffffff;
	margin-right: 0px;
	margin-left: 0px;
}
@media (max-width: 767px) {
.main-visual-service H1,
.main-visual-company H1,
.main-visual-contact H1,
.main-visual-recruit H1
{
	width: 200px;
	font-size: 32px;
	font-size: 3.2rem;
	letter-spacing: 0.2em;
	word-spacing: 0.05em;
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 20px;
}
}
.main-visual-line H1 {
	font-size: 38px;
	font-size: 3.8rem;
	color: #FFFFFF;
	width: 400px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
	letter-spacing: 0.4em;
	line-height: 2em;
	margin-right: auto;
	margin-left: auto;
	padding-top: 10px;
	padding-bottom: 8px;
	text-align: center;
	margin-top: 0px;
	margin-bottom: 0px;
}

.main-visual-blog H1{
	background-color: transparent;
	font-size: 32px;
	font-size: 3.2rem;
	color: #ffffff;
	width: 500px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
	letter-spacing: 0.1em;
	line-height: 2em;
	margin-right: auto;
	margin-left: auto;
	padding-top: 15px;
	padding-bottom: 15px;
	text-shadow: 1px 1px 1px #848484;
}
@media (max-width: 1199px) {
/*	
.main-visual-blog {
	width: 100%;
	height: 200px;
	background-image: url(/wp-content/themes/mrforest/images/head_blog2.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	text-align: center;
	background-position: right bottom;
	margin-top: 60px;
}
	*/
}
@media (max-width: 767px) {
  .main-visual-line H1 {
    left: 0;
    right: 0;
    transform: translateY(-50%) translateX(0%);
    -webkit- transform: translateY(-50%) translateX(0%);
    font-size: 32px;
    font-size: 3.2rem;
    width: 90%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 0px;
    padding-left: 0px;
    text-align: center;
  }
	
}
.main-visual-service P {
  font-size: 18px;
  font-size: 1.8rem;
  color: #FFFFFF;
  background-color: rgba(170, 207, 69, 0.8);
  width: 500px;
}
/**  メインビジュアル下 テキストエリア  **/
.main-textarea {
  margin-top: 90px;
  padding-left: 15px;
  padding-right: 15px;
}
@media (max-width: 500px) {
  .main-textarea {
    margin-top: 60px;
    margin-bottom: -60px;
  }
  .main-textarea H3 {
    font-size: 22px;
    font-size: 2.2rem;
  }
}

/*******************************************
    ブログページ加工
********************************************/
#blog-wrapper {
	/*
	background-color: #EDF3EF;
	*/
}
#blog_main_wrap {
	margin-top: 120px;
	margin-bottom: 120px;
}
#blog-wrapper .container {
}
#blog_main_wrap .content-single-title H1 {
	font-size: 40px;
	font-size: 4.0rem;
	margin-top: 0px;
	font-weight: bold;
	border-bottom: 1px solid #636363;
	padding-bottom: 10px;
}
#blog_main_wrap .entry-content IMG {
	margin-top: 10px;
	margin-bottom: 10px;
}
#right-sidebar H2 {
	font-size: 22px;
	font-size: 2.2rem;
	margin-bottom: 1em;
	font-weight: normal;
	margin-top: 15px;
	border-bottom: 1px solid #e4e4e4;
	position: relative;
}
#right-sidebar H2::after {
	content: "";
	background-color: #007e34;
	height: 3px;
	width: 50px;
	display: inline-block;
	position: absolute;
	bottom: -1px;
	left: 0;

}

/*------------- 個別ページ加工 -----------------*/
.single_date {
	background-color: #aacf45;
	display: block;
	margin-right: 20px;
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
	margin-bottom: 30px;
	width: 200px;
}
.single_date  .sd_year{
	font-size: 32px;
	font-size: 3.2rem;
	line-height: 1.2;
}
.single_date  .sd_md {
	line-height: 1.2;	
	font-size: 64px;
	font-size: 6.4rem;
	
}
.single_date SPAN{
	font-size: 50px;
	font-size: 5.0rem;
	margin-right: 10px;
	margin-left: 10px;
}

.single_date .sd_category{}

/*-----------------   記事一覧 ------------------------*/
.postlist {
  list-style-type: none;
  padding-left: 0px;
  z-index: 10;
  margin-top: 0px;
  margin-left: 0px;
  text-align: left;
}
.postlist .row {
	overflow: hidden;
	padding-top: 22px;
	padding-bottom: 22px;
	line-height: 1.5em;
	z-index: 100;
	border-bottom: 1px dotted #ddd;
}

.postlist P {
	margin-bottom: 15px!important;
}
.postlist .row:first-child {
	border-top: 1px dotted #ddd;
}
.postlist .post-categories {
	list-style-type: none;
	margin-left: 0px;
}

.postlist .post-categories LI {
 background-color: #aacf45;
  color: #FFFFFF;
  padding-top: 2px;
  padding-bottom: 2px;
  padding-left: 10px;
  padding-right: 10px;
  font-size: 14px;
  font-size: 1.4rem;
  margin-right: 5px;
  margin-left: 0px;
  letter-spacing: 0.05em;
  line-height: 1.4em;
  display: inline-block;
	
}
.postlist H2 {
	margin-top: 10px;
}
.pl_category {
  background-color: #aacf45;
  color: #FFFFFF;
  padding-top: 2px;
  padding-bottom: 2px;
  padding-left: 15px;
  padding-right: 15px;
  font-size: 14px;
  font-size: 1.4rem;
  margin-right: 40px;
  letter-spacing: 0.05em;
  margin-left: 50px;
  line-height: 1.4em;
  display: inline-block;
}
.pl_date {
  display: inline-block;
  font-size: 16px;
  font-size: 1.6rem;
  margin-right: 10px;
  width: 200px;
}
.postlist a {
  color: #121212;
  text-decoration: none;
}
.postlist a:hover {
  color: #aacf45;
}
.pl_areatext {
  display: inline-block;
  margin-left: 50px;
  margin-top: 5px;
  margin-bottom: 5px;
}
.pl_text {
  margin-top: 10px;
}
.pl_img{
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}
.pl_img IMG{
	width: 240px;
	height: 150px;
	object-fit: cover;
}
.postlist .understrap-read-more-link {
  display: none;
}
@media (max-width: 767px) {
  .whatsnew {
    margin-left: 10px;
  }
  .wn-column H2 {
    margin-left: 10px;
  }
  .wn_category {
    margin-right: 20px;
    margin-left: 10px;
  }
  .wn_areatext {
    margin-left: 10px;
    margin-top: 10px;
    margin-right: 10px;
  }
.pl_img{
	margin-bottom: 20px;
}	
}
@media (max-width: 500px) {
.pl_img IMG{
	width: 100%;
	height: auto;
}
}

/*******************************************
    お問合せ
********************************************/
.contact_area_wrap {
  background-color: #FFFFFF !important;
  padding-top: 60px;
  padding-right: 60px;
  padding-bottom: 20px;
  padding-left: 60px;
}
.contact_area { /*
	background-color: #aacf45;
	*/
  padding-top: 60px;
  padding-bottom: 90px;
}
.contact_area_tel {
  font-size: 36px;
  font-size: 3.6rem;
  border-right: 1px solid #333333;
  text-align: center;
  padding-top: 15px;
  padding-bottom: 5px;
}
.contact_area_tel P{
	font-size: 18px;
	font-size: 1.8rem;
	padding-bottom: 10px;
}
@media (max-width: 500px) {
.contact_area_tel P{
	font-size: 15px;
	font-size: 1.5rem;
	padding-bottom: 10px;
}
}
.contact_area_mail {
  padding-top: 15px;
  padding-bottom: 5px;
  text-align: center;
}
.contact_area_tel IMG {
  width: 32px;
  vertical-align: -1px;
  margin-right: 3px;
  margin-left: -8px;
}
.contact_area_mail IMG {
  width: 45px;
  vertical-align: -7px;
  margin-right: 3px;
  margin-left: -5px;
}
.info-btn_mail a {
  font-size: 30px;
  font-size: 3.0rem;
  background-color: #ffffff;
  border: 1px solid #333333;
  color: #333333;
  padding-top: 8px;
  padding-right: 15px;
  padding-bottom: 8px;
  padding-left: 15px;
  text-decoration: none;
  position: relative;
  line-height: 1.4em;
}
.info-btn_mail a:hover {
  background-color: #aacf45;
  border: 1px solid #333333;
  color: #333333;
}
.info-btn_mail A I {
  margin-left: 15px;
  padding-right: 15px;
}
.info-btn_mail a:hover I {
  margin-left: 20px;
  color: #ffffff;
  padding-right: 10px;
}
@media (max-width: 991px) {
  .contact_area_tel {
    border-right: 0px solid #333333;
  }
  .contact_area_mail {
    margin-top: 33px;
  }
}
@media (max-width: 500px) {
  .contact_area_wrap {
    padding-top: 20px;
    padding-right: 20px;
    padding-bottom: 20px;
    padding-left: 20px;
  }
  .contact_area_tel {
    font-size: 25px;
    font-size: 2.5rem;
  }
  .info-btn_mail a {
    font-size: 22px;
    font-size: 2.2rem;
    padding-right: 28px;
    padding-left: 28px;
  }
  .contact_area_tel IMG {
    width: 25px;
    vertical-align: -1px;
    margin-right: 3px;
    margin-left: -8px;
  }
  .contact_area_mail IMG {
    width: 35px;
    vertical-align: -5px;
    margin-right: 3px;
    margin-left: -5px;
  }
}
/*******************************************
    一覧表示加工
********************************************/
article.type-post {}
.et-content-wrap {
  background-color: #EFF1ED;
  padding-top: 30px;
  padding-right: 30px;
  padding-bottom: 30px;
  padding-left: 30px;
  margin-bottom: 50px;
  min-height: 260px;
  position: relative;
}
/*  category一覧  */
.et-content .et-head {
  border-bottom: 1px solid #C8D0DD;
  margin-bottom: 15px;
}
.et-content UL {
  list-style-type: none;
  margin-left: 0px;
}
.et-content UL LI {
  display: inline-block;
  margin-right: 20px;
}
.et-content UL LI a {
  letter-spacing: 0.05em;
  background-color: #193e84;
  padding-left: 15px;
  padding-right: 15px;
  line-height: 1.4em;
  padding-top: 4px;
  padding-bottom: 4px;
  color: #FFFFFF;
  font-size: 13px;
  font-size: 1.3rem;
  text-decoration: none;
}
/* 'ca●'には、親カテゴリーのIDが入る。親が無いカテゴリーは 'ca0'となるので、非表示とする */
.et-content UL LI.ca0 {
  display: none;
}
/* 'ca●'には、親カテゴリーのIDが入る。親が無いカテゴリーは 'ca0'となるので、非表示とする */
.et-content UL LI.ca7 a {
  background-color: #193e84;
}
.et-content UL LI.ca6 a {
  background-color: #197485;
}
.et-content UL LI.ca2 a {
  background-color: #197485;
}
.et-content UL LI a:hover {
  background-color: #BE6E46;
}
.et-content H2 {
  margin-bottom: 10px;
  margin-top: 0px;
}
.et-content .entry-content {
  padding-bottom: 20px;
}
@media (max-width: 991px) {
  /* moreを下げる */
  .et-content .entry-content {
    padding-bottom: 20px;
  }
}
@media (max-width: 767px) {
  .et-content H2 {
    font-size: 26px;
    font-size: 2.6rem;
    margin-top: 20px;
    text-align: center;
  }
  .et-content-wrap {
    background-color: #E9EBEF;
    padding-top: 20px;
    padding-right: 20px;
    padding-bottom: 20px;
    padding-left: 20px;
    margin-bottom: 30px;
  }
}
.et-content H2 a {
  text-decoration: none;
  color: #131313;
  position: relative;
  z-index: 10;
}
.et-content H2 a:hover {
  color: #BE6E46;
  z-index: 10;
}
.et-content H2 A::after {
  position: absolute;
  bottom: -2px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background-color: #BE6E46;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;
  z-index: 1;
}
.et-content H2 A:hover::after {
  transform: scale(1, 1);
  z-index: 1;
}
.et-conten-date {
  margin-right: 20px;
}
.et-content-img {
  width: 200px;
  height: 200px;
  margin: 0 auto;
  overflow: hidden;
  cursor: pointer;
}
.et-content-img A img {
  width: 100%;
  transition-duration: 0.5s;
}
.et-content-img A:hover img {
  transform: scale(1.2);
  transition-duration: 0.2s;
}
/*---  一覧ボタン（共通）  -----*/
.info-btn {
  margin-top: 30px;
}
.info-btn a {
  font-size: 16px;
  font-size: 1.6rem;
  background-color: #007e34;
  color: #ffffff;
  padding-top: 10px;
  padding-right: 20px;
  padding-bottom: 10px;
  padding-left: 20px;
  border: 1px solid #005925;
  text-decoration: none;
  position: relative;
  line-height: 1.4em;
}
.info-btn a:hover {
  border: 1px solid #007e34;
  background-color: #aacf45;
  color: #005925;
}
.info-btn A I {
  margin-left: 15px;
  padding-right: 15px;
}
.info-btn a:hover I {
  margin-left: 20px;
  color: #005925;
  padding-right: 10px;
}
.info-btn2 a {
  font-size: 16px;
  font-size: 1.6rem;
  background-color: #aacf45;
  border: 1px solid #007e34;
  color: #005925;
  padding-top: 10px;
  padding-right: 20px;
  padding-bottom: 10px;
  padding-left: 20px;
  text-decoration: none;
  position: relative;
  line-height: 1.4em;
}
.info-btn2 a:hover {
  background-color: #007e34;
  border: 1px solid #aacf45;
  color: #ffffff;
}
.info-btn2 A I {
  margin-left: 15px;
  padding-right: 15px;
}
.info-btn2 a:hover I {
  margin-left: 20px;
  color: #ffffff;
  padding-right: 10px;
}
/* --------------    IE11ハック ----------------*/
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, /* IE11 にのみ適用される */ .info-btn a::after {
    top: 48%;
    height: 18px;
  }
  .info-btn a:hover {
    border: 1px solid #2F487C;
    margin-top: -5px;
  }
  .info-btn a:hover:after {
    top: 48%;
    right: 16px;
    width: 50px;
    height: 18px;
    margin: -9px 0 0;
  }
}
.more-btn {
  text-align: right;
  position: absolute;
  right: 15px;
  bottom: -15px;
}
.more-btn a {
  border: 0px solid #2F487C;
  font-size: 13px;
  font-size: 1.3rem;
  color: #2F487C;
  padding-top: 5px;
  padding-right: 50px;
  padding-bottom: 5px;
  padding-left: 20px;
  text-decoration: none;
  position: relative;
  background-color: #FFFFFF;
}
.more-btn a:hover {
  background-color: #2F487C;
  color: #FFFFFF;
}
.more-btn a::after {
  content: "";
  display: block;
  position: absolute;
  top: 48%;
  right: 20px;
  width: 50px;
  height: 10px;
  margin: -5px 0 0;
  background-image: url(images/ya1.svg);
  background-repeat: no-repeat;
  background-position: right center;
}
/* --------------    IE11ハック ----------------*/
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, /* IE11 にのみ適用される */ .more-btn a::after {
    top: 45%;
    height: 12px;
  }
}
.more-btn a:hover:after {
  transition-timing-function: ease;
  right: 16px;
  transition-property: right;
  transition-duration: 0.3s;
  background-image: url(images/ya1hover.svg);
}
/*******************************************
    サイドバー（今回不要）
********************************************/
/* サイドバーデザイン */
#right-sidebar aside {
  padding-top: 20px;
  padding-bottom: 20px;
  margin-bottom: 20px;
  padding-right: 20px;
  padding-left: 20px;
}
@media (max-width: 991px) {
  #right-sidebar aside {
    margin-left: 0px;
  }
}
#right-sidebar H3 {
  color: #ffffff;
  padding-top: 5px;
  padding-right: 10px;
  padding-bottom: 5px;
  padding-left: 10px;
  margin-top: 1px;
  border-width: 0px;
  font-weight: normal;
  margin-left: 0px;
}
/* サイドメニュー */
#menu-sidemenu {
  list-style-type: none;
  list-style-position: inside;
  padding-left: 0px;
}
#menu-sidemenu LI {
  margin-top: 5px;
  margin-bottom: 15px;
  border-bottom: 1px solid #efefef;
  background-color: #FFFFFF;
  margin-right: 10px;
  margin-left: 10px;
  height: 40px;
  -webkit-box-shadow: 1px 1px 2px 1px rgba(0, 0, 0, 0.05);
  box-shadow: 1px 1px 2px 1px rgba(0, 0, 0, 0.05);
}
#menu-sidemenu LI a {
  color: #262626;
}
#menu-sidemenu LI a {
  overflow: hidden;
  display: block;
  height: 40px;
  padding-top: 8px;
  padding-left: 8px;
}
#menu-sidemenu LI a:hover {
  height: 40px;
  color: #ffffff !important;
  display: block;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-decoration: none;
  background-color: #2D579A;
}
#menu-sidemenu LI a:hover .color_icon_1 {
  color: #5D89CF;
}
/*******************************************
    フッター求人
********************************************/
#footer_recruit_wrap {
  background-color: #EDF3EF;
  padding-bottom: 120px;
  margin-top: 0px;
  padding-top: 60px;
  padding-right: 60px;
  padding-left: 60px;
}
#footer_recruit img {
  max-width: 800px;
}
#footer_recruit H2 {
  font-size: 40px;
  font-size: 4.0rem;
}
#footer_recruit_text {
  padding-top: 0px;
  padding-right: 30px;
  padding-bottom: 30px;
  padding-left: 30px;
  text-align: center;
}
@media (max-width: 991px) {
  #footer_recruit_wrap {
    background-color: #EDF3EF;
    padding-bottom: 150px;
    margin-top: 0px;
    padding-top: 30px;
    padding-right: 0px;
    padding-left: 0px;
  }
}
@media (max-width: 500px) {
  #footer_recruit_text {
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 30px;
    padding-left: 0px;
    margin-bottom: 30px;
  }
  #footer_recruit_text H2xx {
    font-size: clamp(16px, 7vw, 24px);
  }
  #footer_recruit_text > DIV {
    width: 310px;
    margin-right: auto;
    margin-left: auto;
  }
  #footer_recruit_text #pp {
    text-align: left;
  }
  #footer_recruit_text #pp SPAN {
    display: block;
    text-align: right;
  }
}
@media (max-width: 340px) {
  #footer_recruit_text > DIV {
    width: auto;
  }
}
/*******************************************
    フッター
********************************************/
.bg_footer {
  padding-top: 30px;
  padding-bottom: 30px;
  background-color: #007e34 !important;
  color: #FFFFFF;
}
.footer_menu {
  padding-top: 30px;
  padding-bottom: 30px;
  text-align: right;
}
.footer_menu .info-btn2 {
  margin-top: 20px;
  text-align: right;
}
.f_about {
  padding-top: 30px;
  padding-bottom: 30px;
  padding-right: 0px;
  padding-left: 0px;
}
.footer_menu UL {
  list-style-type: none;
  list-style-position: inside;
  margin-bottom: 20px;
  margin-top: 30px;
}
.footer_menu UL LI {
  margin-top: 8px;
  display: inline-block;
  margin-left: 40px;
  margin-right: 0px;
}
.footer_menu UL LI a {
  color: #ffffff;
}
.footer_menu UL LI a:hover {
  color: #333333;
}
.f_logo {
  margin-top: -120px;
}
.f_logo a {
  margin-bottom: 4px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.1em;
  color: #111111;
  margin-left: 4px;
  text-decoration: none;
}
.f_logo IMG {
  height: 100px;
  z-index: 100;
  margin-top: 10px;
  margin-bottom: 5px;
  margin-right: 0px;
  margin-left: 15px;
}
.f_logo A:hover IMG {
  opacity: 0.8;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
/* 電話指定 */
.footer_tel {
  color: #FFFFFF;
  margin-bottom: 10px;
  padding-right: 10px;
  padding-left: 10px;
}
.footer_tel IMG {
  height: 13px;
  vertical-align: -1px;
  margin-right: 3px;
  margin-left: -8px;
}
.footer_tel DIV {
  line-height: 1em;
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 8px;
  letter-spacing: 0em;
}
.footer_tel I, .footer_tel SVG {
  font-size: 80%;
  line-height: 1em;
  vertical-align: 1px;
}
.f_adress {
  line-height: 1.5em;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 20px;
}
.f_adress2 {
  line-height: 1.5em;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 70px;
}
/* xl(1200以下は縦列)  */
@media only screen and (max-width: 1199px) {
  .f_adress2 {
    line-height: 1.5em;
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 20px;
  }
  .footer_menu {
    text-align: center;
  }
  .footer_menu .info-btn2 {
    text-align: center;
  }
  .footer_menu UL {
    list-style-type: none;
    list-style-position: inside;
    margin-bottom: 20px;
    margin-top: 20px;
    margin-left: 0px;
  }
  .footer_menu UL LI {
    margin-top: 8px;
    display: inline-block;
    margin-left: 10px;
    margin-right: 10px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1400px) {
  .f_logo IMG {
    height: 80px;
    margin-left: 0px;
    margin-top: 7px;
  }
  .f_logo P {
    margin-bottom: 4px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.1em;
    color: #193e84;
    margin-left: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .f_logo {
    text-align: center;
  }
  .f_logo IMG {
    height: 50px;
    margin-left: 0px;
    margin-top: 27px;
    position: relative;
    text-align: center;
  }
  .f_logo P {
    margin-bottom: 4px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.1em;
    color: #193e84;
    margin-left: 0px;
  }
}
footer {
  padding-top: 4px;
  font-size: 13px;
  font-size: 1.3rem;
  padding-bottom: 4px;
  color: #F3F3F3;
}
#wrapper-footer {
  background-color: #007e34;
}
/*
#wrapper-footer-full{
	margin-top: 120px;
} 
*/
#wrapper-footer-full, #wrapper-static-hero {
  /*
	background-color: transparent;
    */
  border-top: 1px solid #E8E8E8;
  padding-top: 30px;
  padding-bottom: 30px;
  background-color: #E9EBEF;
}
BODY.home #wrapper-footer-full {
  border-top: 0px solid #E8E8E8;
}
#wrapper-footer a:hover {
  color: #3333333;
}
UL.footer_navi {
  display: flex;
  list-style-position: outside;
  list-style-type: none;
  margin-top: 20px;
  margin-left: 0px;
  margin-bottom: 20px;
  overflow: hidden;
}
UL.footer_navi LI {
  width: 100%;
  font-size: 15px;
  font-size: 1.5rem;
  margin-bottom: 12px;
  text-align: right;
}
@media (max-width: 767px) {
  UL.footer_navi {
    display: inline-block;
    border-top: 1px solid #cdcdcd;
    margin-bottom: 10px;
    text-align: center;
  }
  UL.footer_navi LI {
    display: inline-block;
    width: auto;
    text-align: center;
    margin-right: 20px;
    margin-left: 20px;
    margin-top: 20px;
    margin-bottom: 0px;
  }
}
#wrapper-footer {
  font-size: 13px;
  font-size: 1.3rem;
}
footer, footer a {
  color: #E0E0E0;
  text-decoration: none;
}
footer a:hover {
  color: #ffffff;
  text-decoration: none;
}
UL.footer_navi LI A {
  color: #444444;
}
UL.footer_navi LI A {
  position: relative;
  display: inline-block;
  text-decoration: none;
}
UL.footer_navi LI A:hover {
  color: #aaaaaa;
  text-decoration: none;
}
/*  最下部フッターリンク  */
.site-footer A {}
/*  独自ウイジェット用加工  */
#footer_sns {
  /*
	border-top: 1px solid #C8D0DD;
    */
  margin: 0 auto;
  text-align: right;
  padding-top: 20px;
}
#footer_sns > DIV, .addtoany_list {
  display: inline !important;
}
#footer_sns IMG {
  margin-top: -10px;
  margin-right: 0px;
  margin-bottom: 10px;
  margin-left: 20px;
}
#footer_sns a:hover IMG {
  opacity: 0.75
}
@media (max-width: 991px) {
  #footer_sns > DIV {
    text-align: center;
    margin-right: auto;
    margin-left: auto;
    display: block !important;
  }
  #footer_sns a {
    text-align: center;
  }
  #footer_sns a IMG {
    display: block;
    text-align: center;
  }
  #footer_sns IMG {
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 20px;
    margin-left: auto;
  }
}
.addtoany_list a, .widget .addtoany_list a {
  border: 0;
  box-shadow: none;
  display: inline-block;
  font-size: 16px;
  padding-top: 0;
  padding-right: 20px !important;
  padding-left: 20px !important;
  padding-bottom: 0;
  vertical-align: middle;
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  #footer_sns > DIV {
    text-align: center;
  }
  .addtoany_list a, .widget .addtoany_list a {
    border: 0;
    box-shadow: none;
    display: inline-block;
    font-size: 16px;
    padding-top: 0;
    padding-right: 15px !important;
    padding-left: 15px !important;
    padding-bottom: 0;
    vertical-align: middle;
    margin-bottom: 20px;
  }
}
/* トップに戻る   廃止 */
/*
#page-top{
    position:fixed;
    right:30px;
    bottom:30px;
    font-size: 18px;
    z-index: 9999;
}

#page-top a{
    display: block;
    position: relative;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    	background-color: #cccccc;
    color: #fff;
}
#page-top IMG{
    position: absolute;
    top: 45%;
    left: 50%;
    transform: translateY(-45%) translateX(-50%);
}

#page-top a:hover{ 	background-color: #193e84; }
*/
/*--- リストスタイル ---*/
UL.nul {
  font-size: 15px;
  font-size: 1.5rem;
  list-style-type: none;
  background-color: #F3F3F3;
  border-radius: 4px;
  margin-left: 10px;
  margin-right: 10px;
  padding-top: 5px;
  padding-bottom: 5px;
}
UL.nul LI {
  padding-bottom: 5px;
  padding-left: 10px;
  padding-top: 5px;
  padding-right: 10px;
}
UL.nul LI I {
  margin-left: -1.5em;
  margin-right: 0.5em;
}
/*--- テキストリンク ---*/
.link_t {
  margin-left: 1rem;
}
.link_t a {
  text-decoration: underline;
}
.link_t I {
  margin-left: 5px;
  margin-right: 5px;
}
.link_t SPAN {
  font-size: 13px !important;
  font-size: 1.3rem !important;
  color: #FFFFFF;
  background-color: #3C5C9E;
  padding-top: 1px;
  padding-right: 6px;
  padding-bottom: 1px;
  padding-left: 6px;
  border-radius: 4px;
}
/*--- ※補足 ---*/
.hosoku {
  font-size: 14px !important;
  font-size: 1.4rem !important;
  color: #111111 !important;
  font-weight: normal !important;
  margin-top: -5px;
  margin-left: 2em;
  margin-right: 0px;
  margin-bottom: 15px;
}
.hosoku SPAN {
  margin-left: -1em;
}
.f_under_line {
  border-bottom: 1px solid #3c5c9e;
}
/*    */
.wrapper-out {
  background-color: #FFF;
}
.wrapper-main {
  width: 1540px;
  margin: 0px auto;
  position: relative;
  /*
    box-shadow: 0px 0px 100px rgba(0,0,0,0.2);
	*/
  background-color: #fff
}
/*****************************************************************
    メニュー
******************************************************************/
/*-----------  ＰＣメニュー  -----------------*/
/*
.dropdown-menu .nav-item a { 	color: #FFFFFF; }
*/
@media (min-width: 1201px) {
	
  .nav-item  {
    height: 100px;
	}
  .nav-item a {
	position: relative;
	text-decoration: none;
	padding-top: 18px;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
	color: #ffffff;
	text-align: center;
	padding-left: 30px !important;
	padding-right: 30px !important;
	padding-bottom: 18px;
	margin-top: 20px;
  }
  .dropdown-menu .nav-item a {
    border-top: 1px solid #1AA834;
  }
.navbar-dark .navbar-nav .nav-link:focus, .navbar-dark .navbar-nav .nav-link:hover	
	{
    color: #ffffff !important;
    background-color: #007e34;
	}
	/*
  .nav-item a:hover {
    background-color: #aacf45;
    background-color: #007e34;
  }
*/
	/*  メニュー文字職置き換え  */
  .navbar-dark .navbar-nav .nav-link {
    color: #111111;
  }
  /*  Activeメニュー 色変更  */
  .active > .nav-link {
	  /*
    background-color: #aacf45;
	  */
    color: #111111 !important;
  }
}
/*-----------  メニュー ボタン -----------------*/
@media (min-width: 1201px) {
  /* マウスオーバードロップダウン用  */
  .dropdown:hover > .dropdown-menu {
    display: block;
    animation: fadeIn 1.5s ease 0.3 1 normal;
    -webkit-animation: fadeIn 1.5s ease 0.3 1 normal;
  }
}
@media (max-width: 1200px) {
  .dropdown-menu.show {
    animation: fadeIn 1.5s ease 0s 1 normal;
    -webkit-animation: fadeIn 1.5s ease 0s 1 normal;
  }
}
/* ドロップダウンメニューの　マウスオーバー背景色置き換え   */
.dropdown-item:focus, .dropdown-item:hover {
  background-color: #FFFFFF;
}
/* ドロップダウンメニューの背景色置き換え   */
.dropdown-menu {
  background-color: #17902D;
  padding-top: 0px;
  padding-bottom: 0px;
  margin-top: 0px;
}
/* 余白調整   */
.navbar {
  padding-bottom: 0px;
}
/* アンダーラインエフェクト   */
/*

*/
/*-----------  モバイルメニューボタン -----------------*/
.navbar-dark .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border: none;
  padding: 0px;
  width: 35px;
  height: 40px;
  box-sizing: border-box;
  position: relative;
  border-radius: 1px;
}
.navbar-dark .navbar-toggler-icon {
  background-image: none; /* この行で背景画像を無効化 */
  background-color: #007e34;
  width: 35px;
  height: 4px;
  display: block;
  position: absolute;
  transition: ease .5s;
}
/* 3本のバーそれぞれの座標を設定 */
.navbar-toggler-icon:nth-of-type(1) {
  top: 8px;
}
.navbar-toggler-icon:nth-of-type(2) {
  top: 20px;
}
.navbar-toggler-icon:nth-of-type(3) {
  top: 32px;
}
/* メニューが開いている時の　3本のバーそれぞれの座標および角度を設定 */
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(1) {
  top: 20px;
  transform: rotate(45deg);
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(2) {
  opacity: 0;
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(3) {
  top: 20px;
  transform: rotate(-45deg);
}
.navbar-dark .navbar-toggler {
  background-color: transparent !important;
}
.navbar {
  position: relative;
}
@media (max-width: 1200px) {
  /*
@media (max-width: 767px) 
    {
*/
  .navbar .container {
    max-width: 737px;
  }
  .navbar {
    padding-left: 0px;
    padding-right: 0px;
  }
  .navbar-toggler {
    text-align: right;
    position: absolute !important;
    top: 8px;
    right: 10px;
    width: 100%;
  }
  #navbarNavDropdown {
    position: absolute !important;
    top: 60px;
    width: 100%;
    z-index: 1000;
    background-color: #007e34;
    left: 0px;
  }
  .custom-logo-link {
    padding-left: 10px;
    padding-right: 20px;
  }
  .logo-wrap {
    width: 100%;
  }
  #navbarNavDropdown {}
}
/*  モバイルメニュー */
/*
@media (max-width: 767px) {
*/
@media (max-width: 1200px) {
  #main-menu LI {
    text-align: center;
    padding-left: 0px;
    padding-right: 0px;
    border-bottom: 1px solid #008937;
    margin-top: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    margin-right: 0px;
    z-index: 300;
  }
  #main-menu LI A {
    color: #FFFFFF;
    text-decoration: none;
    padding-top: 20px;
    padding-bottom: 20px;
  }
  #main-menu LI A:hover {
    background-color: #008C39;
  }
  #main-menu .dropdown-menu > LI {
    border-top: 1px solid #007e34;
  }
  .dropdown-menu {
    background-color: #007e34;
  }
  #main-menu .dropdown-menu > LI A {
    font-size: 16px;
    font-size: 1.6rem;
    color: #ffffff;
    font-weight: normal;
    padding-left: 0px;
  }
}
/* 検索フォーム加工  */
.pc_from {}
#main-menu #menu_form {
  display: none;
}
@media (max-width: 1200px) {
  .pc_from {
    display: none;
  }
  #main-menu #menu_form {
    display: block;
  }
  /* 検査フォーム位置変更  */
  #main-menu {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  /*  通常メニーを後方へ  */
  #main-menu .menu-item {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3;
  }
  /*  検索フォームを先頭へ  */
  #main-menu #menu_form {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    padding-bottom: 20px;
  }
  .searchsubmit {
    background-color: #395994;
    border-color: #395994;
  }
}
/*-----------  ヘッダー行 -----------------*/
@media (max-width: 767px) {
  .head_info {
    display: none;
  }
}
/* 問合せボタン */
.head_contact {
  float: right;
  margin-top: 5px;
  margin-left: 15px;
}
.head_contact I {
  margin-right: 7px;
}
.head_contact .inquiry-btn a {
  font-size: 16px;
  font-size: 1.6rem;
}
.head_contact .inquiry-btn {
  margin-top: 8px;
}
/* 電話指定 */
.head_tel {
  color: #ffffff;
  float: right;
  margin-bottom: 0px;
  background-color: #17902D;
  padding-right: 20px;
  padding-left: 20px;
  height: 60px;
}
.head_tel P {
  font-size: 12px;
  font-size: 1.2rem;
  padding-top: 10px;
  padding-bottom: 0px;
  line-height: 1em;
  display: block;
  color: #FFFFFF;
  padding-right: 0px;
  text-align: right;
}
/*
.tel_pc SPAN>SPAN {
	padding-right:0px;
	padding-top: 2px;
}
*/
.head_tel DIV {
  line-height: 1em;
  font-size: 24px;
  font-size: 2.4rem;
  text-align: right;
  margin-top: 8px;
  letter-spacing: 0em;
}
.head_tel I, .head_tel SVG {
  font-size: 80%;
  line-height: 1em;
  vertical-align: 1px;
}
.head_tel_btn {
  margin-bottom: 10px;
  font-size: 13px;
  line-height: 8px;
  padding-top: 8px;
  padding-right: 4px;
  padding-left: 1px;
  padding-bottom: 8px;
  margin-top: 6px;
  float: right;
}
.head_tel_btn I {
  margin-bottom: 0px;
  margin-top: 0px;
  line-height: 1.2em;
  padding-right: 4px;
  border-left-width: 0px;
  padding-left: 8px;
  margin-left: 0px;
  font-size: 16px;
}
.tel_pc {
  display: block;
}
.tel_sp {
  display: none;
}
@media only screen and (min-width: 768px) and (max-width: 1200px) {
  .head_tel {
    margin-right: 80px;
  }
}
@media only screen and (max-width: 767px) {
  .head_tel {
    margin-top: 0px;
    margin-right: 0px;
  }
  .tel_pc {
    display: none;
  }
  .tel_sp {
    display: block;
  }
  .footer_tel .tel_sp A {
    color: #FFFFFF;
  }
}
  /*---  お問い合わせボタン（共通）  -----*/
  .inquiry-btn a {
    font-size: 18px;
    font-size: 1.8rem;
    background-color: #2F487C;
    color: #FFFFFF;
    padding-top: 10px;
    padding-right: 20px;
    padding-bottom: 10px;
    padding-left: 20px;
    box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
  }
  .inquiry-btn a:hover {
    background-color: #5F80C3;
    color: #FFFFFF;
    box-shadow: inset 0 0px 0 rgba(255, 255, 255, 0.2), 0 0px 0px rgba(0, 0, 0, 0.19);
  }
  .inquiry-btn I {
    margin-right: 10px;
  }