html,body,*{
  box-sizing: border-box;
}
html,body{
  margin: 0;
  padding: 0;
}
a{
  display: inline-block;
}
img{
  vertical-align: bottom;
}
.dn{
  display: none;
}
.image{
  width: 100%;
}
.contents,
section{
  position: relative;
}
.w100per{
  width: 100%;
}
.w750{
  max-width: 750px;
}
.wrapper{
  background: rgba(0,0,0,0.01);
}
.contents_wrapper{
  max-width: 750px;
  margin: 0 auto;
  background: #FFF;
  box-shadow: 0px 20px 20px rgba(0,0,0,0.1);
}
header img{
  width: 100%;
}
header .spacer{
  display: block;
  position: absolute;
  height: 32%;
  width: 47%;
  background: #FFF;
  top: 32%;
  right: 0;
  opacity: 0;
  transition: 0.3s;
}
header .spacer:hover{
  opacity: 0.3;
  transition : 0.3s;
}
.btn{
  text-align: center;
  position: absolute;
  bottom: 5%;
  padding: 0 10%;
}
.btn a{
  filter: brightness(100%);
  transition : 0.3s;
}
.btn a:hover{
  filter: brightness(120%);
  transition : 0.3s;
}
.anime{
  vertical-align: middle;
  animation-name: btnanime;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-duration: 1s;
}
@keyframes btnanime{
  0%{
    width:100%;
  }
  100%{
    width:95%;
  }
}
.imamade{
  padding-top: 10%;
}
.imamade .title img{
  padding: 0 5em;
}
.imamade .side_scroll_box img{
  margin: 5% 0;
}
.imamade .side_scroll_box{
  background-position: center bottom;
  background-repeat: no-repeat;
  padding-bottom: 10%;
}
.imamade .side_scroll_box{
  margin-top: -9%;
}
.imamade .side_scroll_box_inner{
  margin: 5% 0;
  padding-top: 5%;
  overflow-x: auto;
  white-space: nowrap;
  cursor: grab;
}
.scroll-hint-icon{
  background-color: rgba(255,255,255,1);
  box-shadow: 3px 3px 7px rgba(0,0,0,1);
  padding: 10px;
  width: 50%;
  height: 25%;
  left: 25%;
}
.scroll-hint-icon:before{
  background-image: url(../images/scr_icon.png);
  height: 100%;
  width: 90%;
}
.scroll-hint-icon:after,
.scroll-hint-text{
  display: none;
}
.tyouonpa {
  padding: 8% 0 17% 0;
}
.tyouonpa .image{
  margin-bottom: 20%;
}
.EDCAREtoha{
  background-image: url(../images/02_04.jpg);
  background-position: center top;
  background-size: 100% auto;
}

.EDCAREtoha .listbox{
  padding: 5% 5% 40% 5%;
}
.EDCAREtoha .listbox ul{
  list-style: none;
  padding: 0;
  margin: 0;
  border: 1px solid #FFF;
}
.EDCAREtoha .listbox li{
}
.EDCAREtoha .listbox li .open_btn{
  cursor: pointer;
  filter: brightness(100%);
  transition : 0.3s;
  border-bottom: 1px solid #FFF;
}
.EDCAREtoha .listbox li:last-child .open_btn{
  border-bottom: 0;
}
.open_box{
  display: none;
}
.EDCAREtoha .listbox li .open_btn:hover{
  filter: brightness(110%);
  transition : 0.3s;
}
.siyou .title{
  position: absolute;
  margin-top: -33%;
  z-index: 1;
}
.siyou .tyuui{
  margin-bottom: 10%;
}
.qa_box{
  /*padding-top: 10%;*/
}
.qa_single{
  padding: 5%;
}
footer{
  text-align: center;
  font-size: 12px;
  padding: 2% 0;
  background: #494546;
  color: #FFF;
}
.tuibi{
  position: fixed;
  bottom: 0;
  z-index: 2;
}
.tuibi a,
.tuibi a img{
  display: block;
  width: 100%;
  filter: brightness(100%);
  transition : 0.3s;
}
.tuibi a:hover{
  filter: brightness(110%);
  transition : 0.3s;
}

.tuibi .spacer{
  position: absolute;
  bottom: 10%;
  right: 4%;
  width: 40%;
  height: 67%;
  overflow: hidden;
  pointer-events: none;
}

/*キラッと光る*/
.tuibi .spacer::before {
	content: '';
	position: absolute;
	top: 0;
	left: -75%;
  width: 50%;
	height: 100%;
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
	transform: skewX(-25deg);
}
.tuibi .spacer::before {
  animation-name: shine;
  animation-iteration-count: infinite;
  animation-duration: 2s;
}
@keyframes shine {
	100% {
		left: 500%;
	}
}



.mail_box{
  display: flex;
  height: 30%;
  background-color: #F4F7F7;
}
iframe{
  overflow: hidden;
  height: 723px;
}


.footer_title{
  font-size: 1.6em;
  text-align: left;
  padding: 1em 0 0 10%;
}
.footer_cpinfo{
  font-size: 16px;
  text-align: left;
  padding: 1em 10%;
}
.footer_cpinfo div{
  padding-left: 1.5em;
  background-repeat: no-repeat;
  background-position: left 0.2em;
  background-size: auto 1em;
}
.footer_cpinfo .footer_tel{
  background-image: url(../images/icon001.jpg);
}
.footer_cpinfo .footer_pos{
  background-image: url(../images/icon003.jpg);
}
