/*
Theme Name:ヒラノ工務店
Theme URI:
Version:1.0.0
Description:ヒラノ工務店
Author:ARCKLY
Author URI: http://arckly.com/
*/

@charset "UTF-8";
/* CSS Document */


/* Reset
------------------------------------------------------------*/
*,::before,::after{box-sizing:border-box;border-style:solid;border-width:0;min-width:0}html{line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{margin:0}main{display:block}p,table,blockquote,address,pre,iframe,form,figure,dl{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}ul,ol{margin:0;padding:0;list-style:none}dt{font-weight:700}dd{margin-left:0}hr{box-sizing:content-box;height:0;overflow:visible;border-top-width:1px;margin:0;clear:both;color:inherit}pre{font-family:monospace,monospace;font-size:inherit}address{font-style:inherit}a{background-color:transparent;text-decoration:none;color:inherit}abbr[title]{text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:inherit}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}svg,img,embed,object,iframe{vertical-align:bottom}button,input,optgroup,select,textarea{-webkit-appearance:none;appearance:none;vertical-align:middle;color:inherit;font:inherit;background:transparent;padding:0;margin:0;border-radius:0;text-align:inherit;text-transform:inherit}button,[type="button"],[type="reset"],[type="submit"]{cursor:pointer}button:disabled,[type="button"]:disabled,[type="reset"]:disabled,[type="submit"]:disabled{cursor:default}:-moz-focusring{outline:auto}select:disabled{opacity:inherit}option{padding:0}fieldset{margin:0;padding:0;min-width:0}legend{padding:0}progress{vertical-align:baseline}textarea{overflow:auto}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type="number"]{-moz-appearance:textfield}label[for]{cursor:pointer}details{display:block}summary{display:list-item}[contenteditable]:focus{outline:auto}table{border-color:inherit;border-collapse:collapse}caption{text-align:left}td,th{vertical-align:top;padding:0}th{vertical-align:top;padding:0;text-align:left;font-weight:normal}

input[type="radio"] {
  position: relative;
  width: 16px;
  height: 16px;
  border: 1px solid #000;
  border-radius: 50%;
  vertical-align: -2px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

input[type="radio"]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #088FDB;
  content: '';
}
input[type="checkbox"] {
  position: relative;
  width: 16px;
  height: 16px;
  border: 1px solid #000;
  vertical-align: -1px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

input[type="checkbox"]:checked:before {
  position: absolute;
  top: -5px;
  left: 4px;
  transform: rotate(50deg);
  width: 10px;
  height: 16px;
  border-right: 4px solid #088FDB;
  border-bottom: 2px solid #088FDB;
  content: '';
}

a:hover.link img{
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	display: inline-block;
	transition:all 0.5s;
}

img{
	max-width: 100%;
	height: auto;
	width /***/:auto;
	vertical-align:middle;
	image-rendering: -webkit-optimize-contrast;
}


/*===============================================
●フォント読み込み
===============================================*/
.font_mincho{
	font-family:"游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
}
.tsukuardgothic_st{
font-family: fot-tsukuardgothic-std, sans-serif;
font-weight: 400;
font-style: normal;
}
.tsukuardgothic_b{
font-family: fot-tsukuardgothic-std, sans-serif;
font-weight: 700;
font-style: normal;
}


/* 共通CSS
------------------------------------------------------------*/
body{
	font-family: "メイリオ","游ゴシック体", Yu Gothic, YuGothic, "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic ProN, Hiragino Sans, "ヒラギノ角ゴシック",  sans-serif;
	color: #262624;
	font-size: 18px;
	background-color:#fff;
	line-height: 1.7em;
	font-weight: 400;
}

body a{
	color:#262624;
	text-decoration:underline;
} 

body a:hover{
	opacity: 0.7;
	text-decoration:underline;
	transition:all 0.5s;
}


.float_l{
	float:left;
}

.float_r{
	float:right;
}

.clear{
	clear:both;
}

.red{
	color:#F00;
}

.blue{
	color:#00F;
}

.bold{
	font-family: "notoB";
	font-weight: 700;
}

.pagination {
clear:both;
padding:20px 0;
position:relative;
font-size:11px;
line-height:13px;
}
 
.pagination span, .pagination a {
display:block;
float:left;
margin: 2px 2px 2px 0;
padding:6px 9px 5px 9px;
text-decoration:none;
width:auto;
color:#1b1b1b;
background: #F8AC71;
}
 
.pagination a:hover{
	color:#fff;
	background-color:#AA6C32;
}
 
.pagination .current{
	padding:6px 9px 5px 9px;
	background-color:#AA6C32;
	color:#FFF;
}


/*===============================================
●フォーム系
===============================================*/
/*===============================================
●iOS submitリセット
===============================================*/

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


/*フォーム系*/
.contact_btn{
	text-align:center;
}

.contact_btn input{
	padding:20px 50px;
	background-color:#97c557;
	border:none;
	color:#fff;
	text-align:center;
	margin:10px 0;
}
.contact_btn input:hover{
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}

.contact_main{
	margin-bottom:10px;
}


.info_box5 input[type="text"]{
	width:90%;
	background-color: #fff;
	border: 1px solid #111;
}

.info_box5 input[type="text"].form_short{
	width:50px;
	background-color: #fff;
	border: 1px solid #111;
}
.info_box5 input[type="email"]{
	width:90%;
	background-color: #fff;
	border: 1px solid #111;
}


.info_box5 input[type="tel"]{
	width:90%;
	background-color: #fff;
	border: 1px solid #111;
}

.info_box5 input[type="url"]{
	width:90%;
	background-color: #fff;
	border: 1px solid #111;
}

.info_box5 textarea{
	width:90%;
	background-color: #fff;
	border: 1px solid #111;
}

.zip_box input[type="text"]{
	width:100px;
	background-color: #fff;
	border: 1px solid #111;
}


.hissu{
	background-color:#B20000;
	color:#FFF;
	font-size:12px;
	padding:2px 5px;
	margin-right:20px;
}

.nini{
	background-color:#888888;
	color:#FFF;
	font-size:12px;
	padding:2px 5px;
	margin-right:20px;
}

.info_chui{
	color:#B20000;
	display:block;
}

/*===============================================
●ページャー
===============================================*/

.pagination {
clear:both;
padding:20px 0;
position:relative;
font-size:11px;
line-height:13px;
display: flex;
}
 
.pagination span, .pagination a {
display:block;
float:left;
margin: 2px 2px 2px 0;
padding:6px 9px 5px 9px;
text-decoration:none;
width:auto;
color:#fff;
background: #db683a;
}
 
.pagination a:hover{
color:#fff;
}
 
.pagination .current{
	padding:6px 9px 5px 9px;
	background-color:#97c557;
	color:#fff;
}

/*===============================================
●マージンボトム設定
===============================================*/

.mb0{
	margin-bottom:0px!important;
}
.mb5{
	margin-bottom:5px!important;
}
.mb10{
	margin-bottom:10px!important;
}
.mb15{
	margin-bottom:15px!important;
}
.mb20{
	margin-bottom:20px!important;
}
.mb25{
	margin-bottom:25px!important;
}
.mb30{
	margin-bottom:30px!important;
}
.mb35{
	margin-bottom:35px!important;
}
.mb40{
	margin-bottom:40px!important;
}
.mb45{
	margin-bottom:45px!important;
}
.mb50{
	margin-bottom:50px!important;
}
.mb55{
	margin-bottom:55px!important;
}
.mb60{
	margin-bottom:60px!important;
}
.mb65{
	margin-bottom:65px!important;
}
.mb70{
	margin-bottom:70px!important;
}
.mb75{
	margin-bottom:75px!important;
}
.mb80{
	margin-bottom:80px!important;
}
.mb85{
	margin-bottom:85px!important;
}
.mb90{
	margin-bottom:90px!important;
}
.mb95{
	margin-bottom:95px!important;
}
.mb100{
	margin-bottom:100px!important;
}
.mb150{
	margin-bottom:150px!important;
}
.mb200{
	margin-bottom:200px!important;
}


/*===============================================
●Googleマップ
===============================================*/

.ggmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.ggmap iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/*===============================================
●ページトップ
===============================================*/

#PageTopBtn{
  position: fixed;
  right: 0px;
  bottom: 30px;
  z-index:100;
	width: 90px;
	height: 90px;
	cursor: pointer;
}
#PageTopBtn:hover{
  bottom: 40px;
	transition:all 0.5s;
}

/*===============================================
●フォントサイズ・カラー設定
===============================================*/
.font_10px{
	font-size: 10px;
	line-height:1.7em;
}
.font_11px{
	font-size: 11px;
	line-height:1.7em;
}
.font_12px{
	font-size: 12px;
	line-height:1.7em;
}
.font_13px{
	font-size: 13px;
	line-height:1.7em;
}
.font_14px{
	font-size: 14px;
	line-height:1.7em;
}
.font_15px{
	font-size: 15px;
	line-height:1.7em;
}
.font_16px{
	font-size: 16px;
	line-height:1.7em;
}
.font_17px{
	font-size: 17px;
	line-height:1.7em;
}
.font_18px{
	font-size: 18px;
	line-height:1.7em;
}
.font_20px{
	font-size: 20px;
	line-height:1.7em;
}
.font_22px{
	font-size: 22px;
	line-height:1.7em;
}
.font_24px{
	font-size: 22px;
	line-height:1.7em;
}
.font_26px{
	font-size: 26px;
	line-height:1.7em;
}
.font_27px{
	font-size: 27px;
	line-height:1.7em;
}
.font_28px{
	font-size: 28px;
	line-height:1.7em;
}
.font_33px{
	font-size: 33px;
	line-height:1.7em;
}
.font_34px{
	font-size: 34px;
	line-height:1.7em;
}
.font_30px{
	font-size: 30px;
	line-height: 1.4em;
}
.font_32px{
	font-size: 32px;
	line-height:1.7em;
}
.font_36px{
	font-size: 36px;
	line-height:1.7em;
}
.font_38px{
	font-size: 38px;
	line-height:1.7em;
}
.font_40px{
	font-size: 40px;
	line-height:1.7em;
}
.font_42px{
	font-size: 42px;
	line-height:1.7em;
}
.font_48px{
	font-size: 48px;
	line-height:1.7em;
}
.font_50px{
	font-size: 50px;
	line-height:1.7em;
}
.font_52px{
	font-size: 52px;
	line-height:1.7em;
}
.font_56px{
	font-size: 56px;
	line-height:1.7em;
}
.font_64px{
	font-size: 64px;
	line-height:1.7em;
}
.color_wh{
	color: #FFF;
}
.color_k{
	color: #000;
}
.color_yellow{
	color: #FFC822;
}
.color_brown{
	color: #654a11;
}
.color_red{
	color: #E82B32;
}
.color_green{
	color: #78ac30;
}

/*===============================================
●ボタン
===============================================*/

a.bt01{
	text-decoration: none;
	display: block;
	width: 280px;
	height: 70px;
	line-height: 70px;
	color: #fff;
	background-color: #97c557;
	border-radius: 5px;
	position: relative;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: 700;
	font-style: normal;
	text-align: center;
	vertical-align: middle;
}
a:hover.bt01{
	text-decoration: none;
}
a.bt01::after{
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	right: 20px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
a.bt01_r{
	margin-left: auto;
}
a.bt01_c{
	margin-left: auto;
	margin-right: auto;
}

/*===============================================
●画面の横幅が768px以上
===============================================*/
@media screen and (min-width: 768px){

body{
	line-height:1.7em;
}

.pc_none{
	display:none;
}

.pc_float_l{
	float:left;
}

.pc_float_r{
	float:right;
}

.pc_center{
	text-align:center;
}

.pc_right{
	text-align:right;
}

	.d_flex_pc{
		display: flex;
	}
	.flex_wrap_pc{
		flex-wrap: wrap;
	}
	.j_content_c_pc{
		justify-content: center;
	}
	.j_content_en_pc{
		justify-content: flex-end;
	}
	.j_content_sb_pc{
		justify-content: space-between;
	}
	.a_items_c_pc{
		align-items: center;
	}
	.a_items_en_pc{
		align-items: flex-end;
	}
	.f-direction_re_pc{
		flex-direction: row-reverse;
	}

a.link_disabled_pc{
	pointer-events: none;
}

/*wrap設定
------------------------------------------------------------*/

#wrapper{
/*
	min-width:1200px;
	margin-left:auto;
	margin-right:auto;
*/
}

.wrap{
	max-width:1200px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
	.next_mv img{
		width: 100%;
		height: auto;
	}
	.path{
		text-align: right;
		margin-bottom: 80px;
	}
	.path a{
		text-decoration: none;
	}

/*フッター設定
------------------------------------------------------------*/

	.footer_top{
		padding-top: 100px;
		padding-bottom: 100px;
		gap:50px 30px;
		max-width: 1030px;
	}
	.footer_top a{
		display: block;
		max-width: 480px;
	}
	.footer_bottom{
		padding: 50px 0 30px;
		border-top: 3px solid #664c14;
		background-color: #f8f0de;
	}
	.footer_logo{
		width: 285px;
		margin-left: auto;
		margin-right: auto;
	}
	.footer_tel{
		width: 255px;
		margin-left: auto;
		margin-right: auto;
	}
	.footer_nav{
		max-width: 1000px;
		margin-left: auto;
		margin-right: auto;
	}
	.footer_nav ul{
		display: flex;
		flex-wrap: wrap;
		gap:10px 0px;
	}
	.footer_nav ul li{
		background-image: url("images/ico_sankaku01.png");
		background-size: 11px auto;
		background-repeat: no-repeat;
		padding-left: 20px;
		background-position: left top 9px;
		width: 170px;
	}
	.footer_nav ul li:nth-child(4){
		width: 250px;
	}
	.footer_nav ul li a{
		text-decoration: none;
	}

	.footer_copyright_area{
		padding: 20px 0;
		background-color: #664c14;
	}
	.footer_copyright_wrap{
		text-align: center;
	}
	.footer_copyright_wrap small{
		font-size: 18px;
		font-weight: bold;
		color: #fff;
	}
	
	
	/* ホーム設定
------------------------------------------------------------*/
	.top_mv img{
		width: 100%;
		height: auto;
	}
	.top_area1{
		padding: 100px 0 80px;
		background-color: #f8f0de;
		background-image: url("images/top_img02.png");
		background-size: 1570px auto;
		background-position: center center;
		background-repeat: no-repeat;
	}
	.top_area1_box1{
		max-width: 620px;
		margin-left: auto;
		margin-right: auto;
	}
	.top_area1_box2{
		max-width: 920px;
		margin-left: auto;
		margin-right: auto;
	}
	.top_area1_box3{
		gap:20px;
	}
	.top_area2{
		max-width: 2000px;
		margin-left: auto;
		margin-right: auto;
	}
	.top_area2_l{
		width: 50%;
	}
	.top_area2_r{
		width: 40%;
		box-sizing: border-box;
		padding: 60px;
		background-color: #fdfbf6;
		margin-right: 10%;
	}
	.top_area2_2 .top_area2_r{
		margin-left: 10%;
		margin-right: 0%;
	}
	.top_area2_r_box1{
		background-image: url("images/ico_circle01.png");
		background-size: 15px auto;
		background-repeat: no-repeat;
		background-position: left top 8px;
		padding-left: 25px;
	}
	.top_area3{
		max-width: 1420px;
		margin-left: auto;
		margin-right: auto;
		padding-left: 20px;
		padding-right: 20px;
	}
	.top_h2_1{
		background-image: url("images/top_img06.png");
		background-size: 117px auto;
		background-repeat: no-repeat;
		background-position: center bottom;
		padding-bottom: 20px;
	}
	.top_area3_box1{
		gap:40px 3.5%;
	}
	.top_area3_box1_col{
		display: block;
		text-decoration: none;
		width: 31%;
	}
	:hover.top_area3_box1_col{
		text-decoration: none;
	}
	.top_area3_box1_col_img img{
		width: 100%;
		aspect-ratio: 44 / 33;
		object-fit: cover;
	}
	.top_area4{
		background-image: url("images/top_img07.jpg");
		background-size: cover;
		background-position: center center;
		width: 100%;
		padding: 80px 0;
	}
	.top_area4_inner{
		background-color: rgba(255,255,255,0.80);
		padding: 40px;
	}
	.top_area4_l{
		width: 300px;
	}
	.top_area4_r{
		width: calc(100% - 330px);
		height: 250px;
		overflow-y: scroll;
	}
	.top_area4_r ul li{
		display: flex;
		padding: 20px 40px;
		border-bottom: 1px dashed #664c14;
	}
	.top_area4_r_day{
		width: 150px;
	}
	.top_area4_r_title{
		width: calc(100% - 150px);
	}
	.top_area4_r_title a{
		text-decoration: none;
	}




/* 問い合わせ 設定
------------------------------------------------------------*/
	
.info_box5{
	display:flex;
	justify-content: space-between;
	margin-bottom:10px;
}

.info_box5 div:nth-child(1){
	width:30%;
}
.info_box5 div:nth-child(2){
	width:70%;
}
/* 下層 設定
------------------------------------------------------------*/

	.greeting_box1_l{
		width: 57%;
	}
	.greeting_box1_r{
		width: 36.6%;
	}
	.flow_box1{
		background-color: #fcf7ed;
		border-radius: 10px;
		padding: 40px;
	}
	.flow_box1_l{
		width: 30%;
	}
	.flow_box1_r{
		width: 65%;
	}
	.flow_box1_r_title{
		border-bottom: 1px dashed #664c14;
		padding-bottom: 10px;
	}
	.flow_box1_r_num{
		background-color: #d88462;
		width: 40px;
		height: 40px;
		line-height: 40px;
		text-align: center;
		border-radius: 50%;
		margin-right: 10px;
	}
	.flow_box1_col1{
		gap:20px;
	}
	a.flow_box1_col1_tel{
		text-decoration: none;
	}
	a:hover.flow_box1_col1_tel{
		text-decoration: none;
	}
	.flow_arrow{
		width: 140px;
		margin-left: auto;
		margin-right: auto;
	}
	.strength_h2_1{
		background-image: url("images/ico_circle01.png");
		background-size: 15px auto;
		background-repeat: no-repeat;
		background-position: left top 15px;
		padding-left: 25px;
		border-bottom: 1px dashed #664c14;
		padding-bottom: 10px;
	}
	ul.service_ul1 li{
		background-image: url("images/ico_check01.png");
		background-size: 20px auto;
		background-repeat: no-repeat;
		background-position: left top 5px;
		padding-left: 30px;
		min-height: 25px;
	}
	a.works_bt01{
		max-width: 280px;
		width: 100%;
	}
	.news_img01 img{
		width: 100%;
		aspect-ratio: 44 / 33;
		object-fit: cover;
	}
	table.access_table1{
		width: 100%;
		border-bottom: 1px solid #47350e;
		border-left: 1px solid #47350e;
	}
	table.access_table1 th{
		width: 30%;
		border-top: 1px solid #47350e;
		border-right: 1px solid #47350e;
		font-weight: bold;
		padding: 20px 5%;
		box-sizing: border-box;
		background-color: #fdf9f1;
	}
	table.access_table1 td{
		width: 70%;
		border-top: 1px solid #47350e;
		border-right: 1px solid #47350e;
		font-weight: normal;
		padding: 20px 5%;
		box-sizing: border-box;
	}
	.contact_tel{
		width: 257px;
		margin-left: auto;
		margin-right: auto;
	}
	.conatct_box1{
		padding: 40px;
		background-color: #fcf7ed;
	}

}

/*===============================================
●画面の横幅が1150px以上
===============================================*/
@media screen and (min-width:1150px){
	
/*ヘッダー設定
------------------------------------------------------------*/
	.main_header{
		width: 100%;
		position: absolute;
		top:0;
		left: 0;
		background-color: rgba(255,255,255,0.70);
	}
	.main_header_innner_box1{
		display: flex;
		justify-content:space-between;
		align-items: center;
		padding: 30px 20px 20px;
	}
	.header_l{
		width: 30%;
		padding-top: 5px;
	}
	.header_logo{
		max-width: 298px;
	}
	.header_r{
		display: flex;
		justify-content: flex-end;
		align-items: center;
		gap:0 20px;
		width: 65%;
	}
	.header_tel{
		width: 257px;
	}
	.header_mail{
		width: 200px;
	}
	
	.main_nav{
		width: 100%;
		margin-bottom: 20px;
	}
	#nav_wrap{
		margin: 0 auto;
	}
ul#menu{
	display: flex;
	justify-content:center;
/*	max-width: 874px;*/
	margin: 0 auto;
}

ul#menu li{
	position:relative;
	margin:0 0px;
	text-align: center;
	display: block;
	height: 40px;
	width: 16.6666667%;
	border-left: 1px solid #262624;
}
ul#menu li:last-child{
	border-right: 1px solid #262624;
}
/*
ul#menu li:nth-child(2){
	width: 14.3%;
}
ul#menu li:nth-child(3){
	width: 15.9%;
}
ul#menu li:nth-child(4){
	width: 18.8%;
}
ul#menu li:nth-child(5){
	width: 16.8%;
}
ul#menu li:nth-child(6){
	width: 19.9%;
}
*/
ul#menu li a{
	text-decoration: none;
	box-sizing: border-box;
	height: 50px;
	width: 100%;
	opacity: 1;
	display: block;
	padding-top: 0px;
	font-size: 1.1em;
	letter-spacing: 0.1em;
	font-weight: 700;
	line-height: 1.2em;
	letter-spacing: -0.05em;
}
	ul#menu li a span{
		font-size: 0.7em;
		line-height: 1em;
	}
ul#menu li a:hover{
	opacity: 1;
}
	
ul#menu li a:after{
	 position: absolute;
	 bottom: -10px;
	 left: 0;
	 content: '';
	 width: 100%;
	 height: 3px;
	 background-color:#78ac30;
	 transform: scale(0, 1);
	 transform-origin: center top;
	 transition: transform .3s;
}
ul#menu li a:hover::after
{
 transform: scale(1, 1);
}
ul#menu ul{
	z-index:100;
	display:none;
	position:absolute;
	top:50px;
	left:50%;
	transform: translate(-50%, 0%);
}
	ul#menu ul li{
		height: 40px;
		border: none;
	}
ul#menu ul li a{
	display:block;
	color:#111;
	text-decoration:none;
	padding:0px 5px;
	height:40px;
	line-height:40px;
	border-bottom:1px dashed #564B37;
    opacity: 0.9;
    filter: alpha(opacity=90);
    -ms-filter: "alpha( opacity=90 )";
	background-color:#fff;
	text-align:center;
	width:150px;
 transform-origin: center top;
	transition: transform .3s;
	position: relative;
	font-size: 14px;
	letter-spacing: -0.1em;
}
ul#menu ul li:last-child a{
/*border: none;*/
	}	
ul#menu ul li a::after{
	bottom: -1px;
	}
	
	.humnav{
		display: none;
	}
	
	.bottom_fix_bt{
		display: none;
	}

}

/*===============================================
●画面の横幅が1149pxまで
===============================================*/
@media screen and (max-width:1149px){
	.main_header{
		width: 100%;
		padding-bottom: 20px;
		position: absolute;
		top:0;
		left: 0;
		background-color: rgba(255,255,255,0.70);
	}
	.main_header_innner{
	}
	.header_l{
		max-width: 300px;
		width: 100%;
		padding-top: 5px;
		padding-right: 60px;
		padding-left: 60px;
		box-sizing: border-box;
		text-align: center;
		margin-bottom: 10px;
		margin-right: auto;
		margin-left: auto;
	}
	.header_r{
		display: flex;
		justify-content:center;
		align-items: center;
		flex-wrap: wrap;
		gap:10px 10px;
		width: 100%;
		padding-top: 5px;
		padding-right: 60px;
		padding-left: 60px;
		box-sizing: border-box;
	}
	.header_tel{
		max-width: 257px;
	}
	.header_mail{
		max-width: 200px;
	}

	.main_nav{
		display: none;
	}	
	
	
nav.humnav{
	z-index:1000;
}

#humberger{
	position: fixed;
	top:10px;
	right:10px;
	z-index: 999;
	width:40px;
	height:40px;
	box-sizing:border-box;
	padding:13px 10px 10px;
	cursor:pointer;
	background-color:#97c557;
}
.iconBar{
	height: 2px;
	background: #FFF;
	display: block;
	margin-bottom: 3px;
	-webkit-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
	   -moz-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
		 -o-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
			transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */

	-webkit-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
	   -moz-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
		 -o-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
			transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */
	z-index:1000;
}

dl.accordion_spnav dt.open3 #humberger .iconBar{
	background: #FFF;
	box-shadow:none;
}
dl.accordion_spnav dt.open3 #humberger :nth-child(1){
	transform:translate(0,8px) rotate(45deg);
	-webkit-transform:translate(0,8px) rotate(45deg);
	margin-bottom:8px;
	margin-top:-2px;
}
dl.accordion_spnav dt.open3 #humberger :nth-child(2){
	transform:translate(-20px ,0);
	-webkit-transform:translate(-20px ,0);
	opacity:0;
}
dl.accordion_spnav dt.open3 #humberger :nth-child(3){
	transform:translate(0,-8px) rotate(-45deg);
	-webkit-transform:translate(0,-8px) rotate(-45deg);
}

.accordion_spnav dd{
	display:none;
	color:#FFF;
	position:fixed;
	top:0px;
	left:0px;
	background-color:#F5FCD7;
	width:100%;
	opacity: 0.9;
	filter: alpha(opacity=90);
	-ms-filter: "alpha( opacity=90 )";
	z-index:997;
	padding-top:70px;
	height:100%;
	-webkit-overflow-scrolling: touch;
	overflow-y: auto;
	box-sizing:border-box;
}

.accordion_spnav dd a{
	display:block;
	color:#111;
	text-decoration:none;
	border-bottom:1px solid #111;
	padding:10px 5px 10px;
	font-size:18px;
}


.accordion_spnav dd a.nav_wrap_sp_home{
	border-top:1px solid #111;
}

.accordion_spnav2 div{
	display:block;
	color:#111;
	text-decoration:none;
	border-bottom:1px solid #111;
	padding:10px 40px 10px 5px;
	font-size:18px;
	position:relative;
	cursor: pointer;
}

.accordion_spnav2 ul{
	display:none;
}

.accordion_spnav2 ul li{
	background-color:#FFFCE7;
}

.accordion_spnav2 ul li a{
	padding-left:2em;
	color:#1b1b1b;
}

.humberger2{
	width:20px;
	position:absolute;
	right:10px;
	top:15px;
	z-index:1000;
}

.iconBar2{
	height: 3px;
	background: #1b1b1b;
	display: block;
	margin-bottom: 4px;
	-webkit-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
	   -moz-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
		 -o-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
			transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */

	-webkit-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
	   -moz-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
		 -o-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
			transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */
}

.iconBar2:nth-child(1){
	transform:translate(0,8px) rotate(90deg);
	-webkit-transform:translate(0,8px) rotate(90deg);
}

div.accordion_spnav2 div.open2 span.iconBar2:nth-child(1){
	transform:translate(-20px ,0);
	-webkit-transform:translate(-20px ,0);
	opacity:0;
}
	
	.bottom_fix_bt{
		position: fixed;
		bottom: 0;
		left: 0px;
	}
	.bottom_fix_bt ul{
		display: flex;
		gap:10px;
	}
	.bottom_fix_bt ul li{
		display: block;
		width: 80px;
		height: 80px;
	}
	.bottom_fix_bt ul li a{
		display: block;
		width: 80px;
		height: 80px;
		text-align: center;
		line-height: 80px;
		background-color:#488C41;
		font-weight: 700;
		text-decoration: none;
		font-size: 14px;
		color: #fff;
		border-radius: 50%;
	}
	.bottom_fix_bt ul li:nth-child(2) a{
		background-color:#FFC822;
	}
	.bottom_fix_bt ul li a:hover{
		text-decoration: none;
	}
#PageTopBtn{
  bottom: 0px;
}
#PageTopBtn:hover{
  bottom: 0px;
	transition:all 0.5s;
}

	}
/*===============================================
●画面の横幅が767pxまで
===============================================*/
@media screen and (max-width:767px){

body{
}

.body_fixed{
  position: fixed;
  width:100%;
}
	
.sp_none{
	display:none;
}

.sp_center{
	text-align:center;
}

.sp_left{
	text-align:left;
}

.sp_right{
	text-align:right;
}

.sp_float_l{
	float:left;
}

.sp_float_r{
	float:right;
}


	.d_flex_sp{
		display: flex;
	}
	.flex_wrap_sp{
		flex-wrap: wrap;
	}
	.j_content_c_sp{
		justify-content: center;
	}
	.j_content_en_sp{
		justify-content: flex-end;
	}
	.j_content_sb_sp{
		justify-content: space-between;
	}
	.a_items_c_sp{
		align-items: center;
	}
	.a_items_en_sp{
		align-items: flex-end;
	}
	.f-direction_re_sp{
		flex-direction: row-reverse;
	}

a.link_disabled_sp{
	pointer-events: none;
}


/*===============================================
●マージンボトム設定
===============================================*/

.mb0_sp{
	margin-bottom:0px!important;
}
.mb5_sp{
	margin-bottom:5px!important;
}
.mb10_sp{
	margin-bottom:10px!important;
}
.mb15_sp{
	margin-bottom:15px!important;
}
.mb20_sp{
	margin-bottom:20px!important;
}
.mb25_sp{
	margin-bottom:25px!important;
}
.mb30_sp{
	margin-bottom:30px!important;
}
.mb35_sp{
	margin-bottom:35px!important;
}
.mb40_sp{
	margin-bottom:40px!important;
}
.mb45_sp{
	margin-bottom:45px!important;
}
.mb50_sp{
	margin-bottom:50px!important;
}
.mb55_sp{
	margin-bottom:55px!important;
}
.mb60_sp{
	margin-bottom:60px!important;
}
.mb65_sp{
	margin-bottom:65px!important;
}
.mb70_sp{
	margin-bottom:70px!important;
}
.mb75_sp{
	margin-bottom:75px!important;
}
.mb80_sp{
	margin-bottom:80px!important;
}
.mb85_sp{
	margin-bottom:85px!important;
}
.mb90_sp{
	margin-bottom:90px!important;
}
.mb95_sp{
	margin-bottom:95px!important;
}
.mb100_sp{
	margin-bottom:100px!important;
}
	
	
/*===============================================
●ボタン
===============================================*/


/*===============================================
●フォントサイズ・カラー設定
===============================================*/

	.font_10px_sp{
		font-size: 10px;
		line-height:1.7em;
	}
	.font_14px_sp{
		font-size: 14px;
		line-height:1.7em;
	}
	.font_24px_sp{
		font-size: 24px;
		line-height:1.7em;
	}
	.font_28px_sp{
		font-size: 28px;
		line-height:1.7em;
	}
	.font_40px_sp{
		font-size: 40px;
		line-height:1.7em;
	}
	
/*ヘッダー設定
------------------------------------------------------------*/


/*wrap設定
------------------------------------------------------------*/

.wrap{
	margin-left: auto;
	margin-right: auto;
	padding-left: 10px;
	padding-right: 10px;
	box-sizing:border-box;
}
	.next_mv{
		width: 100%;
		overflow: hidden;
	}
	.next_mv_inner{
		width: 300%;
		margin-left: -100%;
	}
	.next_mv img{
		width: 100%;
		height: auto;
	}
	@media screen and (max-width: 767px) {
		.next_mv img   {
			width: 100%;
			height: 320px;
			object-fit: cover;
			object-position: center center;
		}
	}

	

	.path{
		text-align: right;
		margin-bottom: 40px;
	}
	.path a{
		text-decoration: none;
	}


/*フッター設定
------------------------------------------------------------*/

	.footer_top{
		padding-top: 50px;
		padding-bottom: 50px;
	}
	.footer_top a{
		display: block;
		max-width: 480px;
		margin-bottom: 20px;
	}
	.footer_bottom{
		padding: 50px 0 30px;
		border-top: 3px solid #664c14;
		background-color: #f8f0de;
	}
	.footer_logo{
		width: 285px;
		margin-left: auto;
		margin-right: auto;
	}
	.footer_tel{
		width: 255px;
		margin-left: auto;
		margin-right: auto;
	}
	.footer_nav{
		max-width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
	.footer_nav ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap:10px 40px;
	}
	.footer_nav ul li{
		background-image: url("images/ico_sankaku01.png");
		background-size: 11px auto;
		background-repeat: no-repeat;
		padding-left: 20px;
		background-position: left top 9px;
	}
	.footer_nav ul li:nth-child(4){
	}
	.footer_nav ul li a{
		text-decoration: none;
	}

	.footer_copyright_area{
		padding: 20px 0;
		background-color: #664c14;
		margin-bottom: 60px;
	}
	.footer_copyright_wrap{
		text-align: center;
	}
	.footer_copyright_wrap small{
		font-size: 18px;
		font-weight: bold;
		color: #fff;
	}
	#PageTopBtn{
		bottom: 0px;
		width: 50px;
		height: 50px;
		right: 0;
	}
	#PageTopBtn:hover{
		bottom: 0px;
		transition:all 0.5s;
	}

	/* フローティングバナー */
	.sp_bnr {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
			-ms-flex-pack: justify;
				justify-content: space-between;
		position: fixed;
		width: 100%;
		height: 60px;
		bottom: 0;
		left: 0;
		z-index: 4;
	}
	.sp_bnr div {
		position: relative;
		width: 33.3333333333%;
		background: #97c557;
		border-top: 1px solid #FFF;
	}
	.sp_bnr div:not(:last-child) {
		border-right: 1px solid #FFF;
	}
	.sp_bnr div img {
		width: auto;
		margin-bottom: 7px;
		height: 22px;
	}
	.sp_bnr div p {
		color: #FFF;
		font-size: 12px;
		line-height: 1;
		text-align: center;
		word-break: keep-all;
		font-weight: 500;
	}
	.sp_bnr a {
		position: absolute;
		width: 100%;
		height: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
			-ms-flex-direction: column;
				flex-direction: column;
		-webkit-box-align: center;
			-ms-flex-align: center;
				align-items: center;
		-webkit-box-pack: center;
			-ms-flex-pack: center;
				justify-content: center;
		text-decoration: none;
	}
	.sp_bnr a:hover {
		text-decoration: none;
	}
	
	/* ホーム設定
------------------------------------------------------------*/
	.top_mv{
		width: 100%;
		overflow: hidden;
	}
	.top_mv_inner{
		width: 200%;
		margin-left: -20%;
	}
	.top_mv img{
		width: 100%;
		height: auto;
	}
	.top_area1{
		padding: 50px 0 40px;
		background-color: #f8f0de;
		background-image: url("images/top_img02.png");
		background-size: 1570px auto;
		background-position: center center;
		background-repeat: no-repeat;
	}
	.top_area1_box1{
		max-width: 620px;
		margin-left: auto;
		margin-right: auto;
	}
	.top_area1_box2{
		max-width: 920px;
		margin-left: auto;
		margin-right: auto;
	}
	.top_area1_box3{
		gap:20px;
	}
	.top_area2{
		max-width: 2000px;
		margin-left: auto;
		margin-right: auto;
	}
	.top_area2_l{
		width: 100%;
	}
	.top_area2_r{
		width: 100%;
		box-sizing: border-box;
		padding: 30px;
		background-color: #fdfbf6;
	}
	.top_area2_r_box1{
		background-image: url("images/ico_circle01.png");
		background-size: 15px auto;
		background-repeat: no-repeat;
		background-position: left top 8px;
		padding-left: 25px;
	}
	.top_area3{
		max-width: 1420px;
		margin-left: auto;
		margin-right: auto;
		padding-left: 20px;
		padding-right: 20px;
	}
	.top_h2_1{
		background-image: url("images/top_img06.png");
		background-size: 117px auto;
		background-repeat: no-repeat;
		background-position: center bottom;
		padding-bottom: 20px;
	}
	.top_area3_box1_col{
		display: block;
		text-decoration: none;
		width: 100%;
		margin-bottom: 30px;
	}
	:hover.top_area3_box1_col{
		text-decoration: none;
	}
	.top_area3_box1_col_img img{
		width: 100%;
		aspect-ratio: 44 / 33;
		object-fit: cover;
	}
	.top_area4{
		background-image: url("images/top_img07.jpg");
		background-size: cover;
		background-position: center center;
		width: 100%;
		padding: 80px 0;
	}
	.top_area4_inner{
		background-color: rgba(255,255,255,0.80);
		padding: 40px 20px;
	}
	.top_area4_l{
		width: 100%;
	}
	.top_area4_r{
		width: 100%;
		height: 300px;
		overflow-y: scroll;
		margin-top: 50px;
	}
	.top_area4_r ul li{
		padding: 20px 0px;
		border-bottom: 1px dashed #664c14;
	}
	.top_area4_r_day{
		width: 100%;
	}
	.top_area4_r_title{
		width: 100%;
	}
	.top_area4_r_title a{
		text-decoration: none;
	}


/* 問い合わせ 設定
------------------------------------------------------------*/

.info_box5{
	margin-bottom:10px;
}

.info_box5 div:nth-child(1){
	margin-bottom:5px;
}
/* 下層 設定
------------------------------------------------------------*/
	.flow_box1{
		background-color: #fcf7ed;
		border-radius: 10px;
		padding: 40px 20px;
	}
	.flow_box1_l{
		margin-bottom: 30px;
	}
	.flow_box1_r_title{
		border-bottom: 1px dashed #664c14;
		padding-bottom: 10px;
	}
	.flow_box1_r_num{
		background-color: #d88462;
		width: 40px;
		height: 40px;
		line-height: 40px;
		text-align: center;
		border-radius: 50%;
		margin-right: 10px;
	}
	.flow_box1_col1{
		gap:20px;
	}
	a.flow_box1_col1_tel{
		text-decoration: none;
	}
	a:hover.flow_box1_col1_tel{
		text-decoration: none;
	}
	.flow_arrow{
		width: 140px;
		margin-left: auto;
		margin-right: auto;
	}
	.strength_h2_1{
		background-image: url("images/ico_circle01.png");
		background-size: 15px auto;
		background-repeat: no-repeat;
		background-position: left top 15px;
		padding-left: 25px;
		border-bottom: 1px dashed #664c14;
		padding-bottom: 10px;
	}
	ul.service_ul1 li{
		background-image: url("images/ico_check01.png");
		background-size: 20px auto;
		background-repeat: no-repeat;
		background-position: left top 5px;
		padding-left: 30px;
		min-height: 25px;
	}
	.news_img01 img{
		width: 100%;
		aspect-ratio: 44 / 33;
		object-fit: cover;
	}
	table.access_table1{
		width: 100%;
		border-bottom: 1px solid #47350e;
		border-left: 1px solid #47350e;
	}
	table.access_table1 th{
		width: 35%;
		border-top: 1px solid #47350e;
		border-right: 1px solid #47350e;
		font-weight: bold;
		padding: 20px 2%;
		box-sizing: border-box;
		background-color: #fdf9f1;
	}
	table.access_table1 td{
		width: 65%;
		border-top: 1px solid #47350e;
		border-right: 1px solid #47350e;
		font-weight: normal;
		padding: 20px 2%;
		box-sizing: border-box;
	}



}