@charset "utf-8";
/* CSS Document */


.flex{
  display: flex;
}
img{
  image-rendering: -webkit-optimize-contrast;
}

.Yu{
  	font-family:  "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Open Sans", "Helvetica Neue", Helvetica, "Arial",sans-serif;
}

.marugo {
	font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
}

.mincyo {
	font-family:"Yu Mincho","游明朝",YuMincho,"游明朝体","ヒラギノ明朝","MS P明朝",serif;
}

.container-xl .btn:active {
	border-color:transparent;
}

a:hover img {
	opacity: 0.8;
}
h1 a:hover img {
	opacity: 1.0;
}
.btn:hover {
	opacity: 0.8;
}
input[type="submit"]:hover {
	opacity: 0.8;
}
li.line a:hover ,
li.mail a:hover {
	opacity: 0.8;
}

.head-bg{
  background-color: #fff;
}
header h1{
  margin: 0;
}

.headCach {
	background-color: #bac81a;
	font-size:0.75em;
	padding:2px 0;
	color:#000;
}

._inner{
  max-width: 1170px;
  margin: 0 auto;
}
header ._inner.flex{
  justify-content: space-between;
  padding: 0.15em 0;
}

header .telBn {
	margin-top:14px;
}
header .contactBn {
	margin-top:7px;
}

.g-nav-wrap{
  background-color: #2c7e28;
}
.g-nav-wrap ul.flex{
  list-style: none;
  justify-content:space-around;
}
.g-nav-wrap ul li a{
  color: #fff;
  text-decoration: none;
}
/*
.g-nav-wrap ul ul{
	display: block;
}*/
.g-nav-wrap ul li.pcnav-sub a {
  color: #fff;
  cursor:pointer;
}
.g-nav-wrap ul li.pcnav-sub ul {
    visibility: hidden;
    position: absolute;
    top: 100%;
    left: 50%;
    width: 100%;
    transform: translateX(-50%);
    transition: all 0.3s ease-in;
    box-shadow: 0 1px 3px 1px rgb(0 0 0 / 0.08);
    z-index: 9999;
    opacity: 0;
  list-style: none;
  justify-content:space-around;
  background-color: #F1F5B6;
  padding-left:0;
}
.g-nav-wrap ul li.pcnav-sub:hover ul {
    visibility: visible;
    opacity: 1;
}
.g-nav-wrap ul li.pcnav-sub ul li {
	border-bottom:1px dashed #2C7E28;
	width:90%;
	margin:0 auto;
}
.g-nav-wrap ul li.pcnav-sub ul li a {
    color:#2C7E28;
	padding:0.4em 1em;
	display: block;
	margin:0.2em 0;
	height:100%;
}
.g-nav-wrap ul li.pcnav-sub ul li a:hover {
	color:#2C7E28 !important;
	background-color: #e5e988;
}
.g-nav-wrap  ul li li{
  text-align: left;
}

.g-nav-wrap ul li li:hover{
  background-color: #F1F5B6;
}

.g-nav-wrap  ul li li::after{
  background: none;
}
.g-nav-wrap ul li li:first-child::before{
  background: none;
}

.g-nav-wrap ul li.pcnav-sub ul li:last-child {
	border-bottom:none;
}

.g-nav-wrap ul li{
	position: relative;
  text-align: center;
flex:1;
}
.g-nav-wrap ul li:hover{
  background-color: #5EA543;
  transition: 0.2s;
}

.g-nav-wrap ul li::after{
  position: absolute;
  content: "";
  width: 1px;
  height: calc(100% - 2px);
  background-color: #4a8e46;
  top: 1px;
  right:0;
}
.g-nav-wrap ul li:last-child::after{
  position: absolute;
  content: "";
  width: 0;
}



/*ナビゲーションのリンク設定*/
.g-nav-wrap  ul.nav > li {
	padding-bottom:12px;
}
.g-nav-wrap  ul.nav li a{
	display: inline-block;
	text-decoration: none;
	color: #fff;
	/*padding:20px 35px;*/
  padding: 12px 12px 0 12px;
	transition:all .3s;
  font-size: 1em;
  position: relative;
  height:100%;
  width:100%;
	margin:11px 0;
	font-weight:bold;
}
.g-nav-wrap  ul.nav > li:nth-child(2) a  {
	margin:0;
}

.g-nav-wrap ul li a:hover{
	/*opacity: 0.6;*/
  transition: 0.2s;
	color: #fff !important;
}


.g-nav-wrap ul li.has-child a.dlop::before{
	content:'';
	position: absolute;
	right:-5px;
	top:15px;
	width:7px;
	height:7px;
	border-top: 2px solid #fff;
    border-right:2px solid #fff;
    transform: rotate(135deg);
}

.g-nav-wrap li.has-child ul{
    /*絶対配置で位置を指定*/
	position: absolute;
	left:0;
	top:40px;
	z-index: 100;
    /*形状を指定*/
	background:rgba(70,186,242,0.9);
	width:240px;
    /*はじめは非表示*/
	visibility: hidden;
	opacity: 0;
    /*アニメーション設定*/
	transition: all .3s;
  list-style: none;
  padding: 0;
}

/*hoverしたら表示*/
.g-nav-wrap li.has-child:hover > ul,
nav li.has-child ul li:hover > ul,
nav li.has-child:active > ul,
nav li.has-child ul li:active > ul{
  visibility: visible;
  opacity: 1;
}

/*ナビゲーションaタグの形状*/
.g-nav-wrap li.has-child ul li a{
	color: #fff;
	border-bottom:solid 1px rgba(255,255,255,0.6);
}

.g-nav-wrap li.has-child ul li:last-child > a{
 border-bottom:none;
 }

.g-nav-wrap li.has-child ul li a:hover,
.g-nav-wrap li.has-child ul li a:active{
	background:#3577CA;
}


@media (max-width: 1200px) {
  header ._inner.flex{
  flex-direction: column;
  text-align: center;
  }
  header h1{
    padding-bottom: 1rem;
  }
  .head-banner.flex{
    justify-content: center;
  }
.g-nav-wrap{
  display: none;
}

}

@media (max-width: 640px) {
	header h1{
		width: calc(100% - 60px);
		padding-top: 5px;
		padding-bottom: 0;
	}
	.head-banner.flex{
		flex-direction: column;
	}
	header .telBn {
		margin-top: 10px;
	}
	header .contactBn {
		margin-bottom: 10px;
	}
}


/*スマホメニュー
--------------------------------------*/
#g-nav{
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position: fixed;
    z-index: 999;
    /*ナビのスタート位置と形状*/
	top: -120%;
    left:0;
	width:100%;
    height: 100vh;/*ナビの高さ*/
	background:rgba(0,0,0,0.8);
    /*動き*/
	transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive{
    top: 0;
}
/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999;
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    z-index: 999;
    right: 0;
    left:0;
    margin: 0 auto;
    padding: calc(70px + 1.5em) 10px 0;
    /*transform: translate(-50%,-50%);*/
}
#g-nav.panelactive.fixed ul {
	padding: 70px 10px 0;
}
@media (max-width: 760px) {
	#g-nav ul {
	    padding: calc(70px + 2.5em) 10px 0;
	}
}
/*リストのレイアウト設定*/

#g-nav li{
	list-style: none;
  text-align: left;
  border-bottom: 1px solid #fff;
  background-color: #339933;
  list-style: none;
  position: relative;
  padding-left: 1.8em;
}
#g-nav ul li:before {
  font-family: "Font Awesome 5 Free";
  content: "\f144";
  position: absolute;
  left : 10px;
  color: #fff;
  font-weight: bold;
  top:10px;
}
#g-nav li:last-child {
	border-bottom:none;
}

#g-nav li a{
	color: #fff;
	text-decoration: none;
	padding: 10px;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold;
}

#g-nav li.spnav-sub {
}
#g-nav li.spnav-sub a {
}

#g-nav li ul {
	padding-top:0 !important;
	position: relative;
	top:0;
	left:0;
	padding-bottom:8px !important;
}
#g-nav li ul li {
	border-bottom:none;
	padding-left: 1.0em;
}
#g-nav li ul li:before {
	font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
  content: "-";
  position: absolute;
  left : 1px;
  color: #fff;
  font-weight: bold;
  top:3px;
}
#g-nav li ul li a {
	padding:1px 4px;
}

/*========= ボタンのためのCSS ===============*/
body {
	position: relative;
}
.openbtn{
	position: absolute;
    z-index: 9999;/*ボタンを最前面に*/
	top: calc(10px + 1.5em);
	right: 10px;
	cursor: pointer;
    width: 50px;
    height:50px;
    background-color: #339933;
}
.openbtn.fixed {
	position: fixed;
	top: 10px;
}
@media (max-width: 760px) {
	.openbtn{
	    top: calc(10px + 2.5em);
	}
}
/*×に変化*/
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
	background-color: #fff;
  	width: 45%;
  }

.openbtn span:nth-of-type(1) {
	top:15px;
}

.openbtn span:nth-of-type(2) {
	top:23px;
}

.openbtn span:nth-of-type(3) {
	top:31px;
}

.openbtn.active span:nth-of-type(1) {
      top: 18px;
      left: 18px;
      transform: translateY(6px) rotate(-45deg);
      width: 30%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
  top: 30px;
 left: 18px;
 transform: translateY(-6px) rotate(45deg);
 width: 30%;
}
@media (min-width: 1200px) {
  .openbtn{
    display: none;
  }
}

section{
  position: static;
  display: block;
}

/*トップページ
-------------------------------------------*/
.main-v{
  position: relative;
  background-color: #f6f6f6;
  background-image:url(../img/top/topimg.jpg);
  background-size:120%;
  background-position:center;
  height:526px;
}
.main-v ._inner{
  position: absolute;
    top:0;
}

.main-v .bx-controls{
  display: none;
}
.main-v ul#slider {
  padding: 0;
  margin: 0;
  list-style: none;
}

.main-v .container {
	position:relative;
	height:100%;
}
.main-v .container img.mes {
	position:absolute;
	bottom:10px;
	left:0;
}
.main-v .container img.houmon {
	position:absolute;
	top:50px;
	right:330px;
}

@media screen and (max-width: 1200px) {
  .main-v .container img.houmon{
    width: 222px;
  }
}
@media screen and (max-width: 992px) {
  .main-v .container img.houmon{
    width: 170px;
    right: 189px;
  }
}
@media screen and (max-width: 576px) {
  .main-v .container img.houmon{
    width: 135px;
    right: 189px;
    top:20px;
  }
}
@media screen and (max-width: 480px) {
  .main-v .container img.houmon{

    top:20px;
    left:1em;
  }
}


.main-v .container ul {
	position:absolute;
	right:0;
	top:calc((100% - 387px) / 2);
	list-style-type:none;
	margin-right:12px;
	margin-top:10px;
}
.main-v .container ul li {
	margin-bottom:16px;
}

.contactSection {
	background-color:#bac81a;
}
ul.contactMenu {
	display: flex;
	list-style-type:none;
	padding-left:0;
	margin:20px auto;
	max-width:1128px;
}
ul.contactMenu li {
	flex:1;
}
ul.contactMenu li a {
	position:relative;
	display:block;
	width:550px;
	max-width:96%;
	height:69px;
	box-shadow:3px 3px 4px 1px rgba(0,0,0,0.3);
	border-radius:10px;
	padding:17px 0;
	color:#fff;
	font-size:160%;
	text-decoration:none;
	font-weight:bold;
}
ul.contactMenu li.mail a {
	background-color:#F06F6F;
	margin-left:0;
	margin-right:auto;
}
ul.contactMenu li.line a {
	background-color:#31AD35;
	margin-left:auto;
	margin-right:0;
}
ul.contactMenu li a img {
	position:absolute;
	left:20px;
}
ul.contactMenu li.mail a img {
	top:33%;
}
ul.contactMenu li.line a img {
	top:18%;
}

.planSection .container-xl {
	padding-top:40px;
	padding-bottom:40px;
	text-align:center;
}
.planSection .container-xl img {
	max-width: calc(100% - 1.5rem);
}
.planSection .container-xl a.btn {
	background-color:#339933;
	color:#fff;
	font-weight:bold;
	font-size:180%;
	margin-top:30px;
	padding:14px 0;
	width:430px;
	max-width:90%;
	border-radius:10px;
}

.featuresSection {
	background-color:#F1EFE3;
}
.featuresSection  .container-xl {
	padding-top:40px;
	padding-bottom:40px;
	text-align:center;
}

h2.marugo {
	font-weight:bold;
	line-height:1.4;
}

.featuresSection  .container-xl ul {
	list-style-type:none;
	padding-left:0;
	width:900px;
	max-width:100%;
	margin:10px auto;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.featuresSection  .container-xl ul li {
	display:flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	position:relative;
	background-color:#fff;
	border-radius:24px;
	border:3px solid #339933;
	width:400px;
	max-width: calc(46% - 40px);
	/*height:320px;*/
	margin: 20px;
	padding: 2%;
	box-shadow:3px 3px 4px 1px rgba(0,0,0,0.3);
}
@media screen and (max-width: 992px) {
	.featuresSection  .container-xl ul li {
		border-radius: calc(100vw * (24/992));
		max-width: calc(46% - 20px);
		margin: 10px;
	}
}
.featuresSection  .container-xl ul li img {
	margin-bottom: 20px;
}
.featuresSection  .container-xl ul li.feature01 img {
	width: calc(100%*(251/400));
}
.featuresSection  .container-xl ul li.feature02 img {
	width: calc(100%*(132/400));
}
.featuresSection  .container-xl ul li.feature03 img {
	width: calc(100%*(141/400));
}
.featuresSection  .container-xl ul li.feature04 img {
	width: calc(100%*(176/400));
}
.featuresSection  .container-xl ul li h4 {
	font-weight:bold;
	/*font-size:200%;*/
	font-size: min(3.2vw,32px);
	margin-bottom: 20px;
}
.featuresSection  .container-xl ul li h4 small {
	font-size: min(2.2vw,22px);
}
.featuresSection  .container-xl ul li p {
	font-size:140%;
	font-size: min(2.2vw,22px);
	font-weight:bold;
	line-height:1.2;
	/*position:absolute;
	bottom:10px;
	left:0;*/
	width:100%;
	text-align:center;
	margin-bottom: 0;
}
.featuresSection  .container-xl ul li p.f120 {
	font-size:120%;
}
/*
.featuresSection img.mt1 {
	margin-top:40px;
}
.featuresSection img.mt2 {
	margin-top:15px;
}
*/
@media screen and (max-width: 992px) {
	.featuresSection  .container-xl ul li h4 {
		margin-bottom:  calc(100vw * (20/992));
	}
	.featuresSection  .container-xl ul li img {
		margin-bottom:  calc(100vw * (20/992));
	}
}

.serviceSection {
	background-color:#fff;
}
.serviceSection .container-xl {
	padding-top:40px;
	padding-bottom:40px;
	text-align:center;
}
.serviceSection .container-xl ol {
	width:900px;
	max-width:100%;
	margin:40px auto;
	list-style-type:none;
	text-align:left;
	box-sizing: border-box;
	padding: 0 32px;
}
.serviceSection .container-xl ol li {
	font-size:110%;
}
.serviceSection .container-xl ol li h4 {
	font-size: min(5vw, 27px);
	font-weight:bold;
	color:#339933;
}
/*
.serviceSection .container-xl ol li h4::first-letter {
	background-color:#339933;
	border-radius:2em;
	color:#fff;
	width:2em;
	padding:8px;
	margin-right:8px;
}*/
.serviceSection .container-xl ol li h4 span.num {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	background-color:#339933;
	border-radius: 999px;
	color:#fff;
	width:1.6em;
	height:1.6em;
	margin-right:8px;
}
.serviceSection .container-xl ol li p {
	padding-left:calc(2em + 20px);
}

.feeSection {
	background-color:#339933;
}
.feeSection h2 {

}
.feeSection .container-xl {
	padding-top:40px;
	padding-bottom:40px;
	text-align:center;
}
.feeSection .container-xl img.table {
	width:962px;
	max-width: calc(100% - 1.5rem);
	margin: 30px auto 0;
}
.feeSection .container-xl ul.gofee {
	display: flex;
	list-style-type:none;
	padding-left:0;
	width:962px;
	max-width: calc(100% - 1.5rem);
	margin:10px auto;
}
.feeSection .container-xl ul.gofee li {
	flex:1;
}
.feeSection .container-xl ul.gofee li img {
	max-width: 96%;
}

.commentBox {
	background-color:#fff;
	border-radius:10px;
	text-align:left;
	padding:1em;
	width:962px;
	max-width: calc(100% - 1.5rem);
	margin:30px auto;
}
.commentBox h4 {
	color:#59493f;
	font-size:140%;
	font-weight:bold;
}
.commentBox p {
	margin-bottom:0;
}
.feeSection .container-xl ul.feeType {
	display: flex;
	flex-wrap: wrap;
	list-style-type:none;
	padding-left:0;
	width:962px;
	max-width: calc(100% - 1.5rem);
	margin:10px auto;
}
.feeSection .container-xl ul.feeType li {
	display:block;
	width: calc(100%/3);
	/*float:left;*/
}
.feeSection .container-xl ul.feeType li img {
	max-width: 96%;
}
.feeSection .container-xl ul.feeType li:nth-child(2) {
/*	margin-left:calc((fit-content / 3) - 310px);
	margin-right:calc((fit-content / 3) - 310px);*/
}
@media screen and (max-width: 640px) {
	.feeSection .container-xl ul.feeType li {
		width: 50%;
	}
	.feeSection .container-xl ul.feeType li img {
		max-width: 96%;
		margin-bottom: 1em;
	}
}


.goodsSection {
	background-color:#f2f0e4;
}
.goodsSection .container-xl {
	padding-top:40px;
	padding-bottom:40px;
	text-align:center;
}
.goodsSection .container-xl ul {
	display: flex;
	flex-wrap: wrap;
	list-style-type:none;
	padding-left:0;
	width:962px;
	max-width: calc(100% - 1.5rem);
	margin:20px auto;
}
.goodsSection .container-xl ul li {
	display:block;
	background-color:#fff;
	border-radius:10px;
	width: calc(100%/3 - 15px);
	padding:18px;
	margin:0 10px;
	font-weight:bold;
}
.goodsSection .container-xl ul li img {
	margin-bottom:1em;
}
.goodsSection .container-xl ul li:first-child {
	margin-left:0;
}
.goodsSection .container-xl ul li:last-child {
	margin-right:0;
}
@media screen and (max-width: 640px) {
	.goodsSection .container-xl ul li {
		width: 100%;
		max-width: 96%;
		margin: 1em auto;
	}
	.goodsSection .container-xl ul li:first-child {
		margin-left:auto;
	}
	.goodsSection .container-xl ul li:last-child {
		margin-right:auto;
	}
}

.goodsSection .container-xl a.btn {
	background-color:#339933;
	color:#fff;
	font-weight:bold;
	font-size:150%;
	margin-top:30px;
	padding:12px 0;
	width:430px;
	max-width:90%;
	border-radius:10px;
}
.goodsSection .container-xl .goodsTxt {
	text-align:center;
}

.voiceSection {
	background-color:#bac81a;
}
.voiceSection .container-xl {
	padding-top:40px;
	padding-bottom:40px;
	text-align:center;
}
.voiceSection .container-xl div.voiceBox {
	background-color:#fff;
	border-radius:10px;
	width:962px;
	max-width: calc(100% - 1.5rem);
	margin:26px auto 4px;
	padding:16px 20px 24px 16px;
	text-align:left;
	color:#090304;
}
.voiceSection .container-xl div.voiceBox h3 {
	background:url(../img/icon_smile.png) left top no-repeat;
	padding-left:50px;
	color:#090304;
	font-size:115%;
	border-bottom:2px solid #dfdcda;
	padding-top:4px;
	padding-bottom:12px;
	display:block;
	font-weight:normal;
}
.voiceSection .container-xl div.voiceBox div.commentBox {
	background-color:#f6edcf;
	border-radius:10px;
	width:100%;
	max-width:100%;
	margin:10px 0 0 0;
}
.voiceSection .container-xl div.voiceBox h4 {
	font-size:100%;
	font-weight:bold;
}

.newsSection {
	background-color:#fff;
}
.newsSection .container-xl {
	padding-top:40px;
	padding-bottom:40px;
	text-align:center;
}
ul#news {
	width:700px;
	max-width:94%;
	margin:30px auto 10px;
	font-size:120%;
	text-align:left;
}
ul#news li.newsBody2	{
	margin:0 4px 1.3em 4px;
	padding:0 0 4px 4px;
	list-style-type:none;
	border-bottom: 2px dotted #bac81c;
}
ul#news li.newsBody2 p	{
	color:#090304;
	margin-bottom:4px;
}
ul#news li.newsBody2 p a {
	text-decoration:none;
	color:#090304;
}
ul#news li.newsBody2 p a:hover {
	font-weight:bold;
}


.newsSection .container-xl a.btn {
	background-color:#bac81a;
	color:#000000;
	font-weight:bold;
	font-size:120%;
	margin-top:0px;
	margin-bottom:70px;
	padding:5px 0;
	width:150px;
	max-width:90%;
	border-radius:10px;
}
.newsSection .contactMenu {
	margin-bottom:55px;
}


.mapSection {
	background-color:#fff;
	padding-bottom:0;
	border:0;
}
.mapSection .container-xl {
	padding-top:40px;
	padding-bottom:40px;
	text-align:center;
}
.mapSection iframe {
	width:100%;
	margin-bottom:0;
	display: block;
}

footer .footer {
	padding-top:20px;
	padding-bottom:20px;
	background-color:#339933;
	color:#fff;
}
footer .footer .container-xl {
	display:flex;
}
footer .footer .container-xl .f_left {
	font-size:130%;
	flex:1;
	width:50%;
}
footer .footer .container-xl .f_left img {
	margin-bottom:10px;
}
footer .footer .container-xl .f_right {
	flex:1;
	font-size:110%;
	width:50%;
	line-height:2.0;
}
footer .footer .container-xl .f_right p span {
	font-size:105%;
	margin-right:1em;
	display:inline-block;
}
footer .footer .container-xl .f_right p span img {
	margin-right:10px;
}
footer .footer .container-xl .f_right a {
	color:#fff;
	text-decoration:none;
}
footer .footer .container-xl .f_right a:hover {
	font-weight:bold;
}
.container-962 {
	max-width:962px;
	margin:0 auto;
}

footer .copy {
	background-color:#f2f0e4;
	padding-top:10px;
	padding-bottom:10px;
}
footer.second .copy {
	padding-bottom:0;
}
footer .copy .container-xl .copyright {
	float:right;
}
footer .copy .container-xl .text {
	max-width:66%;
}
footer .copy .container-xl .text h3 {
	font-size:115%;
	font-weight:normal;
}
footer .copy .container-xl .text p {
	margin-bottom:0;
}

.pc {
}
.sp {
	display:none;
}

@media screen and (max-width: 1440px) {
	.main-v{
	  background-size:cover;
	}
}
@media screen and (max-width:1200px) {
	ul.contactMenu {
		display:block;
	}
	ul.contactMenu li.line a ,
	ul.contactMenu li.mail a {
		margin-right:auto;
		margin-left:auto;
		margin-bottom:20px;
	}
}

@media screen and (max-width: 992px) {
	.main-v .container ul img {
		width:151px;
	}
	/*
	.featuresSection  .container-xl ul li {
		margin-left:auto;
		margin-right:auto;
		max-width:94%;
		float:none;
	}
	*/
	footer .footer .container-xl {
		display:block;
	}
	footer .copy .container-xl .copyright {
		float:none;
		text-align:center;
		margin-bottom:20px;
	}
	footer .copy .container-xl .text {
		max-width:100%;
	}
	footer .footer .container-xl .f_left {
		width:100%;
		margin-bottom:20px;
	}
	footer .footer .container-xl .f_right {
		width:100%;
	}
}

@media screen and (max-width: 768px) {

.voiceSection .container-xl div.voiceBox {
	font-size: 90%;
}


}

@media screen and (max-width: 576px) {
}

@media (max-width: 480px) {
	.main-v{
		background-position:40% 50%;
	}
	.main-v .container ul {
		top:calc((100% - 387px) / 2 - 40px);
	}
	.main-v .container img.mes {
		bottom:30px;
	}
	ul.contactMenu li a {
		font-size:120%;
		padding:22px 0;
	}
	ul#news {
		font-size:90%;
		padding-left:0;
	}
	.newsSection .container-xl a.btn {
		font-size:90%;
	}
	.goodsSection .container-xl a.btn {
		font-size:120%;
	}
	.planSection .container-xl a.btn {
		font-size:120%;
	}
	.pc {
		display:none;
	}
	.sp {
		display:block;
	}
	img.sp {
		margin-left:auto;
		margin-right:auto;
	}
	footer .footer .container-xl .f_left {
		font-size:90%;
	}
	footer .footer .container-xl .f_right {
		font-size:90%;
	}
	footer .copy .container-xl .text h3 {
		font-size:90%;
	}
	footer .copy .container-xl .text p {
		font-size:80%;
	}
	.goodsSection .container-xl .goodsTxt {
		text-align:left;
	}
	.serviceSection .container-xl ol {
		padding: 0;
	}
	.serviceSection .container-xl ol li p {
		padding-left:calc(2em + 5px);
	}
	.commentBox h4 {
		font-size:116%;
	}
	.voiceSection .container-xl div.voiceBox h3 {
		padding-left:40px;
		font-size:100%;
	}
}

@media (max-width: 375px) {
	ul.contactMenu li a {
		padding-left:40px;
	}
}

@media (min-width: 1200px) {
}



.align-c{
  text-align: center;
}

.wh{color: #fff;}


.sky{
  color: #32baec;
}
.fb{font-weight: bold;}




/*セカンド共通
--------------------------------------------*/
.top-v {
  position: relative;
  background-color: #f6f6f6;
  background-image:url(../img/second_hed.jpg);
  background-size:cover;
  background-position:center;
  height:200px;
  display:flex;
}
.top-v h2 {
	flex:1;
	align-content: center;
	color:#fff;
	text-align:center;
	font-size:225%;
	text-shadow: 1px 1px 5px rgba(0,0,0,0.3),-1px 1px 5px rgba(0,0,0,0.3),1px -1px 5px rgba(0,0,0,0.3),-1px -1px 5px rgba(0,0,0,0.3);
}


@media (max-width: 769px) {
	.top-v{
		background-position:40% 50%;
	}
}

@media (max-width: 480px) {
	.top-v{
		background-position:30% 50%;
	}
	.top-v h2 {
		font-size:190%;
	}
}

/*当社の移動火葬について
--------------------------------------------*/

.aboutSection .container-xl {
	padding-top:40px;
	padding-bottom:40px;
	text-align:center;
}
.aboutSection .container-xl .inner {
	width:880px;
	max-width: calc(100% - 1.5rem);
	margin: 40px auto 20px;
}
.aboutSection .container-xl p {
	text-align:left;
	font-size:115%;
}

.arrangementsSection .container-xl {
	padding-top:40px;
	padding-bottom:40px;
	text-align:center;
}
.arrangementsSection .container-xl .inner {
	width:880px;
	max-width: calc(100% - 1.5rem);
	margin: 40px auto 20px;
}

.arrangementsSection .container-xl p.read {
	font-size:160%;
}
.arrangementsSection .container-xl .arrangementsBox {
	display:flex;
	text-align:left;
	margin-top:20px;
}
.arrangementsSection .container-xl .arrangementsBox > div {
	flex:3;
}
.arrangementsSection .container-xl .arrangementsBox > div h4 {
	color:#2c7e28;
	font-size:180%;
	font-weight:bold;
	background:url(../img/icon_arrangements.png) left top no-repeat;
	padding-left:60px;
	padding-top:4px;
	min-height:50px;
	line-height:1.4;
}
.arrangementsSection .container-xl .arrangementsBox > div p {
	font-size:120%;
	max-width:620px;
}
.arrangementsSection .container-xl .arrangementsBox > img {
	flex:1;
}

.serviceSection .container-xl ol.about {
	padding: 0 10px;
}
.serviceSection .container-xl ol.about li p {
	padding-left:0;
	margin-top:1em;
	margin-bottom:1.5em;
}
.serviceSection .container-xl ol.about li h4 {
	font-size: min(5vw, 30px);
}


@media (max-width: 480px) {
	.aboutSection .container-xl p {
		font-size:110%;
	}
	.arrangementsSection .container-xl p.read {
		font-size:120%;
	}
	.arrangementsSection .container-xl .arrangementsBox {
		display:block;
	}
	.arrangementsSection .container-xl .arrangementsBox > div h4 {
		font-size:130%;
	}
	.arrangementsSection .container-xl .arrangementsBox > img {
		margin-left:auto;
		margin-right:auto;
		display:block;
	}
	.arrangementsSection .container-xl .arrangementsBox > div p {
		font-size:110%;
	}
}

/*料金プラン
--------------------------------------------*/
.plansSection .container-xl {
	padding-top:40px;
	padding-bottom:0px;
	text-align:center;
}
.plansSection .container-xl .inner {
	width:962px;
	max-width: calc(100% - 1.5rem);
	margin: 20px auto 20px;
}
.plansSection .container-xl p {
	font-size:115%;
}
.plansSection .container-xl div.inner div.commentBox {
	background-color:#f2f0e4;
	border-radius:10px;
	width:100%;
	max-width:100%;
	margin:40px 0 0 0;
}
.plansSection .container-xl div.inner div.commentBox h4 {
	font-size:130%;
}
.plansSection .container-xl div.inner div.commentBox p {
	font-size:100%;
}

@media (max-width: 480px) {
	.plansSection .container-xl div.inner div.commentBox p {
		font-size:90%;
	}
}

/*よくある質問
--------------------------------------------*/
.faqSection .container-xl {
	padding-top:40px;
	padding-bottom:0px;
	text-align:center;
}
.faqSection .container-xl .inner {
	width:960px;
	max-width: calc(100% - 1.5rem);
	margin: 20px auto 20px;
}
.faqSection .container-xl .faqBox {
	text-align:left;
	margin-bottom:40px;
}
.faqSection .container-xl .faqBox h3 {
	color:#fff;
	background-color:#339933;
	font-size:110%;
	padding:20px 0 20px 20px;
	border-left:10px solid #bac81a;
	font-weight:normal;
	margin-bottom:20px;
}
.faqSection .container-xl .faqBox .qaBox {
	border:5px solid #bac81a;
	padding:16px;
	margin-top:16px;
}
.faqSection .container-xl .faqBox .qaBox h4 {
	font-size:110%;
	padding-left:2.8em;
	text-indent:-2.8em;
}
.faqSection .container-xl .faqBox .qaBox span {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	background-color:#339933;
	border-radius: 999px;
	color:#fff;
	width:1.6em;
	height:1.6em;
	margin-right:1em;
	font-size: min(5vw, 18px);
	font-weight:bold;
	text-indent:0em;
}
.faqSection .container-xl .faqBox .qaBox p {
	font-size:110%;
	padding-left:2.8em;
	text-indent:-2.8em;
	margin-bottom:0;
}
.faqSection .container-xl .faqBox .qaBox p span {
	margin-right:0.8em;
	background-color:#6a3906;
}

@media (max-width: 480px) {
	.faqSection .container-xl .faqBox .qaBox h4 {
		font-size:90%;
		padding-left:3.3em;
		text-indent:-3.3em;
	}
	.faqSection .container-xl .faqBox .qaBox p {
		font-size:90%;
		padding-left:3.3em;
		text-indent:-3.3em;
	}
}

/*会社概要
--------------------------------------------*/
.companySection .container-xl {
	padding-top:40px;
	padding-bottom:0px;
	text-align:center;
}
.companySection .container-xl .inner {
	width:960px;
	max-width: calc(100% - 1.5rem);
	margin: 20px auto 20px;
}
.companySection .container-xl table {
	width:100%;
	text-align:left;
	font-size:115%;
}
.companySection .container-xl table tr {
	border-bottom:1px solid #339933;
}
.companySection .container-xl table tr th {
	width:21%;
}
.companySection .container-xl table tr th.top {
	vertical-align:top;
}
.companySection .container-xl table tr th ,
.companySection .container-xl table tr td {
	padding:30px 12px 10px 12px;
}
.companySection .container-xl table tr td {
	word-break:break-all;
}

.inquirySection .container-xl {
	padding-top:40px;
	padding-bottom:0px;
	text-align:center;
}
.inquirySection .container-xl .inner {
	width:960px;
	max-width: calc(100% - 1.5rem);
	margin: 20px auto 20px;
}
.inquirySection .container-xl p {
	font-size:115%;
}
.inquirySection .container-xl table {
	width:100%;
	text-align:left;
	font-size:115%;
}
.inquirySection .container-xl table tr {
	border-bottom:1px dotted #339933;
}
.inquirySection .container-xl table tr:last-child {
	border-bottom:none;
}
.inquirySection .container-xl table tr th {
	width:27%;
	font-weight:normal;
}
.inquirySection .container-xl table tr th.top {
	vertical-align:top;
}
.inquirySection .container-xl table tr th ,
.inquirySection .container-xl table tr td {
	padding:20px 12px 20px 12px;
}
.inquirySection .container-xl table tr th span {
	background-color:#ff0000;
	color:#fff;
	border-radius: 6px;
	margin-left:12px;
	padding:0 4px;
	font-size:75%;
	display:inline-block;
}
.inquirySection .container-xl table tr td textarea ,
.inquirySection .container-xl table tr td input {
	background-color:#cacac8;
	border-radius: 6px;
	border:none;
	padding:10px;
	width:70%;
}
.inquirySection .container-xl table tr td textarea ,
.inquirySection .container-xl table tr td input.long {
	width:90%;
}
.inquirySection .container-xl table tr td textarea {
	display:block;
}
.inquirySection .container-xl table tr td input[type='submit'] {
	background-color:#339933;
	width:calc((100% / (100 - 27)) / 2)  - 48px);
	color:#fff;
	font-size:130%;
	font-weight:bold;
}
/*
480
657 / (100 - 27)
*/
@media (max-width: 769px) {
	.inquirySection .container-xl table tr td input {
		width:90%;
	}
}

@media (max-width: 480px) {
	.companySection .container-xl table tr th ,
	.companySection .container-xl table tr td {
		display:block;
		width:100%;
		font-size:90%;
	}
	.companySection .container-xl table tr th {
		padding-bottom:0;
	}
	.companySection .container-xl table tr td {
		padding-top:10px;
	}
	.inquirySection .container-xl p {
		font-size:100%;
	}
	.inquirySection .container-xl table tr th ,
	.inquirySection .container-xl table tr td {
		display:block;
		width:100%;
		font-size:90%;
	}
	.inquirySection .container-xl table tr th {
		padding-bottom:0;
	}
	.inquirySection .container-xl table tr td {
		padding-top:15px;
	}
	.inquirySection .container-xl table tr td textarea ,
	.inquirySection .container-xl table tr td input ,
	.inquirySection .container-xl table tr td input.long {
		width:100%;
	}
}


/*セレモニーグッズ
--------------------------------------------*/
.ceremonySection .container-xl {
	padding-top:40px;
	padding-bottom:0px;
	text-align:center;
}
.ceremonySection .container-xl .inner {
	width:1000px;
	max-width: calc(100% - 1.5rem);
	margin: 20px auto 20px;
}

.ceremonySection .container-xl .inner h3 {
	margin-top:40px;
	text-align:left;
}
.ceremonySection .container-xl .inner h3 img {
	margin-right:10px;
}
.ceremonySection .container-xl .inner .pendant {
	display:flex;
	padding-bottom:calc(1em + 10px);
}
.ceremonySection .container-xl .inner .pendant .img {
	padding-top:8px;
	flex:1;
}
.ceremonySection .container-xl .inner .pendant .text {
	text-align:left;
	padding:0;
	flex:1.3;
}
.ceremonySection .container-xl .inner .pendant .text h4 {
	font-size:140%;
	font-weight:bold;
}
.ceremonySection .container-xl .inner .pendant .text h4 span {
	font-size:75%;
}

.ceremonySection .container-xl .inner p.price {
	font-size:110%;
	padding-bottom:1em;
}

.ceremonySection .container-xl .inner .urn {
	display:flex;
	flex-wrap: wrap;
	margin-bottom:10px;
}
.ceremonySection .container-xl .inner .urn .item {
	flex:1;
}
.ceremonySection .container-xl .inner .urn .item p::first-line {
	font-weight:bold;
}

.ceremonySection .container-xl .inner .left .item {
	max-width:333px;
}
.ceremonySection .container-xl .inner .left .item p {
	text-align:center;
}
.ceremonySection .container-xl .inner .left .item p::first-line {
	font-weight:bold;
}

.ceremonySection .container-xl .inner .item img {
	margin-bottom:6px;
}
.ceremonySection .container-xl .inner .item p {
	font-size:110%;
}

@media (max-width: 769px) {
	.ceremonySection .container-xl .inner .pendant ,
	.ceremonySection .container-xl .inner .urn {
		flex-direction: column;
	}
	.ceremonySection .container-xl .inner .pendant .img {
		margin-bottom:10px;
	}
	.ceremonySection .container-xl .inner .left .item {
		text-align:center;
		margin-left:auto;
		margin-right:auto;
	}
}
@media (max-width: 480px) {
	.ceremonySection .container-xl .inner p {
		font-size:90%;
	}
	.ceremonySection .container-xl .inner .pendant .text h4 {
		font-size:110%;
	}
	.ceremonySection .container-xl .inner .pendant {
		padding-bottom:0;
	}
}

/*メモリアルグッズ
--------------------------------------------*/
.memorialSection .container-xl {
	padding-top:40px;
	padding-bottom:0px;
	text-align:center;
}
.memorialSection .container-xl .inner {
	width:1000px;
	max-width: calc(100% - 1.5rem);
	margin: 20px auto 20px;
}
.memorialSection .container-xl h2 img:first-child {
	margin-bottom:40px;
}
.memorialSection .container-xl .inner .goods {
	display:flex;
	margin-top:40px;
}
.memorialSection .container-xl .inner .goods .goodsImg {
	padding-top:8px;
	flex:1;
}
.memorialSection .container-xl .inner .goods .goodsInfo {
	text-align:left;
	padding:0;
	flex:1.3;
}
.memorialSection .container-xl .inner .goods .goodsInfo h3 {
	font-size:150%;
	padding:0;
}
.memorialSection .container-xl .inner .goods .goodsInfo h3 span {
	font-size:83%;
}
.memorialSection .container-xl .inner .goodsColors {
	display:flex;
	margin-top:30px;
	text-align:left;
}
.memorialSection .container-xl .inner .goodsColors .goodsDesign ,
.memorialSection .container-xl .inner .goodsColors .goodsKanagu {
	flex:1;
}
.memorialSection .container-xl .inner .goodsColors .goodsKanagu {
	text-align:right;
}

.kakoSection .container-xl {
	padding-top:40px;
	padding-bottom:0px;
	text-align:center;
}
.kakoSection .container-xl .inner {
	width:1000px;
	max-width: calc(100% - 1.5rem);
	margin: 20px auto 20px;
}
.kakoSection .container-xl .inner .kakoBox {
	background-color:#f2f0e4;
	width:320px;
	padding:20px;
	margin:10px 5px;
	height:300px;
	text-align:left;
	float:left;
}
.kakoSection .container-xl .inner .kakoBox h4 {
	color:#333333;
	border-bottom:2px solid #666;
	font-size:105%;
	font-weight:bold;
}
.kakoSection .container-xl .inner .kakoBox p {
	margin-top:4px;
	margin-bottom:0;
}
.kakoSection .container-xl .inner .giftBox {
	background-color:#f2f0e4;
	width:320px;
	padding:20px;
	/*margin:10px 5px;*/
  margin: 10px auto;
	height:300px;
	text-align:left;
	/*float:left;*/
}
.kakoSection .container-xl .inner .giftBox h4 {
	color:#333333;
	font-size:105%;
	font-weight:bold;
}

@media (max-width: 769px) {
	.memorialSection .container-xl .inner .goods ,
	.memorialSection .container-xl .inner .goodsColors {
		flex-direction: column;
	}
	.memorialSection .container-xl .inner .goods .goodsImg {
		margin-bottom:10px;
	}
	.memorialSection .container-xl .inner .goodsColors .goodsDesign ,
	.memorialSection .container-xl .inner .goodsColors .goodsKanagu {
		text-align:center;
		margin-bottom:20px;
	}

	.kakoSection .container-xl .inner .kakoBox ,
	.kakoSection .container-xl .inner .giftBox {
		float:none;
		margin-left:auto;
		margin-right:auto;
	}
}

@media (max-width: 480px) {
	.memorialSection .container-xl .inner p {
		font-size:90%;
	}
	.memorialSection .container-xl .inner .goods .goodsInfo h3 {
		font-size:110%;
	}

}

/*選ばれる理由
--------------------------------------------*/
.chooseSection .container-xl {
	padding-top:40px;
	padding-bottom:0px;
	text-align:center;
}
.chooseSection .container-xl .inner {
	width:960px;
	max-width: calc(100% - 1.5rem);
	margin: 20px auto 20px;
}
.chooseSection .container-xl .inner > p.marugo {
	font-size:115%;
}
.chooseSection .container-xl .inner .base {
	background-color:#fffcf1;
	border-radius: 10px;
	text-align:left;
	padding:30px 40px 10px;
	margin-top:25px;
}
.chooseSection .container-xl .inner .base h3 {
	color:#2c7e28;
	font-size:180%;
	font-weight:bold;
	background:url(../img/icon_arrangements.png) left top no-repeat;
	padding-left:60px;
	padding-top:4px;
	min-height:50px;
	line-height:1.4;
	margin-bottom:20px;
}
.chooseSection .container-xl .inner .base .riyu {
	display:flex;
	flex-direction:row-reverse;
	margin-bottom:40px;
}
.chooseSection .container-xl .inner .base .riyu p {
	flex:1.8;
	font-size:115%;
	padding:0 4px;
}
.chooseSection .container-xl .inner .base .riyu div {
	flex:1;
	text-align:right;
}
.chooseSection .container-xl .inner .base .riyu div img {
	border-radius:6px;
}
.chooseSection .container-xl .inner .base .riyu-r {
	flex-direction:row;
}
.chooseSection .container-xl .inner .base .riyu-r div {
	text-align:left;
}
.chooseSection .container-xl .inner .fut {
	margin-top:100px;
}

@media (max-width: 769px) {
	.chooseSection .container-xl .inner .base .riyu {
		flex-direction: column;
		margin-bottom:10px;
	}
	.chooseSection .container-xl .inner .base .riyu div {
		text-align:center;
		margin-bottom:10px;
	}
}
@media (max-width: 480px) {
	.chooseSection .container-xl .inner > p.marugo {
		font-size:100%;
	}
	.chooseSection .container-xl .inner .base {
		padding:30px 20px 10px;
	}
	.chooseSection .container-xl .inner .base .riyu p {
		font-size:90%;
	}
	.chooseSection .container-xl .inner .base h3 {
		font-size:135%;
	}
	.chooseSection .container-xl .inner .fut {
		margin-top:50px;
	}
}


/*プライバシーポリシー
--------------------------------------------*/
.privacySection .container-xl {
	padding-top:40px;
	padding-bottom:0px;
}
.privacySection .container-xl .inner {
	width:1000px;
	max-width: calc(100% - 1.5rem);
	margin: 60px auto 20px;
}
.privacySection .container-xl .inner h4 {
	color:#339933;
	font-size:125%;
	background-color:#fffcf1;
	font-weight:bold;
	padding:10px 20px;
	margin:40px 0 20px;
}
.privacySection .container-xl .inner p {
	font-size:115%;
	line-height:1.6;
}

@media (max-width: 480px) {
	.privacySection .container-xl .inner h4 {
		font-size:120%;
	}
	.privacySection .container-xl .inner p {
		font-size:90%;
	}
}

/*グッズ販売について
--------------------------------------------*/
.goodsselSection .container-xl {
	padding-top:40px;
	padding-bottom:0px;
}
.goodsselSection .container-xl h2 img:first-child {
	margin-bottom:40px;
}
.goodsselSection .container-xl .inner {
	width:1000px;
	max-width: calc(100% - 1.5rem);
	margin: 20px auto 20px;
}
.goodsselSection .container-xl .inner .goods {
	background-color:#fffcf1;
	display:flex;
	margin-top:60px;
	margin-bottom:60px;
}
.goodsselSection .container-xl .inner .goods-r {
	flex-direction:row-reverse;
}
.goodsselSection .container-xl .inner .goods .goodsImg {
	flex:1;
}
.goodsselSection .container-xl .inner .goods-r .goodsImg {
	text-align:right;
}
.goodsselSection .container-xl .inner .goods .goodsInfo {
	flex:1.3;
	padding:20px;
}
.goodsselSection .container-xl .inner .goods .goodsInfo h3 {
	font-size:150%;
	text-align:center;
	margin-bottom:20px;
}
.goodsselSection .container-xl .inner .goods .goodsInfo h3 span {
	font-size:67%;
}
.goodsselSection .container-xl .inner .goods .goodsInfo p {
	font-size:100%;
}
.goodsselSection .container-xl .inner .goods .goodsInfo p a.btn {
	background:url(../img/icon_btnmark.png) 10px center no-repeat #339933;
	color:#fff;
	font-weight:bold;
	font-size:100%;
	margin-top:0px;
	padding:5px 0 5px 10px;
	width:184px;
	max-width:90%;
	border-radius:0;
}

@media (max-width: 769px) {
	.goodsselSection .container-xl .inner .goods {
		flex-direction: column;
		margin-bottom:40px;
		margin-top:40px;
		padding-top:20px;
	}
	.goodsselSection .container-xl .inner .goods .goodsImg {
		text-align:center;
		margin-bottom:10px;
	}
}
@media (max-width: 480px) {
	.goodsselSection .container-xl h2 {
		font-size:125%;
	}
	.goodsselSection .container-xl .inner > p {
		font-size:90%;
	}
	.goodsselSection .container-xl .inner .goods .goodsInfo p {
		font-size:90%;
	}
}
