@charset "UTF-8";


/* ===================================================================
　#pagehead h1
==================================================================== */
#pagehead{
	background: #274c8f;
}
#pagehead::after{
	content: "";
	width: 70px;
    height: 1.2px;
    background-image: linear-gradient(90deg, #274c8e 50%, #fff 50%);
    transform: rotate(-45deg);
    position: absolute;
    left: 47%;
}
#pagehead h1,
.kaso-head-design{
 	font-family: dnp-shuei-mincho-pr6n, sans-serif;
  font-weight: normal;	
	font-size:38px;
	letter-spacing: 9px;
	padding: 200px 0 110px 0;
	line-height: 140%;
	text-align: center;
	border-bottom: 0!important;
	color: #fff;
}
#pagehead h1 span,
.kaso-head-design span{
  font-family: dnp-shuei-mincho-pr6n, sans-serif;	
	display: block;
	line-height: 1;	
	margin: 0 0 0;
	font-size:14px;
}
#pagehead h1.uppercase{
	text-transform: uppercase;
}

/* ===================================================================
　パンくず
==================================================================== */
.bread{
	padding: 10px 0 0 0;
	font-size: 11px;
}
.breadcrumbs{
	width: 95%;
	margin: auto;
}
.bread .category{
	font-size: 11px!important;	
}
.breadcrumbs a span{
	text-decoration: underline;
}
.lp-bread{
	border-top: 1px solid #6699a0;
	padding: 5px 0 5px 0;	
}




/* ===================================================================
　page
==================================================================== */
#page{
	width: 100%;
	margin: auto;
	padding: 4% 0 0;
	position: relative;
}
#page-contents .inner{
	width: 65%;
	min-width: 900px;
	margin: 0 auto 50px;	
}
#page section{
	margin: 0 0 80px;
}
#page-contents p{
	margin-bottom: 20px;
}
#page .textC{
	text-align: center;
}

#page .contact h2{
	text-align: center;
}
#page h2{
	font-size: 19px;
	line-height: 165%;
	position: relative;
	margin-bottom: 30px;
	padding-bottom: 25px;
	font-family: dnp-shuei-mincho-pr6n, sans-serif;
	color: #274c8e;
}

#page h3{
	font-size: 17px;
	line-height: 165%;
	padding: 20px 0 0;
	margin: 0 0 20px;
	font-family: dnp-shuei-mincho-pr6n, sans-serif;
}
#page .w3eden .card h3{
	padding: 0;
	margin: 0 0 10px 0;
}

#page .col4 li{
	width:24%;
	float: left;
	margin:0 6px 6px 0;
}
#page .col4-icon li{
	width:22%;
	float: left;
	margin:0 13px 6px 13px;
	text-align: center;
}
#page .col4-icon li img{
	margin-bottom:15px;
}

#page .col2{
	margin:30px 0 0 0;
}
#page .col2 li{
	width:48%;
	float: left;
	margin-bottom:40px;
}
#page .col2 li:nth-child(2n){
	float: right;
}


p.thanks-about{
	margin-bottom: 20px!important;
}
p.thanks-about span{
	display: inline-block;
  margin: 0 24px 0 0;
  font-family: Georgia, Times New Roman, "Koburina Gothic W3 JIS2004", sans-serif;
  font-weight: normal;   
}
p.thanks-about span:nth-of-type(3){
  margin: 0 14px 0 0;  
}


.simple-page .inner800{
  margin: 0 auto 80px;
}

#page .simple-page h3{
  background: #f0f0f0;
	padding: 7px;
	margin: 0 0 20px;
}
#page .simple-page h4{
	border-left: 5px solid #f0f0f0;
	padding: 0 0 0 7px;
	margin: 0 0 10px 0;
}
/* ===================================================================
　アーカイブ
==================================================================== */
#archive {
	font-size: 14px;
 	line-height: 2;
}
#archive .inner{
	width: 80.5%;
	margin: auto;
}


/*taxonomy-list*/
ul#taxonomy-list{
	display: flex;
	justify-content: center;
	max-width: 800px;
	margin: 0 auto 50px;
}
ul#taxonomy-list li{
  width: calc(100% / 4); /* 100%幅を4で割るという指定 */			
	border-left: 1px solid #3e3a39;	
	display: inline-block;
	text-align: center;
	line-height: 165%;
	padding: 0.7em 2em;
}
ul#taxonomy-list li:last-child{
	border-right: 1px solid #3e3a39;	
}
ul.taxonomy-list-property{
	max-width: 1000px!important;
}
ul.taxonomy-list-property li{
	width: calc(100% / 6)!important;
}


#archive #left h3{
	text-align:left;
	padding: 0;
	border: none;
	line-height: 140%;
	letter-spacing: 0.1em;
}
#archive #left .inner {
    width: 100%;
    margin: 0 auto;
}
#archive #left li{
	width: 32%;
	display: inline-block;
	padding: 20px 0 80px 0;
	border:1px solid #CDCDC0;
	border-radius: 3px;
	vertical-align: top;
	overflow: hidden;
	position: relative;
	background: #fff;
	margin: 0 10px 30px 0;	
}
#archive #left li:nth-of-type(3n){
	margin: 0 0 30px 0;	
}
#archive #left li:last-of-type{
	margin-bottom:20px;
}
#archive #left .thumb{
	display: block;
	float: none;
	margin: 0 auto 10px;
	max-width:370px;
	width: 90%;
	height:auto;
	text-align: center;
}
#archive #left .date,
#archive #left .title{
	width: 90%;
	max-width: 370px;
	margin: auto;
}
#archive #left .title{
	display: block;
	overflow: hidden;
}
#archive #left .category{
	position: absolute;
	bottom: 10px;
	left: 15px;
	padding: 10px 0 0;
}
#page-contents .date{
	margin: 0 0 5px 0;
}
#archive #left .category a,
#page-contents .category a{
    display: inline-block;
  vertical-align: top;
    border: 1px solid #999;
  color: #999;
    padding: 2px 7px;
    text-align: center;
    margin-right: 10px;
    font-size: 10px;
  letter-spacing: 0.1em;
	border-radius: 2px; 
}



/* ===================================================================
　works
==================================================================== */
/* 施工事例 */
.works-archive li{
	width: 30%;
	height: 250px!important;
	float: left;
	margin: 0 0 30px 30px;	
}
.works-archive li img{
	width:100%;
	height: 250px;
	object-fit: cover;
}

/* .works-archive 拡縮サムネ */
.thumbwrap {
	overflow: hidden;
	position: relative;
}
.thumbwrap .maskwrap {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	background-color: rgba(0,0,0,0.4);
	-webkit-transition:	all 0.4s ease-out;
	transition:	all 0.4s ease-out;
}
.thumbwrap:hover .maskwrap {
	opacity: 1;
}
.works-archive .thumbwrap .mask {
	height: 250px!important;
}
.thumbwrap .mask {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
    text-align: center;
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition:	all 0.4s ease-out;
	transition: all 0.4s ease-out;
}
.thumbwrap:hover .mask {
	-webkit-transform: scale(0.8);
	transform: scale(0.8);
	-webkit-transition:	all 0.4s ease-out;
	transition:	all 0.4s ease-out;
}
.thumbwrap a,
.thumbwrap h3,
.thumbwrap p{
	color: #fff!important;
  line-height: 165%;	
}
.thumbwrap h3 {
    font-size: 20px!important;
    font-weight: bold;
    width: 100%;
    order: 2;
    margin: 19px 0 23px;
}
.thumbwrap p {
    order: 1;
    padding: 0;
    margin: 0;
    font-size: 16px!important;
    position: relative;
    display: inline-flex;
    padding-bottom: 10px;
}
.thumbwrap p:after{
    content: '';
    width: 100%;
    height: 1px;
    background: #fff;
    position: absolute;
    left: 0;
    bottom: 0;
}

.works-headimg img{
	width:100%;
	height: 600px;
	object-fit: cover;
}


/*　Fドームタブ　*/
#f-dome .tabs {
    position: relative;
    margin: 75px auto;
    width: 100%;
}
#f-dome .tabs input {
    position: absolute;
    z-index: 1000;
    width: 120px;
    height: 40px;
    left: 0px;
    top: 0px;
    opacity: 0;
    cursor: pointer;
}
#f-dome .tabs input#tab-2{
    left: 120px;
}
#f-dome .tabs input#tab-3{
    left: 240px;
}


#f-dome .tab-label-1,
#f-dome .tab-label-2,
#f-dome .tab-label-3,
#f-dome .tab-label-4,
#f-dome .tab-label-5{
	width: 20%;
}
#f-dome .tab-label-1{
	margin-left: 0!important;
}

#f-dome .tabs label {
    background: linear-gradient(top, #5ba4a4 0%,#4e8c8a 100%);
    font-size: 14px;
    line-height: 40px;
    height: 40px;
    position: relative;
    padding: 0 5px;
    float: left;
    display: block!important;
    color: #385c5b;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: bold;
    text-align: center;
	border: 1px solid rgb(0 0 0 / 10%);
	cursor: pointer;
}
 
#f-dome .tabs input:hover + label {
    background: #5ba4a4;
}
 
#f-dome .tabs label:first-of-type {
    z-index: 6;
}
#f-dome .tab-label-2 {
    z-index: 5;
}
#f-dome .tab-label-3 {
    z-index: 4;
}
#f-dome .tab-label-4 {
    z-index: 3;
}
#f-dome .tab-label-5 {
    z-index: 2;
}

#f-dome .tabs input:checked + label {
    background: #fff;
    z-index: 8;
}
#f-dome .tabs .content {
    background: #fff;
    position: relative;
	top: 45px;
    width: 100%;
    z-index: 7;
}
 
#f-dome .content-box {
    top: 0;
    left: 0;
    padding: 10px 40px;
    z-index: 1;
    opacity: 0;
    transition: all linear 0.1s;
	visibility: hidden;
}
 
#f-dome .content div h2,
#f-dome .content div h3{
    color: #398080;
}
#f-dome .tabs .content div p {
    font-size: 14px;
    line-height: 22px;
    text-align: left;
    margin: 0;
    color: #777;
    padding-left: 0;
    border-left: 0;
}
#f-dome .tabs input:hover + label {
	background: #155358;
	color: white;
}


#f-dome .tabs input.tab-selector-1:checked ~ .tab-label-1,
#f-dome .tabs input.tab-selector-2:checked ~ .tab-label-2,
#f-dome .tabs input.tab-selector-3:checked ~ .tab-label-3,
#f-dome .tabs input.tab-selector-4:checked ~ .tab-label-4,
#f-dome .tabs input.tab-selector-5:checked ~ .tab-label-5{
	background: #155358;
	color: white;

}
#f-dome .tabs input.tab-selector-1:checked ~ .content .content-1,
#f-dome .tabs input.tab-selector-2:checked ~ .content .content-2,
#f-dome .tabs input.tab-selector-3:checked ~ .content .content-3,
#f-dome .tabs input.tab-selector-4:checked ~ .content .content-4,
#f-dome .tabs input.tab-selector-5:checked ~ .content .content-5{
    z-index: 100!important;
    opacity: 1!important;
	transition: all ease-out 0.2s 0.1s!important;
	visibility: visible!important;
	display: block;
}

#f-dome .content .content-1{	
display: none;
}
#f-dome .content .content-2{	
display: none;
}
#f-dome .content .content-3{	
display: none;
}
#f-dome .content .content-4{	
display: none;
}
#f-dome .content .content-5{	
display: none;
}
/*WORKS ARCHIVEのタブ*/
.tabs {
    position: relative;
    margin: 40px auto;
    width: 100%;
}
.tabs input {
    position: absolute;
    z-index: 1000;
    width: 120px;
    height: 40px;
    left: 0px;
    top: 0px;
    opacity: 0;
    cursor: pointer;
}
.tabs input#tab-2{
    left: 120px;
}
.tabs input#tab-3{
    left: 240px;
}


.tab-label-1,
.tab-label-2,
.tab-label-3{
	width: 29.7%;
}
.tab-label-1{
	margin-left: 70px;
}

.tabs label {
    background: linear-gradient(top, #5ba4a4 0%,#4e8c8a 100%);
    font-size: 14px;
    line-height: 40px;
    height: 40px;
    position: relative;
    padding: 0 10px;
    float: left;
    display: block!important;
    color: #385c5b;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: bold;
    text-align: center;
	border: 1px solid rgb(0 0 0 / 10%);
}
 
.tabs input:hover + label {
    background: #5ba4a4;
}
 
.tabs label:first-of-type {
    z-index: 4;
}
.tab-label-2 {
    z-index: 3;
}
.tab-label-3 {
    z-index: 2;
}

.tabs input:checked + label {
    background: #fff;
    z-index: 6;
}
.tabs .content {
    background: #fff;
    position: relative;
	top: 45px;
    width: 100%;
    z-index: 5;
}
 
.content-box {
    top: 0;
    left: 0;
    padding: 10px 40px;
    z-index: 1;
    opacity: 0;
    transition: all linear 0.1s;
	visibility: hidden;
}
 
.content div h2,
.content div h3{
    color: #398080;
}
.tabs .content div p {
    font-size: 14px;
    line-height: 22px;
    text-align: center;
    margin: 0;
    color: #777;
    padding-left: 0;
    border-left: 0;
}
.tabs input:hover + label {
	background: #155358;
	color: white;
}


.tabs input.tab-selector-1:checked ~ .tab-label-1,
.tabs input.tab-selector-2:checked ~ .tab-label-2,
.tabs input.tab-selector-3:checked ~ .tab-label-3{
	background: #155358;
	color: white;

}
.tabs input.tab-selector-1:checked ~ .content .content-1,
.tabs input.tab-selector-2:checked ~ .content .content-2,
.tabs input.tab-selector-3:checked ~ .content .content-3{
    z-index: 100!important;
    opacity: 1!important;
	transition: all ease-out 0.2s 0.1s!important;
	visibility: visible!important;
	display: block;
}

.content .content-1{	
display: none;
}
.content .content-2{	
display: none;
}
.content .content-3{	
display: none;
}

/* ===================================================================
　single
==================================================================== */
#page .date,
#page .category{
	font-size: 11px;
	letter-spacing: 0;
}
#page #single .date,
#page #single .category{
	font-size: 11px;
}
#page .title{
	display: block;
	overflow: hidden;
}
#page #main .category{
	position: absolute;
	bottom: 10px;
}

	

/* ===================================================================
　タクソノミーアーカイブ
==================================================================== */
#taxonomy-archive {
	padding: 0 10px 10px;
	background: #FDFFFF;
}
#taxonomy-archive #pagehead h1{
	margin-bottom: 2rem;
	color: #222223;
	text-align: center;
	position: relative;	
	line-height: 140%;
}
#taxonomy-archive #pagehead h1 span.hosoku{
	display: inline-block;
	font-size: 1rem;
	padding: 0.7em 0;
	line-height: 80%;
}
#taxonomy-archive #pagehead h1:before {
  content: '';
  position: absolute;
  bottom: -10px;
  display: inline-block;
  width: 60px;
  height: 3px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #EBE4DC;
  border-radius: 2px;
}
#term-description{
	width: 85%;
	margin: 0 auto 10px;
}



/* ===================================================================
　検索結果アーカイブ
==================================================================== */
.search-archive .sec{
	padding: 0 0 0 0!important;
}
.search-archive #left{
	width: 100%;
	max-width: 100%;
	border: 0;
	margin: 0 0 60px 0;	
	padding: 0 0 20px 0;
}
.search-archive #archive #left li{
	width: calc(94% / 3 );
	display: inline-block;
	margin: 0 10px 30px 10px;
	padding: 20px 0 80px 0;
	border:1px solid #CDCDC0;
	border-radius: 3px;
	vertical-align: top;
	overflow: hidden;
	position: relative;
}



/* ===================================================================
　searchform
==================================================================== */
#form2{
	position:relative;
	width:230px;
	min-width:230px;
	right: 0;
	margin: auto;
}
#form2 input{
	max-width: 230px;
	min-width: 100%;
	height:37px;
	padding:0 12px;
	border:0;
	background-color:#f0f0f0;
	box-shadow:none;
	color:#231815;
	font-size:1rem;
	vertical-align:middle;
	line-height:45px;
	transition:background-color .24s ease-in-out;
}
#form2 input:hover{
	background-color:#fff;
	color: #515151;
}
#sbox2{
	height:50px;
	padding:0 10px; 
	/*! position:absolute; */ 
	top:0; 
	border-radius:2px;
	outline:0;
	background:#ededed;	
}
#sbtn2{
	height:38px;
	position:absolute; 
	/*アイコン左右の位置調整*/
	top:0px;
	right: 10px!important;
	background:none;
	color:#221815;
	border:none;
	font-size:1.2rem;/*アイコンサイズ*/
	cursor: pointer;
	right: 0;
}
#form2:hover #sbtn2{ 
	color:#221815;
}
#form2 #sbtn2:hover{ 
	color:#dadada;
}

/* ===================================================================
　pagenavi
==================================================================== */
.pagenavi{ 
	margin-bottom:60px;
}
.wp-pagenavi {
	padding: 10px 20px 10px!important;
	line-height: 1;
	display:block!important;
	clear:both!important;
}
.wp-pagenavi a ,.wp-pagenavi span.pages, .wp-pagenavi span.extend {
	display: inline-block;
		color:#707070 !important;
		background:#FFFFFF !important;
		border-radius:3px !important;	
		border:solid 1px #DCDCDC !important;
		padding:6px 9px 6px 9px !important;
		margin-right:3px !important;
		text-decoration:none !important;
		font-size:0.8rem !important;
}
.wp-pagenavi a:hover {
		border-color:#202020 !important;
		background:#525252 !important;
		color:#fff !important;
		background:-moz-linear-gradient(top,#9F9F9F 1px,#6C6C6C 1px,#525252) !important;
		background:-webkit-gradient(linear,0 0,0 100%,color-stop(0.02,#9F9F9F),color-stop(0.02,#6C6C6C),color-stop(1,#525252)) !important;
}
 .wp-pagenavi span.current{
		padding:4px 9px 5px 9px !important;
		border:solid 1px #DCDCDC !important;
		border-radius:3px !important;	
		color:#fff !important;
		margin-right:3px !important;
		border-color:#202020 !important;
		background:#525252 !important;
		background:-moz-linear-gradient(top,#9F9F9F 1px,#6C6C6C 1px,#525252) !important;
		background:-webkit-gradient(linear,0 0,0 100%,color-stop(0.02,#9F9F9F),color-stop(0.02,#6C6C6C),color-stop(1,#525252)) !important;
}


/* ===================================================================
　ページャーリンク
==================================================================== */
.prevnext{
	margin:0 auto 30px auto;
	padding-top: 30px;
	position: relative;
	clear: both;
}
#page-contents .prevnext{
	padding-top: 100px;
}

#single .prevnext{
	width: auto;
}
.prevnext span{
	display: block;
	color:#3e3a39!important;
}
.prevnext a{
	display:block;
	padding:10px 15px;
	color: #3e3a39!important;
	border: 1px solid #3e3a39;
	border-radius: 3px;
}
.prevnext .prev{
	float: left;
}
.prevnext .next{
	float: right;
}
.prevnext .back{
	position: absolute;
	top:0;
	left:50%;
	transform: translate(-50%);
	padding-top: 30px;
	
}
.prevnext .back a{
	margin-bottom: 0.5em;
}


/* ===================================================================
　#container-left
==================================================================== */
#container-left {
  width: 70%;
  float: left;
}
#container-left #header-top .sitename{
	float: none;
}
#container-left .bread{
	padding: 10px 0 10px 0;
	font-size: 0.8rem;
}
#container-left #left{
  width: 92%;
	margin: 0 auto 60px;
	padding: 0 0 20px 0;
	border: 0;
}
#container-left .inner {
    width: 100%;
}
#container-left #footer {
    padding: 0;
}
#container-left h1{
	font-size: 2.5rem;
	margin: 0 0 25px 0;
	padding:20px 0 20px 0;
	line-height: 40px;	
	border-bottom: 1px solid #CDCDC0;
}

#container-left #left h2{
    margin: 30px 0 20px 0;
    padding: 16px 20px;
    color: #222223;
    font-size: 2rem;
    line-height: 165%;
    letter-spacing: 0.4px;
    background: #f4f4f4;
    border-left: solid 5px #4f904d;
    border-bottom: solid 3px #d7d7d7;	
}

#container-left #left h3 {
  width: 97%;
  color: #505050;/*文字色*/
	margin-bottom: 30px;
  padding: 15px;/*文字周りの余白*/
  display: inline-block;
	color: #fff;
  background: #4f904d;/*背景色*/
  vertical-align: middle;
  border-radius: 50px;/*左側の角を丸く*/
	border-bottom: 0;
}

#container-left #left h3:before {
  content: '●';
  color: #fff;
  margin-right: 8px;
}
#webshop-sku #container-left #left h3:before {
  content: '';
  margin-right: 0;
}
	

/* ===================================================================
　left
==================================================================== */
#left-wrap{
	display: inline-block;	
	width: 70%;
}
#blog-archive #left-wrap{
	display: block;	
	width: 100%;	
}

#left{
	width: 100%;
	margin: 0 20px 60px 0;
	overflow: hidden;	
	vertical-align: top;
  border-radius: 3px;
}
#left02{
	width: 100%;
	margin: 0 0 60px 0;
	padding: 20px 0;
	overflow: hidden;	
	vertical-align: top;
}

#archive #left{
	border: 0;
	margin: 0;
	width: 73%;	
}
#archive #left-wrap #left{
	width: 100%;
}
#index #left{
	width: 100%;
	max-width: 100%;
	border: 0;
	margin: 0 0 0 0;	
	padding: 0 0 20px 0;
}


#blog-archive ul li .cat{
	width: auto;
	margin: 0 20px;
	font-size: 13px;
}
#blog-archive ul li .title{
	font-family: dnp-shuei-mincho-pr6n, sans-serif;
}
#blog-archive ul li .date{
	font-size: 14px;
}
#blog-archive ul li article .txt{
	display: flex;
}
#blog-archive ul li{
	position: relative;
    border-bottom: 1px solid #4d4d4d;
    padding: 1.5em 2em;
	line-height: 140%;
}
#blog-archive ul{
    margin: 15px auto 20px;
    border-top: 1px solid #3e3a39;
    font-size: 15px;
    letter-spacing: 0.09em;
}

/*コラム*/
#column-archive li .cat{
	width: fit-content;
	width: -moz-fit-content;	
	font-size: 13px;
	margin-top: 10px;
}

#column-archive li:nth-child(3n){
	margin-right: 0;
}
#column-archive li .thumb{
	width: auto;
	height: 200px;
	overflow: hidden;
	border-radius: 5px;
}

#column-archive li .thumb img{
	width:100%;
	height: auto;
	object-fit: cover;
}
#page #column-archive h3{
	padding: 0!important;
	margin: 15px 0!important;
}
#column-archive .inner{
	max-width: 1000px;
	margin: 30px auto;
}
#column-archive li{
	width: 30%;
	float: left;
	margin-right: 40px;
	margin-bottom: 40px;
}



/* main */
#index #main h2{
	margin-bottom: 1.8rem;
	font-size: 2rem;
	color: #276D2E;
	text-align: center;
	position: relative;	
  letter-spacing: 1px;
}
#index #main h2:before {
  content: '';
  position: absolute;
  bottom: -10px;
  display: inline-block;
  width: 60px;
  height: 3px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #EBE4DC;
  border-radius: 2px;
}

#index #main h3{
	text-align:left;
	line-height: 140%;
	font-size:1.2rem;
}








/* NEWCONTENTS */
#newcontents{
	margin-bottom: 70px;
}

#index #term-description {
   text-align: center;
	 margin: 0 auto 20px;
}

#newcontents li{
	width: calc(94% / 3 );
	display: inline-block;
	margin: 0 10px 20px 10px;
	padding: 15px 0 80px 0;
	border:1px solid #CDCDC0;
	border-radius: 3px;
	vertical-align: top;
	overflow: hidden;
	position: relative;
}
#newcontents li:last-of-type{
	margin-bottom:20px;
}
#newcontents .thumb{
	display: block;
	float: none;
	margin: 0 auto 10px;
	max-width:370px;
	width: 90%;
	height:auto;
	text-align: center;
}
#newcontents .date{
  color: #26311f;	
}
#newcontents .date,
#newcontents .title{
	width: 90%;
	max-width: 370px;
	margin: auto;
}
#newcontents .date,
#newcontents .category{
	font-size: 0.8rem;
	letter-spacing: 0;
}
#newcontents .title{
	display: block;
	overflow: hidden;
}
#newcontents .category{
	position: absolute;
	bottom: 10px;
	left: 20px;
}
#newcontents .category a{
    margin: 0 5px 5px 0;
    padding: 2px 8px;
	line-height: 165%;
    display: inline-block;
    background: #F0F0F0;
    border-radius: 0;
}



/* ===================================================================
　サイドバー
==================================================================== */
#page #sidebar{
	width: 29%;
	max-width: 300px;
	min-width: auto;
	/*! margin: 10px 0 0 0; */
	padding: 20px;
	overflow: hidden;
	display: inline-block;
	vertical-align: top;
	background: #fff;	
	border: 1px solid #CDCDC0;
	border-radius: 3px;	
}
#page #sidebar h2{
	width: 100%;
	margin-bottom: 10px;
	padding: 5px 15px;
	font-size:16px;
	display: inline-block;
	color: #fff;
	background: #274c8f;
	vertical-align: middle;
	border-radius: 2px;
	pointer-events: none;
}
#page #sidebar h3{
	font-size: 1.2rem;
	padding:20px 0 0.5rem 0;
	line-height: 165%;
	border-bottom: 5px double #000;
}
#sidebar .ul-wrap{
	margin-bottom: 0.5rem;
}

#sidebar ul {
  margin: 0 auto 0;
	width: 95%;
}
#sidebar ul ul {
  margin: 0 auto 0;
}
#sidebar li{
	text-align: left;
	float: none;
	margin:0 0 0 0;
	padding: 10px 0;
	width:100%;
	background:#fff;
	border-bottom: 1px solid #CDCDC0;	
	line-height: 140%;
}	
#sidebar ul ul li:nth-of-type(1){
	margin-top: 10px;
	border-top: 1px solid #CDCDC0;	
}
#sidebar ul li:last-child{
	border-bottom: 0;		
}
#webshop #sidebar ul li:last-child{
	border-bottom: 1px solid #CDCDC0;	
}
#sidebar ul li ul li:last-child{
	border-bottom: 1px solid #CDCDC0;	
}
#sidebar ul ul li{
	font-size: 0.95rem;
}
#sidebar ul ul li:before{
  content: '';
  display: inline-block;
	vertical-align: middle;
  width: 12px;
  height: 2px;
	margin-right: 10px;
  background-color: #EBE4DC;
  border-radius: 2px;
}
#sidebar .img{
	max-width: 80px;
	display: inline-block;
	vertical-align: top;
}
#sidebar img{
	max-height:auto!important;
	margin: 0;
}
#sidebar .txt{
	max-width: 175px;
	display: inline-block;
	vertical-align: top;
	padding: 0 5px;
	height: auto;
}
#sidebar .date{
	padding: 10px 0;
	font-size: 0.8rem;
	line-height: 120%;
}
#sidebar span.time{
	display: block;
	line-height: 165%;
}



/* ===================================================================
　.mailform
==================================================================== */
.mailform-wrap{
  width: 100%;
	margin: auto;
	padding: 0 0 20px 0;
	color: #000;
}

.mailform {
	width: 100%;	
	max-width: 800px;
	margin: 0 auto;
}
.mailform .cf{ margin-bottom: 20px; }

.mailform .title {
  display: block;
	font-size: 1rem;
	line-height: 1.6;
	margin-bottom: 5px;
}
.mailform p {
	width: 100%;
	display: inline-block;
	margin: 0!important;
	padding: 0!important;
}

.mailform .date input{
	padding: 10px;
	border:0;
}
.mailform .time input[type="text"]{ width: 50%; }
.mailform .time span.ji{
	font-size: 1.4rem;
	padding-left: 7px;
	vertical-align: bottom;
}
.mailform .address p.yubin-ico{
	width: 15px;
	display: inline-block;
	vertical-align: middle;
	line-height: 1;
}
.mailform .yubin{
	width: 40%;	
	display: inline-block;
	vertical-align: middle;
}

.mailform .list p{
	width: 100%;
  border: 0;
  padding: 0.8em!important;
  margin-bottom: 0.5em!important;
	background: #fff;
	color: #000;
  box-sizing: border-box;		
}

.mailform .ken input[type="text"] {
	width: 35%;
}
.mailform .ken span.ji{
	font-size: 1.4rem;
	padding-left: 7px;
	vertical-align: bottom;
}

.mailform input[type="text"],
.mailform input[type="email"],
.mailform textarea,
.mailform select{
	width: 100%;
    border: 0;
    padding: 0.3em 0.5em;
    margin-bottom: 1px;
    font-size: 1rem;
    box-sizing: border-box;	
    background: #fff;
    border: 1px solid #575757;
}
.mailform select{
	cursor: pointer;
}
.mailform .wpcf7-date{
	width: 100%;
    border: 0;
    padding: 0.3em 0.5em;
		cursor: pointer;
    margin-bottom: 1px;
    font-size: 1rem;
    box-sizing: border-box;	
    background: #fff;
    border: 1px solid #575757;
}
.mailform .menu-394 .wpcf7-select,
.mailform .menu-395 .wpcf7-select{
	width: 40%;
}

.mailform input[type="text"]:focus, textarea:focus,
.mailform input[type="email"]:focus, textarea:focus{
	width: 100%;
}
.mailform  label{
	width: 100%;
	padding: 0.5em 2em;
	margin-bottom: 1px;
	font-size: 1rem;
	box-sizing: border-box;
	background: #fff;
	color: #274c8f;
}

.how-know textarea{
    width: 20%!important;
    height: 1.5em;
    margin-bottom: 1px;
    margin-top: 3px;
    font-size: 1rem;
    background: #fff;
    border: 1px solid #575757;
    display: inline-block;
    vertical-align: middle;
    padding: 0 11px;
}


.mailform .how-know p{
	padding: 0.8em 0!important;
}
.how-know label {
    width: 100%;
	padding: 0.5em 1em 0.5em 0!important; 
    margin-bottom: 1px;
    font-size: 1rem;
    box-sizing: border-box;
    background: #fff;
    color: #000;
    border: 0!important; 
}
.how-know .wpcf7-list-item{
	margin: 0;
}
.how-know .textarea-303 textarea{
	/*margin: -3px 0 0!important;*/
}

span.wpcf7-list-item.first {
    display: inline-block;
    margin: 0!important;
}


/*  */
.mailform input[type=checkbox] {
    display: none;
}
.mailform .list label span {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 5px 0 5px 27px;
    position: relative;
    width: 180px;
}


.mailform .other-products label span {
    width: auto!important;
	margin: 0!important
}
.other-products .wpcf7-list-item{
	margin: 0!important;
}

.product-form .C8{
	margin: 0 auto;
}
.other-products label {
    width: 100%;
    padding: 0.5em 1em 0.5em 0!important;
    margin-bottom: 1px;
    font-size: 1rem;
    box-sizing: border-box;
    background: #fff;
    color: #274c8f;
    border: 0!important;
}


.mailform .list label span::before {
    background: #fff;
    border: 1px solid #30251A;
    content: '';
    display: block;
    height: 16px;
    left: 0;
    margin-top: -8px;
    position: absolute;
    top: 50%;
    width: 16px;
}
.mailform .list label span::after {
    border-right: 3px solid #ed7a9c;
    border-bottom: 3px solid #ed7a9c;
    content: '';
    display: block;
    height: 9px;
    left: 6px;
    margin-top: -5px;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    width: 5px;
}
.mailform input[type=checkbox]:checked + .wpcf7-list-item-label:after {
    opacity: 1;
}

/*  */
.mailform input[type=radio] {
    display: none;
}
.mailform .radio label span {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 5px 30px;
    position: relative;
    width: auto;
}
.mailform .radio label span::before {
    background: #fff;
    border: 1px solid #30251A;
    border-radius: 50%;
    content: '';
    display: block;
    height: 16px;
    left: 5px;
    margin-top: -8px;
    position: absolute;
    top: 50%;
    width: 16px;
}
.mailform .radio label span::after {
    background: #274c8f;
    border-radius: 50%;
    content: '';
    display: block;
    height: 10px;
    left: 8px;
    margin-top: -5px;
    opacity: 0;
    position: absolute;
    top: 50%;
    width: 10px;
}
.mailform input[type=radio]:checked + .wpcf7-list-item-label:after {
    opacity: 1;
}
	
.wpcf7 input[type="submit"] {
	width:100%;
	max-width: 600px;
	display: block;
	margin: auto;
	padding:0.7em 1em;
	font-size: 17px;
	background: #274c8f;
	border-radius: 3px;
	color: #fff;
	border: 0;
	cursor: pointer;
  letter-spacing: inherit;
}
.wpcf7-submit:hover { opacity: 0.8; }


span.required{
	display: inline-block;
	font-size: 0.8em;
	color: #aa2224;
	margin: -3px 7px 0 0;
	line-height: 1;
	padding: 3px 10px;
	border: 1px solid #aa2224;
	vertical-align: middle;
	letter-spacing: 0.1em;
}

.your-region{
	position: relative;
	display: block;
}
.your-year,
.your-month,
.your-day{
	position: relative;
	width: 20%;
	display: inline-block;
}
.your-region:before{
	content:"";
	display: block;
	width:4%;
	height:86%;
	max-height: 36px;
	background : #c1c2c2;
	border-radius: 0;
	padding:0;
	position: absolute;
	right:1px;
	top:2px;
  pointer-events: none;
}
.your-year:before,
.your-month:before,
.your-day:before{
	content:"";
	display: block;
	width:17%;
	height:86%;
	max-height: 36px;
	background : #c1c2c2;
	border-radius: 0;
	padding:0;
	position: absolute;
	right:1px;
	top:2px;
  pointer-events: none;
}
.your-region:after{
	content:"";
	width:0;
	height:0;
	display: block;
	border:7px solid transparent;
	border-top:10px solid white;
	position: absolute;
	right:1.2%;
	top:17px;
  pointer-events: none;
}
.your-year:after,
.your-month:after,
.your-day:after{
	content:"";
	width:0;
	height:0;
	display: block;
	border:7px solid transparent;
	border-top:10px solid white;
	position: absolute;
	right:4%;
	top:17px;
  pointer-events: none;
}




.consul-approach p{
	text-align: left!important;
	width: 80%;
	margin-bottom: 0!important;
}
.consul-approach{
	border: 1px solid #000;
	padding: 2% 17%;
    width: 74%;
    margin: 0 auto 30px auto;
}

/* ===================================================================
　下層汎用タグなど
==================================================================== */
/*下層スライド*/
.page-slide{
	position: relative;
	overflow: hidden;
	margin-bottom: 30px;
}
.page-slide .metaslider .slides img {
    height: auto!important;
    object-fit: cover;
}
.page-slide .metaslider .flexslider {
    height: auto;
    margin: 0 0 0!important;
}
.page-slide .metaslider .flex-control-nav{
	position: absolute;
	bottom: 20px;
}
.slick-dotted.slick-slider {
    margin-bottom: 20px!important;
}

/*table*/
#page table{
	border-top:1px solid #575757;
	border-collapse: collapse;
	border-spacing: 0;
	width:100%;
	position: relative;
	margin: 0 auto 0;
	padding: 0 0 8% 0;
}
#page .price tr{
	display: table-row!important;
}
#page .price table.table1 td,
#page .price table.table1 th{
	width: 50%;
}
#page .price table{
	margin: 30px auto;
}
#page .price span.color{
	color: #274c8f;
}
#page .price span.price-number{
	font-size: 20px;
}
#page .price span.mini-cap{
	font-size: 14px;
	display: block;
	line-height: 140%;
	margin: 0 0 10px;
}

#page .price h2{
	font-size: 20px;
}
#page .price td,
#page .price th{
	width: 33%;
	display: table-cell;
	padding: 15px;
	border: 1px solid #000;
}
#page .price td{
	text-align: center;
}
#page .price th{
	padding-left: 30px;
	text-align: left;
}

#page tr{
	display: block;
	border-bottom:1px solid #575757;
	padding:12px;
}
#page th{
	width: 30%;
	display: inline-block;
	text-align: left;
	font-weight: normal;
	color: #2b2b2b;
}
#page td{
	width: 65%;
	display: inline-block;
	text-align: left;
	font-weight: normal;
}
#page-contents td.p-none p {
	display: none;
  margin-bottom: 0;
}


#page .jigyousyo-table .jigyousyo-table-txt{
	display: flex;
	align-items: center;
	height: 90px;
}

#page .rental-table th{
	width: 23%;
	padding: 0 5px;
}
#page .rental-table td{
    width: 23%;
	padding: 0 5px;
}
#page .rental-table .th1{
	width: 8%;
}
#page .rental-table .td1{
    width: 8%;
}
#page .rental-table .th3{
	width: 10%;
}
#page .rental-table .td3{
    width: 10%;
}

#page .rental-table .th2{
	width: 28%;
}
#page .rental-table .td2{
    width: 28%;
}

#page #price tr{
	display: block;
	border-bottom:1px solid #575757;
	padding:12px;
}
#page #price th{
	width: 23%;
	display: inline-block;
	text-align: left;
	font-weight: normal;
	color: #274c8f;
}
#page #price td{
	width: 25%;
	display: inline-block;
	text-align: left;
	font-weight: normal;
}



/*googlemap*/
.gmap {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
}
.gmap iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}

/* 引用 */
blockquote {
	width: 90%;
    position: relative;
		margin: 20px auto 30px;
    padding: 7px 16px;
    box-sizing: border-box;
    font-style: italic;
    color: #585858;
    border: 3px double #c0c0c0;
	border-radius: 3px;
}
blockquote:before{
    display: inline-block;
    position: absolute;
    top: -30px;
    left: -20px;
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-radius: 50%;
    text-align: center;
    content: "\f10d";
   font-family: "Font Awesome 5 Free";
    color: #e0e0e0;
    font-size: 40px;
    font-weight: 600;	
}
blockquote:after{
    display: inline-block;
    position: absolute;
    bottom: -30px;
    right: -20px;
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-radius: 50%;
    text-align: center;
    content: "\f10e";
   font-family: "Font Awesome 5 Free";
    color: #e0e0e0;
    font-size: 40px;
    font-weight: 600;
}
blockquote p {
    padding: 0;
    margin: 10px 0;
    line-height: 1.7;
}

/* パスワードフォーム */
.post_password {
	margin-top: 10px;
}
.post_password input{
	margin-bottom: 5px;
	padding: 7px 15px;
	border: 1px solid #999;
  border-radius: 2px;	
}
.post_password input[type="submit"]{
	margin-bottom: 5px;
	padding: 7px 15px;	
	background: #F0F0F0;
	border-radius: 2px;
	border: 1px solid #999;
}



/*1カラムボタン*/
.btn-col1{
	position: relative;
	display: inline-block;
	vertical-align: top;
	overflow: hidden;
	position: relative;
	width: 100%;
	margin-bottom: 1em;
}
.btn-col1 a{
	position: relative;
	max-width: 80%;
	margin: auto;
	display: block;
}
.btn-col1 span{
	position: absolute;
	top: 40%;
	left: 0;
	width: 100%;
	height: auto;
  font-size: 2em;
	line-height: 1.4;
	text-align: center;
	z-index: 100;
	color: #fff;
}
.btn-col1 a:after{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	z-index: 99;
	width: 100%;
	height: 100%;
	background-color: rgba(21,26,56,0.5);
}
.btn-col1 a:hover:after{
	background: none;
}




/*2カラムボタン*/
.btn-col2 li{
	display: inline-block;
	vertical-align: top;	
	width: calc((100% - 27px) / 2);	
}
.btn-col2 li a{
	position: relative;
  width: 100%;
	display: block;
	padding: 0.8em 2em;	
	border:1px solid #3e3a39;
}
.btn-col2 li a:after{
   content: "";
   position: absolute;
   border-right: 1px solid #3e3a39;
   border-top: 1px solid #3e3a39;
   width: 8px;
   top:40%;
   right: 5%;
   height: 8px;
   transform: rotate(45deg);
	cursor: pointer;
}	
.btn-col2 li:nth-of-type(odd){
	margin: 0 20px 0 0;	
}
.btn-col2 li:nth-of-type(even){
	margin: 0;	
}



/*tel-area*/
#page .tel-area p.time{
	color: #000;
	margin-top: 30px;
}
#page .tel-area{
	position: relative;
	margin: 0 auto;
	width: 100%;
	max-width: 600px;
	height: auto;
	padding: 1em;
	color: #274c8e;
	text-align: center;
}
#page .tel-area .tel-ico{
	display: inline-block;
	line-height:50px;
	vertical-align: middle;
	margin: 0 0 0 0;
	font-size: 20px;
}
#page .tel-area p.tel{
	display: inline-block;
	font-size: 45px;
	line-height: 50px;
	vertical-align: top;
}
#page .tel-area p{
	margin-bottom: 0;
}
#page .tel-area a:link,
#page .tel-area　a:visited,
#page .tel-area a:active { 	color: #274c8e; }
#page .tel-area a:hover {
	text-decoration: none;}	



/*flow*/
.flow ul{
	text-align: center;
}
.flow ul li{
	color: #fff;
	background: #867f6a;
	padding: 1em;
	margin-bottom: 24px;
	position: relative;
}
.flow-color02 ul li{
	background: #647d86;
}
.flow ul li:after{
   content: "";
   position: absolute;
   border-right: 2px solid #483230;
   border-bottom: 2px solid #483230;
   bottom: -14px;
   left: 49%;
   width: 16px;	
   height: 16px;
   transform: rotate(45deg);
   position: absolute;
}
.flow ul li:last-of-type:after{
	display: none;
}
.flow ul.col2 li:last-of-type:after{
   display: block;
}
.flow ul.col2 li:nth-of-type(1):before,
.flow ul.col2 li:nth-of-type(2):before{
   content: "";
   position: absolute;
   border-right: 2px solid #483230;
   border-bottom: 2px solid #483230;
   top: -24px;
   left: 49%;
   width: 16px;	
   height: 16px;
   transform: rotate(45deg);
   position: absolute;	
}
.flow ul.col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.flow ul.col2 li {
  -ms-flex-preferred-size: 49%;
  flex-basis: 49%;
}
.flow ul.col2 li:nth-child(odd) {
  margin-right: auto;
}

.step{
	border: 1px solid #CCCCCC;
	padding: 0 ;
}
	
.step h3{
    height: 80px;
    font-size: 20px!important;
    line-height: 100%!important;
    background: #efefef;
    padding: 30px!important;
}
	
.step p {
	margin: 0 30px;
}

.step .number{
	position: relative;
	margin: 0 30px 0 0;
}
.step .number::after{
	content: "";
	height: 30px;
	width: 1px;
	background: #999;
	position: absolute;
	right: -18px;
	top: 40%;
	margin-top: -11px;
	}
.step img {
    width: 90%;
    margin: 10px 5%;
}
.step a span{
	position: relative;
	margin: 0 20px
}
.step a span::before{
	content: '>';
	font-family: 'icomoon';
	/* font-size: 30px; */
	font-size: 18px;
	position: absolute;
	left: -20px;
	top: -9px;
}
.step a {
	width: 200px;
	border: 1px solid #3D3A39;
    padding: 10px 10px 10px 20px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
    text-decoration: none;
}
.step a:hover{
	background-color: #3D3A39;
	color: white;
}
.sankaku{
	position: relative;
}

.sankaku::after {
    content: '';
    width: 20px;
    height: 20px;
    border: 1px solid #ccc;
    transform: rotate( 
-45deg
 );
    border-top: none;
    border-right: none;
    position: absolute;
    left: 50%;
    bottom: -10px;
    background: #fff;
    margin-left: -10px;
}

/*受付終了*/
.event-close02{
	text-align: center;
	width: auto;
	max-width: 90%;
	font-size: 1.1em;
	margin: 30px auto;
	padding: 2em;
	background: #eee;
}


/* ===================================================================
　#single
==================================================================== */
#single{
	padding: 20px 0 0;
}
#single h1{
	position: relative;
	margin-bottom: 35px;
	padding-top: 10px;
	padding-bottom: 25px;
}
#single h1:after{
	content: '';
	height: 1.5px;
	background: #3e3a39;
	width: 50px;
	position: absolute;
	bottom: 0;
	left: 0;
}
#single h2{
	font-size: 20px;
	margin-bottom: 10px;
}

#single table{
	width:100%;
	border-top:1px solid #e0e0e0;
	border-right:1px solid #e0e0e0;
	margin-bottom:50px;
}
#single th{
	max-width: 100px;
	border-bottom:1px solid #e0e0e0;
	border-left:1px solid #e0e0e0;
	padding:15px;
	width:20%;
	text-align: left;
	font-weight: normal;
	background: #F6F6F8;
}
#single td{
	border-bottom:1px solid #e0e0e0;
	border-left:1px solid #e0e0e0;
	padding:15px;
}
#single table.col2-table td{
	width: 30%;
}
#single table a,
#single section.property-sec02 a{
	text-decoration: underline!important;
}

/*single-slide(slick)*/
.slide-field-area{
	position: relative;
  display: block;
	clear: both;
}
.image-slider-wrap{
  width: 100%;
}
.image-slider{
    margin: 0 0 10px;
}
.image-slider img{
    display: table;
    width: 100%;
    height: auto;
	object-fit: contain;
    color: #fff;
    text-align: center;
    margin: 0;
}
.slide-field-area .slick-slide img {
	width: 100%;
}
.slick-prev:before,
.slick-next:before{
	color: #000!important;
}
.slick-dots {
    bottom: 20px!important;
}
.slick-dots li{
	margin: 0 2px!important;
}
.slick-dots li button::before {
    font-size: 13px!important;
}



/*4カラム*/
#single ul.facility{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	text-align: center;
	border-left: 1px solid #e0e0e0;	
}
#single ul.facility:after,
#single ul.facility:before{
	content:"";
	display:block;
	width: 25%;
	height:0;
}
#single ul.facility:before{
	order:1;
}
#single ul.facility li{
	width: 25%;
	border-bottom: 1px solid #e0e0e0;	
	border-right: 1px solid #e0e0e0;		
	padding: 2%;
}
#single ul.facility li:nth-of-type(1),
#single ul.facility li:nth-of-type(2),
#single ul.facility li:nth-of-type(3),
#single ul.facility li:nth-of-type(4){
	border-top: 1px solid #e0e0e0;		
}
#page-contents ul.facility li img{
	margin-bottom: 10px;
    width: auto;
    height: 190px;
	object-fit: contain;
}
#page-contents ul.facility li p {
    margin-bottom: 0;
}


#single section{
	margin-bottom: 20px;
}

section.property-sec01{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 20px;
	padding-top: 10px;
 	border-bottom: 1px solid #3e3a39;	
}
section.property-sec01:after,
section.property-sec01:before{
	content:"";
	display:block;
	width: 50%;
	height:0;
}
section.property-sec01:before{
	order:1;
}
section.property-sec01 p{
	width: 50%;
}
section.property-sec01 .btn{
	width: auto;
}
section.property-sec01 .btn a{
	min-width: 320px;
	border-radius: 3px;
}
section.property-sec01 .btn a:after{
   content: "";
   position: absolute;
   border-right: 1px solid #3e3a39;
   border-bottom: 1px solid #3e3a39;
	border-top: 0;
   width: 8px;
   top:40%;
   right: 5%;
   height: 8px;
   transform: rotate(45deg);
	cursor: pointer;
}
section.property-sec01 p.price{
	line-height: 32px;
	margin-top:7px;	
	margin-bottom: 0;
	font-size: 32px;	
}
section.property-sec01 .price-box{
	display: inline-block;
	border:1px solid #3e3a39;
	color: #3e3a39;
	padding: 5px 10px;
	text-align: center;
 	margin-right: 15px;
	font-size: 14px;
}
section.property-sec01 .price-box:hover{
	border:1px solid #3e3a39;
	color: #3e3a39;
  background: none;
}
section.property-sec01 .price-txt {
    font-size: 32px;
}


#single section.property-sec02,
#single section.property-sec03{	
	margin-bottom: 20px;
 	padding-bottom: 30px;
 	border-bottom: 1px solid #3e3a39;	
}



.prevnext .back{
	padding-top: 0!important;
}
.prevnext{
	padding-top: 0!important;
}

.news-single #page-contents .inner,
.works-single #page-contents .inner{
    margin: 30px auto 50px;
}
/*2カラム*/
#single ul.works-loop{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#single ul.works-loop:after,
#single ul.works-loop:before{
	content:"";
	display:block;
	width: 50%;
	height:0;
}
#single ul.works-loop:before{
	order:1;
}
#single ul.works-loop li{
	width: 50%;
	padding: 0;
	margin-bottom: 40px;
}
#single ul.works-loop li:nth-of-type(odd){
	padding-right: 1%;
}
#single ul.works-loop li:nth-of-type(even){
	padding-left: 1%;
}
#single ul.works-loop li img{
	margin-bottom: 10px;
}
#page-contents ul.works-loop li p {
    margin-bottom: 0;
}

#page .profile .left{
	width:30%;
	float: left;
}

#page .profile .right{
	width:65%;
	float: right;
}

#page .profile .name{
	font-size:130%;
}

#page .profile .name-left{
	width:30%;
	float: left;
}

#page .profile .sns-right{
	margin-top:25px;
}


#page .about-ad{
	display: inline-block;
}

#page .big-message{
	font-size:130%;
}

#page .chui{
	border:2px solid #B5090C;
	padding:20px;
	margin-bottom:30px;
}

#page #request .btn03{
	margin-bottom:40px;
}

#page .products-archive h4{
	text-align: center;	
}
#page .products-archive li{
	width:25%!important;
	float: left!important;
	margin-bottom: 40px;
}




/* ===================================================================
　single-products
==================================================================== */
#page .single-products .col4 ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#page .single-products .col4 ul:after,
#page .single-products .col4 ul:before{
	content:"";
	display:block;
	width: 25%;
	height:0;
}
#page .single-products .col4 ul:before{
	order:1;
}
#page .single-products .col4 ul li{
	width: calc(25% - 5px);
	margin: 0 6px 6px 0;
	position: relative;
	overflow: hidden;
	padding-top: 16.2%;	
}
#page .single-products .col4 ul li:nth-of-type(4n){
	margin: 0 0 6px 0;	
}
#page .single-products .col4 ul li img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.head-img img{
	width: 100%;
}
.head-img{
	width: 100vw;
}

/*single-product オアシスドーム*/
.oasis-original a{
	margin-top: 17px;
	    background: #155358;
    display: block;
    padding: 10px 15px;
    color: #fff!important;
    text-align: center;
    width: 30%
}

/*single-products-jirei*/
#page .single-products-jirei{
	margin: 30px 0;
}

#page .single-products-jirei ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#page .single-products-jirei ul:after,
#page .single-products-jirei ul:before{
	content:"";
	display:block;
	width: 32.5%;
	height:0;
}
#page .single-products-jirei ul:before{
	order:1;
}
#page .single-products-jirei ul li{
    width: 32.5%;
    height: auto!important;
    margin: 0 6px 12px 0;
}
#page .single-products-jirei ul li:nth-of-type(3n){
	margin: 0 0 12px 0;	
}



#page-contents .single-products-jirei .thumb img{
	width: 100%;
}
	
#page-contents .single-products-jirei .thumbwrap p{
	color: #fff!important;
  line-height: 140%;	
}
#page-contents .single-products-jirei .thumbwrap p.title {
    font-size: 16px!important;
    font-weight: bold;
    width: 100%;
    order: 2;
    margin: 10px 0 10px;
}
#page-contents .single-products-jirei .thumbwrap p.title:after{
	display: none;
}
#page-contents .single-products-jirei .thumbwrap p.area {
    order: 1;
    padding: 0;
    margin: 0;
    font-size: 12px!important;
    position: relative;
    display: inline-flex;
    padding-bottom: 10px;
}
#page-contents .single-products-jirei .thumbwrap p.area:after{
    content: '';
    width: 100%;
    height: 1px;
    background: #fff;
    position: absolute;
    left: 0;
    bottom: 0;
}


/*single-products-catalog*/
#page .single-products-catalog{
	margin: 30px 0;
}



/* ===================================================================
　single-works
==================================================================== */
#page .single-works h1{
	text-align: center;
	margin-bottom: 30px;
}

#page .col3 li{
	width:30%;
	float: left;
	margin:0 20px 20px 0;
}


#page .col3 li:nth-child(3n){
	margin-right:0;
}

.single-works .prevnext {
     padding-top: 0!important; 
}
.single-works .prevnext .back {
     padding-top: 0!important; 
}

/*tabpager*/
 .jquery-tab-pager-tabbar  li.current {
        color: #155358;
    }
#jquery-tab-pager-navi li{
        margin: 10px;
		display: inline-block;
    }
    
#wrapper {
	margin: 10px auto;
    }
.contents {
	margin: 60px auto 0 auto;
	width: 90%;
    }
#tab li:hover{
	color: #fff;
	background-color: #385c5b;		
	opacity: 0.7;
}

#tab li{
    cursor: pointer;
    width: calc(100%/3);
    text-align: center;
    color: #385c5b;
    border: 1px solid rgba(0 0 0/ 10%);
    box-sizing: border-box;
    float: left;
	padding: 8px 0;
	font-weight: 600;
}

#tab li.current{
    color: #fff;
	background-color: #385c5b;		
}

.current div{
	display: inline-block;
}

.single-content {
	width: 32.3%;
	margin-right: 1%;
	height: 250px!important;
	overflow: hidden;
	position: relative;
	margin-bottom: 10px;
}

.single-content:nth-of-type(3n){
	margin-right: 0;
}

.single-content .thumb img{
	min-height: 250px!important;
	width: 100%;
	object-fit: cover;	
	font-family: 'object-fit: cover;'; /*IE対策*/
}

#jquery-tab-pager-navi li{
	cursor: pointer;
}

#jquery-tab-pager-navi{
	text-align: center;
	margin-bottom: 30px;
}


#page #tab{
	width: 90%;
	margin: 0 auto;
}



.wpdm-download-link.btn.btn-info.btn-lg{
	min-width: 300px;
	font-size: 1.2em;
}


/*モーダルウィンドウ*/

.circle1, .circle2, .circle3, .circle4, .circle5, .circle6, .circle7,.circle8, .circle9, .circle10, .circle11, .circle12, .circle13, .circle14 {
    animation: poyopoyo 4s ease-out infinite;
    opacity: 0.6;
    background-color: #000;
    border-radius: 50%;
    width: 20px;
    height: 20px;
	position: absolute;
	border: 1px solid #D63638;
}
.circle1{
	top: 38%;
    left: 8%;
}
.circle2{
	top: 26%;
    left: 25%;
}
.circle3{
	top: 37%;
    left: 27%;
}
.circle4{
	top: 35%;
    left: 20%;
}
.circle5{
	top: 41%;
    left: 21%;
}
.circle6{
	top: 46%;
    left: 33%;
}
.circle7{
	top: 65%;
    left: 27%;
}
.circle8{
	top: 35%;
    left: 19%;
}
.circle9{
	top: 35%;
    left: 31%;
}
.circle10{
	top: 47%;
    left: 33%;
}
.circle11{
	top: 58%;
    left: 31%;
}
.circle12{
	top: 57%;
    left: 26%;
}
.circle13{
	top: 58%;
    left: 19%;
}
.circle14{
	top: 48%;
    left: 14%;
}

@keyframes poyopoyo {
  0%, 40%, 70%, 80% {
    transform: scale(1.3);
  }
  40%, 60% {
    transform: scale(1);
  }

}



.feature{
	position: relative;
}



.m-content p{
display: none;
}
.m-content{
    margin: 0 auto;
    padding: 40px;
}
.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
	z-index: 999;
}
.modal__bg{
    background: rgba(0,0,0,0.7);
    height: 100vh;
    position: absolute;
    width: 110vw;
    left: -18%;
}
.modal__content{
    background: #fff;
    left: 50%;
    padding: 40px;
    position: absolute;
    top: 50%;
    transform: translate(-79%,-50%);
    width: 60%;
}
a.js-modal-close{
	margin-top: 15px;
}

/*会社概要*/
#page .col3-banner li {
    width: 32.63%;
    float: left;
    margin: 0 1% 20px 0;
}

#page .col3-banner li:nth-child(3n) {
    margin-right: 0;
}


/*MATTER　施行中事例*/
#archive .matter li .txt-wrap{
	padding: 0 5px;
}
#archive .matter li{
	width: 30%;
	margin-right: 5%;
	margin-bottom: 40px;
	display: inline-block;
}
#archive .matter li:nth-child(3n){
	margin-right: 0;
}
#archive .matter .more-btn{
	text-align: center;
	border: 1px solid #000;
	height: 30px;
	line-height: 28px;
}

.matter-single .inner{
	margin-top: 30px!important;
}
.matter-single .report{
	margin-bottom: 30px;
}
.matter-single li .rf-img{
	text-align: center;
}
	
.matter-single li{
	width: 45%;
	margin-right: 9%;
	margin-bottom: 40px;
	display: inline-block;
}
.matter-single li:nth-child(2n){
	margin-right: 0;
}




/* ===================================================================
　service
==================================================================== */
#page .service .col2 li{
	position: relative;
	padding-bottom: 60px;	
	margin-bottom: 60px;
}
#page .service .col2 .btn{
	position: absolute;
	bottom: 0;
}
#page-contents .service .col2 p{
}
#page .service .col2 .btn a{
	position: relative;
  min-width: 400px;
}


/* ===================================================================
　page-feature
==================================================================== */
.page-feature ol li{
	list-style-type: decimal;
}

/* ===================================================================
　philosophy
==================================================================== */
.philosophy-ryakureki{
	
}
.philosophy-ryakureki-l{
	float: left;
	width: 60%;
}
.philosophy-ryakureki-r{
	float: right;
	width: 30%;
}
.philosophy-ryakureki-r p{
	text-align: right;
	font-size: 14px;
}
.philosophy-ryakureki-r p span{
	font-weight: bold;
	font-size: 17px;
	line-height: 165%;
	padding: 20px 0 0;
	margin: 0 0 20px 10px;
	font-family: dnp-shuei-mincho-pr6n, sans-serif;
}

/* ===================================================================
　contents-temp
==================================================================== */
.contents-temp{
	width: 90%;
	min-width: 900px;
	margin: 0 auto 50px;
}
#page .contents-temp h2{
	font-size: 26px;
}
#page .contents-temp h2:after{
	background: #d9d9d9;
}
.contents-temp-mainimg{
    position: relative;
    width: 100%;
    padding: 0 12.5vw 80px;		
}
.contents-temp-mainimg img{
	width: 100%;
	height: auto;
	max-height: 300px;
	object-fit: cover;
}

/*.ct-txt*/
.ct-txt{
    position: relative;
    width: 100%;
    padding: 0 12.5vw;	
}
.ct-txt p{
  text-align: center;
  margin-bottom: 44px;
}


/*.ct-img-r*/
.ct-img-r{
    position: relative;
    width: 100%;
    padding: 0 12.5vw 80px;
}
.ct-img-r-img{
	position: relative;
	width: 50%;
	right:-50px;
	margin: 0 0 0 auto;	
}
.ct-img-r-img img{
  height: 100%;
  object-fit: cover;
}
.ct-img-r-img:before {
    top: 50px;
    left: 50px;
}
.ct-img-r-img:before {
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100%;
    content: '';
    background: #274c8f;
}
.ct-img-r-txt h2{
  font-size: 48px;
	text-align: left;
}
.ct-img-r-txt{
    width: auto;
    height: auto;
    position: absolute;
		top: 50%;
		left: 8%;
    right: 52.5%;
		transform: translate(0,-50%);
    text-align: left;
    z-index: 1;	
}

/*.ct-img-l*/
.ct-img-l{
    position: relative;
    width: 100%;
    padding: 0 12.5vw 80px;
}
.ct-img-l-img{
	position: relative;
	width: 50%;
	left: -50px;
	margin: 0 auto 0 0;
}
.ct-img-l-img img{
  height: 100%;
  object-fit: cover;
}
.ct-img-l-img:before {
    top: 50px;
    right: 50px;
}
.ct-img-l-img:before {
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100%;
    content: '';
    background: #274c8f;
}
.ct-img-l-txt h2{
  font-size: 48px;
	text-align: left;
}
.ct-img-l-txt{
    width: auto;
    height: auto;
    position: absolute;
    top: 50%;
    left: 60%;
	  transform: translate(-15%,-50%);
    text-align: left;
    z-index: 1;	
}

/*.contents-temp-yudobtn*/
.contents-temp-yudobtn{
    position: relative;
    width: 80%;
    margin: 0 auto 80px!important;
}
.contents-temp-yudobtn img{
	width: 100%;
	height: auto;
	max-height: 300px;
	object-fit: cover;
}
.contents-temp-yudobtn-img{
	position: relative;
}
.contents-temp-yudobtn-fil {
    color: #fff;
    text-align: center;
    background: rgba(7,67,34,.7);
}
.contents-temp-yudobtn-fil {
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
}
.contents-temp-yudobtn-fil02 {
  padding: 35px;	
}
#page .contents-temp-yudobtn-fil h2{
	margin: 0 0 0 0;
}
#page .contents-temp-yudobtn-fil h2:after{
	display: none;
}




/*.contents-temp table*/
#page .contents-temp table{
	width: 80%;
	margin: 0 auto 80px!important;	
	border-top:1px solid #d9d9d9;
}
#page .contents-temp table tr{
	border-bottom:1px solid #d9d9d9;
	padding:40px 0;
}



/*#footer-top-contactbtn*/
#footer-top-contactbtn{
	position: relative;
	background: url("https://and-teras.co.jp/wp/wp-content/uploads/2021/08/main.jpg") no-repeat;
    background-size: cover;
    background-position: center;
    height: 360px;
}
.footer-top-contactbtn-in {
    background-color: rgba(43,43,43,0.6);
    height: 100%;
	text-align: center;
	color: #fff;
}

.footer-top-contactbtn-in02{
	position: absolute;
	left: 50%;
	top: 45%;
	transform: translate(-50%,-45%);
}
#footer-top-contactbtn h2{
	font-size: 36px;
	margin: 0 0 10px 0;
}
#footer-top-contactbtn h2,
#footer-top-contactbtn .tel-01{
	font-family: dnp-shuei-mincho-pr6n, sans-serif;
	font-weight: normal;	
}
#footer-top-contactbtn  .tel{
	margin: 10px 0 20px 0;
	font-size: 24px;
}
#footer-top-contactbtn .tel-01{
  margin: 0 12px 0 0;
}
#footer-top-contactbtn .tel-02 a{
	color: #fff!important;
}
#footer-top-contactbtn .fc-form a {
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	text-decoration: none;
	color: #2b2b2b;
	font-size: 16px;
	border-radius: 30px;
	text-align: center;
	margin: 5px auto;
	width: 100%;
	max-width: 300px;
	padding: 1.2em 1em;
	position: relative;
	transition: 0.3s;
	background-color: #fff;
	font-family: Georgia, Times New Roman, serif;
	font-weight: normal;		
}

#footer-top-contactbtn .fc-form a::before,
#footer-top-contactbtn .fc-form a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  transform-origin: 100% 50%;
  height: 1px;
  width: 8px;
  background-color: #2b2b2b;
  border-radius: 2px;
  will-change: transform;
  transition: .3s;
}

#footer-top-contactbtn .fc-form a:hover{
	text-decoration: none;
	opacity: 0.8;
	transition:all 0.5s;
}
#footer-top-contactbtn .fc-form a::before {
  transform: translateY(-50%) rotate(30deg);
}
#footer-top-contactbtn .fc-form a::after {
  transform: translateY(-50%) rotate(-30deg);
}
#footer-top-contactbtn .fc-form a:hover::before {
  transform: translate(5px, -50%) rotate(30deg);
}
#footer-top-contactbtn .fc-form a:hover::after {
  transform: translate(5px, -50%) rotate(-30deg);
}


#page .sigyou .mailform{
	max-width: 100%;
}

#page-contents .inner.sigyou {
    width: 65%;
    min-width: 900px;
    margin: 0 auto 50px;
    margin-left: 8%;
}