@charset "utf-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap');

html{
	scroll-behavior: smooth;
	}


img{
	border : 0px;
	max-width : 100%;
	}
.mt10{
	margin-top : 10px !important;
	}
.mt20{
	margin-top : 20px !important;
	}
.mt30{
	margin-top : 30px !important;
	}
.mt50{
	margin-top : 50px !important;
	}
.mb10{
	margin-bottom : 10px !important;
	}
.mb20{
	margin-bottom : 20px !important;
	}
.mb30{
	margin-bottom : 30px !important;
	}
.mb40{
	margin-bottom : 40px !important;
	}
.mb50{
	margin-bottom : 50px !important;
	}
.mb80{
	margin-bottom : 80px !important;
	}
.mb100{
	margin-bottom : 100px !important;
	}



a:link { color: #ec8756; text-decoration : none;} 
a:visited { color: #ec8756; text-decoration : none;} 
a:hover { color: #eb1149; text-decoration : none;} 
a:active { color: #ec8756; text-decoration : none;} 
a:focus{ outline:none;}




.ce{
	text-align : center !important;
	}
.rr{
	text-align : right !important;
	}
.ll{
	text-align : left !important;
	}

p,h1,h2,h3,h4{
	margin : 0;
	font-weight : normal;
	}


.f10{
	font-size : 10px !important;
	}
.f12{
	font-size : 12px !important;
	}
.f14{
	font-size : 14px !important;
	}
.f16{
	font-size : 16px !important;
	}
.f18{
	font-size : 18px !important;
	}
.f20{
	font-size : 20px !important;
	}
.f22{
	font-size : 22px !important;
	}
.f26{
	font-size : 26px !important;
	}
.f30{
	font-size : 30px !important;
	}
.f32{
	font-size : 32px !important;
	}
.f40{
	font-size : 40px !important;
	}

.ind{
	text-indent : -1em;
	margin-left : 1em;
	line-height : 1.4;
	}

.bold{
	font-weight : bold !important;
	}


form{
	margin : 0;
	}
textarea{
	font-size : 14px;
	}
table{
	font-size : 1em;
	line-height : 2;
	border-collapse : collapse;
	}

.nowrap{
	white-space : nowrap;
	}

ul{
	margin : 0;
	padding : 0;
	list-style : none;
	}
ol{
	margin : 0;
	padding : 0 0 0 1.5em;
	}
hr{
	background-color: : #7d5e4c;
	}



/* Pill style */
#scrollUp {
	bottom: 20px;
	right: 20px;
	height: 43px;  /* Height of image */
	width: 43px; /* Width of image */
	background: url(../img/common/top.png) no-repeat;
	}





/* ボディ全体 */
body{
	background : #fbf8ec;
	margin : 0 auto;
	padding : 0;
	text-align : center;
	font-size : 16px;
	color : #524e3f;
	line-height : 2;
	font-family: 'Noto Sans JP', "Hiragino Kaku Gothic Pro","ヒラギノ角ゴシック Pro", "メイリオ", Meiryo, Osaka, sans-serif;
	}


#head{
	text-align : left;
	border-bottom : solid 1px #d2c48a;
	padding : 0 0 5px 0;
	}
#head .content{
	margin : 0 auto;
	width : 1000px;
	}
#head .content h1{
	font-size : 12px;
	margin : 0;
	}
#head .content #logo h2{
	font-weight: 900;
	margin: 0 0 10px 0;
	line-height: 1;
	font-size: 18px;
	}
#head .content #logo h2 span{
	font-size: 34px;
	}
#head .content #logo h2 a{
	color: #cd6000;
	}







#navi{
	border-bottom : solid 1px #d2c48a;
	padding : 12px 0;
	background : #fbf8ec;
	position: sticky;
	top: 0;
	z-index: 999;
	}
#navi ul{
	width : 1000px;
	margin : 0 auto;
	display: flex;
	justify-content: center;
	gap: 50px;
	}
#navi ul li{
	font-size : 16px;
	font-weight: bold;
	}







#pankuzu{
	text-align : left;
	box-sizing : border-box;
	padding : 3px 0;
	background : #f2eee0;
	border-bottom : solid 1px #c5b98f;
	margin : 0;
	}
#pankuzu p{
	width : 1000px;
	box-sizing : border-box;
	margin : 0 auto;
	background : url('../img/common/home.png') no-repeat left 5px;
	padding : 0 0 0 22px;
	font-size: 14px;
	}
	.wrapper{
		width : 1000px;
		margin : 80px auto 150px;
		text-align : left;
		overflow : hidden;
		}
	.block{
		margin : 0 0 80px 0;
		overflow : hidden;
		}

	h2.title{
		font-size: 30px;
		font-weight: 700;
		text-align: center;
		margin: 0 0 50px 0;
		}
	h3.title{
		font-size: 22px;
		border-bottom: solid 1px #c5b98f;
		font-weight: 700;
		margin: 0 0 20px 0;
		}






#footer{
	border-top : solid 1px #c5b98f;
	padding: 20px 0 0 0;
	background : url('../img/common/town.png') repeat-x bottom left;
	}
#footer .content{
	width : 1000px;
	margin : 0 auto;
	text-align : left;
	overflow : hidden;
	padding : 0 0 50px 0;
	display: flex;
	justify-content: left;
	gap: 50px;
	}
#footer .content .logo{
	color: #cd6000;
	font-weight: 900;
	font-size: 20px;
	}
#footer .content .data{
	line-height : 1.6;
	margin : 5px 0 0 50px;
	}
	

#copy{
	text-align : center;
	font-size : 12px;
	margin : 5px 0;
	}





/* index */
	.main{
		background : url('../img/index/main.jpg') no-repeat top center;
		height : 758px;
		width : 100%;
		position : relative;
		}
	.main img{
		width : 100%;
		}
	.main .text{
		width : 650px;
		margin : 0 auto;
		position : absolute;
		font-size : 42px;
		font-weight : bold;
		color : #fff;
		top : 40%;
		right : 10%;
		}
	.main .text p{
		border-top : solid 1px #fff;
		line-height : 1.5;
		text-shadow : 2px 2px 6px #000;
		}
	.main .text p:first-child{
		font-size : 20px;
		border : none;
		}



/* faq */


dl.faq{
	margin: 0 0 50px 0;
	}
dl.faq dt{
	margin: 0 0 20px 0;
	font-size: 18px;
	font-weight: bold;
	border-bottom: solid 1px #524e3f;
	}
dl.faq dd{
	margin: 0;
	}
dl.faq dd p{
	margin: 0 0 20px 0;
	}
dl.faq dd p:last-child{
	margin: 0;
	}




/* about */

.about_table{
	width: 100%;
	}
.about_table th{
	background: #eee;
	border: solid 1px #524e3f;
	padding: 15px;
	white-space: nowrap;
	}
.about_table td{
	background: #fff;
	border: solid 1px #524e3f;
	padding: 15px;
	}


.philosophy{
	position: relative; /* 子要素の基準にするため、相対配置にする */
	border: 1px solid #000;
	border-radius: 10px;
	margin: 20px 0;
	padding: 30px 30px 20px 30px;
	}

.philosophy h3.title{
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	padding: 0 20px;
	transform: translateY(-50%) translateX(1em);
	background-color: #fbf8ec;
	border: none;
	}



















/********************************************************************************************************************************************************************************/
@media screen and (min-width: 737px) {
/********************************************************************************************************************************************************************************/






a[href^="tel:"] { pointer-events: none; color:#000;}


/* 非表示用 */
#sidr{
	display : none;
	}
#sp_head{
	display : none;
	}
#sp_foot{
	display : none;
	}
#fix_btn{
	display : none;
	}
	.sp{
		display : none;
		}







/********************************************************************************************************************************************************************************/
}
@media screen and (max-width: 736px) {
/********************************************************************************************************************************************************************************/


	.pc{
		display : none;
		}

/* Pill style */
#scrollUp {
	bottom: 10px;
	right: 10px;
	}

/* ボディ全体 */
body{
	font-size : 14px;
	}


#sidr{
	display:none;
	position:absolute;
	position:fixed;
	top:0;
	height:100%;
	z-index:999999;
	width:100%;
	overflow-x:none;
	overflow-y:auto;
	font-size:12px;
	background:#fff;
	}
#sidr.right{
	left:auto;
	right:-100%;
	}
#sidr .close{
	text-indent : -9999px;
	background : #fff url('../img/common/sp/close.png') no-repeat center center;
	background-size : 20px;
	border-radius : 5px;
	position : absolute;
	right : 3%;
	top : 20px;
	width : 30px;
	height : 30px;
	cursor : pointer;
	}
#sidr .close a{
	display : block;
	}

#sidr ul{
		border-top : solid 1px #7d5e4c;
		margin : 70px 0 0 0;
		text-align : left;
		}
#sidr ul li{
		background : #fbf8ec url('../img/common/arrow2.png') no-repeat 95% center;
		display:block;
		color : #7d5e4c ;
		text-align : left;
		border-bottom : solid 1px #7d5e4c;
		font-size : 16px;
		}
#sidr ul li a{
		display:block;
		padding : 15px 0 15px 20px;
		color : #7d5e4c ;
		}




#sp_head{
	width : 100%;
	border-bottom : solid 1px #ddd;
	z-index : 9999;
	position : relative;
	text-align : left;
	}
#sp_head h1{
	padding : 10px 5px;
	font-size : 12px;
	line-height : 1.4;
	}
#sp_head .btn{
	position : absolute;
	right : 10px;
	top : 10px;
	width : 9%;
	position : fixed;
	}
#sp_head .btn a{
	display : block;
	}



#head{
	display : none;
	}
#navi{
	display : none;
	}




#pankuzu{
	padding : 3px 0 3px 10px;
	box-sizing : border-box;
	}
#pankuzu p{
	width: 100%;
	}
	.wrapper{
		width : 100%;
		margin : 30px auto 50px;
		padding : 0 10px;
		box-sizing : border-box;
		text-align : left;
		overflow : hidden;
		}
	.block{
		margin : 0 0 50px 0;
		overflow : hidden;
		}
	.box{
		margin : 0 0 20px 0;
		overflow : hidden;
		}
	.left_block{
		margin : 0 0 50px 0;
		}
	.right_block{
		}




#footer .content{
	width : 100%;
	margin : 0 auto;
	display: block;
	text-align: center;
	padding: 0 0 50px 0;
	}
#footer .content .data {
	margin: 5px 0 0 0;
	}


	.wrapper{
		width : 100%;
		margin : 40px auto 100px;
		padding: 0 20px;
		}
	.block{
		margin : 0 0 80px 0;
		}

	h2.title{
		font-size: 24px;
		margin: 0 0 30px 0;
		}




/* index */

	
	.main{
		background : url('../img/index/main.jpg') no-repeat left -60px top;
		background-size : cover;
		height : 380px;
		width : 100%;
		position : relative;
		}
	.main .text{
		width : 95%;
		margin : 0 auto;
		position : absolute;
		font-size : 20px;
		font-weight : bold;
		color : #fff;
		top : 50%;
		left : 0;
		right : 0;
		}
	.main .text p{
		border-top : solid 1px #fff;
		line-height : 1.5;
		text-shadow : 2px 2px 6px #000;
		}
	.main .text p:first-child{
		font-size : 14px;
		border : none;
		}






.about_table{
	width: 100%;
	display: block;
	box-sizing: border-box;
	}
.about_table tbody{
	width: 100%;
	display: block;
	box-sizing: border-box;
	}
.about_table tr{
	width: 100%;
	display: block;
	box-sizing: border-box;
	}
.about_table th{
	width: 100%;
	display: block;
	box-sizing: border-box;
	}
.about_table td{
	width: 100%;
	display: block;
	box-sizing: border-box;
	}


input,textarea{
	width: 100%;
	box-sizing: border-box;
	}
	


/********************************************************************************************************************************************************************************/
}
/********************************************************************************************************************************************************************************/



