@charset "UTF-8";
/* CSS Document */
/*=============================================================
import css
=============================================================*/
@import url("reset.css");
/*
=============================================================
共通
=============================================================
*/

body {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-style: normal;
  margin: 0;
  font-size: 16px;
}
img {
  width: 100%;
  height: auto;
  vertical-align: top;
}
p {
  color: #666;
  line-height: 1.8em;
font-size: 18px;
}
a {
  transition: all 0.3s;
}
.pagetop {
    display: none;
    position: fixed;
    bottom: 30px;
    right: 5px;
}
.pagetop a {
    display: block;
	filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 1;
}
.pagetop a:hover {
    display: block;
    text-decoration: none;
	filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}
address {
font-style: normal;
}

@media print, screen and (min-width: 769px) {
.outer {
width: 90%;
min-width: 1200px;
margin: 0 auto;
}
.inner {
width: 1200px;
margin: 0 auto;
}

#ft_sp{
  display: none;
}

}

/*
=============================================================
ヘッダー
=============================================================
*/
#header {
display: block;
height: 100px;
  }
#header .wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100px;
  margin: 0 auto;
  position: relative;
}
#header .logo {
display: flex;
align-items: baseline;
width: 250px;
min-width: 250px;
margin-left: 2rem;
}
#header  .logo span {
margin-right: 0.5vw;
font-size: clamp(1.125rem, 0.938rem + 0.94vw, 1.875rem);/*1600/30 320/18*/
}
#header .logo a {
  width: 100%;
  height: auto;
  display: block;
}
#header nav {
margin-right: 102px;
}
#header nav ul {
  display: flex;
 justify-content: center;
  position: relative;
  z-index: 20;
  padding: 0;
}
#header nav ul li {
font-size: clamp(0.813rem, 0.25rem + 0.75vw, 1rem);
margin-left: 30px;
display: flex;
align-items: center;
position: relative;
}
#header nav ul li:nth-child(4){
margin-right: 20px;
} 
#header nav ul li a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  padding: .75em 0;
  line-height: 1;
  position: relative;
  white-space: nowrap;
  color: #333;
  font-weight: 600;
}
#header nav li.hbtn {
margin-left: 0.2vw;
width: 100px;
height: 100px;
}
#header  nav ul.btn li img {
width: 100%;
}
#header nav ul.btn li.hm {
   background-color: #EF9308;
}
#header  .btn-gnavi {
    position: fixed;
    top: 20px;
    right: 20px;
    width: 30px;
    height: 24px;
    z-index: 1000;
    cursor: pointer;
    transition: all 400ms;
    -webkit-transition: all 400ms;
 
  }
#header  .btn-gnavi span {
    position: absolute;
    width: 30px;
    height: 4px;
    background: #666;
    border-radius: 10px;
    -webkit-transition: all 400ms;
    transition: all 400ms
  }
#header  .btn-gnavi span:nth-child(1) {
    top: 0;
  }
#header  .btn-gnavi span:nth-child(2) {
    top: 10px;
  }
#header  .btn-gnavi span:nth-child(3) {
    top: 20px;
  }
#header  .btn-gnavi.hb-open {
    transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
  }
#header  .btn-gnavi.hb-open span {
    background: #fff;
  }
#header  .btn-gnavi.hb-open span:nth-child(1) {
    width: 24px;
    transform: translate(-7px, 17px) rotate(45deg);
    -webkit-transform: translate(-7px, 17px) rotate(45deg);
  }
#header  .btn-gnavi.hb-open span:nth-child(3) {
    width: 24px;
    transform: translate(-7px, -17px) rotate(-45deg);
    -webkit-transform: translate(-7px, -17px) rotate(-45deg);
  }
#header  .wrap .contact {
    display: none;
  }
#header nav ul li .btn-gnavi {
	position: fixed;
	top: 20px;
	right: 50px;
	width: 50px;
	height: 40px;
	z-index: 3;
	cursor: pointer;
	transition: all 400ms;
	-webkit-transition: all 400ms;
	z-index: 300;
}
#header nav ul li .btn-gnavi span {
	position: absolute;
	width: 50px;
	height: 6px;
	background: #666;
	border-radius: 10px;
	-webkit-transition: all 400ms;
	transition: all 400ms
}

#header nav ul li .btn-gnavi span:nth-child(1) {
	top: 0;
}
#header nav ul li .btn-gnavi span:nth-child(2) {
	top: 12px;
}
#header nav ul li .btn-gnavi span:nth-child(3) {
	top: 24px;
}
#header nav ul li .btn-gnavi.hb-open {
	transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
}
#header nav ul li .btn-gnavi.hb-open span {
	background: #fff;
}
#header nav ul li .btn-gnavi.hb-open span:nth-child(1) {
	width: 24px;
	transform: translate(-7px, 17px) rotate(45deg);
	-webkit-transform: translate(-7px, 17px) rotate(45deg);
}
#header nav ul li .btn-gnavi.hb-open span:nth-child(3){
    width: 24px;
    transform: translate(-7px,-17px) rotate(-45deg);
    -webkit-transform: translate(-7px,-17px) rotate(-45deg);
  }
  
  @media print, screen and (max-width: 1200px) {
#header nav {
display: none;
}
  }
  /*
=============================================================
ナビケーション
=============================================================
*/


#g-nav{
    /*position:fixed;にし、z-indexの数値を小さくして最背面へ*/
    position:fixed;
	z-index: -1;
	opacity: 0;/*はじめは透過0*/
    /*ナビの位置と形状*/
	top:0;
	width:100%;
    height: 100vh;/*ナビの高さ*/
	 background-color: rgba(0, 0, 0, 0.80);
    /*動き*/
	transition: all 0.3s;
}

#g-nav .logo {
width: 40%;
margin: 10px auto;
}

@media print, screen and (min-width: 769px) {
#g-nav .logo {
width: 15%;
margin: 30px auto;
}
}

/*アクティブクラスがついたら透過なしにして最前面へ*/
#g-nav.panelactive{
	opacity: 1;
	z-index:999;
}



/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999; 
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
    display: none;
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    z-index: 999;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
    width: 100%;
}

#g-nav.panelactive ul {
    display: block;
}

/*リストのレイアウト設定*/

#g-nav li{
	list-style: none;
    text-align: center; 
}

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

@media print, screen and (min-width: 769px) {
#g-nav li a{
	padding:30px 0;
    letter-spacing: 0.4em;
}
}

/*========= ボタンのためのCSS ===============*/
.openbtn{
	position:fixed;
    z-index: 9999;/*ボタンを最前面に*/
	top: 2px;
	right: 10px;
	cursor: pointer;
    width: 50px;
    height:50px;
}

@media print, screen and (min-width: 769px) {
.openbtn{
top: 18px;
}
}
	
/*×に変化*/	
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
	background-color: #efefef;
  	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%;
}
  
/*
=============================================================
メインビジュアル
=============================================================
*/
#mv {
width: 100%;
height: 800px;
background-image: url("../images/mv.jpg");
background-position: center bottom;
background-repeat: no-repeat;
background-size: cover;
position: relative;
}
#mv h1 {
width: 60rem;
position: absolute;
top: 180px;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

/*
=============================================================
コンテンツ
=============================================================
*/

#container {
min-width: 1200px;
overflow: hidden;
}

#wrap {
background-color: #f9f9f4;
}
.contents {
  width: 100%;
  padding-top: 80px;
  margin: 3vw 0;
}
section {
  padding:  0;
  margin-bottom: 6rem;
}


#about {
background-color: #fff7ee;
margin: 0;
padding: 0;
position: relative;
}
#about .in {
padding-top: 10vw;
background-image: url("../images/about_bg.jpg");
background-position: center bottom;
background-repeat: no-repeat;
background-size: cover;
height: 420px;
}
#about h2 {
width: 860px;
position: absolute;
top: 90px;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

#trouble {
background-image: url("../images/arrow.png");
background-position: center top -40px;
background-repeat: no-repeat;
background-size: 10%;
padding: 5rem 0 0;
line-height:1;
}
#trouble dl {
margin: 0;
padding-bottom: 6rem;
text-align: center;
background-image: url("../images/deco_l_top.png"),url("../images/deco_r_top.png"),url("../images/deco_l_btm.png"),url("../images/deco_r_btm.png");
background-position: top 6rem left,top 6rem right,bottom left,bottom right;
background-size: 20%,20%,20%,20%;
background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
}
#trouble dt {
color: #987044;
font-weight: 500;
letter-spacing: 0.1em;
line-height: 1.4em;
background-image: url("../images/ttl_point.png");
background-position: top center;
background-repeat: no-repeat;
background-size: 15%;
padding-top: 110px;
margin-bottom: 4rem;
font-size: 40px;
}
#trouble dt span {
font-size: 70px;
}
#trouble dd {
margin: 0;
padding: 0 6rem;
}
#trouble dd ul {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#trouble dd li {
width: 16%;
}
#trouble dd li span {
display: block;
font-size: 18px;
font-weight: 500;
margin-top: 20px;
background: linear-gradient(transparent 50%, #ffe570 50%);
}

#water_supply {
background-image: url("../images/water_supply_bg_l.png"),url("../images/water_supply_bg_r.png");
background-position: center left,center  right 8rem;
background-size: 30%,15%;
background-repeat: no-repeat, no-repeat;
}
#water_supply dl {
margin: 0;
text-align: center;
}
#water_supply dt {
margin-bottom: 4rem;
color: #71c6d2;
font-weight: 500;
letter-spacing: 0.1em;
line-height: 1.4em;
font-size: clamp(1.25rem, 0.938rem + 1.56vw, 2.5rem);/*40-20*/
}
#water_supply dt span {
display: inline-block;
padding: 2rem 6rem;
background-image: url("../images/ttl_point2_l.png"),url("../images/ttl_point2_r.png");
background-position: center left,center  right;
background-size: 8%,8%;
background-repeat: no-repeat, no-repeat;
}
#water_supply dd ul {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#water_supply dd li {
width: 23%;
}

#merit {
background-image: url("../images/merit_bg.jpg");
background-position: bottom center;
background-repeat: repeat-x;
padding-bottom: 50px;
}
#merit h3 {
width: 100%;
margin: 0 auto;
color: #987044;
text-align: center;
font-weight: 500;
letter-spacing: 0.1em;
line-height: 1.4em;
background-image: url("../images/ttl_point.png");
background-position: top center;
background-repeat: no-repeat;
background-size: 15%;
padding-top: 80px;
margin-bottom: 4rem;
display: inline-block;
font-size: clamp(1.25rem, 0.938rem + 1.56vw, 2.5rem);/*40-20*/
}
#merit h3 span {
display: inline-block;
margin-top: 2.2rem;
font-size: 48px;
}
#merit h3 img {
width: 458px;
display: inline-block;
margin-right: 5px;
margin-left: 5%;
}
#merit ul {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#merit ul li {
width: 48%;
padding: 1rem 2rem;
border-radius: 20px;
position: relative;
}
#merit ul li.left {
border: solid 5px #f4a300;
background-color: #fff;
box-shadow: 5px 5px 0px 0px rgba(244, 163, 0, 1);
}
#merit ul li.right {
border: solid 5px #bed400;
background-color: #fff;
box-shadow: 5px 5px 0px 0px rgba(190, 212, 0, 1);
}
#merit dl {
margin: 0;
}
#merit dt {
text-align: center;
font-size: 30px;
color: #fff;
height: 82px;
padding-top: 10px;
margin-bottom: 1rem;
font-weight: 500;
}
#merit li.left dt {
background-image: url("../images/merit_ttl_left.png");
background-size: 100% 100%;
background-repeat: no-repeat;
background-position: top center;
}
#merit li.right dt {
background-image: url("../images/merit_ttl_right.png");
background-size: 100% 100%;
background-repeat: no-repeat;
background-position: top center;
}
#merit dd {
font-size: 23px;
color: #565656;
font-weight: 500;
border-bottom: dotted 5px #c9caca;
margin-bottom: 10px;
padding-bottom: 10px;
padding-left: 50px;
padding-top: 14px;
}
#merit li.left dd {
background-image: url("../images/merit_check_left.png");
background-repeat: no-repeat;
background-position: left center;
}
#merit li.right dd {
background-image: url("../images/merit_check_right.png");
background-repeat: no-repeat;
background-position: left center;
}
#merit .chara {
position: absolute;
right: 20px;
bottom: 20px;
}

#exchange {
}
#exchange h3 {
width: 100%;
margin: 0 auto;
color: #987044;
text-align: center;
font-weight: 500;
letter-spacing: 0.1em;
line-height: 1.4em;
background-image: url("../images/ttl_point.png");
background-position: top center;
background-repeat: no-repeat;
background-size: 15%;
padding-top: 80px;
margin-bottom: 4rem;
display: inline-block;
font-size: clamp(1.25rem, 0.938rem + 1.56vw, 2.5rem);/*40-20*/
}
#exchange h3 span {
display: inline-block;
margin-top: 2.2rem;
font-size: 48px;
}
#exchange h3 img {
width: 458px;
display: inline-block;
margin-right: 5px;
margin-left: 5%;
}
#exchange dl {
}
#exchange dt {
display: flex;
 justify-content: center;
border-bottom: dotted 8px #bed400;
margin: 0 auto 3rem;
padding-bottom: 1rem;
padding-top: 2rem;
padding: 10px 80px;
}
#exchange dt span {
display: inline-block;
padding: 0 3em 1rem;
background-image: url("../images/ex_point_l.png"),url("../images/ex_point_r.png");
background-position: center left,center  right;
background-size: 8%,8%;
background-repeat: no-repeat, no-repeat;
color: #987044;
font-weight: 500;
font-size: 40px;/*40-20*/
}
#exchange dd {
margin: 0;
padding: 0;
}
#exchange dd ul {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: flex-end;
padding: 0;
}
#exchange dd li {
width: 48%;
}
#exchange dd li p {
font-size: 22px;
color: #565656;
font-weight: 500;
margin-bottom: 1rem;
}
#exchange dd li .ex1 {
font-size: 28px;
color: #987044;
font-weight: 500;
}
#exchange dd li .ex2 {
font-size: 28px;
color: #987044;
font-weight: 500;
display: flex;
align-items: center;
}
#exchange dd li .ex2 img {
display: inline-block;
width: 320px;
}
#exchange dd li .ex3 {
font-size: 28px;
color: #987044;
font-weight: 500;
background: linear-gradient(transparent 50%, #ffe570 50%);
}


/*=============================================*/

#exchange2 {
}

#exchange2 .exchange2_title {
margin: 8rem 0 3rem;
}


#exchange2 .exchange2_title dt {
display: flex;
 justify-content: center;
border-bottom: dotted 8px #bed400;
margin: 0 auto 3rem;
padding-bottom: 1rem;
padding-top: 2rem;
padding: 10px 80px;
}
#exchange2 .exchange2_title dt span {
display: inline-block;
padding: 0 3em 1rem;
background-image: url("../images/ex_point_l.png"),url("../images/ex_point_r.png");
background-position: center left,center  right;
background-size: 8%,8%;
background-repeat: no-repeat, no-repeat;
color: #987044;
font-weight: 500;
font-size: 40px;/*40-20*/
}
#exchange2 dd {
margin: 0;
padding: 0;
}


#exchange2 .exchange2_title dd {
width: 48%;
margin: 0 auto;
}

#exchange2 .exchange2_title dd li .ex1 {
  font-size: 28px;
  color: #987044;
  font-weight: 500;
}

#exchange2 .exchange2_title dd li .ex2 {
font-size: 28px;
color: #987044;
font-weight: 500;
display: flex;
align-items: center;
}

#exchange2 .exchange2_title dd li .ex2 img {
display: inline-block;
width: 320px;
}
#exchange2 .exchange2_title dd li .ex3 {
font-size: 28px;
color: #987044;
font-weight: 500;
background: linear-gradient(transparent 50%, #ffe570 50%);
}


#exchange2 .box .ex_fukidashi {
  position: relative;
 		width: 100%;
 padding: .5rem 0;
  border-left: 1.5rem solid #E9ED98;
 border-right: 1.5rem solid #E9ED98;
	 background-color: #BED400;
		color: #fff;
		font-weight: 500;
  font-size: 38px;
		text-align: center;
}

#exchange2 .box .ex_fukidashi:before {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 50%;
  width: 30px;
  height: 30px;
  box-sizing: border-box;
  background-color: #BED400;
  rotate: 135deg;
  translate: -50%;
}

#exchange2 .box .ex_fukidashi:after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 50%;
  width: 30px;
  height: 30px;
  box-sizing: border-box;
  rotate: 135deg;
  translate: -50%;
} 

#exchange2 .box .ex_fukidashi div {
position: relative;
  z-index: 10;
}

#exchange2 .box .ex_fukidashi div span {
font-size: 90%;
}


#exchange2 .box {
}

#exchange2 .box ul {
display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0;
		margin-top: 2rem;
		overflow: hidden !important;
}


#exchange2 .box ul li {
width: 24%;
  display: flex;
  flex-direction: column;
  margin-bottom: 2rem;
}

#exchange2 .box02 ul li {
width: 32% !important;
}




#exchange2 .box ul li dl {
		text-align: center;
}

#exchange2 .box ul li dl dt {
  font-size: 24px;
		color: #565656;
		text-align: center;
}



#exchange2 .box ul li dl dt span {
color: #fff;
font-size: 26px;
font-weight: 500;
background-color: #987044;
border-radius: 50%;
display: block;
width: 40px;
margin: 0 auto 1rem;
}

#exchange2 .box ul li dl dd {
display: flex;
flex-direction: column;
}



#exchange2 .box ul li .text {
}

#exchange2 .box ul li .text ul {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

#exchange2 .box ul li .text ul li {
background-color: #FFE4B8;
color: #987044;
padding: 0 .5rem;
text-align: center;
font-size: 23px;
border-radius: 20px;
width: unset;
margin-bottom: .8rem;
}

#exchange2 .box ul li .text ul.w48 li {
width: 48% !important;
}

#exchange2 .box ul li .text ul.w33 {
justify-content: space-evenly;
}

#exchange2 .box ul li .text ul.w33 li {
width: 33% !important;
}

#exchange2 .box ul li .text ul.w100 li {
width: 100% !important;
height: 3.8em;
justify-content: space-around;
}

#exchange2 .box ul li .text ul.w_last100 li:last-child {
width: 100% !important;
}






/*=============================================*/


#warranty {
background-image: url("../images/warranty_bg_top.jpg");
background-repeat: repeat-x;
background-size: contain;
background-position: top center;
background-color: #fffae6;
padding-bottom: 200px;
}
#warranty .bg {
background-image: url("../images/warranty_bg1.png"),url("../images/warranty_bg2.png"),url("../images/warranty_bg3.png"),url("../images/warranty_bg4.png");
background-position: top 2rem right,top 30rem left,bottom 50rem right,bottom 12rem  left;
background-size: 20%,20%,20%,20%;
background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
padding-top: 100px;
}
#warranty h3 {
width: 100%;
margin: 0 auto;
color: #987044;
text-align: center;
font-weight: 500;
letter-spacing: 0.1em;
line-height: 1.4em;
background-image: url("../images/ttl_point.png");
background-position: top center;
background-repeat: no-repeat;
background-size: 15%;
padding-top: 80px;
margin-bottom: 4rem;
display: inline-block;
font-size: clamp(1.25rem, 0.938rem + 1.56vw, 2.5rem);/*40-20*/
}
#warranty h3 span {
display: inline-block;
margin-top: 4rem;
font-size: 48px;
}
#warranty h3 img {
width: 458px;
display: inline-block;
margin-right: 5px;
margin-left: 5%;
margin-top: 20px;
}
#warranty .sub {
display: flex;
justify-content: center;
margin: 0 auto 3rem;
background: url("../images/warranty_point_l.png"),url("../images/warranty_point_r.png");
background-position: center left,center  right;
background-size: 5%,5%;
background-repeat: no-repeat, no-repeat;
width: 85%;
}
#warranty .sub span {
display: inline-block;
padding: 20px 2em;
background: linear-gradient(transparent 70%, #ffe570 70%);
color: #987044;
font-weight: 500;
font-size: clamp(1.25rem, 0.938rem + 1.56vw, 2.5rem);/*40-20*/
}
#warranty .box1,
#warranty .box2{
width: 100%;
border: dotted 8px #f4a300;
border-radius: 20px;
background-color: #fff;
padding: 2rem 4rem;
box-shadow: 3px 3px 10px 0px rgba(0, 0, 0, 0.22);
margin-bottom: 4rem;
}
#warranty h4 {
width: 50%;
margin: 0 auto 2rem;
}
#warranty p {
font-size: 28px;
color: #565656;
font-weight: 500;
text-align: center;
}
#warranty .box1 ul{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
padding: 0;
}
#warranty .box2 ul {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 0;
overflow: hidden !important;
}
#warranty .box1 ul li {
width: 48%;
}
#warranty .box2 ul li {
width: 32%;
display: flex;
flex-direction: column;
margin-bottom: 2rem;
}
#warranty .box2 ul li:nth-child(4) {
margin-left: 11rem
}
#warranty .box2 ul li:nth-child(5) {
margin-right: 11rem
}
#warranty .box2 dl {
display: flex;
flex-direction: column;
}
#warranty .box2 dt {
font-size: 24px;
background-image: url("../images/warranty_ttl_bg.png");
background-repeat: no-repeat;
background-size: 100%;
background-position: bottom center;
flex-grow: 1;
text-align: center;
padding-bottom: 20px;
margin-bottom: 20px;
}
#warranty .box2 dd {
flex-grow: 1;
}
#warranty .box2 dd.image {
margin-bottom: 20px;
}
#warranty .box2 img {
width: 100%;
 height: 100%;
 object-fit: cover;
}
#warranty .box2 dd.text {
font-size: 16px;
background-color: #fffae6;
padding: 20px;
flex-grow: 1;
background-image: url("../images/warranty_text_point.png");
background-repeat: no-repeat;
background-size: 28%;
background-position: top left;
padding-top: 50px;
}
#warranty .box2 ul.last {
display: flex;
justify-content: center; 
padding: 0;
}
#warranty .box2 ul.last li {
margin: 0 1rem;
}
#warranty .emergency {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#warranty .emergency dt {
width: 23%;
}
#warranty .emergency dd {
width: 73%;
}
#warranty .emergency dd p {
font-size: 16px;
text-align: left;
}
#warranty .emergency dd ul {
display: flex;
border: solid 2px #f97d21;
padding: 0;
height: 67px;
}
#warranty .emergency dd ul li {
padding: 20px;
height: 100%;
}
#warranty .emergency dd ul li.sub {
width: 25%;
text-align: center;
color: #fff;
background-color: #f97d21;
flex-grow: 1;
}
#warranty .emergency dd ul li.support {
background-color: #fff;
text-align: left;
width: 75%;
flex-grow: 1;
}

#contact {
margin-top: -200px;
padding-top: 100px;
background-image: url("../images/contact_bg_top.png");
background-repeat: no-repeat;
background-size: contain;
background-position: top center;
margin-bottom: 20px!important;
}
#contact .wrap {
background-color: #f2f2f2;
padding-top: 140px;
padding-bottom: 80px;
background-image: url("../images/contents_end_bg.png");
background-position: bottom center;
background-repeat: repeat-x;
background-size: 50%;
}
#contact h3 {
display: flex;
justify-content: center;
margin: 0 auto 3rem;
}
#contact h3  span {
display: inline-block;
padding: 20px 2em;
background: url("../images/warranty_point_l.png"),url("../images/warranty_point_r.png");
background-position: center left,center  right;
background-size: 5%,5%;
background-repeat: no-repeat, no-repeat;
color: #565656;
font-weight: 500;
font-size: 40px;/*40-20*/
}
#contact p {
text-align: center;
}
#contact p.call {
font-size: 26px;
display: block;
margin: 2rem 0;
color: #987044;
font-weight: 500;
}
#contact dl.call2 {
width: 30%;
margin: 0 auto 2rem;
}
#contact .call2 dt {
margin-bottom: 20px;
}
#formWrap h4 {
font-size: 27px;
text-align: left;
color: #565656;
padding-bottom: 10px;
margin-bottom: 3rem;
margin-top: 3rem;
border-bottom: solid 3px #565656;
}

/*
=============================================================
フッター
=============================================================
*/
footer {
padding: 50px 0 10px;
background-color: #fff;
margin-bottom: 16px;
}
footer .inner {
  width: 90%;
  min-width: 1200px;
  margin: 0 auto;
  margin-bottom: 40px;
}
footer .inner .head {
display: flex;
align-items: center;
}
footer .inner .head .logo {
width: 295px;
margin-right: 2rem;
margin-bottom: 1rem;
}
footer .inner .head p {
font-weight: 500!important;
font-size: 26px;
}
footer .inner .head .sns {
margin-left: auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 15%;
}
footer .inner .head .sns li {
width: 25%;
}
footer .inner .bottom {
display: flex;
}
footer .inner .bottom .photo {
width: 295px;
margin-right: 2rem;
}
footer .inner .bottom .add {
font-size: clamp(0.875rem, 0.624rem + 0.52vw, 1.25rem);/*14-20/769-1920*/
}
footer .inner .bottom .companies {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 0 5% 0 0;
width: 45%;
}
footer .inner .bottom .companies a {
display: block;
font-size: 10px;
color: #565656;
text-align: center;
width: 32%;
}
footer .inner .bottom .companies a img{
  display: block;
  margin: 0 auto 10px;
  width: 80%;
}
footer .inner .bottom .companies a:hover {
text-decoration: underline;
}
/*footer .inner .bottom .companies .l1 {
background-image: url("../images/com_logo_01.png");
}
footer .inner .bottom .companies .l2 {
background-image: url("../images/com_logo_02.png");
}
footer .inner .bottom .companies .l3 {
background-image: url("../images/com_logo_03.png");
}
footer .inner .bottom .companies .l4{
background-image: url("../images/com_logo_04.png");
}*/

.copyright {
font-size: clamp(0.625rem, 0.58rem + 0.23vw, 0.75rem);/*最大値 12px 最小値10px*/
text-align: center;
display: block;
margin-bottom: 20px;
color: #716960;
}

/*=====
floatバナー
=====*/

.float_top{
  width: 240px;
  height: 240px;
  position: fixed;
  top:30%;
  right:1%;
  animation: fuwa ease 6s infinite;
  z-index: 999999;
}
@keyframes fuwa {
  0%{
    top:30%;
  }
  50%{
    top:33%;
  }
  100%{
    top:30%;
  }
}

/*
=============================================================
スマホ設定
=============================================================
*/

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

  .sphd {
    display: none;
  }
  header.header {
    width: 100%;
    height: 60px;
    background-color: #fff;
    padding: 10px 0 10px 10px;
    margin: 0;
    position: fixed;
    top: 0;
    z-index: 50;
    transition: all 0.5s ease-in-out;
  }
  header.header .active {
    background-color: #FFF;
    box-shadow: 0px 4px 2px -2px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0px 4px 2px -2px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 4px 3px -2px rgba(0, 0, 0, 0.2);
  }
  
#header {
    width: 100%;
    height: 17vw;
    background-color: #fff;
    padding: 10px 0 10px 10px;
    margin: 0;
    position: fixed;
    top: 0;
    z-index: 50;
    transition: all 0.5s ease-in-out;
  }
  #header.active {
   box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.3);
  }
  
#header .wrap {
  display: block;
  height: auto;
  margin: 0;
  padding: 0;
}
#header .logo {
    width: 45%;
    min-width: 45%;
    height: auto;
    display: block;
    margin: -6px 0 0;
}
#header .logo img {
width: 100%;
height: auto;
}
#header nav {
display: none;
}

  
/*
=============================================================
コンテンツ
=============================================================
*/
#container {
width: 100%;
min-width: 100%;
}
#contents {
overflow: hidden;
}
.contents {
 width: 100%;
  padding-top: 70px;
}
section {
  padding: 40px 0;
  margin: 0;
}
section .inner {
  width: 90%;
  margin: 0 auto;
}

/*
=============================================================
メインビジュアル
=============================================================
*/
#mv {
width: 100%;
height: 450px;
background-image: url("../images/mv_sp.jpg");
background-position: center bottom;
background-repeat: no-repeat;
background-size: contain;
position: relative;
}
#mv h1 {
display: none;
}
#about h2 {
width: 98%;
position: relative;
top: 0px;
}
#about .in {
height: 180px;
}
#trouble {
background-image: url("../images/arrow.png");
background-position: center top;
background-repeat: no-repeat;
background-size: 10%;
padding: 2rem 0 0;
line-height:1;
}
#trouble dl {
margin: 0;
padding-bottom: 0.5rem;
text-align: center;
background-image: url("../images/deco_l_top.png"),url("../images/deco_r_top.png"),url("../images/deco_l_btm.png"),url("../images/deco_r_btm.png");
background-position: top 1rem left 0.5rem,top 1rem right 0.5rem,bottom left 0.5rem,bottom right 0.5rem;
background-size: 20%,20%,20%,20%;
background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
}
#trouble dt {
color: #987044;
font-weight: 500;
letter-spacing: 0;
line-height: 1.4em;
background-image: url("../images/ttl_point.png");
background-position: top center;
background-repeat: no-repeat;
background-size: 30%;
padding-top: 60px;
margin-bottom: 2rem;
font-size: 24px;
}
#trouble dt span {
font-size: 48px;
display: inline;
margin-left: -7px;
}
#trouble dd {
padding: 0 2rem; 
margin: 0 auto;
} 
#trouble dd ul {
padding: 0;
width: 100%;
}
#trouble dd li {
width: 32%;
margin-bottom: 1.5rem;
}
#trouble dd li:nth-child(4)  {
margin-left: 3rem;
}
#trouble dd li:nth-child(5)  {
margin-right: 3rem;
}
#trouble dd li span {
font-size: 12px;
background: linear-gradient(transparent 30%, #ffe570 30%);
}

#water_supply {
    background-image: url(../images/water_supply_bg_l.png), url(../images/water_supply_bg_r.png);
    background-position: top 200px left, center right;
    background-size: 60%, 50%;
    background-repeat: no-repeat, no-repeat;
}
#water_supply dt {
font-size: 24px;
}
#water_supply dt span {
display: inline-block;
    padding: 2rem 2rem;
    background-image: url(../images/ttl_point2_l.png), url(../images/ttl_point2_r.png);
    background-position: center left, center right;
    background-size: 10%, 10%;
    background-repeat: no-repeat, no-repeat;
}
#water_supply dd ul {
padding: 0;
}
#water_supply dd li {
width: 46%;
margin-bottom: 2rem;
}
#merit {
padding-bottom: 0;
}
#merit h3 {
padding-top: 0px;
margin-bottom: 20px;
}
#merit h3 img {
width: 80%;
margin: 0 auto;
}
#merit h3 span {
font-size: 24px;
margin-top: 1rem;
}
#merit ul {
padding: 0;
}
#merit ul li {
width: 100%;
padding: 1rem;
margin-bottom: 2rem;
}
#merit dt {
font-size: 23px;
}
#merit dd {
font-size: 18px;
}
#merit .chara {
width: 20%;
right: 0px;
bottom: 0px
}



#exchange h3 {
width: 80%;
margin: 0 auto 2rem;
background-size: 30%;
padding-top: 50px;
display: block;
}
#exchange h3 span {
font-size: 24px;
margin-top: 1rem;
}
#exchange dt {
padding : 0;
}
#exchange dt span {
font-size: 24px;
padding : 0 2em 1rem;
text-align: center;
}
#exchange dd li {
width: 100%;
}
#exchange dd li p {
font-size: 16px;
padding-top: 1rem;
}
#exchange dd li .ex1 {
font-size: 22px;
display: flex;
justify-content: center;
}
#exchange dd li .ex2 {
font-size: 22px;
display: flex;
justify-content: center;
}
#exchange dd li .ex2 img {
width: 80%;
}
#exchange dd li .wrap {
display: block;
margin: 0 auto;
width: 70%;
text-align: center;
}
#exchange dd li .ex3 {
font-size: 22px;
display: inline;
background: linear-gradient(transparent 60%, #ffe570 60%);
}

/*=====================================*/

#exchange2 dt {
padding : 0 !important;
}
#exchange2 .exchange2_title {
margin: 0 0 2rem;
}


#exchange2 .exchange2_title dt span {
font-size: 24px;
padding : 0 2em 1rem;
text-align: center;
}

#exchange2 .exchange2_title dd {
width: unset;
}

#exchange2 .exchange2_title dd ul {
padding: 0;
}

#exchange2 .exchange2_title dd li .ex1 {
font-size: 22px;
}

#exchange2 .exchange2_title dd li .ex2 {
font-size: 22px;
    display: flex;
    justify-content: center;
}

#exchange2 .exchange2_title dd li .ex2 img {
width: 80%;
}

#exchange2 .exchange2_title dd li .ex3 {
font-size: 22px;
    display: inline;
    background: linear-gradient(transparent 60%, #ffe570 60%);
}

#exchange2 .exchange2_title dd li .wrap {
display: block;
    margin: 0 auto;
    width: 70%;
    text-align: center;
}


#exchange2 .box ul {
display: flex;
flex-wrap: nowrap;
 overflow-x: auto;
 padding: 0;
	overflow: auto !important;
}


#exchange2 .box ul li {
width: 100% !important;
  margin: 0 1rem 0 0;
  flex-shrink: 0;
}

#exchange2 .box .ex_fukidashi {
font-size: 19px;
border-left: 1rem solid #E9ED98;
border-right: 1rem solid #E9ED98;
}

#exchange2 .box ul li dl dt {
font-size: 18px;
}

#exchange2 .box ul li dl dt span {
font-size: 20px;
width: 30px;
}

#exchange2 .box ul li .text ul li {
font-size: 19px;
padding: 0 0;
margin: 0 0 1rem;
}



/*=====================================*/

#warranty {
padding-bottom: 30px;
}
#warranty .bg {
padding-top: 0;
padding-bottom: 3rem;
}
#warranty h3 {
background-size: 30%;
font-size : 22px;
}
#warranty h3 {
padding-top: 50px;
margin-bottom: 20px;
}
#warranty h3 img {
width: 80%;
margin: 0 auto;
}
#warranty h3 span {
font-size: 24px;
margin-top: 1rem;
}
#warranty .sub {
width: 90%;
display: block;
margin: 0 auto 2rem;;
text-align: center;
background-size: 10%, 10%;
}
#warranty .sub span {
line-height: 1.4em;
display: inline;
padding: 0;
background: linear-gradient(transparent 60%, #ffe570 60%);
}
#warranty .box1, #warranty .box2 {
padding: 1.5rem 1.5rem;
}
#warranty h4 {
width: 100%;
}
#warranty p {
font-size: 16px;
text-align: left;
}
#warranty .box1 ul li {
width: 100%;
}
#warranty .box2 ul {
display: flex;
flex-wrap: nowrap;
overflow-x: auto;
padding: 0;
overflow: auto!important;
}
#warranty .box2 ul li{
width: 100%;
margin: 0 1rem 0 0;
flex-shrink: 0;
}
#warranty .box2 dt {
font-size: 22px;
}
#warranty .box2 dd.text {
font-size: 14px;
display: flex;
flex-grow: 1;
}
#warranty .box2 ul li:nth-child(4),
#warranty .box2 ul li:nth-child(5){
margin: 0 1rem 0 0;
}
#warranty .emergency {
display: block;
}
#warranty .emergency dt {
width: 40%;
margin: 0 auto 1rem;
}
#warranty .emergency dd {
width: 100%;
}
#warranty .emergency dd ul  {
flex-wrap: wrap;
justify-content: space-between;
border: none;
height: auto;
}
#warranty .emergency dd ul li.sub {
width: 32%;
border: solid 2px #f97d21;
margin-bottom: 1rem;
white-space: nowrap;
}
#warranty .emergency dd ul li.support {
width: 68%;
border: solid 2px #f97d21;
margin-bottom: 1rem;
white-space: nowrap;
}

#contact {
    margin-top: -20px;
    padding-top: 50px;
}
#contact .wrap {
margin-top: -20px;
}
#contact h3 span {
font-size: 24px;
}
#contact p {
font-size: 16px;
padding: 0 1rem;
}
#contact p.call {
font-size: 20px;
}
#contact dl.call2 {
width: 80%;
}

#formWrap h4 {
font-size: 20px;
margin-bottom: 2rem;
}


/*
=============================================================
フッター
=============================================================
*/
footer {
  padding: 30px 0 20px!important;
}
footer .inner {
  width: 90%;
  min-width: 90%;
  margin: 0 auto;
  margin-bottom: 40px;
}
footer .inner .head {
display: block;
}
footer .inner .head .logo {
width: 60%;
margin: 0 auto 1rem;
}
footer .inner .head .logo img {
width: 100%;
}
footer .inner .head p {
font-size: 16px;
text-align: center;
}
footer .inner .head .sns {
width: 100%;
padding: 0;
display: flex;
flex-wrap: nowrap;
justify-content: center;
}
footer .inner .head .sns li {
width: 15%;
margin: 0 1rem 2rem;
}
footer .inner .bottom {
display: block;
}
footer .inner .bottom .photo {
width: 80%;
margin: 0 auto 2rem;
}
footer .inner .bottom .add {
font-size: 16px;
margin-bottom: 2rem;
}
footer .inner .bottom .companies {
margin-left: auto;
}
/*footer .inner .bottom .companies a {
background-position: center left;
background-repeat: no-repeat;
background-size: 10%;
display: block;
padding-left: 12vw;
margin-bottom: 1rem;
font-size: 15px;
color: #565656;
position: relative; 
transition: .3s;
}*/
footer .inner .bottom .companies a:hover {
text-decoration: underline;
}
/*footer .inner .bottom .companies .l1 {
background-image: url("../images/com_logo_01.png");
}
footer .inner .bottom .companies .l2 {
background-image: url("../images/com_logo_02.png");
}
footer .inner .bottom .companies .l3 {
background-image: url("../images/com_logo_03.png");
}
footer .inner .bottom .companies .l4{
background-image: url("../images/com_logo_04.png");
}*/

footer .inner .bottom .companies {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 auto 0 0;
padding: 0 0 0;
width: 88%;
}
footer .inner .bottom .companies a {
display: block;
font-size: 10px;
color: #565656;
text-align: center;
width: 32%;
}
footer .inner .bottom .companies a img{
  display: block;
  margin: 0 auto 10px;
  width: 80%;
}

.copyright {
font-size: clamp(0.625rem, 0.58rem + 0.23vw, 0.75rem);/*最大値 12px 最小値10px*/
text-align: center;
display: block;
margin-bottom: 20px;
color: #716960;
}
.copyright {
text-align: center;
}
.pagetop {
width: 15%;
bottom: 80px;
}


/*
=============================================================
SPフッターメニュー
=============================================================
*/
#ft_sp{
  position: fixed;
  bottom: 0px;
  left: 0px;
  width: 100%;
  z-index: 500;
  text-align: center;
  display: block;
}
#ft_sp ul {
  overflow: hidden;
  margin-right: 0px;
  padding: 0px;
  margin-top: 0px;
  margin-bottom: 0px;
  margin-left: 0px;
  z-index: 200;
  width: 100%;
  height: 70px;
  background-color: #ffffff;
  font-size: 14px;
  display: flex;
  justify-content: space-between;
  border-top: solid 1px #ccc;
}
#ft_sp ul li {
  width: 23%;
  position: relative;
}
#ft_sp ul li.yoyaku{
margin-top: 4px;
}
#ft_sp ul li.mail {
margin-top: 3px;
}
#ft_sp ul li a {
  text-decoration: none;
  display: flex;
  flex-direction: column;
  grid-gap: .25rem;
  align-items: center;
  padding: .25rem 0;
}
#ft_sp ul li a img {
  max-width: 36px;
  max-height: 36px;

}
#ft_sp ul li a .txt {
  font-size: clamp(0.75rem, 0.427rem + 1.38vw, 0.875rem);/*12~14px(375~520px)*/
  color: #fff;
  line-height: 1.2;
}
#ft_sp ul li.tel a .txt {
color: #987044;
}
#ft_sp ul li.mail a .txt {
color: #71c6d2;
}
#ft_sp ul li.yoyaku a .txt {
color: #bed400;
}
#ft_sp ul li.hm {
background-color: #f4a300;
}
#ft_sp ul li.hm .txt {
color: #fff;
display: block;
margin-top: 42px;
}

#ft_sp ul li.page_top a img:hover {
opacity: 0.5;
}


}


@media print, screen and (min-width: 769px) {
  .pchd {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .sphd {
    display: none;
  }
 }
 
 
 /*
=============================================================
アニメーション
=============================================================
*/
/* その場で */
.fadeIn{
animation-name:fadeInAnime;
animation-duration:3s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

/* 下から */

.fadeUp{
animation-name:fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}

/* 上から */

.fadeDown{
animation-name:fadeDownAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeDownAnime{
  from {
    opacity: 0;
	transform: translateY(-100px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}

/* 左から */

.fadeLeft{
animation-name:fadeLeftAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeLeftAnime{
  from {
    opacity: 0;
	transform: translateX(-100px);
  }

  to {
    opacity: 1;
	transform: translateX(0);
  }
}

/* 右から */

.fadeRight{
animation-name:fadeRightAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeRightAnime{
  from {
    opacity: 0;
	transform: translateX(100px);
  }

  to {
    opacity: 1;
	transform: translateX(0);
  }
}

/*
=============================================================
アニメーション&ディレイ
=============================================================
*/
.delay-time02{
animation-delay: 0.2s;
}
.delay-time04{
animation-delay: 0.4s;
}
.delay-time06{
animation-delay: 0.6s;
}
.delay-time08{
animation-delay: 0.8s;
}

.fadeUp {
animation-name:fadeUpAnime;
animation-duration:1s;
animation-fill-mode:forwards;
opacity: 0;
}
@keyframes fadeUpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}

/*
=============================================================
ハンバーガー
=============================================================
*/

#g-nav{
    /*position:fixed;にし、z-indexの数値を小さくして最背面へ*/
    position:fixed;
	z-index: -1;
	opacity: 0;/*はじめは透過0*/
    /*ナビの位置と形状*/
	top:0;
	width:100%;
    height: 100vh;/*ナビの高さ*/
	 background-color: rgba(0, 0, 0, 0.80);
    /*動き*/
	transition: all 0.3s;
}
#g-nav .logo {
width: 40%;
margin: 10px auto;
}

@media print, screen and (min-width: 769px) {
#g-nav .logo {
width: 15%;
margin: 30px auto;
}
}

/*アクティブクラスがついたら透過なしにして最前面へ*/
#g-nav.panelactive{
	opacity: 1;
	z-index:999;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999; 
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
    display: none;
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    z-index: 999;
    top:40%;
    left:50%;
    transform: translate(-50%,-50%);
    width: 100%;
    padding: 0;
}
#g-nav.panelactive ul {
    display: block;
}

/*リストのレイアウト設定*/
#g-nav li{
	list-style: none;
    text-align: center; 
}
#g-nav li a{
	color: #efefef;
	text-decoration: none;
	padding:16px 0;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold;
}

@media print, screen and (min-width: 769px) {
#g-nav li a{
	padding:30px 0;
    letter-spacing: 0.4em;
}
}

.reactive {
display: none;
}

/*========= ボタンのためのCSS ===============*/

.buns {
position: fixed;
top:0;
right: 0;
background-color: #f4a300;
width: 100px;
height: 100px;
border-radius: 20px;
}

.openbtn{
	position:fixed;
    z-index: 9999;/*ボタンを最前面に*/
	top: 2px;
	right: 30px;
	cursor: pointer;
    width: 80px;
    height:50px;
}

@media print, screen and (min-width: 769px) {
.openbtn{
top: 18px;
}
}
	
/*×に変化*/	
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 40px;
    height: 3px;
    border-radius: 2px;
	background-color: #efefef;
  	width: 50%;
  }

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

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

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

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

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

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

.openbtn p {
color: #fff;
display: block;
margin-top: 38px;
margin-left: 38px;
}

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

.buns {
display: none;
}
.openbtn {
display: none;
}
/*
.buns {
position: fixed;
top:0;
right: 0;
background-color: #f4a300;
width: 60px;
height: 60px;
z-index: 60;
border-radius: 0;
}

.openbtn{
	position:fixed;
    z-index: 9999;
	top: 2px;
	right: 30px;
	cursor: pointer;
    width: 50px!important;
    height:50px;
}
.openbtn p {
color: #fff;
display: block;
margin-top: 35px!important;
margin-left: 36px!important;
font-size: 13px;
}
*/

.openbtn2{
	position:fixed;
    z-index: 9999;/*ボタンを最前面に*/
	bottom: 14px;
	right: 24px;
	cursor: pointer;
    width: 80px;
    height:50px;
}

/*×に変化*/	
.openbtn2 span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 40px;
    height: 3px;
    border-radius: 2px;
	background-color: #efefef;
  	width: 50%;
  }

.openbtn2 span:nth-of-type(1) {
	top:10px;	
}

.openbtn2 span:nth-of-type(2) {
	top:20px;
}

.openbtn2 span:nth-of-type(3) {
	top:30px;
}

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

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

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

/*=====
floatバナー
=====*/

.float_top{
  width: 32vw;
  height: 32vw;
  animation: fuwa ease 6s infinite;
}
@keyframes fuwa {
  0%{
    top:3%;
  }
  50%{
    top:5%;
  }
  100%{
    top:3%;
  }
}
}
 