/*
Theme Name: BIGWOOD
Author: R-design
*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;700;800&display=swap');
.en {

}


.wp-navi{
	margin:30px auto ;
	height:50px;
	text-align:center;
}

.wp-pagenavi a, .wp-pagenavi span {
    text-decoration: none;
    border: 1px solid #BFBFBF;
	padding: 10px!important;
	margin: 2px;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
    border-color: #ffb03e!important;
	background-color:#ffb03e!important;
	color:#fff!important;
}
.wp-pagenavi a, .wp-pagenavi span {
    text-decoration: none;
    border: 1px solid #afafaf!important;
	background-color:#afafaf!important;
	color:#fff!important;
}



.sp {
  display: none;
}

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

/*固定*/
#header{
	/*height: 135px;*/
	width:100%;/*横幅指定*/
	background-color: #fff;
}

/*JSを使いfixedクラスが付与された際の設定*/
#header.fixed{
	position: fixed;/*fixedを設定して固定*/
  z-index: 999;/*最前面へ*/
  top:0;/*位置指定*/
  left:0;/*位置指定*/
}

#head{
	width:100%;
	padding-top:5px;
	display:flex;
	justify-content: space-between;
	align-content: flex-end;
	border-bottom:10px solid #2e9545;
}

#head h1{
	width:28%;
	height:auto;
	font-size:11px;
	margin-left:10px;
}
#head h1 p{
	margin-bottom:10px;
}
#head h1 img{
	width:100%;
	height:auto;
	max-width:204px;
}
#head-r{
	flex:1;
}
#head-bt{
	display:flex;
	justify-content: flex-end;
	padding-right:10px;
}
/*#head-bt p{
	width:220px;
	height:auto;
	padding:6px;
	text-align: center;
	color:#fff;
	background-color: #665d56;
	font-size:18px;
	margin-right:10px;
	border-radius: 5px;
}*/
#head-bt a{
    display:inline-block;
	width:220px;
	height:auto;
	padding:6px;
	text-align: center;
	color:#fff;
	background-color: #005900;
	font-size:18px;
	margin-right:10px;
	border-radius: 5px;
	transition: 0.5s;
}
#head-bt .apply{
	background-color: #009900;
	transition:0.5s;
}
#head-bt .line{
	border-left:10px solid #ffd12a;}

#head-bt .tel{
    width:260px;
    background-color: #fff;
    color:#009900;
    font-size:28px;
    font-weight:700;
    padding:0 5px 0;
	display:flex;
	flex-wrap:wrap;
}
#head-bt .apply a:link, #head-bt .apply a:visited{
	color:#fff;
}
#head-bt a:hover{
	background-color: #00CC00;
}
#head-bt .tel:hover{
	background-color: #fff;
	color: #00CC00;
}
#head-bt .tel img{
    width:30px;
    height:auto;
	align-self:center;
}
nav ul{
	display:flex;
	justify-content: space-around;
	/*margin-top: 10px;*/
	margin:0 auto;
	position: relative;
}
nav li{
	font-size:16px;
	text-align: center;
    display:inline-block;
    flex-grow: 1;
    margin:10px 0 0px;
    border-left:solid 1px #999;
}
nav a{
	transition: 0.5s;
	display:block;
	color:#1d2088;

}
nav li span{
	display: block;
	font-size:13px;
	color:#999;
}
nav li {
  padding-bottom: 5px;

}
nav li + li {
 border-left: 1px solid #999;
}


/*========= ドロップダウンのためのCSS ===============*/

/*2階層目以降は横並びにしない*/
nav ul ul{
	display: block;
}

/*ナビゲーションのリンク設定*/
nav ul li a{
    /*矢印の基点にするためrelativeを指定*/
	position: relative;
	display: block;
	text-decoration: none;
	color: #16773a!important;
	font-weight:500;
    border-bottom:3px solid rgba(0,0,0,0);
	transition:all .3s;
}

nav ul li li a{
	padding:10px;
}

nav ul li a:hover{
	color:#30ae09!important;
	border-bottom:3px solid #30ae09;
}

/*==2階層目以降の画像設定*/

nav ul li.has-child img{
	max-width: 100%;
	height: auto;
	transition: all .5s;
	vertical-align: bottom;
}

/*hoverしたら画像拡大*/
nav ul li.has-child img:hover{
	transform: scale(1.2);
}

nav ul li.has-child dt{
	overflow: hidden;	
	margin:0 0 20px 0;
}

/*== 2層目の設定 */

nav li.has-child ul{
  /*絶対配置で位置を指定*/
    position: absolute;
	left:0;
	top:70px;
	z-index: 4;
  /*子要素を横並びに*/    
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
    /*形状を指定*/
	background:#FFFACD;
	width:95%;
    /*はじめは非表示*/
	visibility: hidden;
	opacity: 0;
     /*アニメーション設定*/
	transition: all .3s;
}

/*hoverしたら表示*/
nav li.has-child:hover > ul{
  visibility: visible;
  opacity: 1;
}

/*各ナビゲーション横幅*/
nav li.has-child ul li{
	width:16.6%;
	font-size:14px;
}

/*ナビゲーションaタグの形状*/
nav li.has-child ul li a{
	color: #fff;
}



/*============ slide ============*/

#slide{
	width:100%;
	height:auto;
	margin:auto;
	position: relative;
	text-align: center;
	background: url("../../../../image/slide/07.webp")no-repeat center;
}
#slide-inner img{
	width:auto;
	height:80vh;
	margin:0 auto;
}
.obi{
	position: absolute;
	bottom:10px;
  left: 50%;
  margin: auto;
  transform: translateX(-50%) translateY(-0%);
}
/*============ news ============*/

#news{
	background: #FFFACD;
	padding:30px 0 30px 12vw;
}

#news-inner{
	margin: 0 auto;
	display:flex;
	flex-wrap:wrap;
    position:relative;
	color: #1d2088;
}
#news-inner:after{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    border-radius: 500px 0 0 500px;
	z-index:1;
    
}
#news-l{
	width:26%;
	max-width:350px;
	display:flex;
	flex-wrap:wrap;
	justify-content: center;
	padding:1%;
	align-items: center;
	z-index:2;
}
#news-l img{
	width:50px;
	height:auto;
}
#news-l h2{
	font-size:42px;
	text-align:center;
	font-weight:600;
	color:#009900;
}
#news-l h2 span{
	display: block;
	font-size:18px;
	font-weight:500;
}
#news-l p{
	width:100%;
	text-align: center;
	margin:20px 0;
}
#news-l a{
	padding:7px 50px;
	background-color: #005900;
	color:#fff;
	border-radius: 5px;
	transition: 0.5s;
}
#news-l a:hover{
	background-color: #00CC00;
}
#news-r{
	width:70%;
	padding:1%;
	z-index:2;
}
#news-r dl{
	padding:10px 1%;
	display: flex;
	flex-wrap:wrap;
	position:relative;
}
#news-r dl::before {
    background: #00D800;
    content: '';
    width: 100%;
    height: 1px;
    position: absolute;
    left: 0;
    bottom: 0;
    margin: auto;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform .8s;
}
#news-r dl:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}

#news-r dt{
	width:23%;
	padding-right:2%;
}
#news-r dd{
	width:73%
}
/*============ line-up ============*/

#lineup{
	margin-bottom:50px;
	padding-top:80px;
	background-color: #FFFACD;
}
.title{
	max-width:700px;
	margin:0 auto 50px;
	display:flex;
	flex-wrap:wrap;
	align-items: center;
	justify-content: center;
}
.title img{
	width:50px;
	height:auto;
}
.title h2{
	font-size:42px;
	text-align:center;
	font-weight:600;
	color: #009900;
}
.title h2 span{
	display:block;
	font-size:18px;
	font-weight:500;
}
#lineup-inner{

}

.lineup-box{
	display:flex;
	flex-wrap:wrap;
}
.lineup-box a{
	display: block;
	width:33.3333%;
}
.lineup-box li{
	width:100%;
	padding:0 0 200px;
	text-align: center;
	font-size:24px;
	transition:box-shadow 0.3s, transform 0.3s;
}
.lineup-box li:hover{
	box-shadow:0 6px 14px rgba(0, 0, 0, 0.24);
    transform:translate(0, -7px);
}
.lineup-box li p{
	display:block;
	max-width:65%;
	background-color: rgba(0,153,0,0.90);
	color:#fff;
	/*margin: 0 auto;*/
	border-radius: 5px;
	text-align: center;
	font-size:clamp(1rem, 0.795rem + 1.02vw, 1.563rem);
	padding:10px 0;
	font-weight:600;
}
.lineup-box li span{
	display:block;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size:clamp(1.2rem, 0.889rem + 0.56vw, 1.375rem);
}
.lineup-box li.box1{
	background: url("../../../image/top/plan_01.webp") no-repeat center / cover;	
}
.lineup-box li.box2{
	background: url("../../../image/top/plan_02.webp") no-repeat center / cover;	
}
.lineup-box li.box3{
	background: url("../../../image/top/plan_03.webp") no-repeat center / cover;	
}
.lineup-box li.box4{
	background: url("../../../image/top/plan_04.webp") no-repeat center / cover;	
}
.lineup-box li.box5{
	background: url("../../../image/top/plan_05.webp") no-repeat center / cover;	
}
.lineup-box li.box6{
	background: url("../../../image/top/plan_06.webp") no-repeat center / cover;	
}


/*============ event ============*/
#event{
	margin:100px 0;
}
#event-inner{
	max-width:1100px;
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
}
.event-img, .event-img-s{
	width:50%;
	transition:box-shadow 0.3s, transform 0.3s;
}
.event-img:hover, .event-img-s:hover{
	transform:translate(0, -7px);
}
.event-img img{
	width:100%;
	height:auto;
	border-radius:10px;
}
.event-img-s img{
	width:100%;
	height:auto;
	border-radius:10px;
}
.event-info{
	width:50%;
	padding:0 0 0 40px;
}
.event-info .midashi{
	width:100%;
	margin: -20px auto 20px;
	padding:10px;
	font-size:24px;
	border-bottom:solid 6px #005900;
	color:#005900;
}
.event-info dl{
	width:100%;
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
}
.event-info dt{
	width:20%;
	background-color: #005900;
	padding:0 10px;
	border-radius: 5px;
	text-align: center;
	margin-bottom:10px;
	color:#fff;
}

.event-info dd{
	width:80%;
	margin-bottom:10px;
	padding:0 10px;
}
.event-bt{
	width:100%;
	display:flex;
	flex-wrap:wrap;
	margin:10px 0;
}
.event-bt a:link{
	display: block;
	width:48%;
	margin: 0 1%;
	background-color: #005900;
	transition: 0.5s;
	color:#fff;
	text-align: center;
	padding:10px 0;
	border-radius: 5px;
}
.event-bt a:visited{color:#fff;}

.event-bt a:nth-child(2){
	background-color:#009900;
	transition: 0.5s;
}
.event-bt a:hover{
	background-color:#00CC00;
}
/*============ genba ============*/

#genba{
	background-color: #009900;
	padding:20px 10px 80px;
}

#genba-inner{
	max-width:1100px;
	margin:0 auto;
	padding:30px ;
	display:flex;
	flex-wrap:wrap;
	background-color: #fff;
	border-radius: 5px;
	box-shadow: 2px 2px 9px -4px #03022c;
}
#genba-img{
	width:50%;
}
#genba-img img{
	width:100%;
	height:auto;
	border-radius:10px;
}
#genba-info{
	width:50%;
	padding:0 0 0 40px;
}
#genba-info .midashi{
	width:100%;
	margin: -20px auto 50px;
	padding:10px;
	font-size:clamp(1.125rem, 0.989rem + 0.68vw, 1.5rem);
	border-bottom:solid 6px #005900;
	color:#005900;
	text-align: center;
}

.genba-bt{
	width:100%;
	display:flex;
	flex-wrap:wrap;
	margin:10px 0;
	justify-content:center;
}
.genba-bt a:link{
	display: block;
	width:48%;
	margin: 0 1%;
	background-color:#009900;
	transition: 0.5s;
	color:#fff;
	text-align: center;
	padding:10px 0;
	border-radius: 5px;
}
.genba-bt a:visited{color:#fff;}

.genba-bt a:nth-child(2){
	background-color: #009900;
	transition: 0.5s;
}
.genba-bt a:hover{
	background-color: #00cc00;
}

#genba-s{
	margin:50px 0;
}
/*============ works ============*/
#works{
	position: relative;
	padding:80px 0 50px;
}
#works:after{
	content: "";
    display: block;
    position: absolute;
    top: 0px;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: #009900;
    /*border-radius: 500px 0 0 0;*/
	z-index:1;
}
#works-top{
	display:flex;
	flex-wrap:wrap;
	margin-bottom: 80px;
	position: relative;
	z-index:2;
}

#works-top-box-l{
	width:31%;
	display:flex;
	flex-wrap:wrap;
	align-items: center;
	justify-content: center;
	padding:50px 0;
}
#works-top-box-l img{
	width:50px;
	height:auto;
}
#works-top-box-l h2{
	font-size:42px;
	text-align:center;
	padding-left:20px;
	color:#fff;
	margin:0;
}
#works-top-box-l h2 span{
	display: block;
	font-size:18px;
}
#works-top-box-l p{
	width:100%;
	text-align: center;
	margin-top:10px;
}
#works-top-box-l a{
	padding:7px 50px;
	background-color: #fff;
	border-radius: 5px;
	transition: 0.5s;
}
#works-top-box-l a:hover{
	background-color: #ffcc33;
}

.works-top-box{
	width:calc( 23% - 10px );
	margin:30px 10px 0 0;
	background-color: #fff;
	transition:box-shadow 0.3s, transform 0.3s;
	border-radius: 5px;
}
.works-top-box img{
	width:100%;
	height:auto;
}
.works-top-box:hover{
transform:translate(0, -7px);
}
.works-shurui{
	background-color: #ffcc33;
	color:#000;
	width:40%;
	text-align: center;
	margin:5px 10px;
	font-size:16px;
}
.works-top-box p{
	text-align: center;
	padding:20px 0;
}
.works-top-box p a{
	color:#000;
}

/*============ contents ============*/
#contents{
	background-color: #005900;
	padding:80px 0;
}

#contents .title h2{
	color:#fff;
}
#contents-flex{
	display:flex;
	flex-wrap:wrap;
	justify-content: center;
	max-width:1300px;
	margin:0 auto;
}
.contents-box a{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
	transition: 0.5s;
}
.contents-box{
	position:relative;
	width:31%;
	max-width:400px;
	height:auto;
	font-weight:600;
	font-size:24px;
	margin:10px 1% 30px;
	padding:10px 0;
	border-bottom:1px solid #fff;
	transition:box-shadow 0.3s, transform 0.3s;
}

.contents-box > img{
	width:100%;
	heigjt:auto;
}
.contents-box:hover{
	transform:translate(0, -7px);
}
.contents-box-flex{
	display: flex;
    justify-content: space-between;
	padding-right:50px;
	margin:10px 5px;
	position:relative;
}
.contents-box-flex img{
    align-items: center;
    width: 85px;
	height:auto;
	display:none;
}
.contents-box-flex p{
	flex:1;
	color:#fff;
	font-weight:600;
	text-align:right;
}
.contents-box-flex::after{
	position:absolute;
	content:'';
	width:0;
	height:0;
	right:0;
	top:calc(50% - 10px);
	border-style:solid;
	border-width: 10px 0 10px 20px;
	border-color: transparent transparent transparent #FFED00;
}
/*============ contact ============*/
.contact{
	background-color:#f2f2f2;
	padding:80px 10px 0;
}
.contact .midashi{
	text-align: center;
	font-size:clamp(1rem, 0.926rem + 0.37vw, 1.25rem);
	margin-top:20px;
	color:#000;
}
.contact-flex{
	display:flex;
	flex-wrap:wrap;
	gap:0 2%;
	margin:0 auto;
	max-width:1300px;
}
.contact-flex a{
	display:inline-block;
	width:49%;
	margin:10px 0 30px;

}

.contact-box{
	position: relative;
	transition:box-shadow 0.3s, transform 0.3s;
}


.contact-box:hover{
	transform:translate(0, -7px);
}

.contact-box img{	
    width: 100%;
	height:auto;
}



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

footer{
	background-color: #f2f2f2;
	position: relative;
}
footer:after{
	content: "";
    display: block;
    position: absolute;
    top: 0px;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: #009900;
    /*border-radius: 500px 0 0 0;*/
	z-index:1;
}

#footer-flex{
	display:flex;
	flex-wrap:wrap;
	max-width:1200px;
	padding:50px 0 30px;
	margin:0 auto;
	position: relative;
}
.footer-box{
	width:40%;
	text-align: center;
	font-size:20px;
	padding:0 50px 10px;
	color:#fff;
	z-index:2;
}
.footer-box img{
	width:100%;
	max-width:280px;
	height:auto;
}

.footer-box2{
	width:30%;
	padding: 0 10px 20px;
	text-align: left;
	z-index:2;
}
.footer-box a, .footer-box2 a{
	color:#fff;
}
.footer-box2 a:hover{
	color:#000;
}
.footer-box2 li{
	position: relative;
	padding:7px 10px 5px 20px;
}

.footer-box2 li::before{
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 2px;
  width: 7px;    
  height: 7px;   
  border-top: 2px solid #fff;   
  border-right: 2px solid #fff;   
  transform: rotate(45deg);  
}

#copy{
	padding:10px;
	font-size:14px;
	text-align: center;
	color:#fff;
	z-index:2;
}
.fix-btn {
    position: fixed;
    top: 60%;
    right: 0;
    transform: translateY(-50%);
    z-index: 100;
}
.fix-btn_item a{
	display: block;
	padding:10px 0;
}
.fix-btn_item {
	position:relative;
	transition:box-shadow 0.3s, transform 0.3s;
}
.fix-btn_item:hover{
	transform:translate(0, -7px);
}


/*============ 下層ページ ============*/


#subtitle{
	width:100%;
	height:320px;
	color:#005900;
	/*background-color: #FFFCE8;*/
	position:relative;
}
#subtitle::before{
	content:'';
	background:url(../../../../image/top/6kaku.png) no-repeat ;
	position:absolute;
	width:30%;
	height:50%;
	background-size: contain;
	z-index:2;
}
#subtitle::after{
	content:'';
	position:absolute;
	top:0;
	left:0;
	background-color:#fff;
	border-radius:0 500px 0 0;
    width: 60%;
    height: 100%;
	z-index:1;
}
#subtitle-box{
	position:relative;
	padding:6vw 10vw 0 ;
	z-index:2;
}
#subtitle-box h2{
	font-size:clamp(1.5rem, 0.909rem + 2.95vw, 3.125rem);
	font-weight:900;
}
#sublink{
	padding:7px 0;
	text-align: left;
	font-size:14px;
}

#sub-img{
	max-width:1300px;
	height:auto;
	margin:0 auto;
}
#sub-img img{
	width:100%;
	height:auto;
	border-radius:20px;
}


/*============ 商品 ============*/

#sub-text{
	max-width:1000px;
	padding:50px;
	margin:0 auto;
	font-size:18px;
	line-height: 180%;
}

#plan{
	margin: 50px auto 80px;
}
.midashi-01{
	font-size:clamp(1.25rem, 0.841rem + 2.05vw, 2.375rem);
	text-align: center;
	padding:20px;
	color: #009900;
    font-weight: 800;
}
.midashi-c{
	max-width:1100px;
	margin:50px auto 10px;
	color:#1d2088;
	font-size:clamp(1rem, 0.727rem + 1.36vw, 1.75rem);
	padding:7px 20px;
    font-weight: 600;
	border-bottom:10px solid #1d2088;
}

.flex-03{
	max-width:1100px;
	display:flex;
	flex-wrap:wrap;
	margin:0 auto 30px;
	padding-bottom:30px;
}
.flex-03-box{
	width:31%;
	margin:1%;
	box-shadow: 1px 1px 10px -5px #273054;
	border-radius:10px;
	background: #FFFACD;
}
.flex-03-box img{
	width:100%;
	height:auto;
	border-radius:10px 10px 0 0;
}

.flex-03-box p{
	padding:15px;
	font-size: 17px;
    text-align: center;
    font-weight: 600;
	border-radius:0 0 10px 10px;
}
#merit{
	padding:50px 10px;
	background-color:#FFFACD;
	margin-bottom:50px;
}

#merit-flex{
	display:flex;
	flex-wrap:wrap;
	margin:0 auto 80px;
}
.merit-box{
	width:98%;
	margin:1%;
	display:flex;
	flex-wrap:wrap;
	background-color: #009900;
	border-radius: 10px;
	border:5px solid #009900;
}
.merit-box h3{
	width:80%;
	background-color: #fff;
	padding:10px 20px;
	color: #009900;
	font-size:clamp(0.938rem, 0.733rem + 1.02vw, 1.5rem);
	font-weight:700;
}

.merit-box h3 span{
	display:block;
	font-size:clamp(0.938rem, 0.869rem + 0.34vw, 1.125rem);
	color:#000;
	font-weight:500;
}

.merit-box .merit-box:hover{
	transform:translate(0, -7px);
}
.merit-box figure{
	margin-bottom:0;
	width:20%;
	padding:10px;
	text-align:center;
}
.merit-box figure img{
	width:80px;
	height:80px;
	transition:box-shadow 0.3s, transform 0.3s;
}


.midashi-02{
	font-size:clamp(18px, 4vw, 24px);
	text-align: left;
	padding: 0 10px 0 70px;
	background: #372B2B;
	color:#fff;
	position: relative;
	border-radius: 5px;
}
.midashi-02 img{
	width:70px;
	height:70px;
	position: absolute;
	top:-10px;
	left:-10px;
}
.m-box-img2{
	display:flex;
	flex-wrap:wrap;
}
.m-box-img2 .m-box-img{
	width:50%;
}
.m-box-img img{
	width:100%;
	height:auto;
}
.m-box p{
	padding:20px 50px 80px;
}

.plan-hyou{
	max-width:1100px;
	margin:30px auto;
	text-align:center;
}
.blue{background-color:#252424;color:#fff;}
.gray{background-color:#f2f2f2;}

.plan-flex-s{
	max-width:1100px;
	margin: 0 auto 80px;
	display: flex;
	flex-wrap: wrap;
}
.plan-box2{
	width:48%;
	margin:20px 1%;
}
.plan-box2 p{
	padding:0 10px;
}

/**************************************************************
 商品ページ
**************************************************************/

.dan-flex{
	display:flex;
	flex-wrap:wrap;
	margin: 0 auto 0px;
	justify-content: center;
	padding-top: 135px;
  　margin-top: -135px;
}
.dan-flex2{
	display:flex;
	flex-wrap:wrap;
	margin: 0 auto 2vw;
	justify-content: center;
	padding-top: 135px;
	margin-top: -135px;
}
.flex-re{flex-direction: row-reverse;}

.dan-img{
	width: 50%;
	z-index: 1;
	margin-bottom: 50px;
}
.dan-img2{
	width: 45%;
	z-index: 1;
	margin-bottom: 50px;
}
.dan-img img, .dan-img2 img{
	width:100%;
	height:auto;

}
.dan-text{
	width: 35%;
	height: auto;
	z-index: 2;
	background-color: #fff;
	font-size:16px;
	padding: 50px 4% 30px;
	position: relative;
	text-align:center;
}
.m-l-50{margin-left:-50px;}
.m-r-50{margin-right:-50px;}



.dan-text h3{
	display: inline-block;
	font-size:clamp(18px, 2vw, 26px);
	padding-bottom:7px;
	margin-bottom:30px;
	font-weight:700;
	color:#009900;
}
.dan-text2{
	width: 35%;
	height: auto;
	z-index: 2;
	font-size:16px;
	padding: 20px 2% 20px;
	position: relative;
	text-align:center;
}
.dan-text2 h3{
	display: inline-block;
	font-size:clamp(1.5rem, 0.773rem + 3.64vw, 3.5rem);
	padding-bottom:7px;
	font-weight:700;
	color: #009900;
}


.dan-text .no, .dan-text2 .no{
	position:absolute;
	top:-40px;
	left:50px;
}
.dan-text h3 .line{
	color:#FFBB00;
	/*background: linear-gradient(transparent 50%, rgba(255, 252, 107, .69) 50%);*/
}
.dan-text p{
	text-align:left;
}
.dan-text2 p {
	text-align:left;
	margin-bottom:20px;
}
.dan-text2 p img{
	width:100%;
	height:auto;
}
.dan-text p span, .dan-text2 p span {
	color:#009900;
}
.dan-plus img{
	position:absolute;
	width:110%;
	bottom:-100px;
	left:0px;
	z-index: 3;
}
/*****クリニック*************/
.midashi-c{
	max-width:1100px;
	margin:50px auto 30px;
	color:#309546;
	font-size:clamp(1rem, 0.727rem + 1.36vw, 1.75rem);
	padding:7px 20px;
    font-weight: 600;
	border-bottom:10px solid #309546;
}
.flex-2 {
max-width:1100px;
margin:0 auto;
display:flex;
flex-wrap:wrap;
}
.flex-2 .text{
width:50%;
padding:20px 20px 20px 0;
font-size:18px;
}
.flex-2 .text img{
width:100%;
height:auto;}

.flex-2 ol{
  width:50%;
  position: relative;
  margin: 0;
  padding: 0 20px 0 60px;
  list-style: none;
  font-weight: bold;
}

.flex-2 ol li{
  padding: 0;
  line-height: 1.5;
	font-size:22px;
	line-height:200%;
}
.flex-2 ol{
  counter-reset: li;
}

.flex-2 ol li:before {
  font-weight: bold;
  counter-increment: li;
  content: counter(li) "";
  color: #fff;
  font-size: 24px;
  border-radius: 100%;
  box-sizing: border-box;
  font-weight: bold;
  background: #ffc33c;
  padding: 0 10px;
margin-right:10px;
}
.zu{margin:0 auto;max-width:800px;}
.zu2{margin:0 auto;width:50%;}
.zu3{margin:10px auto;max-width:1200px;}
.zu img, .zu2 img, .zu3 img{width:100%;height:auto;}
.flex-2 .text h4{
font-weight:bold;
font-size:20px;
padding:20px 0 10px;
}
.font-s{max-width:1100px;font-size:18px;margin:0 auto;}
.m-t100{margin-top:150px;}

.clinic h3{
margin:0 auto 50px;
text-align:center;
font-size: clamp(1.5rem, 0.773rem + 3.64vw, 3.5rem);
padding-bottom: 7px;
font-weight: 700;
color: #1164b1;
}
.clinic-bg{background-color: #edf6ff;padding:100px 0 50px;margin:100px auto;}
#step{
max-width:1000px;
margin:0 auto;
counter-reset: number 0;           /* number のカウンタを 0 にセット */
}

#step li {
position: relative;
padding: 20px 20px;
border:3px solid #309546;
border-radius:20px;
margin: 0 10px 30px; 
font-size:20px;	
border-left: solid 80px #309546;
}
#step li:before {
counter-increment: number 1;      /* number カウンタの増加数をセット */
content: counter(number) " ";      /* 表示形式を指定 */
position: absolute;
padding: 0px;
color: white;
font-size:30px;
font-weight: 900;
left: -50px;
top: 50%;
  -webkit-transform: translateY(-50%);
transform: translateY(-50%);
}

#step li:after {
  position: absolute;
  content: '';
  top: 100%;
  left: 45%;
  border: 20px solid transparent;
  border-top: 20px solid #309546;
  width: 0;
  height: 0;
}

#step li:last-child:after {
    content : none ;
}
#step li h4{color:#309546;font-weight:bold;}
.w1100{max-width:1100px;margin:0 auto;}
.w1100 img{width:100%;height:auto;}


/**************************************************************
ABOUT
**************************************************************/


#about-point{
	max-width:1100px;
	margin:50px auto 80px;
	display:flex;
	flex-wrap:wrap;
	justify-content: space-around;
}
.about-box{
	width:45%;
	margin:20px 2%;
	padding:20px;
	text-align: center;
	box-shadow: 5px 7px 7px rgba(0,0,0,0.10); 
	border: 1px solid #f2f2f2;
	border-radius: 10px;
	background-color: #FFFCE8;
}
.about-box .title{
	display:flex;
	flex-wrap:wrap;
}
.about-box .title .point{
	width:20%;
}
.about-box .title .point img{
	width:100%;
}
.about-box .title h3{
	width:80%;
	align-self:center;
	font-size:20px;
	font-weight:600;
	padding-left:10px;
	text-align: left;
}
.about-img img{
	width:100%;	
}
.about-box p{
	text-align: left;
	padding-top:10px;
}
/**************************************************************
company
**************************************************************/
#company{
	max-width:1100px;
	margin:50px auto 80px;
}

.company-flex{
	display:flex;
	flex-wrap:wrap;
	margin:0 auto 80px;
}
.company-img{
	width:31%;
	margin:2%;
}
.company-img img{
	width:100%;
	height:auto;
}
.company-text{
	width:65%;
	padding:20px;
}
.company-text p{
	padding-bottom:20px;
}
.company-text .name{
	text-align: right;
	font-size:24px;
	/*font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";*/
}
#company dl{
	max-width:1000px;
	display:flex;
	flex-wrap:wrap;
	margin: 30px auto 80px;
}
#company dt{
	width:30%;
	font-weight:600;
	padding:15px 10px 15px 20px;
	border-top:2px solid #009900;
}
#company dd{
	width:70%;
	padding:15px 10px 15px 20px;
	border-top:2px solid #ccc;
}
#company iframe{
	width:100%;
	height:400px;
}

#flow-zu{
	margin:50px 0;
	display: flex;
	flex-direction: column;
	align-content: center;
}

#flow-zu .zu, #flow-zu .zu2{
	width:900px;
	margin:0 auto 30px;
	background-color: #f2f2f2;
	border-radius: 10px;
	display: flex;
	position: relative;
}
#flow-zu .zu-l{
	width:40%;
	height: auto;
	background-color: #009900;
	color:#fff;
	font-size:22px;
	padding:20px 10px;
	align-content: center;
	border-radius: 10px;
	text-align: center;
}

#flow-zu .zu-r{
	width:60%;
	align-content: center;
	padding:20px;
}
#flow-zu .zu::before{
    content: '';
    position: absolute;
    top: 100%;
    left: 20%;
    transform: translateX(-50%);
    border-top: 20px solid #009900; 
    border-right: 20px solid transparent;
    border-left: 20px solid transparent;
}
#flow-zu .zu-last::before{border:0;}
/**************************************************************
木造建築の魅力
**************************************************************/
#charm{
	margin: 50px auto 80px;
}
#charm table{
	max-width:1100px;
	box-sizing: border-box;
	font-size:20px;
	margin: 0 auto 80px;
}
#charm .tabletop{
	background-color: #FFFCE8;
}
#charm table th{
	width:25%;
	background-color:#009900;
	color:#fff;	
}
#charm table .ww{background-color:#fff; }
#charm table td{
	width:25%;
	padding:15px 0;
}
.red{color:red;}

#charm .c-box{
	max-width:1100px;
	padding-bottom:80px;
	margin:0 auto;
}
#charm .c-midashi{
	max-width:1100px;
	font-size:clamp(16px, 4vw, 24px);
	padding: 15px 0;
	background: #009900;
	color:#fff;
	position: relative;
	border-radius: 5px;
	text-align: center;
	margin:0 auto;
}
#charm .c-box-img{
	display:flex;
	flex-wrap:wrap;
	padding:20px 0;
}

#charm .c-box-img p{
	width:50%;

}
#charm .c-box-img p img{
	width:100%;
	height:auto;
}
#charm .c-box p{
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.m-charm{
	margin-bottom:200px;
}

.charmtext{
	background-color: #fff;
}


/**************************************************************
施工事例
**************************************************************/
#works-s{
	max-width:1100px;
	margin:50px auto 80px;
	display: flex;
	flex-wrap:wrap;
}
#works-s .works-box{
	width:calc( 33% - 20px );
	margin:0 10px 20px 10px;
	box-shadow: 5px 7px 7px rgba(0,0,0,0.10);
	transition:box-shadow 0.3s, transform 0.3s;
}
#works-s .works-box img{
	width:100%;
	height:auto;
}
#works-s .works-box:hover{
transform:translate(0, -7px);
}

#works-s .works-box p{
	text-align: center;
	padding-bottom:10px;
}

/******施工事例シングルページ**********/

#works-s-flex {
    width: 100%;
    max-width: 1100px;
	margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.works-s-img {
	width:60%;
}
.works-s-img img{
	width:100%;
	height:auto;
	padding-bottom:10px;
}
.works-s-text {
	width:40%;
	padding-left:30px;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

.works-s-text h2{
	font-size:20px;
	font-weight:600;
	padding-bottom:10px;
	margin-bottom:30px;
	border-bottom:solid 2px #009900;
	color:#009900;
}

/**************************************************************
イベント情報
**************************************************************/

.event-waku{
	max-width:1100px;
	margin:0 auto;
	padding:25px 10px;
	display:flex;
	flex-wrap:wrap;
	border-bottom:dotted 2px #00cc00;
}
.event-text{
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	padding:10px 0 30px;
	border-top:solid 1px #aaa;
}

/**************************************************************
土地情報
**************************************************************/
#land{
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	max-width:1100px;
	margin:80px auto;
}
#land .dai{
	background-color: #f2f2f2;
	text-align: center;
}

.land-flex{
	width:100%;
	display:flex;
	flex-wrap:wrap;
	border-bottom:solid #555 1px;
}
.land-flex .basho, .land-flex .youto, .land-flex .tsubo{
	width:15%;
	padding:7px 10px;
	margin-top:7px;
	border-right:1px solid #555;
} 
.land-flex .info{
	width:55%;
	padding:10px;
	margin-top:7px;
}

.readmore a:link, .readmore a:visited {
	width:300px;
	margin:50px auto 0;
	padding:10px 0;
	box-sizing:border-box;
	position:relative;
	font-size:16px;
	display:block;
	color:#fff;
	background-color:#009900;
	text-align:center;
	transition: 0.5s;
	}

.readmore a:hover{
	color:#fff;
	box-sizing:border-box;
	background-color: #665d56;
}

/**************************************************************
建築中の現場
**************************************************************/

.genba-waku{
	max-width:1100px;
	margin:0 auto;
	padding:25px 0;
	display:flex;
	flex-wrap:wrap;
	border-bottom:dotted 2px #14af14;
}
.genba-text{
	padding:10px 0 30px;
}

.genba-img{
	width:calc( 50% - 20px );
	margin:10px;
}
.genba-img img{
	width:100%;
	height:auto;
	border-radius:10px;
}
.genba-info{
	width:50%;
	padding:0 5%;
}
.genba-info .midashi{
	text-align: center;
	width:100%;
	margin: 0 auto 20px;
	padding:10px;
	font-size:clamp(18px, 4vw, 24px);
	border:solid 2px #866162;
	border-radius: 10px;
}
/**************************************************************
ブログ
**************************************************************/
.blog-btn {
    display:flex;
	flex-wrap:wrap;
	max-width:800px;
	margin:50px auto;
}
.blog-btn_item{
	width:33.3%;
}
.blog-btn_item a{
	display: block;
	background-color: #009900;
	color:#fff;
	padding:10px;
	text-align: center;
	font-size:18px;
	border:solid #fff 1px;
	transition: 0.5s;
}
.blog-btn_item a:hover{
	background-color: #00cc00;
	
}
/*.blog-btn_item:first-child a{
	background-color: #14af14;
	border-top:solid 1px #fff;
}*/

.blog-waku{
	max-width:1100px;
	margin:0 auto;
	padding: 0;
	display:flex;
	flex-wrap:wrap;
	border-bottom:dotted 2px #009900;
}
.blog-text{
	padding:10px;
}

.blog-img{
	width:calc( 30% - 20px );
	margin:10px;
	text-align: center;
}
.blog-img img{
	width:100%;
	max-width:310px;
	height:auto;
	max-height:200px;
	border-radius:10px;
}
.blog-info{
	width:70%;
	padding:0 20px 10px;
}
.blog-info h2{
	text-align: left;
	width:100%;
	margin: 0 auto;
	padding:10px 7px;
	font-size:20px;
	border-bottom:solid 2px #009900;
	color:#009900;
}
.b-day{
	font-size:14px;
	text-align:right;
	color:#009900;
	padding-right:10px;
}
/******ブログシングル******************/

#blog-s{
	max-width:1000px;
	margin:0 auto 80px;
}
#blog-midashi{
	font-size:clamp(16px, 4vw, 24px);
	padding:10px;
	text-align: center;
	border-bottom:solid 3px #009900;
	color:#009900;
}

.blog-cont{
	text-align:left;
	line-height:190%;
	padding:20px 0;
}

.blog-cont li + li {
  border-left: none!important;
}

.blog-cont li{
	margin-left:35px;
	font-size:14px;
	line-height:170%;
	margin-bottom:13px;
}

.blog-cont ol{
	margin-top:25px;
	margin-bottom:25px;
}


.blog-cont p{
	margin-left:0px;
}

.blog-cont .alignright{
	padding-left:15px!important;
	background-color:#fff!important;
	float:right;
}

.blog-cont .alignleft{
	padding-right:15px!important;
	background-color:#fff!important;
	float:left;
}

.blog-cont .aligncenter{
    display: block;
    margin: 0 auto 20px;
    text-align: center;
}

.blog-cont h1{
	font-size:30px;
	color:#000000;
	padding:10px 5px;
	margin-bottom:15px;
	margin-top:30px;
	font-weight: 700;
}

.blog-cont h2{
	font-size:20px;
	color:#14af14;
	padding:10px 5px;
	border-bottom:solid 2px #14af14;
	margin-bottom:15px;
	margin-top:30px;
	font-weight: 600;
}

.blog-cont h3{
	font-size:16px;
	background-color:#fff3b1;
	padding:7px;
	margin-top:30px;
	margin-bottom:15px;
	font-weight: 600;

}
.blog-cont h4{
	font-size:15px;
	color:#000;
	padding:7px 3px;
	border-bottom:solid 1px #000;
	margin-bottom:15px;
	margin-top:30px;
	font-weight: 600;
}

.blog-cont h5{
	font-size:12px;
	color:#000;
	padding:5px;
	background-color:#ececec;
	margin-bottom:15px;
	margin-top:30px;
	font-weight: 600;
}

.blog-cont p{margin-bottom:15px;}

.blog-cont img{padding-bottom:15px;
padding-top:10px;
max-width:100%;
height:auto;}

.blog-cont iframe{max-width:100%;}

.blog-cont hr{
	margin-bottom:15px;
		margin-top:15px;
	background-color: #fff;
	border-top: 2px dashed #f6be46;
}
/**************************************************************
よくある質問
**************************************************************/
#faq{
	max-width:1000px;
	margin:0 auto 80px;
}
.faq-line{
	padding: 10px;
	border-bottom: dotted 1px #ccc;
}

.faq-line .tt{
	font-size:clamp(16px, 4vw, 20px);
	border-bottom: solid 1px #009900;
	padding: 10px 0px;
	margin-bottom: 20px;
	font-weight:600;
	color:#009900;
}
.faq-line p{
	padding:0 50px;
}
/**************************************************************
SEOカスタム
**************************************************************/
#seo{
	max-width:1000px;
	margin:50px auto 80px;
}

.seo-midashi {
    text-align: left;
    padding: 15px 0;
    line-height: 180%;
    color: #009900;
    font-weight: 600;
    border-bottom: solid 3px #009900;
    font-size: clamp(18px, 4vw, 30px);
    margin-bottom: 30px;
    text-align: center;
}

.seo-midashi2 {
    font-size: clamp(16px, 3vw, 20px);
    font-weight: 600;
    color: #fff;
    padding: 10px;
    border-bottom: solid 2px #009900;
    margin-bottom: 15px;
    background-color: #009900;
    margin-top: 25px;
	border-radius: 5px;
}
.seo-mainimage{
	margin-bottom: 20px;
}
.seo-mainimage img{
	width: 100%;
	height: auto;
}

.seo-text{
	display:flex;
	flex-wrap: wrap;
	margin-bottom: 30px;
}
.seo-text-text{
	flex:1;
	padding: 0 10px 10px;
}
.seo-text-img{
    width: 35%;
	padding:0 10px;
}

.seo-text-img img{
	width: 100%;
	height: auto;
}

.midashi-d {
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 600;
    color: #009900;
    padding: 10px;
    border-bottom: solid 2px #009900;
    margin-bottom: 15px;
    margin-top: 25px;
	text-align: center;
}

/**************************************************************
apply
**************************************************************/

.apply-mes{
	max-width:800px;
	margin:50px auto 100px;
	padding:10px;
	text-align: center;
}

#apply{
	max-width: 1000px;
	margin: 50px auto;
}

.apply-line{
	overflow: hidden;
	padding: 15px;
	border-bottom: dashed 1px #ccc;
	display:flex;
	flex-wrap: wrap;
}

.apply-line-l{
	width: 35%;
	font-weight:bold;
	padding:10px;
}

.apply-line-r{
	width:65%;
	padding:10px 20px;}

.apply-line-r  .wpcf7-list-item{
margin: 5px 0 5px 30px;
}
.wpcf7-list-item input {
	width: 24px;
	height: 24px;
	position: absolute;
	z-index: 10;
	left:0px;
}

.hissu{
	color: #FF0004;
	font-size: 10px;
}
/* テキストフォームの設定 */
.wpcf7-text{
padding:10px;
width: 430px;
color: #636063;
background-color:#F9F9F9;
border:solid 1px #CCCCCC;
}

/* テキストフォームのフォーカス時の設定 */
.wpcf7-text:focus{
background-color:#FFFFCC;
}

/* テキストエリアの設定 */
.wpcf7-textarea{
padding:10px;
width: 600px;
height: 100px;
color: #636063;
background-color:#F9F9F9;
border:solid 1px #CCCCCC;
}

/* テキストエリアのフォーカス時の設定 */
.wpcf7-textarea:focus{
background-color:#FFFFCC;
}

/* 送信ボタンの設定 */
.wpcf7-form-control.wpcf7-submit{
display: block;
width: 200px;
border: none;
padding:10px;
background-color:#444444;
color:#fff;
}

/* 送信ボタンのフォーカス時の設定 */
.wpcf7-form-control.wpcf7-submit:hover{
filter: alpha(opacity=80);
opacity: .6;
-moz-transition: all 0.7s ease;
-webkit-transition: all 0.7s ease;
}

/* リストの縦並び（チェックボックス・ラジオ） */
span.wpcf7-list-item {
display: block!important;
}

/* セレクト */
select{
padding: 10px;
width: 260px;
color: #636063;
background-color:#F9F9F9;
border:solid 1px #CCCCCC;
}

.clearfix:after{
content:".";
display:block;
height:0;
clear:both;
visibility:hidden;
}

.clearfix{
overflow:hidden;
}

.halfsize{
	width:200px;
	margin-top:5px;
	margin-right:7px;
}

.apply-check{
	margin:10px auto;
	padding:10px;
	font-size:16px;
	line-height:24px;
	text-align: center;
	display:block!important;
}

.apply-check .wpcf7-list-item input{
	left:0;
	right:0;
	margin: auto;
}
.apply-check span.wpcf7-list-item {
	text-align:center;
}

/*reCAPTCHA削除*/
.grecaptcha-badge { visibility: hidden; }

.recaptcha{
	margin:30px auto;
	font-size:14px;
	text-align:center;
	padding:10px;
}

/**************************************************************
カタログダウンロード
**************************************************************/
#panf-img-set {
	margin: -15px auto 60px;
	display: flex;
}
#panf-img-set * {
	box-sizing: border-box;
}
#panf-img-set .wpcf7-form-control {
	width: 1000px;
	display: flex;
	justify-content:center;
	flex-wrap: wrap;
}
#panf-img-set .wpcf7-form-control-wrap.checkbox-content .wpcf7-list-item {
	width: 24% !important;
	display: inline-block !important;
	margin-left: 0;
	margin-top: 20px;

}
#panf-img-set .wpcf7-list-item label {
	display: block;
	width: 100%;
	height: 280px;
	cursor: pointer;
	font-size:20px;
}
#panf-img-set .wpcf7-list-item label::before {
	display: block;
	content: "";
	background: url(../../../image/panf/01.webp) no-repeat;
	background-size: auto 172px;
	background-position: 50% 75%;
	width: 100%;
	height: 240px;
}
#panf-img-set .wpcf7-list-item:nth-of-type(2) label::before {
	background: url(../../../image/panf/02.webp) no-repeat;
	background-size: auto 172px;
	background-position: 50% 75%;
}
#panf-img-set .wpcf7-list-item:nth-of-type(3) label::before {
	background: url(../../../image/panf/03.webp) no-repeat;
	background-size: auto 172px;
	background-position: 50% 75%;
}
#panf-img-set .wpcf7-list-item:nth-of-type(4) label::before {
	background: url(../../../image/panf/04.webp) no-repeat;
	background-size: auto 172px;
	background-position: 50% 75%;
}
#panf-img-set .wpcf7-list-item:nth-of-type(5) label::before {
	background: url(../../../image/panf/05.webp) no-repeat;
	background-size: auto 172px;
	background-position: 50% 75%;
}
#panf-img-set .wpcf7-list-item:nth-of-type(6) label::before {
	background: url(../../../image/panf/06.webp) no-repeat;
	background-size: auto 172px;
	background-position: 50% 75%;
}
#panf-img-set .wpcf7-list-item:nth-of-type(7) label::before {
	background: url(../../../image/panf/07.webp) no-repeat;
	background-size: auto 172px;
	background-position: 50% 75%;
}
#panf-img-set .wpcf7-list-item .wpcf7-list-item-label {
	display: inline-block;
	text-align: center;
	width: 250px !important;
	padding-left: 35px;
}
#panf-img-set .wpcf7-list-item {
	cursor: pointer;
	position: relative;
}
#panf-img-set .wpcf7-list-item input {
	position: absolute;
	z-index: 10;
	width: 24px;
	height: 24px;
	bottom: 12px;
	margin-right: 8px;
}
#panf-img-set .wpcf7-list-item .wpcf7-list-item-label {
	font-size: 13px;
	text-align: left;
	font-weight: bold;
}
#panf-img-set .wpcf7-form-control-wrap.checkbox-content .wpcf7-list-item {
	position: relative;
}

