@charset "UTF-8";

/* -----------------------------------------------
rest part
----------------------------------------------- */

/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/

html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,small, strong, sub, sup, var,b, i,dl, dt, dd,ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}

body {line-height:1;}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display:block;}

ul,ol {list-style:none;}

blockquote, q {quotes:none;}

blockquote:before, blockquote:after,
q:before, q:after {content:'';content:none;}

a {margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}

/* change colours to suit your needs */
ins {background-color:#ff9;color:#000;text-decoration:none;}

/* change colours to suit your needs */
mark {background-color:#ff9;color:#000;font-style:italic;font-weight:bold;}

del {text-decoration: line-through;}

abbr[title], dfn[title] {border-bottom:1px dotted;cursor:help;}

table {border-collapse:collapse;border-spacing:0;}

/* change border colour to suit your needs */
hr {display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0;}

input, select {vertical-align:middle;}


img {
/*	max-width: 100%;*/
vertical-align:middle;
}

/* -----------------------------------------------
common part
----------------------------------------------- */

/* clearfix */
.cf:after {  content: " "; display: block; clear: both; height: 0; }
.oldie .cf { *zoom:1; }

/* base */

html{font-size: 10px;}

body {
	color: #151515;
	background-color:#fff;
	font-size: 12px;
	font-size: 1.2rem;
	text-align: left;
	font-family:'ヒラギノ角ゴ Pro W3',Hiragino Kaku Gothic Pro,'メイリオ',Meiryo,'ＭＳ Ｐゴシック', Osaka, sans-serif;
	line-height:1.4;
	-webkit-text-size-adjust:none;
}

a {
	color: #151515;
	/*color: #e55301;*/
	text-decoration: none;
}

.sentenceBox{
	margin:0 0 10px;
}
.list{
	list-style-type:disc;
	margin:0 0 0 20px;
}

input[type=text],
input[type=number],textarea{
	width: 100%;
	margin: 0;
	padding: 1px 6px 0;
	border: 1px solid #8c8c8c;
	font-size: 1.2rem;
	line-height: 29px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

input[type=checkbox] {
	margin-right: 4px;
	position: relative;
	top:-1px;
}

.btn:hover
{
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}


/* -----------------------------------------------
module
----------------------------------------------- */
.btnRadius a {
	display: block;
	border-radius: 6px;
	border: 1px solid #eeeeee;
	-webkit-box-shadow: 0 3px 1px 0px #eeeeee,0 2px 1px -1px rgba(255,255,255,0.4) inset;
	box-shadow: 0 3px 0px 0 #eeeeee,0 2px 0 -1px rgba(255,255,255,0.4) inset;
	text-align: center;
	line-height: 40px;
	text-decoration: none;
}
.radiusMax{
	border-radius: 30px;
}
.cwrap{
	padding:0 15px;
}
.section01{
	margin-bottom:10px;
}
.section02{
	margin-bottom:20px;
}
.imgRight{
	float:right;
	margin:0 0 10px 10px;
}
.imgbder{
	border:#dfdfdf solid 1px;
}
.mb5{
	margin-bottom:5px;
}
.mb10{
	margin-bottom:10px;
}
.mb15{
	margin-bottom:15px;
}
.mb20{
	margin-bottom:20px;
}
.center{
	text-align:center;
}
.indent{
	padding-left:1em;
	text-indent:-1em;
	line-height:1.2;
}
.caution{
	color:#cc0000;
}
.marker{
	background:#d4fabf;
}
.table{
	width:100%;
}
.table th,
.table td{
	padding:3px;
}
.table th{
	background:#e9ffc8;
	border-right:#fff solid 1px;
	border-bottom:#fff solid 1px;
	color:#579300;
	vertical-align:middle;
}
.table td{
	border-bottom:#fff solid 1px;
	background:#f2f2f2;
}

.cnav{
	width:100%;
	background:#eaf0a4;
	border-radius:3px;
	margin:0 0 10px;
	overflow:hidden;
}
.cnav li{
	text-align:center;
	float:left;
	width:25%;
}
.cnav li a{
	display:block;
	width:100%;
	color:#589700;
	font-weight:bold;
	padding:10px 0;
	border-right:#fff dotted 1px;
}
.cnav li a:hover{
	color:#f7ffbc;
	background:#579300;
}
.cnav li:last-child a{
	border:none;
}
.imgcWrap{
	display:table;
	padding-bottom:10px;
}
.imgcWrap p{
	display:table-cell;
	vertical-align:top;
}
.imgcWrap .cImg + .cTxt{
	padding-left:10px;
}
.imgcWrap .cTxt + .cImg{
	padding-left:10px;
}

/* -----------------------------------------------
header
----------------------------------------------- */
#header {
	position:relative;
	text-align:center;
	width:100%;
	background:#fff;
}
#header h1{
	margin:6px 0;
}
#siteDes{
	color:#fff;
	font-size: 12px;
	font-size: 1.2rem;
	font-weight:bold;
	padding:5px 0;
	background:url(../img/bg_garden01.png);
}
#logoArea{
	padding:0 5px;
}
#logoArea h1{
	float:left;
	width:119px;
	text-align:center;
	padding:0;
}
#logoArea h1 img{
	padding-bottom:4px;
}
#logoArea h1 img:last-child{
	padding-bottom:0;
}
#logoArea .telBtn{
	float:right;
	width:40%;
	margin-top:9px;
	margin-bottom:0;
}
#logoArea .telBtn a{
	line-height: 32px;
	padding:0;
}
/* Add Code Rim Machiguchi(http://rim.hiho.jp/) */
#logoArea .mailBtn{
	float:right;
	width:50px;
	margin-top:9px;
	margin-bottom:0;
	margin-right:5px;
}
#logoArea .mailBtn a{
	line-height: 32px;
	padding:0;
}
/* /Add Code Rim Machiguchi(http://rim.hiho.jp/) */

/* -----------------------------------------------
contents
----------------------------------------------- */
#contents {
	margin:0 0 20px;
}
.title01{
	text-align:center;
	color:#fff;
	font-size: 18px;
	font-size: 1.8rem;
	background:url(../img/bg_garden02.png);
	text-shadow: 0 1px 1px rgba(0,0,0,0.4);
	margin:0 0 10px;
	padding:8px 0;
}
#contents .title02{
	color:#fff;
	font-size: 16px;
	font-size: 1.6rem;
	background:#569200;
	border-radius:30px;
	text-shadow: 0 1px 1px rgba(0,0,0,0.4);
	margin:0 0 8px;
	padding:4px 12px;
}
#contents .title03{
	color:#569200;
	font-size: 14px;
	font-size: 1.4rem;
	margin:0 0 5px;
}
#contents h1 + .nlist{
	margin-top:-10px;
}
#contents .nlist li{
	font-size: 14px;
	font-size: 1.4rem;
	padding:12px 15px;
	border-bottom:#c9c9c9 solid 1px;	
}

/* -----------------------------------------------
telArea
----------------------------------------------- */
.telArea{
	background:#dfffcb;
	padding:10px 15px;
	margin:0 0 20px;
}
.telBtn{
	margin-top:5px;
	margin-bottom:16px;
}
.telBtn a{
	display: block;
	padding-top: 2px;
	border-color: #2a7f00;
	background-image: #3f9b11;
	background-image: -webkit-linear-gradient(top, #42a711 1%, #3f9b11 100%);
	background-image: -moz-linear-gradient(top, #42a711 1%, #3f9b11 100%);
	background-image: linear-gradient(top, #42a711 1%, #3f9b11 100%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.01, #42a711), color-stop(1, #3f9b11));
	-webkit-box-shadow: 0 6px 1px 0px #1e5a00,0 2px 1px -1px rgba(255,255,255,0.4) inset;
	box-shadow: 0 6px 0px 0 #1e5a00,0 2px 0 -1px rgba(255,255,255,0.4) inset;
	color: #fff;
	text-shadow: 0px -1px 1px #333;
	font-size: 1.5rem;
	font-weight:bold;
	line-height: 38px;
}
.telBtn a:hover{
	background-image: #35a100;
	background-image: -webkit-linear-gradient(top, #3bb300 1%, #35a100 100%);
	background-image: -moz-linear-gradient(top, #3bb300 1%, #35a100 100%);
	background-image: linear-gradient(top, #3bb300 1%, #35a100 100%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.01, #3bb300), color-stop(1, #35a100));
}
.telBtn img{
	position:relative;
	top:6px;
	vertical-align:baseline;
}
.btnRadiusMax{
	line-height:1;
	font-size: 12px;
	font-size: 1.2rem;
	text-align:right;
}
.btnRadiusMax a{
	display:inline-block;
	color:#fff;
	font-weight:bold;
	border-radius: 30px;
	background:#946419;
	padding:4px 8px 4px 4px;
}
.btnRadiusMax a:hover{
	background:#b56f00;
}
.btnRadiusMax a img{
	vertical-align:middle;
	padding-right:3px;
}

/* Add Code Rim Machiguchi(http://rim.hiho.jp/) */
/* -----------------------------------------------
mailArea
----------------------------------------------- */
.mailBtn{
	margin-top:5px;
	margin-bottom:16px;
}
.mailBtn a{
	display: block;
	padding-top: 2px;
	border-color: #2a7f00;
	background-image: #3f9b11;
	background-image: -webkit-linear-gradient(top, #42a711 1%, #3f9b11 100%);
	background-image: -moz-linear-gradient(top, #42a711 1%, #3f9b11 100%);
	background-image: linear-gradient(top, #42a711 1%, #3f9b11 100%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.01, #42a711), color-stop(1, #3f9b11));
	-webkit-box-shadow: 0 6px 1px 0px #1e5a00,0 2px 1px -1px rgba(255,255,255,0.4) inset;
	box-shadow: 0 6px 0px 0 #1e5a00,0 2px 0 -1px rgba(255,255,255,0.4) inset;
	color: #fff;
	text-shadow: 0px -1px 1px #333;
	font-size: 1.5rem;
	font-weight:bold;
	line-height: 38px;
}
.mailBtn a:hover{
	background-image: #35a100;
	background-image: -webkit-linear-gradient(top, #3bb300 1%, #35a100 100%);
	background-image: -moz-linear-gradient(top, #3bb300 1%, #35a100 100%);
	background-image: linear-gradient(top, #3bb300 1%, #35a100 100%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.01, #3bb300), color-stop(1, #35a100));
}
.mailBtn img{
	position:relative;
	top:6px;
	vertical-align:baseline;
}
/* /Add Code Rim Machiguchi(http://rim.hiho.jp/) */

/* -----------------------------------------------
nav
----------------------------------------------- */
.nav {
	padding-bottom:10px;
}
.nav h1{
	background:#f0ecca;
	border-radius: 6px;
	color:#77a400;
	text-align:center;
	margin:0 0 9px;
	padding:3px 0;
}
.nav ul{
	display:table;
	width:100%;
	margin:0 0 9px;
}
.nav li{
	display:table-cell;
	padding-right:9px;
	vertical-align:top;
}
.nav li:nth-child(3n+2){
	text-align:center;
}
.nav li:nth-child(3n+3){
	text-align:right;
	padding-right:0;
}
.nav li a{
	display:inline-block;
	width:100%;
	text-align:center;
	background:#f0ecca;
	border-radius: 6px;
	min-height:86px;
	vertical-align:middle;
}
.nav li a:hover{
	background:#fcf5bb;	
}
.nav li a img{
	vertical-align:middle;
	padding:10px 0 0;
}

/* -----------------------------------------------
twitter
----------------------------------------------- */
#twtArea{
	text-align:center;
	margin:0 0 10px;
	padding:0 0 10px;
	background:#fffceb;
}

/* -----------------------------------------------
sns
----------------------------------------------- */
.sbtn ul{
	display:table;
	width:100%;
	margin:0 0 20px;
}
.sbtn li{
	display:table-cell;
	padding-right:9px;
	line-height:1;
}
.sbtn li:last-child{
	padding:0;
}
.sbtn li a{
	display:inline-block;
	width:100%;
	text-align:center;
	background:#fff url(../img/ico_blank.png) no-repeat right 3px;
	background-size:12px 8px;
	border-radius: 6px;
	padding:10px 0;
}
.sbtn .sbtw a{
	background-color:#2ca7e0;
}
.sbtn .sbfb a{
	background-color:#3b5998;
}
.sbtn .sbblog a{
	background-color:#4dac26;
}
.sbtn li a:hover{
	opacity:0.8;
}

/* -----------------------------------------------
footer
----------------------------------------------- */
#footer {
	margin:0 0 20px;
}
#footer li{
	display:inline-block;
	font-size: 12px;
	font-size: 1.2rem;
	border-right:#333 solid 1px;
	margin:0 5px 0 0;
	padding:0 5px 0 0;
}
#footer li:last-child{
	border:none;
}
#footer a:hover{
	color:#41a511;
}
#footeLogo {
	margin-bottom: 8px;
	padding-bottom: 14px;
	border-bottom: 1px solid #d4d4d4;
	line-height: 0;
}
small{
	line-height:1;
	display:block;
	text-align:center;
	padding:7px 0 5px;
	background:#d1d1d1;
}

/* -----------------------------------------------
pagetop
----------------------------------------------- */
#pageTop{
	width:30px;
	height:30px;
	position: fixed;
	bottom:20px;
	right:20px;
}

/* 固定円形バー（下部吸着） */
.circle-cta-fixed{
  position:sticky; bottom:0; left:0; right:0; z-index:300;
  background:rgba(255,255,255,.98);
  border-top:1px solid #e5e7eb;
  box-shadow:0 -6px 18px rgba(0,0,0,.08);
  padding:
    8px
    env(safe-area-inset-right,8px)
    calc(8px + env(safe-area-inset-bottom,0px))
    env(safe-area-inset-left,8px);
  backdrop-filter:saturate(1.2) blur(4px);
}
.circle-cta-fixed__row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;                 /* 隙間は 6〜12 で調整 */
  max-width:720px; margin:0 auto;
}
.circle-cta-fixed .circle-cta__btn{
  aspect-ratio:1/1;
  border-radius:50%;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  text-decoration:none; color:#fff; font-weight:800;
  box-shadow:0 6px 16px rgba(0,0,0,.18);
}
.circle-cta-fixed .circle-cta__btn:active{ transform:translateY(1px); filter:brightness(.95); }
.circle-cta-fixed .circle-cta__btn{ font-size:18px; } /* 絵文字アイコンの大きさ */
.circle-cta-fixed .circle-cta__label{ display:block; font-size:12px; line-height:1.2; margin-top:4px; }


/* 円形ボタンの色（固定バー用） */
.circle-cta__tel  { background: linear-gradient(180deg,#1ec8ff 0%,#0094d6 100%); }
.circle-cta__line { background: linear-gradient(180deg,#06d755 0%,#05a947 100%); }
.circle-cta__mail { background: linear-gradient(180deg,#ffb347 0%,#ff7c00 100%); }







