@charset "UTF-8";
/*
Theme Name: munakata-kenkousyou
Author: Links Agency Inc.
Description: これは「有限会社 宗像建工匠」専用のオリジナルテーマです。
*/




/* ＝＝＝＝＝ 全ページ共通 (ヘッダー) ＝＝＝＝＝ */

#header {
	width: 100%;
	height: 60px;
	background: #fff;
	overflow: hidden;
}

header.on {
	position: fixed !important;
	top: 0;
	z-index: 9999;
}

.site-ttl {
	float: left;
}

.site-ttl-off {
	transition: none;
}

.site-ttl-off:hover {
	opacity: 1;
}

.site-ttl img {
	height: 60px;
}

.header-nav {
	float: left;
	padding: 0 0 0 80px;
}

.header-nav > ul {
	overflow: hidden;
}

.header-nav > ul > li {
	float: left;
	height: 90px;
	margin-right: 80px;
	transition: all ease-in .1s;
}

.header-nav > ul > li:hover a,
.header-nav > ul > li:active a {
	color: #719e1d;
	border-bottom: 2px solid #719e1d;
}

.header-nav > ul > li:last-child {
	margin-right: 0;
}

.header-nav > ul > li > a {
	display: inline-block;
	padding-bottom: 4px;
	font-size: 1.7rem;
	font-weight: 600;
	transition: all ease-in .1s;
}

.home .header-nav > ul > li > a {
	margin: 29px 0 25px;
}

body:not(.home) .header-nav > ul > li > a {
	margin-top: 50px;
}

.current-menu-item a {
	color: #719e1d;
}

.header-tel {
	display: none;
}


@media (max-width: 1049px) {

	.site-ttl-on {
		display: none;
	}
 
	.header-nav {
		display: none;
	}
 
}


@media (min-width: 1050px) {

	#header {
		height: auto;
	}

	.site-ttl-off {
		position: absolute;
		transition: all ease-in 0.2s;
	}

	.site-ttl-off:hover {
		opacity: 0;
		position: absolute;
	}

	.site-ttl img {
		height: auto;
	}

}


@media (min-width: 1050px) and (max-width: 1119px) {

	.header-nav {
		padding: 0 0 0 28px;
	}

	.header-nav > ul > li {
		margin-right: 28px;
	}

	.header-nav > ul > li > a {
		font-size: 1.5rem;
	}

}


@media (min-width: 1120px) and (max-width: 1599px) {

	.header-nav {
		padding: 0 0 0 30px;
	}

	.header-nav > ul > li {
		margin-right: 30px;
	}

	.header-nav > ul > li > a {
		font-size: 1.6rem;
		letter-spacing: 1px;
	}

}


@media (min-width: 1420px) {
 
	.header-tel {
		display: block;
		height: 90px;
		float: right;
		font-size: 1.6rem;
		font-weight: bold;
		margin: 0 48px 0 0;
	}

	body:not(.home) .header-tel {
		padding-top: 22px;
	}

	.header-tel dt {
		font-size: 1.4rem;
		font-weight: normal;
		letter-spacing: 2px;
		margin: 14px 0 0;
	}

	.header-tel a {
		color: #719e1d;
		letter-spacing: 2px !important;
		transition: all ease-in .2s;
	}

	.header-tel span {
		font-family : Arial, sans-serif;
		font-weight: bold;
		font-size: 2.5rem;
		letter-spacing: 3px !important;
		vertical-align: -1px;
	}

	.header-tel a:hover {
		color: #005619;
	}

}


@media (min-width: 1600px) and (max-width: 1859px) {

	.header-nav {
		padding: 0 0 0 40px;
	}

	.header-nav > ul > li {
		margin-right: 40px;
	}

}


@media (min-width: 1600px) {

	.header-nav > ul > li > a {
		font-size: 1.8rem;
		letter-spacing: 2px;
	}

}




/* ＝＝＝＝＝ 全ページ共通 (メガメニュー) ＝＝＝＝＝ */

.header-nav > ul > li:hover .megamenu {
 max-height: 9999px;
 opacity: 1;
}
 
.megamenu {
 background: #fff;
 max-height: 0;
 opacity: 0;
 overflow: hidden;
 width: 100%;
 position: absolute;
 top: 90px;
 left: 0;
 transition: all ease-in .2s;
 z-index: 999;
}
 
_::-webkit-full-page-media, _:future, :root .megamenu { /* 「transition-timing-function: ease-in」は非使用 (Safariにおけるopacityのバグ対策) */
 transition: all ease .2s;
}

.home .header-nav > ul > li:hover .megamenu {
 padding: 23px 48px 48px;
}

body:not(.home) .header-nav > ul > li:hover .megamenu {
 padding: 48px;
}

.megamenu:hover + a {
	color: #719e1d;
}
 
.megamenu-inr {
	display: table;
	margin: 0 auto;
	overflow: hidden;
}
 
.megamenu-inr li {
	margin: 0 48px 0 0;
}

.header-execution .megamenu-inr li {
  width: 20%;
	float: left;
	width: calc(((100% - 192px)/5) - .01px);
	width: -webkit-calc(((100% - 192px)/5) - .01px);
	width: -moz-calc(((100% - 192px)/5) - .01px);
}

.header-company .megamenu-inr li {
  width: 33.3333%;
	float: left;
	width: calc(((100% - 96px)/3) - .01px);
	width: -webkit-calc(((100% - 96px)/3) - .01px);
	width: -moz-calc(((100% - 96px)/3) - .01px);
}

.megamenu-inr li:last-child {
	margin: 0;
}
 
.megamenu-inr a {
	border-bottom: none !important;
}
 
.megamenu-inr img {
	border-radius: 8px;
	-webkit-backface-visibility: hidden !important;
	backface-visibility: hidden !important;
	transition: all ease-in .2s;
}
 
.megamenu-inr img:hover {
	opacity: .7;
}
 
_::-webkit-full-page-media, _:future, :root .megamenu-inr img:hover { /* 非使用 (Safariにおけるopacityのバグ対策) */
	opacity: 1;
}




/* ＝＝＝＝＝ 全ページ共通 (ハンバーガーメニュー) ＝＝＝＝＝ */

#btn-hamburger {
	display: block;
	background: #719e1d;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 9999;    
	width: 60px;
	height: 60px;
	overflow: hidden;
	color: #fff;
	-moz-transition: background-color .2s linear;
	-webkit-transition: background-color .2s linear;
	transition: background-color .2s linear;
}

#btn-hamburger button {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	text-indent: -9999px;
	border: 0 none;
	background: transparent;
	cursor: pointer;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

#btn-hamburger:after {
	content: "";
	position: absolute;
	z-index: 1;
	display: block;
	width: 18px;
	height: 2px;
	top: 12px;
	right: 21px;
	background: #fff;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	-moz-transition: -moz-transform .3s ease-out, top .3s ease-out, width .3s ease-out;
	-webkit-transition: -webkit-transform .3s ease-out, top .3s ease-out, width .3s ease-out;
	transition:  transform .3s ease-out, top .3s ease-out, width .3s ease-out;
}

#btn-hamburger button:before {
	content: "";
	position: absolute;
	z-index: 1;
	display: block;
	width: 18px;
	height: 2px;
	top: 19px;
	right: 21px;
	background: #fff;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	-moz-transition: width .3s ease-out, right .3s ease-out;
	-webkit-transition: width .3s ease-out, right .3s ease-out;
	transition: width .3s ease-out, right .3s ease-out;
}

#btn-hamburger button:after {
	content: "";
	position: absolute;
	z-index: 1;
	display: block;
	width: 18px;
	height: 2px;
	top: 26px;
	right: 21px;
	background: #fff;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	-moz-transition: -moz-transform .3s ease-out, top .3s ease-out;
	-webkit-transition: -webkit-transform .3s ease-out, top .3s ease-out;
	transition: transform .3s ease-out, top .3s ease-out;
}

#btn-hamburger p {
	position: relative;
	top: -25px;
	right: 0;
	font-size: 10px;
	font-weight: bold;
	text-align: center;
	height: auto;
	vertical-align: top;
	-ms-interpolation-mode: bicubic; 
	cursor: pointer;   
}

#btn-hamburger.on {
	color: #719e1d !important;
	background: #fff !important;
}

#btn-hamburger.on header {
	positon: fixed;
	z-index: 9999;
}

#btn-hamburger.on:after {
	width: 18px !important;
	top: 19px;
	right: 20px;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#btn-hamburger.on button:before {
	width: 0 !important;
}

#btn-hamburger.on button:after {
	top: 19px;
	right: 20px;
	background: #719e1d !important;
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#btn-hamburger.on:after {
	background: #719e1d !important;
}

#btn-hamburger.on p {
	color: #719e1d !important;
}

.btn-hamburger-close {
	display: none;
}

#btn-hamburger.on .btn-hamburger-close {
	display: block;
	right: -1px;
}

#btn-hamburger.on .btn-hamburger-open {
	display: none;
}

.btn-hamburger {
	-webkit-box-shadow: 0 1px 2px rgba(0,0,0,.1);
	box-shadow: 0 1px 2px rgba(0,0,0,.1);
}

#hamburger-menu {
  display: none;
  position: absolute;
  top: 60px;
  left: 0;
  z-index: 2001;
  width: 100%;
  opacity: 0;
  -webkit-transform: translateY(-100px);
  transform: translateY(-100px);
}

#hamburger-menu.show {
  -webkit-animation: hamburger-menu-show .3s ease-out 0s both;
  animation: hamburger-menu-show .3s ease-out 0s both;
}

#hamburger-menu.hide {
  -webkit-animation: hamburger-menu-hide .2s ease-out 0s both;
  animation: hamburger-menu-hide .2s ease-out 0s both;
}

#hamburger-menu ul {
  overflow: hidden;
  height: 0;
  -webkit-transition: height .2s ease-out;
  transition: height .2s ease-out;
}

#hamburger-menu a {
  display: block;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  letter-spacing: 1px !important;
  text-decoration: none;
}

#hamburger-menu a:hover, #hamburger-menu a:active {
  text-decoration: none;
}

.hamburger-arrow-right {
  background-image: url(img/hamburger-arrow-right.png);
  background-repeat: no-repeat;
  background-position: right 26px top 50%;
  background-size: 8px 13px;
}  

#hamburger-menu > li {
  border-top: 1px solid #174e00;
}

#hamburger-menu > li > .btn-set a:first-child, #hamburger-menu > li > a {
  padding: 19px 75px 19px 20px;
  background-color: #719e1d;
}

#hamburger-menu .sub-1 > li > .btn-set a:first-child, #hamburger-menu .sub-1 > li > a {
  padding: 19px 75px 19px 22px;
  border-top: 1px solid #174e00;
  background-color: #356c00;
}

#hamburger-menu .sub-1 > li > .btn-set a .btn-set-minus {
  opacity: 0.4;
  margin-right: 20px;
}

#hamburger-menu .sub-1 > li > a .btn-set-minus {
  opacity: 0.4;
  margin-right: 18px;
}

#hamburger-menu .sub-2 a {
  padding: 17px 75px 17px 40px;
  border-top: 1px solid #356c00;
  background-color: #174e00;
}

#hamburger-menu .sub-2 a .btn-set-minus {
  opacity: 0.4;
  margin-right: 20px;
}

#hamburger-menu .btn-set {
  position: relative;
}

#hamburger-menu .btn-set a.btn {
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  width: 60px;
  height: 100%;
  background: #356c00;
}

#hamburger-menu .btn-set a.btn span {
  display: block;
  position: absolute;
  left: 22px;
  top: 50%;
  width: 15px;
  height: 2px;
  background-color: #fff;
  -webkit-transition: opacity .2s, -webkit-transform .2s;
  transition: opacity .2s, -webkit-transform .2s;
  transition: opacity .2s, transform .2s;
  transition: opacity .2s, transform .2s, -webkit-transform .2s;
}

#hamburger-menu .btn-set a.btn span:last-child {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

#hamburger-menu .btn-set a.btn:hover span, #hamburger-menu .btn-set a.btn:active span {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

#hamburger-menu .btn-set a.btn:hover span:last-child, #hamburger-menu .btn-set a.btn:active span:last-child {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

#hamburger-menu .btn-set a.btn.open span:last-child {
  opacity: 0;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

#hamburger-menu .btn-set a.btn.open:hover span, #hamburger-menu .btn-set a.btn.open:active span {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

#hamburger-menu .sub-1 > li > .btn-set a.btn {
  background-color: #174e00;
}


@-webkit-keyframes hamburger-menu-show {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}


@keyframes hamburger-menu-show {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}


@-webkit-keyframes hamburger-menu-hide {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px);
  }
}


@keyframes hamburger-menu-hide {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px);
  }
}


#hamburger-menu-cta {
  background: #719e1d;
  padding: 20px;
  text-align: center;
}

#hamburger-menu-cta a {
  padding: 10px !important;
  margin: 0 auto;
  background: #fff !important;
  font-size: 16px;
  color: #719e1d;
  display: block;
  box-shadow: 1px 1px 1px 1px rgba(0,0,0,.1);
  border-radius: 3px;
}

#hamburger-menu-cta a i {
  padding-right: 6px;
}

#hamburger-menu-cta a:nth-child(1) {
  margin-bottom: 20px;
}

#hamburger-cover {
  display: none;
  position: fixed;
  top: 60px;
  left: 0;
  z-index: 2000;
  width: 100%;
  height: 100%;
  background: #003000;
  opacity: 0;
}

#hamburger-cover.show {
  -webkit-animation: hamburger-cover-show .2s ease-out 0s both;
  animation: hamburger-cover-show .2s ease-out 0s both;
}

#hamburger-cover.hide {
  -webkit-animation: hamburger-cover-hide .15s ease-out 0s both;
  animation: hamburger-cover-hide .15s ease-out 0s both;
}


@-webkit-keyframes hamburger-cover-show {
  0% {
    opacity: 0;
  }
  100% {
    opacity: .9;
  }
}


@keyframes hamburger-cover-show {
  0% {
    opacity: 0;
  }
  100% {
    opacity: .9;
  }
}


@-webkit-keyframes hamburger-cover-hide {
  0% {
    opacity: .9;
  }
  100% {
    opacity: 0;
  }
}


@keyframes hamburger-cover-hide {
  0% {
    opacity: .9;
  }
  100% {
    opacity: 0;
  }
}


@media (min-width: 1050px) {
 
	#btn-hamburger,
	#hamburger-menu,
	#hamburger-cover {
		display: none;
	}

}




/* ＝＝＝＝＝ パンくずリスト ＝＝＝＝＝ */

#breadcrumb{
	width: 100%;
	overflow: hidden;
}

.breadcrumb-right ,
.separator{
	padding: 0 10px;
}

.blog .breadcrumb-right {
	padding: 0 5px;
}

#breadcrumb a i,
#breadcrumb a {
	color: #719e1d;
	transition: all ease-in .2s;
}

#breadcrumb a i:hover,
#breadcrumb a:hover {
	color: #005619;
	text-decoration: underline;
}


@media (max-width: 479px) {

	#breadcrumb,
	#breadcrumb a {
		font-size: 1.2rem;
	}

	#breadcrumb {
		padding: 20px 16px 0;
	}

	.single-execution #breadcrumb {
		background-size: 90% auto !important;
	}

	.advantage #breadcrumb {
		background-size: 40% auto !important;
	}

	.contact #breadcrumb,
	.privacy #breadcrumb,
	.single-post #breadcrumb,
	.blog #breadcrumb {
		background-size: 90% auto !important;
	}

	.company #breadcrumb {
		background-size: 18% auto !important;
		background-position: 0px 38px !important;
	}

}


@media (min-width: 480px) {

	#breadcrumb {
		font-size: 1.4rem;
	}

}


@media (min-width: 480px) and (max-width: 599px) {

	#breadcrumb {
		padding: 20px 20px 0;
	}

}


@media (min-width: 600px) and (max-width: 959px) {

	#breadcrumb {
		padding: 20px 30px 0;
	}

}


@media (min-width: 960px) and (max-width: 1049px) {

	#breadcrumb {
		padding: 20px 0 0 40px;
	}

}


@media (max-width: 1049px) {

	.tax-execution-cat #breadcrumb,
	.post-type-archive-execution #breadcrumb {
		background: url(img/bg-01.png) center -50px;
	}

	.advantage #breadcrumb {
		background: url(img/bg-05.jpg);
	}

	.contact #breadcrumb,
	.privacy #breadcrumb,
	.single-execution #breadcrumb,
	.single #breadcrumb,
	.blog #breadcrumb {
		background: url(img/bg-03.jpg);
	}

	.company #breadcrumb {
		background: url(img/bg-06.jpg);
		background-position: 0px 42px;
	}

}


@media (min-width: 1050px) {

	#breadcrumb {
		height: 48px;
		line-height: 48px;
		margin: 0 48px;
	}

}

/* ＝＝＝＝＝ パンくずリスト２ ＝＝＝＝＝ */

#breadcrumbs{
	width: 100%;
	overflow: hidden;
}

.breadcrumbs-list{
 display: flex;
}

.separator{
	padding: 0 10px;
}

#breadcrumbs a i,
#breadcrumbs a {
	color: #719e1d;
	transition: all ease-in .2s;
}

#breadcrumbs a i:hover,
#breadcrumbs a:hover {
	color: #005619;
	text-decoration: underline;
}


@media (max-width: 479px) {
	#breadcrumbs,
	#breadcrumbs a {
		font-size: 1.2rem;
	}

	#breadcrumbs {
		padding: 20px 16px 0;
	}

	.single-execution #breadcrumbs {
		background-size: 90% auto !important;
	}

	.advantage #breadcrumbs {
		background-size: 40% auto !important;
	}

	.contact #breadcrumbs,
	.privacy #breadcrumbs,
	.single-post #breadcrumbs,
	.blog #breadcrumbs {
		background-size: 90% auto !important;
	}

	.company #breadcrumbs {
		background-size: 18% auto !important;
		background-position: 0px 38px !important;
	}
}
@media (min-width: 480px) {
	#breadcrumbs {
		font-size: 1.4rem;
	}
}
@media (min-width: 480px) and (max-width: 599px) {
	#breadcrumbs {
		padding: 20px 20px 0;
	}
}
@media (min-width: 600px) and (max-width: 959px) {
	#breadcrumbs {
		padding: 20px 30px 0;
	}
}
@media (min-width: 960px) and (max-width: 1049px) {
	#breadcrumbs {
		padding: 20px 0 0 40px;
	}
}
@media (max-width: 1049px) {
	.tax-execution-cat #breadcrumbs,
	.post-type-archive-execution #breadcrumbs {
		background: url(img/bg-01.png) center -50px;
	}

	.advantage #breadcrumbs {
		background: url(img/bg-05.jpg);
	}

	.contact #breadcrumbs,
	.privacy #breadcrumbs,
	.single-execution #breadcrumbs,
	.single #breadcrumbs,
	.blog #breadcrumbs {
		background: url(img/bg-03.jpg);
	}

	.company #breadcrumbs {
		background: url(img/bg-06.jpg);
		background-position: 0px 42px;
	}
}
@media (min-width: 1050px) {
	#breadcrumbs {
		height: 48px;
		line-height: 48px;
		margin: 0 48px;
	}
}


/* ＝＝＝＝＝ 全ページ共通 (コンテンツ) ＝＝＝＝＝ */

#wrapper {
	overflow: hidden;
}

.section:last-of-type {
	margin: 0;
}

.contents-top {
	background: url(img/bg-03.jpg);
}

.contents-bottom {
	background: url(img/bg-04.jpg);
}

.contents-top .contents-inr {
	position: relative
}


@media (max-width: 479px) {

	body {
		font-size: 1.4rem;
		line-height: 1.6;
	}

	.contents-top {
		padding: 16px 16px 42px;
		background-size: 90% auto;
	}

	.single .contents-top {
		padding: 30px 16px 42px;
	}

	.contents-bottom {
		padding: 30px 16px;
		background-size: 30% auto;
	}

	.contents-inr > *:not(:last-child) {
		margin: 0 0 30px;
	}

	.section {
		padding: 16px 16px 30px;
	}

	.top .section {
		padding: 30px 16px 30px;
	}

	.top .section:last-of-type {
		padding: 16px;
	}

}


@media (min-width: 480px) and (max-width: 599px) {

	.contents-top {
		padding: 20px 20px 30px;
	}

	.single .contents-top {
		padding: 30px 20px 30px;
	}

	.contents-bottom {
		padding: 30px 20px;
	}

	.contents-inr > *:not(:last-child) {
		margin: 0 0 30px;
	}

	.section {
		padding: 20px 20px 30px;
	}

	.top .section:last-of-type {
		padding: 30px 20px;
	}

}


@media (min-width: 600px) and (max-width: 959px) {

	.contents-top {
		padding: 20px 30px 40px;
	}

	.single .contents-top {
		padding: 40px 30px 40px;
	}

	.contents-bottom {
		padding: 40px 30px;
	}

	.contents-inr > *:not(:last-child) {
		margin: 0 0 40px;
	}

	.section {
		padding: 30px 30px 40px;
	}

	.top .section:last-of-type {
		padding: 40px 30px;
	}

}


@media (min-width: 960px) and (max-width: 1049px) {

	.contents-top {
		padding: 10px 40px 50px;
	}

	.single .contents-top {
		padding: 50px 40px 50px;
	}

	.contents-bottom {
		padding: 50px 40px;
	}

	.contents-inr > *:not(:last-child) {
		margin: 0 0 50px;
	}

	.section {
		padding: 40px 40px 50px;
	}

	.top .section:last-of-type {
		padding: 50px 40px;
	}

}


@media (min-width: 1050px) {

	.contents-top {
		margin: 0 48px;
		padding: 48px;
	}

	.contents-bottom {
		margin: 0 48px 48px;
		padding: 48px;
	}

	.contents-inr {
		max-width: 1024px;
		margin: 0 auto;
	}

	.contents-inr > *:not(:last-child) {
		margin: 0 0 48px;
	}

	.section {
		padding: 48px;
		margin: 0 48px;
	}

}




/* ＝＝＝＝＝ 全ページ共通 (見出し) ＝＝＝＝＝ */

.h2-1 {
	margin: 0 0 40px !important;
}

.h2-1 img {
	display: block;
	margin: 0 auto;
}

.h2-2 {
	display: inline-block;
	font-family: 'Cinzel', "游明朝", YuMincho, "ヒラギノ明朝 ProN","Hiragino Mincho ProN","Hiragino Mincho ProN","HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-weight: normal;
	border-bottom: solid 1px rgba(209,173,136,0.3);
}

.tax-execution-cat .h2-2 {
	border-bottom: solid 1px #e5e5df;
}

.h2-2-under {
	color: #719e1d;
}

.h3-1 {
	background: #005619;
	border-bottom: 1px solid #333;
	font-weight: normal;
	color: #fff;
	text-align: center;
}

.h3-1 i {
	padding: 0 7px 0 0;
}

.h3-2 {
	position: absolute;
	background: #fff;
	font-family: 'Aldrich', sans-serif;
	font-weight: normal;
	letter-spacing: 1px;
}

.h3-3 {
	position: relative;
}

.h3-3-en {
	position: relative;
	font-family: 'Squada One', cursive;
	font-weight: normal;
	color: #60411E;
	text-align: center;
}

.after-img .h3-3-en {
	color: #719e1d;
}

.h3-3-en::before {
	content: "";
	display: block;
	width: 30px;
	height: 0;
	margin: 0 auto;
	border-top: 3px solid #dfdcd7;
}

.h3-3-jp {
	margin: 0 auto;
	text-align: center;
}

.h3-4 {
	font-family: 'Cinzel', "游明朝", YuMincho, "ヒラギノ明朝 ProN","Hiragino Mincho ProN","Hiragino Mincho ProN","HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-weight: normal;
	transition: all ease-in .3s;
}

.execution-common > article:hover .h3-4 {
	color: #005619;
}

.h3-5 {
	font-family: 'Cinzel', "游明朝", YuMincho, "ヒラギノ明朝 ProN","Hiragino Mincho ProN","Hiragino Mincho ProN","HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;	
	font-weight: normal;
}

.h3-5 i {
	padding-right: 6px;
}

.h3-6 {
	font-family: '游明朝体', 'YuMincho', '游明朝', 'Yu Mincho', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN W3', HiraMinProN-W3, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
	font-weight: normal;
	text-align: center;
	text-shadow: 2px 2px 0 rgba(255,231,110,0.4);
}


@media (max-width: 374px) {

	.h2-1 img {
		width: 260px;
	}

	.h3-4 {
		font-size: 1.2rem;
	}

}


@media (min-width: 375px) and (max-width: 479px) {

	.h2-1 img {
		width: 300px;
	}

	.h3-4 {
		font-size: 1.4rem;
	}

}


@media (max-width: 479px) {

	.h2-1 {
		margin: 0 0 16px !important;
	}

	.h2-2 {
		font-size: 1.6rem;
		letter-spacing: 1px;
		padding: 0 6px 6px;
		margin-bottom: 8px;
	}

	.h2-2-under {
		font-size: 1.2rem;
		letter-spacing: 1px;
	}

	.h3-1 {
		padding: 8px 0;
		border-radius: 4px 4px 0 0;
		font-size: 1.4rem;
		letter-spacing: 1px;
	}

	.h3-2 {
		left: 16px;
		top: -16px;
		padding: 7px 15px 5px;
		border: 2px dashed #d1ad88;
		border-radius: 8px;
		font-size: 1.0rem;
	}

	.h3-3 {
		margin: 0 0 18px;
	}

	.h3-3-en {
		font-size: 2.4rem;
		letter-spacing: 2px;
	}

	.h3-3-jp {
		letter-spacing: 1px;
		line-height: .8;
	}

	.h3-5 {
		margin-bottom: 4px;
		font-size: 1.5rem;
		letter-spacing: 1px;
	}

	.h3-6 {
		margin: 0 0 10px;
		font-size: 1.4rem;
		font-weight: bold;
		letter-spacing: 2px;
	}

}


@media (min-width: 480px) {

	.h3-2 {
		left: 30px;
		top: -20px;
		padding: 7px 17px 5px;
		border: 2px dashed #d1ad88;
		border-radius: 14px;
		font-size: 1.2rem;
	}

}


@media (min-width: 480px) and (max-width: 599px) {

	.h2-1 {
		margin: 0 0 20px !important;
	}

	.h2-1 img {
		width: 380px;
	}

	.h2-2 {
		font-size: 2.0rem;
		letter-spacing: 2px;
		padding: 0 30px 6px;
		margin-bottom: 10px;
	}

	.h2-2-under {
		font-size: 1.4rem;
		letter-spacing: 2px;
	}

	.h3-1 {
		padding: 14px 0;
		font-size: 1.6rem;
		letter-spacing: 2px;
	}

	.h3-3 {
		margin: 0 0 24px;
	}

	.h3-3-en {
		font-size: 3.0rem;
		letter-spacing: 2px;
	}

	.h3-3-jp {
		font-size: 1.4rem;
		letter-spacing: 2px;
		line-height: .5;
	}

	.h3-4 {
		font-size: 1.7rem;
		letter-spacing: 1px;
	}

	.h3-5 {
		margin-bottom: 4px;
		font-size: 1.6rem;
		letter-spacing: 2px;
	}

	.h3-6 {
		margin: 0 0 14px;
		font-size: 1.8rem;
		letter-spacing: 2px;
	}

}


@media (min-width: 600px) {

	.h3-5 {
		margin-bottom: 10px;
		letter-spacing: 2px;
	}

}


@media (min-width: 600px) and (max-width: 959px) {

	.h2-2 {
		font-size: 2.0rem;
		letter-spacing: 2px;
		padding: 0 30px 6px;
		margin-bottom: 10px;
	}

	.h2-2-under {
		font-size: 1.4rem;
		letter-spacing: 2px;
	}

	.h3-1 {
		padding: 14px 0;
		font-size: 1.6rem;
		letter-spacing: 2px;
	}

	.h3-3 {
		margin: 0 0 30px;
	}

	.h3-3-en {
		font-size: 3.4rem;
		letter-spacing: 3px;
	}

	.h3-3-jp {
		font-size: 1.4rem;
		letter-spacing: 2px;
		line-height: .5;
	}

	.h3-6 {
		margin: 0 0 24px;
		font-size: 2.0rem;
		letter-spacing: 2px;
	}

}


@media (min-width: 960px) {

	.h2-2-under {
		letter-spacing: 3px;
	}

	.h3-1 {
		padding: 20px 0;
		font-size: 1.8rem;
		letter-spacing: 2px;
	}

	.h3-3-en {
		font-size: 4.4rem;
		letter-spacing: 3px;
	}

	.h3-3-jp {
		letter-spacing: 2px;
		line-height: .4;
	}

}


@media (min-width: 600px) and (max-width: 1049px) {

	.h2-1 {
		margin: 0 0 30px !important;
	}

	.h2-1 img {
		width: 400px;
	}

}


@media (min-width: 960px) and (max-width: 1049px) {

	.h2-2 {
		font-size: 2.4rem;
		letter-spacing: 2px;
		padding: 0 30px 6px;
		margin-bottom: 12px;
	}

	.h3-3 {
		margin: 0 0 40px;
	}

	.h3-6 {
		margin: 0 0 20px;
		font-size: 2.2rem;
		letter-spacing: 2px;
	}

}


@media (min-width: 960px) {

	.h2-1 img {
		width: 568px;
	}

	.h3-4 {
		font-size: 2.4rem;
		letter-spacing: 1px;
	}

}


@media (min-width: 1050px) {

	.h2-1 {
		margin: 0 0 40px !important;
	}

	.h2-2 {
		font-size: 2.8rem;
		letter-spacing: 3px;
		padding: 0 60px 6px;
		margin-bottom: 14px;
	}

	.h3-3 {
		margin: 0 0 48px;
	}

}


@media (min-width: 1050px) and (max-width: 1365px) {

	.h3-6 {
		margin: 0 0 20px;
		font-size: 2.2rem;
		letter-spacing: 2px;
	}

}


@media (min-width: 1366px) and (max-width: 1535px) {

	.h3-6 {
		margin: 0 0 20px;
		font-size: 2.2rem;
		letter-spacing: 2px;
	}

}


@media (min-width: 1536px) {

	.h3-6 {
		margin: 0 0 20px;
		font-size: 2.8rem;
		letter-spacing: 4px;
	}

}




/* ＝＝＝＝＝ 全ページ共通 (上へ戻る / 無料見積) ＝＝＝＝＝ */

.pagetop {
	position: fixed;
	right: 16px;
	bottom: 66px;
	z-index: 100;
}

.pagetop a {
	background: #719e1d;
	display: block;
	font-size: 2.8rem;
	color: #fff;
	padding: 1.5px 11px;
	transition: all ease-in 0.2s;
}

.pagetop a:hover {
  background: #fff;
  color: #719e1d;
}

.estimate-btn {
	position: fixed;
	right: 0;
	bottom: 0;
	z-index: 100;
}

.estimate-btn a {
	transition: all ease-in 0.2s;
	overflow: hidden;
}

.estimate-btn a div {
	float: left;
	height: 50px;
}

.estimate-btn a div:nth-of-type(1) {
	width: 50px;
	background: #ff7508;
	position: relative;
}

.estimate-btn a div:nth-of-type(1) img {
	width: 24px;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

.estimate-btn a div:nth-of-type(2) {
	padding: 0 10px;
	background: #fff;
	font-family: 'Cinzel', "游明朝", YuMincho, "ヒラギノ明朝 ProN","Hiragino Mincho ProN","Hiragino Mincho ProN","HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-size: 1.2rem;
	color: #ff7508;
	letter-spacing: 1px;
	line-height: 50px;
	text-align: center;
	transition: all ease-in 0.2s;
}

.estimate-btn a:hover div:nth-of-type(2) {
	background: #ff7508;
	color: #fff;
}


@media (min-width: 480px) {

	.estimate-btn a div:nth-of-type(2) {
		font-size: 1.6rem;
		letter-spacing: 2px;
	}

}


@media (min-width: 480px) and (max-width: 599px) {

	.pagetop {
		right: 20px;
		bottom: 80px;
	}

	.estimate-btn a div {
		height: 50px;
	}

	.estimate-btn a div:nth-of-type(1) {
		width: 50px;
	}

	.estimate-btn a div:nth-of-type(1) img {
		width: 28px;
	}

	.estimate-btn a div:nth-of-type(2) {
		padding: 0 16px;
		line-height: 50px;
	}

}


@media (min-width: 600px) and (max-width: 959px) {

	.pagetop {
		right: 30px;
		bottom: 80px;
	}

	.estimate-btn a div {
		height: 50px;
	}

	.estimate-btn a div:nth-of-type(1) {
		width: 50px;
	}

	.estimate-btn a div:nth-of-type(1) img {
		width: 28px;
	}

	.estimate-btn a div:nth-of-type(2) {
		padding: 0 16px;
		line-height: 50px;
	}

}


@media (min-width: 960px) {

	.estimate-btn a div {
		height: 60px;
	}

	.estimate-btn a div:nth-of-type(1) {
		width: 60px;
	}

	.estimate-btn a div:nth-of-type(1) img {
		width: 34px;
	}

	.estimate-btn a div:nth-of-type(2) {
		padding: 0 24px;
		font-size: 2rem;
		line-height: 60px;
	}

}


@media (min-width: 960px) and (max-width: 1049px) {

	.pagetop {
		right: 40px;
		bottom: 100px;
	}

}


@media (min-width: 1050px) {

	.pagetop {
		right: 48px;
		bottom: 108px;
	}

}




/* ＝＝＝＝＝ 全ページ共通 (フッター) ＝＝＝＝＝ */

footer {
	width: 100%;
	background: url(img/ft-bg.jpg) center 0 / cover repeat-y;
	color: #fff;
}

.ft-inr {
	width: 100%;
}

.ft-inr-top a {
  transition: all ease-in .2s;
}

.ft-inr-top a:hover {
  opacity: .6;
}

.ft-inr-middle {
  padding: 0 0 44px;
	border-bottom: 1px solid #fff;
	overflow: hidden;
}

.ft-inr-middle > div li {
	letter-spacing: 1px;
	line-height: 2.1;
}

.ft-inr-middle > div li a {
	text-decoration: underline;
}

.ft-inr-bottom {
	position: relative;
  padding: 44px 0;
}

.ft-inr-bottom ul {
	display: table;
	overflow: hidden;
}

.ft-inr-bottom li {
	float: left;
	transition: all ease-in 0.2s;
}

.ft-inr-bottom li:hover {
	opacity: .7;
}

.ft-inr-bottom .copyright {
	text-align: center;
}

.ft-inr-bottom .copyright small {
	font-size: 1.0rem;
	letter-spacing: 1px;
}


@media (max-width: 374px) {

	footer {
		padding: 30px 16px 120px;
	}

	.ft-inr-bottom li img {
		max-width: 80px;
	}

}


@media (min-width: 375px) and (max-width: 479px) {

	footer {
		padding: 30px 16px 90px;
	}

	.ft-inr-bottom li img {
		max-width: 102px;
	}

}


@media (max-width: 479px) {

	.ft-inr-top {
		padding: 0 0 4px;
	}

	.ft-inr-top li:nth-child(1) {
		width: 230px
	}

	.ft-inr-top li:nth-child(2) {
		letter-spacing: 1px;
		margin-top: 12px;
		font-size: 1.2rem;
	}

	.ft-inr-middle {
		padding: 0 0 20px;
		font-size: 1.2rem;
	}

	.ft-inr-bottom {
		padding: 20px 0;
	}

	.ft-inr-bottom ul {
		margin: 0 auto 16px;
	}

	.ft-inr-bottom li {
		margin: 0 16px 0 0;
	}

	.ft-inr-bottom li:nth-child(3) {
		margin: 0;
	}

}


@media (min-width: 480px) {

	.ft-inr-middle > div li {
		letter-spacing: 2px;
	}

	.ft-inr-bottom .copyright small {
		font-size: 1.1rem;
	}

}

@media (min-width: 480px) and (max-width: 599px) {

	footer {
		padding: 30px 20px 60px;
	}

	.ft-inr-top {
		padding: 0 0 6px;
	}

	.ft-inr-top li:nth-child(1) {
		width: 250px
	}

	.ft-inr-top li:nth-child(2) {
		letter-spacing: 2px;
		margin-top: 14px;
		font-size: 1.4rem;
	}

	.ft-inr-middle {
		padding: 0 0 20px;
		font-size: 1.4rem;
	}

	.ft-inr-bottom {
		padding: 20px 0;
	}

	.ft-inr-bottom ul {
		margin: 0 auto 20px;
	}

	.ft-inr-bottom li {
		margin: 0 20px 0 0;
	}

	.ft-inr-bottom li:nth-child(3) {
		margin: 0;
	}

	.ft-inr-bottom li img {
		max-width: 132px;
	}

}

@media (min-width: 600px) {

	.ft-inr-top {
		padding: 0 0 28px;
	}

	.ft-inr-bottom li img {
		width: 200px;
	}

}


@media (min-width: 600px) and (max-width: 767px) {

	.ft-inr-top li:nth-child(1) {
		width: 300px
	}

	.ft-inr-top li:nth-child(2) {
		letter-spacing: 2px;
		margin-top: 18px;
	}

}


@media (min-width: 768px) {

	.ft-inr-top ul {
		width: 100%;
		overflow: hidden;
	}

	.ft-inr-top li {
		float: left;
	}

}


@media (min-width: 600px) and (max-width: 959px) {

	footer {
		padding: 40px 30px 80px;
	}

}


@media (min-width: 600px) and (max-width: 959px) {

	.ft-inr-middle {
		padding: 0 0 30px;
	}

	.ft-inr-bottom {
		padding: 30px 0;
	}

	.ft-inr-bottom ul {
		margin: 0 auto 30px;
	}

	.ft-inr-bottom li {
		margin: 0 30px 0 0;
	}

	.ft-inr-bottom li:nth-child(3) {
		margin: 0;
	}

}


@media (min-width: 768px) and (max-width: 879px) {

	.ft-inr-top li:nth-child(1) {
		width: 40%;
		margin-right: 40px;
	}

	.ft-inr-top li:nth-child(2) {
		width: calc((60% - 40px) - .01px);
		letter-spacing: 2px;
		margin-top: 6px;
	}

}


@media (min-width: 880px) {

	.ft-inr-middle > div {
		width: 50%;
		float: left;
	}

	.ft-inr-middle > div .ft-inr-middle-tel {
		line-height: 1.4;
	}

	.ft-inr-middle > div li a {
		font-family: Arial, sans-serif;
		font-size: 3.3rem;
		font-weight: bold;
		color: #fff;
		letter-spacing: 4px;
		text-decoration: none;
	}

	.ft-inr-top li:nth-child(1) {
		width: 40%;
		margin-right: 40px;
	}

}


@media (min-width: 880px) and (max-width: 959px) {

	.ft-inr-top li:nth-child(2) {
		width: calc((60% - 40px) - .01px);
		font-size: 1.7rem;
		letter-spacing: 3px;
		margin-top: 8px;
	}

}


@media (min-width: 960px) {

	.ft-inr-top li:nth-child(2) {
		width: calc((60% - 40px) - .01px);
		font-size: 1.7rem;
		letter-spacing: 3px;
		margin-top: 14px;
	}

	.ft-inr-bottom ul {
		margin: 0 auto 44px;
	}

	.ft-inr-bottom li {
		margin: 0 44px 0 0;
	}

	.ft-inr-bottom li:nth-child(3) {
		margin: 0;
	}

}


@media (min-width: 960px) and (max-width: 1049px) {

	footer {
		padding: 50px 40px 0;
	}

	.ft-inr-middle {
		padding: 0 0 40px;
	}

	.ft-inr-bottom {
		padding: 40px 0 50px;
	}

	.ft-inr-bottom ul {
		margin: 0 auto 40px;
	}

}


@media (min-width: 1050px) {

	footer {
		padding: 48px 48px 0;
	}

	.ft-inr-middle {
		padding: 0 0 44px;
	}

	.ft-inr-bottom {
		padding: 44px 0 50px;
	}

	.ft-inr-bottom ul {
		margin: 0 auto 44px;
	}

}


@media (min-width: 1120px) {

	.ft-inr {
		width: 1024px;
		margin: 0 auto;
	}

	.ft-inr-bottom .copyright small {
		font-size: 1.4rem;
		letter-spacing: 2px;
	}

}




/* ＝＝＝＝＝ トップページ ＝＝＝＝＝ */

.home .header-top a {
	color: #719e1d;
	border-bottom: 2px solid #719e1d;
}

.itemDisplay {
	height: 0;
	padding-top: 120%; /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
}
		
.shortSliderUL li img {
	width: 100%;
}

.short-slider .indicator {
	background: url(img/bg-01.png) center -50px;
	padding: 6px 0 0;
}

.short-slider .indicator span {
	background: #fff;
	width: 12px;
	height: 12px;
	border: 2px solid rgba(34,34,34,0.13);
	margin: 8px;
	transition: background-color .4s;
}

.short-slider .indicator span:hover,
.short-slider .indicator span.current {
	background: #719e1d;
	border: 2px solid rgba(68,68,68,0.27);
}


@media (min-width: 600px) {

	.itemDisplay {
		padding-top: 46.875%; /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
	}

	.short-slider .indicator {
		padding: 12px 0 0;
	}

	.short-slider .indicator span {
		width: 14px;
		height: 14px;
		margin: 11px;
	}

}


@media (min-width: 1050px) {

	.short-slider {
		margin: 0 48px;
	}

}


.section-top-execution {
	background: url(img/bg-01.png) center -50px;
}

.execution-common > article {
	background: #fff;

	/* マウスオンで三角形がスライド (Fifefox対策) */
	overflow: hidden;

	/* マウスオンでシャドウ */
	-webkit-transition: opacity .3s ease-in-out;
	-o-transition: opacity .3s ease-in-out;
	transition: opacity .3s ease-in-out;
}

/* マウスオンでシャドウ */
.execution-common > article:hover {
	-webkit-box-shadow: 0 0 10px 4px rgba(188,188,188,0.3);
	box-shadow: 0 0 10px 4px rgba(188,188,188,0.3);
}

.execution-common > article:not(:last-child) {
	margin: 0 0 44px;
}

.execution-common > article > a {
	display: table;
	table-layout: fixed;
	width: 100%;
	vertical-align: top;

	/* マウスオンで三角形がスライド */
	position: relative;
	overflow: hidden;
}

/* マウスオンで三角形がスライド */
.execution-common > article > a:before {
	content: "";
	width: 50px;
	height: 41px;
	background: #719e1d;
	position: absolute;
	bottom: 0;
	right: 0;
	-webkit-transform: skew(-48deg) translateX(90px);
	    -ms-transform: skew(-48deg) translateX(90px);
	        transform: skew(-48deg) translateX(90px);
	opacity: 0;
	-webkit-transition: opacity .15s, -webkit-transform .1s;
	transition: opacity .15s, -webkit-transform .1s;
	transition: transform .1s, opacity .15s;
	transition: transform .1s, opacity .15s, -webkit-transform .1s;
}

/* マウスオンで三角形がスライド */
.execution-common > article > a:hover:before {
	-webkit-transform: skew(-48deg) translateX(43px);
	    -ms-transform: skew(-48deg) translateX(43px);
	        transform: skew(-48deg) translateX(43px);
	opacity: 1;
	-webkit-transition: opacity .15s .1s, -webkit-transform .1s .1s;
	transition: opacity .15s .1s, -webkit-transform .1s .1s;
	transition: transform .1s .1s, opacity .15s .1s;
	transition: transform .1s .1s, opacity .15s .1s, -webkit-transform .1s .1s;
}

.execution-common-thumb {
	display: table-cell;
	width: 112px;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;

	/* マウスオンでズーム */
	overflow: hidden;
}

.execution-common-thumb img {
	display: block;
	width: 100%;
	height: 84px;
	vertical-align: middle;
	object-fit: cover;
	font-family: 'object-fit: cover;';

	/* マウスオンでズーム */
  transform: scale(1.1);
  transition: all .3s ease-out;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

/* マウスオンでズーム */
.execution-common > article > a:hover .execution-common-thumb img {
  transform: scale(1.0);
  opacity: .7;
}

.execution-common-txt {
	display: table-cell;
	width: 100%;
	padding: 10px;
	vertical-align: top;
	transition: color .3s ease;
}

.execution-common-comment {
	display: none;
}

.execution-common-term {
	margin: 4px 0 0;
	font-size: 1.0rem;
	letter-spacing: 1px;
	transition: all ease-in .3s;
}

.execution-common > article:hover .execution-common-comment {
	color: #005619;
}


@media (min-width: 375px) {

	.execution-common-term {
		font-size: 1.2rem;
	}

}


@media (min-width: 375px) and (max-width: 479px) {

	.execution-common-thumb {
		width: 140px;
	}

	.execution-common-thumb img {
		height: 105px;
	}

	.execution-common-txt {
		padding: 16px;
	}

	.execution-common-term {
		margin: 6px 0 0;
	}

}


@media (max-width: 479px) {

	.short-slider .indicator,
	.section-top-execution {
		background-size: 21% auto;
	}

	.execution-common > article:not(:last-child) {
		margin: 0 0 20px;
	}

}


@media (min-width: 480px) {

	.execution-common-term {
		margin: 6px 0 7px;
	}

	/* マウスオンで三角形がスライド */
	.execution-common > article > a:before {
		width: 60px;
		height: 50px;
	}

}


@media (min-width: 480px) and (max-width: 599px) {

	.execution-common > article:not(:last-child) {
		margin: 0 0 30px;
	}

	.execution-common-thumb {
		width: 200px;
	}

	.execution-common-thumb img {
		height: 150px;
	}

	.execution-common-txt {
		padding: 20px;
	}

}


@media (min-width: 600px) {

	.execution-common-txt {
		padding: 30px;
	}

}


@media (min-width: 600px) and (max-width: 959px) {

	.execution-common > article:not(:last-child) {
		margin: 0 0 40px;
	}

	.execution-common-thumb {
		width: 220px;
	}

	.execution-common-thumb img {
		height: 165px;
	}

}


@media (max-width: 959px) {

	.execution-common > article:hover .execution-common-term {
		color: #005619;
	}

}


@media (min-width: 960px) {

	.execution-common-thumb {
		width: 344px;
	}

	.execution-common-thumb img {
		height: 267px;
	}

	.execution-common-term,
	.execution-common-comment {
		font-size: 1.8rem;
	}

	.execution-common-term {
		color: #719e1d;
	}

	.execution-common-comment {
		display: block;
		transition: all ease-in .3s;
	}

}


@media (min-width: 960px) and (max-width: 1049px) {

	.execution-common > article:not(:last-child) {
		margin: 0 0 50px;
	}

}


@media (min-width: 1050px) {

	.execution-common > article:not(:last-child) {
		margin: 0 0 48px;
	}

}


.section-top-execution-more {
	text-align: center;
}

.section-top-execution-more a {
	display: inline-block;
	background: #719e1d;
	border: 1px solid #719e1d;
	color: #fff;
	transition: all ease-in .2s;
}

.section-top-execution-more a:hover {
	background: #fff;
	color: #719e1d;
}

.section-infomation {
	background: url(img/bg-03.jpg);
}

.information-common article {
	background: #fff;

	/* マウスオンで三角形がスライド (Fifefox対策) */
	overflow: hidden;

	/* マウスオンでシャドウ */
	-webkit-transition: opacity .3s ease-in-out;
	-o-transition: opacity .3s ease-in-out;
	transition: opacity .3s ease-in-out;
}

/* マウスオンでシャドウ */
.information-common article:hover {
	-webkit-box-shadow: 0 0 10px 4px rgba(188,188,188,0.3);
	box-shadow: 0 0 10px 4px rgba(188,188,188,0.3);
}

.information-common article a {
	display: table;
	table-layout: fixed;
	width: 100%;
	vertical-align: top;

	/* マウスオンで三角形がスライド */
	position: relative;
	overflow: hidden;
}

/* マウスオンで三角形がスライド */
.information-common article a:before {
	content: "";
	width: 50px;
	height: 41px;
	background: #60411E;
	position: absolute;
	bottom: 0;
	right: 0;
	-webkit-transform: skew(-48deg) translateX(90px);
		-ms-transform: skew(-48deg) translateX(90px);
			transform: skew(-48deg) translateX(90px);
	opacity: 0;
	-webkit-transition: opacity .15s, -webkit-transform .1s;
	transition: opacity .15s, -webkit-transform .1s;
	transition: transform .1s, opacity .15s;
	transition: transform .1s, opacity .15s, -webkit-transform .1s;
}

/* マウスオンで三角形がスライド */
.information-common article a:hover:before {
	-webkit-transform: skew(-48deg) translateX(43px);
		-ms-transform: skew(-48deg) translateX(43px);
			transform: skew(-48deg) translateX(43px);
	opacity: 1;
	-webkit-transition: opacity .15s .1s, -webkit-transform .1s .1s;
	transition: opacity .15s .1s, -webkit-transform .1s .1s;
	transition: transform .1s .1s, opacity .15s .1s;
	transition: transform .1s .1s, opacity .15s .1s, -webkit-transform .1s .1s;
}

.section-infomation-thumb {
	display: table-cell;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	overflow: hidden;
}

.section-infomation-thumb img {
	display: block;
	width: 100%;
	vertical-align: middle;
	object-fit: cover;
	font-family: 'object-fit: cover;';

	/* マウスオンでズーム */
  transform: scale(1.1);
  transition: all .3s ease-out;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.section-infomation-text {
	display: table-cell;
	width: 100%;
	padding: 10px;
	vertical-align: top;
	transition: color .3s ease;
}

.section-infomation-ttl {
	margin: 0 0 4px;
	transition: all .3s ease-out;
}

.section-infomation-date {
	transition: all .3s ease-out;
}

.information-common article:hover .section-infomation-thumb img {
  transform: scale(1.0);
  opacity: .7;
}

.information-common article:hover .section-infomation-ttl {
	color: #a36209;
}

.information-common article:hover .section-infomation-date {
  color: #a36209;
}

.section-infomation-more {
	text-align: center;
}

.section-infomation-more a {
	display: inline-block;
	background: #60411E;
	border: 1px solid #60411E;
	color: #fff;
	text-align: center;
	transition: all ease-in .2s;
}

.section-infomation-more a:hover {
	background: #fff;
	color: #60411E;
}


@media (max-width: 374px) {

	.section-infomation-thumb {
		width: 112px;
	}

	.section-infomation-thumb img {
		height: 84px;
	}

}


@media (min-width: 375px) and (max-width: 479px) {

	.section-infomation-thumb {
		width: 140px;
	}

	.section-infomation-thumb img {
		height: 105px;
	}

	.section-infomation-ttl {
		margin: 0 0 6px;
	}

	.section-infomation-text {
		padding: 16px;
	}

}


@media (max-width: 479px) {

	.section-infomation {
		background-size: 90% auto;
	}

	.information-common article:not(:last-child) {
		margin: 0 0 16px;
	}

	.section-top-execution-more a,
	.section-infomation-more a {
		padding: 6px 24px;
		font-size: 1.1rem;
		font-weight: bold;
		letter-spacing: 2px;
	}

	.section-infomation-ttl {
		font-size: 1.2rem;
	}

	.section-infomation-date {
		font-size: 1.2rem;
		letter-spacing: 1px;
	}

}


@media (min-width: 480px) {

	.section-infomation-ttl {
		letter-spacing: 1px !important;
	}

	/* マウスオンで三角形がスライド */
	.information-common article a:before {
		width: 60px;
		height: 50px;
	}

}


@media (min-width: 480px) and (max-width: 599px) {

	.information-common article:not(:last-child) {
		margin: 0 0 20px;
	}

	.section-infomation-thumb {
		width: 200px;
	}

	.section-infomation-thumb img {
		height: 150px;
	}

	.section-top-execution-more a,
	.section-infomation-more a {
		padding: 7px 24px;
		font-size: 1.2rem;
		letter-spacing: 2px;
	}

	.section-infomation-text {
		padding: 20px;
	}

}


@media (min-width: 600px) {

	.section-top-execution-more a,
	.section-infomation-more a {
		padding: 8px 27px;
		font-size: 1.4rem;
		letter-spacing: 4px;
	}

	.section-top-execution-more a {
		border: 2px solid #719e1d;
	}

	.section-infomation-more a {
		border: 2px solid #60411E;
	}


}


@media (min-width: 600px) and (max-width: 709px) {

	.information-common article:not(:last-child) {
			margin: 0 0 30px;
	}

	.section-infomation-thumb {
		width: 220px;
	}

	.section-infomation-thumb img {
		height: 165px;
	}

	.section-infomation-text {
		padding: 30px;
	}

}


@media (min-width: 710px) {

	.information-common article a {
		display: block;
	}

	.section-infomation-thumb {
		display: block;	
	}

	.section-infomation-thumb img {
		display: inline-block;
		margin: 0 auto;
	}

	.information-common {
		width: 100%;
		overflow: hidden;
	}

	.information-common article {
		float: left;
	}

	.information-common article:hover .section-infomation-ttl {
		border-bottom: 1px solid #d1ad88;
	}

	.section-infomation-text {
		padding: 18px;
	}

	.section-infomation-ttl {
		display: inline-block;
		padding: 0 0 1px;
		margin: 0 0 12px;
		border-bottom: 1px solid #333;
		font-size: 1.7rem;
		font-weight: normal;
	}

	.section-infomation-date {
		font-size: 1.6rem;
		letter-spacing: 1px !important;
	}

}


@media (min-width: 710px) and (max-width: 767px) {

	.information-common article {
		width: 50%;
		width: calc(((100% - 30px)/2) - .01px);
		width: -webkit-calc(((100% - 30px)/2) - .01px);
		width: -moz-calc(((100% - 30px)/2) - .01px);
		margin: 0 30px 30px 0;
	}

	.information-common article:nth-of-type(2n) {
		margin-right: 0;
	}

	.information-common article:nth-last-of-type(-n+2) {
		margin-bottom: 0;
	}

	.section-infomation-thumb img {
		height: 253px;
	}

}


@media (min-width: 768px) and (max-width: 959px) {

	.information-common article {
		width: 50%;
		width: calc(((100% - 30px)/2) - .01px);
		width: -webkit-calc(((100% - 30px)/2) - .01px);
		width: -moz-calc(((100% - 30px)/2) - .01px);
		margin: 0 30px 30px 0;
	}

	.information-common article:nth-of-type(2n) {
		margin-right: 0;
	}

	.information-common article:nth-last-of-type(-n+2) {
		margin-bottom: 0;
	}

	.section-infomation-thumb img {
		height: 320px;
	}

}


@media (min-width: 960px) and (max-width: 1199px) {

	.information-common article {
		width: 50%;
		width: calc(((100% - 44px)/2) - .01px);
		width: -webkit-calc(((100% - 44px)/2) - .01px);
		width: -moz-calc(((100% - 44px)/2) - .01px);
		margin: 0 44px 44px 0;
	}

	.information-common article:nth-of-type(2n) {
		margin-right: 0;
	}

	.information-common article:nth-last-of-type(-n+2) {
		margin-bottom: 0;
	}

	.section-infomation-thumb img {
		height: 362px;
	}

}


@media (min-width: 1200px) {

	.information-common article {
		width: 33.3333%;
		width: calc(((100% - 88px)/3) - .01px);
		width: -webkit-calc(((100% - 88px)/3) - .01px);
		width: -moz-calc(((100% - 88px)/3) - .01px);
		margin: 0 44px 0 0;
	}

	.information-common article:nth-of-type(3n) {
		margin-right: 0;
	}

	.information-common article:nth-of-type(n+4) {
		margin-top: 44px;
	}

	.section-infomation-thumb img {
		height: 234px;
	}

}

.section-company {
	background: #fff;
}

.section-company-inr a {
	display: block; /* 画像の2枚重ね表示におけるFirefox向け対策 */
	width: 100%;
	position: relative;
}

.section-company-inr img {
	width: 100%;
	/* -webkit-backface-visibility: hidden; 非使用 (画像の2枚重ね表示におけるSafari向け対策) */
	backface-visibility: hidden;	
}

.section-company-in-off {
	position: absolute;
	transition: all ease-in 0.2s;
}

.section-company-in-off:hover {
	opacity: 0;
	position: absolute;
}


@media (max-width: 479px) {

	.section-company-inr li:not(:last-child) {
		margin-bottom: 16px;
	}

}


@media (min-width: 480px) {

	.section-company-inr {
		overflow: hidden;
		width: 100%;
	}

	.section-company-inr li {
		float: left;
		width: 33.3333%;
	}

}




/* ＝＝＝＝＝ 施工事例の一覧ページ (全ターム) ＝＝＝＝＝ */

.post-type-archive-execution .header-execution a {
	color: #719e1d;
	border-bottom: 2px solid #719e1d;
}

.section-archive-execution {
	background: url(img/bg-01.png) center -50px;
}

.wp-pagenavi {
	text-align: center;
}
		
.wp-pagenavi a {
	display: inline-block;
	padding: 4px 14px;
	font-weight: bold;
	color: #719e1d;
	transition: all ease-in .1s;
}

.wp-pagenavi a:hover {
	color: #005619;
}

.wp-pagenavi .current {
	background: #eee;
	border-radius: 3px;
	font-weight: bold;
}

.blog .wp-pagenavi .current {
	background: #fff;
}

.wp-pagenavi .prev,
.wp-pagenavi .next {
	background: #719e1d;
	color: #fff;
	border-radius: 3px;
}

.wp-pagenavi .prev:hover,
.wp-pagenavi .next:hover {
	background: #fff;
	color: #719e1d;
}


@media (max-width: 479px) {

	.tax-execution-cat #breadcrumb,
	.tax-execution-cat .section-archive-execution,
	.post-type-archive-execution #breadcrumb,
	.post-type-archive-execution .section-archive-execution {
		background-size: 21% auto;
	}

	.section-archive-execution {
		padding: 20px 16px 30px;
	}

	.wp-pagenavi a {
		padding: 1px 10px 2px;
		font-size: 1.2rem;
	}

	.wp-pagenavi .current {
		padding: 5px 9px 6px;
		font-size: 1.2rem;
	}

}


@media (min-width: 480px) {

	.wp-pagenavi > * {
		margin: 0 6px;
	}
		
	.wp-pagenavi a {
		padding: 4px 14px;
	}

	.wp-pagenavi .current {
		padding: 10px 14px;
	}

}


@media (min-width: 480px) and (max-width: 599px) {

	.section-archive-execution {
		padding: 20px 20px 30px;
	}

}


@media (min-width: 600px) and (max-width: 959px) {

	.section-archive-execution {
		padding: 10px 30px 40px;
	}

}


@media (min-width: 960px) and (max-width: 1049px) {

	.section-archive-execution {
		padding: 10px 40px 50px;
	}

}


@media (min-width: 1050px) {

	.section-archive-execution {
		margin: 0 48px 48px;
	}

	.section-archive-execution {
		padding: 48px;
	}

}




/* ＝＝＝＝＝ 施工事例の一覧ページ (特定ターム) ＝＝＝＝＝ */

.tax-execution-cat .header-execution a {
	color: #719e1d;
	border-bottom: 2px solid #719e1d;
}

.page-numbers {
	text-align: center;
}

.page-numbers > * {
	display: inline-block;
}
		
.page-numbers a {
	display: inline-block;
	font-weight: bold;
	color: #719e1d;
	transition: all ease-in .1s;
}

.page-numbers a:hover {
	color: #005619;
}

.page-numbers .current {
	background: #eee;
	border-radius: 3px;
	font-weight: bold;
}

.page-numbers .prev,
.page-numbers .next {
	background: #719e1d;
	color: #fff;
	border-radius: 3px;
}

.page-numbers .prev:hover,
.page-numbers .next:hover {
	background: #fff;
	color: #719e1d;
}


@media (max-width: 479px) {

	.page-numbers a {
		padding: 1px 10px 2px;
		font-size: 1.2rem;
	}

	.page-numbers .current {
		padding: 5px 9px 6px;
		font-size: 1.2rem;
	}

}


@media (min-width: 480px) {

	.page-numbers > * {
		margin: 0 6px;
	}
		
	.page-numbers a {
		padding: 4px 14px;
	}

	.page-numbers .current {
		padding: 10px 14px;
	}

}




/* ＝＝＝＝＝ 施工事例の詳細ページ ＝＝＝＝＝ */

.single-execution .header-execution a {
	color: #719e1d;
	border-bottom: 2px solid #719e1d;
}

.section-execution-ttl {
	text-align: center;
}

.section-execution-summary {
  width: 100%;
  overflow: hidden;
	
	/* ↓要素の高さを統一 */
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;	
}

.section-execution-summary > div {
	z-index: 2;
}

.section-execution-summary > div:nth-of-type(2) {
	background: #fff;
	border: 1px solid #005619;
	border-radius: 6px;
	font-family: "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif;
}

.section-execution-summary > div:nth-of-type(2) dl {
	display: table;
	width: 100%;
	table-layout: fixed;
	padding: 20px 20px 0;
}

.section-execution-summary > div:nth-of-type(2) dl:last-of-type {
	padding: 20px;
}

.section-execution-summary > div:nth-of-type(2) dt,
.section-execution-summary > div:nth-of-type(2) dd {
	display: table-cell;
	vertical-align: middle;
}

.section-execution-summary > div:nth-of-type(2) dt {
	font-weight: normal;
}

.section-execution-summary > div:nth-of-type(2) dt i {
	padding: 0 8px 0 0;
	color: #005619;
}

.section-execution-summary img {
	border-radius: 6px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}
		
.section-execution-proposal {
	background: #fff;
	position: relative;
	font-family: "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif;
}

.section-execution-proposal img {
	position: absolute;
}

.drawing-1 {
	width: 300px;
	position: absolute;
	top: 320px;
	left: -266px;
	margin-bottom: 0 !important;
}

.drawing-2 {
	width: 400px;
	position: absolute;
	top: 14px;
	right: -172px;
	margin-bottom: 0 !important;
}

.before-img-1-2,
.before-img-1 {
	background: url(img/bg-01.png) center -50px;
	border-radius: 6px;
	position: relative;
}

.before-img-1-2 ul {
	width: 100%;
	overflow: hidden;
}

.before-img-1-2 li {
	float: left;
}

.before-img-1-2 li:only-child {
	display: block;
	margin: 0 auto;
	float: none;
}

.before-img-1-2 li:empty {
  display: none;
}

.before-img-1 li {
	display: block;
	margin: 0 auto;
}

.before-img-1 li:only-child {
	display: block;
	margin: 0 auto;
	float: none;
}

.before-img-1 li img {
	width: 100%;
	border-radius: 6px;
}

.before-img-1-2 li img {
	width: 100%;
	border-radius: 6px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.before-img-1 li p,
.before-img-1-2 li p {
	text-align: center;
	letter-spacing: 1px;
}

.before-img-1 li p i,
.before-img-1-2 li p i {
	color: #60411E;
}

.before-img-1 li p:empty,
.before-img-1-2 li p:empty {
	display: none;
}

.execution-arrow {
	position: absolute;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}

.after-img li:only-child {
	display: block;
  width: 100%;
	margin: 0 auto;
	float: none;
}

.after-img li:empty {
  display: none;
}

.after-img img {
  width: 100%;
	border-radius: 6px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.after-img li:only-child img {
	height: auto;
	object-fit: fill;
	font-family: sans-serif;
}

.after-img li p {
	text-align: center;
	letter-spacing: 1px;
}

.after-img li p i {
	color: #719e1d;
}

.after-img li p:empty {
	display: none;
}

.execution-cta {
	background: #ff7508;
	padding: 10px 10px;
	border-radius: 6px;
	text-align: center;
	transition: all ease-in .2s;
}

.execution-cta a {
	font-family: 'Cinzel', "游明朝", YuMincho, "ヒラギノ明朝 ProN","Hiragino Mincho ProN","Hiragino Mincho ProN","HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	color: #fff;
}

.execution-cta a i {
	padding-right: 6px;
}

.execution-cta:hover {
	background: #fff;
}

.execution-cta:hover a {
	color: #ff7508;
}


@media (max-width: 479px) {

	.section-execution-summary > div {
		margin-bottom: 20px;
	}

	.section-execution-summary > div:nth-of-type(2) {
		margin-bottom: 18px;
	}

	.section-execution-summary > div:nth-of-type(2) dl {
		padding: 10px 16px 0;
	}

	.section-execution-summary > div:nth-of-type(2) dl:first-of-type {
		padding-top: 16px;
	}

	.section-execution-summary > div:nth-of-type(2) dl:last-of-type {
		padding: 10px 16px 16px;
	}

	.section-execution-summary > div:nth-of-type(2) dt {
		width: 28%;
	}

	.section-execution-proposal {
		padding: 30px 20px 20px;
		border-radius: 10px;
	}

	.section-execution-proposal img {
		width: 60px;
		bottom: -16px;
		right: 14px;
	}

	.before-img-1-2,
	.before-img-1 {
		padding: 16px;
		border: solid 2px #e9e6e1;
		margin-bottom: 69px !important;
	}

	.execution-arrow {
		width: 30px;
		bottom: -74px;
	}

	.after-img li p,
	.before-img-1 li p,
	.before-img-1-2 li p {
		margin-top: 6px;
		font-size: 1.4rem;
	}

	.before-img-1-2 li:not(:last-child) {
		margin-bottom: 20px;
	}

	.after-img li p i,
	.before-img-1 li p i,
	.before-img-1-2 li p i {
		padding: 0 4px 0 0;
	}

	.after-img li:not(:last-child) {
		margin-bottom: 20px;
	}

	.execution-cta {
		border: 1px solid #ff7508;
	}

}


@media (min-width: 480px) {

	.section-execution-summary > div:nth-of-type(2) {
		border: 2px solid #005619;
	}

	.section-execution-proposal {
		padding: 38px 30px 30px;
		border-radius: 12px;
	}

	.section-execution-proposal img {
		width: 100px;
		bottom: -23px;
		right: 26px;
	}

	.after-img li p i,
	.before-img-1 li p i,
	.before-img-1-2 li p i {
		padding: 0 8px 0 0;
	}

	.execution-cta {
		padding: 10px 12px;
		border: 2px solid #ff7508;
	}

}


@media (min-width: 480px) and (max-width: 599px) {

	.section-execution-summary > div {
		margin-bottom: 20px;
	}

	.section-execution-summary > div:nth-of-type(2) dt {
		width: 21%;
	}

	.before-img-1-2,
	.before-img-1 {
		padding: 20px;
		border: solid 2px #e9e6e1;
		margin-bottom: 89px !important;
	}

	.before-img-1-2 li:not(:last-child) {
		margin-bottom: 20px;
	}

	.execution-arrow {
		width: 40px;
		bottom: -96px;
	}

	.after-img li:not(:last-child) {
		margin-bottom: 20px;
	}

	.after-img li p,
	.before-img-1 li p,
	.before-img-1-2 li p {
		margin-top: 8px;
		font-size: 1.4rem;
	}

	.execution-cta {
		letter-spacing: 1px;
	}

	.execution-cta a {
		font-size: 1.4rem;
	}

}


@media (min-width: 600px) {

	.execution-arrow {
		width: 50px;
	}

	.after-img li p,
	.before-img-1 li p,
	.before-img-1-2 li p {
		margin-top: 12px;
	}

	.after-img ul {
		width: 100%;
		overflow: hidden;
	}

	.after-img li {
		float: left;
	}

	.execution-cta {
		letter-spacing: 2px;
	}

}


@media (min-width: 600px) and (max-width: 959px) {

	.section-execution-summary > div {
		margin-bottom: 30px;
	}

	.section-execution-summary > div:nth-of-type(2) {
		margin-bottom: 20px;
	}

	.before-img-1-2,
	.before-img-1 {
		padding: 28px 30px 30px;
		border: solid 4px #e9e6e1;
		margin-bottom: 122px !important;
	}

	.before-img-1-2 li {
		width: 50%;
		width: calc(((100% - 30px)/2) - .01px);
		width: -webkit-calc(((100% - 30px)/2) - .01px);
		width: -moz-calc(((100% - 30px)/2) - .01px);
		margin: 0 30px 30px 0;
	}

	.before-img-1-2 li:nth-child(2n) {
		margin-right: 0;
	}

	.before-img-1-2 li:nth-last-child(-n+2) {
		margin-bottom: 0;
	}

	.execution-arrow {
		bottom: -126px;
	}

	.after-img li {
		width: 50%;
		width: calc(((100% - 30px)/2) - .01px);
		width: -webkit-calc(((100% - 30px)/2) - .01px);
		width: -moz-calc(((100% - 30px)/2) - .01px);
		margin: 0 30px 30px 0;
	}

	.after-img li:nth-child(2n) {
		margin-right: 0;
	}

	.after-img li:nth-last-child(-n+2) {
		margin-bottom: 0;
	}

	.after-img img {
		height: 326px;
	}

	.section-execution-summary > div:nth-of-type(2) dt {
		width: 18%;
	}

}


@media (min-width: 600px) and (max-width: 767px) {

	.before-img-1-2 li img {
		height: 166px;
	}

	.after-img img {
		height: 191px;
	}

}


@media (min-width: 768px) and (max-width: 959px) {

	.before-img-1-2 li img {
		height: 229px;
	}

	.after-img img {
		height: 254px;
	}

}


@media (max-width: 959px) {

	.section-execution-summary > div {
		width: 100%;
	}

	.section-execution-summary img {
		width: 100%;
	}

}


@media (min-width: 960px) {

	.section-execution-summary > div {
		float: left;
		z-index: 2;
		width: 50%;
		width: calc(((100% - 40px)/2) - .01px);
		width: -webkit-calc(((100% - 40px)/2) - .01px);
		width: -moz-calc(((100% - 40px)/2) - .01px);
		margin: 0 40px 0 0;
	}

	.section-execution-summary > div:nth-of-type(2) {
		border-radius: 8px;
		margin: 0;
	}

	.section-execution-summary img {
		border-radius: 8px;
	}

	.before-img-1-2,
	.before-img-1 {
		border-radius: 8px;
	}

	.before-img-1-2 li {
		width: 50%;
		width: calc(((100% - 40px)/2) - .01px);
		width: -webkit-calc(((100% - 40px)/2) - .01px);
		width: -moz-calc(((100% - 40px)/2) - .01px);
		margin: 0 40px 40px 0;
	}

	.before-img-1-2 li:nth-child(2n) {
		margin-right: 0;
	}

	.before-img-1-2 li:nth-last-child(-n+2) {
		margin-bottom: 0;
	}

	.before-img-1 li img {
		border-radius: 8px;
	}

	.before-img-1-2 li img {
		border-radius: 8px;
	}

	.after-img img {
		border-radius: 8px;
	}

	.after-img li {
		width: 50%;
		width: calc(((100% - 40px)/2) - .01px);
		width: -webkit-calc(((100% - 40px)/2) - .01px);
		width: -moz-calc(((100% - 40px)/2) - .01px);
		margin: 0 40px 40px 0;
	}

	.after-img li:nth-child(2n) {
		margin-right: 0;
	}

	.after-img li:nth-last-child(-n+2) {
		margin-bottom: 0;
	}

	.section-execution-summary > div:nth-of-type(2) dt {
		width: 22%;
	}

	.execution-cta {
		border-radius: 8px;
	}

}


@media (min-width: 960px) and (max-width: 1049px) {

	.section-execution-summary img {
		height: 315px;
	}

	.before-img-1-2,
	.before-img-1 {
		padding: 36px 40px 40px;
		border: solid 4px #e9e6e1;
		margin-bottom: 142px !important;
	}

	.before-img-1-2 li img {
		height: 282px;
	}

	.execution-arrow {
		bottom: -136px;
	}

	.after-img img {
		height: 315px;
	}

}


@media (max-width: 1049px) {

	.ornament {
		display: none;
	}

}


@media (min-width: 1050px) {

	.execution-arrow {
		bottom: -136px;
	}

	.before-img-1-2,
	.before-img-1 {
		margin-bottom: 142px !important;
		padding: 38px 48px 48px;
		border: solid 4px #e9e6e1;
	}

	.execution-cta a {
		font-size: 1.8rem;
	}

	.section-execution-summary img {
		height: 369px;
	}

	.before-img-1-2 li img {
		height: 330px;
	}

	.after-img img {
		height: 369px;
	}

}




/* ＝＝＝＝＝ 「当社の強み」ページ ＝＝＝＝＝ */

.advantage .header-advantage a {
	color: #719e1d;
	border-bottom: 2px solid #719e1d;
}

.section-advantage {
	background: url(img/bg-05.jpg);
}

.contents-full {
	position: relative;
}

.advantage-img img {
	border-radius: 6px 6px 0 0;
}

.advantage-cap {
	position: relative;
	background: #fff;
	border-radius: 0 0 6px 6px;
}

.advantage-num {
	position: absolute;
	font-family: 'Squada One', cursive;
	color: #719e1d;
	opacity: .7;
}

.advantage-cap strong {
	background: linear-gradient(transparent 70%,#fff001 40%);
}

.advantage-cap p:not(:last-child) {
 margin-bottom: 2em;
}


@media (max-width: 479px) {

	.section-advantage {
		background-size: 40% auto;
		padding: 20px 16px 30px;
	}

	.sec-advantage:not(:last-of-type) {
		margin-bottom: 30px;
	}

	.advantage-cap {
		padding: 16px;
		padding: 38px 16px 16px;
	}

	.advantage-cap p {
		font-size: 1.3rem;
	}

	.sec-advantage-1 .advantage-num,
	.sec-advantage-2 .advantage-num {
		left: 16px;
	}

	.advantage-num {
		top: -14px;
		font-size: 3rem;
		letter-spacing: 1px;
	}

}


@media (min-width: 480px) and (max-width: 599px) {

	.section-advantage {
		padding: 20px 20px 30px;
	}

	.sec-advantage:not(:last-of-type) {
		margin-bottom: 30px;
	}

	.advantage-cap {
		padding: 50px 20px 20px;
	}

	.sec-advantage-1 .advantage-num,
	.sec-advantage-2 .advantage-num {
		left: 20px;
	}

	.advantage-num {
		top: -20px;
		font-size: 4rem;
		letter-spacing: 1px;
		opacity: .7;
	}

}


@media (min-width: 600px) {

	.br-pc-none {
		display: none;
	}

}


@media (min-width: 600px) and (max-width: 767px) {

	.advantage-cap {
		padding: 50px 30px 30px;
	}

	.advantage-num {
		top: -20px;
		font-size: 4rem;
		letter-spacing: 1px;
	}

}


@media (min-width: 600px) and (max-width: 959px) {

	.section-advantage {
		padding: 10px 30px 40px;
	}

	.sec-advantage:not(:last-of-type) {
		margin-bottom: 40px;
	}

	.advantage-cap-container {
		overflow: hidden;
	}

	.sec-advantage-1 .advantage-num,
	.sec-advantage-2 .advantage-num {
		left: 30px;
	}

}


@media (min-width: 768px) and (max-width: 959px) {

	.advantage-cap {
		padding: 30px;
	}

	.advantage-num {
		top: -20px;
		font-size: 4rem;
		letter-spacing: 1px;
	}

}


@media (max-width: 959px) {

	.advantage-cap-container {
		overflow: hidden;
		top: 0 !important; /* 「IE (10-11)」向けの上下センタリング */
		transform: translateY(0%) translateX(0%) !important; /* 「IE (10-11)」向けの上下センタリング */
		-webkit-\ transform: translateY(0%) translateX(0%) !important; /* 「IE (10-11)」向けの上下センタリング */
	}

}


@media (min-width: 960px) {

	.advantage-cap-container {
		z-index: 2;
	}

	.advantage-img {
		position: absolute;
		top: 0;
	}

	.advantage-img img {
		display: block;
		width: 100%;
		border-radius: 8px;
		vertical-align: middle;
		object-fit: cover;
		font-family: 'object-fit: cover;';
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
	}

	.sec-advantage {
		position: relative;
    display: flex;
    align-items: center;
	}

	.advantage-img {
		display: block;
		height: 100%;
	}

	.sec-advantage-1 .advantage-img {
		left: 0;
	}

	.sec-advantage-2 .advantage-img {
		right: 0;
	}

	.advantage-cap {
		border-radius: 8px;
	}

	.sec-advantage-1 .advantage-num {
		right: 0;
	}

	.sec-advantage-2 .advantage-num {
		left: 0;
	}

}


@media (min-width: 960px) and (max-width: 1049px) {

	.section-advantage {
		padding: 10px 40px 50px;
	}

	.sec-advantage:not(:last-child) {
		margin: 0 0 50px;
	}

	.advantage-cap-container {
		-ms-flex: 0 0 62%;
		flex: 0 0 62%;
		max-width: 62%;
	}

	.sec-advantage-1 .advantage-cap-container {
		margin-left: 38%;
	}

	.sec-advantage-2 .advantage-cap-container {
		margin-right: 38%;
	}

	.advantage-img img,
	.sec-advantage {
		height: 650px;
	}

	.advantage-cap {
		padding: 40px;
	}

	.advantage-num {
		top: -47px;
		font-size: 4rem;
		letter-spacing: 1px;
	}

	.advantage-img {
		width: 80%;
	}

}

@media (min-width: 1050px) {

	.section-advantage {
		padding: 48px;
		margin: 0 48px 48px;
	}

	.sec-advantage:not(:last-child) {
		margin: 0 0 60px;
	}

	.advantage-img {
		width: 70%;
	}

}


@media (min-width: 1050px) and (max-width: 1365px) {

	.advantage-cap-container {
		-ms-flex: 0 0 58%;
		flex: 0 0 58%;
		max-width: 58%;
	}

	.sec-advantage-1 .advantage-cap-container {
		margin-left: 42%;
	}

	.sec-advantage-2 .advantage-cap-container {
		margin-right: 42%;
	}

	.advantage-img img,
	.sec-advantage {
		height: 640px;
	}

	.advantage-cap {
		padding: 40px;
	}

	.advantage-num {
		top: -71px;
		font-size: 6rem;
		letter-spacing: 1px;
	}

}


@media (min-width: 1366px) and (max-width: 1535px) {

	.advantage-cap-container {
		-ms-flex: 0 0 48%;
		flex: 0 0 48%;
		max-width: 48%;
	}

	.sec-advantage-1 .advantage-cap-container {
		margin-left: 52%;
	}

	.sec-advantage-2 .advantage-cap-container {
		margin-right: 52%;
	}

	.advantage-img img,
	.sec-advantage {
		height: 617px;
	}

	.advantage-cap {
		padding: 40px;
	}

	.advantage-num {
		top: -94px;
		font-size: 8rem;
		letter-spacing: 2px;
	}

}


@media (min-width: 1536px) {

	.advantage-cap-container {
		-ms-flex: 0 0 41.66667%;
		flex: 0 0 41.66667%;
		max-width: 41.66667%;
	}

	.sec-advantage-1 .advantage-cap-container {
		margin-left: 58.33333%;
	}

	.sec-advantage-2 .advantage-cap-container {
		margin-right: 58.33333%;
	}

	.advantage-cap {
		padding: 50px;
	}

	.advantage-num {
		top: -106px;
		font-size: 9rem;
		letter-spacing: 2px;
	}

}


@media (min-width: 1536px) and (max-width: 1919px) {

	.advantage-img img,
	.sec-advantage {
		height: 706px;
	}

}


@media (min-width: 1920px) {

	.advantage-img img,
	.sec-advantage {
		height: 700px;
	}

}




/* ＝＝＝＝＝ 「お知らせ」一覧ページ ＝＝＝＝＝ */

.blog .header-information a {
	color: #719e1d;
	border-bottom: 2px solid #719e1d;
}

.section-archive {
	background: url(img/bg-03.jpg);
}


@media (max-width: 479px) {

	.section-archive {
		padding: 20px 16px 30px;
    background-size: 90% auto;
	}

	.single .section-archive {
		padding: 30px 16px 30px;
	}

}


@media (min-width: 480px) and (max-width: 599px) {

	.section-archive {
		padding: 20px 20px 30px;
	}

	.single .section-archive {
		padding: 30px 20px 30px;
	}

}


@media (min-width: 600px) and (max-width: 959px) {

	.section-archive {
		padding: 10px 30px 40px;
	}

	.single .section-archive {
		padding: 40px 30px 40px;
	}

}


@media (min-width: 960px) and (max-width: 1049px) {

	.section-archive {
		padding: 10px 40px 50px;
	}

	.single .section-archive {
		padding: 50px 40px 50px;
	}

}


@media (min-width: 1050px) {

	.section-archive {
		background: url(img/bg-03.jpg);
		padding: 48px;
		margin: 0 48px 48px;
	}

}




/* ＝＝＝＝＝ 「お知らせ」詳細ページ ＝＝＝＝＝ */

.single-post .header-information a {
	color: #719e1d;
	border-bottom: 2px solid #719e1d;
}

.single-post .contents-inr {
	position: relative;
}

.letter {
	width: 300px;
	position: absolute;
	top: 14px;
	right: -172px;
	margin-bottom: 0 !important;
}

.information-single {
	background: #fff;
	border: 1px solid #60411E;
	border-radius: 6px;
	z-index: 2;
	position: relative;
}

.information-single-pagination {
	overflow: hidden;
}

.information-single-pagination > span {
  width: 33.3333%;
	height: 22px;
  word-break: break-all;
	font-size: 1.2rem;
	transition: all ease-in .2s;
}

.information-single-center {
  float: left;
  text-align: center;
	text-decoration: underline;
}

.information-single-prev {
  float: left;
  text-align: left;
}

.information-single-next {
  float: right;
  text-align: right;
}

.information-single-pagination a {
	transition: all ease-in .2s;
}

.information-single-pagination > span:hover,
.information-single-pagination > span:hover a {
	color: #a36209;
}


@media (max-width: 479px) {

	.information-single {
		padding: 16px;
	}

}


@media (min-width: 480px) {

	.information-single {
		border: 2px solid #60411E;
	}

	.information-single-pagination > span {
		height: 27px;
		font-size: 1.6rem;
	}

}


@media (min-width: 480px) and (max-width: 599px) {

	.information-single {
		padding: 20px;
	}

}


@media (min-width: 600px) and (max-width: 959px) {

	.information-single {
		padding: 30px;
	}

}


@media (min-width: 960px) and (max-width: 1049px) {

	.information-single {
		padding: 40px;
	}

}


@media (min-width: 960px) {

	.information-single {
		border-radius: 8px;
	}

}


@media (min-width: 1050px) {

	.information-single {
		padding: 48px;
	}

}




/* ＝＝＝＝＝ 「会社案内」ページ ＝＝＝＝＝ */

.company .header-company a {
	color: #719e1d;
	border-bottom: 2px solid #719e1d;
}

.section-greetings {
	background: url(img/bg-06.jpg);
}

.section-greetings .container {
	border: 1px solid #719e1d;
}

.greetings-r p:last-child {
	font-family: '游明朝体', 'YuMincho', '游明朝', 'Yu Mincho', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN W3', HiraMinProN-W3, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
	letter-spacing: 2px;
	text-align: right;
}

.section-business .container {
	padding-top: 0;
	padding-bottom: 0;
}

.section-business {
	
}

.section-business dl {
	overflow: hidden;
	letter-spacing: 1px;
}

.section-business dl:not(:last-child) {
	background-image: linear-gradient(to right, #ccc, #ccc 2px, transparent 2px, transparent 4px);
	background-size: 8px 2px;
	background-position: bottom;
	background-repeat: repeat-x;
}
		
.section-business dt {
	float: left;
	padding-right: 20px;
}

.section-business dd {
	float: right;
}

.section-business dd a {
	color: #719e1d;
	text-decoration: underline;
	transition: all ease-in .2s;
}

.section-business dd a:hover {
	color: #005619;
}

.section-organization {
	background: url(img/bg-02.jpg);
}

.section-organization .contents-inr {
	position: relative;
}

.section-organization .container {
	border: 1px solid #ddd;
}

.carpenter {
	width: 300px;
	position: absolute;
	top: 14px;
	right: -282px;
	margin-bottom: 0 !important;
}

.section-organization dl {
	overflow: hidden;
	letter-spacing: 1px;
}

.section-organization dl:not(:last-child) {
	background-image: linear-gradient(to right, #ccc, #ccc 2px, transparent 2px, transparent 4px);
	background-size: 8px 2px;
	background-position: bottom;
	background-repeat: repeat-x;
}

.section-organization dt {
	float: left;
	width: 38%;
	padding-right: 20px;
	font-weight: normal;
}

.section-organization dt i {
	padding-right: 7px;
}

.section-organization dd {
	float: right;
	width: 62%;
}


@media (max-width: 479px) {

	.section-greetings {
		background-size: 18% auto;
		padding: 20px 16px 30px;
	}

	.section-business {
		padding: 30px 16px;
	}

	.section-organization {
		background-size: 30% auto;
		padding: 30px 16px;
	}

	.container {
		padding: 20px;
	}

	#wrapper .section-greetings .greetings-l {
		margin-bottom: 8px;
	}

	.section-business dt {
		width: 100%;
		padding-right: 0;
		padding-bottom: 2px;
	}

	.section-business dd {
		width: 100%;
	}

	.section-business dl,
	.section-business dl a {
		font-size: 1.3rem;
	}

	.section-organization dl {
		font-size: 1.3rem;
	}

	.section-organization dt {
		width: 100%;
		padding-right: 0;
		padding-bottom: 4px;
	}

	.section-organization dd {
		width: 100%;
	}

}


@media (min-width: 480px) {

	.section-greetings .container {
		border: 2px solid #719e1d;
	}

	.section-organization .container {
		border: 2px solid #ddd;
	}

}


@media (max-width: 599px) {

	.section-business .container > *:not(:last-child) {
		margin: 0 0 20px;
	}

	.section-business dl:not(:last-child) {
		padding-bottom: 20px;
	}

	.section-organization dl:not(:last-child) {
		padding-bottom: 20px;
	}

	.section-organization .container > *:not(:last-child) {
		margin: 0 0 20px;
	}

}


@media (min-width: 480px) and (max-width: 599px) {

	.section-greetings {
		padding: 20px 20px 30px;
	}

	.section-business {
		padding: 30px 20px;
	}

	.section-organization {
		padding: 30px 20px;
	}

	.container {
		padding: 20px;
	}

	#wrapper .section-greetings .greetings-l {
		margin-bottom: 10px;
	}

	.section-business dt {
		width: 28%;
	}

	.section-business dd {
		width: 72%;
	}

	.section-business dl,
	.section-business dl a {
		font-size: 1.4rem;
	}

}


@media (min-width: 600px) {

	.section-business .container > *:not(:last-child) {
		margin: 0 0 20px;
	}

	.section-business dl:not(:last-child) {
		padding-bottom: 20px;
	}

	.section-organization dl:not(:last-child) {
		padding-bottom: 20px;
	}

	.section-organization .container > *:not(:last-child) {
		margin: 0 0 20px;
	}

}


@media (min-width: 600px) and (max-width: 767px) {

	#wrapper .section-greetings .greetings-l {
		margin-bottom: 20px;
	}

}


@media (min-width: 600px) and (max-width: 959px) {

	.section-greetings {
		padding: 10px 30px 40px;
	}

	.section-business {
		padding: 40px 30px;
	}

	.section-organization {
		padding: 40px 30px;
	}

	.container {
		padding: 30px;
	}

	.section-business dt {
		width: 28%;
	}

	.section-business dd {
		width: 72%;
	}

}


@media (min-width: 768px) {

	.section-greetings .container {
		width: 100%;
		overflow: hidden;
	}

}


@media (min-width: 768px) and (max-width: 959px) {

	#wrapper .section-greetings .greetings-l,
	#wrapper .section-greetings .greetings-r {
		width: 50%;
		float: left;
		width: calc(((100% - 30px)/2) - .01px);
		width: -webkit-calc(((100% - 30px)/2) - .01px);
		width: -moz-calc(((100% - 30px)/2) - .01px);
	}

	#wrapper .section-greetings .greetings-l {
		margin: 0 30px 0 0;
	}

	#wrapper .section-greetings .greetings-r {
		margin: 0;
	}

}


@media (min-width: 960px) {

	#wrapper .section-greetings .greetings-l,
	#wrapper .section-greetings .greetings-r {
		width: 50%;
		float: left;
		width: calc(((100% - 40px)/2) - .01px);
		width: -webkit-calc(((100% - 40px)/2) - .01px);
		width: -moz-calc(((100% - 40px)/2) - .01px);
	}

	#wrapper .section-greetings .greetings-l {
		margin: 0 40px 0 0;
	}

	#wrapper .section-greetings .greetings-r {
		margin: 0;
	}

	.section-business dt {
		width: 24%;
	}

	.section-business dd {
		width: 76%;
	}

}


@media (min-width: 960px) and (max-width: 1049px) {

	.section-greetings {
		padding: 10px 40px 50px;
	}

	.section-business {
		padding: 50px 40px;
	}

	.section-organization {
		padding: 50px 40px;
	}

	.container {
		padding: 40px;
	}

}


@media (min-width: 1050px) {

	.section-greetings {
		padding: 48px;
		margin: 0 48px;
	}

	.section-business {
		padding: 48px;
		margin: 0 48px;
	}

	.section-organization {
		padding: 48px;
		margin: 0 48px 48px;
	}

}


@media (min-width: 1050px) {

	.container {
		padding: 48px;
	}

}




/* ＝＝＝＝＝ 「お問い合わせ」ページ ＝＝＝＝＝ */

.contact .header-contact a {
	color: #719e1d;
	border-bottom: 2px solid #719e1d;

}

.contact .contents-inr {
	position: relative;
}

.light {
	width: 200px;
	position: absolute;
	top: 30px;
	left: -280px;
	margin-bottom: 0 !important;
}

.section-contact {
	background: url(img/bg-03.jpg);
}

.container {
	background: #fff;
	border-radius: 6px;
	z-index: 2;
	position: relative;
}

.contact-tel p,
.contact-tel a {
	letter-spacing: 1px;
}

.contact-tel a {
	font-weight: bold;
	color: #719e1d;
	transition: all ease-in .2s;
}

.contact-tel a:hover {
	color: #005619;
}

.contact-form *,
.contact-form *::before,
.contact-form *::after {
	border-style: solid;
	border-width: 0;
}

.contact-form table {
	width: 100%;
}

.contact-form th {
	display: table-cell;
	vertical-align: top;
	letter-spacing: 1px;
}

.form-required {
	background: #719e1d;
	padding: 6px 8px 7px;
	margin: 0 0 0 20px;
	border-radius: 2px;
	font-size: 1.2rem;
	font-weight: normal;
	color: #fff;
	letter-spacing: 2px;
}

.wpcf7-text,
.wpcf7-textarea {
	width: 100%;
	padding: 12px;
	background: #f5f5f5;
	border-radius: 4px;
}

.form-send input {
  display: block;
  border: 1px solid #719e1d;
  background: #719e1d;
  border-radius: 4px;
  color: #fff;
	transition: all ease-in .2s;
}

.form-send input:hover {
  border: 1px solid #005619;
  background: #005619;
}

div.wpcf7 .ajax-loader {
	display: none;
}

span.wpcf7-not-valid-tip {
	margin-top: -30px;
	padding-bottom: 30px;
	font-size: 1.4rem;
	color: #FF7508;
	letter-spacing: 1px;
}

div.wpcf7-response-output,
div.wpcf7-mail-sent-ok {
	margin: 30px 0 0;
	padding: 12px;
	border-radius: 4px;
	font-size: 1.4rem;
	letter-spacing: 1px;
	text-align: center;
}

div.wpcf7-response-output {
	border: 2px solid #FF7508;
}

div.wpcf7-mail-sent-ok {
	border: 2px solid #719e1d;
}

.form-privacy {
	text-align: center;
}

.form-privacy a {
	color: #60411E;
	letter-spacing: 1px;
	text-decoration: underline;
	transition: all ease-in .2s;
}

.form-privacy a:hover {
	color: #ff7508;
}


@media (max-width: 479px) {

	.section-contact {
		background-size: 90% auto;
		padding: 20px 16px 30px;
	}

	.contact .container > *:not(:last-child) {
		margin: 0 0 20px;
	}

	.contact .wpcf7-list-item {
		margin: 0;
	}

	.contact-form th {
		margin-bottom: 10px;
	}

	.form-required {
		vertical-align: 1px;
		margin: 0 0 0 12px;
	}

	.contact-form td {
		margin-bottom: 20px;
	}

	.contact-form tr:last-child td {
		margin-bottom: 12px;
	}

	.contact-form .h3-5 + p {
		margin-bottom: 24px;
	}

	.form-send input {
		margin: 20px auto 0;
	}

	.wpcf7-form table tr:nth-child(5) th {
		margin-bottom: 0;
	}

	span.wpcf7-not-valid-tip {
		margin-top: 6px;
		padding-bottom: 0;
		font-size: 1.2rem;
	}

	.wpcf7-form table tr:nth-child(6) span.wpcf7-not-valid-tip {
		margin-top: 0;
	}

	div.wpcf7-response-output {
		border: 1px solid #FF7508;
		margin: 16px 0 0;
    padding: 10px;
    font-size: 1.2rem;
	}

	.form-send input {
		width: 100%;
		height: 40px;
		letter-spacing: 3px;
	}

}


@media (min-width: 480px) {

	.form-send input {
		width: 200px;
		height: 50px;
		letter-spacing: 3px;
	}

}


@media (min-width: 480px) and (max-width: 599px) {

	.section-contact {
		padding: 30px;
	}

	.contact .container > *:not(:last-child) {
		margin: 0 0 20px;
	}

	.contact .wpcf7-list-item {
		margin: 0;
	}

	.contact-form th {
		margin-bottom: 10px;
	}

	.form-required {
		vertical-align: 2px;
	}

	.contact-form td {
		margin-bottom: 30px;
	}

	.contact-form tr:last-child td {
		margin-bottom: 10px;
	}

	.contact-form .h3-5 + p {
		margin-bottom: 20px;
	}

	.form-send input {
		margin: 20px auto 0;
	}

	.wpcf7-form table tr:nth-child(5) th {
		margin-bottom: 0;
	}

	span.wpcf7-not-valid-tip {
		margin-top: 10px;
		padding-bottom: 0;
	}

}


@media (min-width: 600px) {

	.contact-form .h3-5 + p {
		margin-bottom: 30px;
	}

}


@media (min-width: 600px) and (max-width: 959px) {

	.section-contact {
		padding: 10px 30px 40px;
	}

	.contact .container > *:not(:last-child) {
		margin: 0 0 30px;
	}

	.contact .wpcf7-list-item {
		margin: 0;
	}

	.contact-form th {
		margin-bottom: 10px;
	}

	.form-required {
		vertical-align: 2px;
	}

	.contact-form td {
		margin-bottom: 30px;
	}

	.form-send input {
		margin: 30px auto 0;
	}

	.wpcf7-form table tr:nth-child(5) th {
		margin-bottom: 0;
	}

	span.wpcf7-not-valid-tip {
		margin-top: 10px;
		padding-bottom: 0;
	}

}


@media (max-width: 959px) {

	.contact-form th,
	.contact-form td {
		width: 100%;
		float: left;
	}

}


@media (min-width: 960px) {

	.container {
		border-radius: 8px;
	}

	.wpcf7-text,
	.wpcf7-textarea {
		margin-bottom: 40px;
	}

	.contact .wpcf7-list-item {
		margin: 0 0 40px;
	}

	.form-send input {
		margin: 40px auto 0;
	}

}


@media (min-width: 960px) and (max-width: 1049px) {

	.section-contact {
		padding: 10px 40px 50px;
	}

	.contact-form th {
		max-width: 170px;
	}

	.contact .container > *:not(:last-child) {
		margin: 0 0 40px;
	}

}


@media (min-width: 1050px) {

	.section-contact {
		padding: 48px;
		margin: 0 48px 48px;
	}

	.contact .container > *:not(:last-child) {
		margin: 0 0 48px;
	}

}


@media (min-width: 1050px) and (max-width: 1219px) {

	.contact-form th {
		max-width: 190px;
	}

}


@media (min-width: 1220px) {

	.contact-form th {
		width: 240px;
	}

}




/* ＝＝＝＝＝ 「プライバシー ポリシー」ページ ＝＝＝＝＝ */

.privacy .header-contact a {
	color: #719e1d;
	border-bottom: 2px solid #719e1d;
}

.privacy .container dl li {
	list-style-type: disc;
	list-style-position: inside;
}

.privacy .container dt:not(:last-child) {
	border-bottom: 1px solid #ddd;
}


@media (max-width: 479px) {

	.privacy .container dt {
		padding: 0 0 10px;
		margin: 0 0 12px;
	}

	.privacy .container dl {
		font-size: 1.4rem;
	}

}


@media (min-width: 480px) {

	.privacy .container dt {
		padding: 0 0 10px;
		margin: 0 0 12px;
	}

	.privacy .container dd {
		font-size: 1.4rem;
	}

}




/* ＝＝＝＝＝ 「404エラー」ページ ＝＝＝＝＝ */

.error404-p {
	margin: 0 48px 48px;
	font-size: 1.7rem;
	letter-spacing: 1px;
	text-align: center;
}
