@charset "UTF-8";
/***********************************
* トップ共通	*
***********************************/
#menu,
#pricList,
#flow,
#about{
	margin-top: -95px;
	padding-top:95px;
}
@media (min-width: 768px) {
	#menu,
	#pricList,
	#flow,
	#about{
		margin-top: -85px;
		padding-top:85px;
	}
}
@media (min-width: 992px){
	#menu,
	#pricList,
	#flow,
	#about{
		margin-top: -98px;
		padding-top:98px;
	}
}

/* h2 --------------------*/
.menu-block h2,
.priceList-block h2,
.flow-block h2,
.about-block h2{
	font-family: 'Noto Serif JP', serif;
	color:#221815;
	display: inline-block;
	text-align: center;
	border-bottom: solid #c2cedf 1px;
	font-size: 1.1rem;
	padding-bottom: 0.5rem;
	margin-bottom: 1.5rem;
}

	@media (min-width: 992px) {
		.menu-block h2,
		.priceList-block h2,
		.flow-block h2,
		.about-block h2{
			font-size: 1.3rem;
			padding-bottom: 0.7rem;
			margin-bottom: 1.8rem;
		}
	}

/***********************************
* アイチャッチ	*
***********************************/
.el_srOnly{
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
/* 画像及びh2部分*/
.icatch-bg{
	position: relative;
	z-index: 800;
	width: 100%;
	background-color: #fff;
	background-image: url(../img/top_icatch-bg.jpg);
	background-position:left bottom;
	background-size: cover;
}
.ichatch-h2-block{
	width: 96%;
	margin: 0 auto;
	border-left:solid #fff 2px;
	border-right:solid #fff 2px;
}
.ichatch-h2{
	position: relative;
	padding-left: 10%;
	padding-right: 10%;
	padding-top: 2rem;
	padding-bottom: 4rem;
	height: calc(223px + 2rem + 4rem);
}
.ichatch-h2 img{
	width: 40px;
	height: 223px;
}
	@media (min-width: 768px) {
		.ichatch-h2{
			padding-left: 15%;
			padding-right: 15%;
			padding-top: 6rem;
			padding-bottom: 10rem;
			height: calc(379px + 6rem + 10rem);
		}
		.ichatch-h2 img{
			width: 50px;
			height: 279px;
		}
	}
	@media (min-width: 992px) {
		.ichatch-h2{
			padding-left: 20%;
			padding-right: 20%;
			padding-top: 7rem;
			padding-bottom: 14rem;
			height: calc(374px + 7rem + 14rem);
		}
		.ichatch-h2 img{
			width: auto;
			height: 374px;
		}
	}

/* コンテンツ*/
.ichatch-cont-block{
	padding-top: 3rem;
}
.sec-ichatch-cont{
	margin-bottom: 3rem;
}
.sec-ichatch-cont img{
	width: 80%;
}
.sec-ichatch-cont h3{
	font-family: 'Noto Serif JP', serif;
	color:#221815;
	font-size: 1.1rem;
	margin-bottom: 2rem;
}
.sec-ichatch-cont h3 span{
	border-bottom: solid #c2cedf 1px;
	padding-bottom: 0.5rem;
}
.sec-ichatch-cont .pic01,
.sec-ichatch-cont .pic02{
	text-align: center;
	margin-bottom: 2rem;
}
.sec-ichatch-cont .txt01,
.sec-ichatch-cont .txt02{
	text-align: center;
}
	@media (min-width: 768px) {
		.sec-ichatch-cont img{
			width: 100%;
		}
		.sec-ichatch-cont .pic01{
			margin-right: -1.5rem;
		}
		.sec-ichatch-cont .pic02{
			margin-left: -1.5rem;
		}
		.sec-ichatch-cont .txt01{
			text-align: right;
		}
		.sec-ichatch-cont .txt02{
			text-align: left;
		}
	}
	@media (min-width: 992px) {
		.ichatch-cont-block{
			padding-top: 8rem;
			padding-bottom: 1rem;
		}
		.sec-ichatch-cont{
			margin-bottom: 7rem;
		}
		.sec-ichatch-cont h3{
			font-size: 1.3rem;
			margin-bottom: 3rem;
			letter-spacing: 0.1em;
		}
		.sec-ichatch-cont h3 span{
			padding-bottom: 1.2rem;
		}
		.sec-ichatch-cont .pic01{
			margin-right: -2rem;
		}
		.sec-ichatch-cont .pic02{
			margin-left: -2rem;
		}
	}
/***********************************
* メニュー	*
***********************************/
/* 背景 --------------------*/
.menu-bg{
	background-image: url(../img/top_menu-pic.jpg);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
}
.menu-block{
	padding-top: 2rem;
	padding-bottom: 1rem;
}

	@media (min-width: 992px) {
		.menu-block{
			padding-top: 3rem;
			padding-bottom: 2rem;
		}
	}

/* .menu-block-p --------------------*/
.menu-block-p{
	display: table;
	margin-left: auto;
	margin-right: auto;
	width: 86%;
}
	@media (min-width: 768px) {
		.menu-block-p p{
			text-align: center;
		}
	}

/* セミオーダー,フルオーダー --------------------*/
/* ボックス*/
.menu-semi,
.menu-full{
	color:#fff;
	width: 90%;
	padding: 1.2rem 0;
	margin: 0.5rem auto;
}
.menu-semi{
	background-color: #4d95d8;
}
.menu-full{
	background-color: #b99037;
	margin-bottom: 1rem;
	max-width: 600px;
}
	@media (min-width: 768px) {
		.menu-semi,
		.menu-full{
			margin-top: 0.5rem;
			margin-bottom: 1.5rem;
		}
		.menu-semi{
			margin-right: 0;
		}
		.menu-full{
			margin-left: 0;
			margin-left: auto;
		}
	}
	@media (min-width: 992px) {
		.menu-semi,
		.menu-full{
			padding: 2rem 0;
			margin-top: 1.5rem;
			margin-bottom: 2.5rem;
		}
	}
/* h3*/
.menu-semi h3,
.menu-full h3{
	text-align: center;
	font-weight: 200;
	font-size: 1.3rem;
	margin-bottom: 0.8rem;
}

	@media (min-width: 992px) {
		.menu-semi h3,
		.menu-full h3{
			font-size: 1.8rem;
			margin-bottom: 0.8rem;
		}
	}
/* p*/
.menu-semi p,
.menu-full p{
	margin-bottom: 0;
	text-align: center;
	font-size: 0.8rem;
}
.menu-semi p.menu-txt span,
.menu-full p.menu-txt span{
	font-size: 0.6rem;
}
.menu-semi p.menu-price,
.menu-full p.menu-price{
	background-image: url(../img/top_menu-price-bg.png);
	background-repeat: no-repeat;
	background-position: left 19px;
	background-size: 70px;
	padding-left: 75px;
	text-align: left;
}
.menu-semi p.menu-price span,
.menu-full p.menu-price span{
	font-size: 1.3rem;
	font-weight: 200;
}
	@media (min-width: 768px) {
		.menu-semi p.menu-txt{
			padding-top: 0.5rem;
			margin-bottom: 0.7rem;
		}
	}
	@media (min-width: 992px) {
		.menu-semi p,
		.menu-full p{
			font-weight: 200;
			font-size: 1.1rem;
		}
		.menu-semi p.menu-txt span,
		.menu-full p.menu-txt span{
			font-size: 0.8rem;
		}
		.menu-semi p.menu-txt{
			padding-top: 0.8rem;
			margin-bottom: 1rem;
		}
		.menu-semi p.menu-price,
		.menu-full p.menu-price{
			background-image: url(../img/top_menu-price-bg.png);
			background-repeat: no-repeat;
			background-position: left 25px;
			background-size: 90px;
			padding-left: 95px;
			text-align: left;
		}
		.menu-semi p.menu-price span,
		.menu-full p.menu-price span{
			font-size: 1.8rem;
			font-weight: 200;
		}
	}
/***********************************
* 料金表 2023年12月追加	*
***********************************/
/* 背景 --------------------*/
.priceList-bg{
	background-color: #eaeaee;
}
.priceList-block{
	padding-top: 2rem;
	padding-bottom: 1rem;
}
.priceList-sec{
	margin-bottom: 2em;
}
	@media (min-width: 768px){
		.priceList-sec{
			max-width: 550px;
			margin-right: auto;
			margin-left: auto;
		}
	}
	@media (min-width: 992px) {
		.priceList-block{
			padding-top: 3rem;
			padding-bottom: 2rem;
		}
		.priceList-sec{
			max-width: 700px;
		}
	}

/* 見出し --------------------*/
.priceList-sec h3{
	color:#b99037;
	font-size: 0.9rem;
}
.priceList-sec h3::before{
	content: "【";
}
.priceList-sec h3::after{
	content: "】";
}
	@media (min-width: 992px){
		.priceList-sec h3{
			font-size: 1.1rem;
		}
	}
/* アコーディオン --------------------*/
/*アコーディオン基本*/
ul.js_accordion{
	list-style: none;
	margin: 0;
	padding: 0;
}
.js_accordion_box {
    display: none/*;はじめは非表示*/
}

/*タイトル*/
.priceList-list-ttl {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-size:.9rem;
    font-weight: 500;
	letter-spacing: .1em;
    padding:.5em 0 .5em 1.8em;
	margin-bottom: 0;
}
.priceList-list-ttl::before{
	content: "";
	left:.5em;
	top:50%;
	position: absolute;
	display: block;
	width: .5em;
	height: .5em;
	border-top: 1px solid #646160;
	border-right: 1px solid #646160;
	transform: translateY(-50%) rotate(45deg);
	transition: all .5s ease;
}
.priceList-list-ttl.js_accordion_close::before{
	transform: translateY(-50%) rotate(135deg);
}
	@media (min-width: 992px){
		.priceList-list-ttl{
			font-size: 1.1rem;
		}
	}
/*現れるエリア*/
.priceList-list-box {
	margin:0 1em 1em 1em;
    padding: 1em;
}
dl.priceList-list-box-menu{
	width: 100%;
	max-width: 380px;
}
dl.priceList-list-box-menu dt,
dl.priceList-list-box-menu dd{
	font-weight: 500;
	font-size: 0.8rem;
}
dl.priceList-list-box-menu dt{
	padding-left: .5em;
	border-left:1px solid #646160;
}
dl.priceList-list-box-menu dd{
	text-align: right;
	margin-bottom: .5em;
}
ul.priceList-list-box-note{
	margin: 0;
	padding: 0;
}
ul.priceList-list-box-note li{
	position: relative;
	padding-left: 1em;
	margin-bottom: .3em;
}
ul.priceList-list-box-note li::before{
	content: "※";
	position: absolute;
	top:0;
	left:0;
}
.priceList-list-box-menu-sub{
	font-size: .9em;
	font-weight: normal;
}
ul.priceList-list-box-pic,
ul.priceList-list-box-pic2{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
ul.priceList-list-box-pic li{
	width: calc(50% - 40px);
	max-width: 150px;
	margin: 20px;
}
ul.priceList-list-box-pic2 li{
	width: calc(50% - 30px);
	max-width: 130px;
	margin: 15px;
}
ul.priceList-list-box-pic li img,
ul.priceList-list-box-pic2 li img{
	width: 100%;
	height: auto;
}
.priceList-list-box p.priceList-list-box-txt{
	font-size: 0.8rem;
}
	@media (min-width: 768px){
		dl.priceList-list-box-menu{
			display: flex;
			flex-wrap: wrap;
			max-width: 450px;
		}
		dl.priceList-list-box-menu dt,
		dl.priceList-list-box-menu dd{
			margin-bottom: .5em;
		}
		dl.priceList-list-box-menu dt{
			width: calc(100% - 12em);
			
		}
		dl.priceList-list-box-menu dd{
			align-self: center;
			width: 12em;
		}
		ul.priceList-list-box-pic2 li{
			width: calc(25% - 30px);
			max-width: 130px;
			margin: 15px;
		}
	}
	@media (min-width: 992px){
		dl.priceList-list-box-menu{
			max-width: 600px;
		}
		dl.priceList-list-box-menu dt,
		dl.priceList-list-box-menu dd{
			margin-bottom: .5em;
			font-size: 0.98rem;
		}
		.priceList-list-box p.priceList-list-box-txt{
			font-size: 0.98rem;
		}
	}


/***********************************
* オーダーの流れ	*
***********************************/
.flow-block{
	padding-top: 3rem;
	padding-bottom: 3rem;
}

	@media (min-width: 992px) {
		.flow-block{
			padding-top: 8rem;
			padding-bottom: 8rem;
		}
	}
/* .p-menu-lead --------------------*/
.p-menu-lead{
	margin-bottom: 2rem;
}
	@media (min-width: 768px) {
		.p-menu-lead {
			text-align: center;
		}
	}
	@media (min-width: 992px){
		.p-menu-lead{
			margin-bottom: 3.5rem;
		}
	}

/* 流れ --------------------*/
.flow-cont{
	display: table;
	width: 90%;
	margin: 0 auto 4rem auto;
}
.flow-pic,
.flow-txt{
	display: table-cell;
	vertical-align: middle;
}
.flow-pic{
	width: 100px;
}
.flow-pic img{
	width: 100%;
	max-width: 188px;
}
.flow-txt{
	padding-left: 1.5rem;
}

	@media (min-width: 768px) {
		.flow-cont{
			width: auto;
		}
	}
	@media (min-width: 992px) {
		.flow-cont{
			margin-bottom: 7rem;
		}
		.flow-pic{
			width: 188px;
		}
		.flow-txt{
			padding-left: 3rem;
		}
	}
/* h3*/
.flow-txt h3{
	color:#b99037;
	font-size: 0.9rem;
}
	@media (min-width: 768px) {
	}
	@media (min-width: 992px) {
		.flow-txt h3{
			font-weight: 300;
			font-size: 1.1rem;
		}
	}

/* 矢印*/
.flow-arrow{
	text-align: center;
	padding: 1rem 0 1.2rem 0;
}
.flow-arrow img{
	width: 22px;
}
	@media (min-width: 768px) {
		.flow-arrow img{
			width: 32px;
		}
	}
	@media (min-width: 992px) {
		.flow-arrow{
			text-align: center;
			padding: 1.1rem 0 1.3rem 0;
		}
		.flow-arrow img{
			width: auto;
		}
	}
/* 実績紹介 --------------------*/
.gallery-cont{
	margin-bottom: 2rem;
}
/* 見出し*/
.gallery-cont h3{
	font-family: 'Noto Serif JP', serif;
	color:#221815;
	font-size: 1.1rem;
	margin-bottom: 1.5rem;
}
.gallery-cont h3 a{
	color:#221815;
	text-decoration: none;
	display:inline-block;
	background-image: url(../img/top_gallery-arrow.png);
	background-repeat: no-repeat;
	background-position: right;
	background-size: 18px;
	padding-right: 22px;
}

	@media (min-width: 992px) {
		.gallery-cont h3{
			font-size: 1.3rem;
			margin-bottom: 1.8rem;
		}
		.gallery-cont h3 a{
			background-size: auto;
			background-position: right;
			padding-right: 28px;
			padding-top: 2px;
			padding-bottom: 1px;
		}
	}
/* スライド*/
ul.gallery-slide{
	margin: 0;
	padding: 0;
}
ul.gallery-slide li{
	width: 180px;
	padding:0 1px;
}
ul.gallery-slide li img{
	width: 100%;
}

	@media (min-width: 992px) {
		ul.gallery-slide li{
			width: 255px;
		}
	}


/* その他オーダー可能な商品 --------------------*/
.item-h3{

}
.item-lead{
	text-align: right;
}
	@media (min-width: 768px) {
		.item-h3,
		.item-lead{
			display: table-cell;
			vertical-align: middle;
			padding-bottom: 1.5rem;
		}
		.item-lead{
			text-align: left;
			padding-left: 1rem;
		}
		.item-lead p{
			margin-bottom: 0;
		}
	}
	@media (min-width: 992px) {
		.item-lead{
			padding-left: 2rem;
		}
	}

/* h3*/
.item-h3 h3{
	color:#b99037;
	font-size: 0.9rem;
}
	@media (min-width: 768px){
		.item-h3 h3{
			margin-bottom: 0;
		}
	}
	@media (min-width: 992px) {
		.item-h3 h3{
			font-weight: 300;
			font-size: 1.1rem;
		}
	}
/* 一覧*/
.item-cont ul{
	margin: 0;
	padding: 0;
	text-align: center;
}
.item-cont ul li{
	display:inline;
}
.item-cont ul li a{
	color:#585858;
	text-decoration: none;
	display: inline-block;
	border:solid #c3a053 1px;
	padding: 0.4rem 1rem;
	margin-left: 0.1rem;
	margin-right: 0.1rem;
	margin-bottom: 0.4rem;
}
.item-cont ul li a i{
	color:#c3a053;
	padding-left: 0.5rem;
}
	@media (min-width: 768px) {
		.item-cont ul{
			text-align: left;
		}
	}
	@media (min-width: 992px) {
		.item-cont ul{
			width: 90%;
		}
		.item-cont ul li a{
			padding: 0.8rem 1.8rem;
			margin-left: 0.2rem;
			margin-right: 0.2rem;
			margin-bottom: 0.6rem;
		}
	}
	@media (min-width: 1200px) {
		.item-cont ul{
			width: 80%;
		}
	}

/***********************************
* 工房のご紹介	*
***********************************/
/* 工房案内--------------------*/
.about-cont02-bg{
	background-image: url(../img/top_about-pic-sp01.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center bottom;
}
.about-cont02-in{
	width: 96%;
  padding-right: 15px;
  padding-left: 15px;
	padding-top: 6rem;
	padding-bottom: 6rem;
  margin-right: auto;
  margin-left: auto;
}
.about-cont02 p{
	margin: 0;
	color:#635d5c;
}
.about-cont02 p.about-lead{
	font-size: 0.8rem;
}
.about-cont03 img{
	width: 100%;
}
	@media (max-width: 767px){
		.about-cont01,
		.about-cont02-pic{
			display: none;
		}
	}
	@media (min-width: 576px) {
	  .about-cont02-in {
	    max-width: 540px;
	  }
	}
	@media (min-width: 768px){
		.about-block{
			display: flex;
		}
		.about-cont01{
			width: 40%;
			align-self: stretch;
			background-image: url(../img/top_about-pic-pc01.jpg);
			background-repeat: no-repeat;
			background-size: cover;
			background-position: left top;
		}
		.about-cont02{
			width: 60%;
		}
		.about-cont02-bg{
			background-image: url(../img/top_about-pic-pc02.jpg);
			background-repeat: no-repeat;
			background-size: cover;
			background-position: center bottom;
		}
		.about-cont02-in{
			width: auto;
		  padding-right: 0;
		  padding-left: 0;
			padding-top: 4rem;
			padding-bottom: 5rem;
		  margin-right: auto;
		  margin-left: auto;
		}
		.about-cont02 p.about-lead{
			font-size: 0.9rem;
		}
		.about-cont02-pic img{
			width: 100%;
		}
		.about-cont03{
			display: none;
		}
	}
	@media (min-width: 992px){
		.about-cont02-bg{
			min-height: 340px;
		}
		.about-cont02-in{
			padding-top: 7rem;
			padding-bottom: 8rem;
		}
		.about-cont02 p.about-lead{
			margin-bottom: 0.5rem;
			font-size: 1.1rem;
		}
	}
	@media (min-width: 1200px){
		.about-cont02-in{
			padding-right: 20%;
		}
	}
/* オーナー紹介 --------------------*/
.owner-block{
	padding-top: 2rem;
	margin-bottom: 4rem;
}

.owner-cont{
	width: 90%;
	margin: 0 auto;
}
.owner-pic{
	width: 90%;
	margin: 0 auto;
}
	@media (min-width: 992px){
		.owner-block{
			padding-top: 5rem;
			margin-bottom: 7rem;
		}
	}
/* h3*/
.owner-block h3{
	font-family: 'Noto Serif JP', serif;
	color:#221815;
	font-size: 0.8rem;
	line-height: 1.5;
	margin-bottom: 1.1rem;
}
.owner-block h3 span{
	font-size: 1.5rem;
}
	@media (min-width: 768px) {
	}
	@media (min-width: 992px) {
		.owner-block h3{
			font-size: 1.1rem;
			margin-bottom: 2rem;
		}
		.owner-block h3 span{
			font-size: 1.8rem;
		}
	}
/* 写真 */
.owner-pic img{
	width: 100%;
	max-width: 506px;
}

/* ブログ*/
.blog-cont{
	display: table;
	margin-left: auto;
	margin-right: auto;
	padding-top:2rem;
}
.blog-link a{
	color:#585858;
	text-decoration: none;
	display: inline-block;
	border:solid #c3a053 1px;
	padding: 0.4rem 1rem;
	font-size: 0.9rem;
}
.blog-link a i{
	color:#c3a053;
	padding-left: 0.5rem;
}
p.blog-txt{
	margin-left: auto;
	margin-right: auto;
	width: 90%;
}
	@media (min-width: 768px) {
		p.blog-txt{
			width: 100%;
		}
	}
	@media (min-width: 992px) {
		.blog-cont{
			padding-top: 3rem;
		}
		.blog-link a{
			font-size: 1.1rem;
			padding: 0.8rem 1.8rem;
		}
	}
