@charset "UTF-8";
/* ----------------------------------------------------------------------------------------------------
*  基本情報
* --------------------------------------------------------------------------------------------------*/
html, body {
	height: 100%;
}
html {
	font-size: 62.5%;
	overflow-y: scroll;
}
body {
	width: 100%;
}
body.fixed {
	position: fixed;
}
@media screen and (min-width: 768px) {
	body {
		min-width: 1280px;
		position: relative;
	}
}
body, h1, h2, h3, h4, h5, h6, p, address, ul, ol, li, dl, dt, dd, table, th, td, img, form {
	margin: 0;
	padding: 0;
	border: none;
	line-height: 1.6;
	list-style-type: none;
	font-style: normal;
	font-size: 1.6rem;
	font-weight: 400;
	font-family: 'Noto Sans JP', sans-serif;
	text-align: left;
	color: #022202;
   font-weight: 300;
   letter-spacing: 0.03em;
}
@media screen and (max-width: 768px) {
	body, h1, h2, h3, h4, h5, h6, p, address, ul, ol, li, dl, dt, dd, table, th, td, img, form {
		font-size: 1.4rem;
	}
}
img {
	vertical-align: middle;
	-webkit-backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
	img {
		height: auto;
		width: 100%;
	}
}
a {
	color: #022202;
	text-decoration: none;
}

@media screen and (min-width: 768px) {
	a[href^="tel:"] {
		display: inline-block;
		pointer-events: none;
	}
}

.mc {
	color: #7BA327;
}

/*for wp*/
.aligncenter {
	text-align: center;
}
.alignleft {
	text-align: left;
}
.alignright {
	text-align: right;
}
.post img.aligncenter {
	display: block;
	margin: 0 auto;
}
.post img.alignright {
	display: block;
	margin: 0 0 0 auto;
}
.post img.alignleft {
	display: block;
	margin: 0 auto 0 0;
}


/* ----------------------------------------------------------------------------------------------------
*  ヘッダー
* --------------------------------------------------------------------------------------------------*/
#header {
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	min-width: 1280px;
	width: 100%;
	z-index: 100;
	box-shadow: 0 0 5px 2px rgba(0,0,0,0.1);
}


.logo {
	max-width: 220px;
}
.logo img {
	width: 100%;
}
.headerWrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 100px;
	margin: 0 auto;
	padding: 28px 3% 28px 4%;
}
.gNav ul {
	align-items: center;
	display: flex;
	justify-content: flex-end;
}
.gNav ul li {
	font-size: 1.6rem;
	margin: 0 1.5%;
	transition: 0.3s;
}
.gNav ul li a {
	font-weight: 500;
	letter-spacing: -0.5px;
	transition: 0.3s;
	white-space: nowrap;
}
.gNav ul li a:hover {
	opacity: 0.5;
}
.gNav ul.minigNav {
    margin-right: 0;
    font-weight: 300;
    margin-bottom: 10px;
}
.gNav ul.minigNav li{
    position: relative;
    margin-left: 15px;
}
.gNav ul.minigNav li::after{
    content: "＞";
    font-size: 0.8em;
    left: 3px;
    position: relative;
}
.gNav ul.minigNav li a{
    font-weight: 300;
    text-decoration: underline;
}
#header li.pBtn a {
	border:2px solid #7BA327;
	color: #fff;
	display: block;
	font-weight: 700;
	text-align: center;
}
#header li.pBtn.modelhouse {
	margin: 0 0.5% 0 2%;
}
#header li.pBtn.modelhouse a {
	background: #7BA327 url("../images/ico_header_model.png") no-repeat 15px center;
	border-radius: 30px;
	padding: 12px 20px 12px 47px;
}
#header li.pBtn.request {
	margin-right: 0;
}
#header li.pBtn.request a {
	background: #7BA327 url("/wp/wp-content/uploads/2024/12/appointment-icon.png") no-repeat 21px center;
	border-radius: 30px;
	padding: 12px 20px 12px 50px;
}
#header li.pBtn a:hover {
	color: #7BA327;
	opacity: 1;
}
#header li.pBtn.modelhouse a:hover {
	background: #fff url("../images/ico_header_model_hv.png") no-repeat 15px center;
}
#header li.pBtn.request a:hover {
	background: #fff url("/wp/wp-content/uploads/2024/12/appointment-icon-hv.png") no-repeat 21px center;
}

.gNav.pc.flex > div{
    margin-right: 20px;
}

@media screen and (min-width: 1601px) {
	.logo {
		width: 14%;
	}
	.headerWrap {
		padding: 28px 2% 28px 2%;
	}
	#header li.pBtn.modelhouse {
		margin: 0 10px 0 15px;
	}
	#header li.pBtn.modelhouse a {
		background-size: 18px 16px;
		background-position: 15px center;
		padding: 10px 20px 10px 40px;
	}
	#header li.pBtn.request a {
		background-size: 15px 18px;
		background-position: 12px center;
		padding: 10px 20px 10px 35px;
	}
	#header li.pBtn.modelhouse a:hover {
		background: #fff url("../images/ico_header_model_hv.png") no-repeat 15px center;
		background-size: 18px 16px;
	}
	#header li.pBtn.request a:hover {
		background: #fff url("/wp/wp-content/uploads/2024/12/appointment-icon-hv.png") no-repeat 13px center;
		background-size: 15px 18px;
	}

.ie #header {
	width: 93%;
	}
}
@media screen and (max-width: 1600px) {
	.gNav ul li {
		font-size: 1.4rem;
		margin: 0 7px;
	}
}
@media screen and (max-width: 1400px) {
	.gNav ul li {
		font-size: 1.0rem;
		margin: 0 5px;
	}
}
@media screen and (max-width: 767px) {
	body {}
	#header {
		min-width: auto;
		/*overflow: hidden;*/
		width: 100%;
	}
	.logo {
		width: 152px;
	}
	.headerWrap {
		background: #fff;
		padding: 22px 2% 22px 2%;
		position: static;
		height: 70px;
		z-index: 10;
	}
	.headerWrap.open {}
	.toggle {
		display: inline-block;
		box-sizing: border-box;
		position: absolute;
		right: 5%;
		top: 12px;
		transition: 0.5s;
		width: 44px;
		height: 44px;
		z-index: 1000;
	}
	.toggle.active {
		background: #7BA327;
		right: 80%;
		top: 0;
	}
	.toggle span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
		position: absolute;
		left: 10px;
		width: 25px;
		height: 2px;
		background-color: #7BA327;
		border-radius: 0;
	}
	.toggle.active span {
		background-color: #fff;
	}
	.toggle span:nth-of-type(1) {
		top: 12px;
	}
	.toggle span:nth-of-type(2) {
		top: 21px;
	}
	.toggle span:nth-of-type(3) {
		bottom: 12px;
	}
	.toggle.active span:nth-of-type(1) {
		transform: translateY(7px) rotate(45deg);
	}
	.toggle.active span:nth-of-type(2) {
		opacity: 0;
	}
	.toggle.active span:nth-of-type(3) {
		transform: translateY(-11px) rotate(-45deg);
	}
	.gNavSp {
		position: fixed;
		left: auto;
		height: 100%;
		overflow-y: scroll;
		max-height: 100%;
		right: -80%;
		top: 0;
		transition: 0.5s;
		width: 80%;
		z-index: 100;
	}
	.open .gNavSp {
		right: 0;
	}
	/*.gNavSp .logo {
		position: relative;
		left: -9%;
		width: 150px;
	}*/
	.gNavSp .category {
		background: #D7E3BD;
	}
	.gNavSp .catName {
		border-bottom: 1px solid #fff;
		font-size: 1.6rem;
		font-weight: 500;
		padding: 15px 10% 15px 5%;
		position: relative;
	}
	.gNavSp .catName:before, 
	.gNavSp .catName:after {
		border-top: 3px solid #022202;
		content: '';
		display: block;
		position: absolute;
		transition: 0.3s;
		height: 15px;
		width: 15px;
	}
	.gNavSp .catName:before {
		right: 10%;
		top: 25px;
	}
	.gNavSp .catName:after {
		right: calc(10% + 6px);
		top: 19px;
		transform: rotate(90deg);
	}
	.gNavSp .catName.on:after {
		transform: rotate(0deg);
		right: 10%;
		top: 25px;
	}
	.gNavSp .underMenu {
		display: none;
	}
	.gNavSp .underMenu li {
		background: #F1F6E9;
	}
	.gNavSp .underMenu li a {
		border-bottom: 1px solid #7BA327;
		display: block;
		padding: 12px 5% 12px 10%;
		position: relative;
	}
	.gNavSp .underMenu li:last-child a {
		border-bottom:none;
	}
	.gNavSp .menu {
		background: #D7E3BD;
	}
	.gNavSp .menu li a {
		border-bottom: 1px solid #fff;
		font-size: 1.6rem;
		font-weight: 500;
		display: block;
		padding: 12px 5%;
		position: relative;
	}
	.gNavSp .btnMenu {
		background: #fff;
		display: flex;
		justify-content: space-between;
		padding :20px 5%;
	}
	#header .gNavSp .btnMenu li.pBtn {
		width: 48.5%;
	}
	#header .gNavSp .btnMenu li.pBtn a{
		border-radius: 10px;		
	}
	#header .gNavSp .btnMenu li.pBtn.modelhouse {
		margin: 0 3% 0 0;
	}
	#header .gNavSp .btnMenu li.pBtn.modelhouse a {
		background: #7BA327 url(../images/ico_header_model_sp.png) no-repeat center 8px;
		background-size: 34px 32px;
		padding: 45px 0 10px;
	}
	#header .gNavSp .btnMenu li.pBtn.request {
		margin-bottom: 0px;
	}
	#header .gNavSp .btnMenu li.pBtn.request a {
		background: #7BA327 url(/wp/wp-content/uploads/2024/12/appointment-icon-sp.png) no-repeat center 8px;
		background-size: 23px 32px;
		padding: 45px 0 10px;
	}
  #header li.pBtn a:hover {
    color: #fff;
    opacity: 1;
  }
}
/*header fixed分*/
#main {
	padding-top: 100px;
}
@media screen and (max-width: 767px) {
	#main {
		padding-top: 70px;
	}
}
/* ----------------------------------------------------------------------------------------------------
*  フッタ
* --------------------------------------------------------------------------------------------------*/
/*for pagetop */
#footer {
	position: relative;
}
.cv {
	background: rgba(123, 163, 39, 0.5);
	padding: 40px 0;
}
.cv .whBox {
	background: #fff;
	padding: 20px 80px 30px;
	margin: 0 auto;
	width: 1053px;
}
.cv .cvHead {
	font-size: 2.8rem;
	font-weight: 700;
	position: relative;
	top: -40px;
	text-align: center;
}
.cv .cvBtn {
	display: flex;
	justify-content: space-between;
}
.cv .cvBtn li a {
	border: 1px solid #FFA331;
	border-radius: 16px;
	box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.2);
	color: #FFA331;
	display: block;
	font-size: 2rem;
	font-weight: 700;
	height: 120px;
	padding: 70px 0 0;
	position: relative;
	text-align: center;
	transition: 0.3s;
	width: 390px;
}

.cv .cvBtn li a:before {
	content: '';
	display: block;
	left: 0;
	right: 0;
	margin: 0 auto;
	position: absolute;
	transition: 0.3s;
}
.cv .cvBtn li.contact a:before {
	background: url("../images/ico_footer_contact.png") no-repeat center;
	height: 28px;
	top: 25px;
	width: 35px;
}
.cv .cvBtn li.request a {
	background: #FFA331;
	color: #fff;
}
.cv .cvBtn li.request a:before {
	background: url("../images/ico_footer_request_wh.png") no-repeat center;
	height: 40px;
	top: 18px;
	width: 29px;
}


.cv .cvBtn li a:after {
	content: '';
	display: block;
	border-top: 2px solid #FFA331;
	border-right: 2px solid #FFA331;
	height: 8px;
	position: absolute;
	right: 5%;
	top:calc(50% - 2px);
	transform: rotate(45deg);
	transition: 0.3s;
	width: 8px;
}
.cv .cvBtn li.request a:after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

/*hover*/

@media screen and (min-width: 768px) {
	.cv .cvBtn li a:hover {
		background: #FFA331;
		box-shadow: none;
		color: #fff;
	}
	.cv .cvBtn li.contact a:hover:before {
		background: url("../images/ico_footer_contact_wh.png") no-repeat center;
	}
	.cv .cvBtn li.request a:hover{
		background: #fff;
		color: #FFA331;
	}
		.cv .cvBtn li.request a:hover:before {
		background: url("../images/ico_footer_request.png") no-repeat center;
	}
		.cv .cvBtn li a:hover:after {
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}
		.cv .cvBtn li.request a:hover:after {
		border-top: 2px solid #FFA331;
		border-right: 2px solid #FFA331;
	}
}
@media screen and (max-width: 767px) {
	.cv {
		padding: 50px 5%;
	}
	.cv .whBox {
		padding: 0 5% 20px;
		width: 100%;
	}
	.cv .cvHead {
		font-size: 1.8rem;
		line-height: 1.4;
		top: -15px;
	}
	.cv .cvBtn{
		flex-wrap: wrap;
	}
	.cv .cvBtn li {
		width: 100%;
	}
	.cv .cvBtn li + li {
		order: 1;
	}
	.cv .cvBtn li:first-child{
		order: 2;
		margin-top: 20px;
	}
	.cv .cvBtn li a {
		font-size: 1.4rem;
		line-height: 1.2;
		height: 90px;
		padding: 45px 0 0;
		width: 100%;
	}
	.cv .cvBtn li.contact a:before {
		background-size: cover;
		height: 20px;
		top: 15px;
		width: 25px;
	}
	.cv .cvBtn li.request a {
		padding: 52px 0 0;
	}
	.cv .cvBtn li.request a:before {
		background-size: cover;
		height: 25px;
		top: 12px;
		width: 18px;
	}
	
}
.footHead .inner {
	margin: 0 auto;
	max-width: 1280px
}
.footHead .flex {
	align-items: center;
	flex-wrap: wrap;
	height: 100px;
	padding: 10px 0;
	position: relative;
}
.footHead .logo {
	width: 220px;
}
.footHead .txt {
	margin-left: 15px;
}
.footHead .txt p {
	letter-spacing: -0.2px;
}

.footHead .tel {
	position: absolute;
	right: 0;
	top: 5px;
}
.footHead .tel p {
	font-size: 1.4rem;
	text-align: right;
	letter-spacing: -0.5px;
}
.footHead .tel p:nth-of-type(2) {
	font-size: 1.6rem;
}
.footHead .tel a {
	color: #7BA327;
	font-size: 3.6rem;
	font-weight: 700;
	margin-left: 6px;
}
.footBody {
	background: #000;
	padding: 50px 0 60px;
}
.footBody .wrap {
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1280px;
}
.footBody .col {
	margin-top: 60px;
}
.footBody .col:first-of-type {
	margin-top: 0;
}
.footBody .category {
	margin-bottom: 30px;
}
.footBody .category .subCategory {
	margin-left: 20px;
}
.footBody .category .subCategory ul {
	margin-left: 20px;
}
.footBody a {
	color: #fff;
}
.footBody .catName, .footBody .catSubName {
	/*font-size: 1.9rem;*/
	margin-bottom: 10px;
}
.footBody .catSubName {
	margin-bottom: 15px;
	margin-left: 20px;
}
.footBody .subCatList {
	margin-left: 40px;
}

.footBody li {
	font-size: 1.6rem;
	margin-bottom: 15px;
	padding: 0 0 0 1.5rem;
	position: relative;
}
.footBody li:before {
	content: '-';
	color: #fff;
	position: absolute;
	left: 2px;
}
.copyright {
	background: #707070;
	padding: 20px 0;
}
.copyright p {
	color: #fff;
	text-align: center;
}


@media screen and (max-width: 1200px) and (min-width: 768px) {
  .footHead .inner {
    padding: 0 4%;
  }
  .footHead .txt p {
    font-size: 1.3vw;
  }
  .footBody .wrap {
    padding: 0 4%;
  }
  
  .fixedBtn {
		background: rgba(123,164,39,1);
		bottom: 0;
		position: fixed;
		left: 0;
		width: 100%;
		z-index:20;
	}
  .fixedBtn.sp {
     display: block!important;
  }
	.fixedBtn ul {
		display: flex;
		justify-content: space-between;
	}
	.fixedBtn ul li {
		width: 50%;
	}
	.fixedBtn ul li a {
		color: #022202;
		display: block;
		font-weight: 700;
		justify-content: center;
		padding: 29px 0 0;
		position: relative;
		height: 96px;
		text-align: center;
		width: 100%;
	}
	.fixedBtn ul li:nth-child(2) a {
		color: #fff;
		font-size: 1rem;
		line-height: 1;
	}
  .fixedBtn ul li:nth-child(3) {
    display: none;
  }
  
	.fixedBtn ul li a:after {
		background: #fff;
		content: '';
		display: block;
		height: 30px;
		width: 2px;
		position: absolute;
		right: 0;
		top: calc(50% - 15px);
	}
	.fixedBtn ul li:last-child a:after {
		content: none;
	}
  .fixedBtn ul li:nth-child(2) a:after {
		content: none;
	}
	.fixedBtn ul li a img {
		height: 47px;
		width: auto;
	}
	
  
}

@media screen and (max-width: 767px) {
	.footHead {
		border-top: 1px solid #ccc;
	}
	.footHead .txt {
		margin: 0;
	}
	.footHead .logo {
		margin-bottom: 10px;
	}
	.footHead .txt p {
		font-size: 1rem;
	}
	.copyright {
		border-top: 25px solid #000;
		padding: 8px 0 63px;	
	}
	.copyright p {
		font-size: 1.2rem;
		letter-spacing: 0.5px;
	}
	.fixedBtn {
		background: rgba(123,164,39,1);
		bottom: 0;
		position: fixed;
		left: 0;
		width: 100%;
		z-index:20;
	}
	.fixedBtn ul {
		display: flex;
		justify-content: space-between;
	}
	.fixedBtn ul li {
		width: 33%;
	}
	.fixedBtn ul li a {
		color: #022202;
		display: block;
		font-weight: 700;
		justify-content: center;
		padding: 10px 0 0;
		position: relative;
		height: 64px;
		text-align: center;
		width: 100%;
	}
	.fixedBtn ul li:nth-child(2) a {
		color: #fff;
		font-size: 1rem;
		line-height: 1;
	}
	.fixedBtn ul li a:after {
		background: #fff;
		content: '';
		display: block;
		height: 30px;
		width: 2px;
		position: absolute;
		right: 0;
		top: calc(50% - 15px);
	}
	.fixedBtn ul li:last-child a:after {
		content: none;
	}
	.fixedBtn ul li a img {
		height: 47px;
		width: auto;
	}
	

}

@media screen and (max-width: 767px) and (orientation:landscape) {
	.fixedBtn ul li:nth-child(2) a span {
		display: block;
	}
}

/* ----------------------------------------------------------------------------------------------------
*  汎用アイテム
* --------------------------------------------------------------------------------------------------*/
.flex {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.flex.bw {
	justify-content: space-between;
}
.flex.cnt {
	justify-content: center;
}
.flex.fdr {
	flex-direction: row-reverse;
}

.flex.col2, .flex.col3 {
	align-items: flex-start;
}

.flex.col2 .column {
	margin-right: 4%;
	width: 48%;
}
.flex.col3 .column {	
	margin-right: 3%;
	width: 31%;
}
.flex.col2.bw .column, .flex.col3.bw .column {
	margin-right: 0;
}
.flex.col3 .column:nth-child(3n) {
	margin-right: 0;
}

@media screen and (max-width: 767px) {
	.flex {
		display: block;
	}
	.flex.col2 .column, .flex.col3 .column {
		width: 100%;
		margin-right: 0;
	}
	.flex .column + .column {
		margin-top: 30px;
	}
}

/*spのみcol2*/
@media screen and (max-width: 767px) {
	.spcol2 {
		display: flex;
		justify-content: flex-start;
		align-items: stretch;
	}
	.spcol2 .column, .flex.spcol2 .column {
		margin: 0 0 30px;
		width: 49%;
	}
	.spcol2 .column:nth-of-type(2n) {
		margin-left: 2%;
	}
}


.inner {
	margin: 0 auto;
	max-width: 1200px;
}
.inner.w1280 {
	max-width: 1200px;
}
@media screen and (max-width: 767px) {
	.inner {
		padding: 0 5%;
	}
}
.tac {
	text-align: center;
}
/*eng*/
.eng {
	font-family: sofia-pro, sans-serif;
}
/*見出しゴシック*/
.mdg {
	font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
	font-weight: 600;
	font-style: normal;
}
/*背景色あり画像*/
.fadeUpImg {
	position: relative;
	z-index: 0;
}
.fadeUpImg:after {
	background: #7BA327;
	content: '';
	display: block;
	height: 100%;
	position: absolute;
	right: -10px;
	bottom: -10px;
	width: 100%;
	z-index: -1;
}
@media screen and (max-width: 767px) {
	.fadeUpImg:after {
		right: -6px;
		bottom: -6px;
	}
}
/*ボタン*/
.btn {
	align-items: center;
	background: #7BA327;
	border-radius: 32px;
	box-shadow: 0 5px 15px 0px rgba(0, 0, 0, 0.1);
	color: #fff;
	display: flex;
	font-size: 1.8rem;
	font-weight: 500;
	justify-content: center;
	height: 64px;
	margin: 0 auto;
	position: relative;
	text-align: center;
	transition: 0.3s;
	width: 400px;
}
.btn:after {
	border-style: solid;
	border-width: 4px 0 4px 8px;
	border-color: transparent transparent transparent #ffffff;
	content: '';
	display: block;
	height: 0;
	width: 0;
	position: absolute;
	right: 14px;
	top: calc(50% - 4px);
}
.btn:hover {
	background: #60801F;
	box-shadow: none;
}
@media screen and (max-width: 767px) {
	.btn {
		box-shadow: 0 5px 15px 0px rgba(0, 0, 0, 0.2);
		font-size: 1.35rem;
		height: 46px;
		width: 220px;
	}
}
.more {
	background: url("../images/ico_arrow.png") no-repeat 99% center;
	background-size: 20px 20px;
	color: #7BA327;
	display: inline-block;
	font-weight: 700;
	font-size: 1.4rem;
	padding: 0 35px 0 0;
	transition: 0.3s;
}
a.more:hover {
	opacity: 0.5;
}

.back {
	background: url("../images/ico_arrow_back.png") no-repeat left center;
	background-size: 20px 20px;
	color: #7BA327;
	display: inline-block;
	font-weight: 700;
	font-size: 1.4rem;
	padding: 0 0 0 35px;
	transition: 0.3s;
}
.back:hover {
	opacity: 0.5;
}

/*汎用タイトル*/
.ttl {
	color: #7BA327;
	font-size: 2.8rem;
	font-weight: 700;
	margin-bottom: 35px;
}
@media screen and (max-width: 767px) {
	.ttl {
		font-size: 2.2rem;
		margin-bottom: 20px;
	}
}

/*汎用ヘッドライン*/
.headline.gen {
	font-size: 3rem;
	font-weight: 700;
	margin-bottom: 75px;
	padding-bottom: 55px;
	position: relative;
	text-align: center;
}
.headline.gen:after {
	background: #7BA327;
	bottom: 0;
	content: '';
	display: block;
	height: 44px;
	left: 0;
	margin: 0 auto;
	position: absolute;
	right: 0;
	width: 2px;
}

@media screen and (max-width: 767px) {
	.headline.gen {
		font-size: 2rem;
		letter-spacing: -1px;
		margin-bottom: 20px;
		padding-bottom: 42px;
	}
	.headline.gen:after {
		height: 33px;
	}
}


/*汎用テーブル*/
table {
	border-collapse: separate;
	border-spacing: 5px 3px;
	width: 100%;
}
table th {
	background: #EEEEEE;
	
	font-weight: 700;
	padding: 12px 20px;
		min-width: 150px;
}
table td {
	background: #F5F5F5;
	padding: 12px 20px
}
@media screen and (max-width: 767px) {
	table th, table td {
		display: block;
	}
	table th {
		border: 0;
	}
	table td {
		margin-bottom: 5px;
	}
}



/*＝＝＝＝＝＝ページヘッダ＝＝＝＝＝＝*/
.pageHeadGray {
	margin: 0 0 65px;
	position: relative;
	z-index: 0;
}
.pageHeadGray:after {
	background: #F7F7F7;
	content: '';
	display: block;
	height: 440px;
	position: absolute;
	right: 0;
	top: 0;
	max-width: 1710px;
	width: 96%;
	z-index: -1;
}
.pageHeadGray .inner {
	align-items: flex-start;
	justify-content: space-between;
	max-width: 1280px;
	padding-top: 85px;
}
.pageHeadGray .txt {
	margin-left: 90px;
	width: 560px;
}
.pageHeadGray .txt .catch {
	font-size: 3.2rem;
	font-weight: 900;
	letter-spacing: -1px;
	line-height: 1.3;
	margin-bottom: 35px;
	min-height: 9rem;
	padding-bottom: 35px;
	position: relative;
}
.pageHeadGray .txt .catch:after {
	background: #7BA327;
	content: '';
	display: block;
	height: 5px;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 110px;
}
.pageHeadGray .txt .lead {
	font-size: 1.8rem;
	line-height: 2;
}
.pageHeadGray .img {
	margin: 10px 0 0 0;
	width: 538px;
}
@media screen and (max-width: 1320px) {
	.pageHeadGray .img {
		margin-right: 10px;
	}
}

.pageHeadGray .img img {
	object-fit: cover;
	font-family: 'object-fit: cover;';
	height: 361px;
	width: 100%;
}

@media screen and (max-width: 767px) {
	.pageHeadGray {
		margin-bottom: 70px;
	}
	.pageHeadGray:after {
		height: calc(100% + 60px);
		width: 80%;
	}
	.pageHeadGray .inner {
		padding-top: 40px;
	}
	.pageHeadGray .txt {
		margin: 0;
		width: 100%;
	}
	.pageHeadGray .txt .catch {
		font-size: 2.3rem;
		min-height: auto;
		margin-bottom: 35px;
	}
	.pageHeadGray .txt .lead {
		font-size: 1.6rem;
		line-height: 1.8;
		margin-bottom: 30px;
	}
	.pageHeadGray .img {
		margin-right: 0;
		width: 100%;
	}
	.pageHeadGray .img img {
		height: 250px;
	}
}
.breadCrumbs {
	margin: 30px 0 50px;
}
.breadCrumbs .inner {
	max-width: 1280px;
}
.breadCrumbs ul {
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
}
.breadCrumbs ul li {
	margin-left: 20px;	
	position: relative;
}
.breadCrumbs ul li a {
	text-decoration: underline;
	transition: 0.3s;
}
.breadCrumbs ul li a:hover {
	text-decoration: none;
}
.breadCrumbs ul li:before {
	content: '>';
	display: inline-block;
	position: absolute;
	pointer-events: none;
	left: -12px;
}
.breadCrumbs ul li:first-child:before {
	content: none;
}

@media screen and (max-width: 767px) {
	.breadCrumbs {
		margin: 20px 0 50px
	}
	.breadCrumbs ul {
		justify-content: flex-start;
	}
	.breadCrumbs ul li {
		font-size: 1rem;
		margin: 0 15px 5px 0;
	}
	.breadCrumbs ul li:before {
		left: -9px;
	}
}
/*＝＝＝＝＝＝コンテンツ＝＝＝＝＝＝*/
.contentsHead {
	margin-bottom: 155px;
}
.contentsHead .headline {
	font-size: 3rem;
	font-weight: 700;
	margin-bottom: 75px;
	padding-bottom: 55px;
	position: relative;
	text-align: center;
}
.contentsHead .headline:after {
	background: #7BA327;
	bottom: 0;
	content: '';
	display: block;
	height: 44px;
	left: 0;
	margin: 0 auto;
	position: absolute;
	right: 0;
	width: 2px;
}
.contentsHead .headline .eng {
	color: #7BA327;
	display: block;
	font-size: 2rem;
	margin-bottom: 5px;
}
.contentsHead p {
	line-height: 2.2;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.contentsHead {
		margin-bottom: 80px;
	}
	.contentsHead .headline {
		font-size: 2.3rem;
		letter-spacing: -1px;
		margin-bottom: 20px;
		padding-bottom: 42px;
	}
	.contentsHead .headline .eng {
		font-size: 1.6rem;
		letter-spacing: 0;
	}
	.contentsHead .headline:after {
		height: 33px;
	}
	.contentsHead p {
		line-height: 1.8;
	}
}

/*imgCol2*/
.imgCol2 {
	align-items: flex-start;
	justify-content: flex-end;
	margin-bottom: 250px;
}
a.imgCol2 {
	transition: 0.3s;
}
a.imgCol2:hover {
	opacity: 0.5;
}
.imgCol2 .txt {
	margin: 0 110px 0 0;
	width: 400px;
}

.imgCol2 .txt p {
	line-height: 2.2;
}

.imgCol2 .img {
	width: 560px;
}
.imgCol2 .img img {
	width: 100%;
}
.imgCol2.fdr {
	justify-content: flex-end;
}
.imgCol2.fdr .img {
	margin-left: 0;
}
.imgCol2.fdr .txt {
	margin: 0 0 0 100px;
}

.imgCol2 .btnWrap {
	margin-top: 30px;
	text-align: right;
}
@media screen and (max-width: 767px) {
	.imgCol2 .img, .imgCol2 .txt, .imgCol2.fdr .img, .imgCol2.fdr .txt {
		margin: 0;
		width: 100%;
	}
	.imgCol2 {
		margin-bottom: 50px;
	}
	.imgCol2 .txt, .imgCol2.fdr .txt {
		margin-bottom: 30px;
	}
	.imgCol2 .txt p {
		line-height: 1.75;
	}
	.imgCol2 .btnWrap {
		margin-top: 10px;
	}
}
.imgCol3 {
	align-items: flex-start;
}
.imgCol3 .unit{
	margin-right: 3%;
	width: 31%;	
}
.imgCol3 .unit:nth-child(3n) {
	margin-right: 0;
}
.imgCol3 .unit img {
	margin-bottom: 15px;
}
.imgCol3 .unit p {
	line-height: 2.2;
}

@media screen and (max-width: 767px) {
	.imgCol3 .unit{
		margin: 0 0 30px;
		width: 100%;		
	}
}

.bgQtrGray {	
	padding-bottom: 100px;
	position: relative;
}

.bgQtrGray + .bgQtrGray {
	margin-top: 300px;
}

.bgQtrGray:after {
	background: rgba(0, 0, 0, 0.03);
	content: '';
	display: block;
	height: 100%;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 84%;
	z-index: -1;
}
.bgQtrGray.left:after {
	left: auto;
	right: 0;
}

.bgQtrGray .flex {
	align-items: flex-start;
	padding-top: 70px;
}
.bgQtrGray .txt {
	position: relative;
	width: 560px;
}

.bgQtrGray .txt .ttl {
	position: absolute;
	bottom: calc(100% + 1.6rem);
}

.bgQtrGray .txt .btn {
	margin-top: 50px;
}

.bgQtrGray .txt p {
	line-height: 2.2;
}

.bgQtrGray .txt p + p {
	margin-top: 40px;
}
.bgQtrGray .img {
	width: 580px;
}
.bgQtrGray .img img {
	object-fit: cover;
	font-family: 'object-fit: cover;';
	height: auto;
	width: 100%;
}

/*col1 ※リフォーム*/
.bgQtrGray.col1 .inner {
	max-width: 900px;
}
.bgQtrGray.col1 .txt {
	margin-bottom: 60px;
	width: 100%;
}
.bgQtrGray.col1 .txt .ttl {
	position: static;
	margin-bottom: 90px;
}
.bgQtrGray.col1.left .ttl {
	text-align: right;
}

.bgQtrGray.col1:after {
	height: calc(100% - 25px);
}
.bgQtrGray.col1 .img {
	width: auto;
}
.bgQtrGray.col1 .flex {
	padding-top: 0;
}

@media screen and (min-width: 1380px) {	
	.bgQtrGray .img {
		position: relative;
		right: -120px;
	}
	.bgQtrGray .fdr .img {
		right: auto;
		left: -120px;
	}
	/*col1 ※リフォーム*/	
	.bgQtrGray.col1 .img {
		right: auto;
		left: auto;
	}	
}

@media screen and (max-width: 767px) {
	.bgQtrGray {
		padding-bottom: 50px;
	}
	.bgQtrGray + .bgQtrGray {
		margin-top: 80px;
	}
	
	.bgQtrGray:after {
		height: calc(100% - 40px);
		width: 85%;
	}
	.bgQtrGray .txt, .bgQtrGray .img {
		width: 100%;
	}
	.bgQtrGray .ttl {
		font-size: 1.6rem;
	}
	.bgQtrGray .txt .ttl {
		bottom: calc(100% + 0.2rem);
	}
	
	.bgQtrGray .txt p + p {
		margin-top: 20px;
	}
	.bgQtrGray .img {
		margin-top: 30px;
	}


	/*col1 ※リフォーム*/	
	.bgQtrGray.col1:after {
		height: calc(100% - 15px);
	}
	.bgQtrGray.col1 .txt .ttl {
		margin-bottom: 20px;
	}
	.bgQtrGray.col1 .txt {
		margin-bottom: 20px;
	}
}



/*フッタ前*/
.footMessage {
	padding: 0 0 50px;
	position: relative;
}
.footMessage:after {
	background: #F7F7F7;
	border-radius: 130px 0 0 0;
	content: '';
	display: block;
	height: calc(100% - 30px);
	position: absolute;
	right: 0;
	bottom: 0;
	max-width: 1710px;
	width: 96%;
	z-index: -1;
}
.footMessage .headline {
	color: #022202;
	font-size: 3.6rem;
	font-weight: 700;
	margin-bottom: 80px;
	text-align: right;
}
.footMessage .flex {
	align-items: flex-start;
}
.footMessage .txt {
	width: 400px;
}
.footMessage .txt p {
	line-height: 2;
	margin-bottom: 80px;
}
.footMessage .img img {
	border-radius: 8px;
	transition: 0.3s;
	width: 100%;
}
.footMessage a:hover img {
	opacity: 0.8;
}
@media screen and (max-width: 767px) {
	.footMessage {
		margin-top: 80px;
		padding: 20px 0 60px 4%;
	}
	.footMessage .txt {
		width: 100%;
	}
	.footMessage .headline {
		font-size: 2.2rem;
		margin-bottom: 20px;
	}
	.footMessage .txt p {
		line-height: 1.8;
		margin-bottom: 20px;
	}
	.footMessage .img {
		margin-bottom: 10px;
	}
	.footMessage:after {
		border-radius: 60px 0 0 0;
		height: calc(100% - 40px);
	}
}
/*moreBar*/
.moreBar {
	height: 110px;
	margin-bottom: 70px;
	padding-top: 40px;
	position: relative;
}
.moreBar:after {
	background: #7BA327;
	content: '';
	display: block;
	height: 100%;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 85%;
	z-index: -1;
}
.morebarLink {
	color: transparent;
	position: absolute;
	width: 95%;
	height: 100%;
	bottom: 0;
	left: 0;
	transition: 0.3s;
	z-index: 2;
}
.morebarLink:hover {
	background: rgba(255,255,255,0.2);
}

.moreBar .flex {
	justify-content: flex-end;
}
.moreBar .txt {
	margin-right: 40px;
}
.moreBar .txt > * {
	color: #fff;
	font-size: 3.9rem;
	font-weight: 700;
}
.moreBar .btn {
	background: #fff;
	color: #7BA327;
	height: 48px;
	margin: 0 10px 0 0;
	width: 316px;
}
.moreBar .btn:after {
	border-color: transparent transparent transparent #7BA327;
}

.moreBar .btn:hover {
	background: #60801F;
	color: #fff;
}
.moreBar .btn:hover:after {
	border-color: transparent transparent transparent #fff;
}


@media screen and (max-width: 1800px) {
	.moreBar:after {
		width: 95%;
	}
	.moreBar .btn {
		margin-right: 40px;
	}
}
@media screen and (max-width: 767px) {
	.moreBar {
		height: auto;
		margin-bottom: 0;
		padding: 20px 0 25px;
	}
	.morebarLink {
		width: 100%;
	}
	.moreBar:after {
		width: 100%;
	}
	.moreBar .txt {
		margin: 0 auto;
	}
	.moreBar .txt > * {
		font-size: 1.8rem;
		text-align: center;
	}
	.moreBar .inner {
		position: relative;
	}
	.moreBar .btn {
		background: none;
		box-shadow: none;
		padding-right: 30px;
		color: #fff;
		display: inline;
		margin-right: 5%;
		position: absolute;
		right: 0;
		width: auto;
	}
	.moreBar .btn:before {
		content: '';
		display: block;
		background: #fff;
		border-radius: 100px;
		height: 20px;
		position: absolute;
		right: 0;
		top:0;
		width: 20px;
	}
	.moreBar .btn:after {
		right: 5px;
		top: 6px;
	}
}


.question {
	align-items: flex-start;
	display: flex;
	justify-content: space-between;
	margin-bottom: 50px;
}

.question .img {
	text-align: center;
	width: 240px;
}

.question .txt {
	border: 3px solid #7BA327;
	margin: 70px 0 0 0;
	padding: 20px 30px;
	position: relative;
	width: calc(100% - 255px);
}

.question .txt p {
	color: #666;
	font-size: 2rem;
	font-weight: 500;
}

.question .txt:before, .question .txt:after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 12.5px 42px 12.5px 0;
	position: absolute;	
	top:calc(50% - 15px);
}

.question .txt:before {
	border-color: transparent #ffffff transparent transparent;
	z-index: 2;
	left: -33px;
}

.question .txt:after {
	border-color: transparent #7BA327 transparent transparent;
	z-index: 0;
	left: -42px;
}
@media screen and (max-width: 767px) {
	.question {
			margin-bottom: 30px;
		}
	.question .img {		
		width: 80px;
	}
	.question .txt {
		margin: 0 0 0 1px;
		padding: 10px;
		width: calc(100% - 100px);
	}
	.question .txt p {
		font-size: 1.4rem;
		line-height: 1.3;
	}
	.question .txt:before, .question .txt:after {
		border-width: 8px 20px 8px 0;
		top:20px;
		}
	.question .txt:before {
		left: -14px;
	}
	.question .txt:after {
		left: -22px;
	}
}

.answer {
	margin-bottom: 50px;
	position: relative;
	transition: 0.8s;
}

.answer .teacherComment + .teacherComment {
	margin-top: 123px;
}

.answer .ocBtn {
	float: right;
	display: inline-block;
	margin: 30px 0 0 0;
	position: relative;
	text-align: right;
}
.answer .ocBtn p {
	color: #7BA327;
	display: inline-block;
	font-weight: 500;
	cursor: pointer;
}
.ocBtn p:hover {
	opacity: 0.5;
}


.answer .ocBtn p.close {
	padding-left: 20px;
	position: relative;
}
.ocBtn p.close:before {
	content: 'ー';
	display: block;
	left: 0;
	position: absolute;
}

.answer .ocBtn .open {
	background: #fff;	
	border: 3px solid #7BA327;
	border-radius: 50px;
	box-shadow: 0 0 5px 3px rgba(0,0,0,0.05);
	padding: 15px 0;
	position: absolute;
	right: 0;
	opacity: 0;
	pointer-events: none;
	text-align: center;
	transition: 0.3s;
	width: 400px;
}
.answer .ocBtn .open:hover {
	background: #7BA327;
	color: #fff;
	box-shadow: none;
	opacity: 1;
}

.ocBtn p.open:before {
	content: '+';
	display: block;
	font-weight: 400;
	font-size: 3rem;
	left: 20px;
	top: calc(50% - 23px);
	position: absolute;
}
.answer.hide {
	margin-bottom: 0;
}
.answer.hide .ocBtn .close {
	transition: 0.3s;
}
.answer.hide .ocBtn .close {
	display: none;
	opacity: 0;
	pointer-events: none;
	position: absolute;
}
.answer.hide .ocBtn .open {
	opacity: 1;
	pointer-events: auto;
	top: -110px;		
}

.answer .btnWrap {
	clear:both;
	margin-top: 20px;
}


@media screen and (max-width: 767px) {
	.answer {
		margin-bottom: 20px;
		transition: 0;
	}
	.answer .teacherComment + .teacherComment {
		margin-top: 30px;
	}
	.answer .ocBtn {
		margin-top: 20px;
		width: 100%;
	}
	.answer .ocBtn .open {
		transition: 0;
		margin-right: 0;
		padding: 8px 0;
		width: 200px;
	}
	.ocBtn p.open:before {
		left: 10px;
		font-size: 2rem;
		top:calc(50% - 16px);
	}
	.answer .ocBtn .open:hover {
		opacity: 0;		
	}
	.answer.hide .ocBtn .open {
		top: -40px;
	}
	.answer.hide .ocBtn p.close {
		display: none;
	}
	.answer + .btnWrap {
		padding: 0 0 50px;
	}
	.answer + .btnWrap .btn {
		width: 100%;
	}
	
	.answer.hide + .btnWrap {
		margin-top: 20px;
	}
}

/*教えてイデア先生*/

.pageHeadTeacher {
	background: #7BA327;
}
.pageHeadTeacher .inner {
	background: url("/wp/wp-content/uploads/2025/07/6ebf0c8fc3b83f084d95c23b2225b704.png") no-repeat right bottom;
	background-size: contain;
	height: 440px;
	position: relative;
}
.pageHeadTeacher .headline {
	
}
.pageHeadTeacher .headline span {
	color: #fff;
	font-size: 3.2rem;
	margin-top: 100px;
	position: relative;
	display: inline-block;
}

.pageHeadTeacher .txt {
	position: absolute;
	bottom: 85px;
	right: 0;
	left: 0;
	margin: 0 auto;
}

.pageHeadTeacher .txt p {
	color: #7BA327;
	font-size: 2.4rem;
	font-weight: 700;
	margin: 0 auto;
	max-width: 600px;
	padding-right: 130px;
}

@media screen and (max-width: 767px) {
	.pageHeadTeacher .inner {
		background: url("/wp/wp-content/uploads/2025/06/idea-home_chara_06.png") no-repeat right 3% bottom;
		background-size: 138px  auto;
		height: 230px;
	}
	.pageHeadTeacher .headline {
		margin-top: 0;
		text-align: center;
	}
	.pageHeadTeacher .headline span{
		font-size: 2.0rem;
		letter-spacing: -2px;
		margin-top: 30px;
	}
	.pageHeadTeacher .txt {
		background: #fff;
		bottom: 20px;
		left: 3%;
		margin: 0;
		padding: 10px;
		width: calc(100% - 150px);
	}
	.pageHeadTeacher .txt:after {
		content:'';
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 5px 0 5px 20px;
		border-color: transparent transparent transparent #fff;
		position: absolute;
		right: -20px;
		top:calc(50% - 5px);
	}
	.pageHeadTeacher .txt p {
		font-size: 1.6rem;
		margin-right: 0;
		padding-right: 0;
		text-align: left;
	}
}

.pageHeadTeacher + .breadCrumbs {
	margin-top: 10px;
}
.teacherSec + .teacherSec {
	margin-top: 120px;
}
.teacherSec .headline {
	font-size: 2.8rem;
	font-weight: 700;
	margin-bottom: 20px;
}
.teacherSec .headline span {
	display: inline-block;
	margin-top: 0;
	padding: 0 30px;
	position: relative;
}

.teacherSec .headline span:before, .teacherSec .headline span:after {
	bottom: 0;
	content: '';
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 25px 5px 0 5px;
	border-color: #022202 transparent transparent transparent;
	top: 12px;
}
.teacherSec .headline span:before {
	transform: rotate(-26deg);
	left: 0;
}
.teacherSec .headline span:after {
	transform: rotate(26deg);
	right: 0;
}

@media screen and (max-width: 767px) {
	.teacherSec + .teacherSec {
		margin-top: 100px;
	}
	.teacherSec .headline {
		font-size: 2rem;
	}
	.teacherSec .headline span:before, .teacherSec .headline span:after {
		top: auto;
		bottom:0px;
	}

}

/*teacherComment*/
.teacherComment {
	background: url("../images/concept/eq/teacher/bg_idea_comment.png") no-repeat bottom;
	display: flex;
	align-items: center;
	padding: 50px 0 0 100px;
	position: relative;
	height: 251px;
}

.teacherComment:after {
	background: url("/wp/wp-content/uploads/2025/06/idea-home_chara_06.png") no-repeat;
	background-size: cover;
	content:'';
	display: block;
	position: absolute;
	bottom: 0;
	right: 5px;
	height: 251px;
	width: 215px;
}
.teacherComment.illust_a:after {
	background: url("/wp/wp-content/uploads/2025/06/idea-home_chara_04.png") no-repeat;
    height: 100%;
    width: 311px;
}
.teacherComment.illust_b:after {
	background: url("/wp/wp-content/uploads/2025/06/idea-home_chara_00.png") no-repeat;
	right: 25px;
	width: 293px;
}
.teacherComment.illust_c:after {
	background: url("/wp/wp-content/uploads/2025/06/idea-home_chara_04.png") no-repeat;
	width: 293px;
}
.teacherComment p {
	line-height: 1.7;
	font-size: 1.9rem;
	font-weight: 500;
	letter-spacing: -0.8px;
	max-width: 750px;
}

@media screen and (max-width: 767px) {
	.teacherComment {
		background: #7BA327;
		height: auto;
		padding: 15px 15px 30px;
	}
	.teacherComment p {
		background: #fff;
		font-size: 1.4rem;
		width: 100%;
		padding: 10px 5%;
		position: relative;
		z-index: 0;
	}
	.teacherComment p:after {
		content: '';
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 0 40px 14px;
		border-color: transparent transparent #ffffff transparent;
		transform: rotate(120deg);
		position: absolute;
		bottom: -20px;
		right: 60px;
		z-index: -1;
	}
	
	.teacherComment:after, .teacherComment.illust_a:after, .teacherComment.illust_b:after, .teacherComment.illust_c:after {
		background-size: 100% auto;
		height: 65px;
		width: 60px;
		bottom: 0px;
		right: 10px;
	}
	.teacherComment:after {
		display: none;
	}

.teacherComment .flex {
    margin-bottom: 20px;
}
}

/*数字画像二列*/
.numImgCol2.flex {
	align-items: flex-start;
}
.numImgCol2 .unit {
	margin: 120px 6% 0 0;
	position: relative;
	width: 47%;
}
.numImgCol2 .unit:nth-child(2n) {
	margin-right: 0;
}

.numImgCol2 .unit .img {
	position: absolute;
	right: 10px;
	width: 334px;
}

.numImgCol2 .unit .txt {
	background: #fff;
	border-radius:6px;
	box-shadow: 0 0 3px 3px rgba(0,0,0,0.03);
	padding: 25px 16px;
	position: relative;
	margin-top: 95px;
	width: 340px;
}
.numImgCol2 .unit .txt .num {
	color: rgba(123,163,39,0.5);
	font-family: sofia-pro, sans-serif;
	font-size: 12rem;
	position: absolute;
	left: 0px;
	top: -135px;
	z-index: -1;
}
.numImgCol2 .unit .txt .ttl {
	font-size: 2.4rem;
	font-weight: 500;
	margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
	.numImgCol2 .unit {
		margin: 0;
		width: 100%;
	}
	.numImgCol2 .unit + .unit {
		margin-top: 60px;
	}
	
	.numImgCol2 .unit:last-of-type {
		margin-bottom: 0;
	}
	.numImgCol2 .unit .img {
		position: relative;
		right: 0;
		width: 100%;
	}
	.numImgCol2 .unit .txt {
		margin-top: 40px;
		padding: 10px 5%;
		width: 100%;
		z-index: 0;
	}
	
	.numImgCol2 .unit .txt .num {
		font-size: 8rem;
		left: auto;
		right: 0;
		top: -60px;
		z-index: 1;
	}
	.numImgCol2 .unit .txt .ttl {
		font-size: 2rem;
		padding-right: 50px;
	}	
}

/*リフォーム下部メニュー*/
.reformMenu {
	margin-bottom: 50px;
}
.reformMenu a {
	display: block;
	transition: 0.3s;
}
.reformMenu a:hover {
	opacity: 0.8;
}
.reformMenu .unit {
	margin-right: 4%;
	width: 22%;
}
.reformMenu .unit:last-of-type {
	margin-right: 0;
}
.reformMenu .unit .img img {
	border-radius: 0;
}
.reformMenu .unit .txt {
	width: 100%;
}
.reformMenu .unit .ttl {
	font-size: 2rem;
	font-weight: 500;
	margin: 20px 0 12px;
}
.reformMenu .unit p {
	font-size: 1.4rem;
	letter-spacing: -0.8px;
	line-height: 1.8;
	margin-bottom: 15px;
}
.reformMenu .unit .btnWrap {
	text-align: right;
}

@media screen and (max-width: 767px) {
	.reformMenu {
		margin-bottom: 0;
	}
	.reformMenu .unit {
		margin: 0;
		width: 100%;
	}
	.reformMenu .unit + .unit {
		margin-top: 30px;
	}
	.reformMenu .unit .ttl {
		font-size: 1.6rem;
		margin: 10px 0 5px
	}
	.reformMenu .unit p {
		line-height: 1.4;
		margin-bottom: 10px;
	}
}

/*物件情報一覧*/

.tabContentWrap .content {
	pointer-events: none;
	height: 0;
	overflow: hidden;
	opacity: 0;
	transition: 0.3s;
}

.tabContentWrap .content.show {
	pointer-events: auto;
	height: auto;
	overflow: visible;
	opacity: 1;
}

.tag {
	background: #7BA327;
	color: #fff;
	display: inline-block;
	min-width: 126px;
	padding: 2px 20px 4px;
	text-align: center;	
}
@media screen and (max-width: 767px) {
	.tag {
		font-size: 1.2rem;
		min-width: 86px;
	}
}

.propertyList.flex {
	align-items: stretch;
}
.propertyList li {
	box-shadow: 0 0 5px 2px rgba(0,0,0,0.1);
	border-radius: 8px;
	background: #fff;
	margin-top: 80px;
	overflow: hidden;
}
.propertyList li a {
	display: block;
	width: 100%;
	height: 100%;	
	transition: 0.3s; 
}
.propertyList li a:hover {
	opacity: 0.5;
}
.propertyList .img {
	position: relative;
	z-index: 0;
}
.propertyList .img img {
	object-fit: cover;
	font-family: 'object-fit: cover;';
	height: 282px;
	width: 100%;
}
.propertyList .img .tag {
	position: absolute;
	top: 0;
	left:0;
	z-index:2;
}
.propertyList .txt {
	padding: 20px 12px 10px;
}
.propertyList .txt .ttl{
	color: #022202;
	display: block;
	font-size: 1.8rem;
	font-weight: 500;
	margin-bottom: 20px;
}
.propertyList .txt p {
	font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
	.propertyList li {
		margin-top: 30px;
	}
	.propertyList .img img {
		height: 200px;
	}
	.propertyList .txt {
		/*padding :10px 3%;*/
		padding: 22px 20px 10px;
	}
	.propertyList .txt .ttl {
		margin-bottom: 10px;
	}
}


/*pager*/
.pager {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 80px 0 120px;
}
.pager li {
	color: #7BA327;
}
.pager li + li{
	margin-left: 8px;
}
.pager a {
	border: 1px solid #7BA327;
	border-radius: 3px;
	color: #7BA327;
	display: inline-block;	
	font-size: 1.4rem;
	font-weight: 500;
	padding: 7px 14px;
}
.pager a.current {
	background: #7BA327;
	color: #fff;
	pointer-events: none;
}

@media screen and (max-width: 767px) {
	.pager {
		margin: 40px 0;
	}
	.pager a {
		font-size: 2rem;
		padding: 3px 13px;
	}
}

/*knowhow*/
.knowhowWrap {
	margin-bottom: 40px;
}

.knowhowWrap .unit {
	display: flex;
	justify-content: flex-end;
	margin-bottom: 30px;
	padding-top: 110px;
	position: relative;
	transition: 0.3s;
	z-index: 0;
}
.knowhowWrap .unit:hover {
	opacity: 0.8;
}
.knowhowWrap .unit:nth-of-type(2) {
	justify-content: flex-start;
	margin-bottom: 50px;
}

.knowhowWrap .img {
	position: absolute;
	top: 35px;
	left: 0;
	width: 645px;
	z-index: -1;
}
.knowhowWrap .img img {
	border-radius: 0;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}
.knowhowWrap .unit:nth-of-type(2) .img {
	left: auto;
	right: 0;
}
.knowhowWrap .txt {
	width: 580px;
}
.knowhowWrap .txt .ttl {
	color: #022202;
	margin: 30px 0 20px;
}
.knowhowWrap .txt p {
	line-height: 2.3;
	margin-bottom: 10px;
	min-height: 140px;
}
.knowhowWrap .txt .btnWrap {
	text-align: right;
}
@media screen and (max-width: 767px) {
	.knowhowWrap .unit{
		display: block;
		padding-top: 0;
	}
	.knowhowWrap .img, .knowhowWrap .unit:nth-of-type(2) .img {
		position: relative;
		right: auto;
		left: 20%;
		top: 0;
		width: 80%;
	}
	.knowhowWrap .img img {
		height: 157px;
	}
	.knowhowWrap .tag {
		position: absolute;
		top: 0;
	}
	.knowhowWrap .txt {
		width: 100%;
	}
	.knowhowWrap .txt .ttl {
		font-size: 2rem;
		margin: 10px 0;
	}
	.knowhowWrap .txt p {
		font-size: 1.2rem;
		line-height: 1.6;
			width: 80%;
	}
	.knowhowWrap {
		margin-bottom: 0px;
	}
}

.pointHeadline {
	font-size: 2.8rem;
	font-weight: 700;
	margin-bottom: 20px;
}
.pointHeadline span {
	display: inline-block;
	margin-top: 0;
	padding: 0 30px;
	position: relative;
}

.pointHeadline span:before, .pointHeadline span:after {
	bottom: 0;
	content: '';
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 25px 5px 0 5px;
	border-color: #022202 transparent transparent transparent;
	top: 12px;
}
.pointHeadline span:before {
	transform: rotate(-26deg);
	left: 0;
}
.pointHeadline span:after {
	transform: rotate(26deg);
	right: 0;
}

@media screen and (max-width: 767px) {
	.pointHeadline {
		font-size: 2rem;
	}
	.pointHeadline span:before, .pointHeadline span:after {
		top: auto;
		bottom:0px;
	}
}

.featureList .unit {
	align-items: flex-start;
}
.featureList .unit:nth-of-type(2n) {
	flex-direction: row-reverse;
}
.featureList .unit + .unit {
	margin-top: 80px;
}

.featureList .unit .img {
	width:668px;
}
.featureList .unit .img img {
	object-fit: cover;
	font-family: 'object-fit: cover;';
	height: 331px;
	width: 100%;
}


.featureList .unit .txt{
	margin-top: 10px;
	width: 500px;
}
.featureList .unit .txt .ttl {
	font-size: 2.4rem;
	margin-bottom: 15px;
	padding-bottom: 10px;
	position: relative;
}
.featureList .unit .txt .ttl:before, .featureList .unit .txt .ttl:after {	
	content:'';
	display: block;
	position: absolute;
	left: 0;
}
.featureList .unit .txt .ttl:before {	
	background: #707070;
	height: 1px;
	bottom: 0;
	width: 100%;
}
.featureList .unit .txt .ttl:after {
	background: #7BA327;
	height: 3px;
	width: 99px;
	bottom:-1px;
}
.featureList .unit .txt p {
	line-height: 2;
}

@media screen and (max-width: 767px) {
	.featureList .unit + .unit {
		margin-top: 30px;
	}
	.featureList .unit .txt{
		width: 100%;
	}
	.featureList .unit .txt .ttl {
		font-size: 1.8rem;
	}
	.featureList .unit .img {
		width: 100%;
	}
	.featureList .unit .img img {
		height: 200px;
	}
}

/*物件スペック*/
.siteSpec {
	margin: 110px 0 0;
}
.specTtl {
	color: #7BA327;
	font-size: 2rem;
	font-weight: 500;
	margin-bottom: 20px;
	padding-left: 20px;
	position: relative;
}
.specTtl:before {
	background: #7BA327;
	content: '';
	display: block;
	height: 30px;
	position: absolute;
	left: 0;
	top: 0;
	width: 4px;
}

@media screen and (max-width: 767px) {
	.siteSpec {
		margin-top: 60px;
	}
	.specTtl {
		font-size: 1.8rem;
	}
}

/*関連*/
.relationArea {
	margin: 50px 0 80px;
}
.relationArea .headline {
	margin-bottom: 0;
}
.relationArea .btnWrap {
	margin: 90px 0 0;
}
@media screen and (max-width: 767px) {
	.relationArea .btnWrap {
		margin-top: 30px;
	}
}

/*施工事例・お客様の声*/

.linkSwitch {
	display: flex;
	justify-content: center;
	padding-top: 15px;
}
.linkSwitch li {
	border: 2px solid #7BA327;
	border-radius: 3px;
	color: #7BA327;
	font-weight: bold;
	display: inline-block;
	margin-right: 16px;
	padding: 7px 10px;
	text-align: center;
	transition: 0.3s;
	width: 366px;
}
.linkSwitch li a {
	color: #7BA327;
	display: block;
}

.linkSwitch li.on {
	background: #7BA327;
	color: #fff;
}
.linkSwitch li:hover {
	opacity: 0.5;
}
.linkSwitch li.on:hover {
	opacity: 1;
}

@media screen and (max-width: 767px) {
	.linkSwitch li {
		margin: 0 3% 10px 0;
		width: 48%;
	}
	.linkSwitch li:last-child {
		margin-right: 0;
	}
	.linkSwitch li:hover {
		opacity: 1;
	}
}

/*物件詳細*/
.siteInfo .name {
	font-size: 2.4rem;
	font-weight: 500;
	margin: 20px 0 30px;
}
.siteInfo .img {
	right: 0;
}
.sitePoint p.lead {
	line-height: 2.3;
	margin: 0 auto;
	max-width: 724px;
	text-align: left;
}

@media screen and (max-width: 767px) {
	.siteInfo .name {
		font-size: 2.0rem;
		margin: 10px 0;
	}

}

/*投稿*/
.postHead {
	margin-bottom: 50px;
}
.postHead p.date {
	font-size: 1.2rem;
	line-height: 2;
	margin-bottom: 10px;
}
.postHead .ttl {
	color: #000;
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 15px;
}
.postHead .ttl + p {
	margin-top: 60px;
}

.post img + *{
	margin-top: 60px;
}
.post img {
	margin: 30px 0 60px;
	max-width: 100%;
}
.post p {
	line-height: 2.2;
	margin: 20px 0;
}
.post p a {
	color: #7BA327;
	text-decoration: underline;
	transition: 0.3s;
}
.post p a:hover {
	opacity: 0.5;
}

.post h1 {
	color: #7BA327;
	font-size: 2.6rem;
	font-weight: 700;
	margin: 60px 0 30px;
}

.post h2 {
	color: #7BA327;
	font-size: 2.4rem;
	font-weight: 700;
	margin: 60px 0 30px;
}

.post h3 {
	color: #000;
	font-size: 2.1rem;
	font-weight: 700;
	margin: 60px 0 30px;
}

.post h4 {
	color: #000;
	font-size: 1.8rem;
	font-weight: 700;
	margin: 60px 0 20px;
}

.post h5 {
	color: #000;
	font-size: 1.6rem;
	font-weight: 700;
	margin: 60px 0 10px;
}

.post h1 + *, .post h2 + *, .post h3 + *, .post h4 + *, .post h5 + * {
	margin-top: 0;
}

/*
.post table {
	margin: 60px 0;
}*/
.wp-block-table {
  margin: 40px 0;
}

.post ul, .post ol {
	margin: 30px 0;
}
.post ul li {
	list-style: disc;
	margin-left: 2rem;
}
.post ol li {
	list-style: decimal;
	margin-left: 1.6rem;
}
.post li + li{
	margin-top: 20px;
}

@media screen and (max-width: 767px) {
	.postHead {
		margin-bottom: 30px;
	}
	.postHead .ttl {
		font-size: 2.1rem;
	}
	.post img + *{
		margin-top: 30px;
	}
	.post img {
		margin: 10px 0 30px;
		max-width: 100%;
	}
	.post img.alignleft, .post img.alignright, .post img.aligncenter {
		margin: 10px 0 30px;
	}	
	.post p {
		margin: 30px 0;
	}
	/*.post table {
		margin: 30px 0;
	}*/
  
  .wp-block-table {
    margin: 30px 0;
  }
	.post li + li{
		margin-top: 10px;
	}
	
	.post h1 {
		font-size: 2.2rem;
		margin: 30px 0;
	}

	.post h2 {
		color: #7BA327;
		font-size: 2rem;
		margin: 30px 0;
	}

	.post h3 {
		font-size: 1.8rem;
		margin: 30px 0;
	}

	.post h4 {
		font-size: 1.6rem;
		margin: 30px 0 10px;
	}

	.post h5 {
		color: #000;
		font-size: 1.4rem;
		margin: 30px 0 10px;
	}

	.post h1 + *, .post h2 + *, .post h3 + *, .post h4 + *, .post h5 + * {
		margin-top: 0;
	}
	
}


/*footMessage 会社概要関連*/
.companyFootList {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 50px;
}
.companyFootList li {
	border-left: 1px solid #7BA327;
	padding: 0 30px;
}
.companyFootList li:last-child {
	border-right: 1px solid #7BA327;
}
.companyFootList li a {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1;
	transition: 0.3s;
}
.companyFootList li a:hover {
	opacity: 0.5;
}
@media screen and (max-width: 767px) {
	.companyFootList {
		margin-bottom: 0;
	}
	.companyFootList li {
		border:none;
		margin-bottom: 10px;
		padding: 0 0 0 20px;
		width: 50%;
	}
	.companyFootList li a {
		font-size: 1.2rem;
	}
	.companyFootList li:nth-child(2n) {
		border:none;
	}
}

/*会社概要 冒頭リンク*/
.companyHeadList {
	display: flex;
	justify-content: space-between;
	margin-bottom: 100px;
	margin-top: 50px;
}
.companyHeadList li {
	position: relative;
	text-align: center;
	width: 100%;
}
.companyHeadList li:before, .companyHeadList li:last-child:after {
	background: #7BA327;
	content: '';
	display: block;
	position: absolute;
	height: 24px;
	width: 1px;
	top: calc(50% - 12px);
}
.companyHeadList li:before {
	left: 0;
}
.companyHeadList li:after {
	right: -1px;
}
.companyHeadList li a {
	font-weight: 500;
	transition: 0.3s;
	text-align: center;
}
.companyHeadList li a:hover {
	opacity: 0.5;
}

@media screen and (max-width: 767px) {
	.companyHeadList {
		flex-wrap: wrap;
		justify-content: flex-start;
		margin-bottom: 0;
		margin-top: 30px;
	}
	.companyHeadList li {
		margin-bottom: 10px;
		padding: 0 1%;
		width: 50%;
	}
	.companyHeadList li:nth-child(2n):after {
		background: #7BA327;
		content: '';
		display: block;
		position: absolute;
		height: 24px;
		width: 1px;
		top: calc(50% - 12px);
	}
	.companyHeadList li a {
		font-size: 1.2rem;
		width: 100%;
		display: block;
		padding: 10px;

	}
}

/*companyTbl*/
.companyTbl {
	border-collapse: collapse;
	margin:40px 0;
}
.companyTbl th, .companyTbl td {
	background: none;
	vertical-align: top;
}
.companyTbl th {
	font-weight: 400;
	padding: 15px 0;
	position: relative;
	min-width: auto;
}
.companyTbl th:after {
	content: '';
	display: block;
	background: #7BA327;
	height: 3px;
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 100%;
}
.companyTbl td {
	border-bottom: 1px solid #707070;
}

@media screen and (max-width: 767px) {
	.companyTbl th {
		font-weight: 700;
	}
	.companyTbl td {
		padding-left: 0;
		margin-bottom: 15px;
	}
}


/*form*/

.formWrap {
	max-width: 720px;
	margin: 0 auto 100px;
}

/*ios reset*/
input, button, textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.ie input[type="checkbox"] {
	visibility: hidden;
	width: 0;
	height: 0;
}


input[type="submit"], input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration {
 display: none;
}
input[type="submit"]::focus, input[type="button"]::focus {
 outline-offset: -2px;
}

/*original*/

input[type="text"], input[type="number"], input[type="email"], input[type="tel"], textarea {
	border: 1px solid #ddd;
	border-radius: 5px;
	padding: 10px 10px 12px;	
	width: 100%;
}
input.error {
	border: 1px solid #CB2E25;
}
.errorTxt {
	color: #CB2E25;
	padding: 5px 10px;
}

@media screen and (max-width: 767px) {
	.errorTxt {
		font-size: 1.2rem;
		padding: 5px 0 0;
	}
}

textarea {
	height: 218px;
}
_:-ms-input-placeholder, :root input, _:-ms-input-placeholder, :root textarea {
	font-family: 'Noto Sans JP', sans-serif;
}

 input::placeholder, textarea::placeholder {
 color: #818A91;
}
@media screen and (max-width: 767px) {
	input[type="text"], input[type="number"], input[type="email"], input[type="tel"], textarea {
		font-size: 1.3rem;
	}
}


.formHeadline {
	background: #E5E5E5;
	font-size: 1.8rem;
	font-weight: 500;
	margin: 60px 0 30px;
	padding: 14px 20px;	
}

.formHeadline span {
	display: inline-block;
	font-size: 1.4rem;
	margin: 0 10px;
}
.formHeadline span.required {
/*	background: #fff; */
	color: #B70000;
	padding: 4px 10px;
}
.formHeadline span.required2 {
	padding: 4px 10px;
}


@media screen and (max-width: 767px) {
	.formHeadline {
		font-size: 1.6rem;
		padding: 5px 3%;
	}
	.formHeadline span {
		font-size: 1rem;
		margin: 0 3px;
	}
	.formHeadline span.required {
		padding: 2px 5px 3px;
		margin-bottom: 3px;
		vertical-align: middle;
	}
}
.formInner {
	padding: 0 20px;
}
.forminner-p {
	display: inline-block;
	font-size: 1.2rem;
	margin: 0 10px 16px 10px;
}
.eventform-top {
	text-align:center;
	font-size:1.2rem;
}
@media screen and (max-width: 767px) {
	.formInner {
		padding: 0 3%;
	}
}
.checkList {
	margin-left: 20px;
}
.checkList li {
	margin-bottom: 15px;
}
.checkList li label {
	cursor: pointer;
	padding: 10px 0;
}
.checkList li label span {
	font-weight: 500;
	display: inline-block;
	padding-left: 20px;
	position: relative;
}
.checkList li label:hover span{
	color: #7BA327;
}

.checkList li label span:before {
	content:'';
	display: block;
	position: absolute;
	background: #f1f1f1;
	border-radius: 5px;
	height: 15px;
	left: 0;
	top: 6px;
	width: 15px;
}
.checkList li label input:checked + span:before {
	background: #7BA327;
}
.checkList li label input:checked + span:after {
	content:'';
	display: block;
	position: absolute;
	border-left: 2px solid #fff;
	border-top: 2px solid #fff;
	height: 9px;
	width: 5px;
	left: 5px;
	top: 8px;
	transform: rotate(225deg);
}

.checkList li .addInfo {
	padding: 10px 0 10px 30px;
}
.checkList li .addInfo p {
	font-size: 1.4rem;
	margin: 10px 0;
}
.detailTtl {
	font-size: 500;
	margin: 0 0 10px 20px;
}
.detailTtl + textarea {
	margin-left: 20px;
}

@media screen and (max-width: 767px) {
	.checkList {
		margin-left: 0;
	}
	.checkList li label span:before {
		top: 3px;
	}
	.checkList li label input:checked + span:after {
		top: 5px;
	}
	.checkList li label:hover span {
		color: #022202;
	}
	.detailTtl {
		margin: 0 0 10px;
	}
	.detailTtl + textarea {
		margin-left: 0;
	}
	.checkList li .addInfo p {
		font-size: 1.2rem;
	}
}

input.name {
	max-width: 320px;
}
input.zip {
	max-width: 176px;
	margin-left: 5px;
}
.zipWrap {
	margin-bottom: 20px;
}
.zipWrap span {
	font-size: 1.4rem;
	margin-left: 10px;
	vertical-align: bottom;
}
@media screen and (max-width: 767px) {
	.zipWrap span {
		font-size: 1.2rem;
		display: block;
		margin: 5px 0 0;
	}
}


input.tel {
	max-width: 320px;
}

.telWrap span {

	font-size: 1.4rem;
	margin-left: 10px;
	vertical-align: bottom;
}

@media screen and (max-width: 767px) {
	.telWrap span {
		font-size: 1.2rem;
		margin: 5px 0 0;
	}
}



/*送信*/
.sendWrap {
	margin: 50px 0;
}
.sendWrap .privacyCheck {
	text-align: center;
}

.sendWrap .privacyCheck label {
	cursor: pointer;
	padding: 10px 10px 10px 0;
}
.sendWrap .privacyCheck  label span {
	font-size: 1.4rem;
	font-weight: 500;
	display: inline-block;
	padding-left: 20px;
	position: relative;
}
.sendWrap .privacyCheck:hover span{
	color: #7BA327;
}

.sendWrap .privacyCheck label span:before {
	content:'';
	display: block;
	position: absolute;
	background: #f1f1f1;
	border-radius: 5px;
	height: 15px;
	left: 0;
	top: 3px;
	width: 15px;
}
.sendWrap .privacyCheck label input:checked + span:before {
	background: #7BA327;
}
.sendWrap .privacyCheck label input:checked + span:after {
	content:'';
	display: block;
	position: absolute;
	border-left: 2px solid #fff;
	border-top: 2px solid #fff;
	height: 9px;
	width: 5px;
	left: 5px;
	top: 5px;
	transform: rotate(225deg);
}

@media screen and (max-width: 767px) {
	.sendWrap .privacyCheck label:hover span {
		color: #022202;
	}
}

.sendWrap .btnWrap {
	display: flex;
	justify-content: center;
	margin: 20px 0 50px;
}

.sendWrap .btnWrap li {
	margin: 0 5px;
}
.sendWrap .btnWrap .btn {
	border-radius: 5px;
	font-size: 1.6rem;
	font-weight: 500;
	padding-bottom:4px;
	/*height: 45px;*/
	/*max-width: 192px;*/
}
.sendWrap .btnWrap .btn.return {
	background: #000;
}
.sendWrap .btnWrap .btn:after {
	content: none;
}

@media screen and (max-width: 767px) {
	.sendWrap .btnWrap {
		display: block;
	}
	.sendWrap .btnWrap li + li{
		margin-top: 10px;
	}
}

/*個人情報*/
.privacy{
	border: 1px solid #CCC;
	height: 453px;
	overflow-y: scroll;
	-ms-overflow-style: none;
	scrollbar-width: none; 
	padding: 40px 40px 0;
}
.privacy::-webkit-scrollbar {  
	display:none;
}
.privacy .headline {
	font-size: 2.4rem;
	margin: 0 0 20px;
	text-align: center;
}
.privacy p {
	font-size: 1.4rem;
	line-height: 1.8;
	margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
	.privacy {
		padding: 20px 3% 0;
	}
	.privacy .headline {
		font-size: 2rem;
	}
}

/*確認画面*/
.finish {
	max-width: 720px;
	margin: 100px auto;
}
.finish p {
	line-height: 1.8;
	margin-bottom: 30px;
}

.finish .btnWrap {
	margin: 70px 0;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.finish {
		margin: 60px 0;
	}
	.finish .btnWrap {
		margin: 30px 0;
	}
}

/*sns*/

.sns {
	position: fixed;
	right: 0;
	top: 260px;
	transition: 0.3s;
	z-index: 20;
}
.sns li {
	width: 50px;
}
.sns li + li {
	margin-top: 10px;
}
.sns li a {
	transition: 0.3s;
	width: 50px;
}
.sns li a:hover {
	opacity: 0.5;
}
.sns li a img {
	width: 50px;
}
.sns.off {
	opacity: 0;
	pointer-events: none;
}


@media screen and (max-width: 767px) {
	.sns {
		top: 200px;
	}
	.sns li {
		width: 44px;
	}
}

@media screen and (min-width: 768px) {
	.sns li {
		height: 50px;
	}
}

/* ------------------------------
    clearfix
------------------------------ */
.cf:after {
	content: ".";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden;
}
.cf {
	display: inline-block;
}
/* Hides from IE Mac */
* html .cf {
	height: 1%;
}
.cf {
	display: block;
}
/* End Hack */
/* ------------------------------
    sp/pc
------------------------------ */
@media screen and (min-width:768px) {
	.sp {
		display: none !important;
	}
}
@media screen and (max-width:767px) {
	.pc {
		display: none !important;
	}
}


/* ------------------------------
   Boxzilla
------------------------------ */
@media screen and (min-width:728px) {
    .boxzilla {
        padding: 0 !important;
        background: none !important;
    }

    .boxzilla-close-icon {
        padding: 12px 15px !important;
    }
}
@media screen and (max-width:727px) {
    .boxzilla {
        display: none !important;
    }
    .boxzilla *{
        display: none !important;
    }
}



/*20220831 add*/
.postHead {
  margin-bottom: 15px;
}

.postHead .category {
  background: #7BA327;
  color: #fff;
  display: inline-block;
  font-size: 1.4rem;
  font-weight: bold;
  padding: 4px 27px;
  margin-bottom: 10px;
}
.postHead p.date {
  font-size: 1.6rem;
  font-weight: bold;
  color: #969696;
}


#toc_container{
  border-top: 5px solid #E3EDD3;
  background: #F7F7F7;
  padding: 20px;
  max-width: 494px;
  min-width: 494px;
  margin-bottom: 80px;
}
#toc_container .head {
  position: relative;
  
}
#toc_container p.toc_title{
  font-size: 2.4rem;
  color: #000;
  margin: 0 0 12px;
  position: relative;
  padding:  0 0 5px 60px;
  background: url("../images/ico_news_headline.png") no-repeat left top;
  text-align: left;
}
#toc_container .toc_title a {
  position: absolute;
  right: 0;
   top:15px;
  text-decoration: underline;
  font-size: 1.4rem;
}

#toc_container .toc_title .toc_toggle {
  color: transparent;
}

#toc_container .toc_title a:before {
  position: absolute;
  content: '';
  display: block;
  width: 14px;
  height: 1px;
  background: #7BA327;
  left: -20px;
  top: 50%;
}

#toc_container .toc_list {
  margin-top: 0;
  counter-reset: item;
}
#toc_container .toc_list>li {
  color: #7BA327;
  font-size: 1.6rem;
  font-weight: bold;
  list-style: none;
  margin-bottom: 20px;
  position: relative;
  padding-left: 27px;
}
#toc_container .toc_list>li:before {
  background: none;
   counter-increment: item;
  content: counter(item);
  padding-right: .5em;
  font-weight: bold;
  color: #000;
  position: absolute;
  left: 5px;
  top: 0;
}
#toc_container .toc_list li a {
  color: #7BA327;
}
#toc_container .toc_list > li ul {
  margin: 5px 0 5px 13px;
}
#toc_container .toc_list > li ul li {
  font-size: 1.4rem;
  list-style: none;
} 
#toc_container .toc_list > li ul li:before {
  height: 7px;
  width: 7px;
  left: -12px;
}
@media screen and (max-width: 767px) {
  #toc_container {
    width: 100%!important;
    min-width: auto;
  }
}
.post h2 {
  color: #022202;
  padding-bottom: 20px;
  position: relative;
  margin: 60px 0 20px 0;
}
.post h2:before, .post h2:after {
  content: '';
  display: block;
  position: absolute;
  bottom:0;
  left: 0;
}
.post h2:before {
  height: 1px;
  background: #707070;
  width: 580px;
  z-index: 0;
}
.post h2:after {
  height: 3px;
  bottom: -1px;
  width: 99px;
  background: #7BA327;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .post h2:before {
    width: 100%;
  }
}

.post h3 {
  color: #7BA327;
  margin: 60px 0 20px 0;
  padding-left: 15px;
  position: relative;
}
.post h3:before {
  content: '';
  display: block;
  background: #7BA327;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 4px;
}
.post h4 {
  color: #7BA327;
  margin: 50px 0 20px 0;
  padding-left: 20px;
  position: relative;
}
.post h4:before {
  content: '';
  display: block;
  background: #7BA327;
  position: absolute;
  left: 4px;
  top: 11px;
  height: 11px;
  width: 11px;
}

.post h5{
  color: #7BA327;
  font-size: 1.8rem;
  margin: 60px 0 20px 0;
}

@media screen and (max-width: 767px) {
  .post h2, .post h3, .post h4, .post h5{
    margin: 40px 0 20px;
  }
  .post h5{ 
    font-size: 1.5rem;
  }
}

.post p {
  line-height: 2;
}

.post table {
  border-collapse: collapse;
}
.post table th, .post table td{
  border: 1px solid #fff;
}
.post table th {
  background: #E4EDD3;
  padding: 12px 18px;
}
.post table td{
  background: #FAFAFA;
  padding: 12px 13px;
}

@media screen and (max-width: 767px) {
  .post table th, .post table td{
    display: table-cell;
    font-size: 1.2rem;
    padding: 5px 10px;
  }
}

/*
.post .wp-block-embed {
  border: 1px solid #7BA327;
}
*/

.post .blog_card {
  border: 1px solid #7BA327;
  border-radius: 5px;
  padding: 0;
  margin: 60px 0;
}
.post .blog_card .together_box {
  display: flex;
  align-items: center;
  padding: 15px 25px;
}
.post .blog_card .together_box .img {
  margin: 0 20px 0 0;
  width: 134px;
}
.post .blog_card .together_box .img img {
  margin: 0;
  object-fit: contain;
}
.post .blog_card .together_box .txt_box {
  flex:1;
} 
.post .blog_card .together_title {
  color: #7BA327;
  font-size: 2rem;
  font-weight: bold;
}
.post .blog_card_description {
  margin: 8px 0;
}
.post .blog_card_url {
  font-size: 1.4rem;
  margin: 0;
}

.post .wp-block-embed.is-type-wp-embed blockquote {
	display: none;
}
.post .wp-block-embed.is-type-wp-embed iframe {
	position: relative !important;
    width: 100%;
}

@media screen and (max-width: 767px) {
  .post .blog_card {
     margin: 40px 0;
  }
  .post .blog_card .together_box {
    padding: 8px;
  }
  .post .blog_card .together_title {
    font-size: 1.5rem;
  }
  
  .post .blog_card .together_box .img {
    margin-right: 14px;
    width: 50%;
  }
  .post .blog_card .together_box .img img {
    height: 134px!important;
    width: 100%!important;
    margin: 0;
  }
  .post .blog_card_description, .post .blog_card_url {
    display: none;
  }
}

.post .is-style-sme-alert-warning {
  background: #FFE3E3;
  border:1px solid #FF7E7E;
  padding-left: 110px;
  margin: 50px 0;
  color: #022202;
}
.post .is-style-sme-alert {
  background: #FFF5E3;
  border:1px solid #FFC87E;
  color: #022202;
  padding-left: 110px;
    margin: 50px 0;
}
.post .is-style-sme-alert-warning:before, .post .is-style-sme-alert:before {
  width: 50px;
  height: 50px;
}
@media (min-width: 768px) {
  .post .is-style-sme-alert-warning:before, .post .is-style-sme-alert:before {
    left: 40px;
  }
}
@media screen and (max-width: 767px) {
  .post .is-style-sme-alert-warning, .post .is-style-sme-alert {
    padding: 20px 20px 20px 50px;
    margin: 40px 0;
  }
  .post .is-style-sme-alert-warning:before, .post .is-style-sme-alert:before {
    left:30px;
    top: 24px;
    height: 22px;
    width: 22px;
  }
}


.post .is-style-sme-alert-warning:before {
  background-image:url("../images/icn_warning.png");
}
.post .is-style-sme-alert:before {
  background-image:url("../images/icn_alert.png");
}
.post .wp-block-quote {
  border: 1px solid #CDD3CD;
  border-radius: 5px;
  background: #F6F7F6;
  padding: 40px 80px;
  position: relative;
  margin: 50px 0;
}
.post .wp-block-quote:before {
  content: '';
  display: block;
  background: url("../images/icn_quote.png");
  background-size: cover;
  position: absolute;
  width: 38px;
  height: 29px;
  left: 15px;
  top: 15px;
}
.post .wp-block-quote:after {
  content: '';
  display: block;
  background: url("../images/icn_quote.png");
  background-size: cover;
  position: absolute;
  width: 38px;
  height: 29px;
  right: 15px;
  bottom: 15px;
  transform: rotate(180deg);
}
.post .wp-block-quote p {
  margin: 0;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .post .wp-block-quote {
    padding : 40px;
  }
  .post .wp-block-quote:before {
    width: 18px;
    height: 14px;
    top: 8px;
    left: 13px;
  }
  .post .wp-block-quote:after {
    width: 18px;
    height: 14px;
    bottom: 8px;
    right: 13px;
  }
}

.post .smb-box {
  padding: 0;
}
.post .smb-box__background {
  background: #F1F6E9!important;
  border: 1px solid #7BA327!important;
}

.post .smb-box__body {
  padding: 16px 35px;
}
@media screen and (max-width: 767px) {
  .post .smb-box__body {
    padding: 20px;
  }
}
.post .smb-box p {
  margin: 0;
}

.post ul li {
  list-style: none;
  position: relative;
}
.post ul li:before {
  background: #7BA327;
  border-radius: 10px;
  content: '';
  width: 11px;
  height: 11px;
  position: absolute;
  left: -20px;
  top: 7px;
}
.post ol {
  counter-reset: item;
}
.post ol li {
  font-size: 1.6rem;
  list-style: none;
  margin-left: 0;
  margin-bottom: 0;
  position: relative;
  padding-left: 20px;
}

.post li + li {
  margin-top: 6px;
}

.post ol li:before {
   counter-increment: item;
  content: counter(item);
  padding-right: .5em;
  font-weight: bold;
  color: #7BA327;
  position: absolute;
  left: 0;  
}

@media screen and (max-width: 767px) {
  .post ol, .post ul {
    margin: 50px 0;
  }
}
.post .wp-container-6 {
  margin: 60px 0;
}
.post .wp-container-6 img {
    vertical-align: middle;
    margin: 0;
  }
.post .wp-container-6 .wp-block-image {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .post .wp-container-6 {
    margin: 50px 0;
  }
  
  .post .wp-container-6 .wp-block-image {
    margin: 0;
  }
}

/*20220901 add*/

.blogRecommend {
  margin: 100px 0;
}
.blogRecommend a {
  position: relative;
}
.blogRecommend .headline {
  font-size: 3.2rem;
  font-weight: bold;
  color: #6C8042;
  margin-bottom: 40px;
  padding-bottom: 22px;
  position: relative;
}
.blogRecommend .headline:after {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: 0;
  width: 52px;
  height: 7px;
  background: #634A3C;
}
.blogRecommend .img img {
  object-fit: cover;
  width: 100%;
  height: 250px;
}
.blogRecommend .category {
  background: #7BA327;
  color: #fff;
  display: inline-block;
  font-size: 1.4rem;
  font-weight: bold;
  padding: 2px 25px;
  margin-bottom: 5px;
  position: absolute;
  left: 0;
  top: 0;
}

.blogRecommend .ttl {
  font-size: 2.4rem;
  color: #022202;
  margin: 10px 0 5px 0;
}
.blogRecommend .desc {
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .blogRecommend {
    margin: 60px 0;
  }
  .blogRecommend .headline {
    font-size: 2.4rem;
  }
  .blogRecommend .ttl {
    font-size: 1.8rem;
  }
  .blogRecommend .desc {
    font-size: 1.2rem;
  }
}



.post .wp-block-embed.is-type-wp-embed iframe {
  width: 100%;
  padding:0;
  margin: 0;
  border: 1px solid #7BA327;
  border-radius: 5px;
  display: block;
  height: 180px;
}

.wp-embedded-content {
  border: 1px solid #7BA327;
}
@media screen and (max-width: 767px) {
  .post .wp-block-embed.is-type-wp-embed iframe {
    min-height: auto;
    padding: 3px;
    height: 180px;
  }
}

/*hover*/
@media screen and (min-width: 768px) {
.post .blog_card .together_box {
  transition: 0.3s;
  }
.post .blog_card a:hover .together_box{
  background: #F1F6E9;
  }
}

/*20220921　修正用*/
.featureList .unit .txt .ttl:after {
  top: auto;
}
.featureList .unit .txt .ttl:before, .featureList .unit .txt .ttl:after {
  top: auto;
}


/*20220922 修正用*/

#toc_container .toc_list li:before {
  content: none;
}
#toc_container .toc_list li.appdot:before {
  content: '';
}
#toc_container .toc_list li > ul{
  margin-left: 0;;
}
#toc_container .toc_list li.appdot {
  margin-left: 13px;
}

/*20230614 SP SNS*/
@media screen and (max-width: 1200px) {
	.fixedBtn .foot_sns {
		margin: 12px 0 7px;
		display: flex;
		justify-content: center;
		gap: 30px;
	}
	.fixedBtn .foot_sns li {
		width: 22px;
	}

	.gNavSp .head_sns {
		background: #fff;
		padding: 0 0 20px;
		display: flex;
		justify-content: center;
		gap: 30px;
	}
	.gNavSp .head_sns li {
		width: 22px;
	}

}

/*202501 資料請求*/
.document-list {
	padding: 10px 2rem;
	li::before{
 content: "⚫︎";
 color: #7BA327; 
 font-size: 1em; 
 margin-right: 1em; 
}
}
.paperdocument {
	-webkit-appearance: button;
}

.lead-catalogue {
  padding: 26px;
  margin: 26px;
  border: 3px solid #7BA327;
}

.lead-catalogue p {
  text-align: center;
  font-size: 2.5rem;
  font-weight: 700;
  padding-bottom: 26px;
}

.lead-catalogue .catalogue-items {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  gap: 16px;
  justify-content: center;
}

.lead-catalogue .catalogue-items .catalogue-item {
  flex: 1 1 calc((100% - 16px * 4) / 5);
  max-width: calc((100% - 16px * 4) / 5);
  text-align: center;
}

.lead-catalogue .catalogue-items .catalogue-item img {
  width: 100%;
  max-width: 240px;
  height: auto;
}
