@charset "UTF-8";
/*===========================================================================*/
/*common*/
/*===========================================================================*/
/* リセット
---------------------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, input, textarea {
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	font: inherit;
	word-wrap: break-word;
	overflow-wrap: break-word;
	box-sizing:border-box;
	vertical-align:baseline;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: "";
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
	table-layout: fixed;
	width: 100%;
}
img {
	max-width: 100%;
	height: auto;
	line-height: 0;
	vertical-align: top;
}
video {
	max-width: 100%;
	height: auto;
	line-height: 0;
	vertical-align: top;
}
small{
	font-size: 0.7em;
}
.fas {
-moz-osx-font-smoothing:grayscale;
-webkit-font-smoothing:antialiased;
	display:inline-block;
	font-style:normal;
	font-variant:normal;
	text-rendering:auto;
	line-height:1;
	font-family:"Font Awesome 6 Free",sans-serif;
	font-weight:900;
}
@font-face {
	font-family:"Font Awesome 6 Free";
	font-style:normal;
	font-weight:900;
	font-display:swap;
	src:url("../webfonts/fa-solid-900.eot");
	src:url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"),
	url("../webfonts/fa-solid-900.woff2") format("woff2"),
	url("../webfonts/fa-solid-900.woff") format("woff"),
	url("../webfonts/fa-solid-900.ttf") format("truetype"),
	url("../webfonts/fa-solid-900.svg#fontawesome") format("svg")
}
.fuwafuwa {
	animation: floating-y 2s ease-in-out infinite alternate-reverse;
  }
  @keyframes floating-y {
	0% {
	  transform: translateY(-2%);
	}
	100% {
	  transform: translateY(2%);
	}
  }


/* 共通基本スタイル
---------------------------------------------------------------------------- */
html {
	height: 100%;
	scroll-behavior: smooth;
}
body {
	margin: 0 auto !important;
	background:#fff;
	color: #514840;
	font-size: 16px;
	line-height: 2;
	font-family:"Zen Kaku Gothic New", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif !important;
	font-weight: 400;
	letter-spacing: 0;
	height: 100%;
	max-width: 1920px;
	min-width: 1080px;
}
body #container {
	height:auto;
}
.txt-c {
	text-align: center;
}
.txt-r {
	text-align: right;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
} 
.clearfix:before {
	content: "";
	display: block;
	clear: both;
} 
.clearfix {
	display: block;
}
.waku {
	overflow: hidden;
}
.l{
	float:left;
}
.r{
	float:right;
}
a#top {
	position: absolute;
	top: 0px;
}
a {
	text-decoration: none;
	transition: 0.6s;
}
a i{
	transition: 0.6s;
}
a.alpha {
	display: block;
}
a.alpha:hover {
	filter: alpha(opacity=90);
	-moz-opacity: 0.9;
	opacity: 0.9;
}
a img {
	transition: 0.3s ease-in-out;
}
a img:hover {
	filter: alpha(opacity=90);
	-moz-opacity: 0.9;
	opacity: 0.9;
}
#page-top {
	position: fixed;
	bottom: 0px;
	right: 0px;
	z-index:9999;
	width:60px;
}
.google-map iframe{
	vertical-align: bottom;
}
/* ハック
---------------------------------------------- */
/* letter-spacing hack */
@media screen {
br {
letter-spacing: 0;
}
}
/* height100% hack */
body > #container {
	height: auto;
	padding:0 0 0;
}

/* リンク
---------------------------------------------- */
a {
	color: #5e5148;
	overflow: hidden;
	outline: none;
	text-decoration: none;
}
a:hover {
	color: #d57037;
	text-decoration: none;
}
/* header
---------------------------------------------- */
header{
	width:100%;
	background:#fff;
	padding:36px;
	text-align: center;
}
header .disc{
	padding:0 0 36px;
}
header .ttl-area{
	padding:0 0 36px;
}
header .ttl-area h1{
	display:inline-block;
	margin-right: 26px;
	width:174px;
}
header .ttl-area .tel-area{
	display:inline-block;
}
header nav ul li{
	display: inline-block;
	padding:12px 16px;
}
header nav ul li a{
	display: block;
	line-height:1;
	padding:0 20px;
	font-size: 18px;
	position: relative;
}
header nav ul li a::before {
		font-family: "Font Awesome 6 Free",sans-serif;
		content: "\f111";
		position: absolute;
		font-size:12px;
		font-weight: 900;
		top: 56%;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		left: 0px;
		color:#ff9d9d;
	}

/* footer
---------------------------------------------- */
footer{
	width:100%;
	background: #ff9d9d;
}
footer .copy-txt{
	width:100%;
	text-align: center;
	line-height:60px;
	font-size:13px;
	color: #fff;
}
/* index
---------------------------------------------- */
.main-area{
	width:100%;
	height:694px;
	background:url("../images/bg-main-min.png") no-repeat top center;
}
.main-area .inner{
	max-width:1200px;
	margin:0 auto;
	padding:48px 24px;
	text-align: right;
}

.about-area{
	padding:80px 0;
	background: #faf7f0;
}
.about-area .inner{
	padding:0 40px;
	margin:0 auto;
	max-width:1080px;
	text-align: center;
}
.about-area .inner .logo{
	padding:0 0 24px;
	width:55px;
	margin:0 auto;
}
.about-area .inner h2{
	padding:0 0 36px;
	font-size: 24px;
	color:#514840;
	font-weight: 500;
}
.about-area .inner .txt{
	padding:0 0 36px;
}

.kouka-area{
	padding:80px 0;
}
.kouka-area .inner{
	padding:0 40px;
	margin:0 auto;
	max-width:1080px;
	text-align: center;
}
.kouka-area .inner .logo{
	padding:0 0 24px;
	width:55px;
	margin:0 auto;
}
.kouka-area .inner h2{
	padding:0 0 36px;
	font-size: 24px;
	color:#514840;
	font-weight: 500;
}
.kouka-area .inner .txt-read{
	padding:0 0 60px;
	text-align: left;
}
.kouka-area .inner .txt{
	padding:0 0 24px;
	margin-top:60px;
	text-align: left;
}
.kouka-area .inner table{
	margin-bottom: 24px;
	font-size:14px;
}
.kouka-area .inner table th{
	padding:16px;
	background: #faf7f0;
	border: 1px solid #dfdfdf;
	width:30%;
}
.kouka-area .inner table td{
	padding:16px 32px;
	text-align: left;
	border: 1px solid #dfdfdf;
}
.kouka-area .inner .txt-ryui{
	font-size:14px;
	text-align: left;
	margin-bottom: 24px;
}

.voice-area{
	padding:80px 0;
	background: #faf7f0;
}
.voice-area .inner{
	padding:0 40px;
	margin:0 auto;
	max-width:1080px;
	text-align: center;
}
.voice-area .inner .logo{
	padding:0 0 24px;
	width:55px;
	margin:0 auto;
}
.voice-area .inner h2{
	padding:0 0 6px;
	font-size: 24px;
	color:#514840;
	font-weight: 500;
}
.voice-area .inner .txt{
	font-size: 14px;
	margin-bottom:60px;
}
.voice-area .inner .box{
	width:860px;
	margin:0 auto 40px;
	padding:40px;
	background: #fff;
	border-radius: 24px;
	text-align: left;
}
.voice-area .inner .box .thum{
	width:150px;
	float:left;
}
.voice-area .inner .box .txt-box{
	margin-left:190px;
}
.voice-area .inner .box .txt-box .ttl{
	padding:0 0 12px;
	font-size:13px;
}
.voice-area .inner .box .txt-box .namae{
	display: inline-block;
	margin-right:16px;
}
.voice-area .inner .box .txt-box .hoshi{
	display: inline-block;
	color:#ff9d9d;
}
.voice-area .inner .box .txt-box .txt-voice{
	font-size:14px;
}

.price-area{
	padding:80px 0;
}
.price-area .inner{
	padding:0 40px;
	margin:0 auto;
	max-width:1080px;
	text-align: center;
}
.price-area .inner .logo{
	padding:0 0 24px;
	width:55px;
	margin:0 auto;
}
.price-area .inner h2{
	padding:0 0 36px;
	font-size: 24px;
	color:#514840;
	font-weight: 500;
}
.price-area .inner .box{
	margin-bottom:60px;
}
.price-area .inner .box h3{
	padding:12px;
	color:#fff;
	background: #635347;
	margin-bottom:40px;
	font-size: 20px;
	font-weight: 500;
}
.price-area .inner .box .txt-price{
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 16px;
}
.price-area .inner .box .txt{
	margin-bottom:40px;
}
.price-area .inner .plus-box{
	width:860px;
	margin:0 auto 40px;
	padding:40px;
	border:7px solid #ffe5e5;
	border-radius: 16px;
	text-align: left;
}
.price-area .inner .plus-box .photo{
	width:190px;
	float:left;
}
.price-area .inner .plus-box .txt-area{
	margin-left:230px;
	font-size:14px;
}
.price-area .inner .plus-box .txt-area h4{
	color:#db5a5a;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.68;
	margin-bottom:12px;
}
.price-area .inner .box span{
	font-size: 0.75em;
}
.price-area .inner .box .txt-ryui{
	margin-bottom:60px;
}
.price-area .inner .box hr{
	background-color: #ccc;
  border: 0;
  height: 1px;
  margin: 48px 35%;
}

.kihon-area{
	padding:80px 0;
	background: #faf7f0;
}
.kihon-area .inner{
	padding:0 40px;
	margin:0 auto;
	max-width:1080px;
	text-align: center;
}
.kihon-area .inner .logo{
	padding:0 0 24px;
	width:55px;
	margin:0 auto;
}
.kihon-area .inner h2{
	padding:0 0 36px;
	font-size: 24px;
	color:#514840;
	font-weight: 500;
}
.kihon-area .inner .txt-area{
	padding:0 0 60px;
	font-size: 14px;
}
.kihon-area .inner .photo-area{
	padding:0 0 60px;
	width:900px;
	margin:0 auto;
}
.news-area{
	padding:80px 0;
	background: #ffe5e5;
}
.news-area .inner{
	padding:0 40px;
	margin:0 auto;
	max-width:980px;
	text-align: center;
}
.news-area .inner .base{
	padding:60px 60px 0;
	width:100%;
	border-radius: 24px;
	background: #fff;
}
.news-area .inner .base h2{
	padding:0 0 36px;
	font-size: 32px;
	color:#f88080;
	font-weight: 700;
}
.news-area .inner .base .txt-catch{
	margin: 0 0 60px;
}
.news-area .inner .base .box{
	margin-bottom: 80px;
}
.news-area .inner .base .box h3{
	padding:0 0 12px;
	font-size: 18px;
	font-weight: 700;
}
.news-area .inner .base .box .img{
	margin-bottom: 24px;
	max-width:607px;
	width:100%;
	display: inline-block;
}
.news-area .inner .base .box .img-2{
	margin-bottom: 24px;
	max-width:300px;
	width:70%;
	display: inline-block;
}
.news-area .inner .base .box .txt{
	margin-bottom: 24px;
	font-size: 15px;
}

/*===========================================================================*/
/*  media quary:768px  */
/*===========================================================================*/

@media screen and (max-width: 769px) {
/* 共通基本スタイル
---------------------------------------------------------------------------- */
	.l{
		float:none;
	}
	.r{
		float:none;
	}
	body {
		font-size: 16px;
		min-width: 100%;
		line-height: 1.86;
	}
	/* header
---------------------------------------------- */
	#page-top {
		position: fixed;
		bottom: 0px;
		right: 0px;
		z-index:9999;
		width:60px;
	}
	/* header
---------------------------------------------- */
header{
	padding:0;
	text-align: center;
}
header .disc{
	padding:36px 6px 36px;
	font-size:11px;
}
header .ttl-area{
	padding:0 0 36px;
}
header .ttl-area h1{
	margin-right: 0;
	width:148px;
}
header nav ul{
	font-size: 0;
	background: #ffcfcf;
	padding:12px 6px;
}
header nav ul li{
	width:33.33%;
	padding:2px;
}
header nav ul li.li-50{
	width:50%;
}
header nav ul li a{
	display: block;
	line-height:1;
	padding:12px 6px 14px;
	position: static;
	font-size: 12px;
	background: #fff;
	border-radius: 5px;
}
header nav ul li a::before {
		display: none;
	}

/* footer
---------------------------------------------- */
footer .copy-txt{
	line-height:60px;
	font-size:12px;
	padding-bottom:72px;
}
/* index
---------------------------------------------- */
.main-area{
	width:100%;
	height:auto;
	background:url("../images/bg-main-min.png") no-repeat top center;
	background-size: cover;
}
.main-area .inner{
	width:100%;
	margin:auto;
	padding:36px 0px 48px;
	text-align: right;
}
.main-area .inner img{
	width:30%;
	padding:0px;
}

.about-area{
	padding:80px 0;
	background: #faf7f0;
}
.about-area .inner{
	padding:0 24px;
	margin:0 auto;
	max-width:1080px;
	text-align: center;
}
.about-area .inner .logo{
	padding:0 0 16px;
	width:55px;
	margin:0 auto;
}
.about-area .inner h2{
	padding:0 0 36px;
	font-size: 20px;
}
.about-area .inner .txt{
	padding:0 0 36px;
	text-align: left;
}

.kouka-area{
	padding:80px 0;
}
.kouka-area .inner{
	padding:0 24px;
}
.kouka-area .inner .logo{
	padding:0 0 16px;
	width:55px;
	margin:0 auto;
}
.kouka-area .inner h2{
	padding:0 0 36px;
	font-size: 20px;
}
.kouka-area .inner .txt-read{
	padding:0 0 60px;
	text-align: left;
}
.kouka-area .inner .txt{
	padding:0 0 24px;
	margin-top:60px;
	text-align: left;
}
.kouka-area .inner table{
	margin-bottom: 24px;
	font-size:13px;
}
.kouka-area .inner table th{
	padding:16px 6px;
	background: #faf7f0;
	border: 1px solid #dfdfdf;
	width:30%;
}
.kouka-area .inner table td{
	padding:16px;
	text-align: left;
	border: 1px solid #dfdfdf;
}
.kouka-area .inner .txt-ryui{
	font-size:13px;
	text-align: left;
	margin-bottom: 24px;
}

.voice-area{
	padding:80px 0;
	background: #faf7f0;
}
.voice-area .inner{
	padding:0 24px;
}
.voice-area .inner .logo{
	padding:0 0 16px;
	width:55px;
	margin:0 auto;
}
.voice-area .inner h2{
	padding:0 0 6px;
	font-size: 20px;
}
.voice-area .inner .txt{
	font-size: 14px;
	margin-bottom:60px;
}
.voice-area .inner .box{
	width:100%;
	margin:0 auto 40px;
	padding:24px;
	background: #fff;
	border-radius: 12px;
	text-align: left;
}
.voice-area .inner .box .thum{
	width:150px;
	float:none;
	margin:0 auto 24px;
}
.voice-area .inner .box .txt-box{
	margin-left:0;
}
.voice-area .inner .box .txt-box .ttl{
	padding:0 0 16px;
	font-size:13px;
	text-align: center;
}
.voice-area .inner .box .txt-box .namae{
	display: inline-block;
	margin-right:10px;
}
.voice-area .inner .box .txt-box .hoshi{
	display: inline-block;
	color:#ff9d9d;
}
.voice-area .inner .box .txt-box .txt-voice{
	font-size:14px;
}

.price-area{
	padding:80px 0;
}
.price-area .inner{
	padding:0 24px;
}
.price-area .inner .logo{
	padding:0 0 16px;
	width:55px;
	margin:0 auto;
}
.price-area .inner h2{
	padding:0 0 36px;
	font-size: 20px;
}
.price-area .inner .box{
	margin-bottom:40px;
}
.price-area .inner .box h3{
	padding:12px;
	color:#fff;
	background: #635347;
	margin-bottom:40px;
	font-size: 20px;
	font-weight: 500;
}
.price-area .inner .box .txt-price{
	font-size: 22px;
	font-weight: 500;
	margin-bottom: 16px;
}
.price-area .inner .box .txt{
	margin-bottom:40px;
	text-align: left;
}
.price-area .inner .plus-box{
	width:100%;
	margin:0 auto 40px;
	padding:36px 24px;
	border:7px solid #ffe5e5;
	border-radius: 16px;
	text-align: left;
}
.price-area .inner .plus-box .photo{
	width:190px;
	float:none;
	margin:0 auto 24px;
}
.price-area .inner .plus-box .txt-area{
	margin-left:0px;
	font-size:14px;
}
.price-area .inner .plus-box .txt-area h4{
	color:#db5a5a;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.68;
	margin-bottom:24px;
}
.price-area .inner .box span{
	font-size: 0.75em;
}
.price-area .inner .box .txt-ryui{
	margin-bottom:60px;
	text-align: left;
}
.price-area .inner .box hr{
	background-color: #ccc;
  border: 0;
  height: 1px;
  margin: 48px 35%;
}

.kihon-area{
	padding:80px 0;
}
.kihon-area .inner{
	padding:0 24px;
}
.kihon-area .inner .logo{
	padding:0 0 16px;
	width:55px;
	margin:0 auto;
}
.kihon-area .inner h2{
	padding:0 0 36px;
	font-size: 20px;
}
.kihon-area .inner .txt-area{
	padding:0 0 60px;
	font-size: 14px;
}
.kihon-area .inner .photo-area{
	padding:0 0 60px;
	width:100%;
}
.kihon-area .inner .photo-area .photo{
	padding:0 0 20px;
}

.news-area{
	padding:16px 0;
}
.news-area .inner{
	padding:0 16px;
}
.news-area .inner .base{
	padding:30px 2px;
	border-radius: 16px;
}
.news-area .inner .base h2{
	padding:0 0 20px;
	font-size: 24px;
}
.news-area .inner .base .txt-catch{
	margin: 0 0 60px;
	font-size: 14px;
}
.news-area .inner .base .box{
	margin-bottom: 80px;
}
.news-area .inner .base .box h3{
	padding:0 0 12px;
	font-size: 16px;
	font-weight: 700;
}
.news-area .inner .base .box .img{
	margin-bottom: 24px;
	max-width:300px;
	width:70%;
	display: inline-block;
}
.news-area .inner .base .box .img-2{
	margin-bottom: 24px;

}
.news-area .inner .base .box .txt{
	margin-bottom: 24px;
	font-size: 14px;
}

.ban-tel {
	position: fixed;
	bottom: 4px;
	left: 4px;
	z-index:9999;
	width:76%;
	display: inline-block;
	background:#fff;
	z-index: 100;
	padding:5px 24px 5px 5px;
	border-radius: 7px;
	border:1px solid #ff9d9d;
}
.ban-tel img{
	width:100%;
}
}




  /*---------- 出し分け　幅768pxまでの指定 ----------*/
@media screen and (max-width:768px) {
	.pc{
		display:none !important;
	}
}
  /*---------- 出し分け　幅769pxからの指定 ----------*/
@media screen and (min-width:769px) {
	.sp{
		display:none !important;
	}
}