
/*基本*/
@charset "UTF-8";

body{margin:0px;
display: flex;
flex-direction: column;
min-height: 100vh;
}
img{vertical-align:top;}
img{image-rendering: -webkit-optimize-contrast;}/*クロムの縮小ぼやけを回避*/
video{vertical-align:top;}
html{scroll-padding-top:120px;} /* 固定ヘッダの高さ分 */

p{line-height:1.8em;color:#333;text-align:justify;}
a{color:#00642a;text-decoration:none;}
a:hover{color:#000;text-decoration:underline;transition:.3s;}

.fff{font-family:A1 Mincho;}
.ffmm{font-family:Midashi Min MA31;}

.imw{padding:18px;}

.bgsiro{background:#fff;color:#333;}
.bgkuro{background:#000;color:#fff;}
.bgsasi{background:#679c80;color:#333;}

.bgor{background:#fef2e4;color:#333;}

.fll{float:left;}
.flr{float:right;}
.cf{clear:both;}
.tac{text-align:center;}
.tar{text-align:right;}
.mtptl{margin:10px;paddign:0px;}
.fcf{color:#fff;}

.w1{width:100px;}
.w2{width:200px;}
.w3{width:300px;}
.w4{width:400px;}
.w5{width:500px;}
.w6{width:600px;}
.w7{width:700px;}
.h1{height:300px;}
.wf{width:100%;}
.cobl{color:#000 !important;}
.ptlit{padding-top:15px;}
.ptmid{padding-top:30px;}
.mblit{margin-bottom:30px !important;}
.mtlit{margin-top:30px !important;}
.mtmid{margin-top:50px !important;}
.mpt0{margin-top:0px;padding-top:0px;}
.fwb{font-weight:bold;}

.ff{opacity:0;transform:translateY(30px);transition:all 1s;}
.ad1{transition-delay:0s;}
.ad2{transition-delay:0.2s;}
.ad3{transition-delay:0.4s;}
.ad4{transition-delay:0.6s;}
.ad5{transition-delay:0.8s;}
.ad6{transition-delay:1.0s;}

.iv:hover{filter:brightness(120%);transition:.3s;}


.naka{width:940px;padding:20px 10px;margin:auto;}.naka_d{width:1280px;padding:20px 10px;margin:auto;}
/*ヘッダ*/

div#head{
	background:url(im/hback2.gif);color:#fff;
	font-family:A1 Mincho;
	z-index:9999;
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	-webkit-text-size-adjust:100%;
	opacity:0.9;
}

	div#hn{width:1280px;height:110px;padding:0px;margin:auto;font-size:18px;}
	div.hl{float:left;width:180px;text-align:center;margin-top:54px;}
	div.hc{float:left;width:200px;text-align:center;margin-top:10px;}
	.headkl{background:url(im/headkl.png) no-repeat;}
	.headkr{background:url(im/headkr.png) no-repeat;}
	
/*フッタ*/
div#foot{
	font-family:A1 Mincho;
	-webkit-text-size-adjust:none;
	font-size:1.1em;
	background:#205f4a;
	color:#fff;
	text-align:center;
	padding:40px;
	margin-top:auto;
}
#foot a{color:#fff;text-decoration:none;}

.link_w{
text-align:center;
width:300px;
background:#225a22;
border:1px solid #fff;
border-radius:8px;
margin:0px auto;
padding:20px;
}


/*-----*/

h2{
font-family:A1 Mincho;
-webkit-text-size-adjust:100%;
font-size:1.5em;
text-align:center;
letter-spacing:0.2em;
padding:10px 0px 14px 0px;
margin:0px auto;
}
h2.tsr{font-size:1.1em;}

h3{
-webkit-text-size-adjust:100%;
font-family:A1 Mincho;
letter-spacing:0.4em;
margin:0px;
padding:40px 0px 10px 0px;
text-align:center;
font-size:24px;
line-height:28px;
font-weight:bold;
color:#418d41;
border-bottom:2px solid #418d41;
}
h3.f{color:#fff;border-bottom:1px solid #fff;}
.h3jp{font-family:A1 Mincho;font-size:16px;}

h4{
letter-spacing:0.1em;
color:#0f6d37;
margin:10px 0px 0px 0px;
padding:3px 0px;
font-size:1.1em;
}
h4.f{color:#fff;}
h4.story{
letter-spacing:0em;
margin-top:20px;
text-align:center;
font-family:A1 Mincho;
font-size:1.2em;
border-bottom:2px dotted #c2d7cc;
}
h5{
letter-spacing:0.1em;
color:#111;
margin:10px 0px 0px 0px;
padding:3px 0px;
font-size:1.1em;
}

div.top4bot{
-webkit-text-size-adjust:100%;
font-family:A1 Mincho;
width:22%;
height:170px;
float:left;
text-align:center;
background:#679c80;
color:#fff;
padding:0.5%;
padding-bottom:12px;
margin-left:1%;
margin-right:1%;
border-radius:8px;
box-shadow:0px 0px 20px 0px rgba(0, 0, 0, 0.5);
margin-bottom:30px;margin-top:30px;
}
.t4btj{font-size:20px;letter-spacing:0.2em;}
.t4bte{font-size:16px;letter-spacing:0.1em;}
.top4bot img{margin-top:10px;}

.f_lg{color:#a9dc48 !important;}

/*-----*/

.qico{
background:#ff583f;
background:#284c3f;
color:#fff;
padding:4px 10px;
border-radius:50%;
margin:0px 10px 0px 0px;
}
.answ{
background:#fff6e1;
background:#fff5f7;
background:#fdffe8;
background:#f1fcf6;
color:#333;
border-radius:10px;
padding:10px;
margin-bottom:30px;
}

a.bot{
background:#569172;
color:#fff;
padding:10px;
border-radius:8px;
text-decoration: none;
}
a.bot:hover{
background:#11392a;
}

.aiw{
background:#fffaee;
background:#ebfff4;
background:#fff;
width:680px;
margin:10px auto;
padding:10px 30px;
border-radius:10px;
font-size:1.1em;
line-height:2em;
}
.sirow{
margin:10px auto;
width:90%;
background:#fff;
border-radius:10px;
padding:10px 24px;
}
.uta{float:left;width:50%;text-align:center;}


.crcon{width:90%;margin:auto;text-align:center;-webkit-text-size-adjust:100%;font-size:1.2em;}
.crcon p{text-align:center !important;}
.crtxt{
float:left;width:45%;margin:1%;padding:1%;
background:#eef1f0;
background:#fff;
border:1px solid #ddd;
border-radius:10px;
-webkit-text-size-adjust:100%;
font-size:1em;
}
.crtxt ul{margin-left:-14px;}
.crtxt li{margin:12px 0px;line-height:1.6em;}

.sabiw{
float:left;
width:32%;
margin:0.5%;
text-align:center;
}
.sabiw img{border-radius:4px;}
/*-----*/
.conbox{
text-align:center;
float:left;
color:#fff;
margin:0.2%;
padding:30px 0px;
border-radius:10px;
}
.cbtel{width:49%;background:#ff7050;}
.cbmail{width:49%;background:#284c3f;}
/*-----*/

.nagare{
display:flex;
flex-wrap:wrap;
}
.nagare div{
width: calc(25% - 22px); /* margin padding分を引く */
height:200px;
margin:10px 1px;
padding:10px;
background:#679c80;
border-radius:4px;
}
.maru{background:#fff;color:#679c80;padding:10px 15px;border-radius:50%;font-weight:bold}

.order{
display:flex;
flex-wrap:wrap;
}
.order div {
width: calc(33.3% - 22px); /* margin padding分を引く */
height:220px;
margin:10px 1px;
padding:10px;
background:#284c3f;
border-radius:4px;
}
/*-----*/

table{width:100%;border-spacing:0;}
th{border-bottom:dotted 1px #007832;padding:20px;font-size:1.1em;}
td{border-bottom:dotted 1px #007832;padding:20px;font-size:1em;}
/*-----*/
/* Float */
/*-----*/
.hvr-float{
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-float:hover, .hvr-float:focus, .hvr-float:active {
  -webkit-transform: translateY(-6px);
  transform: translateY(-6px);
}
/*-----*/

a.unl{
color:#fff;
position: relative;
display: inline-block;
text-decoration: none;
}

a.unl:after{
  position:absolute;
  bottom:-5px;
  left:0;
  content:'';
  width:100%;
  height:1px;
  background:#fff;
  opacity:0;
  visibility:hidden;
  transition:.3s;
}
a.unl:hover:after {
  bottom:0px;
  opacity:1;
  visibility:visible;
}
/*-----*/

.topiw{
border-radius:4px;
background:#fff;
padding:20px;
}
.topitit{
float:left;
width:900px;
margin:15px 0px 10px 0px;
padding:0px;
font-size:1.1em;
}
.tipihi{
color:#333;
margin:15px 0px 10px 0px;
float:left;
width:120px;
}
.topiul{clear:both;border-bottom:1px solid #aaa;}
.topiw a{color:#00642a;text-decoration:none;}
.topiw a:hover{color:#000;text-decoration:underline;transition:.3s;}
/*-----*/

.catew{
float:left;
text-align:center;
width:404px;
padding:0px 5px 12px 5px;
margin:5px;
background:#284c3f;
border-radius:8px;
}
.wnn{background:#fff;border:1px solid #b8e6d6;}
.catew:hover{background:#457d69;transition:.3s;}
.wnn:hover{border:1px solid #457d69;background:#fff;}
.cwd{width:195px;margin:4px;}
.cwd4h{font-size:1em;height:40px;}

#cattxt{
text-align:center;
width:700px;
margin:0px auto;
-webkit-text-size-adjust:100%;
font-size:1.1em;
background:url(im/mico3.png) no-repeat;
}
.smtx:hover{text-decoration:none;}
.kktx{font-size:0.9em;color:#666;}
.tktx{font-size:0.9em;color:#023f93;}

div.mmtit{
text-align:center;
background:#0b3a2a;
color:#fff;
}


/*-----*/
section{max-width:80%;margin:30px auto;}
a.btn_10 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 80px;
  box-sizing: border-box;
  background: #fff;
  position: relative;
}
a.btn_10 span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 80px;
  background: #ff684f;
  color: #fff;
  font-size:1.2em;
  font-weight:bold;
  box-sizing: border-box;
  letter-spacing: 0.1em;
  text-decoration: none;
  box-shadow: 0px 5px 12px #CAD4E2, -6px -6px 12px #FFF;
  border-radius: 4px;
  position: absolute;
  top: -5px;
  left: 0;
  transition-duration: 0.2s;
}
a.btn_10:hover span {
  left: 0;
  top: 0;
  box-shadow: 0 0 4px #CAD4E2, -2px -2px 4px #FFF;
}
/*-----*/

.mfth{
float:left;
width:160px;
height:30px;
padding:10px 0px 0px 0px;
margin:4px 0px;
font-weight:bold;
font-size:1.1em;
color:#679c80;
}
.mftd{
float:left;
width:740px;
padding:0px;
margin:10px 0px;
}
.mfbd{
clear:both;
border-bottom:1px dotted #679c80;
margin-bottom:20px;
}

p.dame{
margin:0px !important;
padding:2px 0px 0px 16px !important;
font-size:16px !important;
color:#b20e0f !important;
background:url(im/bi.gif) left no-repeat;
}

#topbn{margin:0px 0;}
#topbn img{margin:0px 10px;}

/*-----*/
input.bb{
	-webkit-appearance: none;
	width:300px;
	height:60px;
	margin:20px 0px;
	font-size:24px;
    color: #ffffff;
    background:#0a3627;
	border-radius:4px;
    font-weight: bold;
}
input.bb:hover{background:#1c654c;transition:.3s;}

input[type="text"]{
	border:1px solid #aaaaaa;
	margin:2px;
	padding:4px;
	font-size:16px;}
input[type="tel"]{
	border:1px solid #aaaaaa;
	margin:2px;
	padding:4px;
	font-size:16px;}
input[type="email"]{
	border:1px solid #aaaaaa;
	margin:2px;
	padding:4px;
	font-size:16px;}

textarea{
	border:1px solid #aaaaaa;
	margin:2px;
	padding:4px;
	font-size:16px;}
select{
	border:1px solid #aaaaaa;
	margin:2px;
	padding:4px;
	font-size:16px;}
input[type=radio]{
width:20px;
height:20px;
vertical-align: middle;
}
::placeholder{color:#999;}
/*-----*/
/*ページトップjavascript用*/
/*-----*/
#page-top{
	width:100px;
	height:110px;
	display:none;
	position:fixed;
	right:30px;
	bottom:60px;
}
 
#page-top p{
	margin:0;
	padding:0;
	text-align:center;
	background:url(im/pt.png);
}
#page-top p:hover{filter:brightness(120%);}
 
#move-page-top{
	color:#fff;
	line-height:110px;
	text-decoration:none;
	display:block;
	cursor:pointer;
}

/*追記　2025/05/27*/
#topbn img {
	width: 100%;
	max-width: 615px;
}

.topbn01 {
	margin-bottom: 20px !important;
}